我想使用河豚用已知密码加密 php 中的消息。然后我想在 python 中解密这个消息。
即使您想用一种语言加密并在其他地方解密,这也很有用。
我进行了相当广泛的搜索,但找不到任何确凿的解决方案,所以我想记录下我的发现。
请注意,使用相同的语言(例如 python 或 php)加密/解密非常简单。
我想使用河豚用已知密码加密 php 中的消息。然后我想在 python 中解密这个消息。
即使您想用一种语言加密并在其他地方解密,这也很有用。
我进行了相当广泛的搜索,但找不到任何确凿的解决方案,所以我想记录下我的发现。
请注意,使用相同的语言(例如 python 或 php)加密/解密非常简单。
这个解决方案非常简单,但我花了一段时间才弄清楚。
河豚参数
php代码:
<?php
$passw='secretPassword12';
$ntext='helloWorld123456';
$enc = base64_encode(mcrypt_encrypt(MCRYPT_BLOWFISH, $passw, $ntext, MCRYPT_MODE_ECB));
echo '<div>'.$enc.'</div';
这输出 3C8f2kaD8Of0INYk3l9qEg== python 代码:
from Crypto.Cipher import Blowfish
from base64 import b64encode, b64decode
passw='secretPassword12'
ntext='helloworld123456'
cipher=Blowfish.new(passw, Blowfish.MODE_ECB)
encStr=b64encode(cipher.encrypt(data))
print encStr
此代码也输出 3C8f2kaD8Of0INYk3l9qEg==
现在假设你想解密一些用 php 加密的 python 字符串。首先做 b64decode 然后解密结果。
Remember to pad your data such that the len is divisible by 16.
加解密快乐!!!