欢迎来到天天文库
浏览记录
ID:46540971
大小:116.00 KB
页数:25页
时间:2019-11-25
《密钥和证书管理工具》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、keytool・密钥和证书管理工具陕西省数字证书认证中心keytool・密钥和证书管理工具keytool-密钥和证书管理工具管理山私钥和认证相关公钥的X.509证书链组成的密钥仓库(数据库)。述管理來口町信任实体的证书。结构keytool[命令]说明keytool是个密钥和证书管理工具。它使用户能够管理口己的公钥/私钥对及相关证书,川于(通过数字签名)自我认证(用户向别的川户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。证书是来自一个实体(个人、公司等)的经
2、数字签名的声明,它声明某些其它实体的公钥(及其它信息)具有某一的特定值(参见证书)。当数据被数字化签名后,校验签名即可检杳数据的完整性和真实性。完整性的意思是数据没有被修改或损坏过,真实性的意思是数据的确是来自声称创建了该数据和对它进行了签名的实体。keytool将密钥和证书储存在一个所谓的密钥仓库屮。缺省的密钥仓库实现将密钥仓库实现为一个文件。它用口令來保护私钥。jarsigner工具利用密钥仓库中的信息來产生或校验Java存档(JAR)文件的数字签名(JAR文件将类文件、图象、声音和/或其它数字化数据打
3、包在一个文件+)ojarsigner用JAR文件所附带的证书(包含于JAR文件的签名块文件中)来校验JAR文件的数字签名,然后检查该证书的公钥是否“可信任”,即是否包括在指定的密钥仓库中。请注意:keytool和jarsignerI:具完全取代了JDK1.1中提供的javakey「-具。这些新工具所提供的功能比javakey提供的多,包括能够用口令来保护密钥仓库和私钥,以及除了能够生成签名外还可以校验它们。新的密钥仓悴体系结构取代了javakey所创建和管理的身份数据库。可以利用・identitydbkey
4、tool命令将信息从身份数据库导入密钥仓库。密钥仓丿牟项在密钥仓丿牟中冇两种不同类型的项:密钥项-每项存放极为敏感的加密密钥信息,这种信息以-•种受保护的格式储存以防止未授权的访问。通常,储存在这类项中的密钥是机密密钥,或是伴有用丁•认证相应公钥用的证书“链”的私钥。keytool和jarsigner工具只处理后一类型的项,即私钥及其关联的证书链。可信任的证书项-每项包含一个属于另一团体的公钥证书。它Z所以叫做“可信任的证书”,是因为密钥仓库的拥有者和信证书中的公钥确实属于证卩“主体”(拥有者)识别的身份。
5、证书签发人通过对证书签名来保证这点。密钥仓库使用的别名対所有的密钥仓库项(密钥项和可信任的证书项)的访问都要通过唯一的别名來进行。别名不区分大小写,即别名Hugo和hugo指的是同一•密钥仓库项。当用・genkey命令来生成密钥对(公钥和私钥)或用・import命令来将证书或证书链加到可信任证书的淸单中,以增加一个实体到密钥仓库中,必须指定了一个别名。后续keytool命令必须使用这一相同的别名來引用该实体。例如,假设您用别名duke生成了新的公钥/私钥密钥对并将公钥用以下命令打包到自签名证书屮(参见证书链
6、):keytool-genkey-aliasduke・keypassdukekeypasswd这指定了一个初始口令“dukekeypasswd”,接卜•来的命令都要使用该口令才能访问与别名duke相关联的私钥。以后如果您想更改duke的私钥口令,可用类似下述的命令:keytool-keypasswd・aliasduke-keypassdukekeypasswd・newnewpass这将把口令从"dukekeypasswd”改为“newpass"。请注意:实际上,除非是作为测试日的或是在安全的系统上,否则不应
7、在命令行或脚本中指定口令。如果没有在命令行上指定所耍求的口令选项,您将会得到耍求输入口令的捉示。当在口令提示符下键入口令时,口令将被叩时显示出來(键入什么就显示什么),因此,要小心,不要当着任何人的而键入口令。密钥仓丿牟位置每个keytool命令都有一个-keystore选项,用于指定keytool管理的密钥仓库的永久密钥仓库文件名称及其位置。缺省情况下,密钥仓库储存在用八宿主目录(由系统属性的“user.home”决定)中名为.keystore的文件屮。在Solaris系统中“user.home”缺省为用
8、户的宿主目录。密钥仓库的创建当用-genkey>-import或-identitydb命令向某个尚不存在的密钥仓库添加数据时,就创建了一个密钥仓库。具体地说,如果在-keystore选项中指定了一个并不存在的密钥仓库,则该密钥仓库将被创建。如果不指定・keystore选项,则缺省'密钥仓库将是宿主目录中名为.keystore的文件。如果该文件并不存在,则它将被创建。密钥仓库实现java.security包中捉供的
此文档下载收益归作者所有