如何在不提前修复密钥的情况下将数据从 J2ME 客户端传递到服务器?

发布于 2024-11-09 04:07:01 字数 296 浏览 4 评论 0原文

我是一名 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

唠甜嗑 2024-11-16 04:07:01

非对称加密的工作方式如下:

  1. 服务器生成一对公钥/私钥
  2. 它将公钥发送给客户端。
  3. 客户端使用公钥来加密一些秘密消息。
  4. 服务器使用私钥来解密该消息。

非对称算法比对称加密慢,因此它们通常仅用于在服务器和客户端之间交换秘密密码,然后使用对称算法对消息进行加密。

The way asymmetric cryptography works is the following:

  1. The server generates a pair of public/private keys
  2. It sends the public key to the client
  3. The client uses the public key to encrypt some secret message
  4. The server uses the private key to decrypt the message.

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文