Smail_的gravatar头像
Smail_ 2017-01-04 21:15:37
python AES CBC 128位Noppadding加密算法
def decrypt(text):
    padding = '\0'
    key = 'yourkey'
    iv = 'youriv'
    cipher = AES.new(key, AES.MODE_CBC, iv)
    return cipher.decrypt(binascii.a2b_base64(text).rstrip(padding))

 

对应的JS算法(依赖CryptoJS):

var key = CryptoJS.enc.Utf8.parse('yourkey');
var iv = CryptoJS.enc.Utf8.parse('youriv');
var decrypt = CryptoJS.AES.decrypt(url, key, {
   iv: iv,
   mode: CryptoJS.mode.CBC,
   padding: CryptoJS.pad.ZeroPadding
});
var result = CryptoJS.enc.Utf8.stringify(decrypt).toString();

就为了这么一个算法,我忙活了一下午,坑死老子了!

坑:系统是win10,C++ Compiler for python 2.7不好使,导致编译pycrypto各种不服,百度爬文三小时,最后放弃了。使用linux不存在这个问题。

既然pycrypto不能用,能不能找到替代的库呢?谷歌一下后还真找到了,pycryptodome,这个是编译好了的库,直接pip install即可。


打赏

已有1人打赏

最代码官方的gravatar头像
最近浏览
muzihang  LV1 2021年7月25日
793172406  LV1 2020年4月7日
1217261221  LV12 2017年11月1日
蓝轩  LV6 2017年11月1日
迷彩风情  LV26 2017年11月1日
遇见,  LV36 2017年11月1日
203778513  LV9 2017年9月13日
最代码折颜  LV13 2017年6月14日
a380387084 2017年1月16日
暂无贡献等级
iopjkl  LV2 2017年1月11日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友