第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 OID 讀取密鑰信息和密鑰簽名等擴展值

如何使用 OID 讀取密鑰信息和密鑰簽名等擴展值

Go
紅糖糍粑 2022-06-27 15:15:02
var cert *x509.Certificatecert, err := x509.ParseCertificate(myCertificate)從這里我需要以字節(jié)為單位檢索擴展值。我有用于此的 OID。我能夠找到用于向證書添加擴展的代碼。但不檢索它。任何人都可以分享如何做到這一點的示例代碼嗎?更新:現(xiàn)在,我可以得到擴展var extensions []pkix.Extensionvar cert *x509.CertificatebyteValue, _ := base64.StdEncoding.DecodeString(myCert)cert, err := x509.ParseCertificate(byteValue)if err != nil {    fmt.Println("Error in parsing certificate")}extensions = cert.ExtensionscheckId := []int{2, 5, 6, 135, 3, 2, 41}for _, ext := range extensions {    if reflect.DeepEqual(ext.Id, checkId) {        fmt.Println("true")    }}}但是深度相等返回 false(存在特定的 oid),我需要檢索該特定擴展的值。誰能建議一些步驟來做到這一點?
查看完整描述

1 回答

?
慕桂英4014372

TA貢獻(xiàn)1871條經(jīng)驗 獲得超13個贊

reflect.DeepEqual 不起作用,因為類型不同。檢查 OID 的常規(guī)方法是使用asn1.ObjectIdentifier,如下所示:


checkID := asn1.ObjectIdentifier{2, 5, 6, 135, 3, 2, 41}

for _, ext := range extensions {

    if ext.Id.Equal(checkId) {

        fmt.Println("true")

    }

}

如果它不存在,請不要忘記檢查ExtraExtensions。


查看完整回答
反對 回復(fù) 2022-06-27
  • 1 回答
  • 0 關(guān)注
  • 168 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號