1. 16 5月, 2005 1 次提交
    • B
      Implement fixed-window exponentiation to mitigate hyper-threading · 46a64376
      Bodo Möller 提交于
      timing attacks.
      
      BN_FLG_EXP_CONSTTIME requests this algorithm, and this done by default for
      RSA/DSA/DH private key computations unless
      RSA_FLAG_NO_EXP_CONSTTIME/DSA_FLAG_NO_EXP_CONSTTIME/
      DH_FLAG_NO_EXP_CONSTTIME is set.
      
      Submitted by: Matthew D Wood
      Reviewed by: Bodo Moeller
      46a64376
  2. 11 5月, 2005 1 次提交
    • B
      Fix more error codes. · 8afca8d9
      Bodo Möller 提交于
      (Also improve util/ck_errf.pl script, and occasionally
      fix source code formatting.)
      8afca8d9
  3. 27 4月, 2005 1 次提交
    • N
      some updates for the blinding code; summary: · 800e400d
      Nils Larsch 提交于
      - possibility of re-creation of the blinding parameters after a
        fixed number of uses (suggested by Bodo)
      - calculatition of the rsa::e in case it's absent and p and q
        are present (see bug report #785)
      - improve the performance when if one rsa structure is shared by
        more than a thread (see bug report #555)
      - fix the problem described in bug report #827
      - hide the definition ot the BN_BLINDING structure in bn_blind.c
      800e400d
  4. 31 3月, 2005 1 次提交
  5. 18 5月, 2004 1 次提交
  6. 26 4月, 2004 1 次提交
  7. 20 4月, 2004 1 次提交
    • G
      Reduce header interdependencies, initially in engine.h (the rest of the · 3a87a9b9
      Geoff Thorpe 提交于
      changes are the fallout). As this could break source code that doesn't
      directly include headers for interfaces it uses, changes to recursive
      includes are covered by the OPENSSL_NO_DEPRECATED symbol. It's better to
      define this when building and using openssl, and then adapt code where
      necessary - this is how to stay current. However the mechanism exists for
      the lethargic.
      3a87a9b9
  8. 25 3月, 2004 1 次提交
    • G
      By adding a BN_CTX parameter to the 'rsa_mod_exp' callback, private key · 46ef873f
      Geoff Thorpe 提交于
      operations no longer require two distinct BN_CTX structures. This may put
      more "strain" on the current BN_CTX implementation (which has a fixed limit
      to the number of variables it will hold), but so far this limit is not
      triggered by any of the tests pass and I will be changing BN_CTX in the
      near future to avoid this problem anyway.
      
      This also changes the default RSA implementation code to use the BN_CTX in
      favour of initialising some of its variables locally in each function.
      46ef873f
  9. 07 5月, 2003 1 次提交
  10. 05 5月, 2003 1 次提交
  11. 16 4月, 2003 1 次提交
  12. 21 3月, 2003 1 次提交
  13. 31 1月, 2003 2 次提交
  14. 07 1月, 2003 1 次提交
  15. 08 12月, 2002 1 次提交
    • G
      This is a first-cut at improving the callback mechanisms used in · e9224c71
      Geoff Thorpe 提交于
      key-generation and prime-checking functions. Rather than explicitly passing
      callback functions and caller-defined context data for the callbacks, a new
      structure BN_GENCB is defined that encapsulates this; a pointer to the
      structure is passed to all such functions instead.
      
      This wrapper structure allows the encapsulation of "old" and "new" style
      callbacks - "new" callbacks return a boolean result on the understanding
      that returning FALSE should terminate keygen/primality processing.  The
      BN_GENCB abstraction will allow future callback modifications without
      needing to break binary compatibility nor change the API function
      prototypes. The new API functions have been given names ending in "_ex" and
      the old functions are implemented as wrappers to the new ones.  The
      OPENSSL_NO_DEPRECATED symbol has been introduced so that, if defined,
      declaration of the older functions will be skipped. NB: Some
      openssl-internal code will stick with the older callbacks for now, so
      appropriate "#undef" logic will be put in place - this is in case the user
      is *building* openssl (rather than *including* its headers) with this
      symbol defined.
      
      There is another change in the new _ex functions; the key-generation
      functions do not return key structures but operate on structures passed by
      the caller, the return value is a boolean. This will allow for a smoother
      transition to having key-generation as "virtual function" in the various
      ***_METHOD tables.
      e9224c71
  16. 26 11月, 2002 1 次提交
  17. 14 6月, 2002 1 次提交
  18. 14 2月, 2002 1 次提交
  19. 04 10月, 2001 1 次提交
  20. 26 9月, 2001 1 次提交
    • G
      This commits changes to various parts of libcrypto required by the recent · cb78486d
      Geoff Thorpe 提交于
      ENGINE surgery. DH, DSA, RAND, and RSA now use *both* "method" and ENGINE
      pointers to manage their hooking with ENGINE. Previously their use of
      "method" pointers was replaced by use of ENGINE references. See
      crypto/engine/README for details.
      
      Also, remove the ENGINE iterations from evp_test - even when the
      cipher/digest code is committed in, this functionality would require a
      different set of API calls.
      cb78486d
  21. 03 9月, 2001 1 次提交
  22. 26 8月, 2001 1 次提交
  23. 04 8月, 2001 1 次提交
  24. 26 7月, 2001 1 次提交
  25. 20 2月, 2001 1 次提交
    • R
      Make all configuration macros available for application by making · cf1b7d96
      Richard Levitte 提交于
      sure they are available in opensslconf.h, by giving them names starting
      with "OPENSSL_" to avoid conflicts with other packages and by making
      sure e_os2.h will cover all platform-specific cases together with
      opensslconf.h.
      
      I've checked fairly well that nothing breaks with this (apart from
      external software that will adapt if they have used something like
      NO_KRB5), but I can't guarantee it completely, so a review of this
      change would be a good thing.
      cf1b7d96
  26. 10 2月, 2001 1 次提交
  27. 30 12月, 2000 1 次提交
  28. 09 12月, 2000 1 次提交
    • D
      · 9d6b1ce6
      Dr. Stephen Henson 提交于
      Merge from the ASN1 branch of new ASN1 code
      to main trunk.
      
      Lets see if the makes it to openssl-cvs :-)
      9d6b1ce6
  29. 07 11月, 2000 2 次提交
  30. 27 10月, 2000 1 次提交
  31. 16 6月, 2000 1 次提交
  32. 09 6月, 2000 1 次提交
    • R
      Using checks of the existence of HEADER_{foo}_H in other header files · ef33b970
      Richard Levitte 提交于
      was a really bad idea.  For example, the following:
      
      	#include <x509.h>
      	#include <bio.h>
      	#include <asn1.h>
      
      would make sure that things like ASN1_UTCTIME_print() wasn't defined
      unless you moved the inclusion of bio.h to above the inclusion of
      x509.h.  The reason is that x509.h includes asn1.h, and the
      declaration of ASN1_UTCTIME_print() depended on the definition of
      HEADER_BIO_H.  That's what I call an obscure bug.
      
      Instead, this change makes sure that whatever header files are needed
      for the correct process of one header file are included automagically,
      and that the definitions of, for example, BIO-related things are
      dependent on the absence of the NO_{foo} macros.  This is also
      consistent with the way parts of OpenSSL can be excluded at will.
      ef33b970
  33. 02 5月, 2000 1 次提交
  34. 04 2月, 2000 1 次提交
  35. 24 1月, 2000 1 次提交
    • D
      · dd9d233e
      Dr. Stephen Henson 提交于
      Tidy up CRYPTO_EX_DATA structures.
      dd9d233e
  36. 19 9月, 1999 1 次提交
  37. 09 9月, 1999 1 次提交
  38. 28 7月, 1999 1 次提交