前言
最近在對接銀聯的支付,需要用到證照,其中有一類是pfx檔案,稍微瞭解了下大概就是把金鑰和其他東西打包起來的一種格式,現在,我想解這個pfx檔案,得到金鑰
遇到的問題
使用openssl將pfx檔案轉化為cert,解出來是這樣的,如下圖,go語言沒有自帶的包能處理pfx檔案,所以我找到了一個包:golang.org/x/crypto/pkcs12
裡面有個decode函式能decode pfx檔案,得到金鑰,但是得到的是一堆數字
,請問是啥原因,或者有沒有別的包可以起到解pfx的效果
keyFile, err := ioutil.ReadFile(rootKey)
if err != nil {
t.Error(err)
return
}
privateKey, keyBlock, err := pkcs12.DecodeAll(keyFile, "000000")
if keyBlock == nil {
t.Error(err)
return
}
//結果:308204be020100300d06092a864886f70d010101050004820。。。
##其他問題
golang.org/x/crypto/pkcs12
這個解出來的應該是pkcs12的,但銀聯要求的是rsa1加簽,對應的是pkcs8,就算用這個包解出了金鑰,還是得轉化
本作品採用《CC 協議》,轉載必須註明作者和本文連結