Все мы давно знаем, что есть такая штука, как шифрование, но не все знают как ее реализовать, чтобы защитить свои данные.
Здесь я приведу пример симметричного шифрования, не требующего каких-либо сторонних библиотек.
Итак, начнем!
Подключаем хидеры:
#import "NSData-AES.h" #import "Base64.h"
Код шифрования строки. Разберем на примере NSString:
NSString *password = @"mypassword"; //пароль для шифрования NSString *str = @"mytext"; //исходная строка //Шифруем строку через NSDate NSData *data = [str dataUsingEncoding:NSASCIIStringEncoding]; NSData *encryptedData = [data AESEncryptWithPassphrase:password]; [Base64 initialize]; NSString *b64EncStr = [Base64 encode:encryptedData]; //Проверка зашифрованной строчки NSLog(@"CryptedString=%@", b64EncStr);
Код расшифрования строки:
NSString *password = @"mypassword"; //пароль для расшифровывания, должен совпадать с паролем шифрования NSString *str = @"2upXvtOFsocuB9OvLXa2kQ==" //исходная зашифрованная строка; //Расшифровываем строку через NSDate [Base64 initialize]; NSData *b64DecData = [Base64 decode:str]; NSData *decryptedData = [b64DecData AESDecryptWithPassphrase:password]; NSString *decryptedStr = [[NSString alloc] initWithData:decryptedData encoding:NSASCIIStringEncoding]; //Проверка расшифрованной строчки NSLog(@"DecryptedString=%@", decryptedStr);
Немає коментарів:
Дописати коментар