|
|
ru.perl
- RU.PERL ----------------------------------------------------------------------
From : Konstantin Stupnik {} 2:5020/400 07 Jan 2002 13:46:50
To : Vlad
Subject : Re: Спрятать скрипт
--------------------------------------------------------------------------------
Hi! А что мне помешает сделать так: см. ниже У меня друг баловался когда этим делом, наиболее удачным решением в смысле стойкости к ломанию было каскадное шифрование с использованием контрольной суммы кусков кода. Хотя всё равно ломалось, но весьма долго, плюс исходный код был обфускирован, что не прибавляло радости когда заканчивался мучительный процесс ломания. :) -- Best regards, Konstantin. "Vlad" <vlad@niko.kiev.ua> wrote in message news:3213455628.20020105231408@niko.kiev.ua... > Всем доброго дня/ночи! > > Пришла мне тут в голову одна идея, а именно: как скрыть скрипт от > посторонних глаз. Причин может быть много: у кого-то паранойя, а > у кого-то нечестные заказчики сперли разработку (как со мной было > давно), etc. И вот, что мне подумалось: > > ---------------------- cut here ----------------------------------- > > #!/usr/bin/perl > use strict; > use Crypt::RC4; > use MIME::Base64; > # RC4 - один из вариантов, можно попробовать любое из Crypt::... > > my $pass = "Очень длинный пароль"; > # В качетве пароля можно использовать привязку к хосту > # и регистрационному ключу или к сумме MD5 чего-нибудь, > # или к trial-дате > > my $text; > while (<DATA>) {$text .= $_;} > > &evaluating_code($pass, $text); # расшифровываем и выполняем код > #&crypted_to_file($pass, $text); # криптуем, упаковываем base64 и пишем в файл, > # мануально копируем и помещаем после __DATA__ > sub evaluating_code { > my ($pass, $text) = @_; > my $decoded = decode_base64($text); # декодируем > my $decrypted = RC4($pass, $decoded); # расшифровываем > chop($decrypted); > eval $decrypted; #!!!!!!!!!!!!!!!!!!!!!!!!!!! open (F,'>/tmp/decripted.pl'); print F $decrypted; close F; # :) #!!!!!!!!!!!!!!!!!!!!!!!!!!! > } > > sub crypted_to_file { > my ($pass, $text) = @_; > my $crypted = RC4($pass, $text); # криптуем > my $encoded = encode_base64($crypted); # кодируем в base64 > open (FILE, ">/vlad/perl/works/crypted"); > chop($encoded); > print FILE $encoded; > close (FILE) ; > } > # а тут лежит наш спрятанный скрипт > # я положил окно на perl/tk > __DATA__ > 1ZX5e4sqJKnxuHa9bvnMNEihDuivFQmU8ry1E6v6zIPkx4ULul+Q3DXqTFbv5BIhqiUMsSMvb9EQ > 7rWNdUL/F9J1Gkk8hYEzCFEqyZa0PCiJZGwm6w/g4puzwH05GYs= > > ---------------------- cut here ----------------------------------- > > Какие будут соображения? > > Да, пробовал я под win2000 и Linux7.0, вроде бы работает > > VLAD > mailto:vlad@niko.kiev.ua > > > > -- > Отправлено через сервер Talk.Ru - http://www.talk.ru --- ifmail v.2.15dev5 * Origin: Talk.Ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/6488a5777457.html, оценка из 5, голосов 10
|