Commit graph

  • 885c586ce9 Add a test function for comparison operators (but no test cases yet). Consistently destroy MPIs after use. Dag-Erling Smørgrav 2014-08-14 18:26:06 +0000
  • d4fd9a1958 rm unused variable Dag-Erling Smørgrav 2014-08-12 07:33:30 +0000
  • db8cacc028 Complete and sort svn:ignore. Dag-Erling Smørgrav 2014-08-12 07:33:28 +0000
  • be31515f5e Start of a multiple-precision integer arithmetic library. Dag-Erling Smørgrav 2014-08-12 07:30:31 +0000
  • d5e05cd239 fix props Dag-Erling Smørgrav 2014-08-03 14:38:35 +0000
  • 64a2da2b84 Refactor the malloc() etc code to reduce code duplication. Dag-Erling Smørgrav 2014-08-03 00:58:13 +0000
  • 5875ade2ed Add a pointer comparison function. Dag-Erling Smørgrav 2014-08-02 23:54:58 +0000
  • ce567a72e0 Add a simple malloc() implementation which can be configured to fail when testing error handling code. Dag-Erling Smørgrav 2014-08-02 23:30:07 +0000
  • 3f982ecff7 Improve format strings. Dag-Erling Smørgrav 2014-08-02 23:26:58 +0000
  • 25ff8b9664 Print hex strings in groups of eight. Dag-Erling Smørgrav 2014-08-02 23:26:20 +0000
  • 33cb3dad6a Remove <stdio.h> from code that doesn't need it. Dag-Erling Smørgrav 2014-08-02 23:23:19 +0000
  • 996b59dd91 Ignore managed string tests Dag-Erling Smørgrav 2014-08-02 23:11:22 +0000
  • 83a5196475 Add missing header. Dag-Erling Smørgrav 2014-08-01 22:47:00 +0000
  • 35d982ea57 Rename CPEXX_VER to cpeXX_ver and remove CPEXX_NATTR, which is redundant. Dag-Erling Smørgrav 2014-08-01 22:38:36 +0000
  • 479ffbba4a Remove author and sponsor tags; we'll deal with that some other way. Remove $Cryb$ tags as it is likely that the code will move to git. Dag-Erling Smørgrav 2014-08-01 14:31:07 +0000
  • 526303caad WIP: CPE library. Dag-Erling Smørgrav 2014-08-01 14:18:25 +0000
  • cc8109c760 WIP: unit tests for managed strings. Dag-Erling Smørgrav 2014-08-01 13:55:01 +0000
  • bec11577b0 sbuf-inspired managed string implementation which also supports wide strings. Dag-Erling Smørgrav 2014-08-01 13:53:04 +0000
  • fe2d45ad56 Create rol / ror functions for all integer sizes. Dag-Erling Smørgrav 2014-07-19 15:36:07 +0000
  • c658232e3e && is subject to shortcut evaluation, so the second test will not run if the first failed. The ultimate outcome is the same, but using & instead ensures that, when in verbose mode, we also get output from the second test. Dag-Erling Smørgrav 2014-07-19 15:34:49 +0000
  • 063197ed28 tweak svn:ignore Dag-Erling Smørgrav 2014-07-19 08:10:09 +0000
  • bee81cd1fd Prettier hex output Dag-Erling Smørgrav 2014-07-19 06:06:33 +0000
  • 0023f57ab5 Add a library of general (non-cryptographic) hash functions, currently consisting of the Pearson string hash function and the Murmur3-32 hash function. Dag-Erling Smørgrav 2014-07-19 06:03:57 +0000
  • 541d65a3cc pacify autoindenters Dag-Erling Smørgrav 2014-07-19 02:59:42 +0000
  • 49e46f74b1 Add unit tests for strlcpy() Dag-Erling Smørgrav 2014-07-13 21:35:15 +0000
  • d508e9ebc2 Missing newline character Dag-Erling Smørgrav 2014-07-13 21:34:54 +0000
  • 6be7e6da5f Add a check for buffer overflow Dag-Erling Smørgrav 2014-07-13 21:33:46 +0000
  • f1907404b1 Add a helper script for running the test suite with coverage analysis enabled. Dag-Erling Smørgrav 2014-07-13 21:21:43 +0000
  • 3ed82792fc Fix a bug that affected unterminated buffers: strlcat() would write a NUL past the end of the buffer and return one less than the correct length. Dag-Erling Smørgrav 2014-07-13 20:42:56 +0000
  • 08208a1b3e Add unit tests for strlcat() Dag-Erling Smørgrav 2014-07-13 20:40:29 +0000
  • 973b68c4fa Style nits Dag-Erling Smørgrav 2014-07-13 20:39:57 +0000
  • 023d9aefaa Add comparison functions for various integer types. Dag-Erling Smørgrav 2014-07-13 20:39:00 +0000
  • 4c59fd979b Reorganize the configure script. Move the header and function checks up so they're not affected by the debugging / developer options. Dag-Erling Smørgrav 2014-07-13 19:59:58 +0000
  • c9536ec04b Add tests for the carry operation in sha384 and sha512, which support message of up to 2^128 bytes and therefore must use a high / low pair. Dag-Erling Smørgrav 2014-07-12 22:12:38 +0000
  • 910c782b2f In the md4 code, use a 64-bit counter to avoid a manual carry operation. Dag-Erling Smørgrav 2014-07-12 22:10:57 +0000
  • 340b3240cf Consistently use const void * for data and keys, uint8_t * for digests and MACs, and uint8_t, uint32_t or uint64_t (as appropriate) for internal state. Also remove a few unnecessary casts. Dag-Erling Smørgrav 2014-07-12 21:57:31 +0000
  • a9e8aed740 Formatting nit Dag-Erling Smørgrav 2014-07-11 22:29:02 +0000
  • 8c9c5f26e4 Take advantage of t_compare_mem(). Dag-Erling Smørgrav 2014-07-11 22:26:23 +0000
  • 891ac33286 Typo in svn:ignore Dag-Erling Smørgrav 2014-07-11 22:16:42 +0000
  • 2b1d10e02e Oops, fix copy-pasto in previous commit. Dag-Erling Smørgrav 2014-07-11 22:15:57 +0000
  • a4576782b2 Add generic comparison functions. Dag-Erling Smørgrav 2014-07-11 22:10:09 +0000
  • 7f410bdfd3 Silence a GCC warning about an empty if statement. Dag-Erling Smørgrav 2014-07-11 15:14:23 +0000
  • 18650540d8 Avoid hardcoded lengths. This fixes a bug in the HMAC-SHA224 tests. Dag-Erling Smørgrav 2014-07-11 15:09:59 +0000
  • 30c8e19de7 Remove HMAC-MD2 and HMAC-MD4. They may or may not reappear at a later date in libcryb-mac. Dag-Erling Smørgrav 2014-07-11 13:54:22 +0000
  • 729e501b79 Mechanical whitespace cleanup Dag-Erling Smørgrav 2014-07-11 13:40:06 +0000
  • 2c697a472b Implement SHA-224 and HMAC-SHA224. Dag-Erling Smørgrav 2014-07-11 13:33:58 +0000
  • 25e162687e Credit upstream sources. Dag-Erling Smørgrav 2014-07-11 13:08:39 +0000
  • 6aa7f9a0e6 Implement HMAC-SHA{256,384,512} and add unit tests. Remove pre-existing HMAC implementations from the libcperciva and XySSL code. Dag-Erling Smørgrav 2014-07-11 13:01:32 +0000
  • 17d3517f3a Forgot to svn add t_const.c. Dag-Erling Smørgrav 2014-07-11 12:50:43 +0000
  • 8e786c5a98 Introduce t_zero (a 256-byte array of zeroes) and t_seq8 (a 256-byte array counting up from zero). Use them to simplify the HMAC-SHA1 test vectors. Dag-Erling Smørgrav 2014-07-11 12:46:23 +0000
  • b3a718a7ff Oops, use the correct keys Dag-Erling Smørgrav 2014-07-11 11:28:01 +0000
  • 0681394b23 Replace the FIPS-198 test vectors with those from the NIST CSRC's algorithm example page. Dag-Erling Smørgrav 2014-07-11 11:21:19 +0000
  • 5bb81214cc Instead of storing the key in the hmac_sha1_ctx so we can compute the output pad in hmac_sha1_final(), prepare a sha1 context in advance and discard the key as early as possible. Inspired by Colin Percival's HMAC-SHA-256 implementation. Dag-Erling Smørgrav 2014-07-11 10:28:55 +0000
  • 950a1770e5 Breathe Dag-Erling Smørgrav 2014-07-11 10:11:18 +0000
  • 26b512bfd7 Eliminate a variable Dag-Erling Smørgrav 2014-07-11 10:10:50 +0000
  • 8f42136d40 Trust the compiler to eliminate unnecessary conversions. Dag-Erling Smørgrav 2014-07-11 10:07:24 +0000
  • fd77c1c38e Unroll the loop in sha1_compute(), speeding it up by about 50%. Dag-Erling Smørgrav 2014-07-11 09:58:58 +0000
  • dffacacccf The spec says XOR here, not OR. Interestingly, it doesn't seem to make any difference. Dag-Erling Smørgrav 2014-07-11 09:45:29 +0000
  • cc13b6a16a Remove k from the sha1 context structure, as it is a constant. Rearrange the sha1 context structure to improve alignment. Dag-Erling Smørgrav 2014-07-11 09:17:05 +0000
  • 4467480786 Remove a mostly pointless timing attack countermeasure. Dag-Erling Smørgrav 2014-07-11 09:09:47 +0000
  • cd10966e07 Make the performance tests conditional on a run-time environment variable rather than a build-time option. Dag-Erling Smørgrav 2014-07-11 00:18:34 +0000
  • 7c9b8f108a Reorder for consistency Dag-Erling Smørgrav 2014-07-11 00:16:52 +0000
  • ca46c7c591 Fully separate the SHA-384 and SHA-512 code. Dag-Erling Smørgrav 2014-07-11 00:12:33 +0000
  • c41c51d901 Reorder for consistency Dag-Erling Smørgrav 2014-07-11 00:10:48 +0000
  • 63bcbcca20 Rename the HMAC-SHA1 code. Dag-Erling Smørgrav 2014-07-10 23:57:47 +0000
  • b0ff5af2ba Clean up headers and typedefs. Fix context length in the algorithm descriptors. Expose the block length and include it in the algorithm descriptors. Complete the list of available digest algorithms. Dag-Erling Smørgrav 2014-07-10 18:09:47 +0000
  • 4c17e0f386 Empty and unlikely to ever be used. Dag-Erling Smørgrav 2014-07-10 18:01:40 +0000
  • b6578d1bd2 Fix props again again... why does this keep happening? Dag-Erling Smørgrav 2014-07-10 17:59:50 +0000
  • 412eb72e48 Order copyright statements alphabetically (Devine < Percival < Smørgrav < University). Dag-Erling Smørgrav 2014-07-10 17:24:56 +0000
  • dff909ba65 Spell the name of the University of Oslo in English. Dag-Erling Smørgrav 2014-07-10 17:15:54 +0000
  • efd34d4cc7 In an earlier version of the API, the _init function was responsible for allocating the context structure. This is no longer the case, but the _init function type was not updated to reflect this. Dag-Erling Smørgrav 2014-07-10 15:37:40 +0000
  • 593125c353 Import sha256 from libcperciva Import md2, md4, sha384 and sha512 from XySSL Dag-Erling Smørgrav 2014-07-10 14:51:07 +0000
  • 0d22f2f203 Standard files that "make dist" complains about. Dag-Erling Smørgrav 2014-07-10 14:44:17 +0000
  • bb9690cd94 We need to distribute (but not install) these headers. Dag-Erling Smørgrav 2014-07-10 14:39:28 +0000
  • 1d2f0661b3 Clean up namespace macros and provide algorithm definitions. Dag-Erling Smørgrav 2014-07-10 13:53:05 +0000
  • 2f3ecfa7ba Fix include guard, and always declare the functions. Dag-Erling Smørgrav 2014-07-10 13:40:23 +0000
  • 03dbd212fa Set svn:ignore Dag-Erling Smørgrav 2014-07-10 13:34:18 +0000
  • 77202e13a8 Update setprops and fix props again Dag-Erling Smørgrav 2014-07-10 13:33:08 +0000
  • 6da2e5388a Unbreak the performance tests. Dag-Erling Smørgrav 2014-07-10 13:30:48 +0000
  • b7c8a6f6ae Fix props Dag-Erling Smørgrav 2014-07-10 13:17:47 +0000
  • 41c2325beb Fix copyright; this originated in OpenPAM. Dag-Erling Smørgrav 2014-07-04 11:34:25 +0000
  • 5c33011d59 Add missing header Dag-Erling Smørgrav 2014-07-04 11:26:45 +0000
  • 25b5dd2e33 Add missing unit test for RFC 3986 support Dag-Erling Smørgrav 2014-07-04 11:23:28 +0000
  • 601403cba3 Use custom keywords. Dag-Erling Smørgrav 2014-07-04 11:20:46 +0000
  • ae99587ba4 initial code drop Dag-Erling Smørgrav 2014-07-04 11:18:53 +0000
  • 2e28935df9 structure Dag-Erling Smørgrav 2014-03-11 18:33:48 +0000