ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

23.02.2009, 03:14
|
|
Участник форума
Регистрация: 24.11.2008
Сообщений: 205
Провел на форуме: 1123418
Репутация:
362
|
|
Nightmarе
пробелы только сотри форумные
Код:
#/usr/bin/perl -w
use Mcrypt qw(:ALGORITHMS :MODES);
use MIME::Base64;
$key = "E4HD9h4DhS23DYfhHemkS3Nf";# 24 bit Key
$iv = "fYfhHeDm";# 8 bit IV
$input = "Text to encrypt";# text to encrypt
$bit_check=8;# bit amount for diff algor.
$str= encrypt($input,$key,$iv,$bit_check);
print "Start: $input - Excrypted: $str - Decrypted: ".decrypt($str,$key,$iv,$bit_check);
sub encrypt( $$$$ ) {
my ($text,$key,$iv,$bit_check) = @_;
my @text_num = str_split($text,$bit_check);
$text_num = $bit_check-length($text_num[scalar($text_num)-1]);
for(my $i=0;$i<$text_num; $i++) { $text = $text . chr($text_num);}
my $cipher = Mcrypt::mcrypt_load(Mcrypt::3DES,'',Mcrypt::CBC,'');
Mcrypt::mcrypt_init($cipher, $key, $iv);
my $decrypted = Mcrypt::mcrypt_encrypt($cipher,$text);
Mcrypt::mcrypt_end($cipher);
return encode_base64($decrypted,'');
}
sub decrypt( $$$$ ) {
my ($encrypted_text,$key,$iv,$bit_check) = @_;
my $cipher = Mcrypt::mcrypt_load(Mcrypt::3DES,'',Mcrypt::CBC,'');
Mcrypt::mcrypt_init($cipher, $key, $iv);
my $decrypted = Mcrypt::mcrypt_decrypt($cipher,decode_base64($encrypted_text));
Mcrypt::mcrypt_end($cipher);
my $last_char=substr($decrypted,-1);
for(my $i=0;$i<$bit_check-1; $i++){
if($i==ord($last_char)){
$decrypted=substr($decrypted,0,length($decrypted)-$i);
last;
}
}
return $decrypted;
}
sub str_split( $$ ) {
my ($text,$split) = @_;
if($split<1) { $split = 1; }
my @array = ();
for (my $i = 0; $i < length($text); $i += $split) {
push @array, substr($text, $i, $split);
}
return @array;
}
Последний раз редактировалось [dei]; 23.02.2009 в 17:06..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|