Эй, я пишу программу, которая использует ловушку @INC для расшифровки реального источника perl из blowfish.У меня довольно раздражающая проблема, которая не проявляется в использовании предупреждений или каких-либо моих стандартных приемов ... По сути, когда я начинаю создавать новый объект шифрования, цикл переходит к следующему объекту в @INC без ошибки или чего-либо еще.... Я не знаю, что делать!
#!/usr/bin/perl -w
use strict;
use Crypt::CBC;
use File::Spec;
sub load_crypt {
my ($self, $filename) = @_;
print "Key?\n: ";
chomp(my $key = <STDIN>);
for my $prefix (@INC) {
my $buffer = undef;
my $cipher = Crypt::CBC->new( -key => $key, -cipher => 'Blowfish');
my $derp = undef;
$cipher ->start('decrypting');
open my $fh, '<', File::Spec->($prefix, "$filename.nc") or next;
while (read($fh,$buffer,1024)) {
$derp .= $cipher->crypt($buffer);
}
$derp .= $cipher->finish;
return ($fh, $derp);
}
}
BEGIN {
unshift @INC, \&load_crypt;
}
require 'gold.pl';
Также, если я добавлю фактический ключ в метод инициализации, он все равно не будет работать