求救!!证书验证的问题!!

jackwmj 2007-05-21 02:59:50
本来建双向ssl的项目
现在导师让改成单向ssl+数字签名实现

客户端提交的签名信息中,包含原文、证书和签名值。
现在我第一步就卡住了:如何验证证书?
是不是先checkValidity(),然后Verify(PublicKey key)?
这儿又有个问题:Verify(PublicKey key)中的key应该是CA根证书中的PublicKey吧?该怎么提取得到这个key呢?
我tomcat中的keystore在D:\Tomcat 5.5\conf\tomcat.keystore,CA证书和服务器证书都装在这儿。
哪位大哥帮个忙啊!!小弟叩谢了!!!
...全文
225 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jackwmj 2007-05-22
  • 打赏
  • 举报
回复
来人呐...!!
jackwmj 2007-05-22
  • 打赏
  • 举报
回复
to 9441(不知道)
谢谢你的回帖!
证书我已经提取到了。。。问题是怎么去验证的问题。。。
主要步骤:
1、客户的证书使用日期是否有效,(以解决)
2、为客户提供证书的 CA 是否可靠,
3、发行 CA 的公钥能否正确解开客户证书的发行 CA 的数字签名,
4、检查客户的证书是否在证书废止列表(CRL)中。
2、3可以直接利用CA公钥来验证证书一起解决;我现在的问题是如何从我部署在D:\Tomcat 5.5\conf\tomcat.keystore提取CA公钥以及第四步的问题。。。
jackwmj 2007-05-22
  • 打赏
  • 举报
回复
达人帮忙啊!
刚看了下tomcat的源代码,眼都看花了还是没找到合适的方法。。。
9441 2007-05-22
  • 打赏
  • 举报
回复
<%

String certstr="";

X509Certificate[] certs =

(X509Certificate[]) request.getAttribute(

"javax.servlet.request.X509Certificate");

if(certs!=null)

{

X509Certificate mycert=(X509Certificate)certs[0];

//out.println("Has Cert from Client!");

certstr=mycert.toString();

}

else

out.println("could not get certificate from client!");


%>
jackwmj 2007-05-21
  • 打赏
  • 举报
回复
求救阿!!。。。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧