aboutsummaryrefslogtreecommitdiffstats
path: root/src/pubkey
Commit message (Collapse)AuthorAgeFilesLines
* Shuffle things around. Add NIST X.509 test to build.lloyd2014-01-0166-7022/+0
|
* Testslloyd2013-12-311-1/+0
|
* Add EC groupslloyd2013-12-251-0/+307
|
* Same for EC groupslloyd2013-12-255-11/+18
|
* Store all DH group info in constant memory instead of Library_State configlloyd2013-12-259-10/+373
| | | | | | Remove all groups under 1024 bits Make workfactor.h public
* Remove global_rng calls for setting up blinding, instead require a RNGlloyd2013-12-257-18/+26
| | | | | | be passed to the engine. Currently pubkey.cpp just passes along the global_rng but eventually we'll break this API and require a RNG to the constructor.
* Refuse to make RSA/RW keys under 1024 bitslloyd2013-12-062-2/+2
|
* Give everything setting a feature test macro in build.h a version codelloyd2013-11-2817-17/+17
| | | | | | so application code can check for the specific API it expects without having to keep track of what versions APIs x,y,z changed. Arbitrarily set all current API versions to 20131128.
* Fix encoding error in ECC groups using OID method. Reported by andlloyd2013-10-301-1/+1
| | | | patch from fxdupont on github.
* Make error message when key does not support an operation less confusinglloyd2013-09-021-11/+6
|
* Change the default PKCS #8 PBKDF runtime from 200 to 300 milliseconds.lloyd2013-04-041-2/+2
| | | | | | | Round PBKDF1 and PBKDF2 time-based iterations to multiples of 10000 instead of 8192. Update the password hashing docs a bit.
* Move assert.h from internal to very public (included in types.h)lloyd2013-03-136-6/+0
| | | | | | This reduces friction to writing an assert, so hopefully there will be more of them as a result. And we can use asserts in public headers now, very useful for templates.
* Split asn1_obj.h into asn1_alt_name.h, asn1_attribute.h, andlloyd2012-11-062-2/+2
| | | | asn1_time.h
* Add Public_Key::estimated_strength which gives an approximation of howlloyd2012-07-277-0/+35
| | | | | | | hard that key is to break. Use it in cert path validation, rejecting keys with estimated strength less than 80 bits.
* In RSA and RW signers, add the message contents to the RNG statelloyd2012-07-192-5/+9
|
* Fix divisibility check in DL_Group::make_dsa_generatorlloyd2012-07-191-3/+4
|
* Add check for out of range DH keyslloyd2012-07-171-0/+3
|
* Add deleted copy constructors/assignment operators where appropriate.lloyd2012-07-101-15/+18
| | | | | Replace C++98 style private copy constructors/assignment ops with ones annotated with delete.
* The messages for assertion checks were done both ways, both "assertionlloyd2012-07-096-9/+9
| | | | | | X is true" and "assertion X is false". Convert all of them to the form "assertion X is true" thus making it clear what it is that we are attempting to assert by testing the expression provided.
* Fix for bug 209. Required some reworking of the ASN.1 bytestringlloyd2012-07-091-4/+18
| | | | decoding code but seems an improvement.
* Put an upper bound on the blinding value to 160 bits. This seems to belloyd2012-06-174-4/+4
| | | | | | plenty sufficient, and reduces the overhead of setting up the blinder (in terms of exponent size and the cost of computing modular inverses).
* Modify DL_Group::PEM_decode and BER_decode to take values instead oflloyd2012-06-055-19/+17
| | | | | | | | DataSource&. Remove spurious DataSource_Memory from ec_group.cpp Some indent fixes
* Drop some deprecated functionslloyd2012-06-011-19/+0
|
* Add new PBKDF interface that takes a std::chrono::milliseconds andlloyd2012-05-312-70/+29
| | | | | | | | | | | | | | | | | | | | runs the KDF until at least that much time has passed, then returns the number of interations used. New parameter to the PKCS8 encryption routines which tells how long to run the PBKDF. Defaults to 200 milliseconds, which is short enough that it is unlikely to bother anyone but long enough to provide quite reasonable security against cracking attacks. On a Core i7-860, 200 ms with PBKDF2/SHA-1 runs about 180K to 220K iterations (compare with previous default of 10K). New PBE interface, remove new_params/set_key and require all inputs including the passphrase to be passed to the constructor. Drop the PGP S2K as it is pretty weird and not really useful outside of a full PGP implementation. Drop the deprecated PKCS8::encrypt_key and PKCS8::encode functions.
* No reason to use secure_vector herelloyd2012-05-262-2/+2
|
* propagate from branch 'net.randombit.botan.x509-path-validation' (head ↵lloyd2012-05-2543-312/+373
|\ | | | | | | | | | | 63b5a20eab129ca13287fda33d2d02eec329708f) to branch 'net.randombit.botan' (head 8b8150f09c55184f028f2929c4e7f7cd0d46d96e)
| * Use std::async for parallel CRT in Rabin Williams signature generation.lloyd2012-05-251-6/+7
| |
| * Replace 0 and NULL pointer constants with nullptr. Also fix an oldlloyd2012-05-182-7/+7
| | | | | | | | style cast in secmem.h
| * Fairly huge update that replaces the old secmem types with std::vectorlloyd2012-05-1841-227/+242
| | | | | | | | | | | | using a custom allocator. Currently our allocator just does new/delete with a memset before deletion, and the mmap and mlock allocators have been removed.
| * propagate from branch 'net.randombit.botan' (head ↵lloyd2012-05-181-1/+1
| |\ | | | | | | | | | | | | | | | 6332543aa5a8a4cc13662008ff9ac0f0016d9a4d) to branch 'net.randombit.botan.cxx11' (head 5517c9f8f6d1990f269afb94f569a97a80c5a5f4)
| | * NR_Verification_Operation::verify_mr would return false if the inputlloyd2012-05-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | was not the right size for a signature (following DSA). This would silently convert to an empty vector which we would treat as a valid message on the return. However the EMSA checks will always fail so not a huge problem. While checking this out I noticed that an empty value for EMSA4 would result in us reading memory we didn't own.
| * | Remove all uses of MemoryRegion::copy outside of internal uses inlloyd2012-05-181-1/+1
| | | | | | | | | | | | secmem.h. Mostly replaced by assign or copy_mem.
| * | First step towards replacing the existing containers with std::vectorlloyd2012-05-181-1/+1
| | | | | | | | | | | | | | | | | | with a custom allocator; remove the 3 argument version of MemoryRegion::copy, replacing with freestanding buffer_insert function.
| * | propagate from branch 'net.randombit.botan.tls-state-machine' (head ↵lloyd2012-04-252-28/+29
| |\| | | | | | | | | | | | | | | | a4741cd07f50a9e1b29b0dd97c6fb8697c038ade) to branch 'net.randombit.botan.cxx11' (head 116e5ff139c07000be431e07d3472cc8f3919b91)
| | * Add more comments explaining what is going on in dl_work_factorlloyd2012-03-302-28/+29
| | |
| * | propagate from branch 'net.randombit.botan' (head ↵lloyd2012-02-202-1/+14
| |\ \ | | | | | | | | | | | | | | | | | | | | c247a55e7c0bcd239fcfc672139b59ef63d7ee84) to branch 'net.randombit.botan.cxx11' (head 16d7756c6b8933d0d543ebdda9c7e8f4908a4a33)
| * \ \ propagate from branch 'net.randombit.botan.tls-state-machine' (head ↵lloyd2012-02-208-41/+85
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | 0ceb9cde62a2b3614901ae85a53546d9fc641326) to branch 'net.randombit.botan.cxx11' (head 777e65950ef3706a82e5df20dcca7fcc999ca533)
| | * \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2011-06-138-41/+85
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 150bd11dd8090559ee1e83394b8283bf93a018de) to branch 'net.randombit.botan.c++0x' (head 7480693bb3f1e8a4e039a3e7ba3d9a7007f9730e)
| | | * \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2011-02-118-41/+85
| | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 13a0d36dac3709f3cb88e830ed7f8cab9e7433ab) to branch 'net.randombit.botan.c++0x' (head 2221ad8796466e7e096645de77ba856a9c902d14)
| | | | * \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2010-11-291-2/+2
| | | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fc8daa606ab7954eab48778d7236986747b719e4) to branch 'net.randombit.botan.c++0x' (head 2bf71b0a2e0e468d7eb3631e4ca284234f554729)
| | | | * \ \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2010-11-048-41/+85
| | | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 303b2518a80553214b1e5ab4d9b96ef54629cbc7) to branch 'net.randombit.botan.c++0x' (head d734eefabe4816be4dd3e3e6e7bb13b7ab5be148)
| | | | | * | | | Post-merge fixupslloyd2010-10-131-0/+1
| | | | | | | | |
| | | | | * | | | propagate from branch 'net.randombit.botan' (head ↵lloyd2010-10-138-42/+85
| | | | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2898d79f992f27a328a3e41d34b46eb1052da0de) to branch 'net.randombit.botan.c++0x' (head 6cba76268fd69a73195760c021b7f881b8a6552c)
| | | | | | * \ \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2010-08-138-41/+85
| | | | | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0a3348f52bf558bc2282e1066c2913a72a1aeda5) to branch 'net.randombit.botan.c++0x' (head 552c20ae8874f12da779fc25ea368e36e71cbfe8)
| | | | | | | * | | | Drop User_Interface; replace with a std::function callbacklloyd2010-07-092-24/+52
| | | | | | | | | | |
| | | | | | | * | | | propagate from branch 'net.randombit.botan' (head ↵lloyd2010-07-097-17/+33
| | | | | | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 161b5c0300b72baa746f101fda1e2b4a7c71818c) to branch 'net.randombit.botan.c++0x' (head 1fc3875bb8daf4ad0e90ba66db72642203cb9984)
| | | | | | | | * \ \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2010-06-222-0/+15
| | | | | | | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 647eeb4f4cf8fa4cf487cdc463d48f09fe18658e) to branch 'net.randombit.botan.c++0x' (head 2539675db91883b11895ddc5244721e93c413321)
| | | | | | | | * \ \ \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2010-06-1726-208/+309
| | | | | | | | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 294e2082ce9231d6165276e2f2a4153a0116aca3) to branch 'net.randombit.botan.c++0x' (head 0b695fad10f924601e07b009fcd781191fafcb28)
| | | | | | | | * \ \ \ \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2010-04-283-9/+26
| | | | | | | | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a5f25a3b954f24c5d07fa0dab6c4d76f63767165) to branch 'net.randombit.botan.c++0x' (head a365694b70b4b84ca713272d56d496acca351cb5)
| | | | | | | | * | | | | | | Post-merge fixupslloyd2010-03-211-1/+1
| | | | | | | | | | | | | | |