Commit graph

10 commits

Author SHA1 Message Date
Legrandin
ec7f3c8662 Remove _fastmath and _slowmath from code base 2014-12-06 12:04:12 +01:00
Legrandin
b7fba1d134 DSA keys can be loaded from X.509 certificates 2014-07-15 23:01:35 +02:00
Legrandin
1c3c049a4c Clean up Crypto.PublicKey module
This patch does a few things to simplify the public key classes
(RSA, DSA and ElGamal):

* It removes the Crypto.PublicKey.pubkey module. The 3 classes
  do not have an ancestor anymore.
* Methods sign(), verify(), encrypt(), and decrypt() are removed.
* Methods blind() and unblind() are removed.
* Methods can_sign() and can_encrypt() are removed.
* The 3 classes cannot be pickled anymore.
2014-06-16 22:00:03 +02:00
Legrandin
8acf0d7011 Add checks to verify correctness of RSA/DSA/ElGamal keys
When the various components are assembled into an RSA,
DSA or ElGamal key via the construct() method, we must verify
as much as possible if the result is indeed a valid key.
2013-12-22 13:42:37 +01:00
Legrandin
791cfaa255 Add support for import/export of DSA keys
This patch adds methods importKey() to DSA module
and exportKey() to _DSAobj object.

Public and private keys can be imported/exported
in a variety of formats:

* DER vs PEM
* PKCS#8 vs OpenSSL vs OpenSSH/OpenSSL
* Encrypted vs clear
2013-07-14 21:16:46 -07:00
Dwayne C. Litzenberger
cc990c02f3 Remove qNEW signature algorithm
I doubt anyone uses it anyway, and we have no test suite for it.
2012-05-24 07:35:20 -04:00
Legrandin
e6ef5dee7b Polished the Crypto.PublicKey page.Added hyperlinks to RFCs. 2012-04-12 23:16:52 +02:00
Legrandin
35a748d482 Refreshed documentation for DSA. Minor fixes in RSA documentation. 2012-04-12 00:49:32 +02:00
Dwayne C. Litzenberger
494cad8bc9 Legal: Add PD dedication to __init__.py files and hash stubs
From what I can tell, the authors of these files are:

 - Andrew Kuchling (who has dedicated his contributions to the public domain);
   and/or
 - Dwayne Litzenberger (myself).
2009-03-01 10:23:08 -05:00
Dwayne C. Litzenberger
ff8a657a8d cleanup: Move modules to "lib/Crypto" subdirectory.
This will avoid the previous situation where scripts like the old "test.py"
get included accidentally in a release.  It also frees us to put additional
build scripts in the top-level directory of the source tree.
2009-02-28 13:14:53 -05:00
Renamed from PublicKey/__init__.py (Browse further)