使用KeytoolGUI生成Keystore

合集下载

keytool -import -keystore 使用方法

keytool -import -keystore 使用方法

keytool -import -keystore 使用方法keytool是Java 提供的一个用于管理密钥库和证书的命令行工具。

其中,-import -keystore是keytool提供的一组参数,用于导入证书到密钥库中。

本文将深入探讨keytool -import -keystore的使用方法,以及常见的应用场景。

keytool 简介keytool是Java 开发工具包(JDK)中的一部分,主要用于生成密钥对、管理密钥库和证书。

通过keytool,开发人员可以创建和管理用于加密通信的证书和密钥。

使用方法keytool -import -keystore主要用于将证书导入到指定的密钥库中。

以下是基本的使用方法:bashkeytool -import-file certificate.cer -keystore keystore.jks -alias myalias其中各个参数的含义如下:•-import: 表示执行导入操作。

•-file certificate.cer: 指定要导入的证书文件,通常是以.cer或.crt结尾的证书文件。

•-keystore keystore.jks: 指定要导入证书的密钥库文件,可以是已存在的或者新创建的。

•-alias myalias: 指定要为导入的证书指定的别名,用于在密钥库中标识该证书。

示例1. 创建新的密钥库bashkeytool -genkeypair-keyalg RSA -alias mykey -keystore mykeystore.jks -storepass keystorepass word -keypass keypassword这将生成一个新的密钥库mykeystore.jks,并生成一对RSA 密钥对,别名为mykey。

2. 生成证书请求bashkeytool -certreq-alias mykey -keystore mykeystore.jks -file mycertreq.csr -storepass keystorep assword -keypass keypassword这将为先前生成的密钥对生成一个证书请求文件mycertreq.csr。

生成公钥私钥证书

生成公钥私钥证书

执行上面的命令,会要求你输入密码,就是上面生成keystore的输入的密码“123456”,
生成的cer文件内容如下:
第四步 – 把认凭证件导入到truststore文件
执行下面的命令
Java代码 收藏代码
keytool -import -alias certificatekey -file selfsignedcert.cer -keystore truststore.jks
生成一个含有一个私钥的keystore文件
验证新生成的keystor而文件
导出凭证文件
把认凭证件导入到truststore文件
验证新创建的truststore文件
第一步 - 生成一个含有一个私钥的keystore文件
Java的Keytool工具可以把密钥和认证保存到keystore文件。 如果在windows上,keytool命令被放到Java的bin目录下(例如C:\Program Files\Java\jdk1.6.0_12)。如果是mac上是放在/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands目录下。
执行下列命令来生成keystore
Java代码 收藏代码
keytool -genkeypair -alias certificatekey -keyalg RSA -validity 7 -keystore keystore.jks
一旦执行了命令,你会被要求输入密码,这里我们输入“123456”。输入密码以后,需要输入一些key的详细信息,如下图:
执行命令后,会要求输入密码,同样是keystore的密码“123456”。

keytool -list -v -keystore 用法 -回复

keytool -list -v -keystore 用法 -回复

keytool -list -v -keystore 用法-回复keytool是Java开发中的一个命令行工具,用于管理Java密钥库(Keystore)。

它提供了创建、导入、查看和删除密钥库中的密钥对的功能。

在本文中,我们将介绍keytool list v keystore命令的用法,并逐步回答相关问题。

第一步:理解keytoolKeytool是Java开发人员的一个重要工具,用于生成和管理SSL证书、私钥和密钥库。

通过运行keytool命令,您可以执行许多与密钥库相关的任务,包括生成新的密钥对、查看密钥库中的现有密钥对以及导入/导出密钥对。

第二步:keytool命令格式的解释在命令提示符下键入“keytool list v keystore”命令将显示密钥库的详细信息。

以下是命令的结构:keytool list [options] [-v/verbose] [-rfc] [-Joption]在这个命令中,`list`是一个子命令,`-v` or `verbose`选项用于以详细或可读的方式显示密钥库的信息。

`-rfc`选项用于以RFC格式打印证书或CRT文件。

`-Joption`选项用于将选项传递给Java虚拟机进程。

第三步:运行keytool list v keystore命令要运行“keytool list v keystore”命令,您需要在命令提示符下键入以下内容:keytool list -v -keystore [keystore文件路径]其中,`-v`选项用于显示详细信息,`-keystore`选项后面是密钥库文件的路径。

例如,要查看名为“myKeystore.jks”的密钥库的详细信息,请键入以下命令:keytool list -v -keystore myKeystore.jks第四步:回答关于keytool list v keystore的问题下面是关于keytool命令的常见问题的回答:1. Q: keytool list v keystore命令的作用是什么?A: 这个命令用于显示密钥库的详细信息,包括密钥对、证书和其他相关信息。

数字证书中keytool命令使用说明

数字证书中keytool命令使用说明

数字证书中keytool命令使⽤说明这个命令⼀般在JDK\jre\lib\security\⽬录下操作keytool常⽤命令-alias 产⽣别名-keystore 指定密钥库的名称(就像数据库⼀样的证书库,可以有很多个证书,cacerts这个⽂件是jre⾃带的,你也可以使⽤其它⽂件名字,如果没有这个⽂件名字,它会创建这样⼀个)-storepass 指定密钥库的密码-keypass 指定别名条⽬的密码-list 显⽰密钥库中的证书信息-v 显⽰密钥库中的证书详细信息-export 将别名指定的证书导出到⽂件-file 参数指定导出到⽂件的⽂件名-delete 删除密钥库中某条⽬-import 将已签名数字证书导⼊密钥库-keypasswd 修改密钥库中指定条⽬⼝令-dname 指定证书拥有者信息-keyalg 指定密钥的算法-validity 指定创建的证书有效期多少天-keysize 指定密钥长度使⽤说明:导⼊⼀个证书命令可以如下:keytool -import -keystore cacerts -storepass 666666 -keypass 888888 -alias alibabacert -file C:\alibabajava\cert\test_root.cer 其中-keystore cacerts中的cacerts是jre中默认的证书库名字,也可以使⽤其它名字-storepass 666666中的666666是这个证书库的密码-keypass 888888中的888888是这个特定证书的密码-alias alibabacert中的alibabacert是你导⼊证书的别名,在其它操作命令中就可以使⽤它-file C:\alibabajava\cert\test_root.cer中的⽂件路径就是要导⼊证书的路径浏览证书库⾥⾯的证书信息,可以使⽤如下命令:keytool -list -v -alias alibabacert -keystore cacerts -storepass 666666要删除证书库⾥⾯的某个证书,可以使⽤如下命令:keytool -delete -alias alibabacert -keystore cacerts -storepass 666666要导出证书库⾥⾯的某个证书,可以使⽤如下命令:keytool -export -keystore cacerts -storepass 666666 -alias alibabacert -file F:\alibabacert_root.cer要修改某个证书的密码(注意:有些数字认证没有私有密码,只有公匙,这种情况此命令⽆效)这个是交互式的,在输⼊命令后,会要求你输⼊密码keytool -keypasswd -alias alibabacert -keystore cacerts这个不是交互式的,输⼊命令后直接更改Keytool -keypasswd -alias alibabacert -keypass 888888 -new 123456 -storepass 666666 -keystore cacertsOwner: CN=BOCTestCA, O=BOCTest, C=CNIssuer: CN=BOCTestCA, O=BOCTest, C=CNSerial number: 31e60001Valid from: Tue Oct 28 16:54:26 CST 2008 until: Sat Oct 28 16:54:26 CST 2028Certificate fingerprints:MD5: F0:35:F9:69:31:AE:87:01:6C:2D:56:BD:02:0A:16:4ASHA1: 24:EF:84:14:4E:BD:0D:37:59:2D:70:28:79:10:88:EA:0A:06:13:20Signature algorithm name: SHA1withRSAVersion: 3Extensions:#1: ObjectId: 2.5.29.19 Criticality=trueBasicConstraints:[CA:truePathLen:2147483647]#2: ObjectId: 2.5.29.15 Criticality=falseKeyUsage [DigitalSignatureNon_repudiationKey_EnciphermentData_EnciphermentKey_AgreementKey_CertSignCrl_Sign]#3: ObjectId: 2.5.29.14 Criticality=falseSubjectKeyIdentifier [KeyIdentifier [0000: E3 81 66 00 7B C9 8F 3F 5A 77 E0 6D 5C EB 41 42 ..f....?Zw.m\.AB 0010: C7 48 5A 10 .HZ.]]#4: ObjectId: 1.3.6.1.5.5.7.1.1 Criticality=falseAuthorityInfoAccess [[accessMethod: 1.3.6.1.5.5.7.48.1]#5: ObjectId: 2.5.29.31 Criticality=falseCRLDistributionPoints [[DistributionPoint:[CN=crl1, OU=crl, O=BOCTest, C=CN]]]#6: ObjectId: 2.5.29.32 Criticality=falseCertificatePolicies [[CertificatePolicyId: [2.5.29.32.0][PolicyQualifierInfo: [qualifierID: 1.3.6.1.5.5.7.2.182.1190010: 2E 31 37 31 2E 31 30 36 2F 63 70 73 2E 68 74 6D .171.106/cps.htm ]] ]]#7: ObjectId: 2.16.840.1.113730.1.1 Criticality=false NetscapeCertType [SSL CAS/MIME CAObject Signing CA]#8: ObjectId: 2.5.29.35 Criticality=falseAuthorityKeyIdentifier [KeyIdentifier [0000: E3 81 66 00 7B C9 8F 3F 5A 77 E0 6D 5C EB 41 42 ..f....?Zw.m\.AB 0010: C7 48 5A 10 .HZ.]]Trust this certificate? [no]: yesCertificate was added to keystore[root@orange3c bin]#NOTE: (xp: %JAVA_HOME%/jre/lib/security/cacerts, linux: $JAVA_HOME/jre/lib/security/cacerts)验证是否已创建过同名的证书keytool -list -v -alias tomcat -keystore "%JAVA_HOME%/jre/lib/security/cacerts " -storepass changeit删除已创建的证书keytool -delete -alias tomcat -keystore "%%JAVA_HOME%/jre/lib/security/cacerts " -storepass changeitKeytool是⼀个Java数据证书的管理⼯具。

java keystore 创建证书

java keystore 创建证书

在Java中,你可以使用keytool命令行工具来创建和管理密钥库和证书。

下面是如何使用keytool创建一个自签名的证书的步骤:1.首先,打开命令提示符或终端。

2.使用以下命令创建一个新的密钥库(如果该文件已存在,keytool会抛出一个错误):bash复制代码keytool -genkey -alias mycert -keyalg RSA -keystore keystore.jks -keysize 2048在这个命令中:复制代码* `-genkey`表示生成密钥对。

* `-alias mycert`表示为这个证书设置一个别名"mycert"。

* `-keyalg RSA`表示使用RSA算法生成密钥对。

* `-keystore keystore.jks`表示将生成的密钥对存储在名为"keystore.jks"的文件中。

* `-keysize 2048`表示生成的密钥长度为2048位。

3. 在命令提示符或终端中,你将看到一些提示,要求你输入密钥库和密钥的密码,以及一些证书信息(如你的名字和组织)。

按照提示输入这些信息。

4. 完成后,你会看到一条消息,表示证书已经成功生成并存储在密钥库中。

5. 要查看密钥库中的证书,可以使用以下命令:bash复制代码keytool -list -alias mycert -keystore keystore.jks 这将列出与别名"mycert"关联的所有条目。

请注意,自签名证书只适用于测试和开发环境。

在生产环境中,你应该从受信任的证书颁发机构(CA)获取证书。

生成keystore签名查看签名信息的方法简介

生成keystore签名查看签名信息的方法简介

生成keystore签名查看签名信息的方法简介生成keystore签名查看签名信息的方法简介Android独有的安全机制,除了权限机制外,另外一个就是签名机制了。

签名机制主要用在以下两个主要场合起到其作用:升级App和权限检查。

升级App用户在升级一款已经安装过的App时,如果程序的修改来自于同一来源,则允许升级安装,否则会提示签名不一致无法安装的提示。

权限检查我曾在Android Permission权限机制的具体使用一文中提过,对于申请权限的protection level 为signature 或者signatureOrSystem 的,会检查权限申请者和权限声明者的证书是否是一致的。

至于签名机制的原理及其他作用,此不详述,本文主要介绍,签名文件key的'生成、用key去签名apk文件及查看签名的方法。

生成keystore创建keystore,需要用到keytool.exe (位于jdk_xxjrebin目录下),具体做法如下:复制代码代码如下:keytool -genkey -alias mykey -keyalg RSA -validity 40000 -keystore demo.keystore#说明:# -genkey 产生密钥# -alias mykey 别名mykey# -keyalg RSA 使用RSA算法对签名加密# -validity 40000 有效期限4000天# -keystore demo.keystore对apk进行签名使用产生的keystore对apk签名,使用到的是jarsigner.exe ,该工具位于jdk_xxbin目录下,命令如下:复制代码代码如下:jarsigner -verbose -keystore demo.keystore -signedjar test_signed.apk test.apk mykey# test_signed.apk是签名之后的文件# test.apk是需要签名的文件另外需要注意的是,如果你的jdk版本在1.7以上,你在对apk签名时,需要加上这个参数:复制代码代码如下:-digestalg SHA1 -sigalg MD5withRSA否则同样会出现:Failure 的错误。

AndroidStudio默认keystore以及自定义keystore使用

AndroidStudio默认keystore以及自定义keystore使用

AndroidStudio默认keystore以及⾃定义keystore使⽤我们使⽤Android Studio 运⾏或测试我们的app 它使⽤⼀个默认的debug.keystore进⾏签名。

这个默认签名(keystore)是不需要密码的,它的默认位置在$HOME/.android/debug.keystore,如果不存在Android studio会⾃动创建它。

例如我的debug.keystore就在C:\Users\Administrator\.android\debug.keystore。

再我们正式发布项⽬的时候是不能使⽤debug.keystore的。

有时候debug模式下我们需要使⽤⾃⼰的keystore来进⾏签名,⽐如在使⽤第三⽅SDK时候需要提交我们应⽤包名以及签名来获取APPKEY,那么测试环境下我不希望每次都需要⼿动签名导出APK来进⾏测试,这⾥⾯我们可以使⽤【storeFile file】来指定我们⾃⼰的keystore AS编译后就使⽤我们指定的keystore进⾏签名,避免每次⼿动签名打包⽅便我们调试。

官⽅地址: https:///studio/publish/app-signing.html下⾯我们来介绍如何使⽤Android Studio创建⼀个新的keystore,并发布我们的apk1 创建keystore1.1 Build --->> Generate Signed APK1.2 Create New1.3 填写相关信息,⾥⾯内容什么含义⾃⾏Google1.4 输⼊密码1.5 选择发布app的路径默认即可选择release或者debug⽅式发布OK,发布成功,可以到⽂件夹下⾯找到发布的apk2 使⽤⾃定义keystore下⾯我们来配置如何在debug的时候使⽤我们⾃定义的keystore。

2.1 还是要新建⼀个keystore,就⽤上⾯的也可以。

2.2 在项⽬上右键 Open Module Settings.然后看图就可以了,选择路径,把密码填上,该填的都填好。

.keystore文件用法

.keystore文件用法

.keystore文件用法Keystore文件是Java开发中常用的一个文件类型,用于存储和管理密钥。

它通常用于保护应用程序的加密通信和身份验证。

在Android开发中,keystore 文件尤其重要,因为它是生成数字签名证书的基础。

在本篇文章中,我们将介绍keystore文件的用法。

一、创建keystore文件要创建keystore文件,您可以使用JavaKeytool工具。

以下是一些基本的命令:1.打开命令行终端或控制台。

2.导航到您的Java安装目录下的"bin"文件夹。

3.输入以下命令来创建一个新的keystore文件:```arduinokeytool-genkey-v-keystorekeystore.jks-aliasalias_name-keyalgRSA-keysize2048-validity10000```这将生成一个名为"keystore.jks"的keystore文件,其中"alias_name"是您为该密钥库设置的别名。

您可以根据需要更改这些参数。

二、访问keystore文件中的密钥要访问keystore文件中的密钥,您可以使用JavaKeytool工具的"list"命令。

以下是访问密钥的基本命令:```arduinokeytool-list-v-keystorekeystore.jks```执行此命令后,您将看到一个包含密钥列表的列表。

您可以通过输入密钥的别名来查看密钥的详细信息。

三、导出密钥当您需要将密钥用于外部应用程序(如Android应用程序的数字签名)时,您需要将密钥导出为PEM或PKCS#12格式。

以下是导出密钥的基本命令:```arduinokeytool-export-aliasalias_name-keystorekeystore.jks-filemy_public_key.pem```这将导出名为"my_public_key.pem"的文件,其中包含您的公钥。

如何使用Keytool工具生成证书Keystore和证书签名请求文件-

如何使用Keytool工具生成证书Keystore和证书签名请求文件-

如何使用Keytool工具生成证书Keystore和证书签名请求文件?您的组织单位名称是什么?请输入单位名称,如: Beijing eTsec Technology Co.,Ltd.您的组织名称是什么?请输入部门名称,如: IT Dept您所在的城市或区域名称是什么?输入城市名称,如:Beijing您所在的州或省份名称是什么?输入省份名称,如:Beijing该单位的两字母国家代码是什么?中国请输入CNCN=.cn, OU= Beijing eTsec, O=IT, L= Beijing, ST= Beijing, C=CN 正确吗?输入 Y输入的主密码(如果和 keystore 密码相同,按回车):按回车确保记住您所输入的密码,注意生成CSR时,在第2部分中会使用它。

二、生成证书签名请求(CSR)1. keytool -certreq -keyalg RSA -alias -file certreq.csr -keystore重要:! 创建您的CSR和安装您的证书,您使用它来创建自签名的密钥存储库时,请使用相同的别名。

例如:C:\>keytool -certreq -keyalg RSA -alias myalias -file certreq.txt -keystore c:\.mykeystore输入keystore密码:2. 打开生成CSR文件certreq.txt 。

这个CSR文件显示如下:-----BEGIN NEW CERTIFICATE REQUEST----- MIIBujCCASMCAQAwejELMAkGA1UEBhMCQ0ExEDAOBgNVBAgTB09udGFyaW8xDzANBgNVB AcTBk90dGF3YTEQMA4GA1UEChMHRW50cnVzdDETMBEGA1UECxMKRW50cnVzdCBDUzEhMB8GA1UEA xMYd3d35w6T+q/f+wIDAQABoAAwDQYJKoZIhvcNAQEEBQADgYEAF+0hqAqXumz/vGrzGVhKHlnxd 7HW3ezSGIbIUcOy1YdDc/1ZCqRpu3utYIZ6welK++l+QjlbL6p5RJJETkkLKXjb/WVFajNuPl7Yo b9pbwA7JBrCCKbFj+kzDNbGhCR1RgFA9vQj5vob41Vj+k+TQchliuTLL9rFXNDHrtgTMtA=-----END NEW CERTIFICATE REQUEST-----文章来源:/service/guide/guide-ssl-141.html文章来源于:/article-26459-1.html。

命令行生成Keystore

命令行生成Keystore

目录一概述 (3)二使用IBM密钥管理器生成KEYSTROE (3)1打开ikeyman (3)2创建keystore (3)3生成申请书 (4)4使用申请书在JIT CA中签发站点证书 (5)5导入签发完成的站点证书 (5)三使用KEYTOOL命令产生KEYSTORE (7)1生成server端证书 (7)2生成KeySTORE,使用如下语句: (7)3生成服务器证书申请书 (7)4向keystore中导入根证书及服务器证书 (7)5把CA签名后的server端证书导入keystore (8)附录:使用申请书在JIT CA中签发站点证书 (8)1启动注册子系统业务处理控制台 (8)2在注册子系统证书制作控制台制作站点证书 (9)3使用IE下载服务器证书 (10)一概述详细的介绍使用工具和命令生成keystore,并产生证书申请,签发证书,倒入证书和根证的过程。

产生的keystore可通用在支持keystore的系统中。

二使用IBM密钥管理器生成KEYSTROE1打开ikeyman可以通过运行.\WebSphere\AppServer\bin\ikeyman.bat启动ikeyman2创建keystore●选择密钥数据库文件点击新建●密钥数据库类型选择jks●文件名称、位置任选●输入keystore密码●删除所有默认的签署人证书3生成申请书●选择个人证书请求●点击新建●输入证书编号(站点证书的别名)●选择密钥大小●输入组织(ou)组织单位(o)市/县/区(L) 省/直辖市(S) ●邮编不需要填写●国家选择CN●证书请求文件可放在任意位置4使用申请书在JIT CA中签发站点证书5导入签发完成的站点证书在生成的站点证书编码前后加入头尾选择签署人证书,点击添加导入根证书选择个人证书点击接受导入站点证书导入后点击查看/编辑确认证书是否正确关闭ikeyman即可三使用KEYTOOL命令产生KEYSTORE1生成server端证书keytool工具在%JDK_HOME%\bin下。

keystore 使用方法

keystore 使用方法

keystore 使用方法Keystore是一种用于存储加密密钥和证书的安全文件,通常用于在计算机系统中保护私钥和证书。

在许多情况下,Keystore被用来存储用于加密和解密数据的私钥,以及用于验证身份的证书。

Keystore通常以文件的形式存在,可以通过密码来访问和管理其中的密钥和证书。

Keystore可以包含多个条目,每个条目包含一个私钥和相关的证书链。

这些私钥和证书可以用于SSL/TLS通信、数字签名、加密等安全功能。

在Java开发中,Keystore是一个重要的概念。

Java提供了KeyStore类来管理Keystore文件。

通过KeyStore类,可以加载、存储、检索、删除密钥和证书。

Java还提供了一些工具,如keytool,可以用来生成Keystore文件、导入证书和私钥等操作。

使用Keystore的一般步骤如下:1. 生成Keystore文件:可以使用keytool工具生成一个Keystore文件,并设置密码。

2. 导入证书和私钥:可以使用keytool工具或其他工具,将证书和私钥导入到Keystore文件中。

3. 加载Keystore文件:在Java程序中,使用KeyStore类加载Keystore文件,并提供密码来解锁Keystore。

4. 检索密钥和证书:通过KeyStore类的方法,可以检索Keystore中的私钥和证书。

5. 使用密钥和证书:在程序中使用检索到的私钥和证书来进行加密、解密、签名等安全操作。

6. 保护Keystore文件:确保Keystore文件的安全性,不要泄露密码和私钥。

总的来说,Keystore是一个用于存储私钥和证书的安全文件,可以在Java程序中用来管理和使用加密密钥和证书。

通过了解Keystore的使用方法,可以更好地保护和管理程序中的安全信息。

Keytool工具使用

Keytool工具使用

Keytool工具使用一、生成证书按win键+R,弹出运行窗口,输入cmd回车,打开命令行窗户,输入如下命令:keytool -genkeypair -alias "test1" -keyalg "RSA" -keystore "test.keystore"功能:创建一个别名为test1的证书条目,该条目存放在名为test.keystore的密钥库中,若test.keystore密钥库不存在则创建。

参数说明:-genkeypair:生成一对非对称密钥;-alias:指定密钥对的别名,该别名是公开的;-keyalg:指定加密算法,本例中的采用通用的RAS加密算法;-keystore:密钥库的路径及名称,不指定的话,默认在操作系统的用户目录下(C:\Users\thinkpad)生成一个".keystore"的文件注意:1.在命令行中输入“keytool –genkey”将自动使用默认的算法生成公钥和私钥,这里并未指定使用何算法,将使用默认的DSA算法。

2.由于“.keystore”中包含了私钥,所以是一个需要保密的文件,因此上述操作提示为该文件设置一个密码:“输入密钥库口令”,这里第一次使用该密钥库,因此输入的密码“123456”将成为该默认的密钥库的密码(实际使用时应该设置复杂的口令)。

以后再使用这个密钥库时必须提供这个口令才可以使用。

3.以上操作最后还提示“输入<test1>的主密码”,这里“test1”是默认的别名,使用该名字可以在密钥库“.keystore”中找到对应的公钥、私钥和证书。

此处输入的密码是对应于该别名的私钥的密码,密钥库中每个别名可以使用不同的密码加以保护。

4.密钥库中可以存放多个条目(公钥/私钥对和证书),它们在密钥库中以别名(alias)区分。

在使用keytool工具时没有指定别名,因此系统使用了默认的别名mykey。

使用keytool生成证书

使用keytool生成证书

使⽤keytool⽣成证书keytool 简介keytool 是java ⽤于管理密钥和证书的⼯具,其功能包括:创建并管理密钥创建并管理证书作为CA 为证书授权导⼊导出证书主要格式keytool 采⽤ keystore ⽂件来存储密钥及证书,其中可包括私钥、信任证书;keystore ⽂件主要使⽤ JKS格式(也可⽀持其他格式),带密钥存储;其中私钥的存储也有独⽴的密码;⼀、⽣成私钥和证书keytool -genkeypair -alias serverkey -keystore server.keystore按提⽰输⼊keystore 存储密码、私钥密码、个⼈信息,之后会⽣成 server.keystore⽂件若不想输⼊参数,可提供参数:keytool -genkeypair -alias serverkey -keypass 111111 -storepass 111111 \-dname "C=CN,ST=GD,L=SZ,O=vihoo,OU=dev,CN=" \-keyalg RSA -keysize 2048 -validity 3650 -keystore server.keystore参数说明storepass keystore ⽂件存储密码keypass 私钥加解密密码alias 实体别名(包括证书私钥)dname 证书个⼈信息keyalt 采⽤公钥算法,默认是DSAkeysize 密钥长度(DSA算法对应的默认算法是sha1withDSA,不⽀持2048长度,此时需指定RSA) validity 有效期keystore 指定keystore⽂件⼆、查看keystore详情查看详情命令keytool -list -keystore -storepass 111111 server.keystore输出结果Keystore type: JKSKeystore provider: SUNYour keystore contains 1 entryserverkey, Sep 25, 2016, PrivateKeyEntry,Certificate fingerprint (SHA1): 65:75:C9:08:A0:83:21:A1:D7:8D:DA:CD:3D:FB:C2:E0:50:96:29:62加上-v选项可查看更详细信息Keystore type: JKSKeystore provider: SUNYour keystore contains 1 entryAlias name: serverkeyCreation date: Jul 22, 2017Entry type: PrivateKeyEntryCertificate chain length: 1Certificate[1]:Owner: C=CN, ST=GD, L=SZ, O=vihoo, OU=dev, CN=Issuer: C=CN, ST=GD, L=SZ, O=vihoo, OU=dev, CN=Serial number: 5c5eb42Valid from: Sat Jul 2210:45:45 CST 2017until: Tue Jul 2010:45:45 CST 2027Certificate fingerprints:MD5: 27:ED:70:EF:4C:E3:7F:ED:6A:83:67:32:6D:10:24:38SHA1: 79:08:97:6E:62:EE:0F:E6:81:56:66:43:9C:9D:A4:11:EF:CC:28:0CSHA256: 3B:AC:56:8E:60:C2:C8:07:61:19:C7:4A:D3:AF:1F:60:77:24:94:7C:87:6E:C8:E7:17:14:E4:7A:34:0A:CD:8FSignature algorithm name: SHA256withRSAVersion: 3Extensions:#1: ObjectId: 2.5.29.14 Criticality=falseSubjectKeyIdentifier [KeyIdentifier [0000: B4 10 A9 26 5D 6C 4C 46 B4 69 ED 31 2B 20 D1 F4 ...&]lLF.i.1+ ..0010: 58 3C 8F 94 X<..]]三、证书导⼊导出导出证书keytool -exportcert -keystore server.keystore -file server.cer -alias serverkey -storepass 111111参数说明exportcert 表⽰导出证书alias 指⽰别名file 指⽰导出⽂件storepass 指⽰keystore密钥此时导出的证书为DER编码格式,使⽤openssl 可以输出openssl x509 -in server.cer -inform der -noout -text加上 -rfc选项,可输出PEM编码格式的证书keytool -exportcert -keystore server.keystore -rfc -file server.cer -alias serverkey -storepass 111111输出格式如:-----BEGIN CERTIFICATE-----MIIDUTCCAjmgAwIBAgIEBcXrQjANBgkqhkiG9w0BAQsFADBZMRIwEAYDVQQDEwl2...-----END CERTIFICATE-----导⼊证书⼀般为导⼊信任证书(SSL客户端使⽤)keytool -importcert -keystore client_trust.keystore -file server.cer -alias client_trust_server -storepass 111111 -noprompt 参数说明importcert 表⽰导⼊信任证书file 指⽰导⼊证书,⽀持pem/der格式keystore 指⽰⽬标keystore⽂件storepass 指⽰新的keystore密钥alias 指⽰trust证书在keystore中的别名noprompt 指⽰不弹出提⽰导⼊后的证书为 trustedCertEntry 实体类型,⽽私钥证书为 PrivateKeyEntry四、查看证书打印证书keytool -printcert -file server.cer输出Owner: CN=ZZ, OU=DEV, O=, L=GZ, ST=GD, C=CNIssuer: CN=ZZ, OU=DEV, O=, L=GZ, ST=GD, C=CNSerial number: 797f3140Valid from: Sun Sep 2516:43:55 CST 2016until: Sat Dec 2416:43:55 CST 2016Certificate fingerprints:MD5: FB:7D:29:4C:A9:F3:07:0E:CC:74:0D:9B:D4:D6:4D:91SHA1: 65:75:C9:08:A0:83:21:A1:D7:8D:DA:CD:3D:FB:C2:E0:50:96:29:62SHA256: E9:8B:A5:43:5F:40:FA:C5:64:3B:0A:11:1D:BE:D1:07:3C:A1:E2:50:88:71:A7:5C:EC:43:22:98:1B:AA:B6:EB Signature algorithm name: SHA1withDSAVersion: 3Extensions:#1: ObjectId: 2.5.29.14 Criticality=falseSubjectKeyIdentifier [KeyIdentifier [0000: 0E C3 62 D3 75 3A 3C B7 D9 C4 BD 8E 63 E7 6C EC ..b.u:<.....c.l.0010: AF 8A 2972 ..)r]]五、转换格式jks格式转 pkcs12keytool -importkeystore -srckeystore server.keystore -destkeystore server.p12 -srcalias serverkey -destalias serverkey \-srcstoretype jks -deststoretype pkcs12 -srcstorepass 111111 -deststorepass 111111 -noprompt参数说明importkeystore 指⽰导⼊导出keystore⽂件,可⽤于同类型或不同类型的导⼊导出srckeystore 指⽰源keystore⽂件srcalias 指⽰源实体别名srcstoretype 指⽰源store类型(jks/pkcs12..)srcstorepass 指⽰源store密码noprompt 不弹出提⽰pkcs12 转jks格式与此同理六、场景⽰例1. 制作Java SSL 双向证书storepass=111111keypass=111111server_dname="C=CN,ST=GD,L=SZ,O=vihoo,OU=dev,CN="client_dname="C=CN,ST=GD,L=SZ,O=vihoo,OU=dev,CN="echo"generate server keystore"keytool -genkeypair -alias serverkey -keypass $keypass -storepass $storepass \-dname $server_dname \-keyalg RSA -keysize 2048 -validity 3650 -keystore server.keystoreecho"generate client keystore"keytool -genkeypair -alias clientkey -keypass $keypass -storepass $storepass \-dname $client_dname \-keyalg RSA -keysize 2048 -validity 3650 -keystore client.keystoreecho"export server certificate"keytool -exportcert -keystore server.keystore -file server.cer -alias serverkey -storepass $storepassecho"export client certificate"keytool -exportcert -keystore client.keystore -file client.cer -alias clientkey -storepass $storepassecho"add server cert to client trust keystore"keytool -importcert -keystore client_trust.keystore -file server.cer -alias client_trust_server \-storepass $storepass -nopromptecho"add client cert to server trust keystore"keytool -importcert -keystore server_trust.keystore -file client.cer -alias server_trust_client \-storepass $storepass -noprompt2. Java 证书与 nginx 证书互转Java通常使⽤JKS作为证书存储格式,⽽Nginx往往采⽤PEM证书格式,如何实现互转?Nginx 证书转 JKSA pem证书和私钥合成p12openssl pkcs12 -export -in server.crt -inkey server.key -passin pass:111111 -password pass:111111 \-name server -out server.p12注意定义-name 选项,这将作为keystore识别实体的参数B p12 证书转jks 证书keytool -importkeystore -srckeystore server.p12 -destkeystore server.keystore \-srcstoretype pkcs12 -deststoretype jks -srcalias server -destalias server \-deststorepass 111111 -srcstorepass 111111如果p12 ⽂件中未指定实体名称,使⽤keytool转换时则不需提供srcalias/destalias参数,⽽输出的keystore实体名称默认为1 JKS 证书转 Nginx证书A jks 证书转p12keytool -importkeystore -srckeystore server.keystore -destkeystore server.p12 \-srcstoretype jks -deststoretype pkcs12 -srcalias server -destalias server \-deststorepass 111111 -srcstorepass 111111B p12 证书提取pem证书和私钥openssl pkcs12 -in server.p12 -clcerts -nokeys -password pass:111111 -out server.crtopenssl pkcs12 -in server.p12 -nocerts -password pass:111111 -passout pass:111111 -out server.key 其中得到的私钥⽂件为PKCS#8 加密格式,证书和密钥均为PEM⽂件编码。

.keystore文件用法 -回复

.keystore文件用法 -回复

.keystore文件用法-回复使用keystore文件的一般步骤如下:第一步:了解.keystore文件的基本概念.keystore文件是Java开发中用于存储加密密钥和证书的文件。

它是一种由Java Keytool生成的二进制文件,包含了由数字证书授权中心(CA)签名的密钥和证书。

它通常用于在Java应用程序中实现身份验证、加密和数字签名。

第二步:生成.keystore文件在使用.keystore文件之前,我们需要首先生成它。

可以通过Java Keytool 工具来完成这个过程。

下面是生成.keystore文件的步骤:1. 打开终端或命令提示符,并导航到Java开发工具目录。

2. 运行以下命令以生成.keystore文件:keytool -genkey -alias myalias -keyalg RSA -keystore mykeystore.keystore这里,"myalias"是密钥的别名,"mykeystore.keystore"是要生成的.keystore文件的名称。

3. 按照提示输入密钥库口令,以及有关组织和个人的信息。

4. 生成成功后,.keystore文件将保存在当前目录下。

第三步:使用.keystore文件一旦生成了.keystore文件,我们可以将它用于各种Java开发相关的任务。

1. 在Java项目中使用.keystore文件:- 在项目的配置文件(如pom.xml文件或build.gradle文件)中配置.keystore文件的路径和密码。

- 在代码中使用.keystore文件中的证书和密钥进行身份验证、加密和数字签名操作。

2. 使用.keystore文件签署Android应用:- 打开Android Studio,并在“Project”视图中选择你的Android 项目。

- 选择“Build”菜单,然后选择“Generate Signed Bundle / APK”选项。

Android签名之生成keystore

Android签名之生成keystore

第一种生成keystore的方式是使用Eclipse:1,打开Eclipse->选择你要签名的项目->右击->android tools->Export signed Application package...2,跳出窗口3,project checks 如果核对项目名没有问题的话点击 Next然后跳出keystore selection 如果是已经存在keystore的文件就选择然后next 输入keystore的密码进行签名。

如果没有的话选择 create new keystore 然后选择 keystore 保存的位置,设置keystore的密码,点击Next。

注意:Location里面是要创建的keystore的存放路径,比如:D:\Android\Ec_workspace\CiResponseParser\ci_parser.keystore4.填写keystore的基本信息,如,别名,密码,有效期,姓名,组织,组织名称,所在城市,所在省份,国家等,点击Next注意:Alias选项和Password选项比较有用,需要记下,以后在给apk签名的时候会用到。

5.选择被签名后的APK保存位置。

点击finish。

注意:路径比如:D:\Android\Ec_workspace\CiResponseParser\bin\CiResponseParser_Signed .apk6.就可以在你保存的位置中找到相应的被签名后的APK文件。

To create a signed and aligned .apk in Eclipse:1.Select the project in the Package Explorer and select File > Export.2.Open the Android folder, select Export Android Application, andclick Next.The Export Android Application wizard now starts, which will guide you through the process of signing your application, includingsteps for selecting the private key with which to sign the .apk (or creating a new keystore and private key).plete the Export Wizard and your application will be compiled,signed, aligned, and ready for distribution.第二种生成keystore的方式是使用命令行:D:\Android\signDir>keytool -genkey -v -keystore cidanasignb-r.keystore -alias cidanasignB -keyalg RSA -validity 300输入keystore密码:(159753)再次输入新密码:您的名字与姓氏是什么?[Unknown]:feng您的组织单位名称是什么?[Unknown]:您的组织名称是什么?[Unknown]:cixi您所在的城市或区域名称是什么?[Unknown]:xian您所在的州或省份名称是什么?[Unknown]:shanxi该单位的两字母国家代码是什么[Unknown]:CNCN=feng, OU=, O=cixi, L=xian, ST=shanxi, C=CN 正确吗?[否]:Y正在为以下对象生成1,024 位RSA密钥对和自签名证书(SHA1withRSA)(有效期为300天):CN=feng, OU=, O=cixi, L=xian, ST=shanxi, C=CN 输入<cidanasignB>的主密码(如果和keystore 密码相同,按回车):(回车了) [正在存储cidanasignb-r.keystore]D:\Android\signDir>。

利用java代码生成keyStore

利用java代码生成keyStore

利⽤java代码⽣成keyStore在前⾯的章节中介绍了如何利⽤KeyTool⼯具⽣成keyStore:。

但是很多时候,在javaWeb项⽬中,⽐如给每个⽤户加上独特的数字签名,那么我们需要在创建⽤户的时候,给其⽣成独⼀⽆⼆的keystore。

我现在主要的功能是,给每个⽤户下载pdf的时候加上数字签名。

下⾯说⼀下⽣成keystore的主要思想:借助keyTool中的⽣成keyStore的⽅法。

主要利⽤sun.security.tools.keytool包⽂件来处理。

import java.io.FileOutputStream;import java.io.IOException;import java.security.GeneralSecurityException;import java.security.KeyStore;import java.security.KeyStoreException;import java.security.NoSuchAlgorithmException;import java.security.PrivateKey;import java.security.cert.CertificateException;import java.security.cert.X509Certificate;import java.util.Date;import sun.security.tools.keytool.CertAndKeyGen;import sun.security.x509.X500Name;/*** 主要⽤于创建keyStore⽂件,保存起来** @author Xia**/public class KeyStoreCreate2 {public static String filePath = "src/main/resources/pdf0090createEncrypt/new_KeyStore.keystore";private static final int keysize = 1024;private static final String commonName = "";private static final String organizationalUnit = "IT";private static final String organization = "test";private static final String city = "beijing";private static final String state = "beijing";private static final String country = "beijing";private static final long validity = 1096; // 3 yearsprivate static final String alias = "tomcat";private static final char[] keyPassword = "123456".toCharArray();public static void main(String[] args) throws GeneralSecurityException {try {KeyStore ks = KeyStore.getInstance("pkcs12");// char[] password = "123456".toCharArray();ks.load(null, null);CertAndKeyGen keypair = new CertAndKeyGen("RSA", "SHA1WithRSA", null);X500Name x500Name = new X500Name(commonName, organizationalUnit, organization, city, state, country);keypair.generate(keysize);PrivateKey privateKey = keypair.getPrivateKey();X509Certificate[] chain = new X509Certificate[1];chain[0] = keypair.getSelfCertificate(x500Name, new Date(), (long)validity*24*60*60);// store away the key storeFileOutputStream fos = new FileOutputStream(filePath);ks.setKeyEntry(alias, privateKey, keyPassword, chain);ks.store(fos, keyPassword);fos.close();System.out.println("create Success");} catch (KeyStoreException e) {e.printStackTrace();} catch (NoSuchAlgorithmException e) {e.printStackTrace();} catch (CertificateException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}。

JAVA调用keytool生成keystore和cer证书

JAVA调用keytool生成keystore和cer证书

JAVA调⽤keytool⽣成keystore和cer证书keytool是⼀个Java数据证书的管理⼯具,keytool将密钥(key)和证书(certificates)存在⼀个称为keystore的⽂件中在keystore⾥,包含两种数据:密钥实体(Key entity)——密钥(secret key)⼜或者是私钥和配对公钥(采⽤⾮对称加密)可信任的证书实体(trusted certificate entries)——只包含公钥ailas(别名)每个keystore都关联这⼀个独⼀⽆⼆的alias,这个alias通常不区分⼤⼩写下⾯给出⼀个java 调⽤ keytool ⽣成keystore 和 cer 证书的例⼦测试:public class ExportCertFormKeystore {public void execCommand(String[] arstringCommand) {for (int i = 0; i < arstringCommand.length; i++) {System.out.print(arstringCommand[i] + " ");}try {Runtime.getRuntime().exec(arstringCommand);} catch (Exception e) {System.out.println(e.getMessage());}}public void execCommand(String arstringCommand) {try {Runtime.getRuntime().exec(arstringCommand);} catch (Exception e) {System.out.println(e.getMessage());}}/*** ⽣成密钥*/public void genkey() {String[] arstringCommand = new String[] {"cmd ", "/k","start", // cmd Shell命令"keytool","-genkey", // -genkey表⽰⽣成密钥"-validity", // -validity指定证书有效期(单位:天),这⾥是36000天"36500","-keysize",// 指定密钥长度"1024","-alias", // -alias指定别名,这⾥是ss"ss","-keyalg", // -keyalg 指定密钥的算法 (如 RSA DSA(如果不指定默认采⽤DSA))"RSA","-keystore", // -keystore指定存储位置,这⾥是d:/demo.keystore"d:/demo.keystore","-dname",// CN=(名字与姓⽒), OU=(组织单位名称), O=(组织名称), L=(城市或区域名称), // ST=(州或省份名称), C=(单位的两字母国家代码)""CN=(SS), OU=(SS), O=(SS), L=(BJ), ST=(BJ), C=(CN)","-storepass", // 指定密钥库的密码(获取keystore信息所需的密码)"123456","-keypass",// 指定别名条⽬的密码(私钥的密码)"123456","-v"// -v 显⽰密钥库中的证书详细信息};execCommand(arstringCommand);}/*** 导出证书⽂件*/public void export() {String[] arstringCommand = new String[] {"cmd ", "/k","start", // cmd Shell命令"keytool","-export", // - export指定为导出操作"-keystore", // -keystore指定keystore⽂件,这⾥是d:/demo.keystore "d:/demo.keystore","-alias", // -alias指定别名,这⾥是ss"ss","-file",//-file指向导出路径"d:/demo.cer","-storepass",// 指定密钥库的密码"123456"};execCommand(arstringCommand);}}View CodeJUnit测试⽤例:import org.junit.Test;public class ExportCertFormKeystoreTest {@Testpublic void genkeyTest() {//⽣成密钥测试new ExportCertFormKeystore().genkey();}@Testpublic void exportTest() {//导出证书⽂件测试new ExportCertFormKeystore().export();}}View Code运⾏测试⽤例之后,在D盘的根⽬录下⾯会⽣成两个⽂件:demo.keystoredemo.cer。

JavaKeyStore用命令生成keystore文件自己生成证书,简介

JavaKeyStore用命令生成keystore文件自己生成证书,简介

JavaKeyStore⽤命令⽣成keystore⽂件⾃⼰⽣成证书,简介1.⽣成keyStore⽂件在命令⾏下执⾏以下命令:Shell代码收藏代码keytool -genkey -validity 36000 -alias -keyalg RSA -keystore d:\zlex.keystore其中-genkey表⽰⽣成密钥-validity指定证书有效期,这⾥是36000天-alias指定别名,这⾥是-keyalg指定算法,这⾥是RSA-keystore指定存储位置,这⾥是d:\zlex.keystore在这⾥我使⽤的密码为 123456控制台输出:Console代码收藏代码输⼊keystore密码:再次输⼊新密码:您的名字与姓⽒是什么?[Unknown]: 您的组织单位名称是什么?[Unknown]: zlex您的组织名称是什么?[Unknown]: zlex您所在的城市或区域名称是什么?[Unknown]: BJ您所在的州或省份名称是什么?[Unknown]: BJ该单位的两字母国家代码是什么[Unknown]: CNCN=, OU=zlex, O=zlex, L=BJ, ST=BJ, C=CN 正确吗?[否]: Y输⼊<tomcat>的主密码(如果和 keystore 密码相同,按回车):再次输⼊新密码:这时,在D盘下会⽣成⼀个zlex.keystore的⽂件。

2.⽣成⾃签名证书光有keyStore⽂件是不够的,还需要证书⽂件,证书才是直接提供给外界使⽤的公钥凭证。

导出证书:Shell代码收藏代码keytool -export -keystore d:\zlex.keystore -alias -file d:\zlex.cer -rfc其中-export指定为导出操作-keystore指定keystore⽂件-alias指定导出keystore⽂件中的别名-file指向导出路径-rfc以⽂本格式输出,也就是以BASE64编码输出这⾥的密码是 123456控制台输出:Console代码收藏代码输⼊keystore密码:保存在⽂件中的认证 <d:\zlex.cer>。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录
1.启动KeytoolGUI工具 (3)
2.信任列表keystore的制作 (3)
3.服务器证书keystore的制作 (5)
3.1.产生keystore,导入信任根证书 (5)
3.2.产生密钥对,生成请求 (6)
3.2.1.产生密钥对 (6)
3.2.2.导入CA签发的服务器cer证书 (8)
3.3.从pfx文件导入 (9)
4.注意事项 (11)
KeytoolGUI工具是一个Java图形界面的密钥库管理工具,支持JKS、PKCS12(pfx文件)等密钥库格式。

利用该工具可以非常方便的生成信任列表keystore、服务器证书keystore,不必再使用繁琐且易出错的keytool命令行。

1.启动KeytoolGUI工具
启动该工具需要有jre环境,最好是1.4版本。

设置好jre/bin路径,达到在命令行中键入java命令可以出现提示的效果后,运行run.cmd即可启动。

启动后界面如下:
2.信任列表keystore的制作
信任列表keystore的生成就是将根证书导入keystore中。

选择File菜单中的New Keystore,新建一个jks格式的keystore,如图:
选择JKS格式,点击OK。

出现如下界面:(和第一张图相比,工具栏图标已经可见)
点击工具栏的导入信任根证书图标(如下图),或按Ctrl+T。

出现如下界面,此时即可选择根证书文件执行导入。

导入过程中会提示该证书无法验证信任路径,并将证书信息显示出来,询问是否信任等对话框,一直确定后,给根证书任意取一个别名,即完成了根证书的导入工作。

完成导入工作后,即可将该keystore保存,点击保存按钮后,出现设置Keystore密码的界面,如下图:
输入至少六位的密码,选择保存路径后,信任证书列表Keystore即成功生成。

一般来说,在根证书中只需导入顶级根证即可。

客户端浏览器中只要安装了相应的二级根证,二级根证所颁发的证书即可获得信任,出现在证书选择框中。

3.服务器证书keystore的制作
3.1. 产生keystore,导入信任根证书
首先也是需要新建一个JKS格式的keystore文件,和产生信任列表的Keystore 步骤相同。

然后将根证书、颁发服务器证书的二级根证书导入为信任证书,和产生信任列表Keystore步骤相同。

生成服务器证书keystore有两种方式,一种是产生密钥对,生成请求到CA 签发后再导入到keystore中,一种是将pfx证书直接导入。

下边是两种方式的介绍:
3.2. 产生密钥对,生成请求
3.2.1.产生密钥对
点击工具栏产生密钥对的图标,如图:
点击后出现选择密钥对算法的选择框,如下图:默认是DSA算法,注意一定要选择RSA算法!!!
点击OK按钮后,即产生密钥对,之后会要求输入证书的DN信息,如图:
需要注意的是,如果该应用是用域名来访问,CN项需要填写域名,如果是用IP来访问,CN项需要填写IP,否则在访问时会出现警告信息。

填写完毕后,为该证书取一个别名,默认是CN项所填的内容,一般我们会把它命名为webserver:
点击OK,又会要求给该密钥对一个保护密码:如图:
输入密码后,点击OK,即提示密钥对产生成功。

产生成功密钥对之后,该密钥对即被列出来,在其上点击右键,出现如下菜单:
选择Genereate CSR选项,生成请求,选择存储路径后,即可将请求保存到文件中。

3.2.2.导入CA签发的服务器cer证书
在CA根据请求签发cer证书后,即可将cer证书导入到Keystore中。

在密钥对列表上点击右键,选择菜单中的Import CA Reply,如图:
之后将会提示安装成功。

注意:如果安装失败,请注意服务器证书是否带有头尾,即----BEGIN
CERTIFICATE----- 和-----END CERTIFICATE-----,尾部还需要多加一个
回车。

完成以上工作后,即可将该keystore保存,点击保存按钮后,出现设置Keystore密码的界面,如下图:
输入至少六位的密码,选择保存路径后,服务器证书Keystore即成功生成。

3.3. 从pfx文件导入
新建Keystore文件,点击工具栏图标,如图:
之后会出现选择pfx、p12格式的证书的文件选择框,如图:
选择一个pfx文件后,即被要求输入该pfx文件的保护密码,如图:
输入密码后,出现如下界面:
证书序列号会出现在列表中,选择后,点击Import按钮,输入一个别名:
输入别名后,点击OK,要求输入保护密码:
输入至少6位的密码后,点击OK。

即会提示导入成功。

完成以上工作后,即可将该keystore保存,点击保存按钮后,出现设置Keystore密码的界面,如下图:
输入至少六位的密码,选择保存路径后,服务器证书Keystore即成功生成。

4.注意事项
1、Keystore保护密码和密钥对(Key pair)的保护密码是不同的两个密码。

在各平
台下配置时需要注意区分,一般来说我们都会把这两个密码设为同一密码。

2、除指定Keystore外,如Weblogic可能还需要指定服务器的公钥证书。

3、在Websphere中,不要覆盖原有的信任列表文件和服务器证书文件,而是重
新建立一个SSL配置,指定keystore。

然后将需要更改的SSL端口指定到该配置即可。

因为如果将原有设置(DefaultSSLSettings)删除,可能会导致系统异常。

4、作服务器配置时,必须将原有系统的配置文件、默认Keystore文件作备份。

相关文档
最新文档