在客户端和服务器上实施 RSA/ AES 加密
我想在 android 中实现一个应用程序(作为客户端),它将加密的字符串发送到 php 服务器,然后 php 服务器将解密该字符串。
加密逻辑没有任何问题,但我不知道如何共享我的密钥(如果我使用 AES/ RSA)。
请发布一些示例或链接,以便我了解如何向服务器和客户端共享我的密钥。
I want to implement an application in android (as client) who sends an encrypted string to php server and php server will decrypt that string.
There is no any problem to encryption logic, but I have no idea about how can share my key(if I use AES/ RSA).
Please post some examples or links where I can understand how can I share my keys to server and client.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
为了安全地做到这一点,您必须设计一个加密协议。如果您不知道如何共享密钥,那么您很可能没有资格这样做(很少有人有资格)。因此,最好的选择是只使用 SSL。它将处理身份验证(通过证书)和加密(通过每次连接时生成会话密钥并使用它来加密数据)。在此过程中将使用 RSA 和 AES(或其他一些对称密码)。
如果您使用 PHP,您只需在服务器上为 SSL 设置 Apache。
To do this securely, you have to design a cryptographic protocol. If you don't know how to share keys, chances are you are not qualified to do so (few people are). So your best bet is to just use SSL. It will handle both authentication (through certificates), and encryption (by generating a session key each time you connect and using it to encrypt data). Both RSA and AES (or some other symmetric cipher) will be used in the process.
If you are using PHP, all you need to do on the server is to set up Apache for SSL.