当前位置: 首页 > 知识库问答 >
问题:

使用Node.js解密Rijndael(在使用Delphi加密后&Delphi加密简编)

花烨
2023-03-14
var encryptedData='B6F03982E2F6303ACA7313';  // plain text is 'Hello There'
var key='01234567890123456789012345678901';
var hashedKey=hash('ripemd256',key);
var civ='549621EEF38647BE';
var decryptedData='';

var charEncryptedData=hex2a(encryptedData);
var charKey=hex2a(hashedKey);
var charCiv=hex2a(civ);

decryptedData=Aes.Ctr.decrypt(charCiv+charEncryptedData,hashedKey,128);

console.log('decrypted data: '+decryptedData);

===编辑===

作为对注释的回答,no,这两个实现似乎不计算相同的加密数据,给定相同的密钥和civ值。呼叫

var reEncryptedData=Aes.Ctr.encrypt('hello there', charKey, 128, charCiv);

产生一个完全不同的加密字符串,即使考虑到CIV对加密文本的预置,它仍然比delphi端的输出长8个字节。

再次感谢。

共有1个答案

司信厚
2023-03-14

您可以将algorythm与这两个javascript库进行比较:

    null
 类似资料:
  • 我正在尝试使用 Rijndael 从 php 到 Delphi 再返回加密/解密字符串。 如果我从Delphi解密PHP字符串…工作正常。 如果我使用 Delphi 加密字符串,结果字符串还可以,但更短 为了测试,我使用了一个62个字符的字符串。带有delphi的加密字符串比PHP少4个字符 这些是琴弦...最后的字符: PHP: GyLWj1anBJRmE8mBsaO5cvTrcbvvA== D

  • 我的德尔福应用程序使用 TurboPower 密码箱 3 使用 AES 256 加密纯文本信息。我现在想使用PHP解密这些信息。但是涡轮增压锁盒3有一些互操作性问题。 有关详细信息,请查看LockBox 3作者的帖子: http://lock box . seanbdurkin . id . au/tiki-view _ forum _ thread . PHP?comments_parentId

  • 问题内容: 寻找一种在node中加密数据(主要是字符串)并在android应用(java)中解密的方法。 在每个节点中都成功做到了这一点(在节点中进行加密/解密,在Java中进行加密/解密),但是似乎无法使其在它们之间起作用。 可能我不是以相同的方式进行加密/解密,但是每种语言的每个库对于相同的事物都有不同的名称… 任何帮助表示赞赏。 这是一些代码:Node.js 和java 原始密钥是这样创建的

  • 我正在尝试使用KMS和AWS加密SDK加密数据。查看AWS文档中提供的示例,似乎没有地方可以显式设置数据键。 使用由KMS生成的数据密钥使用AWS加密SDK加密数据的推荐方法是什么?

  • 我需要在iPhone或iPad上加密字符串(实际上是XML文件),然后用.NET应用程序解密。感谢David Veksler在这里提出的问题“.NET和iPhone之间的AES互操作性?”,以及在这里发表的博客文章http://automagical.rationalmind.net/2009/02/12/aes-interoperability-between-net-and-iPhone/。

  • 我必须用Twofish/CBC算法在Delphi中加密字符串,将其发送到服务器并在那里解密。我已经测试了下面的代码,B64编码/解码过程有效,但是我被困在密码加密/解密上。 我正在使用DEC 5.2用于德尔福。 以下是进行加密的德尔菲代码: 和应该解密发送数据的PHP函数: 我相信我必须对salt和初始化向量做更多的改动,但是我不知道怎么做。据我所知,KDFx()函数使SHA1从用户密码和salt