Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   зашифрованная sqlite база (http://www.flasher.ru/forum/showthread.php?t=214218)

ther 11.05.2017 04:46

зашифрованная sqlite база
 
чет не въеду, почитал на сайте адобов про открытие базы с паролем и там
Цитата:

method accepts an encryption key (a 16-byte ByteArray)
это как понимать, пароль должен быть только 16 символов?
писнул код открытия
Код AS3:

var encryptionKey:ByteArray = new ByteArray();
encryptionKey.writeUTFBytes('yYfUu\4"j?}~73G');
 
var dbFile : File = File.applicationDirectory.resolvePath('data.db');
DBConnection.openAsync(dbFile, SQLMode.READ, null, false, 1024, encryptionKey);

и получил
Цитата:

ArgumentError: Error #3140: The encryption key size specified was not valid for this operation. Keys must be exactly 16 bytes in length
Правильно ли я понял, что в параметр encryptionKey.writeUTFBytes() передается пароль?

caseyryan 11.05.2017 07:14

Цитата:

это как понимать, пароль должен быть только 16 символов?
Да, а у тебя 15.
Теперь проверь этот ключ, и увидишь, что все работает
Код AS3:

var encryptionKey:        ByteArray                 = new ByteArray(); 
encryptionKey.writeUTFBytes("thisIsTempEncryp");       
var dbFile : File = File.applicationDirectory.resolvePath('data.db');                                                                       
DBConnection.openAsync(dbFile, SQLMode.READ, null, false, 1024, encryptionKey);

Ты же можешь легко проверить сколько у тебя байт через
Код AS3:

trace(encryptionKey.length);


ther 11.05.2017 14:46

я знаю, что у меня 15, просто мне странно, что надо именно 16, у меня сам факт фиксированной длины не укладывается в голове.
ПС
еще as3 не любит спец символы. Пароль длиной 16 со спецсимволами не принимается. Прям каменный век
пасиб

Ёлочка 11.05.2017 18:27

Можно и 15 символов, а недостающие символы автоматом нулями забивать.

caseyryan 11.05.2017 18:28

Да какая разница. Пароль в 16 байт это достаточная защита для SQLite в данном случае. Все равно его особо никак не спрячешь внутри приложения


Часовой пояс GMT +4, время: 19:54.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.