aboutsummaryrefslogtreecommitdiffstats
path: root/src/cert/x509/x509_ca.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove config options to toggle if X.509 extensions are critical orlloyd2010-03-101-5/+7
| | | | | | | | not. Instead provide via Extensions::add(). No way to modify behavior currently, it just follows the previous default police. Remove the config options from Library_State entirely. Die, mutable singletons, die.
* Modify pubkey classes to take names instead of object pointers.lloyd2010-03-081-2/+2
| | | | | Remove use of look_pk from the source and examples, instead instantiate classes directly.
* Remove the now no-op classes PK_Encrypting_Key,lloyd2010-03-081-7/+1
| | | | | PK_Decrypting_Key, PK_Signing_Key, PK_Verifying_with_MR_Key, and PK_Verifying_wo_MR_Key.
* Add a new function to Public_Key, algorithm_identifier(), which justlloyd2010-03-041-7/+1
| | | | | returns the AlgorithmIdentifier representing this scheme (OID + domain params if any).
* Consolidate the non-canonical epoch timers, like cpuid and Win32'slloyd2009-12-011-1/+1
| | | | | | | | | | | | | | QueryPerformanceCounter, into an entropy source hres_timer. Its results, if any, do not count as contributing entropy to the poll. Convert the other (monotonic/fixed epoch) timers to a single function get_nanoseconds_clock(), living in time.h, which statically chooses the 'best' timer type (clock_gettime, gettimeofday, std::clock, in that order depending on what is available). Add feature test macros for clock_gettime and gettimeofday. Remove the Timer class and timer.h. Remove the Timer& argument to the algorithm benchmark function.
* Much cleaning up in ECDSA, though it's still rather a mess (and 50x slowerlloyd2009-11-181-15/+3
| | | | than OpenSSL... that's a problem for another branch though).
* In creating X.509 certificates and PKCS #10 requests, let (actually: require)lloyd2009-11-091-17/+35
| | | | | | | the user to specify the hash function to use, instead of always using SHA-1. This was a sensible default a few years ago, when there wasn't a ~2^60 attack on SHA-1 and support for SHA-2 was pretty much nil, but using something else makes a lot more sense these days.
* Split up util.h into 3 fileslloyd2009-09-171-1/+1
| | | | | | | - rounding.h (round_up, round_down) - workfactor.h (dl_work_factor) - timer.h (system_time) And update all users of the previous util.h
* Thomas Moschny passed along a request from the Fedora packagers which camelloyd2009-03-301-31/+33
| | | | | | | | | | | | | | | up during the Fedora submission review, that each source file include some text about the license. One handy Perl script later and each file now has the line Distributed under the terms of the Botan license after the copyright notices. While I was in there modifying every file anyway, I also stripped out the remainder of the block comments (lots of astericks before and after the text); this is stylistic thing I picked up when I was first learning C++ but in retrospect it is not a good style as the structure makes it harder to modify comments (with the result that comments become fewer, shorter and are less likely to be updated, which are not good things).
* Remove lookup.h use from DLIES, PK key agreement, DSA param gen, get_enc.cpplloyd2008-11-111-1/+0
|
* Default to using SHA-1 with ECDSA in X.509 signatureslloyd2008-10-111-0/+5
|
* Put only the implementation of BigInt in src/bigint, mathematical functionslloyd2008-09-291-1/+1
| | | | | | | on top of BigInt go to src/math. Some prototypes were moved in order to complete the split, in particular random_integer() is now a static member of BigInt instead of being a global function, and divide() is in divide.h instead of numthry.h
* Move x509 into cert/ subdir (in prep for InSiTo adding cert/cvc)lloyd2008-09-291-0/+278