openssl解析國密X509證書


openssl解析國密X509證書,把公鑰拿出來重寫一下就行了
        x = strToX509(pbCert, pulCertLen);
dwRet = getCertPubKey(x, &pRSAPubKeyBlob, &pECCPubKeyBlob);
ECCPUBLICKEYBLOB  pec = { 0 };//目標公鑰
pec.BitLen = 256;
int i = 0;
for (i = 0; i < 64; i++){
if (i <= 31){
pec.XCoordinate[i] = 0;
pec.YCoordinate[i] = 0;
}
else{
pec.XCoordinate[i] = pECCPubKeyBlob.XCoordinate[i - 32];
pec.YCoordinate[i] = pECCPubKeyBlob.YCoordinate[i - 32];
}
}
其實就是公鑰結構解析的問題,SM2公鑰所需要的格式和X509解析出來的X,Y位置是顛倒的,要求的結果是X,Y數組前32為0;而X509提供的為后32為0,正好顛倒了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM