Hangi Blowfish algoritma 'doğru' en çok?

0 Cevap php

(Belki yarım sorun?) Neyse, ben çeşitli dillerde farklı Blowfish modüllerin dışında farklı değerler alıyorum Windows Server 2k8 koşuyorum. Standart olarak aşağtya biri var mı?

Aşağıdaki örnekler için anahtar olduğunu varsayalım password ve şifresiz 12345678.

a. Online Encrypt Tool Algoritma ile Blowfish modunda ECB ayarlandığında ve Base64 Encode the output verir kontrol 2mADZkZR0VM=. Ben bilge ya da aksi halde, bu benim referans noktası kullanılarak oldum.

b. Aşağıdaki Perl kod kullanımları Crypt::ECB ve MIME::Base64

use MIME::Base64;
use Crypt::ECB;
$crypt = Crypt::ECB->new;
$crypt->padding(PADDING_NONE);
$crypt->cipher('Blowfish') || die $crypt->errstring;
$crypt->key('password'); 
$enc = $crypt->encrypt("12345678");
print encode_base64($enc);

('Bir.' Yukarıdaki ile karşılaştırır) PADDING_NONE ile bu çıkışları 2mADZkZR0VM=. Ancak, dolgu ayarlandığı zaman PADDING_AUTO en azından, düz metin olarak bir hata 8 karakter uzunluğunda ve dolgu ihtiyacı yoktur aklımda, bir 2mADZkZR0VOZ5o+S6D3OZw== hangi çıktılar.

c. Ben aşağıdaki gibi Crypt::Blowfish kullanıyorsanız

#! c:\perl\bin 
use Crypt::Blowfish;
use MIME::Base64;

my $key;
my $plaintext;

$key = "password";
$plaintext = "12345678";

my $cipher = new Crypt::Blowfish $key; 
my $ciphertext = $cipher->encrypt($plaintext);
my $encoded = encode_base64( $ciphertext );
print $encoded;

sonra maçları 2mADZkZR0VM= hangi olsun 'a.' yukarıda. Bu modül ile sorun olsa bir kodlama için 8 bayt parçalar halinde kademeli şeyler vardır ki; kendi hiçbir Chunker vardır.

d. I http://linux.die.net/man/3/bf_ecb_encrypt (ben yeni bir PHP ext projesi için yaptım) de kaynağını kullanmak sonra ben aynı cevabı olsun 'a.'. Ben SSLeay ve OpenSSL'de kullanımda olduğu gibi bu kodu en güvendiğiniz eğiliminde değilim.

e. BlowfishEx.EXE DI Yönetimin Blowfish: a Visual Basic version ile PKCS#5 dolgusu ({[ile Crypt :: ECB sonuçlar aynıdır 2mADZkZR0VOZ5o+S6D3OZw== ki verir 4)]}. Ayarlandığında Dolgu ile None I 2mADZkZR0VM= hangi maçlar olsun 'a.'

Ben kısmen bu yazı benim kendi soru cevap var: Ben sadece VB6 proje için DI Yönetiminin kodunu değiştirmek zorunda gibi görünüyor. Ve belki Crypt yazar :: ECB için aynı öneririz.

Ama soru kalır: Bir güvenilir blowfish referans platform var?

0 Cevap