Latest 0.0.4
Homepage https://github.com/821385843/RSA_Swift
License MIT
Platforms ios 8.0
Authors

RSA_Swift 是一款轻量级的 Swift 版本的框架,框架功能包括:RSA 加密/解密字符串、RSA 加密/解密 Data、字符串的 MD5、文件的 MD5 值的获取。

RSA_Swift 初衷?

githubSwift 版本的 RSA 加密/解密框架也有,但最近使用的几个,总是会出现这样或那样的问题,所以就写了这个框架,附带的加上比较常见的功能:字符串的 MD5、文件的 MD5 值的获取。

对于文件的 MD5 值的获取,是将文件分块读出并且计算 MD5 值的方法,有别于文件一次性读出并且计算 MD5 值的方法。

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Installation

RSA_Swift is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod 'RSA_Swift'

使用姿势

rsa 加密字符串和解密字符串

/// 注:rsa 加密 Data 和解密 Data 方法使用与`rsa 加密字符串和解密字符串`类似,这里就不写示例代码了
let filePath = Bundle.main.path(forResource: "public_key", ofType: "der")

let encryptString = "abcdefg"
print("要加密的字符串:(encryptString)")

/// Encrypt
RSA.rsaEncrypt(filePath, encryptString) { (encryptedString) in
    print("加密后的字符串:(encryptedString ?? "")")

    let filePath1 = Bundle.main.path(forResource: "private_key.p12", ofType: nil)
    /// Decrypt
    RSA.rsaDecrypt(filePath1, "ios", encryptedString, { (decryptedString) in
        print("解密后的字符串:(decryptedString ?? "")")
    })
}

获取文件的 MD5 值

guard let filePath = Bundle.main.path(forResource: "test_file_md5", ofType: "png")
        else {
    return
}
print("文件的 MD5 值:(filePath.md5_File() ?? "")")

字符串的 MD5

let str = "字符串的MD5"
print("字符串的MD5:(str.md5())")

License

RSA_Swift is available under the MIT license. See the LICENSE file for more info.

作者其他框架

MGJRouter_Swift:一个高效/灵活的 iOS SwiftURL Router,完全实现了蘑菇街 Object-CMGJRouter 的所有功能。虽然 github 上也有一款参照 MGJRouter 仿写的 Swift 版框架,但是却去掉了 MGJRouter 的很多功能,不实用。

XWCountDownButton_OC:这是一个 Object-C 版本的小框架,可以使用 pod,应用于短信验证码倒计时。

XWCountDownButton:这是一个 Swift 版本的小框架,可以使用 pod,应用于短信验证码倒计时。

Author

如果你有什么建议,可以关注我的公众号:iOS开发者进阶,直接留言,留言必回。

输入图片说明

Latest podspec

{
    "name": "RSA_Swift",
    "version": "0.0.4",
    "summary": "RSA_Swiftu662fu4e00u4e2au8f7bu91cfu7ea7u7684u6846u67b6uff0cu6846u67b6u529fu80fdu5305u62ecuff1aRSAu52a0u5bc6/u89e3u5bc6u5b57u7b26u4e32u3001RSAu52a0u5bc6/u89e3u5bc6Datau3001u5b57u7b26u4e32u7684MD5u3001u6587u4ef6u7684MD5u503cu7684u83b7u53d6.",
    "description": "RSA_Swiftu662fu4e00u4e2au8f7bu91cfu7ea7u7684u6846u67b6uff0cu6846u67b6u529fu80fdu5305u62ecuff1aRSAu52a0u5bc6/u89e3u5bc6u5b57u7b26u4e32u3001RSAu52a0u5bc6/u89e3u5bc6Datau3001u5b57u7b26u4e32u7684MD5u3001u6587u4ef6u7684MD5u503cu7684u83b7u53d6uff0cu540eu7eedu7684u52a0u5bc6u529fu80fduff0cu6bd4u5982uff1aAESu3001DESu7b49u4f1au9010u6e10u589eu52a0u7684u3002",
    "homepage": "https://github.com/821385843/RSA_Swift",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "u8001u6e14u7fc1": "[email protected]"
    },
    "platforms": {
        "ios": "8.0"
    },
    "swift_version": "4.2",
    "source": {
        "git": "https://github.com/821385843/RSA_Swift.git",
        "tag": "0.0.4"
    },
    "source_files": "RSA_Swift/Classes/*.swift"
}

Pin It on Pinterest

Share This