2016-07-29 2 views
0

Я работаю с базой данных, которую я пытаюсь сделать безопасным. Я смог создать базу данных и получить доступ к информации в ней. Однако, как только я пытаюсь зашифровать отдельные фрагменты информации в базе данных, я сталкиваюсь с проблемами. Я использую sqlite3 для моей базы данных и openssl, чтобы попытаться зашифровать базу данных.Шифрование базы данных в Lua

local users = [[CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, username, password);]] 
    db:exec(users) 

    local nameData = cipher:encrypt (nameField.text, "sbs_math_key") 
    local passData = cipher:encrypt (passwordField.text, "sbs_math_key") 

    local tablefill =[[INSERT INTO users VALUES (NULL, ']].. nameData ..[[',']].. passData ..[['); ]] 
    db:exec(tablefill) 

Это работает, если я вставив в существующую базу данных, однако если я создаю новую базу данных не позволит мне вставить зашифрованную информацию.

ответ

0

Попробуйте это:

 local nameData = mime.b64 (cipher:encrypt (nameField.text, "sbs_math_key")) 
     local passData = mime.b64 (cipher:encrypt (passwordField.text, "sbs_math_key")) 

     print("Before : "..nameData) 

     local tablefill =[[INSERT INTO users VALUES (NULL, ']].. nameData ..[[',']].. passData ..[['); ]] 
     db:exec(tablefill) 

     message = cipher:decrypt (mime.unb64 (nameData), "sbs_math_key") 

     print("After : "..message) 
Смежные вопросы