预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共25页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

keytool-密钥和证书管理工具陕西省数字证书认证中心keytool-密钥和证书管理工具keytool-密钥和证书管理工具管理由私钥和认证相关公钥的X.509证书链组成的密钥仓库(数据库)。还管理来自可信任实体的证书。结构keytool[命令]说明keytool是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。证书是来自一个实体(个人、公司等)的经数字签名的声明它声明某些其它实体的公钥(及其它信息)具有某一的特定值(参见证书)。当数据被数字化签名后校验签名即可检查数据的完整性和真实性。完整性的意思是数据没有被修改或损坏过真实性的意思是数据的确是来自声称创建了该数据和对它进行了签名的实体。keytool将密钥和证书储存在一个所谓的密钥仓库中。缺省的密钥仓库实现将密钥仓库实现为一个文件。它用口令来保护私钥。jarsigner工具利用密钥仓库中的信息来产生或校验Java存档(JAR)文件的数字签名(JAR文件将类文件、图象、声音和/或其它数字化数据打包在一个文件中)。jarsigner用JAR文件所附带的证书(包含于JAR文件的签名块文件中)来校验JAR文件的数字签名然后检查该证书的公钥是否“可信任”即是否包括在指定的密钥仓库中。请注意:keytool和jarsigner工具完全取代了JDK1.1中提供的javakey工具。这些新工具所提供的功能比javakey提供的多包括能够用口令来保护密钥仓库和私钥以及除了能够生成签名外还可以校验它们。新的密钥仓库体系结构取代了javakey所创建和管理的身份数据库。可以利用-identitydbkeytool命令将信息从身份数据库导入密钥仓库。密钥仓库项在密钥仓库中有两种不同类型的项:密钥项-每项存放极为敏感的加密密钥信息这种信息以一种受保护的格式储存以防止未授权的访问。通常储存在这类项中的密钥是机密密钥或是伴有用于认证相应公钥用的证书“链”的私钥。keytool和jarsigner工具只处理后一类型的项即私钥及其关联的证书链。可信任的证书项-每项包含一个属于另一团体的公钥证书。它之所以叫做“可信任的证书”是因为密钥仓库的拥有者相信证书中的公钥确实属于证书“主体”(拥有者)识别的身份。证书签发人通过对证书签名来保证这点。密钥仓库使用的别名对所有的密钥仓库项(密钥项和可信任的证书项)的访问都要通过唯一的别名来进行。别名不区分大小写即别名Hugo和hugo指的是同一密钥仓库项。当用-genkey命令来生成密钥对(公钥和私钥)或用-import命令来将证书或证书链加到可信任证书的清单中以增加一个实体到密钥仓库中必须指定了一个别名。后续keytool命令必须使用这一相同的别名来引用该实体。例如假设您用别名duke生成了新的公钥/私钥密钥对并将公钥用以下命令打包到自签名证书中(参见证书链):keytool-genkey-aliasduke-keypassdukekeypasswd这指定了一个初始口令“dukekeypasswd”接下来的命令都要使用该口令才能访问与别名duke相关联的私钥。以后如果您想更改duke的私钥口令可用类似下述的命令:keytool-keypasswd-aliasduke-keypassdukekeypasswd-newnewpass这将把口令从“dukekeypasswd”改为“newpass”。请注意:实际上除非是作为测试目的或是在安全的系统上否则不应在命令行或脚本中指定口令。如果没有在命令行上指定所要求的口令选项您将会得到要求输入口令的提示。当在口令提示符下键入口令时口令将被即时显示出来(键入什么就显示什么)因此要小心不要当着任何人的面键入口令。密钥仓库位置每个keytool命令都有一个-keystore选项用于指定keytool管理的密钥仓库的永久密钥仓库文件名称及其位置。缺省情况下密钥仓库储存在用户宿主目录(由系统属性的“user.home”决定)中名为.keystore的文件中。在Solaris系统中“user.home”缺省为用户的宿主目录。密钥仓库的创建当用-genkey、-import或-identitydb命令向某个尚不存在的密钥仓库添加数据时就创建了一个密钥仓库。具体地说如果在-keystore选项中指定了一个并不存在的密钥仓库则该密钥仓库将被创建。如果