使用哪种密码进行跨平台
我有多个应用程序与一个集中式 Oracle 数据库配合使用。
这些应用程序针对以下平台:
- iPhone
- Android
- Windows(XP、Vista 和 7)
- Linux
- Mac Os
- Web 应用程序(ASP.NET、PHP 和 JSP)
我想知道应该使用哪种密码来确保我的所有加密数据 都将可读(解密)
我的所有应用程序 3DES 或 RIJNDAEL_256 或 TWOFISH256?
I have multiple applications which work with one centralized Oracle database.
The applications are targeted on following platforms:
- iPhone
- Android
- Windows (XP, Vista and 7)
- Linux
- Mac Os
- Web applications (ASP.NET, PHP and JSP)
I want to know which kind of cipher I should use to make sure all my encrypted data will be readable (decrypted) for all my application
E.g. 3DES or RIJNDAEL_256 or TWOFISH256?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您应该能够在您提到的所有目标平台上实现这些密码。
至于使用哪个,我建议使用 Rijndael (AES),因为它受到了很多关注并且拥有经过验证的安全记录。
You should be able to implement those ciphers on all of the target platforms you mentioned.
As for which to use, I'd suggest Rijndael (AES) since it has received a lot of attention and has a proven security track-record.
http://gpg4browsers.recurity.com/ 具有您提到的所有密码的 JS 实现。
您提到的所有操作系统都直接或通过 mcrypt 支持所有这些密码。
这将问题简化为固执己见:所以这是我的观点 - 不要对任何这些密码进行标准化(在硬编码的意义上),而是投入时间损失来以某种方式开发您的应用程序和协议,使它们能够握手所使用的密码。通过这种方式,您现在可以用速度换取安全性,并对密码学(或密码分析)的发展持开放态度
http://gpg4browsers.recurity.com/ has JS implementations for all ciphers you mentioned.
All OSes you mentioned support all of these ciphers either directly or via mcrypt.
This reduces the question to opinionizing: So here is my opinion - do NOT standardize (in the sense of hardcode) to any of those ciphers, but invest the on-time penalty to develop your apps and protocols in a way, that allows them to handshake the cipher used. This way you can trade speed for security now and are open for developments in cryptography (or cryptanalysis)