通过Swift和Cocoa加密文件的简单方法?
我正在寻找一种在Cocoa应用程序中使用Swift通过AES加密文件的方法。 据我所知,通用框架(即CryptoSwift)应该只加密文本。 这项工作是否有一个特定的框架,或者是否有任何类型的macOS内置方法通过Swift和Cocoa加密文件的简单方法?,swift,file,cocoa,encryption,aes,Swift,File,Cocoa,Encryption,Aes,我正在寻找一种在Cocoa应用程序中使用Swift通过AES加密文件的方法。 据我所知,通用框架(即CryptoSwift)应该只加密文本。 这项工作是否有一个特定的框架,或者是否有任何类型的macOS内置方法 谢谢 是的,使用CommonCrypto是一个良好的开端。但是,我不建议使用任何国产实现 做担保权很难,AES也不例外 您需要使用正确长度的正确密钥(首选64或32字节) 如果数据短于blocksize/keysize,则需要使用填充(我建议使用PKCS7)。AES本身是不安全的,此位
谢谢 是的,使用CommonCrypto是一个良好的开端。但是,我不建议使用任何国产实现 做担保权很难,AES也不例外
- 您需要使用正确长度的正确密钥(首选64或32字节)
- 如果数据短于blocksize/keysize,则需要使用填充(我建议使用PKCS7)。AES本身是不安全的,此位很重要
- 您还需要使用initializationVector(在最终数据流中添加或添加前缀),因为否则攻击者可能会在来自同一密钥的多个加密流之间建立关联
- 您还应使用HMAC(SHA2-256及更高版本,也可在commoncrypto中使用),以防止篡改加密数据,并提供意外和潜在有害的结果数据李>
字符串和数据。