首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

数字签名认证,判断信息是不是早篡改

2012-08-28 
数字签名认证,判断信息是否早篡改需要的参数:原文,签名值,证书BASE64Decoder字符串public Boolean doVerif

数字签名认证,判断信息是否早篡改
需要的参数:
原文,签名值,证书BASE64Decoder字符串
public Boolean doVerify(String signInfo,String message) throws CertificateException, IOException, NoSuchAlgorithmException, SignatureException, InvalidKeyException{
CertificateFactory cf = CertificateFactory.getInstance("X.509");
BASE64Decoder decoder = new BASE64Decoder();
InputStream certis = new ByteArrayInputStream(decoder.decodeBuffer(base64Cert.trim()));
X509Certificate t = (X509Certificate)cf.generateCertificate(certis);
Signature sign = Signature.getInstance(t.getSigAlgName());
sign.initVerify(t.getPublicKey());
sign.update(message.getBytes());
if(sign.verify(decoder.decodeBuffer(signInfo))){
return true;
}else{
return false;
}

}

热点排行