bet5365亚洲版-新葡萄京官网8814-首页

售前咨询
技术支撑
渠道合作

Java代码签名验证公钥私钥

Java生成密钥,保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey),产生双钥的密钥对(keyPair),如何保存公钥的字节数组,保存私钥到文件privateKey.dat,

Java验证公钥私钥签名认证示例如下

importsecurity.KeyPair;

importsecurity.KeyPairGenerator;

importsecurity.NoSuchAlgorithmException;

importsecurity.Signature;

/**

*

*?@since?2015年8月20日?下午2:22:08

*?@author?hym

*/

publicclass?SignDemo?{

 

/**得到产生的私钥/公钥对

*?@return

*?@author?hym

*/

public?static?KeyPair?getKeypair(){

//产生RSA密钥对(myKeyPair)

KeyPairGenerator?myKeyGen?=?null;

try?{

myKeyGen?=?KeyPairGenerator.getInstance(“RSA”);

initialize(1024);

}?catch?(NoSuchAlgorithmException?e)?{

printStackTrace();

}

KeyPair?myKeyPair?=?myKeyGen.generateKeyPair();

return?myKeyPair;

}

/**根据密钥对对信息进行加密,返回公钥值

*?@param?mySig

*?@param?myKeyPair

*?@param?infomation

*?@return

*?@author?hym

*/

public?static?byte[]?getpublicByKeypair(Signature?mySig,KeyPair?myKeyPair,byte[]?infomation){

byte[]?publicInfo=null;

try?{

initSign(myKeyPair.getPrivate());??//用私钥初始化签名对象

update(infomation);??//将待签名的数据传送给签名对象

publicInfo?=?mySig.sign();??//返回签名结果字节数组

}?catch?(Exception?e)?{

printStackTrace();

}

return?publicInfo;

}

 

/**公钥验证签名

*?@param?mySig

*?@param?myKeyPair

*?@param?infomation

*?@param?publicInfo

*?@return

*?@author?hym

*/

public?static?boolean?decryptBypublic(Signature?mySig,??KeyPair?myKeyPair,String?infomation,byte[]?publicInfo){

boolean?verify=false;

try?{

initVerify(myKeyPair.getPublic());??//使用公钥初始化签名对象,用于验证签名

update(infomation.getBytes());?//更新签名内容

verify=?mySig.verify(publicInfo);?//得到验证结果

}?catch?(Exception?e)?{

printStackTrace();

}

return?verify;

}

 

public?static?void?main(String[]?args)?{

try?{

KeyPair?keyPair=getKeypair();

Signature?mySig?=?Signature.getInstance(“MD5WithRSA”);//用指定算法产生签名对象

byte[]?publicinfo=getpublicByKeypair(mySig,keyPair,”验证我”.getBytes());

boolean?verify=decryptBypublic(mySig,?keyPair,?“验证我”,?publicinfo);

out.println(“验证签名的结果是:”+verify);

}?catch?(NoSuchAlgorithmException?e)?{

printStackTrace();

}

}


代码签名证书是保护开发者的劳动成果,给自己开发的App签名的证书,保证代码在签名之后不被恶意篡改。用户可通过对代码的数字签名来标识App来源,辨别App开发者的真实身份。GDCA的代码签名证书支撑多种代码签名,并已通过WEBTRUST国际认证,是全球认证的代码签名证书。

上一篇:如何对exe进行代码签名

下一篇:windows代码签名证书

相关资讯

  • 代码签名证书原理及好处
  • 关于代码签名证书10个常见问题
  • EV代码签名证书和标准代码签名证书有何不同?
  • 无纸化时代,重要文档的保护技巧
  • 代码签名证书怎么选择?
  • 关于GlobalSign代码签名证书将面临调整的通知
  • MicroSoft代码签名证书先容
  • Android 代码签名先容
  • Java 方法签名详解及实例代码
  • Java代码签名——JAVA代码安全的首选策略

 

领取优惠
免费预约

申请试用

提交成功!

咨询客服

bet5365亚洲版|新葡萄京官网8814

XML 地图 | Sitemap 地图