如何 get/generate 从证书中固定 sha256

How to get/generate pin sha256 from certificate

简单的问题

我正在尝试使用 network-security-config 在 android 中进行证书固定 但我不确定如何让 SHA-256 放入 pin-set

给定一个域 url 你如何找到“pin digest="SHA-256""?

<?xml version="1.0" encoding="utf-8"?>
  <network-security-config>
    <domain-config>
        <domain includeSubdomains="true">example.com</domain>
        <pin-set expiration="2018-01-01">
            <pin digest="SHA-256">HowDoIGetThisValue</pin>
            <!-- backup pin -->
            <pin digest="SHA-256">HowDoIGetThisValue</pin>
        </pin-set>
    </domain-config>
</network-security-config>

Suggestions/Steps.

非常感谢

在MAC中:

如果您的证书类型是 .crt:

openssl x509 -in yourCertificatePath.crt -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -二进制| openssl enc -base64

如果您的证书类型是 .cer:

openssl x509 -in yourCertificatePath.cer -pubkey -noout -inform der | openssl pkey -pubin -outform der | openssl dgst -sha256 -二进制| openssl enc -base64