| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
- Add __all__ to C cipher & hash modules
- Update hash module docstrings to document the block_size and
digest_size variables.
Closes: https://bugs.launchpad.net/pycrypto/+bug/1179255
|
| |
|
|
|
|
|
| |
This should fix compilation on HP-UX 11.31. Thanks Adam Woodbeck for
reporting this.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The pure Python wrappers around Crypto.Hash.* were convenient, but they
slowed down hash initialization by 4-7x.
There is a speed trade-off here: The MD5 and SHA1 objects are just
wrapped hashlib objects (or old-style md5/sha objects). To maintain API
compatibility with the rest of PyCrypto, we still have to wrap them, so
they're slower to initialize than the rest of the hash functions. If
hashlib ever adds a .new() method, we will automatically use hashlib
directly and gain the initialization speed-up.
|
|
|
|
|
|
|
|
|
|
|
|
| |
In PyCrypto v2.5, the "oid" attribute was added to hash objects. In
retrospect, this was not a good idea, since the OID is not really a
property of the hash algorithm, it's a protocol-specific identifer for
the hash functions. PKCS#1 v1.5 uses it, but other protocols (e.g.
OpenPGP, DNSSEC, SSH, etc.) use different identifiers, and it doesn't make
sense to add these to Crypto.Hash.* every time a new algorithm is added.
This also has the benefit of being compatible with the Python standard
library's "hashlib" objects, which also have a name attribute.
|
|
|
|
| |
The solution is to include Python.h before string.h is included.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
We use <sys/inttypes.h> on Solaris platforms that don't have <stdint.h>.
This should fix https://bugs.launchpad.net/pycrypto/+bug/518871, reported by
Sebastian Kayser.
|
| |\
| | |
| | |
| | |
| | |
| | | |
Conflicts:
setup.py
src/_fastmath.c
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
(as submitted here https://bugs.launchpad.net/pycrypto/+bug/544792)
so that they are available also in Python 2.1, 2.2, 2.3 and 2.4.
Regardless where the implementation comes from (Python standard
library or our native modules, depending on the Python version),
all Crypto.Hash objects are always used as front-ends.
|
|\ \ \
| | |/
| |/| |
|
| |/
| |
| |
| | |
block of 128 bytes long
|
|/ |
|
|
|
|
| |
Handy command: nm -g --extern-only `find . -name \*.so`
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In an attempt to simplify the copyright status of PyCrypto, I'm placing my
code into the public domain, and encouraging other contributors to do the
same.
I have used a public domain dedication that was recommended in a book on FOSS legal
issues[1], followed by the warranty disclaimer boilerplate from the MIT license.
[1] _Intellectual Property and Open Source: A Practical Guide to Protecting
Code_, a book written by Van Lindberg and published by O'Reilly Media.
(ISBN 978-0-596-51796-0)
|
| |
|
| |
|
|
Also, disable the Python implementation (it's really slow)
|