Failed to create SecKey using SecKeyCreateWithData using swift

56 Views Asked by At

I am trying to create SecKey from Public Key Data.

let publicKeyFromDongle: String = (self.dongle?.getPublicKeyBits(enrollmentId: enrollmentId, password: password))!

        print("Public Key is: \n",publicKeyFromDongle)

        let keyDict: [NSString: AnyObject] = [

                kSecAttrKeyType: kSecAttrKeyTypeRSA,

                kSecAttrKeyClass: kSecAttrKeyClassPublic,

                kSecAttrKeySizeInBits: 2048 as AnyObject

            ]

            var error: Unmanaged<CFError>?

        print(publicKeyFromDongle.data(using: .utf8) as! CFData)

        

        guard let publicKeySecKey = SecKeyCreateWithData(publicKeyFromDongle.data(using: .utf8) as! CFData, keyDict as CFDictionary, &error) else {

                print("Failed to create public key:", error!.takeRetainedValue())

                return nil

            }

My PublicKeyFromDongle String is

MIIBozANBgkqhkiG9w0BAQEFAAOCAZAAMIIBiwKCAYEA9c242509d83c90f556972efed7d81acc307fcc02824798e7a142e4940eec727aaea8946494c295d69b388a53d462b364e990b039ca3fae0307b17514585f58b21b2503257939b983ae44c8c9018192d18eae513321234adda3330cc742aa8a4ef2fa01208ab13d8e5fb06c5cb95b3caaf8715d7dc2ddc1724d672ac2b29ff303bd61c4e3b0fbca47ade2756285bff71352a530440b500a0830896e456873fb42ec1b31c9693d5e22b627284586dd1842705ed24fca2450ff062dfbbf2dc7fccda567ed2f2b16ba8905e68b755021d1e87ff274205fa67b65b9bfa54fd49ccFB4240748f76c810666cab8f3ec92ec972fbd240b5ef56726965dd26d595d6403ebAgQA0100

I am getting error code -50 while trying to create SecKey from data using SecKeyCreateWithData. How can i resolve it?

0

There are 0 best solutions below