我创建了一个tkinter桌面应用程序,我有一个名为auth
的表,其中包含一行包含敏感API凭据的行。我的想法是使用pysqlcipher
(link)或等效的加密此表。
根据文档,您必须在执行任何操作之前传递PRAGMA key
。如果有人反编译了我的应用程序的.exe版本,他们不能在源代码中找到这个密钥然后从那里解密数据库吗?如果是这样,那么在桌面应用程序中保护敏感API凭据的常用解决方案是什么?
from pysqlcipher import dbapi2 as sqlite
conn = sqlite.connect('test.db')
c = conn.cursor()
c.execute("PRAGMA key='test'")
c.execute('''create table stocks (date text, trans text, symbol text, qty real, price real)''')
c.execute("""insert into stocks values ('2006-01-05','BUY','RHAT',100,35.14)""")
conn.commit()
c.close()
我的sqlite表结构:
db.sqlite
|__ profiles
|__ auth
|__ tables
免责声明:我不是安全或加密专家,但我非常愿意探索和学习所有选项。