Подписание файла JAVA
(0 чел.) 
  • Страница:
  • 1
  • 2

ТЕМА: Подписание файла JAVA

Re: Подписание файла JAVA 1 год, 4 мес. назад #3847

  • urmnurbo
  • Осваиваюсь на форуме
  • Постов: 26
  • Репутация: 0
Декодировал хэш, получил:
text_2:

SEQUENCE {
   OBJECTIDENTIFIER 1.2.840.113549.1.7.2 (signedData)
   [0] {
      SEQUENCE {
         INTEGER 0x01 (1 decimal)
         SET {
            SEQUENCE {
               OBJECTIDENTIFIER 2.16.840.1.101.3.4.2.1 (sha256)
               NULL 
            }
         }
         SEQUENCE {
            OBJECTIDENTIFIER 1.2.840.113549.1.7.1 (data)
            [0] {
               OCTETSTRING 6a6176612e696f2e4275666665726564496e70757453747265616d403237376330663231
            }
         }
         SET {
            SEQUENCE {
               INTEGER 0x01 (1 decimal)
               SEQUENCE {
                  SEQUENCE {
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.6 (countryName)
                           PrintableString 'KZ'
                        }
                     }
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.7 (localityName)
                           UTF8String 'АСТАНА'
                        }
                     }
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.8 (stateOrProvinceName)
                           UTF8String 'АСТАНА'
                        }
                     }
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.10 (organizationName)
                           UTF8String 'РМК «МЕМЛЕКЕТТІК ТЕХНИКАЛЫҚ ҚЫЗМЕТ»'
                        }
                     }
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.3 (commonName)
                           UTF8String 'ҰЛТТЫҚ КУӘЛАНДЫРУШЫ ОРТАЛЫҚ (RSA)'
                        }
                     }
                  }
                  INTEGER 0x6b385a943adb3da68225ca84d329edf635e6519e
               }
               SEQUENCE {
                  OBJECTIDENTIFIER 2.16.840.1.101.3.4.2.1 (sha256)
                  NULL 
               }
               [0] {
                  SEQUENCE {
                     OBJECTIDENTIFIER 1.2.840.113549.1.9.3 (contentType)
                     SET {
                        OBJECTIDENTIFIER 1.2.840.113549.1.7.1 (data)
                     }
                  }
                  SEQUENCE {
                     OBJECTIDENTIFIER 1.2.840.113549.1.9.5 (signingTime)
                     SET {
                        UTCTime '180328044336Z'
                     }
                  }
                  SEQUENCE {
                     OBJECTIDENTIFIER 1.2.840.113549.1.9.4 (messageDigest)
                     SET {
                        OCTETSTRING 6f496fcfe46799d65d01e7efe32634e19027db83970f548e5358234d8e90ccbc
                     }
                  }
               }
               SEQUENCE {
                  OBJECTIDENTIFIER 1.2.840.113549.1.1.11 (sha256WithRSAEncryption)
                  NULL 
               }
               OCTETSTRING 7a3b38761634dfe5721b71f03609c8d51d9986a035b73da29d12500f517991ae9d9874a36baf2d230eea21785195b9975943b097f69c468948032c645717a05c31e157e7a78cb725ce9fd9aeec314350ae84927e23c2de227b297804823f44a747191655101d3a73dee053dd2db45c688fb7b1a5410dff29fc48bb19c30fc77565785df94afc62f648ddb45153948392766510fe92db7d9069bdec8a998a7e201eb28e7e1bb73dd308c392246d79c5e346c895c6d45775599efa41242fc0b31fad1face06676d7b237926a49dfc057d74b3ab6e13f27587fa61169ce726db21dd3b829a684acbd43b9f76446af7d34dcc129764db267ab1d250469f87291b39e
            }
         }
      }
   }
}


text_3:

SEQUENCE {
   OBJECTIDENTIFIER 1.2.840.113549.1.7.2 (signedData)
   [0] {
      SEQUENCE {
         INTEGER 0x01 (1 decimal)
         SET {
            SEQUENCE {
               OBJECTIDENTIFIER 2.16.840.1.101.3.4.2.1 (sha256)
               NULL 
            }
         }
         SEQUENCE {
            OBJECTIDENTIFIER 1.2.840.113549.1.7.1 (data)
            [0] {
               OCTETSTRING 6a6176612e696f2e4275666665726564496e70757453747265616d403237376330663231
            }
         }
         SET {
            SEQUENCE {
               INTEGER 0x01 (1 decimal)
               SEQUENCE {
                  SEQUENCE {
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.6 (countryName)
                           PrintableString 'KZ'
                        }
                     }
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.7 (localityName)
                           UTF8String 'АСТАНА'
                        }
                     }
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.8 (stateOrProvinceName)
                           UTF8String 'АСТАНА'
                        }
                     }
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.10 (organizationName)
                           UTF8String 'РМК «МЕМЛЕКЕТТІК ТЕХНИКАЛЫҚ ҚЫЗМЕТ»'
                        }
                     }
                     SET {
                        SEQUENCE {
                           OBJECTIDENTIFIER 2.5.4.3 (commonName)
                           UTF8String 'ҰЛТТЫҚ КУӘЛАНДЫРУШЫ ОРТАЛЫҚ (RSA)'
                        }
                     }
                  }
                  INTEGER 0x6b385a943adb3da68225ca84d329edf635e6519e
               }
               SEQUENCE {
                  OBJECTIDENTIFIER 2.16.840.1.101.3.4.2.1 (sha256)
                  NULL 
               }
               [0] {
                  SEQUENCE {
                     OBJECTIDENTIFIER 1.2.840.113549.1.9.3 (contentType)
                     SET {
                        OBJECTIDENTIFIER 1.2.840.113549.1.7.1 (data)
                     }
                  }
                  SEQUENCE {
                     OBJECTIDENTIFIER 1.2.840.113549.1.9.5 (signingTime)
                     SET {
                        UTCTime '180328044258Z'
                     }
                  }
                  SEQUENCE {
                     OBJECTIDENTIFIER 1.2.840.113549.1.9.4 (messageDigest)
                     SET {
                        OCTETSTRING 6f496fcfe46799d65d01e7efe32634e19027db83970f548e5358234d8e90ccbc
                     }
                  }
               }
               SEQUENCE {
                  OBJECTIDENTIFIER 1.2.840.113549.1.1.11 (sha256WithRSAEncryption)
                  NULL 
               }
               OCTETSTRING 59da1ca1a5f05f66e8f81a4aa38df31e48a9b1cc9534ec28643a17ae1a2e4a09edab2b51b8753d7631f020241065c282392bd0291fc629027305b073d802323c1f7c56721440ab02d0b422268946f218e0d9ffe2d61a54eb0d6fa88f25aefe74a56b30e0949368b9d3919b9763de5a416732e841ea758ea412dcf694bff88c6ab13708d0af455a80b2a93f071706e4c7992c85dbb9240fc5b0c9683f0c7ee47bd748b46f510a4e1bc49ee84148353ec32c8c0b1d049d3a61b5cff74c54114c6bbbba529a36eb8de91d19d75a39a9a7d18a599ea45127b6995c35503be61b75d80688e3e82b304c90b416e9ad2f1b49fe28053c09a0531f6e5216c5bebe7b1fe3
            }
         }
      }
   }
}



Они не одинаковы, так как в хэш информация о дате разная:
SEQUENCE {
                     OBJECTIDENTIFIER 1.2.840.113549.1.9.5 (signingTime)
                     SET {
                        UTCTime '180328044336Z'
                     }
                  } 


SEQUENCE {
                     OBJECTIDENTIFIER 1.2.840.113549.1.9.5 (signingTime)
                     SET {
                        UTCTime '180328044258Z'
                     }
                  }


и в конце
SEQUENCE {
                  OBJECTIDENTIFIER 1.2.840.113549.1.1.11 (sha256WithRSAEncryption)
                  NULL 
               }
               OCTETSTRING  
разная

Re: Подписание файла JAVA 1 год, 4 мес. назад #3850

  • Murat Seisenov
  • Модератор
  • Постов: 391
  • Репутация: 19
Это не хэш. Это вы декодировали саму подпись. Хэш декодировать никак не получится, это просто набор байтов.
При использовании алгоритма хэширования sha-256 значение хэша будет всегда одинаковым.
Значение хэша в структуре подписи CMS c OID: 1.2.840.113549.1.9.4 (messageDigest)
Модератор
  • Страница:
  • 1
  • 2
FaLang translation system by Faboba