如何在不提前修复密钥的情况下将数据从 J2ME 客户端传递到服务器?
我是一名 J2ME 程序员。现在我的项目与通过HTTP向服务器发送数据有关。这里我使用 Bouncy Castle 库(Triple DES)对 J2ME 端的数据进行加密。我还维护服务器端编码。
然后在服务器端将接收到的数据解密并存储在数据库中。在这里,我假设密钥在我的代码中静态固定。在服务器端和 J2ME 端我使用相同的键值。
但我要求密钥是随机生成的,用户不知道。
如果我用J2ME部分中的某个密钥加密数据,那么服务器如何在不知道密钥的情况下解密它?或者我可以使用任何其他机制来解决这个问题吗?非对称加密技术可以帮助我吗?
I'm a J2ME programmer. Now my project is related to sending data to server by HTTP. Here I encrypt the data in J2ME side using the Bouncy Castle library (Triple DES). I also maintain the server side coding.
Then on the server side the received data is decrypted and stored in database. Here I'm assuming the key is statically fixed in my code. On the server side and on the J2ME side I use the same key value.
But I have the requirement that the key is randomly generated, not known to user.
If I encrypt the data with some key in the J2ME part, then how can the server decrypt it without knowing the key? Or is there is any other mechanism I can use to solve this? Could asymmetric cryptography help me here?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
非对称加密的工作方式如下:
非对称算法比对称加密慢,因此它们通常仅用于在服务器和客户端之间交换秘密密码,然后使用对称算法对消息进行加密。
The way asymmetric cryptography works is the following:
Asymmetric algorithms are slower than symmetric encryption so they are often used only to exchange the secret password between the server and the client which will then be used to encrypt the messages using a symmetric algorithm.