Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | MD5 support + documentation for all hashes | Paul Kehrer | 2013-10-19 | 2 | -0/+23 |
| | |||||
* | Merge pull request #128 from reaperhulk/hash-saga-whirlpool | Donald Stufft | 2013-10-19 | 2 | -0/+32 |
|\ | | | | | Hash Saga Part 6 (Whirlpool support) | ||||
| * | Whirlpool support | Paul Kehrer | 2013-10-18 | 2 | -0/+32 |
| | | |||||
* | | Only execute only_if if we need to | Donald Stufft | 2013-10-19 | 1 | -6/+6 |
| | | |||||
* | | Unaligned block encryption test | Paul Kehrer | 2013-10-19 | 1 | -0/+11 |
|/ | | | | | | | This test verifies that the underlying buffer is being sized correctly by passing data into the encryption function without aligning it to the block size of the cipher. This ensures that we will get a larger return value than the initial argument from our second encrypt call. | ||||
* | ripemd160 support + long string hash test | Paul Kehrer | 2013-10-18 | 4 | -2/+67 |
| | | | | | | * Note that the long string hash test for RIPEMD160 adds a vector in the test. You can verify this vector (for b"a" * 1000000) on the RIPE homepage: http://homes.esat.kuleuven.be/~bosselae/ripemd160.html | ||||
* | SHA-2 family support | Paul Kehrer | 2013-10-18 | 2 | -0/+96 |
| | |||||
* | change api.supports_hash to take a hash class rather than a str | Paul Kehrer | 2013-10-18 | 2 | -2/+2 |
| | | | | | | * This change means hash class names will be byte strings and we no longer need to encode to ascii on hashobject.name in create_hash_context | ||||
* | remove unneeded lambdas from tests | Paul Kehrer | 2013-10-18 | 3 | -10/+10 |
| | |||||
* | Hash Saga Part 3 - API changes + SHA1 support + tests | Paul Kehrer | 2013-10-18 | 4 | -1/+141 |
| | |||||
* | Merge pull request #80 from reaperhulk/evp-md | David Reid | 2013-10-18 | 24 | -0/+16415 |
|\ | | | | | MD test vectors | ||||
| * | remove raw whirlpool vectors (formatted vectors already committed) | Paul Kehrer | 2013-10-18 | 1 | -73/+0 |
| | | |||||
| * | Added MD5 test vectors from RFC 1321 (http://www.ietf.org/rfc/rfc1321.txt) | Paul Kehrer | 2013-10-01 | 1 | -0/+29 |
| | | |||||
| * | add ISO/IEC 10118-3 test vectors for RIPEMD160 and Whirlpool. | Paul Kehrer | 2013-10-01 | 3 | -0/+178 |
| | | | | | | | | | | | | | | | | | | | | These vectors have been reformatted from their original form to conform to the same format as the NIST SHA tests. * RIPEMD160 original vectors from the hash homepage - http://homes.esat.kuleuven.be/~bosselae/ripemd160.html * Whirlpool vectors from the hash homepage - http://www.larc.usp.br/~pbarreto/WhirlpoolPage.html (yes that really is the homepage) | ||||
| * | SHA test vectors (byte oriented) from NIST | Paul Kehrer | 2013-09-30 | 21 | -0/+16281 |
| | | | | | | | | | | Obtained from http://csrc.nist.gov/groups/STM/cavp/ with this link: http://csrc.nist.gov/groups/STM/cavp/documents/shs/shabytetestvectors.zip | ||||
* | | Removed name fro BlockCipher -- it's arbitrarily based on the format openssl ↵ | Alex Gaynor | 2013-10-17 | 1 | -10/+1 |
| | | | | | | | | uses for *some* ciphers | ||||
* | | AES Counter support | Paul Kehrer | 2013-10-17 | 4 | -0/+25 |
| | | | | | | | | | | * vectors from RFC 3686 * Documentation for the mode | ||||
* | | flake8 fixes | Alex Gaynor | 2013-10-16 | 2 | -2/+5 |
| | | |||||
* | | Unit test the test harness | Alex Gaynor | 2013-10-16 | 1 | -0/+14 |
| | | |||||
* | | Yolo | Alex Gaynor | 2013-10-16 | 1 | -1/+1 |
| | | |||||
* | | Rewrite to avoid capitalization issues | Alex Gaynor | 2013-10-16 | 1 | -1/+1 |
| | | |||||
* | | Move around the skip logic | Alex Gaynor | 2013-10-16 | 3 | -21/+26 |
| | | |||||
* | | Consolidate this list | Alex Gaynor | 2013-10-16 | 1 | -2/+2 |
| | | |||||
* | | Ported openssl vector tests | Alex Gaynor | 2013-10-16 | 4 | -82/+34 |
| | | |||||
* | | Missed file | Alex Gaynor | 2013-10-16 | 1 | -0/+40 |
| | | |||||
* | | Start of the great refactoring | Alex Gaynor | 2013-10-16 | 2 | -162/+74 |
| | | |||||
* | | use the pragmas consistently. | Paul Kehrer | 2013-10-15 | 1 | -2/+2 |
| | | |||||
* | | add pragma: no cover to handle coverage in the tests for the moment | Paul Kehrer | 2013-10-15 | 2 | -4/+4 |
| | | |||||
* | | remove openssl api dependency in test_openssl_vectors | Paul Kehrer | 2013-10-06 | 2 | -12/+11 |
| | | | | | | | | Update some single quotes to double for consistency | ||||
* | | rebase and modify to support some changed behaviors | Paul Kehrer | 2013-10-06 | 2 | -13/+10 |
| | | | | | | | | | | | | | | | | | | * Update code to reflect new api object (ffi and lib are no longer private) * tests updated to take an api object * skipif marks removed for now as we need to use the api passed to each individual test. skip testing done inside the test * changed name of supports in api to supports_cipher (future PRs will contain supports_hash) | ||||
* | | Camellia block cipher support | Paul Kehrer | 2013-10-06 | 3 | -1/+182 |
| | | | | | | | | | | | | | | | | * Tests for CBC, OFB, CFB, and ECB * Tests will be automatically skipped if camellia support is not present in your OpenSSL library (e.g. OS X 10.8 with default OpenSSL) * Test for unsupported cipher in create_block_cipher_context * Docs for the cipher | ||||
* | | Use a None default so composition is easier | Alex Gaynor | 2013-10-03 | 1 | -0/+7 |
| | | |||||
* | | Explicitly pass around the API, and run all tests under all available APIs | Alex Gaynor | 2013-10-03 | 2 | -22/+34 |
|/ | |||||
* | Camellia test vectors | Paul Kehrer | 2013-09-14 | 6 | -0/+11687 |
| | | | | | | * ECB tests come from the NTT Camellia pages (as linked to by the latest [CRYPTREC](http://www.cryptrec.go.jp/english/method.html)). * CFB, OFB, CBC tests from OpenSSL evptests | ||||
* | CFB support | Paul Kehrer | 2013-09-11 | 1 | -0/+47 |
| | | | | | | | | | | This requires a bit of explanation. OpenSSL has methods that implement standard CFB, 1-bit CFB (cfb1), and 8-bit CFB (cfb8). Unfortunately, while old (read: 0.9.7) versions of OpenSSL appear to test these variants, newer versions have a comment stating that cfb{1,8} are unsupported. Accordingly, I've backed out any support for the variants for now. We can add it back into the CFB class if and when we gain a backend that supports arbitrary s for 1 <= s <= block_size | ||||
* | add output feedback mode support + test vectors (aes) | Paul Kehrer | 2013-09-10 | 1 | -0/+47 |
| | |||||
* | Add ECB class + docs + tests | Paul Kehrer | 2013-09-10 | 1 | -0/+47 |
| | | | | | * Slightly refactors test_nist to allow fetching of data that has no IV * Does not modify create_block_cipher_context (next commit) | ||||
* | Merge pull request #55 from reaperhulk/parameterize-encrypt-changes | Alex Gaynor | 2013-09-10 | 1 | -22/+30 |
|\ | | | | | Changes to parameterize_encrypt_test to support other NIST vectors | ||||
| * | changes to parameterize_encrypt_test to support other NIST vectors | Paul Kehrer | 2013-09-10 | 1 | -22/+30 |
| | | | | | | | | | | * ECB has no IV so we need to be able to pass params rather than have them hardcoded in the method | ||||
* | | Aded the 3DES vectors. Refs #51. | Alex Gaynor | 2013-09-09 | 88 | -0/+48004 |
|/ | |||||
* | Simplified the NIST tests and reduced duplication | Alex Gaynor | 2013-09-09 | 1 | -150/+31 |
| | |||||
* | Add mandatory headers to files touched by this branch | Hynek Schlawack | 2013-08-11 | 3 | -0/+7 |
| | |||||
* | Fixed wrong test | Alex Gaynor | 2013-08-10 | 1 | -1/+1 |
| | |||||
* | Ensure that AES gets a proper key size | Donald Stufft | 2013-08-10 | 1 | -0/+4 |
| | |||||
* | Use an enum for determining BlockCipher operation | Donald Stufft | 2013-08-10 | 1 | -2/+4 |
| | |||||
* | Be consistent | Alex Gaynor | 2013-08-10 | 1 | -1/+1 |
| | |||||
* | Remove the padding from the BlockCipher API | Donald Stufft | 2013-08-10 | 2 | -21/+21 |
| | |||||
* | BlockCiphers should know their own name | Donald Stufft | 2013-08-10 | 1 | -0/+7 |
| | | | | We normalize on CIPHER-KEYSIZE-MODE for the block cipher name. | ||||
* | Ciphers should know what size their keys are | Donald Stufft | 2013-08-10 | 1 | -0/+29 |
| | |||||
* | Ensure that a BlockCipher can only be used for one operation | Donald Stufft | 2013-08-10 | 1 | -0/+20 |
| | | | | | | This prevents trying to call encrypt() and then decrypt() on a block cipher. It also enables finalize() to know what type of finalization to call. |