Certification

certification(憑證)
用途:可在網路上證明白己的身份及所持有的public key
內容:主要包含使用者資料及public key
應用:可做為網路身分證或數位印鑑,幫助網路交易時確認身分
發行該certification的CA會用CA的private key做數位簽章,以證明是由CA所發行
目前使用的統一格式為x.509

X.509 certification
由itu-t所提出的數位certification標準格式
內容包括以下資訊
version(版本):certification版本
serial number(序號):certification的唯一編號
signature algorithm identifier(簽章演算法):簽署此certification的演算法
issuer distinguished name(憑證發行者):發行certification的單位
validate period(有效期限):此certification可用的有效時間
subject distinguished name(憑證持有者):
subject’s public key information(持有者公開金鑰)
issuer unique identifier(發行者身份id),屬附加欄位
subject unique identifier(持有者身份id),屬附加欄位
extensions(其他資訊),屬附加欄位
issuer’s signature(本憑證發行者簽章):發行該certification的CA用private key所做的簽章
ps:
X509憑證(v1,2,3) ITU1988,公開金鑰憑證格式的標準 rfc3280
1993公佈版本2,1997公佈版本3,2000推出X.509-2000或X.509V4(PKI/PMI, ISO/IEC 9594-8)
屬於X.500建議系列一部份
藉由X.500的目錄結構,定義了一個提供給使用者確認性服務的架構
認證和結構用在許多不同地方ex,S/MIME,IPsec,SSL/TSL,SET
三種確認:單向確認(只有傳送端可確認),雙向確認,三向確認
使用ASN.1(抽像語意表示法編碼)


certification類別
常見的有以下幾種
CA certification:CA自己的數位憑證
server certification:ex:SSL憑證
軟體出版者certification
個人certification
…………………………………………………………………

CA(certification authority,憑證中心)
任務
 產生憑證:將使用者資料和public key簽署成數位憑證
 管理,註銷,恢復,儲存等憑證相關業務
 扮演可信任的第三方機構
 解決公鑰分配問題
目標
 保密性 – 維持資訊為私密的
 完整性 – 証明資訊未經操控或修改
 確認性 – 証明個人或應用程式的身份
 不得否認性 – 保證個人不能否認所做的事
ps:
CA架構
Root authority(根授權)
最頂層CA,負責驗證第二層CA(也叫RA),根不只一個
當根授權新的RA時,會產生一個X.509憑證,註明己認可該RA,並包含新RA的public key並予以簽署,在交給RA
RA(Registration Authority,區域管理中心):
是CA的証書發放,管理的延伸
RA認可新的CA時,會產生並簽署一個註明其認可的憑證,也包含了CA的public key
RA作為user和CA的中間人角色。可配對和確認user身份,然後向CA遞交證書的申請
CA(certificate authority,憑證管理中心):
將憑證數位化簽章的管理單位
PKI的信任基礎
ps:
chain of trust(信任鏈)
數位簽章會透過chain of trust來驗證實體
這種certification path(憑證路徑)是一連串通往根授權的憑證
也就是一連串互相背書的憑證,按照其簽發憑證與背書的先後順序,排列成一個可以獲得信任的路徑

PKI(public key infrastructure,公開金鑰基礎建設)
任務:提供組織這些構成要素並對各種文件與協定定義標準的方法
做法:建立CA管理,簽發,註銷,使用者的數位憑證
ex:
GCA(government certification authority,政府憑證管理中心),1998年台灣成立的憑證管理中心

GPKI(政府機關公開金鑰基礎建設)
階層式公開金鑰基礎建設,包含以下
GRCA(憑證總管理中心),自簽憑證,CA交互認證憑證
可在分為以下
 GCA(政府憑證管理中心),政府機關憑證
 GtestCA(政府測試憑證管理中心)
 MOEACA(電子工商憑證管理中心),商用憑證
 MOICA(內政部憑證管理中心),自然人憑證
 XCA(組織及團憑證管理中心),法人及團體憑證


……………………………………………………………………………

certification應用

驗證certification正確性
做法:SHA-1(certification content)=CA public key(certification digital signature)
1先將certification內容透過sha-1運算後得一訊息摘要
2在將certification數位簽章透過CA公鑰運算後得到的訊息摘要做比較
3若訊息摘要皆相同,則certification正確

加密
1先從CA取得對方certification
2從certification中取出對方public key對訊息加密後送出
3對方收到後用自己的private key解密

認證來源
1發送方將private key(message,timestamp)送給對方
2對方收到後若可用發送方public key解開,同時timestamp未逾時,則可證明是對方