Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add a loop macro, continue converting the assembly to use the wrapper | lloyd | 2006-08-13 | 2 | -14/+24 |
| | | | | macros. | ||||
* | Set up some macros to help portability and readability | lloyd | 2006-08-13 | 3 | -90/+146 |
| | |||||
* | Format cleanup | lloyd | 2006-08-12 | 1 | -14/+14 |
| | |||||
* | Remove some trailing whitespace | lloyd | 2006-08-12 | 1 | -10/+7 |
| | |||||
* | Reschedule some instructions in attempt to hide latencies | lloyd | 2006-08-12 | 1 | -17/+18 |
| | |||||
* | Fully unroll the byte-reader loop, now to reschedule | lloyd | 2006-08-12 | 1 | -6/+12 |
| | |||||
* | Finish unrolling the expansion loop, and start on the byte-reading loop | lloyd | 2006-08-12 | 1 | -36/+43 |
| | |||||
* | Pull a variable directly out of a live register, rather than going out | lloyd | 2006-08-12 | 1 | -4/+4 |
| | | | | to memory for it. | ||||
* | Rearrange some operations, though instruction scheduling still needs a | lloyd | 2006-08-12 | 1 | -19/+16 |
| | | | | lot of work. | ||||
* | Use different registers in each iteration of the unrolled loop, so we can | lloyd | 2006-08-12 | 1 | -20/+21 |
| | | | | easily rearrange things for better scheduling. | ||||
* | Unroll the expansion loop | lloyd | 2006-08-12 | 1 | -8/+36 |
| | |||||
* | Use indexed addressing to pull out elements of W[], rather than | lloyd | 2006-08-12 | 1 | -30/+36 |
| | | | | incrementing the pointer | ||||
* | Use LEA inside the round functions, various cleanups | lloyd | 2006-08-12 | 1 | -62/+45 |
| | |||||
* | Fix compile problem when no timer modules are compiled in | lloyd | 2006-08-12 | 1 | -0/+1 |
| | |||||
* | Remove the C implementations of the round functions, no longer used | lloyd | 2006-08-12 | 1 | -40/+0 |
| | |||||
* | Entire SHA-1 compression function now implemented in assembly, just needs | lloyd | 2006-08-12 | 2 | -70/+45 |
| | | | | instruction scheduling and code cleanup. | ||||
* | Implement the second set of SHA-1 functions in assembler; add some | lloyd | 2006-08-12 | 2 | -36/+38 |
| | | | | macros in an attempt to keep the code reasonably clean. | ||||
* | Implement the first set of rounds of SHA-1 in assembly | lloyd | 2006-08-12 | 2 | -5/+85 |
| | |||||
* | Get all of the (callee-saved) registers saved so we have maximum space | lloyd | 2006-08-12 | 1 | -11/+14 |
| | | | | for performing operations. | ||||
* | Add preliminary version of an SHA-1 x86 assembly module | lloyd | 2006-08-12 | 3 | -0/+187 |
| | |||||
* | In 'check', always initialize the library and run basic self tests, even | lloyd | 2006-08-12 | 1 | -6/+2 |
| | | | | if run with no arguments. | ||||
* | Remove an unneeded friend declaration for the division function. | lloyd | 2006-08-12 | 1 | -1/+0 |
| | |||||
* | Make the ByteReader class in CAST_128::key_schedule only manipulate | lloyd | 2006-08-10 | 1 | -2/+2 |
| | | | | const pointers, as it doesn't actually need write access to anything. | ||||
* | Remove the public domain notices from the self-test/benchmark code, | lloyd | 2006-08-09 | 12 | -19/+2 |
| | | | | because it turns out to be something of a legal minefield. | ||||
* | Add header guards | lloyd | 2006-08-09 | 1 | -0/+5 |
| | |||||
* | Enable testing the sizes of basic types in the test suite, and fix some | lloyd | 2006-08-09 | 1 | -23/+7 |
| | | | | minor compile errors and warnings that had crept into that code. | ||||
* | Add a simple option parser to the check utility; it makes for much saner | lloyd | 2006-08-09 | 3 | -72/+171 |
| | | | | | | | | | | code in check.cpp, and now the order of options on the command line should not change what heppens. The options taken have changed slightly. All options that take values are now --arg=value instead of "--arg value", and the various --bench-(blah) options have been turned into a new option --bench-type that takes an argument specifying the type of algorithm to benchmark. | ||||
* | Use an object to prevent the leak of memory or the file descriptor if | lloyd | 2006-08-09 | 1 | -19/+40 |
| | | | | something goes wrong and an exception is thrown. | ||||
* | If an exception is thrown anywhere inside Init::initialize, catch it | lloyd | 2006-08-09 | 1 | -34/+39 |
| | | | | | and force a deinitialization before throwing it further up the call stack. | ||||
* | Remove memory leak - the configuration object was not being deleted. | lloyd | 2006-08-09 | 1 | -0/+1 |
| | |||||
* | Add an exception type specific for MemoryMapping_Allocator, simply to cut | lloyd | 2006-08-09 | 1 | -9/+24 |
| | | | | down on repeated strings a bit. | ||||
* | Alter how buffering is performed in MDx_HashFunction:add_data; rather | lloyd | 2006-08-05 | 1 | -11/+19 |
| | | | | | | | than always placing the first block into the temp buffer, we only copy the data into there if we have to (ie, if we have an incomplete block). So calling add_data with a block that is a multiple of the hash function's internal block size is entirely zero-copy. | ||||
* | The two classes that used to need direct access to the SHA-1 | lloyd | 2006-08-05 | 1 | -3/+0 |
| | | | | | internals (Gamma and FIPS_186_RNG) have both been removed, so there is no need to keep the friend declarations. | ||||
* | Make it possible to insert Engines into the front of the queue; | lloyd | 2006-08-05 | 2 | -4/+8 |
| | | | | | | otherwise any Engines added after startup (eg, application-specific ones) would only be used for new algorithm - it wouldn't be possible for them to override existing implementations. | ||||
* | The use_engines flag was not being respected; specifically, if there | lloyd | 2006-08-05 | 2 | -5/+9 |
| | | | | were any engines built into the library, they were used no matter what. | ||||
* | Delete some old testing certs | lloyd | 2006-07-31 | 8 | -124/+2 |
| | |||||
* | Move include of x509_ext.h to x509_ca.h, instead of using forward | lloyd | 2006-07-31 | 2 | -14/+10 |
| | | | | | | | | declaration. Remove not_before and not_after variables, as they were only used once. Use the computed Key_Constraints value when signing a new certificate. | ||||
* | Fix definition of OID 2.5.4.8; was accidentally changed by search-replace | lloyd | 2006-07-31 | 1 | -1/+1 |
| | | | | during cleanups of the initialization code. | ||||
* | Very minor Python wrapper updates | lloyd | 2006-07-31 | 2 | -46/+5 |
| | |||||
* | Remove FIPS140::good_edc; it has never been used and probably will not | lloyd | 2006-07-29 | 2 | -19/+0 |
| | | | | be in the forseeable future. | ||||
* | Change Builtin_Module constructor to take an InitializerOptions | lloyd | 2006-07-28 | 3 | -18/+33 |
| | | | | | | | | instead of just a boolean, so it can (if desired) examine any arguments it likes. Only run the startup self tests if the selftest or fips140 option is toggled on. | ||||
* | Add a "selftest" option that allows the user to disable startup selftests | lloyd | 2006-07-28 | 2 | -0/+9 |
| | |||||
* | Remove unneccessary includes | lloyd | 2006-07-28 | 1 | -2/+0 |
| | |||||
* | Add two more constructors to AlgorithmIdentifier, which take a | lloyd | 2006-07-22 | 2 | -4/+41 |
| | | | | | | Encoding_Option enum that can specify various options. Right now the only one supported/available is USE_NULL_PARAM, to set the parameters to a DER-encoded NULL object | ||||
* | Drop the CMS readme, not really useful now that it is in-tree | lloyd | 2006-07-22 | 1 | -24/+0 |
| | |||||
* | Some more fixes for cms_ealg.cpp (still doesn't compile) | lloyd | 2006-07-17 | 1 | -11/+11 |
| | |||||
* | Don't bail out of the rho computation until 2^32 tries, since the | lloyd | 2006-07-16 | 1 | -3/+3 |
| | | | | | | cycle size is based on the square root of the prime factors, bailing after 2^16 would mean we would be unlikely to find any factors larger than 32 bits. | ||||
* | Have to (potentially) factor the result from the Rho computation, as it | lloyd | 2006-07-16 | 1 | -4/+7 |
| | | | | might be composite. | ||||
* | Changelog updates | lloyd | 2006-07-16 | 1 | -0/+5 |
| | |||||
* | Move the declaration of a_factor outside the loop, and use a do loop | lloyd | 2006-07-16 | 1 | -4/+5 |
| | | | | | instead of a while loop so it doesn't have to be initialized each time through. |