uKey雙向認(rèn)證https

最終效果,插上uKey(專業(yè)術(shù)語叫uKey,長得像一個(gè)普通的u盤),可以訪問某個(gè)web系統(tǒng),拔掉uKey,web系統(tǒng)顯示沒有權(quán)限


一 基礎(chǔ)概念

單向認(rèn)證:當(dāng)客戶訪問服務(wù)器的時(shí)候,客戶方去校驗(yàn)服務(wù)器是否是自己想去訪問的服務(wù)器;
雙向認(rèn)證:不僅僅需要用戶瀏覽器校驗(yàn)服務(wù)器數(shù)字證書,還需要服務(wù)器端驗(yàn)證用戶是否是可信的;

二 單向認(rèn)證流程(springboot項(xiàng)目為例)

1 制作證書

直接利用keytools工具生成
keytool -genkey -alias client -keyalg RSA -keystore client.p12 -validity 360 -storepass 123456 -storetype PKCS12 -keysize 2048 -dname "CN=127.0.0.1, OU=dazhen, O=dazhen, L=CD, ST=CD, C=CN"

2 配置證書


## 服務(wù)端
server.ssl.trust-store=D:\\ca\\www\\127\\server.p12
server.ssl.trust-store-password=123456
server.ssl.trust-store-type=JKS
server.ssl.trust-store-provider=SUN
# need 是必須要驗(yàn)證,want是可選驗(yàn)證(想不通如果可選還做單向驗(yàn)證干嘛)
server.ssl.client-auth=need

## 客戶端(也就是瀏覽器)
安裝server.p12證書到瀏覽器即可
image.png

3 效果展示

啟動項(xiàng)目,打開網(wǎng)站,會彈出如下,證明單向驗(yàn)證成功;

image.png

三 雙向認(rèn)證流程(springboot項(xiàng)目為例)

1 制作證書

## 制作server.p12 服務(wù)端證書
keytool -genkey -alias server -keyalg RSA -keystore server.p12 -validity 360 -storepass 123456 -storetype PKCS12 -keysize 2048 -dname "CN=127.0.0.1, OU=dazhen, O=dazhen, L=CD, ST=CD, C=CN"

## 制作client.p12客戶端證書
keytool -genkey -alias client -keyalg RSA -keystore client.p12 -validity 360 -storepass 123456 -storetype PKCS12 -keysize 2048 -dname "CN=127.0.0.1, OU=dazhen, O=dazhen, L=CD, ST=CD, C=CN"

## 將client.p12導(dǎo)出到client.cer
keytool -keystore client.p12 -export -alias client -file client.cer

## 將client.cer導(dǎo)入server.p12
keytool -import -file client.cer -keystore server.p12

## 查看server.p12 中已經(jīng)存在的證書列表
keytool -list -keystore server.p12 -storepass 123456 -storetype PKCS12

2 配置證書

# 服務(wù)器端證書檢驗(yàn)
server.ssl.key-store=D:\\ca\\www\\127\\server.p12
server.ssl.key-store-password=123456
server.ssl.key-store-type=PKCS12
server.ssl.key-alias=server

## 客戶端證書校驗(yàn)
server.ssl.trust-store=D:\\ca\\www\\127\\server.p12
server.ssl.trust-store-password=123456
server.ssl.trust-store-type=JKS
server.ssl.trust-store-provider=SUN
server.ssl.client-auth=need

3 配置ukey環(huán)境(為了將p12證書按照到ukey)

ukey只是一個(gè)介質(zhì),里面需要有一個(gè)容器軟件,可以安裝p12證書。
電腦上還需按照一個(gè)管理程序,2個(gè)功能,
1,ukey查到電腦上,可以識別出ukey里的證書(單向認(rèn)證是把證書安裝在瀏覽器,雙向認(rèn)證是把證書安裝在ukey);
2,可以對識別的ukey里的證書進(jìn)行增刪查,如下圖所示


image.png
image.png

剛開始都不知道這個(gè)東西叫uKey,一頓谷歌,看到ukey里也需一些管理軟件,時(shí)間+精力都不允許(里面大多是C#語言開發(fā)的)。想起萬能的taobao,最后在一家店鋪55大洋買了ukey(帶說明書)

各種嘗試,咨詢售后,最后總結(jié)出來安裝軟件步驟(win10)

win10系統(tǒng)需要EPASS1000ND(支持win10).zip
1,先安裝D:\EPASS1000ND(支持win10)\win2.5\pki\V2.5-20150919\PKIcdrom\CDROM_CN\PKI\Redist\cn\eps1knd_stdSimpChinese.exe

2,再安裝D:\EPASS1000ND(支持win10)\win2.5\pki\V2.5-20150919\PKIcdrom\CDROM_CN\PKI\Utilities\ePassNgMgr.exe

3,初始化D:\EPASS1000ND(支持win10)\win2.5\pki\V2.5-20150919\PKIcdrom\CDROM_CN\PKI\Utilities\PKIINIT\PKIInit_M32.exe

4 效果驗(yàn)收

a 不插ukey,打開系統(tǒng),提示無權(quán)限;
b 插上ukey,打開系統(tǒng),瀏覽器彈出如下窗口

image.png

c 點(diǎn)擊確定,正常訪問網(wǎng)站;
d 拔掉ukey+關(guān)閉瀏覽器器,再次打開網(wǎng)站,提示無權(quán)限;
注意:如果bc步驟后,只拔ukey,因?yàn)闉g覽器對證書有一段時(shí)間緩存,所以還會繼續(xù)正常訪問網(wǎng)站

pc上需要安裝的識別uKey證書的軟件在這里
https://download.csdn.net/download/WANTAWAY314/12923620

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容