在我的應用程序中,我正在使用加密和解密。在staticLibrary中加密字符串時出錯
在將字符串輸入到本地數據庫之前,我正在對該數據庫進行加密,並在從數據庫中提取數據之後,我將其解密並在我的應用程序中使用。 它工作正常。我已經使用加密/解密從 link below
在加密的時間:
NSString *[email protected]"any string more than 8 char";
NSData *data ;
NSData *encryptedData;
NSString *encryptPassword,*encryptPasscode;
// 1) Encrypt
data = [password dataUsingEncoding: NSASCIIStringEncoding];
encryptedData = [data AESEncryptWithPassphrase:myKey];
// 2) Encode Base 64
[Base64 initialize];
encryptPassword = [Base64 encode:encryptedData];
在解密的時間:
NSData *decryptedData;
NSData *b64DecData;
field1 = (char *) sqlite3_column_text(selectPasscodeStatement, 0);
NSString *fieldStr1 = [[NSString alloc] initWithUTF8String: field1];
// 3) Decode Base 64
b64DecData = [Base64 decode:fieldStr1];
// 4) Decrypt
decryptedData = [b64DecData AESDecryptWithPassphrase:myKey];
retrivedPasscode = [[NSString alloc] initWithData:decryptedData encoding:NSASCIIStringEncoding];
但是我已經做的是STATICLIBRARY同一個項目。我正在另一個項目中使用該靜態庫。當我運行該項目,以對其進行加密的時候給了我錯誤下面
- [NSConcreteMutableData AESEncryptWithPassphrase:]:無法識別的選擇發送到實例0x6a3fe40
- >是的,我在靜態庫和當前項目中都包含了#import「NSData-AES.h」。 我不知道它是如何調用[NSConcreteMutableData AESEncryptWithPassphrase:]函數 – umakanta