Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

9 Страницы«<789
Опции
К последнему сообщению К первому непрочитанному
Offline kovalevskymax  
#81 Оставлено : 8 ноября 2017 г. 9:26:44(UTC)
kovalevskymax

Статус: Новичок

Группы: Участники
Зарегистрирован: 30.10.2017(UTC)
Сообщений: 2

Здравствуйте! Помогите разобраться. В скором будущем предстоит интеграция с ГИС ГМП. Какая-то проблема с формированием подписи Xades-T. Полный текст запроса:

Код:
<?xml version="1.0" encoding="UTF-8"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"><s:Header><Action s:mustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">http://roskazna.ru/gisgmp/02000000/SmevGISGMPService/GISGMPTransferMsg</Action><wsse:Security s:actor="http://smev.gosuslugi.ru/actors/smev" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><wsse:BinarySecurityToken EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" wsu:Id="ep-ov">MIIDCTCCArigAwIBAgITEgAhD7NoW9Jj9UxgTgAAACEPszAIBgYqhQMCAgMwfzEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBjcnlwdG9wcm8ucnUxCzAJBgNVBAYTAlJVMQ8wDQYDVQQHEwZNb3Njb3cxFzAVBgNVBAoTDkNSWVBUTy1QUk8gTExDMSEwHwYDVQQDExhDUllQVE8tUFJPIFRlc3QgQ2VudGVyIDIwHhcNMTcxMDAzMDIxOTUzWhcNMTgwMTAzMDIyOTUzWjAYMRYwFAYDVQQDDA1rb3ZhbGV2c2t5bWF4MGMwHAYGKoUDAgITMBIGByqFAwICJAAGByqFAwICHgEDQwAEQBcYck4c7gi2uWeliTQLTaLyvQsIhpX6ZCs7ilsRnso4MtTaJOPRvmcmP/iSPxUS6+98GLIM6lipQ9MwCcVyqemjggFwMIIBbDAOBgNVHQ8BAf8EBAMCBPAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFEH2DJ6n7CZ7w/YJDXvy91ek9Q9QMB8GA1UdIwQYMBaAFBUxfLCNGt5m1xWcSVKXFyS5AXqDMFkGA1UdHwRSMFAwTqBMoEqGSGh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L0NlcnRFbnJvbGwvQ1JZUFRPLVBSTyUyMFRlc3QlMjBDZW50ZXIlMjAyLmNybDCBqQYIKwYBBQUHAQEEgZwwgZkwYQYIKwYBBQUHMAKGVWh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L0NlcnRFbnJvbGwvdGVzdC1jYS0yMDE0X0NSWVBUTy1QUk8lMjBUZXN0JTIwQ2VudGVyJTIwMi5jcnQwNAYIKwYBBQUHMAGGKGh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L29jc3Avb2NzcC5zcmYwCAYGKoUDAgIDA0EAQBGOFlaArR4E+8lAoqZ0OCC2aTEahfK0ATvO+pLp1Xu+q//sUvFP8ZRVuEN+R1ETnf/KgfxUmq52rRI2GKNHWQ==</wsse:BinarySecurityToken><ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"><ds:SignedInfo><ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411" /><ds:Reference URI="#body"><ds:Transforms><ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></ds:Transforms><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411" /><ds:DigestValue>TSDVjukMNiXK+NmI8Lz/iARtbvOsL2sa6YPeN9yAchc=</ds:DigestValue></ds:Reference></ds:SignedInfo><ds:SignatureValue>GjKy5Ixlz7YJmT2CrqkO8MrUsEHu1dXl4u5zpaTsdNiktUHBHDvn7TAZasGJF+7KNpTmrvatT88+U2WuDq7K7w==</ds:SignatureValue><ds:KeyInfo><wsse:SecurityTokenReference><wsse:Reference URI="#ep-ov" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" /></wsse:SecurityTokenReference></ds:KeyInfo></ds:Signature></wsse:Security></s:Header><s:Body wsu:Id="body"><GISGMPTransferMsg xmlns="http://roskazna.ru/gisgmp/02000000/SmevGISGMPService/"><Message xmlns="http://smev.gosuslugi.ru/rev120315"><Sender><Code>RKZN01001</Code><Name>Казначейство России</Name></Sender><Recipient><Code>RKZN01001</Code><Name>Казначейство России</Name></Recipient><Originator><Code>RKZN01001</Code><Name>Казначейство России</Name></Originator><Service><Mnemonic>!-Мнемоника сервиса</Mnemonic><Version>5.03</Version></Service><TypeCode>GFNC</TypeCode><Status>REQUEST</Status><Date>2014-10-14T09:30:47</Date><ExchangeType>6</ExchangeType></Message><MessageData xmlns="http://smev.gosuslugi.ru/rev120315"><AppData><RequestMessage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Id="ID_1" timestamp="0001-01-01T00:00:00" senderIdentifier="0000a1" senderRole="-1" xmlns="http://roskazna.ru/gisgmp/xsd/116/Message"><ImportRequest xmlns="http://roskazna.ru/gisgmp/xsd/116/MessageData"><Package xmlns="http://roskazna.ru/gisgmp/xsd/116/PGU_ImportRequest"><Document><Charge Id="ID_0057" supplierBillID="0000016101005733301039993" billDate="0001-01-01" xmlns="http://roskazna.ru/gisgmp/xsd/116/Charge"><SupplierOrgInfo><Name xmlns="http://roskazna.ru/gisgmp/xsd/116/Organization">Администратор начислений тест</Name><INN xmlns="http://roskazna.ru/gisgmp/xsd/116/Organization">5678901231</INN><KPP xmlns="http://roskazna.ru/gisgmp/xsd/116/Organization">567890121</KPP><Account xmlns="http://roskazna.ru/gisgmp/xsd/116/Organization"><AccountNumber>40602810000380000020</AccountNumber><Bank><BIK>044523331</BIK></Bank></Account></SupplierOrgInfo><BillFor>Штраф</BillFor><TotalAmount>10000</TotalAmount><ChangeStatus meaning="1" xmlns="http://roskazna.ru/gisgmp/xsd/116/Common" /><KBK>15651111111111111113</KBK><OKTMO>12345673</OKTMO><BudgetIndex><Status xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">01</Status><Purpose xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">0</Purpose><TaxPeriod xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">0</TaxPeriod><TaxDocNumber xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">12345</TaxDocNumber><TaxDocDate xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">0</TaxDocDate></BudgetIndex><AltPayerIdentifier>0100000000023456789999643</AltPayerIdentifier><TreasureBranch>УФК по г. Москва</TreasureBranch><Signature Id="ID_0057-Signature" xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /><SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411" /><Reference URI="#ID_0057"><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411" /><DigestValue>mLaNKKL8A8w4wx1FL5OuA0aDNNzBhweWP4ybhxgjUUQ=</DigestValue></Reference><Reference URI="#SignedPropertiesId" Type="http://uri.etsi.org/01903/v1.3.2#SignedProperties"><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411" /><DigestValue>i9b1ZP3A0/XhQOr81I9IkmoVHLJ+W4AkrnH9cbbzDBQ=</DigestValue></Reference></SignedInfo><SignatureValue Id="ID_0057-SignatureValue">F3Rx2w5vbgu2LJFhdiU/Pix0pNLMhIyPoM5Nns5MfO8bpJzScwrA949g0oPKQQ7uB7d6XyRGlJniFmzuQD/Qcg==</SignatureValue><KeyInfo><X509Data><X509Certificate>MIIDCTCCArigAwIBAgITEgAhD7NoW9Jj9UxgTgAAACEPszAIBgYqhQMCAgMwfzEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBjcnlwdG9wcm8ucnUxCzAJBgNVBAYTAlJVMQ8wDQYDVQQHEwZNb3Njb3cxFzAVBgNVBAoTDkNSWVBUTy1QUk8gTExDMSEwHwYDVQQDExhDUllQVE8tUFJPIFRlc3QgQ2VudGVyIDIwHhcNMTcxMDAzMDIxOTUzWhcNMTgwMTAzMDIyOTUzWjAYMRYwFAYDVQQDDA1rb3ZhbGV2c2t5bWF4MGMwHAYGKoUDAgITMBIGByqFAwICJAAGByqFAwICHgEDQwAEQBcYck4c7gi2uWeliTQLTaLyvQsIhpX6ZCs7ilsRnso4MtTaJOPRvmcmP/iSPxUS6+98GLIM6lipQ9MwCcVyqemjggFwMIIBbDAOBgNVHQ8BAf8EBAMCBPAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFEH2DJ6n7CZ7w/YJDXvy91ek9Q9QMB8GA1UdIwQYMBaAFBUxfLCNGt5m1xWcSVKXFyS5AXqDMFkGA1UdHwRSMFAwTqBMoEqGSGh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L0NlcnRFbnJvbGwvQ1JZUFRPLVBSTyUyMFRlc3QlMjBDZW50ZXIlMjAyLmNybDCBqQYIKwYBBQUHAQEEgZwwgZkwYQYIKwYBBQUHMAKGVWh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L0NlcnRFbnJvbGwvdGVzdC1jYS0yMDE0X0NSWVBUTy1QUk8lMjBUZXN0JTIwQ2VudGVyJTIwMi5jcnQwNAYIKwYBBQUHMAGGKGh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L29jc3Avb2NzcC5zcmYwCAYGKoUDAgIDA0EAQBGOFlaArR4E+8lAoqZ0OCC2aTEahfK0ATvO+pLp1Xu+q//sUvFP8ZRVuEN+R1ETnf/KgfxUmq52rRI2GKNHWQ==</X509Certificate></X509Data></KeyInfo><Object><QualifyingProperties Target="#ID_0057-Signature" xmlns="http://uri.etsi.org/01903/v1.3.2#"><SignedProperties Id="SignedPropertiesId"><SignedSignatureProperties><SigningTime>2017-11-08T14:19:16.5295592+10:00</SigningTime><SigningCertificate><Cert><CertDigest><DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411" xmlns="http://www.w3.org/2000/09/xmldsig#" /><DigestValue xmlns="http://www.w3.org/2000/09/xmldsig#">JHqnGlxPTGgPemOPFRy2P+A+75H6uneXXfGkLicN3eA=</DigestValue></CertDigest><IssuerSerial><X509IssuerName xmlns="http://www.w3.org/2000/09/xmldsig#">CN=CRYPTO-PRO Test Center 2, O=CRYPTO-PRO LLC, L=Moscow, C=RU, E=support@cryptopro.ru</X509IssuerName><X509SerialNumber xmlns="http://www.w3.org/2000/09/xmldsig#">1200210FB3685BD263F54C604E000000210FB3</X509SerialNumber></IssuerSerial></Cert></SigningCertificate><SignaturePolicyIdentifier><SignaturePolicyImplied /></SignaturePolicyIdentifier></SignedSignatureProperties><SignedDataObjectProperties /></SignedProperties><UnsignedProperties><UnsignedSignatureProperties><SignatureTimeStamp><CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" xmlns="http://www.w3.org/2000/09/xmldsig#" /><EncapsulatedTimeStamp>2aABQUe9y9NXikwDn/grUP9p1bnG8j0AnQzQmNi6ANY=</EncapsulatedTimeStamp></SignatureTimeStamp></UnsignedSignatureProperties></UnsignedProperties></QualifyingProperties></Object></Signature></Charge></Document></Package></ImportRequest></RequestMessage></AppData></MessageData></GISGMPTransferMsg></s:Body></s:Envelope>


Подпись сущности (с форматированием):
Код:
<RequestMessage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                Id="ID_1" timestamp="0001-01-01T00:00:00" senderIdentifier="0000a1" senderRole="-1"
                xmlns="http://roskazna.ru/gisgmp/xsd/116/Message">
  <ImportRequest xmlns="http://roskazna.ru/gisgmp/xsd/116/MessageData">
    <Package xmlns="http://roskazna.ru/gisgmp/xsd/116/PGU_ImportRequest">
      <Document>
        <Charge Id="ID_0057" supplierBillID="0000016101005733301039993" billDate="0001-01-01"
                xmlns="http://roskazna.ru/gisgmp/xsd/116/Charge">
          <SupplierOrgInfo>
            <Name xmlns="http://roskazna.ru/gisgmp/xsd/116/Organization">Администратор начислений тест</Name>
            <INN xmlns="http://roskazna.ru/gisgmp/xsd/116/Organization">5678901231</INN>
            <KPP xmlns="http://roskazna.ru/gisgmp/xsd/116/Organization">567890121</KPP>
            <Account xmlns="http://roskazna.ru/gisgmp/xsd/116/Organization">
              <AccountNumber>40602810000380000020</AccountNumber>
              <Bank>
                <BIK>044523331</BIK>
              </Bank>
            </Account>
          </SupplierOrgInfo>
          <BillFor>Штраф</BillFor>
          <TotalAmount>10000</TotalAmount>
          <ChangeStatus meaning="1" xmlns="http://roskazna.ru/gisgmp/xsd/116/Common" />
          <KBK>15651111111111111113</KBK>
          <OKTMO>12345673</OKTMO>
          <BudgetIndex>
            <Status xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">01</Status>
            <Purpose xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">0</Purpose>
            <TaxPeriod xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">0</TaxPeriod>
            <TaxDocNumber xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">12345</TaxDocNumber>
            <TaxDocDate xmlns="http://roskazna.ru/gisgmp/xsd/116/BudgetIndex">0</TaxDocDate>
          </BudgetIndex>
          <AltPayerIdentifier>0100000000023456789999643</AltPayerIdentifier>
          <TreasureBranch>УФК по г. Москва</TreasureBranch>
          <Signature Id="ID_0057-Signature" xmlns="http://www.w3.org/2000/09/xmldsig#">
            <SignedInfo>
              <CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
              <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411" />
              <Reference URI="#ID_0057">
                <Transforms>
                  <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
                  <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
                </Transforms>
                <DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411" />
                <DigestValue>mLaNKKL8A8w4wx1FL5OuA0aDNNzBhweWP4ybhxgjUUQ=</DigestValue>
              </Reference>
              <Reference URI="#SignedPropertiesId" Type="http://uri.etsi.org/01903/v1.3.2#SignedProperties">
                <Transforms>
                  <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
                  <Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
                </Transforms>
                <DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411" />
                <DigestValue>i9b1ZP3A0/XhQOr81I9IkmoVHLJ+W4AkrnH9cbbzDBQ=</DigestValue>
              </Reference>
            </SignedInfo>
            <SignatureValue Id="ID_0057-SignatureValue">F3Rx2w5vbgu2LJFhdiU/Pix0pNLMhIyPoM5Nns5MfO8bpJzScwrA949g0oPKQQ7uB7d6XyRGlJniFmzuQD/Qcg==</SignatureValue>
            <KeyInfo>
              <X509Data>
                <X509Certificate>MIIDCTCCArigAwIBAgITEgAhD7NoW9Jj9UxgTgAAACEPszAIBgYqhQMCAgMwfzEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBjcnlwdG9wcm8ucnUxCzAJBgNVBAYTAlJVMQ8wDQYDVQQHEwZNb3Njb3cxFzAVBgNVBAoTDkNSWVBUTy1QUk8gTExDMSEwHwYDVQQDExhDUllQVE8tUFJPIFRlc3QgQ2VudGVyIDIwHhcNMTcxMDAzMDIxOTUzWhcNMTgwMTAzMDIyOTUzWjAYMRYwFAYDVQQDDA1rb3ZhbGV2c2t5bWF4MGMwHAYGKoUDAgITMBIGByqFAwICJAAGByqFAwICHgEDQwAEQBcYck4c7gi2uWeliTQLTaLyvQsIhpX6ZCs7ilsRnso4MtTaJOPRvmcmP/iSPxUS6+98GLIM6lipQ9MwCcVyqemjggFwMIIBbDAOBgNVHQ8BAf8EBAMCBPAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFEH2DJ6n7CZ7w/YJDXvy91ek9Q9QMB8GA1UdIwQYMBaAFBUxfLCNGt5m1xWcSVKXFyS5AXqDMFkGA1UdHwRSMFAwTqBMoEqGSGh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L0NlcnRFbnJvbGwvQ1JZUFRPLVBSTyUyMFRlc3QlMjBDZW50ZXIlMjAyLmNybDCBqQYIKwYBBQUHAQEEgZwwgZkwYQYIKwYBBQUHMAKGVWh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L0NlcnRFbnJvbGwvdGVzdC1jYS0yMDE0X0NSWVBUTy1QUk8lMjBUZXN0JTIwQ2VudGVyJTIwMi5jcnQwNAYIKwYBBQUHMAGGKGh0dHA6Ly90ZXN0Y2EuY3J5cHRvcHJvLnJ1L29jc3Avb2NzcC5zcmYwCAYGKoUDAgIDA0EAQBGOFlaArR4E+8lAoqZ0OCC2aTEahfK0ATvO+pLp1Xu+q//sUvFP8ZRVuEN+R1ETnf/KgfxUmq52rRI2GKNHWQ==</X509Certificate>
              </X509Data>
            </KeyInfo>
            <Object>
              <QualifyingProperties Target="#ID_0057-Signature" xmlns="http://uri.etsi.org/01903/v1.3.2#">
                <SignedProperties Id="SignedPropertiesId">
                  <SignedSignatureProperties>
                    <SigningTime>2017-11-08T14:19:16.5295592+10:00</SigningTime>
                    <SigningCertificate>
                      <Cert>
                        <CertDigest>
                          <DigestMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#gostr3411"
                                        xmlns="http://www.w3.org/2000/09/xmldsig#" />
                          <DigestValue xmlns="http://www.w3.org/2000/09/xmldsig#">JHqnGlxPTGgPemOPFRy2P+A+75H6uneXXfGkLicN3eA=</DigestValue>
                        </CertDigest>
                        <IssuerSerial>
                          <X509IssuerName xmlns="http://www.w3.org/2000/09/xmldsig#">CN=CRYPTO-PRO Test Center 2, O=CRYPTO-PRO LLC, L=Moscow, C=RU, E=support@cryptopro.ru</X509IssuerName>
                          <X509SerialNumber xmlns="http://www.w3.org/2000/09/xmldsig#">1200210FB3685BD263F54C604E000000210FB3</X509SerialNumber>
                        </IssuerSerial>
                      </Cert>
                    </SigningCertificate>
                    <SignaturePolicyIdentifier>
                      <SignaturePolicyImplied />
                    </SignaturePolicyIdentifier>
                  </SignedSignatureProperties>
                  <SignedDataObjectProperties />
                </SignedProperties>
                <UnsignedProperties>
                  <UnsignedSignatureProperties>
                    <SignatureTimeStamp>
                      <CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"
                                              xmlns="http://www.w3.org/2000/09/xmldsig#" />
                      <EncapsulatedTimeStamp>2aABQUe9y9NXikwDn/grUP9p1bnG8j0AnQzQmNi6ANY=</EncapsulatedTimeStamp>
                    </SignatureTimeStamp>
                  </UnsignedSignatureProperties>
                </UnsignedProperties>
              </QualifyingProperties>
            </Object>
          </Signature>
        </Charge>
      </Document>
    </Package>
  </ImportRequest>
</RequestMessage>


За основу взял исходники Microsoft.Xades и код из этой темы. Порядок формирования подписи Xades-T:
После вычисления основной сигнатуры, вычисляю хэш-сумму элемента SignatureValue. Функция:

Код:
private static byte[] ComputeGost3411HashValueOfXmlElement(XmlElement source)
        {
            var xmlDocument = new XmlDocument {PreserveWhitespace = true};
            xmlDocument.LoadXml(source.OuterXml);

            var transform = new XmlDsigC14NTransform(false);
            transform.LoadInput(xmlDocument);
            var stream = (Stream) transform.GetOutput(typeof(Stream));
            var canonicalizedXml = new StreamReader(stream).ReadToEnd();

            var hashAlgorithm = HashAlgorithm.Create("GOST3411");
            return hashAlgorithm.ComputeHash(Encoding.UTF8.GetBytes(canonicalizedXml));
        }


Штамп времени получаю так (использую библиотеку BouncyCastle):

Код:
private static byte[] GetTimeStamp(byte[] digest)
        {
            var reqGen = new TimeStampRequestGenerator();
            reqGen.SetCertReq(true);
            var request = reqGen.Generate(TspAlgorithms.Gost3411, digest, BigInteger.ValueOf(100));
            var reqData = request.GetEncoded();

            var httpReq = (HttpWebRequest)WebRequest.Create("http://testca.cryptopro.ru/tsp/tsp.srf"); 
            httpReq.Method = "POST";
            httpReq.ContentType = "application/timestamp-query";
            httpReq.ContentLength = reqData.Length;

            // Write the request content
            var reqStream = httpReq.GetRequestStream();
            reqStream.Write(reqData, 0, reqData.Length);
            reqStream.Close();

            var httpResp = (HttpWebResponse)httpReq.GetResponse();

            // Read the response
            Stream respStream = new BufferedStream(httpResp.GetResponseStream());
            var response = new TimeStampResponse(respStream);
            respStream.Close();

            return response.GetEncoded();
        }


Полученное значение вставляю в элемент EncapsulatedTimeStamp Convert.ToBase64String(timeStamp)

Подпись сущности и подпись soap сообщения формируются вроде как правильно. Проверял с помощью
http://smev.gosuslugi.ru/portal/services-tools.jsp
http://dss.cryptopro.ru/Verify/Verify/
Но ГИС ГМП её не принимает
Ответ сервиса

Код:
<mes:ResponseMessage xmlns:mes="http://roskazna.ru/gisgmp/xsd/116/Message" xmlns:rev="http://smev.gosuslugi.ru/rev120315" xmlns:smev="http://roskazna.ru/gisgmp/02000000/SmevGISGMPService/" Id="u_df1de4d1-fa08-45d8-a0de-7cea3ce10f16" rqId="ID_1" senderIdentifier="950000" timestamp="2017-11-08T08:27:04.895+03:00">
            <mes1:Ticket xmlns:mes1="http://roskazna.ru/gisgmp/xsd/116/MessageData">
              <tic:RequestProcessResult xmlns:tic="http://roskazna.ru/gisgmp/xsd/116/Ticket">
                <err:ResultCode xmlns:err="http://roskazna.ru/gisgmp/xsd/116/ErrInfo">0</err:ResultCode>
                <err:ResultData xmlns:err="http://roskazna.ru/gisgmp/xsd/116/ErrInfo">ID_d0fded67-d36d-444f-8966-9d29993a895e</err:ResultData>
              </tic:RequestProcessResult>
            </mes1:Ticket>
          </mes:ResponseMessage>


Не понятно, что ему не нравится. Какие ещё есть способы проверки подписи Xades-T?

У меня для Xadex-T используется xmlns="http://uri.etsi.org/01903/v1.3.2# Это правильно? Или нужно использовать v1.1.1? Поделитесь рабочим запросом с подписанной сущностью к ГИС ГМП для примера.

Где ошибка? Может быть причина в том, что мы пока не отправляли в ГИС ГМП заявку на участие в тестировании (возможно нужны идентификаторы, зарегистрированные сертификаты и т.п.)?

Offline michurin  
#82 Оставлено : 8 ноября 2017 г. 11:29:50(UTC)
michurin

Статус: Участник

Группы: Участники
Зарегистрирован: 23.05.2017(UTC)
Сообщений: 11

А с чего вы взяли, что ему что-то не нравится?
Номер пакета вам вернули, можете проверять статус теперь.
Offline kovalevskymax  
#83 Оставлено : 8 ноября 2017 г. 11:36:59(UTC)
kovalevskymax

Статус: Новичок

Группы: Участники
Зарегистрирован: 30.10.2017(UTC)
Сообщений: 2

Код:
<err:ResultCode xmlns:err="http://roskazna.ru/gisgmp/xsd/116/ErrInfo">0</err:ResultCode>


Меня смутило ErrInfo. Благодарю за подсказку
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
9 Страницы«<789
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.