如何从证书中获取签名哈希算法的类型?

时间:2016-03-18 05:44:56

标签: api openssl certificate

我正在使用OpenSSL API从证书中获取签名哈希算法的类型。 例如,如果证书使用sha1,则api返回sha1。 如果证书使用sha256,则api返回sha256。

但我不知道api,请帮帮我!谢谢!

1 个答案:

答案 0 :(得分:0)

我找到了API。 x509是证书。

int mdnid=0;
if (OBJ_find_sigid_algs(OBJ_obj2nid(x509->sig_alg->algorithm), &mdnid, NULL)) {
                switch (mdnid) 
                {
                    case NID_sha1:
                        break;
                    case NID_sha256:
                        break;
                    case NID_sha512:
                        break;
                    case NID_sha224:
                        strcpy(hashAlgo,"SHA224");
                        break;
                    case NID_sha384:
                        break;
                    default:
                        break;
                }
        }