我正在开发扫描QR码并获取需要解密的加密AES-128数据的快速项目。
我正在使用一个名为CryptoSwift的框架。
我有来自QR码的密钥和数据,用于保存加密数据。
var key = "B7zqj4TAXnPevYZAR4T26969"
var qrData = "zWDzClfre4aOjTumzGsnpqh4Sje7sFsbKceA3/OSH3nKRwc7/6fYUajBr/bLh9BB"
编辑:对不起,我忘了提及加密:
我想知道我应该采取什么方法来解密这个QR数据。
任何帮助都会很好。
答案 0 :(得分:1)
有关示例Swift AES代码,请参阅此SO answer。
当你说:“密码:AES-128”时含糊不清。大概你的意思是一个128位的密钥大小。提供的密钥是24字节,密钥大小为192位。
CBC模式需要iv但没有指定。许多实现默认情况下将使用0x00字节,但不保证,Common Crypto可以。但最好提供iv。
你期待什么,你说:“密钥源自:简单解码”?目前最好的实践解决方案是PBKDF2。
您需要一个Bridging标头并在其中添加#import。如果您没有桥接标题,请让系统添加一个标题,请参阅Adding a Bridging Header,您可以在步骤3之后删除.m文件。
您还需要将Security.framework添加到项目中。你使用Swift的版本是什么版本。