Tag: pycrypto

使用Node.js AES点击encryption并使用PyCrypto进行解密

好吧,所以基本上我有问题与Python解密。 我设法使用Node.jsencryption/解密数据 – 使用“aes-128-ctr”,PyCrypto也是如此,但是当我尝试使用Node.js进行encryption并使用Python进行解密时,我得到的解密文本无效。 Node.js代码: var key = "1234567890123456"; var cipher = crypto.createCipher("aes-128-ctr",key) var ctext = cipher.update('asasasa','utf8','hex') + cipher.final('hex') console.log(ctext) // outputs: "f2cf6ecd8f" Python代码: counter = Counter.new(128) cipher = AES.new("1234567890123456", AES.MODE_CTR, counter=counter) cipher.decrypt("f2cf6ecd8f") // outputs: weird encoding characters 顺便说一下,我并不在乎这种encryption的安全级别,我更关心性能。

python(pycrypto)和nodejs(crypto)之间不匹配的encryption(aes-128-cbc)

我有这个python代码,我需要翻译成nodejs。 python代码使用来自encryption的pycrypto。 在nodejs方面,我正在使用本地encryption模块。 encryption的string似乎不匹配。 from Crypto.Cipher import AES from binascii import b2a_hex, a2b_hex import json raw_key = [0x58, 0x86, 0x17, 0x6d, 0x88, 0x7c, 0x9a, 0xa0, 0x61, 0x1b, 0xbb, 0x3e, 0x20, 0x28, 0xa4, 0x5a] key = str(bytearray(raw_key)) raw_iv = [0x34, 0x2e, 0x17, 0x99, 0x6d, 0x19, 0x3d, 0x28, 0xdd, 0xb3, 0xa2, 0x69, 0x5a, 0x2e, 0x6f, 0x1b] iv […]

AES – 使用Crypto(node-js)encryption/使用Pycrypto(python)解密

我正在写这个问题+答案,因为我挣扎了很多(也许是因为缺乏经验),迷失在许多不同的方式使用节点或pythonencryption/解密的东西。 我想也许我的案子可以帮助未来的人。 我需要做的是: 从表单中获取数据,使用Crypto(node-js)对其进行encryption 在Python中传递encryption的数据并使用PyCrypto对其进行解密。 我select使用AESencryption。 这是我的开始(我不会经历我试过的一切): 我跟着这个页面末尾的例子 在我的情况下给了: (这可能是一个非常糟糕的javascript和coffeescript之间的混合) crypto = require "crypto" […] key = "mykeywhatever" cipher = crypto.createCipher('aes192', key) cipher.update('string i want to encode', 'binary', 'hex') encoded_string = cipher.final('hex') […] 这工作得很好编码我的string。 然后,我使用PyCrypto的github页面上的自述文件编写了我的python脚本来解密这个string: from Crypto.Cipher import AES […] my_string = data_coming_from_rabbitmq obj = AES.new('mykeywhatever', AES.MODE_CBC) obj.decrypt(ciphertext) […] 这显然不起作用:在自述文件中有一个IV,但是因为我没有在节点脚本中给出一个,为什么我要在Python中给出一个呢? 经过更多的search,我知道节点的Crypto使用OpenSSL,而PyCrypto显然没有。 所以我看了看,发现这些页面: 我怎样才能解密使用OpenSSLencryption的PyCrypto? 在PyCrypto&Node.JS Crypto库中,AES是相同的 […]