色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

jdk證書生成原理

jdk證書生成原理?

TomCAt服務(wù)器配置HTTPS雙向認(rèn)證,使用JDK的keytool生成證書(適用于web、安卓、IOS)

一、原理

1.HTTP:平時(shí)瀏覽網(wǎng)頁時(shí)候使用的一種協(xié)議。HTTP協(xié)議傳輸?shù)臄?shù)據(jù)都是未加密的(明文),因此使用HTTP協(xié)議傳輸隱私信息非常不安全。

2.HTTPS:為了保證隱私數(shù)據(jù)能加密傳輸,采用SSL/TLS協(xié)議用于對(duì)HTTP協(xié)議傳輸?shù)臄?shù)據(jù)進(jìn)行加密,也就是HTTPS。

二、說明

1.原因:因有些情況使用到HTTPS也就是SSL證書驗(yàn)證以便加密信息,所以使用證書

2.選擇性:自簽免費(fèi),不需要金額,CA的收費(fèi)每年都要給錢的,具體多少?zèng)]有關(guān)注

3.途徑:有多種,本人找到了兩種,一個(gè)的本篇文章敘述的JDK自帶的。,還有一個(gè)是OPENSSL可以做的。這里不體現(xiàn)出來。

4.生成環(huán)境與工具:windows.jdk1.8,tomcat8

三、步驟

1.服務(wù)器證書

1.1進(jìn)入到j(luò)dk中jre目錄控制臺(tái)中;

可以在jre文件中按住shift+鼠標(biāo)右鍵打開控制臺(tái)命令

或者cmd命令cd C:\Program Files\java\jre1.8.0_91\bin

1.2.通過keytool命令生成服務(wù)端證書(庫)

keytool -genkey -v -alias server -keyalg RSA -keystore G:\server.keystore -validity 36500

參數(shù)說明:G:\server.keystore:將名為server.keystore的證書保存到G盤目錄下

-validity 36500:證書有效期,36500表示100年,默認(rèn)值是90天

server:自定義證書名稱

在這里插入圖片描述

輸入密鑰庫口令:keystore密碼(假設(shè)使用123456)此密碼是隱式性的,所以看不到

您的名字與姓氏是什么:必須是TOMCAT部署主機(jī)的域名或者IP[如:123456.com 或者 1192.168.0.1](就是你將來要在瀏覽器中輸入的訪問地址),

否則瀏覽器會(huì)彈出警告窗口,提示用戶證書與所在域不匹配。在本地做開發(fā)測(cè)試時(shí),應(yīng)填入“l(fā)ocalhost”。

其他的可以隨意填寫目前沒有出現(xiàn)什么特別情況

輸入 的密鑰口令:直接回車.

2.客戶端證書

2.1證書格式應(yīng)該是PKCS12,以及jks模式。這第一個(gè)P12證書是給瀏覽器和IOS客戶端驗(yàn)證用的,而安卓不能用keystore的密碼庫所以要生成jks然后通過工具轉(zhuǎn)換成bks。

2.1.1以下是生產(chǎn)安卓端所用的jks文件

keytool -genkeypair -alias client -keyalg RSA -validity 36500 -keypass 123456 -storepass 123456 -keystore G:\client.jks

在這里插入圖片描述

其中:-keypass 123456 表示密碼是123456(轉(zhuǎn)換時(shí)需要用到)其他的同上。

2.1.2生成p12文件

keytool -genkey -v -alias mykey -keyalg RSA -storetype PKCS12 -keystore G:\mykey.p12

在這里插入圖片描述

相關(guān)信息同上,密碼這邊假設(shè)是123456

3.讓服務(wù)器信任客戶端證書

3.1由于不能直接將PKCS12格式以及jks格式的的證書庫導(dǎo)入,必須先把客戶端證書導(dǎo)出為一個(gè)單獨(dú)的CER文件,使用如下命令: (下面要用到客戶端證書密碼“123456”)

P12生成cer

keytool -export -alias mykey -keystore G:\mykey.p12 -storetype PKCS12 -storepass 123456 -rfc -file G:\mykey.cer

jks 生成 cer

keytool -export -alias client -file G:\client.cer -keystore G:\client.jks -storepass 123456

3.2將證書導(dǎo)入到服務(wù)器的證書庫中

p12轉(zhuǎn)換的cer導(dǎo)入到server庫中

keytool -import -v -file G:\mykey.cer -keystore G:\server.keystore

將jks轉(zhuǎn)換的cer導(dǎo)入到server庫中

keytool -import -v -alias client -file G:\client.cer -keystore G:\server.keystore -storepass 123456

4.雙向驗(yàn)證

由于是雙向SSL認(rèn)證,客戶端也要驗(yàn)證服務(wù)器證書。把服務(wù)器證書導(dǎo)出為一個(gè)單獨(dú)的CER文件提供給客戶端,使用如下命令:

keytool -keystore G:\server.keystore -export -alias server -file G:\server.cer

至此證書生成完成

3.證書的使用配置

3.1瀏覽器服務(wù)器配置

3.1.1服務(wù)器tomcat的配置

打開Tomcat根目錄下的/conf/server.xml,找到Connector port="8443"配置段,修改為如下:

clientAuth:設(shè)置是否雙向驗(yàn)證,默認(rèn)為false,設(shè)置為true代表雙向驗(yàn)證

keystoreFile:服務(wù)器證書文件路徑

keystorePass:服務(wù)器證書密碼

truststoreFile:用來驗(yàn)證客戶端證書的根證書,此例中就是服務(wù)器證書

truststorePass:根證書密碼

瀏覽器輸入https://192.168.0.1/8443 則會(huì)報(bào)無效證書或者鏈接不安(證書沒有配置)

3.1.2雙擊“mykey.p12”導(dǎo)入客戶端證書

再次使用瀏覽器訪問服務(wù)端,瀏覽器會(huì)讓我們選擇使用的證書。

3.1.3.導(dǎo)入服務(wù)器公鑰證書(server.cer)

由于是自簽名的證書,為避免每次都提示不安全。這里雙擊server.cer安裝服務(wù)器證書。

注意:將證書填入到“受信任的根證書頒發(fā)機(jī)構(gòu)”

在這里插入圖片描述

再次重新訪問服務(wù)器,會(huì)發(fā)現(xiàn)沒有不安全的提示了,同時(shí)瀏覽器地址欄上也有個(gè)“鎖”圖標(biāo),表示本次會(huì)話已經(jīng)通過HTTPS雙向驗(yàn)證。

3.2IOS配置

直接把P12文件 以及sever.cer文件給IOS開發(fā)人員就行了

3.3android配置實(shí)現(xiàn) Portecle1.9

需要把jks轉(zhuǎn)換成bks讓安卓能識(shí)別驗(yàn)證步驟如下:

1.雙擊運(yùn)行portecle.jar

在這里插入圖片描述

此處輸入的密碼是你生成的bks文件時(shí)所用的密碼(123456)

在這里插入圖片描述

然后生成bks文件

生成BKS

這個(gè)密碼是你給安卓人員的 他們要解析這個(gè)證書用的隨機(jī)(123456)

在這里插入圖片描述

最后提示SUCCESSFUL 表示成功

在這里插入圖片描述

**重點(diǎn):**由于生成生成功后需要保持的,文件名一定要加.bks結(jié)尾不然就直接生成了文件了,安卓識(shí)別不了

在這里插入圖片描述

此時(shí)把.bks文件和sever.cer文件給安卓開發(fā)人員

最后強(qiáng)制tomcat走h(yuǎn)ttps

打開Tomcat安裝目錄中conf/web.xml文件,在最后面加上以下內(nèi)容即可

CLIENT-CERT

Client Cert Users-only Area

SSL

/*

CONFIDENTIAL

四、其他相關(guān)說明

使用工具轉(zhuǎn)換多次時(shí)會(huì)報(bào)異常這是因?yàn)槿绻荑€大于128, 會(huì)拋出java.security.InvalidKeyException: Illegal key size 異常. 因?yàn)槊荑€長(zhǎng)度是受限制的, java運(yùn)行時(shí)環(huán)境讀到的是受限的policy文件. 文件位于${java_home}/jre/lib/security, 這種限制是因?yàn)槊绹鴮?duì)軟件出口的控制

解決方案:去官方下載JCE無限制權(quán)限策略文件。

java 生成 證書,jdk證書生成原理