Ricerca del campo EMS-PKCS1-v1_5 DigestAlgorithm nel certificato x509

2

Dal RFC - link

A.2.4 RSASSA-PKCS1-v1_5

Per ogni OID, il campo parametri associato a questo OID in    un valore di tipo AlgorithmIdentifier deve avere un valore di tipo NULL.    L'OID deve essere scelto in base alla seguente tabella:

  Hash algorithm   OID
  --------------------------------------------------------
  MD2              md2WithRSAEncryption    ::= {pkcs-1 2}
  MD5              md5WithRSAEncryption    ::= {pkcs-1 4}
  SHA-1            sha1WithRSAEncryption   ::= {pkcs-1 5}
  SHA-256          sha256WithRSAEncryption ::= {pkcs-1 11}
  SHA-384          sha384WithRSAEncryption ::= {pkcs-1 12}
  SHA-512          sha512WithRSAEncryption ::= {pkcs-1 13}

Quando eseguo open asn1parse su un certificato, posso trovare questo campo

  984:d=2  hl=2 l=   9 prim: OBJECT            :sha256WithRSAEncryption
  995:d=2  hl=2 l=   0 prim: NULL              
  997:d=1  hl=4 l= 257 prim: BIT STRING        

Tuttavia, vi è anche un campo DigestAlgorithm nell'appendice RFC

Il metodo di codifica EMSA-PKCS1-v1_5 include un valore di tipo ASN.1    DigestInfo, dove il tipo DigestInfo ha la sintassi

  DigestInfo ::= SEQUENCE {
      digestAlgorithm DigestAlgorithm,
      digest OCTET STRING
  }

digestAlgorithm identifica la funzione di hash e deve essere un    ID algoritmo con un OID nel set PKCS1-v1-5DigestAlgorithms. Per    una discussione sulle funzioni di hash supportate, vedi Appendice B.1.

  DigestAlgorithm ::=
      AlgorithmIdentifier { {PKCS1-v1-5DigestAlgorithms} }

  PKCS1-v1-5DigestAlgorithms    ALGORITHM-IDENTIFIER ::= {
      { OID id-md2 PARAMETERS NULL    }|
      { OID id-md5 PARAMETERS NULL    }|
      { OID id-sha1 PARAMETERS NULL   }|
      { OID id-sha256 PARAMETERS NULL }|
      { OID id-sha384 PARAMETERS NULL }|
      { OID id-sha512 PARAMETERS NULL }

Come posso individuare questo parametro usando openssl asn1parse o qualsiasi altro strumento o utility?

    
posta user93353 26.02.2016 - 07:00
fonte

0 risposte