Я пытаюсь создать БД с помощью sqlcipher, а затем получить к ней доступ, используя шестнадцатеричное значение ключа пароля.Согласно описанию из github (https://github.com/sjlombardo/sqlcipher) ключ хешируется алгоритмом sha256, а затем используется для шифрования БД. Существует возможность предоставить ключ в простой и шестнадцатеричной форме через директиву PRAGMA. И если я использую простую версию, все работает правильно,но я не могу получить доступ к БД с шестнадцатеричным значением ключа. Например, в моем случае ключ 'demo', и когда я использую PRAGMA key='demo'
, все работает. Я получил sha256 с:
echo -n demo |shasum -a256 2a97516c354b68848cdbd8f54a226a0a55b21ed138e207ad6c5cbb9c00aa5aea
, а затем при условии его директивы ПРАГМА в соответствии с инструкциями в sqlite3_exec вызова:.
sqlite3_exec(db, "PRAGMA key = x'2a97516c354b68848cdbd8f54a226a0a55b21ed138e207ad6c5cbb9c00aa5aea'", NULL, NULL, NULL);
, но это не работает
1013 * Чтотакое шестнадцатеричное значение ключа, которое я должен предоставить директиве PRAGMA?