| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
blocks as input (and can overlap computations from one block to another -
very nice). Reimport that original version and use it.
|
|
|
|
|
| |
the registers only once and carrying the values over between loop
iterations.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to have been so! Change MDx_HashFunction::hash to a new compress_n
which hashes an arbitrary number of blocks. I had a thought this might
reduce a bit of loop overhead but the results were far better than I
anticipated. Speedup across the board of about 2%, and very
noticable (+10%) increases for MD4 and Tiger (probably b/c both
of those have so few instructions in each iteration of the
compression function).
Before:
SHA-1:
amd64: 211.9 MiB/s
core: 210.0 MiB/s
sse2: 295.2 MiB/s
MD4: 476.2 MiB/s
MD5: 355.2 MiB/s
SHA-256: 99.8 MiB/s
SHA-512: 151.4 MiB/s
RIPEMD-128: 326.9 MiB/s
RIPEMD-160: 225.1 MiB/s
Tiger: 214.8 MiB/s
Whirlpool: 38.4 MiB/s
After:
SHA-1:
amd64: 215.6 MiB/s
core: 213.8 MiB/s
sse2: 299.9 MiB/s
MD4: 528.4 MiB/s
MD5: 368.8 MiB/s
SHA-256: 103.9 MiB/s
SHA-512: 156.8 MiB/s
RIPEMD-128: 334.8 MiB/s
RIPEMD-160: 229.7 MiB/s
Tiger: 240.7 MiB/s
Whirlpool: 38.6 MiB/s
|
| |
|
| |
|
|
|
|
| |
easy to measure
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
was too slow, it was noticably slowing down AutoSeeded_RNG. Reduce the
amount of output gathered to 32 times the size of the output buffer,
and instead of using Buffered_EntropySource, just xor the read file
data directly into the output buffer. Read up to 4096 bytes per file, but
only count the first 128 towards the total goal (/proc/config.gz being
a major culprit - large, random looking, and entirely or almost static).
|
| |
|
| |
|
|
|
|
|
|
| |
--disable-modules. While updating the Gentoo ebuild I found it was
much easier to autogen the configure line if both of these options
are no-ops if used with no value.
|
|
|
|
| |
to 64 bit values before doing multiplication.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
EAX mode taking a BlockCipher* instead of a name.
PK_Signer taking an EMSA* instead of a name.
generate_dsa_primes using an Algorithm_Factory
Changes to how new algorithms are added (look_add.h is gone entirely,
replaced by Algorithm_Factory calls) in xor_ciph. Also update for new
stream cipher key schedule function name and new directory for base
class decl.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
which uses the ANSI/ISO clock function (previously this had been the
Timer::clock default implementation).
|
|
|
|
|
| |
timer alternatives. I realized otherwise each application would be forced
to do the exact same thing, and no reason for that.
|
|
|
|
| |
implementation and then setting it as the default.
|
| |
|
| |
|
|
|
|
|
|
| |
Print the version number at the start of the build.
Fix compiler name in TR1 message
|
| |
|
|
|
|
| |
to support multiple blocks.
|
| |
|
|
|
|
| |
recent doc updates.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
both support TR1 fine AFAICT.
Add ability to explicitly disable using TR1 with --with-tr1=none
Add a marker in the cc info files specifiying if TR1 should be chosen
by default. Yes, autoconf would be better for this than a static
per-compiler setting. Yes, I totally hate autoconf. Yes, I would still
consider autoconf patches. No, I'm not going to do it myself. :)
I am looking forward to being able to safely adopt C++0x and TR2
throughout the library and make the need for a lot of this special-casing
stuff go away.
Until then, it seems better to defaulting to using tr1 (and thus, ECC) than
not.
|
| |
|
|
|
|
|
|
|
| |
when the test failed. I had added them for debugging something long ago.
What I thought was an InSiTo ECC test failure was actually a sucessful test,
it was making sure an Illegal_Point would be thrown in the conditions tested.
So, all seems OK.
|
| |
|
|
|
|
| |
which is a reasonable ordering
|
|
|
|
|
|
|
|
| |
I'm seeing one failure on Core2. Have not diagnosed at all.
A number of tests are #if'ed out. Many were rubbed out in the
original InSiTo version, others I commented out due to changed/removed
APIs.
|
| |
|
| |
|
|
|
|
|
|
|
| |
that were inaccurate or no longer relevant. For instance the documentation
on how to remove algorithms gave the painful nasty manual way that was
the only method in Botan 1.6, however in 1.7/1.8 it is trivial to disable
algorithms from the build using --disable-module.
|
| |
|
| |
|
| |
|
|
|
|
| |
encryption.
|
| |
|