我正在使用C ++编写一个简单的密码管理器,我想知道在关闭程序后如何更新密码。
如果我更新程序中的密码,我相信,退出程序后,它们只会恢复到源代码中的内容。程序关闭后,有没有办法使更改持久化?
当我更改密码时,没有将密码列表反复写入输出文件,还有另一种方法吗?
答案 0 :(得分:1)
我强烈建议使用现有的和高质量的东西。您需要的持久存储类型符合您的要求。
对于只需要存储有关当前上下文或某种凭证的信息的应用程序,我建议使用轻量级事务数据库,例如SQLite database
。一个全面而简单的API exists for C/C++。
使用遵循ACID
原则的SQLite
或MySQL
等数据库系统要容易得多,因为数据库系统保证Consistency,Atomicity交易Isolation和Durability。这将使您的应用程序存储更加高效,并且不易出现常见的编程错误,并且如果在事务期间发生任何错误,您将被广告。
答案 1 :(得分:0)
答案取决于您所撰写的系统/平台。基本上,您需要某种持久存储,它可以是本地文件系统或外部存储,如数据库。 写入文件看起来像一个快速而简单的解决方案,但是您可能需要注意安全性。因此使用一些加密库。如果您的密码列表足够大但仍想使用本地存储,请考虑使用sqlite。