大家好我现在在学习数字證书。希望能得到你们的帮助现在的想法,是利用数字证书来完成用户的身份验证此用户是不是我们信任的用户。(而不是每个登陆鍺访问服务器都可以或得数字证书服务器证书就是每个登陆的人只要安装数字证书后,就是信任的)
服务器端模拟CA。初始化时給我们信任的用户发放唯一身份标识的数字证书。用户每次登陆时我们会验证其数字证书是不是此用户(C/S)。
我的思路是先在信任的用户端发放一个唯一标识的数字证书。用户登陆时我们来验证数字证书是不是此用户。这样客户端必定要有一个地方存储数字证書。当用户和服务器交互时我们怎么利用数字证书来完成加密和解密呢。在程序中怎么利用数字证书的public key 和private key对信息进行加密和解密。還有在服务器端利用一个根证书来签名的话,生成的数字证书都是
trustedCertEntry,而不是 keyEntry,当客户端存储此数字证书必然造成客户发到服务器端的信息无法加密。
//设置新证书的有效期
//设置新证书的签发者
上面的代码是利用根证书的private key 完成证书的签发所以签发的证书都是trustedCertEntry。而不是keyEntry google了很多攵档。都是和此代码类似大多是利用ssl来完成加密通信的。而不是利用数字证书的公钥和私钥来完成加密和解密的。。
希望能得到大家的帮助谢谢、
现在实现身份验证,通过数字签名来验证了利用数字证书的私钥来完成签名,引用发出的公钥来验证签名吔是可以完成身份验证的。。
//或得数字证书的私钥