- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下签名文件,其中包含签名者的证书、OCSP 响应和其他信息:
<?xml version="1.0" encoding="UTF-8"?>
<asic:XAdESSignatures xmlns:asic="http://uri.etsi.org/02918/v1.2.1#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#">
<ds:Signature Id="S0">
<ds:SignedInfo Id="S0-SignedInfo">
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2006/12/xml-c14n11">
</ds:CanonicalizationMethod>
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha256">
</ds:SignatureMethod>
<ds:Reference Id="S0-ref-0" URI="Lisa_1.pdf">
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>zL9dI436Zdwxm0H2Ojs9iolp7s6PxApJDrRe3BFY2Fs=</ds:DigestValue>
</ds:Reference>
<ds:Reference Id="S0-ref-1" URI="Lisa_2.pdf">
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>cNX/ShcNgqfC38HXg7aPsnkKoCd5nzzwwt4VufluiXM=</ds:DigestValue>
</ds:Reference>
<ds:Reference Id="S0-ref-2" URI="Lisa_3.pdf">
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>/vLjJAWc/GEfEpebWvJTRaYY4kL46zG7t/LooLy49tQ=</ds:DigestValue>
</ds:Reference>
<ds:Reference Id="S0-ref-3" URI="Lisa_4.pdf">
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>KdjdZx73736VjhGN2358wBu7wCR9E3CfxszQ5jMEgB0=</ds:DigestValue>
</ds:Reference>
<ds:Reference Id="S0-ref-4" URI="Lisa_5.pdf">
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>5pvrm/hnncmdmcTwLP89IeXUlWGE+xZ/qhKgSI9M0AE=</ds:DigestValue>
</ds:Reference>
<ds:Reference Id="S0-ref-5" URI="Lisa_6.pdf">
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>axdl5fEKUaPvIjKFrd1ccVw+SDbmcEtvvUIHnnFhGwo=</ds:DigestValue>
</ds:Reference>
<ds:Reference Id="S0-ref-6" URI="LVKM2019121900083.pdf">
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>VDUABdolFkW/0GdCxMIpYVcY0PDSUN4gowCqS7sMnPQ=</ds:DigestValue>
</ds:Reference>
<ds:Reference Id="S0-ref-sp" Type="http://uri.etsi.org/01903#SignedProperties" URI="#S0-SignedProperties">
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>sBlyyA+c4Gk5pMjprkaXQWiO54S4zYefKZ3uyAhD/4Q=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo><ds:SignatureValue Id="S0-SIG">
ULSFutc0fX+nqz5FkKZKexVtrsD4wTsKZcUYC+jU8P03iPE89oSWv7xoeTfZRRlRqUZTjINMT5yq9gaXWo/pFA==</ds:SignatureValue>
<ds:KeyInfo Id="S0-KeyInfo">
<ds:X509Data><ds:X509Certificate>MIIF1jCCA76gAwIBAgIQAjeRaJLVRMdZL99aR55h0TANBgkqhkiG9w0BAQsFADBj
MQswCQYDVQQGEwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1
czEXMBUGA1UEYQwOTlRSRUUtMTA3NDcwMTMxFzAVBgNVBAMMDkVTVEVJRC1TSyAy
MDE1MB4XDTE3MDYwMTA5MzMxNFoXDTIyMDYwMTIwNTk1OVowgZoxCzAJBgNVBAYT
AkVFMRswGQYDVQQKDBJFU1RFSUQgKE1PQklJTC1JRCkxGjAYBgNVBAsMEWRpZ2l0
YWwgc2lnbmF0dXJlMR4wHAYDVQQDDBVNVVNULEFBRFUsMzUxMDMyNTI3MTQxDTAL
BgNVBAQMBE1VU1QxDTALBgNVBCoMBEFBRFUxFDASBgNVBAUTCzM1MTAzMjUyNzE0
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEI66eCRmjgfzh11IQisWwR0CKfGYY
+KXpL8Wp7hNyCXHyevVmZfPEcWnxY9M3iRbr0My05W3D7FR9oVygzE9FRqOCAhcw
ggITMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgZAMHMGA1UdIARsMGowXQYJKwYB
BAHOHwEDMFAwHQYIKwYBBQUHAgIwEQwPQ29udHJhY3QgMS4xMS05MC8GCCsGAQUF
BwIBFiNodHRwczovL3d3dy5zay5lZS9yZXBvc2l0b29yaXVtL0NQUzAJBgcEAIvs
QAECMB0GA1UdDgQWBBRjtnSQbEyNFpLQ/5zd52EgS/bP9zCBigYIKwYBBQUHAQME
fjB8MAgGBgQAjkYBATAIBgYEAI5GAQQwUQYGBACORgEFMEcwRRY/aHR0cHM6Ly9z
ay5lZS9lbi9yZXBvc2l0b3J5L2NvbmRpdGlvbnMtZm9yLXVzZS1vZi1jZXJ0aWZp
Y2F0ZXMvEwJFTjATBgYEAI5GAQYwCQYHBACORgEGATAfBgNVHSMEGDAWgBSzq4i8
mdVipIUqCM20HXI7g3JHUTB2BggrBgEFBQcBAQRqMGgwJwYIKwYBBQUHMAGGG2h0
dHA6Ly9haWEuc2suZWUvZXN0ZWlkMjAxNTA9BggrBgEFBQcwAoYxaHR0cHM6Ly9z
ay5lZS91cGxvYWQvZmlsZXMvRVNURUlELVNLXzIwMTUuZGVyLmNydDA8BgNVHR8E
NTAzMDGgL6AthitodHRwOi8vd3d3LnNrLmVlL2NybHMvZXN0ZWlkL2VzdGVpZDIw
MTUuY3JsMA0GCSqGSIb3DQEBCwUAA4ICAQBxq+Wy+RO1FlDhKMnooVm4WaRXtL9Y
IiuMryuoyN01clA2gweAD4Sa8c3Rzt8EoRqdoWvqDAwt3AvrjrWttwSQdbP8b3Al
uBId5j7jop4xt0ZDPld5gcaDemavMBCEZVOlpDzWPiZ8nxiHfjaR5o/sMEKjCjW4
T7n8RUnM3sr3JRSXTZtYBZgmiMeFig7oi348x4W2Dztn0MpycAKancrb959piK3f
nwuHNxd/ptTmA9pn+MB/vwlzJEeozuTcJ0f083ifejBdbg8DYPvdq/XmKpJ97Lvc
gvP01QcrhThpnV8rn0SeQ9k493aYmOUy3fjHH+dZGrzslz4gAjMtRQIi0XC1qpuu
eDEFLwi95CPZ6e/VBr26iCxDrHb1Y3uSox9ZuVSz2eLx4BAUQzVhDIIC3HjXBhap
OLNhuo234I3KEBSWxdLP6winSONaaqiIVDvicPwz3WLV1rLcQGuUBSQG8jpb3yGp
QJd+cJdE3OB6T8Ko5l6tER3PBf53VY5J2MI2ICu0DTT1Bn0yJTPm0g0vk/Y6zGDK
r3Ehyb09qnJnRQl/W/U6iJWMY4wQjNKJMHMUwJoKVGtySl8jUpY1IVM0RJBPhsqy
FyiUelwYmYhVxbMPHdwT9Osi0Dt7pPseQvYu2BcArIzISXOVOO0BJLCGyKBPIa98
R+NCqJyEz0Ltfw==</ds:X509Certificate></ds:X509Data></ds:KeyInfo>
<ds:Object Id="S0-object-xades"><xades:QualifyingProperties Id="S0-QualifyingProperties" Target="#S0" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#"><xades:SignedProperties Id="S0-SignedProperties">
<xades:SignedSignatureProperties Id="S0-SignedSignatureProperties">
<xades:SigningTime>2019-12-20T08:40:24Z</xades:SigningTime>
<xades:SigningCertificate>
<xades:Cert>
<xades:CertDigest>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>wdTxx+frwDnSWdcBRnGZD+YbyfX2UPIZ8g2kJnouk1U=</ds:DigestValue>
</xades:CertDigest>
<xades:IssuerSerial>
<ds:X509IssuerName>CN=ESTEID-SK 2015,2.5.4.97=#0c0e4e545245452d3130373437303133,O=AS Sertifitseerimiskeskus,C=EE</ds:X509IssuerName>
<ds:X509SerialNumber>2946981553353315672823176122903454161</ds:X509SerialNumber>
</xades:IssuerSerial>
</xades:Cert>
</xades:SigningCertificate>
<xades:SignaturePolicyIdentifier>
<xades:SignaturePolicyId>
<xades:SigPolicyId>
<xades:Identifier Qualifier="OIDAsURN">
urn:oid:1.3.6.1.4.1.10015.1000.3.2.1</xades:Identifier>
</xades:SigPolicyId>
<xades:SigPolicyHash>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256">
</ds:DigestMethod>
<ds:DigestValue>3Tl1oILSvOAWomdI9VeWV6IA/32eSXRUri9kPEz1IVs=</ds:DigestValue>
</xades:SigPolicyHash>
<xades:SigPolicyQualifiers>
<xades:SigPolicyQualifier>
<xades:SPURI>
https://www.sk.ee/repository/bdoc-spec21.pdf</xades:SPURI>
</xades:SigPolicyQualifier>
</xades:SigPolicyQualifiers>
</xades:SignaturePolicyId>
</xades:SignaturePolicyIdentifier>
<xades:SignatureProductionPlace>
</xades:SignatureProductionPlace>
<xades:SignerRole>
<xades:ClaimedRoles>
<xades:ClaimedRole>Esimees</xades:ClaimedRole>
</xades:ClaimedRoles>
</xades:SignerRole>
</xades:SignedSignatureProperties>
<xades:SignedDataObjectProperties>
<xades:DataObjectFormat ObjectReference="#S0-ref-0">
<xades:MimeType>application/pdf</xades:MimeType>
</xades:DataObjectFormat>
<xades:DataObjectFormat ObjectReference="#S0-ref-1">
<xades:MimeType>application/pdf</xades:MimeType>
</xades:DataObjectFormat>
<xades:DataObjectFormat ObjectReference="#S0-ref-2">
<xades:MimeType>application/pdf</xades:MimeType>
</xades:DataObjectFormat>
<xades:DataObjectFormat ObjectReference="#S0-ref-3">
<xades:MimeType>application/pdf</xades:MimeType>
</xades:DataObjectFormat>
<xades:DataObjectFormat ObjectReference="#S0-ref-4">
<xades:MimeType>application/pdf</xades:MimeType>
</xades:DataObjectFormat>
<xades:DataObjectFormat ObjectReference="#S0-ref-5">
<xades:MimeType>application/pdf</xades:MimeType>
</xades:DataObjectFormat>
<xades:DataObjectFormat ObjectReference="#S0-ref-6">
<xades:MimeType>application/pdf</xades:MimeType>
</xades:DataObjectFormat>
</xades:SignedDataObjectProperties>
</xades:SignedProperties><xades:UnsignedProperties Id="S0-UnsigedProperties">
<xades:UnsignedSignatureProperties Id="S0-UnsigedSignatureProperties">
<xades:CertificateValues Id="S0-CertificateValues">
<xades:EncapsulatedX509Certificate Id="S0-CA_CERT1">
MIIGcDCCBVigAwIBAgIQRUgJC4ec7yFWcqzT3mwbWzANBgkqhkiG9w0BAQwFADB1
MQswCQYDVQQGEwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1
czEoMCYGA1UEAwwfRUUgQ2VydGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYG
CSqGSIb3DQEJARYJcGtpQHNrLmVlMCAXDTE1MTIxNzEyMzg0M1oYDzIwMzAxMjE3
MjM1OTU5WjBjMQswCQYDVQQGEwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVy
aW1pc2tlc2t1czEXMBUGA1UEYQwOTlRSRUUtMTA3NDcwMTMxFzAVBgNVBAMMDkVT
VEVJRC1TSyAyMDE1MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0oH6
1NDxbdW9k8nLA1qGaL4B7vydod2Ewp/STBZB3wEtIJCLdkpEsS8pXfFiRqwDVsgG
Gbu+Q99trlb5LI7yi7rIkRov5NftBdSNPSU5rAhYPQhvZZQgOwRaHa5Ey+BaLJHm
LqYQS9hQvQsCYyws+xVvNFUpK0pGD64iycqdMuBl/nWq3fLuZppwBh0VFltm4nhr
/1S0R9TRJpqFUGbGr4OK/DwebQ5PjhdS40gCUNwmC7fPQ4vIH+x+TCk2aG+u3MoA
z0IrpVWqiwzG/vxreuPPAkgXeFCeYf6fXLsGz4WivsZFbph2pMjELu6sltlBXfAG
3fGv43t91VXicyzR/eT5dsB+zFsW1sHV+1ONPr+qzgDxCH2cmuqoZNfIIq+buob3
eA8ee+XpJKJQr+1qGrmhggjvAhc7m6cU4x/QfxwRYhIVNhJf+sKVThkQhbJ9XxuK
k3c18wymwL1mpDD0PIGJqlssMeiuJ4IzagFbgESGNDUd4icm0hQT8CmQeUm1GbWe
BYseqPhMQX97QFBLXJLVy2SCyoAz7Bq1qA43++EcibN+yBc1nQs2Zoq8ck9MK0bC
xDMeUkQUz6VeQGp69ImOQrsw46qTz0mtdQrMSbnkXCuLan5dPm284J9HmaqiYi6j
6KLcZ2NkUnDQFesBVlMEm+fHa2iR6lnAFYZ06UECAwEAAaOCAgowggIGMB8GA1Ud
IwQYMBaAFBLyWj7qVhy/zQas8fElyalL1BSZMB0GA1UdDgQWBBSzq4i8mdVipIUq
CM20HXI7g3JHUTAOBgNVHQ8BAf8EBAMCAQYwdwYDVR0gBHAwbjAIBgYEAI96AQIw
CQYHBACL7EABAjAwBgkrBgEEAc4fAQEwIzAhBggrBgEFBQcCARYVaHR0cHM6Ly93
d3cuc2suZWUvQ1BTMAsGCSsGAQQBzh8BAjALBgkrBgEEAc4fAQMwCwYJKwYBBAHO
HwEEMBIGA1UdEwEB/wQIMAYBAf8CAQAwQQYDVR0eBDowOKE2MASCAiIiMAqHCAAA
AAAAAAAAMCKHIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMCcGA1Ud
JQQgMB4GCCsGAQUFBwMJBggrBgEFBQcDAgYIKwYBBQUHAwQwfAYIKwYBBQUHAQEE
cDBuMCAGCCsGAQUFBzABhhRodHRwOi8vb2NzcC5zay5lZS9DQTBKBggrBgEFBQcw
AoY+aHR0cDovL3d3dy5zay5lZS9jZXJ0cy9FRV9DZXJ0aWZpY2F0aW9uX0NlbnRy
ZV9Sb290X0NBLmRlci5jcnQwPQYDVR0fBDYwNDAyoDCgLoYsaHR0cDovL3d3dy5z
ay5lZS9yZXBvc2l0b3J5L2NybHMvZWVjY3JjYS5jcmwwDQYJKoZIhvcNAQEMBQAD
ggEBAHRWDGI3P00r2sOnlvLHKk9eE7X93eT+4e5TeaQsOpE5zQRUTtshxN8Bnx2T
oQ9rgi18q+MwXm2f0mrGakYYG0bix7ZgDQvCMD/kuRYmwLGdfsTXwh8KuL6uSHF+
U/ZTss6qG7mxCHG9YvebkN5Yj/rYRvZ9/uJ9rieByxw4wo7b19p22PXkAkXP5y3+
qK/Oet98lqwI97kJhiS2zxFYRk+dXbazmoVHnozYKmsZaSUvoYNNH19tpS7BLdsg
i9KpbvQLb5ywIMq9ut3+b2Xvzq8yzmHMFtLIJ6Afu1jJpqD82BUAFcvi5vhnP8M7
b974R18WCOpgNQvXDI+2/8ZINeU=</xades:EncapsulatedX509Certificate>
<xades:EncapsulatedX509Certificate Id="S0-RESPONDER_CERT">
MIIEvDCCA6SgAwIBAgIQcpyVmdruRVxNgzI3N/NZQTANBgkqhkiG9w0BAQUFADB1
MQswCQYDVQQGEwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1
czEoMCYGA1UEAwwfRUUgQ2VydGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYG
CSqGSIb3DQEJARYJcGtpQHNrLmVlMB4XDTExMDMxODEwMjE0M1oXDTI0MDMxODEw
MjE0M1owgZ0xCzAJBgNVBAYTAkVFMQ4wDAYDVQQIEwVIYXJqdTEQMA4GA1UEBxMH
VGFsbGlubjEiMCAGA1UEChMZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czENMAsG
A1UECxMET0NTUDEfMB0GA1UEAxMWU0sgT0NTUCBSRVNQT05ERVIgMjAxMTEYMBYG
CSqGSIb3DQEJARYJcGtpQHNrLmVlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEAihvGyhMVrgReHluKln1za6gvCE/mlSREmWjJFpL9llvuEUZoPFIypYA8
g5u1VfgkeW5gDq25jAOq4FyXeDGIa+pJn2h0o2Wc2aeppVG/emfGm/jA8jjeyMrw
H8fAJrqVQ7c9X2xSwJEch/P2d8CfMZt5YF6gqLtPvG1b+n6otBZA5wjIFfJ/inJB
MUvqHSz3+PLfxO2/T3Wyk/c8M9HIMqTelqyiMGRgWehiU1OsL9armv3dQrHs1wm6
vHaxfpfWB9YAFpeo9aYqhPCxVt/zo2NQB6vxyZS0hsOrXL7SxRToOJaqsnvlbf0e
rPPFtRHUvbojYYgl+fzlz0Jt6QJoNwIDAQABo4IBHTCCARkwEwYDVR0lBAwwCgYI
KwYBBQUHAwkwHQYDVR0OBBYEFKWhSGFt537NmJ50nCm7vYrecgxZMIGCBgNVHSAE
ezB5MHcGCisGAQQBzh8EAQIwaTA+BggrBgEFBQcCAjAyHjAAUwBLACAAdABpAG0A
ZQAgAHMAdABhAG0AcABpAG4AZwAgAHAAbwBsAGkAYwB5AC4wJwYIKwYBBQUHAgEW
G2h0dHBzOi8vd3d3LnNrLmVlL2FqYXRlbXBlbDAfBgNVHSMEGDAWgBQS8lo+6lYc
v80GrPHxJcmpS9QUmTA9BgNVHR8ENjA0MDKgMKAuhixodHRwOi8vd3d3LnNrLmVl
L3JlcG9zaXRvcnkvY3Jscy9lZWNjcmNhLmNybDANBgkqhkiG9w0BAQUFAAOCAQEA
w2sKwvTHtYGtD8Jw9mNUuj/mWiBSBEBeY2LhW8V6tjBPAPp3s6iWOh0FbVR2LUyr
qRwgT3fyWiGsiDm/6cIqM+IblLp/8ztfRQjquhW6XCD9SK02OQ9ZSdBwcmoAApZL
GXQC34wdgmV/hLTTNxONnDACBKz9U+Dy9a4ZT4tpNkbH8jq/BMne8FzbvRt1bjpX
BP7gjLX+zdx8/hp0Wq4tD+f9NVX0+vm9ahEKuzx4QzPnSB7hhWM9OnLZT7noRQa+
KWk5c+e5VoR5R2t7MjVl8Cd+2llxiSxqMSbU5/23BzAKgN+NQdrBZAzpZ7lfaAuL
FaICP+bAm6uW2JUrM6abOw==</xades:EncapsulatedX509Certificate>
</xades:CertificateValues>
<xades:RevocationValues Id="S0-RevocationValues">
<xades:OCSPValues><xades:EncapsulatedOCSPValue Id="N0">
MIIHWgoBAKCCB1MwggdPBgkrBgEFBQcwAQEEggdAMIIHPDCCAVyhgaAwgZ0xCzAJ
BgNVBAYTAkVFMQ4wDAYDVQQIEwVIYXJqdTEQMA4GA1UEBxMHVGFsbGlubjEiMCAG
A1UEChMZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czENMAsGA1UECxMET0NTUDEf
MB0GA1UEAxMWU0sgT0NTUCBSRVNQT05ERVIgMjAxMTEYMBYGCSqGSIb3DQEJARYJ
cGtpQHNrLmVlGA8yMDE5MTIyMDA4NDAzN1owYDBeMEkwCQYFKw4DAhoFAAQU/ycP
pUs92lD7/iLb2ohCQQ7zE+4EFLOriLyZ1WKkhSoIzbQdcjuDckdRAhACN5FoktVE
x1kv31pHnmHRgAAYDzIwMTkxMjIwMDg0MDM3WqFEMEIwQAYJKwYBBQUHMAECBDMw
MTANBglghkgBZQMEAgEFAAQgjgPEikDH3TdGkQJLlWHBsjYRKmDt80Rnh07j5B9Z
UIcwDQYJKoZIhvcNAQELBQADggEBAAMgn/SzZSF0QARw0NJgXutzAxZZvLFHCGj7
nTJSt/N6BVm3YyNSOgzN3lH+2EhUr1DcDxf4x93x2EwU2MjwRdeD8sBdJxXNPc+m
U4xMQVIkaKMKt7uEDjExfl6oceh35tEa5QNqeAoFaIy4ELTTyULm+nZcDFTn0RlY
xwOsOlnYcgTT7JIUoKmVrHEKAIcK7ToXdvI/8Nziczf1vFDdQl8syVlH1MmmLq5N
qVwE+8XCDdHn6ranXtf8mh3KJds02n2ViBDU8onMEDCGUK35mPLTi9eB5XTtxgyW
ZrTISlIjhjMJNozoFyyeqCW2ih4E1ntm4IC6SWDaP/VoLU6ZrnKgggTEMIIEwDCC
BLwwggOkoAMCAQICEHKclZna7kVcTYMyNzfzWUEwDQYJKoZIhvcNAQEFBQAwdTEL
MAkGA1UEBhMCRUUxIjAgBgNVBAoMGUFTIFNlcnRpZml0c2VlcmltaXNrZXNrdXMx
KDAmBgNVBAMMH0VFIENlcnRpZmljYXRpb24gQ2VudHJlIFJvb3QgQ0ExGDAWBgkq
hkiG9w0BCQEWCXBraUBzay5lZTAeFw0xMTAzMTgxMDIxNDNaFw0yNDAzMTgxMDIx
NDNaMIGdMQswCQYDVQQGEwJFRTEOMAwGA1UECBMFSGFyanUxEDAOBgNVBAcTB1Rh
bGxpbm4xIjAgBgNVBAoTGUFTIFNlcnRpZml0c2VlcmltaXNrZXNrdXMxDTALBgNV
BAsTBE9DU1AxHzAdBgNVBAMTFlNLIE9DU1AgUkVTUE9OREVSIDIwMTExGDAWBgkq
hkiG9w0BCQEWCXBraUBzay5lZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
ggEBAIobxsoTFa4EXh5bipZ9c2uoLwhP5pUkRJloyRaS/ZZb7hFGaDxSMqWAPIOb
tVX4JHluYA6tuYwDquBcl3gxiGvqSZ9odKNlnNmnqaVRv3pnxpv4wPI43sjK8B/H
wCa6lUO3PV9sUsCRHIfz9nfAnzGbeWBeoKi7T7xtW/p+qLQWQOcIyBXyf4pyQTFL
6h0s9/jy38Ttv091spP3PDPRyDKk3pasojBkYFnoYlNTrC/Wq5r93UKx7NcJurx2
sX6X1gfWABaXqPWmKoTwsVbf86NjUAer8cmUtIbDq1y+0sUU6DiWqrJ75W39Hqzz
xbUR1L26I2GIJfn85c9CbekCaDcCAwEAAaOCAR0wggEZMBMGA1UdJQQMMAoGCCsG
AQUFBwMJMB0GA1UdDgQWBBSloUhhbed+zZiedJwpu72K3nIMWTCBggYDVR0gBHsw
eTB3BgorBgEEAc4fBAECMGkwPgYIKwYBBQUHAgIwMh4wAFMASwAgAHQAaQBtAGUA
IABzAHQAYQBtAHAAaQBuAGcAIABwAG8AbABpAGMAeQAuMCcGCCsGAQUFBwIBFhto
dHRwczovL3d3dy5zay5lZS9hamF0ZW1wZWwwHwYDVR0jBBgwFoAUEvJaPupWHL/N
Bqzx8SXJqUvUFJkwPQYDVR0fBDYwNDAyoDCgLoYsaHR0cDovL3d3dy5zay5lZS9y
ZXBvc2l0b3J5L2NybHMvZWVjY3JjYS5jcmwwDQYJKoZIhvcNAQEFBQADggEBAMNr
CsL0x7WBrQ/CcPZjVLo/5logUgRAXmNi4VvFerYwTwD6d7OoljodBW1Udi1Mq6kc
IE938lohrIg5v+nCKjPiG5S6f/M7X0UI6roVulwg/UitNjkPWUnQcHJqAAKWSxl0
At+MHYJlf4S00zcTjZwwAgSs/VPg8vWuGU+LaTZGx/I6vwTJ3vBc270bdW46VwT+
4Iy1/s3cfP4adFquLQ/n/TVV9Pr5vWoRCrs8eEMz50ge4YVjPTpy2U+56EUGvilp
OXPnuVaEeUdrezI1ZfAnftpZcYksajEm1Of9twcwCoDfjUHawWQM6We5X2gLixWi
Aj/mwJurltiVKzOmmzs=</xades:EncapsulatedOCSPValue>
</xades:OCSPValues></xades:RevocationValues></xades:UnsignedSignatureProperties>
</xades:UnsignedProperties></xades:QualifyingProperties></ds:Object>
</ds:Signature>
</asic:XAdESSignatures>
我需要从我之前提到的文件中获取签名者的证书和 OCSP 响应。下面是我用来获取签名者证书和与证书相关的数据的代码(用 java 编写):
public static void main(String[] args) throws Exception {
File xmlFile = new File("signatures0.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(xmlFile);
doc.getDocumentElement().normalize();
NodeList nodeList = doc.getElementsByTagName("ds:X509Certificate");
for (int itr = 0; itr < nodeList.getLength(); itr++) {
Node node = nodeList.item(itr);
String encodedBlock = node.getTextContent().replace("\n", "");
byte[] decodedBlock = Base64.getDecoder().decode(encodedBlock.getBytes(StandardCharsets.UTF_8));
ByteArrayInputStream inputStream = new ByteArrayInputStream(decodedBlock);
CertificateFactory certFactory = CertificateFactory.getInstance("X.509");
X509Certificate cert = (X509Certificate) certFactory.generateCertificate(inputStream);
System.out.println(cert.getIssuerDN());
System.out.println(cert.getSubjectX500Principal().toString());
System.out.println(cert.getPublicKey());
cert.checkValidity();
}
}
最佳答案
其实我不太明白你到底需要什么。但是,在我看来,为了获得清晰的结构,可以提取数据,最好使用 pki 协议(protocol)库,例如 openssl 和 bouncy caSTLe。
这些开源提供您将 Base64 编码的字符串转换为组织良好且易于使用的类(结构)。
因此,在您的项目中导入boundcy caSTLe并使用提供的简单API,如下所示。请注意,下面是一个der示例,它可能提供pem api。如果没有,则需要进行 pem <-> der 转换。
https://www.programcreek.com/java-api-examples/?api=org.bouncycastle.asn1.ocsp.OCSPResponse
请检查
关于java - 如何从signature.xml文件获取OCSP响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59735159/
我在 another question 中遇到此错误消息我想知道签名中的 $: 部分是什么意思? Cannot resolve caller index(Str: Str, Any); none of
Android Studio 2.3 Generate Signed Apk Second Step Signature Verification v1(Jar Signature), v2(Full
我正在尝试使用 PHPMailer 类使用 DKIM 对电子邮件进行签名,但我无法让它工作。 当我在 gmail 上看到我的电子邮件中的 header 时,我发现该类已成功在电子邮件 header 中
我正在尝试 Animal Sniffer . 我已经创建了 .signature 文件。但是要运行 check,我需要一个“签名 Artifact ”。 org.codehaus.mojo.
我想知道 Crypto.Signature.PKCS1_v1_5 和 Crypto.Signature.pkcs1_15 有什么区别? 在documentation他们使用此函数 Crypto.Sig
我正在尝试使用 AWS S3 SDK 上传图片。现在这之前可以工作,但由于某种原因它停止工作并且我开始收到此错误: 现在,当我点击链接时,它给我一个“NoSuchKey”错误: 我不太明白这一点,因为
当 Facebook 发送实时更新时,它们会在 HTTP header 中包含 X-Hub-Signature。根据他们的文档(http://developers.facebook.com/docs/
我正在使用 NuGet 的 Stripe.net SDK。我总是得到 The signature for the webhook is not present in the Stripe-Signat
从 DocumentDB 请求文档时,我偶尔会遇到 UnauthorizedException。该问题看起来类似于 Azure DocumentDB - The MAC signature found
我用我自己的文件替换了不同 dpi 文件夹中的默认 Logo 文件“ic_launcher.png”,也命名为“ic_launcher.png”,但现在我收到此错误: Error: failed to
当 Facebook 发送实时更新时,它们会在 HTTP header 中包含一个 X-Hub-Signature。根据their documentation ,他们使用 SHA1 和应用程序 sec
我有兴趣将带有 RSA 签名的 SHA-1 散列应用于某些数据,但我需要分两步进行 - 首先应用散列,然后对数据进行签名。 Signature.sign() 函数似乎创建了一个更复杂的(ASN.1?)
我将 spring boot 和 spring security 与 JWT on rest 服务一起使用。我使用了以下链接中的代码: https://www.javainuse.com/spring
我正在使用 Stripe 提供的代码来测试 webhook。 Stripe secret 和端点 secret 已经过三重检查。 Stripe 版:6.19 正文解析器:1.19 当我在 Stripe
我有一个调用 Firebase 函数的条纹 webhook。在这个函数中,我需要验证这个请求来自 Stripe 服务器。这是代码: const functions = require('firebas
我已经在网上搜索了两天多,并且可能浏览了大多数在线记录的场景和解决方法,但到目前为止没有任何效果。 我使用的是在 PHP 5.3 上运行的 PHP V2.8.7 的 AWS SDK。 我尝试使用以下代
您好,我正在使用 WooCommerce API - Node.js 客户端 https://www.npmjs.com/package/woocommerce-api 我正在尝试创建一个需要向服务器
我正在尝试创建一个预签名 URL,以帮助某些客户上传文件。这是我当前正在运行的测试脚本 # Get the service client. s3 = boto3.client('s3') boto3.
我编写了一个类,旨在使用服务器上的私钥对文本字符串进行签名和 base64,然后返回签名。每次针对相同文本运行时,它都会生成不同的签名。它为什么要这么做呢?我通过在我的测试机器上暂时禁用转换来检查是否
我们正在使用支持 OAuth 2 多边身份验证的 API。尝试运行我的 rest sharp 客户端 OAuth1Authenticator 实现时出现以下错误: Message: HTTP Stat
我是一名优秀的程序员,十分优秀!