我为iPhone / iPod Touch开发了一个必须访问MySQL数据库的应用程序。我写了一个PHP API,我可以从iPhone应用程序调用。
在数据库中,我存储了我要加密的敏感数据。我想我会使用AES_ENCRYPT。我的问题是存放密钥的位置 你知道在哪里存储加密/解密的密钥以便任何其他人都看不到它,例如,你很高兴。黑客的攻击。</ P>
答案 0 :(得分:3)
一般来说:
/var/www/home
,请不要将密钥放在那里。把它放在Web服务器树的一部分之外。至于试图将密钥和数据分开 - 这是一个长期存在的问题,没有很好的解决方案。问题的简单事实是您的应用程序必须能够访问密钥。这或者意味着强迫所有将要使用该应用程序的人记住密钥 - 这可能会导致在普通视图中显示器上的粘滞便笺 - 或者它必须住在应用程序可以找到它的某个地方,或者在同一个地方服务器或其他。