Encryption 从eToken解密文件

Encryption 从eToken解密文件,encryption,cryptography,rsa,encryption-asymmetric,devicetoken,Encryption,Cryptography,Rsa,Encryption Asymmetric,Devicetoken,我对密码学是新手,因此我想问一下我公司的要求 我们正在使用支持RSA的eToken 我开发了一个用公钥加密文件并将其存储在另一个文件中的代码 现在我想将加密文件传递给eToken,这是我的问题 如何从Java小程序访问eToken? 我必须将加密文件传递给eToken,它将为我解密文件,这对吗 我该怎么做呢?@Paulo感谢Paulo的大力帮助,但我仍然被困在这里。对不起,虽然我想帮助你,但我对eToken一无所知。这取决于token。有些令牌与智能卡类似,您可以使用javax.smartcar

我对密码学是新手,因此我想问一下我公司的要求

  • 我们正在使用支持RSA的eToken
  • 我开发了一个用公钥加密文件并将其存储在另一个文件中的代码
  • 现在我想将加密文件传递给eToken,这是我的问题
  • 如何从Java小程序访问eToken? 我必须将加密文件传递给eToken,它将为我解密文件,这对吗


    我该怎么做呢?

    @Paulo感谢Paulo的大力帮助,但我仍然被困在这里。对不起,虽然我想帮助你,但我对eToken一无所知。这取决于token。有些令牌与智能卡类似,您可以使用javax.smartcardio.*控制它。如果您为etoken添加规格,我将帮助您。部分答案:阿拉丁etoken基于智能卡。原则上,您可以使用PKCS调用或APDU接口。(我不确定文件加密是否在PKCS范围内)。对于APDU接口,如果整个文件的大小超过了密钥大小(出于安全原因,它甚至应该低于密钥大小的40%),就没有简单的方法来加密整个文件,因为需要一种将文件分成更小的块的方法。@Balasaheb:拥有智能卡的有趣之处在于,在卡上生成密钥对,所以私钥永远不会离开卡。因此,您有一个类似于“使用密钥#3解密此文件”的命令,但无法获取密钥值本身。如果在外部生成密钥对,则必须将私钥或公钥作为密钥对象写入卡中,然后卡才能使用它,因为没有类似“使用以下数据作为密钥破译此密钥”的命令。从卡中读取私钥通常是不可能的。@Paulo感谢Paulo的大力帮助,但我仍然被困在这里。对不起,虽然我想帮助你,但我对eToken一无所知。这取决于令牌。有些令牌与智能卡类似,您可以使用javax.smartcardio.*控制它。如果您为etoken添加规格,我将帮助您。部分答案:阿拉丁etoken基于智能卡。原则上,您可以使用PKCS调用或APDU接口。(我不确定文件加密是否在PKCS范围内)。对于APDU接口,如果整个文件的大小超过了密钥大小(出于安全原因,它甚至应该低于密钥大小的40%),就没有简单的方法来加密整个文件,因为需要一种将文件分成更小的块的方法。@Balasaheb:拥有智能卡的有趣之处在于,在卡上生成密钥对,所以私钥永远不会离开卡。因此,您有一个类似于“使用密钥#3解密此文件”的命令,但无法获取密钥值本身。如果在外部生成密钥对,则必须将私钥或公钥作为密钥对象写入卡中,然后卡才能使用它,因为没有类似“使用以下数据作为密钥破译此密钥”的命令。从卡中读取私钥通常根本不可能。