赞
踩
package com.what21.demo03;
import java.io.IOException;
import java.security.cert.X509Certificate;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Java证书认证
*/
public class CertLoginServlet extends HttpServlet {
private static final long serialVersionUID = -7342923817561268766L;
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 从Reques获取证书
X509Certificate[] certChain= (X509Certificate[])request.getAttribute("javax.servlet.request.X509Certificate");
for (int i = 0; certChain != null && i < certChain.length; i++) {
java.security.cert.X509Certificate cert = certChain[i];
System.out.println("输出证书信息: " + cert.toString());
System.out.println("版本号:" + cert.getVersion());
System.out.println("序列号:" + cert.getSerialNumber().toString(16));
System.out.println("主体名:" + cert.getSubjectDN());
System.out.println("签发者:" + cert.getIssuerDN());
System.out.println("有效期:" + cert.getNotBefore());
System.out.println("签名算法:" + cert.getSigAlgName());
byte[] sign = cert.getSignature();
System.out.println("签名值:");
for (int j = 0; j < sign.length; j++){
System.out.print(sign[j] + ",");
}
System.out.println();
java.security.PublicKey pk = cert.getPublicKey();
byte[] pkenc = pk.getEncoded();
System.out.println("公钥");
for (int j = 0; j < pkenc.length; j++){
System.out.print(pkenc[j] + ",");
}
System.out.println();
}
}
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。