traduction en perl [Python] - Python - Programmation
MarshPosté le 22-12-2011 à 15:08:01
Salut à tous,
Si vous avez 2s, j'aurai besoin d'un petit cp de main. Je cherche à comprendre vite fait un bout de code python (que je ne connais pas ) et à le retranscrire en perl (que je connais un peu plus ). Je vous le donne (http://blog.stalkr.net/2011/08/hsts-preloading-public-key-pinning-and.html)
pubkey_hash_sha1() { python -c 'import sys, hashlib; print ":".join(c.encode("hex" ) for c in hashlib.sha1("".join(map(lambda s: s.strip(), sys.stdin.readlines()[1:-1])).decode("base64" )).digest())' }
Je l'ai compris comme: use MIME::Base64 (); use Digest::SHA1 qw(sha1 sha1_hex sha1_base64);
my $dir = getcwd; my $dir1=$dir."\/"; my $fichier = "keypub.txt"; <<-- contient la clef publique open(FH, "< $fichier" ) or die "Couldn't open $fichier for reading: $!\n";
while (<FH> ){ my $line=$_; chomp($line); $line =~ s/\s+//g; $a.=$line;$line=$a; } $keypub=$a; close(FH);
Marsh Posté le 22-12-2011 à 15:08:01
Salut à tous,
Si vous avez 2s, j'aurai besoin d'un petit cp de main.
Je cherche à comprendre vite fait un bout de code python (que je ne connais pas ) et à le retranscrire en perl (que je connais un peu plus ).
Je vous le donne (http://blog.stalkr.net/2011/08/hsts-preloading-public-key-pinning-and.html)
pubkey_hash_sha1() {
python -c 'import sys, hashlib; print ":".join(c.encode("hex" ) for c in hashlib.sha1("".join(map(lambda s: s.strip(), sys.stdin.readlines()[1:-1])).decode("base64" )).digest())'
}
Je l'ai compris comme:
use MIME::Base64 ();
use Digest::SHA1 qw(sha1 sha1_hex sha1_base64);
my $dir = getcwd;
my $dir1=$dir."\/";
my $fichier = "keypub.txt"; <<-- contient la clef publique
open(FH, "< $fichier" )
or die "Couldn't open $fichier for reading: $!\n";
while (<FH> ){
my $line=$_;
chomp($line);
$line =~ s/\s+//g;
$a.=$line;$line=$a;
}
$keypub=$a;
close(FH);
print "Clef publique: \n".$keypub;
$encoded = MIME::Base64::decode($keypub);
print "\nBase64:\n".$encoded;
$digest = sha1_hex($encoded);
print "\nHex:\n".$digest;
Est-ce que j'aurai bien compris le truc?
@++
bib0