如何使Java和Objective-C(iPhone)之间的AES加密完全相同?

如何使Java和Objective-C(iPhone)之间的AES加密完全相同?,第1张

如何使Java和Objective-C(iPhone)之间的AES加密完全相同?

由于CCCrypt采用IV,是否不使用链接块密码方法(例如CBC)?这将与您看到的一致:第一个块是相同的,但是在第二个块中,Java版本将原始密钥应用于加密,但是OSX版本似乎使用了其他东西。

编辑

从这里我看到了一个例子。似乎您需要将kCCOptionECBMode传递给CCCrypt:

ccStatus = CCCrypt(encryptOrDecrypt,        kCCAlgorithm3DES,        kCCOptionECBMode, <-- this could help        vkey, //"123456789012345678901234", //key        kCCKeySize3DES,        nil, //"init Vec", //iv,        vplainText, //"Your Name", //plainText,        plainTextBufferSize,        (void *)bufferPtr,        bufferPtrSize,        &movedBytes);

编辑2:

我玩了一些命令行,看看哪个是正确的。我以为我可以贡献力量:

$ echo "Now then and what is this nonsense all about. Do you know?" | openssl enc -aes-128-ecb -K $(echo 1234567890123456 | xxd -p) -iv 0 | xxd 0000000: 7a68 ea36 8288 c73d f7c4 5d8d 2243 2577  zh.6...=..]."C%w0000010: e66b 32f9 772b 6679 d7c0 cb69 037b 8740  .k2.w+fy...i.{.@0000020: 883f 8211 7482 29f4 7239 84be b50b 5aea  .?..t.).r9....Z.0000030: eaa7 519b 65e8 fa26 a1bb de52 083b 478f  ..Q.e..&...R.;G.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5487762.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存