Licença mestre para iOS
Atualizado
Isto foi útil?
Isto foi útil?
openssl rsa -pubout -in privateKey.der -out publicKey.pubOZSDK(licenseSources: [LicenseSource], masterLicenseSignature: String? = nil, completion: @escaping ((LicenseData?, LicenseError?) -> Void))setLicense(licenseSource: LicenseSource, masterLicenseSignature: String? = nil)private func getSignature() -> String? {
let privateKeyBase64String = "the string copied from the privateKey.txt file"
// com exemplo de chave:
// let privateKeyBase64String = "a string copiada do arquivo privateKey.txt"
guard let data = Data(base64Encoded: privateKeyBase64String, options: [.ignoreUnknownCharacters]) else {
return nil
}
let sizeInBits = data.count * 8
let keyDict: [CFString: Any] = [
kSecAttrKeyType: kSecAttrKeyTypeRSA,
kSecAttrKeyClass: kSecAttrKeyClassPrivate,
kSecAttrKeySizeInBits: NSNumber(value: sizeInBits)
]
var error: Unmanaged<CFError>?
guard let secKey = SecKeyCreateWithData(data as CFData, keyDict as CFDictionary, &error) else {
return nil
}
guard let bundleID = Bundle.main.bundleIdentifier else {
return nil
}
guard let signature = SecKeyCreateSignature(secKey,
.rsaSignatureMessagePKCS1v15SHA512,
Data(bundleID.utf8) as CFData,
&error) else {
return nil
}
return (signature as Data).base64EncodedString()
}