1. 11 3月, 2021 1 次提交
  2. 23 3月, 2020 1 次提交
  3. 11 3月, 2020 1 次提交
  4. 27 2月, 2020 1 次提交
  5. 06 2月, 2020 1 次提交
  6. 28 9月, 2019 2 次提交
    • D
      Reorganize local header files · b5acbf91
      Dr. Matthias St. Pierre 提交于
      Apart from public and internal header files, there is a third type called
      local header files, which are located next to source files in the source
      directory. Currently, they have different suffixes like
      
        '*_lcl.h', '*_local.h', or '*_int.h'
      
      This commit changes the different suffixes to '*_local.h' uniformly.
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/9681)
      b5acbf91
    • D
      Reorganize private crypto header files · 0c994d54
      Dr. Matthias St. Pierre 提交于
      Currently, there are two different directories which contain internal
      header files of libcrypto which are meant to be shared internally:
      
      While header files in 'include/internal' are intended to be shared
      between libcrypto and libssl, the files in 'crypto/include/internal'
      are intended to be shared inside libcrypto only.
      
      To make things complicated, the include search path is set up in such
      a way that the directive #include "internal/file.h" could refer to
      a file in either of these two directoroes. This makes it necessary
      in some cases to add a '_int.h' suffix to some files to resolve this
      ambiguity:
      
        #include "internal/file.h"      # located in 'include/internal'
        #include "internal/file_int.h"  # located in 'crypto/include/internal'
      
      This commit moves the private crypto headers from
      
        'crypto/include/internal'  to  'include/crypto'
      
      As a result, the include directives become unambiguous
      
        #include "internal/file.h"       # located in 'include/internal'
        #include "crypto/file.h"         # located in 'include/crypto'
      
      hence the superfluous '_int.h' suffixes can be stripped.
      
      The files 'store_int.h' and 'store.h' need to be treated specially;
      they are joined into a single file.
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/9681)
      0c994d54
  7. 10 9月, 2019 1 次提交
  8. 05 9月, 2019 1 次提交
  9. 17 8月, 2019 1 次提交
  10. 14 8月, 2019 1 次提交
  11. 18 7月, 2019 1 次提交
  12. 15 7月, 2019 1 次提交
  13. 08 7月, 2019 1 次提交
  14. 02 7月, 2019 1 次提交
  15. 28 5月, 2019 1 次提交
  16. 09 4月, 2019 1 次提交
  17. 26 2月, 2019 1 次提交
  18. 01 2月, 2019 3 次提交
  19. 20 12月, 2018 1 次提交
    • K
      Admit unknown pkey types at security level 0 · ea7d2c58
      Ken Goldman 提交于
      The check_key_level() function currently fails when the public key
      cannot be extracted from the certificate because its algorithm is not
      supported.  However, the public key is not needed for the last
      certificate in the chain.
      
      This change moves the check for level 0 before the check for a
      non-NULL public key.
      
      For background, this is the TPM 1.2 endorsement key certificate.
      I.e., this is a real application with millions of certificates issued.
      The key is an RSA-2048 key.
      
      The TCG (for a while) specified
      
           Public Key Algorithm: rsaesOaep
      
      rather than the commonly used
      
           Public Key Algorithm: rsaEncryption
      
      because the key is an encryption key rather than a signing key.
      The X509 certificate parser fails to get the public key.
      Reviewed-by: NViktor Dukhovni <viktor@openssl.org>
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/7906)
      ea7d2c58
  20. 18 10月, 2018 2 次提交
    • V
      Apply self-imposed path length also to root CAs · a190ea8a
      Viktor Dukhovni 提交于
      Also, some readers of the code find starting the count at 1 for EE
      cert confusing (since RFC5280 counts only non-self-issued intermediate
      CAs, but we also counted the leaf).  Therefore, never count the EE
      cert, and adjust the path length comparison accordinly.  This may
      be more clear to the reader.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      (cherry picked from commit dc5831da59e9bfad61ba425d886a0b06ac160cd6)
      a190ea8a
    • V
      Only CA certificates can be self-issued · bb692394
      Viktor Dukhovni 提交于
      At the bottom of https://tools.ietf.org/html/rfc5280#page-12 and
      top of https://tools.ietf.org/html/rfc5280#page-13 (last paragraph
      of above https://tools.ietf.org/html/rfc5280#section-3.3), we see:
      
         This specification covers two classes of certificates: CA
         certificates and end entity certificates.  CA certificates may be
         further divided into three classes: cross-certificates, self-issued
         certificates, and self-signed certificates.  Cross-certificates are
         CA certificates in which the issuer and subject are different
         entities.  Cross-certificates describe a trust relationship between
         the two CAs.  Self-issued certificates are CA certificates in which
         the issuer and subject are the same entity.  Self-issued certificates
         are generated to support changes in policy or operations.  Self-
         signed certificates are self-issued certificates where the digital
         signature may be verified by the public key bound into the
         certificate.  Self-signed certificates are used to convey a public
         key for use to begin certification paths.  End entity certificates
         are issued to subjects that are not authorized to issue certificates.
      
      that the term "self-issued" is only applicable to CAs, not end-entity
      certificates.  In https://tools.ietf.org/html/rfc5280#section-4.2.1.9
      the description of path length constraints says:
      
         The pathLenConstraint field is meaningful only if the cA boolean is
         asserted and the key usage extension, if present, asserts the
         keyCertSign bit (Section 4.2.1.3).  In this case, it gives the
         maximum number of non-self-issued intermediate certificates that may
         follow this certificate in a valid certification path.  (Note: The
         last certificate in the certification path is not an intermediate
         certificate, and is not included in this limit.  Usually, the last
         certificate is an end entity certificate, but it can be a CA
         certificate.)
      
      This makes it clear that exclusion of self-issued certificates from
      the path length count applies only to some *intermediate* CA
      certificates.  A leaf certificate whether it has identical issuer
      and subject or whether it is a CA or not is never part of the
      intermediate certificate count.  The handling of all leaf certificates
      must be the same, in the case of our code to post-increment the
      path count by 1, so that we ultimately reach a non-self-issued
      intermediate it will be the first one (not zeroth) in the chain
      of intermediates.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      (cherry picked from commit ed422a2d0196ada0f5c1b6e296f4a4e5ed69577f)
      bb692394
  21. 24 9月, 2018 1 次提交
  22. 11 9月, 2018 1 次提交
  23. 18 8月, 2018 1 次提交
  24. 07 8月, 2018 2 次提交
  25. 20 6月, 2018 1 次提交
  26. 11 6月, 2018 1 次提交
  27. 30 5月, 2018 1 次提交
  28. 29 5月, 2018 1 次提交
  29. 23 5月, 2018 1 次提交
  30. 21 5月, 2018 1 次提交
  31. 20 5月, 2018 1 次提交
  32. 11 5月, 2018 1 次提交
  33. 03 5月, 2018 1 次提交
  34. 01 5月, 2018 2 次提交