如何从证书获取/生成 pin sha256

dev*_*969 6 android xamarin.android xamarin.forms

简单的问题

我正在尝试使用网络安全配置在 android 中进行证书固定,但我不确定如何将 SHA-256 放入 pin 集中

给定一个域名 url,如何找到“pindigest=”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>
Run Code Online (Sandbox Code Playgroud)

建议/步骤。

非常感谢

Min*_*rid 18

在MAC中:

如果您的证书类型是.crt

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

如果您的证书类型是.cer

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