1. 10 8月, 2020 1 次提交
  2. 24 6月, 2020 2 次提交
  3. 16 4月, 2020 1 次提交
  4. 07 2月, 2020 1 次提交
  5. 29 1月, 2020 1 次提交
  6. 25 1月, 2020 1 次提交
  7. 23 1月, 2020 1 次提交
  8. 12 1月, 2020 1 次提交
  9. 18 12月, 2019 1 次提交
  10. 14 11月, 2019 1 次提交
  11. 18 10月, 2019 1 次提交
  12. 14 10月, 2019 1 次提交
  13. 11 10月, 2019 1 次提交
  14. 10 10月, 2019 1 次提交
    • R
      Rework how our providers are built · dec95d75
      Richard Levitte 提交于
      We put almost everything in these internal static libraries:
      
      libcommon               Block building code that can be used by all
                              our implementations, legacy and non-legacy
                              alike.
      libimplementations      All non-legacy algorithm implementations and
                              only them.  All the code that ends up here is
                              agnostic to the definitions of FIPS_MODE.
      liblegacy               All legacy implementations.
      
      libnonfips              Support code for the algorithm implementations.
                              Built with FIPS_MODE undefined.  Any code that
                              checks that FIPS_MODE isn't defined must end
                              up in this library.
      libfips                 Support code for the algorithm implementations.
                              Built with FIPS_MODE defined.  Any code that
                              checks that FIPS_MODE is defined must end up
                              in this library.
      
      The FIPS provider module is built from providers/fips/*.c and linked
      with libimplementations, libcommon and libfips.
      
      The Legacy provider module is built from providers/legacy/*.c and
      linked with liblegacy, libcommon and libcrypto.
      If module building is disabled, the object files from liblegacy and
      libcommon are added to libcrypto and the Legacy provider becomes a
      built-in provider.
      
      The Default provider module is built-in, so it ends up being linked
      with libimplementations, libcommon and libnonfips.  For libcrypto in
      form of static library, the object files from those other libraries
      are simply being added to libcrypto.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/10088)
      dec95d75
  15. 04 10月, 2019 2 次提交
  16. 06 9月, 2019 1 次提交
  17. 26 8月, 2019 1 次提交
  18. 16 8月, 2019 2 次提交
  19. 22 7月, 2019 2 次提交
    • R
      Add evp_keymgmt_export_to_provider(), for key transfer between providers · 70a1f7b4
      Richard Levitte 提交于
      This function is used to transport private key materia from whatever
      is already attached to the EVP_PKEY to the new provider, using key
      data export and import functionality.
      
      If a legacy lower level key has been assigned to the EVP_PKEY, we use
      its data to create a provider side key, and thereby have a bridge
      between old style public key types and the EVP_PKEY on providers.
      
      If successful, this function returns a reference to the appropriate
      provider side data for the key.
      
      This can be used by any operation that wants to use this key.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/9312)
      70a1f7b4
    • R
      Add basic EVP_KEYMGMT API and libcrypto <-> provider interface · a94a3e0d
      Richard Levitte 提交于
      The idea with the key management "operation" is to support the
      following set of functionality:
      
      - Key domain parameter generation
      - Key domain parameter import
      - Key domain parameter export
      
      - Key generation
      - Key import
      - Key export
      - Key loading (HSM / hidden key support)
      
      With that set of function, we can support handling domain parameters
      on one provider, key handling on another, and key usage on a third,
      with transparent export / import of applicable data.  Of course, if a
      provider doesn't offer export / import functionality, then all
      operations surrounding a key must be performed with the same
      provider.
      
      This method also avoids having to do anything special with legacy
      assignment of libcrypto key structures, i.e. EVP_PKEY_assign_RSA().
      They will simply be used as keys to be exported from whenever they are
      used with provider based operations.
      
      This change only adds the EVP_KEYMGMT API and the libcrypto <->
      provider interface.  Further changes will integrate them into existing
      libcrypto functionality.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/9312)
      a94a3e0d
  20. 16 7月, 2019 1 次提交
  21. 11 7月, 2019 1 次提交
  22. 15 6月, 2019 1 次提交
  23. 23 5月, 2019 1 次提交
  24. 03 5月, 2019 1 次提交
  25. 18 3月, 2019 1 次提交
    • R
      Add generic EVP method fetcher · c13d2ab4
      Richard Levitte 提交于
      This is an interface between Core dispatch table fetching and
      EVP_{method}_fetch().  All that's needed from the diverse method
      fetchers are the functions to create a method structure from a
      dispatch table, a function that ups the method reference counter and a
      function to free the method (in case of failure).
      
      This routine is internal to the EVP API andis therefore only made
      accessible within crypto/evp, by including evp_locl.h
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/8341)
      c13d2ab4
  26. 13 2月, 2019 1 次提交
  27. 29 10月, 2018 3 次提交
  28. 06 8月, 2018 1 次提交
  29. 06 11月, 2017 2 次提交
  30. 31 10月, 2017 1 次提交
  31. 30 8月, 2017 1 次提交
  32. 15 8月, 2017 1 次提交
  33. 26 7月, 2017 1 次提交