Skip to content

Instantly share code, notes, and snippets.

@justMaku
Last active August 31, 2021 06:54
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save justMaku/713e8ea78c255a47de21 to your computer and use it in GitHub Desktop.
Save justMaku/713e8ea78c255a47de21 to your computer and use it in GitHub Desktop.
func encrypt(data: NSData) -> NSData {
var error: Unmanaged<CFErrorRef>? = nil
let parameters: [NSString: NSString] = [
kSecAttrKeyType: kSecAttrKeyTypeRSA,
kSecAttrKeyClass: kSecAttrKeyClassPublic
]
let keyString = "MIGeMA0GCSqGSIb3DQEBAQUAA4GMADCBiAKBgQCVXkvZifORfS8VVEp+BQTrnXu2a2+KL+Rw5FPHeSAOXjrS5DoC0GxK29jTKPGkJrg2WOiL/ZSbKvTq8wBUZzoUGaJQ+kzBJ40ShVtbJYGNFixubuKrSjUNQB149t25lxHnJia0i9i1sLfzrPnqPJ4ABf7lnhkTbNt8g/KriwoqmQICAQE="
let keyData = NSData(base64EncodedString: keyString, options: .IgnoreUnknownCharacters)!
let cryptoKey = SecKeyCreateFromData(parameters as CFDictionary, keyData as CFData , &error)!
let encrypt = SecEncryptTransformCreate(cryptoKey, &error);
SecTransformSetAttribute(encrypt, kSecTransformInputAttributeName, data, &error)
let encryptedData = SecTransformExecute(encrypt, &error)
return encryptedData as! NSData
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment