Используя обнаруженный код на https://raw.github.com/usefulfor/usefulfor/master/security/JBoss.java, я thefollowing:Blowfish дешифрования в питона строки кодируется javax.crypto
bash-3.2$ java -cp . JBoss -e testpython
-27038292d345798947e2852756afcf0a
bash-3.2$ java -cp . JBoss -d -27038292d345798947e2852756afcf0a
testpython
Однако, я не могу за жизнь мне понять, как расшифровать string '27038292d345798947e2852756afcf0a', используя pycrypto в python. Я понимаю, что код Java использует Blowfish, а фраза «jaas - это способ» в качестве ключа для шифрования. Но я не могу понять, как это сделать в python. Следующие результаты в основном непечатаемого мусора:
import Crypto
from Crypto.Cipher import Blowfish
from base64 import b64encode, b64decode
bs = Blowfish.block_size
key = 'jaas is the way'
plaintext = b'27038292d345798947e2852756afcf0a'
iv = '\0' * 8
c1 = Blowfish.new(key, Blowfish.MODE_ECB)
c2 = Blowfish.new(key, Blowfish.MODE_CBC, iv)
c3 = Blowfish.new(key, Blowfish.MODE_CFB, iv)
c4 = Blowfish.new(key, Blowfish.MODE_OFB, iv)
msg1 = c1.decrypt(plaintext)
msg2 = c2.decrypt(plaintext)
msg3 = c3.decrypt(plaintext)
msg4 = c4.decrypt(plaintext)
print "msg1 = %s\n" % msg1
print "msg2 = %s\n" % msg2
print "msg3 = %s\n" % msg3
print "msg4 = %s\n" % msg4
Что мне не хватает?
спасибо.
Добро пожаловать на ТАК! Убедитесь, что вы отметили ответ, принятый с помощью флажка рядом с ответом. – jterrace