我正在尝试在ruby中加密并在javascript中解密。 在ruby中,我正在使用openssl模块,在javascript中,我正在使用crypto-js库。

我可以在Ruby中使用以下代码进行加密和解密:

def decrypt_with_aes (key, encrypted_message)
 message = Base64.decode64(encrypted_message)
 aes = OpenSSL::Cipher.new("AES-256-CBC")
 aes.decrypt
 aes.key = key[:key] || key['key']
 aes.iv = key[:iv] || key['iv']
 # output result
 aes.update(message) + aes.final
end

def encrypt_with_aes(key, message)
 aes = OpenSSL::Cipher.new("AES-256-CBC")
 aes.encrypt
 aes.key = key[:key] || key['key']
 aes.iv = key[:iv] || key['iv']
 # output result
 Base64.encode64(aes.update(message) + aes.final)
end

我正在使用以下键和iv

{ key: 
    {
      key: '3f9390ea971d68b82ecab512cbeb073a0a399157dbe22e4d3054c0f1f8c0037a'
      iv: 'aba3ac43cf8befcb4678570abb17b6d0'
     }
}

关于我尝试加密的文本,当我尝试使用相同的密钥和iv通过crypto-js解密时,我得到一个空字符串。 请帮忙。

function decrypt(encryptedtext, key){

    return  CryptoJS.AES.decrypt(
               CryptoJS.enc.Base64.parse(encryptedtext),                  
               CryptoJS.enc.Base64.parse(key['key']), {iv: 
               CryptoJS.enc.Hex.parse(key['iv'])}).toString(CryptoJS.enc.Utf8);
 }

  ask by ABrowne translate from so

本文未有回复,本站智能推荐:

2回复

加密功能总是解密为纯文本,即使使用不正确的密钥[关闭]

我正在使用javascript函数,使用6位数PIN码在浏览器上加密和存储密码。 虽然这可能很容易被强制强制,但服务器端代码通过在3次错误尝试后锁定帐户来防止这种情况。 以下示例使用AES,仅在引脚/键正确时才解密为纯文本。 这允许攻击者尝试99,9999个组合并选择唯一的纯文本结果,
1回复

AES 128解密:CryptoJS.enc.Latin1的第一个字符格式错误

我有一个已编码的字符串,需要解密。 我使用了Crypto JS,经过某些研究,我可以找到以下解决方案。 data = "+JdTb5BOloxaBHQlTw6NPLNV9lZix1OwhR3HF3IRtu2pdg/TLkrTw6Xu4JpKFlxE+zgOZavj0UynSZ+
1回复

使用Go加密AES字符串并使用Crypto-js解密

我正在Go应用程序中寻找加密字符串,并使用Crypto-js解密编码的字符串。 我尝试了几个小时都没有成功,尝试了Stackoverflow,github或gist提供的许多解决方案。 如果有人有解决方案,他们将从某种神经衰弱中拯救我,哈哈 我的Go加密代码: 我的pkcs7Pad函数:
1回复

需要帮助,使用Javascript(使用crypto-js)解密AES加密的字符串[重复]

这个问题已经在这里有了答案: crypto-js aes无法解密其加密内容 1答案 我发现有人编写了一个演示页面,该页面使用CryptoJS在客户端加密数据,在这里: 它仅具有加密功能,因此我添加了我认为是解密功能的功能,但最终得到了完全不同的文本。
1回复

将Java AES / ECB / PKCS5填充加密为crypto-js解密

后端使用下面的Java代码进行AES加密。 在Clas O / P之上: 但是我无法使用crypto-js解密。 叶状体的Crypto-js代码示例: JS小提琴链接: http : //jsfiddle.net/baxfk6tw/ 任何人,crypto-js
1回复

AES Crypto-JS的加密和解密无法正常工作

我有两个不同的html页面,在第一个页面中,有一种形式是在提交时调用Javascript函数对两个不同的参数进行加密,然后将这两个参数发送到第二个页面,并遵循第一个html页面的代码: 在第二页中,使用JavaScript函数,我尝试按照第二页的代码解密两个参数值: 但
2回复

java中的AES加密和使用CryptoJS的javascript中的解密

我有以下代码使用AES / CTR / NOPADDING模式加密java中的某些文件内容。 我正在使用javax的crypto包。 此外,我使用相同的密钥生成密钥和iv。 我无法使用cryptojs解密javascript中的加密内容。 这是我尝试过的东西。 有人能告诉我
1回复

使用AES Crypto-JS进行加密解密在android webview中不起作用?

在我的android应用中的网络视图中,我正在尝试使用Crypto-JS进行加密和解密。 加密工作正常,但解密无效。 我进行了很多搜索,发现没有找到适合我的解决方案。 我是javascript新手。 在我的另一个应用程序中,我正在android中执行此操作,并且工作正常。 但是用jQu
1回复

AES-256-CBC Mcrypt-PHP解密和Crypto-JS加密

我正在尝试使用CryptoJS在Javascript中加密并在PHP中解密。 JS代码是: PHP如下: 这不会返回正确答案。 我不确定哪里情况不好! 我需要做自己的IV,但如果我只是说: 它成功地在PHP代码中工作 - 只有key_base64不是可以更改的东
1回复

crypto-js aes无法解密它加密的内容

您好我正在尝试使用crypto-js解密加密的aes字符串,但它似乎无法正常工作。 我正在使用: 但我的结果是: 我的期望是它返回“消息”。 我错过了什么?