APP中有一个sqlite数据库,我想用SQLCipher加密。众所周知,将密码存储在代码中是不安全的,因此我将使用捆绑标识符作为密码的一部分。
那么,我想知道捆绑标识符是否易于从设备或越狱设备上的应用程序中检索?
谢谢。
APP中有一个sqlite数据库,我想用SQLCipher加密。众所周知,将密码存储在代码中是不安全的,因此我将使用捆绑标识符作为密码的一部分。
那么,我想知道捆绑标识符是否易于从设备或越狱设备上的应用程序中检索?
谢谢。
切勿使用 APP 的捆绑标识符作为密码。很容易破译。例如:如果您有 ideviceinstaller,您可以在设备上查询已安装应用程序的 bundleId:
ideviceinstaller -U <UUID> -l
还有其他一些方法可以破译捆绑 ID。所以建议不要使用 bundle id 作为密码。希望能帮助到你。
安全很难,真正唯一的保护就是不给任何人任何东西。如果您确实需要给他们一些东西,那么最好向他们询问密码。如果你不能问他们,那么你能做的最好的就是混淆,即使你加密了数据,因为你能做的最好的就是隐藏密码,这样更难找到,或者找出如何创建它。
因此,很容易找出应用程序的捆绑包 ID,问题是找出您使用的密码有多难,以及它所保护的数据有多大价值。
如果数据确实有价值,则应妥善保护它,这可能涉及要求用户输入密码并从按需加密的服务器下载数据。
如果您的目标只是阻止对新手黑客的访问,则生成一个 GUID,将其作为字符串文字以外的其他内容编码到应用程序中,然后使用它。
如果您将密码存储在应用程序内的任何位置,您将无法阻止一个坚定且经验丰富的黑客......