RijndaelSwift
这是 Rijndael 算法的实现。
支持 128/192/256 位密钥/块,并包含 ECB、CBC 模式。
需求
- Xcode 10.2+
- Swift 5.0+
安装
CocoaPods
CocoaPods 是 Cocoa 项目的依赖管理器。您可以使用以下命令安装它
$ gem install cocoapods
要使用 CocoaPods 将 RijndaelSwift 集成到您的 Xcode 项目中,指定您的 Podfile
platform :ios, '8.0'
use_frameworks!
target 'YourApp' do
pod 'RijndaelSwift'
end
然后,运行以下命令
$ pod install
Carthage
Carthage 是一个去中心化的依赖管理器,可以构建您的依赖并为您提供二进制框架。
您可以使用如下命令通过 Homebrew 安装 Carthage
$ brew update
$ brew install carthage
要使用 Carthage 将 RijndaelSwift 集成到您的 Xcode 项目中,请在 Cartfile
中指定它。
github "superk589/RijndaelSwift"
运行 carthage update
以构建框架,并将构建好的 RijndaelSwift.framework
拖到您的 Xcode 项目中。
手动操作
如果您希望不使用上述任何依赖管理器,则可以手动将 RijndaelSwift 集成到项目中。
使用方法
加密
let key = yourKey
let iv = yourIV
let r = Rijndael(key: key, mode: .cbc)!
let plainData = yourPlainData
let cipherData = r.encrypt(data: plainData, blockSize: 32, iv: iv)
解密
let key = yourKey
let iv = yourIV
let r = Rijndael(key: key, mode: .cbc)!
let cipherData = yourCipherData
let plainData = r.decrypt(data: cipherData, blockSize: 32, iv: iv)
字符串和数据转换实用工具
// convert hexadecimal string to data
let data = "000000".hexadecimal()!
// convert data to hexadecimal string
let string = data.hexadecimal()