用于签名和加密文件的客户端 - 服务器解决方案

时间:2022-10-08 23:55:34

I'm looking for a solution to perform file encrypting and signing. This would be done on the client side, and signature check and decryption on the server side.

我正在寻找一种执行文件加密和签名的解决方案。这将在客户端完成,并在服务器端进行签名检查和解密。

Some details:

  • This should work for any kind of file (the signature should be "attached" to the file, not inside it like with PDFs)
  • 这适用于任何类型的文件(签名应该“附加”到文件,而不是像PDF一样在其中)

  • At least the server side should be Java based (the client could be a Java applet)
  • 至少服务器端应该是基于Java的(客户端可以是Java applet)

EDIT: The client part is really the greater issue here. While the server side can be implemented with existing libraries, the client should be an existing application (even if commercial).

编辑:客户端部分确实是更大的问题。虽然服务器端可以使用现有库实现,但客户端应该是现有应用程序(即使是商业应用程序)。

2 个解决方案

#1


You would need to use PGP or something similar on the client side then. There are standards for signing and verifying signatures on messages and/or files, and there are certainly commercial and free products for this. I would recommend using PGP on the clients, and you can look up either a PGP library for Java to use on the server, or you can check out how PGP wraps up the data to emulate that (after all, signing data is a standard and well documented procedure, albeit cumbersome).

您需要在客户端使用PGP或类似的东西。有关于在消息和/或文件上签名和验证签名的标准,并且肯定有商业和免费产品。我建议在客户端上使用PGP,你可以在服务器上查找用于Java的PGP库,或者你可以查看PGP如何包装数据以模拟它(毕竟,签名数据是标准的,记录良好的程序,尽管很麻烦)。

The Bouncy Castle library for Java has some OpenPGP support, you can check it out to see how compatible it is with a PGP implementation for Windows or whatever the clients use. Cryptix also has some OpenPGP support but that library was meant for Java 1.3 and hasn't been updated since 2005. I recommend you use BC instead.

用于Java的Bouncy Castle库具有一些OpenPGP支持,您可以查看它以了解它与Windows的PGP实现以及客户端使用的任何内容的兼容性。 Cryptix也有一些OpenPGP支持,但该库适用于Java 1.3,自2005年以来一直没有更新。我建议您使用BC。

#2


The Cryptix project is an open source java PGP library.

Cryptix项目是一个开源的Java PGP库。

#1


You would need to use PGP or something similar on the client side then. There are standards for signing and verifying signatures on messages and/or files, and there are certainly commercial and free products for this. I would recommend using PGP on the clients, and you can look up either a PGP library for Java to use on the server, or you can check out how PGP wraps up the data to emulate that (after all, signing data is a standard and well documented procedure, albeit cumbersome).

您需要在客户端使用PGP或类似的东西。有关于在消息和/或文件上签名和验证签名的标准,并且肯定有商业和免费产品。我建议在客户端上使用PGP,你可以在服务器上查找用于Java的PGP库,或者你可以查看PGP如何包装数据以模拟它(毕竟,签名数据是标准的,记录良好的程序,尽管很麻烦)。

The Bouncy Castle library for Java has some OpenPGP support, you can check it out to see how compatible it is with a PGP implementation for Windows or whatever the clients use. Cryptix also has some OpenPGP support but that library was meant for Java 1.3 and hasn't been updated since 2005. I recommend you use BC instead.

用于Java的Bouncy Castle库具有一些OpenPGP支持,您可以查看它以了解它与Windows的PGP实现以及客户端使用的任何内容的兼容性。 Cryptix也有一些OpenPGP支持,但该库适用于Java 1.3,自2005年以来一直没有更新。我建议您使用BC。

#2


The Cryptix project is an open source java PGP library.

Cryptix项目是一个开源的Java PGP库。