数字签名的制作方法整理.docx

上传人:b****4 文档编号:12252202 上传时间:2023-04-17 格式:DOCX 页数:14 大小:21.09KB
下载 相关 举报
数字签名的制作方法整理.docx_第1页
第1页 / 共14页
数字签名的制作方法整理.docx_第2页
第2页 / 共14页
数字签名的制作方法整理.docx_第3页
第3页 / 共14页
数字签名的制作方法整理.docx_第4页
第4页 / 共14页
数字签名的制作方法整理.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

数字签名的制作方法整理.docx

《数字签名的制作方法整理.docx》由会员分享,可在线阅读,更多相关《数字签名的制作方法整理.docx(14页珍藏版)》请在冰豆网上搜索。

数字签名的制作方法整理.docx

数字签名的制作方法整理

Io用keytool来创建一个密匙(同时指定时效,多久会过期,默认只给6个月)

2。

用JARSigner用此密匙为JAR签名。

可以用同一个密匙来为多个JAR签名。

注意:

大小写,签名一致,数字签名过期

为什么JAR要被签名?

当用户启动一个JavaNetworkLaunchingProtocol(JNLP,Java网络加载协议)文件或使用一个applet时,这个JNLP或applet可能请求系统提供一些非一般的访问。

比如“文件打开”等进行这样的请求,就需要签名的JAR。

如果它是匿名的,系统会询问用户是否打算信任JAR的签署者。

1.首先生成签名文件,执行完成后,会在本目录内生成一个.keystore的密钥文件,2kByte人小。

yourProj是别名keypass后面是密文密码,keystore密码是存储密码(要改变此文时需要输入确认此密码)

在dos命令提示状态卞输入

C:

\DocumentsandSettings\Administrator>keytool-genkey-aliasyourProj-keypassyourCompany:

Kouling

[回车],屏幕提示:

输入keystore密币马:

yourCompany:

yourPassword

您的名字与姓氏是什么?

[Unknown]:

ChinayourCompany

您的组织单位名称是什么?

[Unknown]:

ChinayourC

您的组织名称是什么?

[Unknown]:

Company

您所在的城市或区域名称是什么?

[Unknown]:

City

您所在的州或省份名称是什么?

[Unknown]:

Province

该单位的两字母国家代码是什么

[Unknown]:

CN

CN=ChinayourCompany,OU=ChinayourC0=CompanyzL=City,ST=Province,C=CN正确

吗?

[否]:

2•为此密钥加有效期限:

7200天,将近20年•[嘿嘿,足够用了吧?

再也别想6个月]输入命令:

-keypass

C:

\DocumentsandSettings\Administrator>keytool-genkey・aliasyourProj

yourCompany:

Kouling-selfcert-validity7200

屏幕提示:

输入keystore密码:

yourCompany:

yourPassword

注意:

-validity7200这个就是加时效的参数,7200单位是“天”。

检查密钥文件,输入命令:

C:

\DocumentsandSettings\Administrator>keytool・list

屏幕提示:

输入keystore密码:

yourCompany:

yourPassword

Keystore类型:

jks

Keystore提供者:

SUN

您的keystore包含1输入

yourProj,2009-5-15,keyEntry,

认证指纹(MD5):

D4:

9D:

C7:

3A:

91:

B4:

30:

6A:

4D:

50:

Fl:

7C:

E7:

F5:

B9:

49

说明已经生成成功完成!

3•开始为Jar包文件签名

用JARsigner工具

切换到项目jar包所在目录

D:

\yourPassworcTs-works\yourProj\webroot\app的目录

输入dir可以看到:

2009-04-3018:

37

2009-04-3018:

37

2009-04-3017:

55

2009-04-3018:

37

56,317commons-logging-l.l.jar

550,863yourCompany-app-vl.O.l.jar

输入命令:

jarsigner-verbose-certscommons-logging-l.l.jaryourProj

注:

verbose输出详细信息

certs表示验证此jar包时输出证书信息

屏幕提示:

输入密钥库的I丨令短语:

yourCompany:

you「Password

输入yourProj的密钥11令:

yourCompany:

Kouling

正在添加:

META-INF/YOURPROJ.SF

正在添加:

META-INF/YOURPROJ.DSA

正在添加:

org/

正在添加:

org/apache/

正在添加:

org/apache/commons/

正在添加:

org/apache/commons/logging/

正在添加:

org/apache/commons/logging/impl/

接着输入:

D:

\yourProj\webroot\app>jarsigner-verbose-certsyourCompany-app-vl.O.l.jaryourProj

屏幕提示:

输入密钥库的I丨令短语:

yourCompany:

yourPassword

输入yourProj的密钥II令:

yourCompany:

Kouling

正在添加:

META-INF/YOURPROJ.SF

正在添加:

META-INF/YOURPROJ.DSA

正在添加:

org/

注意:

重要签名给yourCompany-app-vl.O.l.jar文件,但它使用了另外的几个commonsxxxx包,也要签名,否则将来使用时会提示签名不一致的错误!

4。

打开jar包文件的META-INF目录可以看到

yourProj.SF

yourProj.DSA

以及被扩充的MANIFEST.MF文件

表明已经加入了签名文件

Java数字签名(DigitalSignature)的批处理文件制作

制作以下5个批处理文件:

set.cmd

setJDK_BIN=E:

\z,ProgramFiles,z\Java\jdkl.6.0_24\bin

setKEY_FOLDER=E:

\DigitalSignature

key.cmd

callset.cmd

%JDK_BIN%\keytool-genkey

-keystore%KEY_FOLDER%\cuckoo.keystore-aliascuckoo<

KEY_ANSWER.1st

%JDK_BIN%\keytool-selfcert

-keystore%KEY_FOLDER%\cuckoo.keystore-aliascuckoo-validity

1000

%JDK_BIN%\keytool-export

-keystore%KEY_FOLDER%\cuckoo.keystore-aliascuckoo

-file%KEY_FOLDER%\cuckoo.cer

注:

KEY_ANSWER.1st和KEY_PWD.1st为输入重定向文件,从文本文件里读每行來回答命令行的问题,换行回车作为提交。

-validity后面跟签名有效期,以天为单位,默认是半年

例:

KEYANSWER.1st

password

password

RenJian

TheCUCKOOWorkgroup

SunYat-senUniversity

Guangzhou

Guangdong

CN

(后面加两个换行)

KEY_PWD.1st

password

(换行)

selfsign,cmd

%JDK_BIN%\jarsigner-keystore%KEY_FOLDER%\cuckoo.keystore%1cuckoo

sign,cmd

callset・cmd

callselfsign,cmd%1

batchsign,cmd

callset・cmd

for%%Nin(%1\*.jar)docallselfsign,cmd%%N

使用说明:

1.在set.cmd中设置JDK_BIN文件夹位置和存放Key的文件夹位置

2.运行key.cmd产生key

3.单个文件签名

命令:

sign,cmd[jar]

4.对指定文件夹下所有文件批量签名:

命令:

batchsign,cmd[jar_folder]

javakeytool使用总结(转)

2011-08-1615:

34

Keytool是一个Java数据证书的管理工具,Keytool将密钥<key)和证书(certificates)存在一个称为keystore的文件中在keystore里,包含两种数据:

密钥实体(Keyentity)——密钥(secretkey)又或者是私钥和配对公钥(采用非对称加密)

叫信任的证书实体(trustedcertificateentries)只包含公钥

ailas(别名)每个keystore都关联这一个独一无二的alias,这个alias通常不区分大小写

JDK中keytool常用命令:

-genkey在用户主目录中创建一个默认文件keystore^,还会产生一个mykey的别名•mykey中包含用户的公钥、私钥和证书

(在没有指定生成位盘的情况下,keystore会存在用户系统默认目录.如:

对干windowxp系统.会生成在系统的

C:

\DocumentsandSettings\UserName\文件名为"・keystore")

-alias产生别名

-keystore指定密钥库的名称(产生的各类信息将不在.keystore文件中)

-keyalg抬定密钥的算法(如RSADSA(如果不指定默认采用DSA))

-validity指定创建的证书有效期多少天

-keysize扌打定密钥长度

-storepass指定密钥库的密码(获取keystore信息所需的密码)

-keypass扌H定别名条目的密码(私钥的密码)

-dname指定证书拥有者信息例如:

"CU名字与姓氏,02组织单位名称,0=组织名称,L二城市或区域名称,ST二州或省份名称,C二甲位的两字母国家代码"

-list显示密钥库中的证书信息keytool-list-v-keystore指定keystore-storepass密码

-v显示密钥库中的证书详细信息

-export将别名抬定的证书导出到文件keytool-export-alias需要导出的别名-keystore扌H定keystore-file

定导出的证书位置及证书名称-storepass密码

-file参数指定导出到文件的文件名

-delete删除密钥库中某条目keytool-delete-alias指定需删除的别-keystore抬定keystore-storepass密码

-printcert査看导出的证书信息keytool-printcert-fileyushan.crt

-keypasswd修改密钥库中指定条目口令keytool-keypasswd-alias需修改的别名-keypass旧密码-ne戏新密码

-storepasskeystore密码-keystoresage

-storepass宵df煖改keystore匚I令keytool-storepasswd-keystoree:

\yushan・keystore(需纟参改口令(內keystore)

-storepass123156(原始密码)-newyushan(新密码)

-import将已签名数字证书导入密钥库keytool-import-alias指定导入条目的别名-keystore抬定keystore-file需导入的证书

下面是各选项的缺省值。

-alias"mykey"

-keyalg"DSA"

-keysize1021

-validity90

-keystore用户宿主目录中名为・keystore的文件

-file读时为标准输入.写时为标准输出

1.keystore的生成:

分阶段生成:

keytool-genkey-aliasyushan(别名)-keypassyushan(别名密码)-keyalgRSA(算法)-keysize1024(密钥长度)-validity365(有效期,天轨位)-keystore

e:

\yushan.keystore(Ifi定生成证书的位置和证书名称〉-storepass123156(获取keystore信息的密码):

回车输入相关信息即可:

一次性生成:

keytool-genkey-aliasyushan-keypassyushan-keyalgRSA-keysize1024-validity365-keystore

e:

\yushan・keystore-storepass123156-dname"C\=(名字与

姓氏),02(组织单位名称),0=(组织名称),L=(城市或区域名称),ST=(州或省份名称),C二仲位的两字母国家代码)":

(中英文即可)

2、keystore信息的査看:

keytool-list-v-keystoree:

\keytool\yushan・keystore-storepass123156

显示内容:

Keystore类型:

JKS

Keystore提供者:

SUN

您的keystore包含1输入

别名名称:

yushan

创建日期:

2009-7-29

项类型:

PrivateKeyEntry

认证链长度:

1

认证[1]:

所有者:

CHyushan,0U=xx公可,0二xx协会,潭,ST=湖南,C二中国

签发人:

C\=yushan,OOxx公可,0二xx协会,1=湘潭,ST=湖南,C二中国序列号:

4a6f29ed

有效期:

WedJul2900:

10:

13CST2009至ThuJul2900:

40:

13CST2010证书折纹:

MD5:

A3:

D7:

D9:

74:

C3:

50:

7D:

10:

C9:

C2:

17:

BO:

33:

90:

45:

C3

SHAl:

2B:

FC:

9E:

3A:

DF:

C6:

C4:

FB:

87:

B8:

A0:

C6:

99:

43:

E9:

4C:

4A:

El:

18:

E8

签名算法名称:

SHAlwithRSA

版本:

3

缺省情况下.-list命令打印证书的MD5指纹。

而如果描定了r选项.将以可读格式打印证书.如果折定了-rfc选项.将以可打印的编码格式输出证书。

keytool-list-rfc-keystoree:

\yushan・keystorre-storepass123156

Keystore类型:

JKS

Keystore提供者:

SUN

您的keystore包含1输入

别名乞称:

yushan

创建日期:

2009-7-29

项类型:

PrivateKeyEntry

认证链长度:

1

认证[1]:

BEGINCERTIFICATE

MIICSzCCAbSgAwIBAgIESm8p7TANBgkqhkiG9uOBAQUFADBqMQ8wDQYDVQQGDAbkuK31m70xDzAN

BgN\rBAgNIBua51u^lzEPNfA0GAlUEB^5rmY5r2tMREw^YDVQQKDAh4e0WNj+S8mjER5fA8GAlUE

CwwIeHjlhazlj7gxDzANBgNVrBAMTBnllc2hhbjAeFwOwOTA3MjgxXjQwMTNaFwOx5fDA3MjgxNjQw

MTNaMGoxDzANBgNVrBABlBuS4reWbvTEPMA0GAlUECAwG5rmW5Y2XMQ8wDQTOVQQHDAbmuZjmva0x

ETAPBgX\TBAoMCHh45Y2P5LyaMREwDwTOVQQLDAh4e0W?

r0ft?

uDEPMA0GAlUEAxMGeXVzaGFuMIGf

MA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCJorulRQczRzTnBWxefVTNspQBykS220rS8Y/oX3mZa

hjL4wLf0URzUuxxuVQR2jx7QI+XKME+DHQj9r6aAcLBCi/TljwF8mVYxtpRuTzE/6KEZdhowEe70

liWLVE+hytLBHZ03Zhwcd6q5HUMu27du3MPQvqiwzTY7MrwIvQQ8iQIDAQABMA0GCSqGSIb3DQEB

BQUAA4GBAGoQQl/FnTfkpQh+Ni6h3fZdn3sR8ZzDMb0AIYVLAhBb85XDJ8QZTarHbZMJcIdHxAll

i08ct3E8U87V9t8GZF%VC4BFg/+zeFEv76SFpVE56iX7Pljpsu78z0m69hHlds77VJTdyfMSvtXvsYHP3fxfzx9WyhipBwd8VPK/NgEP

ENDCERTIFICATE

3.证书的导出:

keytool-export-aliasyushan-keystoree:

\yushan・keystorre-filee:

\yushan・crt(指定导[釣证书位盘及证书名称)-storepass123156

4.査看导出的证书信息

keytool-printcert-fileyushan・crt

显示:

(在windowsF可以双击yushan.crt查看)

所有者:

CHyushan,0U=xx公可,0二xx协会,LMI9潭,ST=湖南,C二中国

签发A:

CN=yushan,OOxx公可,0=xx协会,1=湘潭,ST=湖南,C二中国序列号:

4a6f29ed

有效期:

WedJul2900:

10:

13CST2009至ThuJul2900:

40:

13CST2010证书指纹:

MD5:

A3:

D7:

D9:

74:

C3:

50:

7D:

10:

C9:

C2:

47:

BO:

33:

90:

45:

C3

SHAl:

2B:

FC:

9E:

3A:

DF:

C6:

C4:

FB:

87:

B8:

A0:

C6:

99:

43:

E9:

4C:

4A:

El:

18:

E8签名算法名称:

SHAlwithRSA

版本:

3

5s证书的导入:

准备一个导入的证书:

keytool-genkey-aliasshuany-keypassshuany-keyalgRSA-keysize1024-validity365-keystoree:

\shuany・keystore-storepass123156-dname"CN=shuany,

0U=xx,0=xx,L=xx,ST=xx,C=xx":

keytool-export-aliasshuany-keystoree:

\shuany・keystore-filee:

\shuany・crt-storepass123456

现在将shuany.crt加入到yushan.keystore中:

keytool-import-aliasshuany(ffi定导入证书的别名.如果不扌H定默认为mykey,别名唯一,否则导入出错)-filee:

\shuany・crt-keystoree:

\yushan・keystore-storepass

123156

keytool-list-v-keystoree:

\keytool\yushan・keystore-storepass123156

显示:

Keystore类型:

JKS

Keystore提供者:

SUN

您的keystore包含2输入别名名称:

yushan

创建日期:

2009-7-29

项类型:

PrivateKeyEntry

认证链长度:

1

认证[1]:

所有者:

C\=yushan,OOxx公可,0二xx协会,潭,ST=湖南,C二中国

签发K:

CN=yushan,OOxx公可,0二xx协会,潭,ST=湖南,C二中国序列号:

4a6f29ed

有效期:

WedJul2900:

10:

13CST2009至ThuJul2900:

40:

13CST2010证书指纹:

MD5:

A3:

D7:

D9:

74:

C3:

50:

7D:

10:

C9:

C2:

47:

BO:

33:

90:

45:

C3

SHAl:

2B:

FC:

9E:

3A:

DF:

C6:

C4:

FB:

87:

B8:

A0:

C6:

99:

43:

E9:

4C:

4A:

El:

18:

E8

签名算法名称:

SHAlwithRSA

版本:

3

别名名称:

shuany

创建日期:

2009-7-29

输入类型:

trustedCertEntry

所有者:

CN=shuany,0U=xx,0=xx,L=xx,ST=xx,C=xx

签发人:

CNshuany,0U=xx,0=xx,L=xx,ST=xx,C=xx

序列号:

4a6f2cd9

有效期:

WedJul2900:

52:

11CST2009至ThuJul2900:

52:

41CST2010证书指纹:

MD5:

15:

03:

57:

9B:

14:

BD:

C5:

50:

21:

15:

47:

1E:

29:

87:

A4:

E6

SHAl:

Cl:

4F:

8B:

CD:

5E:

C2:

94:

77:

B7:

42:

29:

35:

5C:

BB:

BB:

2E:

9E:

F0:

89:

F5

签名算法名称:

SHAlwithRSA

版本:

3

6s证书条目的删除:

keytool-delete-aliasshuany(抬定需删除的别名)-keystoreyushan.keystore-storepass123156

7s证书条目口令的修改:

keytool-keypasswd-aliasyushan(需要修改密码的别名)-keypassyushan(原始密码)-n许123156(别名的新密码)-keystoree:

\yushan・keystore-storepass123156

8skeystore口令的修改:

keytool-storepasswd-keystoree:

\yushan.keystore(需修改口令的keystore)-storepass123156(原始密码)-newyushan(新密码)

9.修改keystore中别名为yushan的信息

keytool-selfcert-aliasyushan-keypassyushan-keystoree:

\yushan・keystorre-storepass123156-dname"cn=yushan,ou=yushan,o=yushan,c=us

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 辩护词

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1