RNCryptor iOS PHP Фатальная ошибка: необработанное исключение «Исключение» с сообщением «Неподдерживаемая версия схемы 211»

0

Не могу найти много документации по этой ошибке... Я думаю, что это связано с конфликтующими версиями RNCryptor... версия RNCryptor из iOS сталкивается с моей версией PHP RN Cryptor- на стороне сервера... Я думаю.

Вот весь вывод ошибки:

[Wed Dec 17 16:56:00 2014] [error] [client 192.168.1.3] PHP Fatal error: Uncaught exception 'Exception' with message 'Unsupported schema version 211' in/Library/WebServer/Documents/lib/RNCryptor/Cryptor.php:70\nStack trace:\n#0/Library/WebServer/Documents/lib/RNCryptor/Decryptor.php(66): RNCryptor\\Cryptor->_configureSettings(211)\n#1/Library/WebServer/Documents/lib/RNCryptor/Decryptor.php(49): RNCryptor\\DeCryptor->_parseHeaders('\\xD3}5\\xEBN\\xFB\\xD1\\xDD\\xBA\\xF5\\xD6\\xF6s\\xB7:...')\n#2/Library/WebServer/Documents/lib/RNCryptor/Decryptor.php(22): RNCryptor\\DeCryptor->_unpackEncryptedBase64Data('<03016077 0d269...')\n#3/Library/WebServer/Documents/accessy/index.php(120): RNCryptor\\DeCryptor->decrypt('<03016077 0d269...', 'AwEOM//0tNskVvC...')\n#4/Library/WebServer/Documents/accessy/index.php(189): Auth->auth('AwEOM//0tNskVvC...', false)\n#5 {main}\n thrown in/Library/WebServer/Documents/lib/RNCryptor/Cryptor.php on line 70

Я надеюсь, что кто-то сможет это посмотреть и просто скажите мне, что случилось. Я пробовал v2.0 и v2.1 на стороне iOS, и похоже, что существует только одна версия для RN Cryptor- php... Наверное, я могу попробовать v1.0/etc. но я предполагаю, что эти версии по своей сути менее безопасны, поскольку они старше. У кого-нибудь есть идеи?

Это мой код шифрования iOS, который RN Cryptor- php, похоже, не может справиться по какой-либо причине:

NSData *what1 = [emailcurrent dataUsingEncoding:NSUTF8StringEncoding];

NSError *errory5;

NSData *useremaily = [RNEncryptor encryptData:what1 withSettings:kRNCryptorAES256Settings password:@"xxxxx" error:&errory5];'

Я все еще не уверен в одном, я пробовал несколько разных вещей... но по состоянию на данный момент... Я отправляю useremaily вместе с запросом (не преобразовывая его в строку или что-то еще) в качестве POST данные... Я думаю, что это правильно.

Затем я использую NSURLConnection так, как мне кажется, я должен быть, и соединение происходит и выполняется, но я всегда получаю вышеуказанную ошибку в журнале ошибок PHP.

Любые идеи очень приветствуются.

Теги:
encryption
rncryptor

1 ответ

0

Вау, так что мне потребовались последние несколько дней... вплоть до того момента, когда я решил включить код NSURLConnection в свой вопрос. Вот что это было:

NSString *post = [NSString stringWithFormat:@"email=%@", useremaily];

NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];

NSString *postLength = [NSString stringWithFormat:@"%lu",(unsigned long)[postData length]];

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];

[request setURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://192.168.1.10/accessy/index.php"]]];

[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];

self.connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];'

Линия, которая, как мне кажется, все испортила:

NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];

Я изменил его на:

NSData *postData = [[NSData alloc] initWithBase64EncodedString:post options:0];

Это на самом деле все еще не работает, как я хочу..., но это разрешило эту ошибку, если у кого-то есть эта проблема. Мог бы задать другой вопрос для того, что я имею в виду сейчас... но я думаю, если вы хотите прокомментировать процесс в целом (iOS для PHP с RNCryptor) - это может быть полезно. Благодарю.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню