周末在家無趣,研究了一個(gè)golang里面的Certificate.Verify函數(shù)。
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比武侯網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式武侯網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋武侯地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。
golang的官方定義在這里:
函數(shù)原型聲明如下:
func (c Certificate) Verify(opts VerifyOptions) (chains [][] Certificate, err error)
其中:
這個(gè)函數(shù)的功能是:
Verify attempts to verify c by building one or more chains from c to a certificate in opts.Roots, using certificates in opts.Intermediates if needed. If successful, it returns one or more chains where the first element of the chain is c and the last element is from opts.Roots.
If opts.Roots is nil and system roots are unavailable the returned error will be of type SystemRootsError.
解釋一下就是:
舉一個(gè)例子:
假設(shè)存在證書鏈簽出關(guān)系:C1 - C2 - C3 - C4,即C1簽出C2,C2簽出C3,C3簽出C4;現(xiàn)在使用函數(shù):
我們根據(jù)Intermediates和Roots的值不同,比較輸出結(jié)果:
GOST認(rèn)證,就是俄羅斯強(qiáng)制認(rèn)證證書。俄羅斯市場(chǎng)上流通的商品 90%以上都有g(shù)ost認(rèn)證,認(rèn)證范圍很廣,主要包括:食品,家用電器,電子產(chǎn)品,輕工業(yè)品,化妝品、家具、玩具、陶瓷等。 我公司就是俄羅斯gost發(fā)證機(jī)構(gòu)直屬中華辦事處,有什么不懂的可以私信問我
本篇文章中,將描述如何使用go創(chuàng)建CA,并使用CA簽署證書。在使用openssl創(chuàng)建證書時(shí),遵循的步驟是 創(chuàng)建秘鑰 創(chuàng)建CA 生成要頒發(fā)證書的秘鑰 使用CA簽發(fā)證書。這種步驟,那么我們現(xiàn)在就來嘗試下。
首先,會(huì)從將從創(chuàng)建 CA 開始。 CA 會(huì)被用來簽署其他證書
接下來需要對(duì)證書生成公鑰和私鑰
然后生成證書:
我們看到的證書內(nèi)容是PEM編碼后的,現(xiàn)在 caBytes 我們有了生成的證書,我們將其進(jìn)行 PEM 編碼以供以后使用:
證書的 x509.Certificate 與CA的 x509.Certificate 屬性有稍微不同,需要進(jìn)行一些修改
為該證書創(chuàng)建私鑰和公鑰:
有了上述的內(nèi)容后,可以創(chuàng)建證書并用CA進(jìn)行簽名
要保存成證書格式需要做PEM編碼
創(chuàng)建一個(gè) ca.go 里面是創(chuàng)建ca和頒發(fā)證書的邏輯
如果需要使用的話,可以引用這些函數(shù)
panic: x509: unsupported public key type: rsa.PublicKey
這里是因?yàn)? x509.CreateCertificate 的參數(shù) privatekey 需要傳入引用變量,而傳入的是一個(gè)普通變量
extendedKeyUsage :增強(qiáng)型密鑰用法(參見"new_oids"字段):服務(wù)器身份驗(yàn)證、客戶端身份驗(yàn)證、時(shí)間戳。
keyUsage : 密鑰用法,防否認(rèn)(nonRepudiation)、數(shù)字簽名(digitalSignature)、密鑰加密(keyEncipherment)。
文章來自
我來解決吧,以前用過建行的盾,它的一個(gè)服務(wù)導(dǎo)致了WIN7下的證書導(dǎo)入都崩潰無響應(yīng),SO,把我的電腦里的服務(wù)HDZB Comm Service For V2.0打開就行,這個(gè)垃圾服務(wù)必須開開才能導(dǎo)入
當(dāng)前題目:go語言證書 go語言認(rèn)證考試
鏈接分享:http://jinyejixie.com/article12/dosdpgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站、定制網(wǎng)站、用戶體驗(yàn)、網(wǎng)站制作、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)