使用PKCS 11令牌进行SSL握手

时间:2014-09-09 11:22:32

标签: java android security ssl pkcs#11

我尝试在Android下使用PKCS#11卡建立SSL客户端身份验证。我可以很好地阅读证书,但遗憾的是我无法提取私钥,因此我无法使用它来创建我的KeyStore。由于我没有从供应商那里获得任何Lib并且无法使用PKCS11的SUN实现,因为android不支持,我想我必须覆盖SSLContext以改变它处理签名的方式过程,所以我可以通过卡加密和解密握手?

此外,我无法使用完整的PKCS11 API,我有以下方法:

  

CK_RV C_GenerateKeyPair

     

CK_RV C_GenerateRandom

     

CK_RV C_Decrypt

     

CK_RV C_Sign

     

CK_RV C_Encrypt

卡的登录事先由其他软件处理,因此我已有权访问。

所以基本上有两个问题:

  1. 是否有一种简单的方法来处理无法访问的身份验证 私钥?

  2. 我必须覆盖什么或在哪里通过卡来处理SSL签名?

1 个答案:

答案 0 :(得分:0)

  

是否有一种简单的方法可以在不访问私钥的情况下处理身份验证?

没有方法可以在不访问私钥的情况下处理身份验证。

  

我必须覆盖什么或在哪里通过卡来处理SSL签名?

Android必须提供某种形式的PKCS#11处理程序吗?如果没有,IAIK有一个免费的,你可以自己构建,我几年前为AIX做过。