aboutsummaryrefslogtreecommitdiffstats
path: root/src/pubkey
Commit message (Collapse)AuthorAgeFilesLines
* auto_ptr is unique_ptr in C++0xlloyd2009-11-181-2/+2
|
* propagate from branch 'net.randombit.botan' (head ↵lloyd2009-11-1813-37/+61
|\ | | | | | | | | | | 23f95467137a0531f74574d1e3eb822734f0c5f2) to branch 'net.randombit.botan.c++0x' (head 427be8496e669880b1bf532eb829ebbdbeaf34c9)
| * Use async in ElGamal encryption and Nyberg-Rueppel verificationlloyd2009-11-182-4/+10
| |
| * Add a simple version of std::async as std_async in async.h and use itlloyd2009-11-172-39/+9
| | | | | | | | in the RSA and DSA ops.
| * Also parallelize DSA signature generation, though due to critical pathlloyd2009-11-171-2/+13
| | | | | | | | | | | | constraints there isn't that much parallelization to extract. Slightly faster; better for smaller key sizes as once a certain point is reached one thread is doing a lot more work than the other.
| * Use a thread to compute half of the DSA verification. 20-90% faster dependinglloyd2009-11-171-2/+19
| | | | | | | | on key size on a Core2.
| * In IF decryption, two large powmods are done, one mod p and one mod q. Spawnlloyd2009-11-171-1/+22
| | | | | | | | | | | | | | | | one of them off in a new thread and compute the other on the current thread. Performance on my Core2 shows a 60 to 90% improvement in overall speed in RSA private key operations. Will probably be even better once std::async is available (not currently in GCC) since it will probably use a thread pool which will amortize the thread creation/shutdown cost.
| * propagate from branch 'net.randombit.botan' (head ↵lloyd2009-11-179-25/+24
| |\ | | | | | | | | | | | | | | | 0ac5a29496b4e50775827d9655c064f6d1c98813) to branch 'net.randombit.botan.c++0x' (head 3232da044d41756582b53da9d14c3ac07e9b2916)
| | * propagate from branch 'net.randombit.botan' (head ↵lloyd2009-11-174-5/+5
| | |\ | | | | | | | | | | | | | | | | | | | | cfb19182987fc95b2a8885584a38edb10b4709b3) to branch 'net.randombit.botan.c++0x' (head 1570877c463fed4b632bc49a5b5ee27c57de2cb5)
| | * \ propagate from branch 'net.randombit.botan' (head ↵lloyd2009-11-132-6/+6
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | ac888e57b614c623590d79ab615353ad7c76ef68) to branch 'net.randombit.botan.c++0x' (head 9bf78ed7e2521a328f6db7acbc1cd81b07718230)
| | * \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2009-11-029-25/+24
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2773c2310e8c0a51975987a2dd6c5824c8d43882) to branch 'net.randombit.botan.c++0x' (head f13cf5d7e89706c882604299b508f356c20aae3a)
| | | * \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2009-10-139-25/+24
| | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 139d6957d20f0b1202e0eacc63cb011588faffde) to branch 'net.randombit.botan.c++0x' (head c16676fa6c393bc3f46a044755ce525a013380a6)
| | | | * \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2009-09-179-6/+78
| | | | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 92e05ab242e4b6998d685961c53700534a673bce) to branch 'net.randombit.botan.c++0x' (head 27ce37b971ec5cb1f80a9a95b13d5a951b96653b)
| | | | * \ \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2009-09-089-25/+24
| | | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5cadcc57872bef55226579df57349fe09a93d1f5) to branch 'net.randombit.botan.c++0x' (head d1747f0394aa4442e5b32b9102b830e1a86f0e5a)
| | | | | * \ \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2009-07-2131-96/+113
| | | | | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 95eb8083f5884531e5ca0667388f8a6fb6d05c41) to branch 'net.randombit.botan.c++0x' (head 56e105e678540c8bcafa4d0198c19a9489fbf8d1)
| | | | | * \ \ \ \ propagate from branch 'net.randombit.botan' (head ↵lloyd2009-06-049-25/+24
| | | | | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6a746ccf1e957dba703e65372050a7bd4d6b117d) to branch 'net.randombit.botan.c++0x' (head f54bb7b391eb3b71f380a68ddd460debdc31545d)
| | | | | | * | | | | Replace the (deprecated) auto_ptr with unique_ptr.lloyd2009-04-019-25/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was mostly a s/auto_ptr/unique_ptr/, except in the CVC code and one function in ECDSA, which relied on auto_ptr's move semantics (ugh) and had to be modified in various ways.
* | | | | | | | | | | Much cleaning up in ECDSA, though it's still rather a mess (and 50x slowerlloyd2009-11-186-151/+109
|/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | than OpenSSL... that's a problem for another branch though).
* | | | | | | | | / Move most code that relies heavily on Filters into src/filters.lloyd2009-11-173-221/+0
| |_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove support for (unused) modset settings. Move tss, fpe, cryptobox, and aont to new dir constructs
* | | | | | | | | Rename/remove some secmem member variables for better matching with STLlloyd2009-11-174-5/+5
| |_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | containers (specifically vector). Rename is_empty to empty Remove has_items Rename create to resize
* | | | | | | | Make set_all_values in {ECDSA,ECKAEG}_{Public,Private}Key all non-virtual;lloyd2009-11-102-6/+6
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | virtual-ness not needed, and was overriding/overloading by argument which doesn't actually work in C++ and only happened to work because it was only ever used with the version implemented in that same class. ICC was warning, too. Make non-virtual.
* / / / / / / Remove the 'realname' attribute on all modules and cc/cpu/os info files.lloyd2009-10-2917-34/+0
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | Pretty much useless and unused, except for listing the module names in build.h and the short versions totally suffice for that.
* | | | | | propagate from branch 'net.randombit.botan.1_8' (head ↵lloyd2009-10-1312-8/+95
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c5ae189464f6ef16e3ce73ea7c563412460d76a3) to branch 'net.randombit.botan' (head e2b95b6ad31c7539cf9ac0ebddb1d80bf63b5b21)
| * | | | | | Reasonably functional RSA support; keygen, import/export, encrypt/decrypt, ↵lloyd2009-10-091-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | sign/verify
| * | | | | | Add 'Distributed under...' text to files missing it. Some format cleanupslloyd2009-10-072-1/+10
| | |_|_|_|/ | |/| | | |
| * | | | | Split up util.h into 3 fileslloyd2009-09-179-6/+78
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - rounding.h (round_up, round_down) - workfactor.h (dl_work_factor) - timer.h (system_time) And update all users of the previous util.h
* / / / / Fix indentlloyd2009-10-131-1/+1
|/ / / /
* | | | Replace 'XXX' and other such notes with FIXME for easy greppinglloyd2009-07-222-3/+4
| | | |
* | | | Fix some unused variable nits pointed out by icc 10.1lloyd2009-07-212-7/+1
| | | |
* | | | One signature of PKCS8::PEM_encode was stray, and didn't have a coorespondinglloyd2009-07-211-5/+0
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | implementation. This had been the case since at least 1.8.0. Remove it, since implementing this signature would require having the library create an AutoSeeded_RNG, which seems like it might be quite surprising to an unsuspecting user. Problem reported by M. Braun in ticket 44
* | | Move back to pk_codecs, propagate to pubkey-refactor donelloyd2009-07-214-0/+0
| | |
* | | Move from pk_codecs to pubkey to solve merge problemlloyd2009-07-214-0/+0
| | |
* | | Correct source listings for moved fileslloyd2009-07-161-2/+0
| | |
* | | Move some files around to break up dependencies between directorieslloyd2009-07-164-0/+4
| | |
* | | Add a script that reads the output of print_deps.py and rewriteslloyd2009-07-1516-80/+107
| | | | | | | | | | | | | | | | | | the info.txt files with the right module dependencies. Apply it across the codebase.
* | | Move the contents of pubkey/pubkey (which was kind of a catch-all tolloyd2009-07-1526-16/+4
|/ / | | | | | | | | | | | | just toplevel pubkey). This was a convention I realized made sense sometime on when I was first doing the modularization changes. Move pkcs8.* and x509_key.* to pk_codecs
* / engine.h had copies of some declarations from pk_engine.h that had notlloyd2009-05-137-7/+7
|/ | | | | | been removed when that portion of the code was split off. Remove the duplicated code from engine.h and update some code in pubkey that still relied on the declarations in engine.h instead of pk_engine.h
* Thomas Moschny passed along a request from the Fedora packagers which camelloyd2009-03-3070-988/+1128
| | | | | | | | | | | | | | | 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).
* Add back the public key filters, at the request of Andreas Podgurski onlloyd2009-03-193-0/+204
| | | | the mailing list.
* Update some doxygen comments. Contributed by Charles Brockman in bug #39lloyd2009-03-021-1/+1
|
* Fix a memory leak in PKCS #8 load_key and encrypt_key that wouldlloyd2008-12-121-5/+9
| | | | | | | | | | occur because PKCS #5 v2.0 doesn't support empty passphrases (though maybe it should?). In this case pbe->set_key would throw an exception, causing the stack to be unwound without the (dynamically created) PBE object being deleted. Use auto_ptr to hold the PBE*, then .release() it when passing it to the Pipe (since Pipe takes ownership of its Filters). Noticed when looking at valgrind analysis of monotone's sync command.
* DL_Group constructor taking three BigInts had the order of q and g swappedlloyd2008-12-081-1/+1
| | | | in the header.
* Remove pk_lookup - half of it (look_pk.{cpp,h}) depended on libstate directly,lloyd2008-11-1113-178/+5
| | | | | the other half was relied upon by pubkey. Move the contents into those two modules. Update deps.
* Bubble up use of global algo factory out of DSA parameter gen to DL_Grouplloyd2008-11-111-2/+6
|
* Make the level of key consistency checking performed be a build constantlloyd2008-11-111-19/+3
| | | | instead of runtime configurable.
* Remove unused include of <memory>lloyd2008-11-111-1/+0
|
* Remove lookup.h use from DLIES, PK key agreement, DSA param gen, get_enc.cpplloyd2008-11-115-48/+67
|
* Remove lookup dep from basic pubkey classeslloyd2008-11-103-47/+29
|
* Split pk_pad.h into eme.h and emsa.hlloyd2008-11-101-1/+2
|
* Move engine to libstate/ directory, since there is a mutual dependencylloyd2008-11-091-1/+0
| | | | | | (messy). Remove unused libstate.h includes from a few files.