u/mdw/catacomb
17 years agopgroups: Ship a keyring file containing the custom prime groups.
Mark Wooding [Tue, 16 Jan 2007 21:50:40 +0000 (21:50 +0000)]
pgroups: Ship a keyring file containing the custom prime groups.

This is largely as a useful reference for the benefit of, oh, say the
TrIPE RFC document.

17 years agoignore: tinymp build tree for small-word-size MP library.
Mark Wooding [Tue, 16 Jan 2007 21:35:20 +0000 (21:35 +0000)]
ignore: tinymp build tree for small-word-size MP library.

17 years agoMerge branch 'master' of /home/mdw/public-git/catacomb
Mark Wooding [Wed, 6 Dec 2006 17:56:30 +0000 (17:56 +0000)]
Merge branch 'master' of /home/mdw/public-git/catacomb

* 'master' of /home/mdw/public-git/catacomb:
  rijndael: Make implementation big-endian.
  infra: Ignore possible profiling build.

17 years agorijndael: Make implementation big-endian.
Mark Wooding [Wed, 6 Dec 2006 17:56:03 +0000 (17:56 +0000)]
rijndael: Make implementation big-endian.

This makes very little difference to the performance, and makes GCM
possible.  (GCM is both-endian -- the field-element representation is
little-endian and the counter is big-endian.  This is obviously mad, but
there you go.)

17 years agoprime groups: Fix tests
Mark Wooding [Mon, 27 Nov 2006 16:38:14 +0000 (16:38 +0000)]
prime groups: Fix tests

Some of the tests still used the old groups, so they needed fixing.
Also the group checker was too zealous, and skipped groups depending on
their subgroup order, not field size, which can now cause all sorts of
stupidity.

17 years agoinfra: Ignore possible profiling build.
Mark Wooding [Wed, 22 Nov 2006 11:59:15 +0000 (11:59 +0000)]
infra: Ignore possible profiling build.

17 years agoMerge branch 'master' of git+ssh://metalzone.distorted.org.uk/~mdw/public-git/catacomb/
Mark Wooding [Wed, 22 Nov 2006 11:38:39 +0000 (11:38 +0000)]
Merge branch 'master' of git+ssh://metalzone.distorted.org.uk/~mdw/public-git/catacomb/

17 years agokeyutil: Allow explicit setting of key-id.
Mark Wooding [Wed, 22 Nov 2006 11:36:49 +0000 (11:36 +0000)]
keyutil: Allow explicit setting of key-id.

This is useful (indeed, essential!) for reproducibility of, say, domain
parameters, since otherwise the fingerprints will come out different and
you have to do the comparison by hand.

17 years agoptab: Replace the Catacomb groups.
Mark Wooding [Wed, 22 Nov 2006 11:29:32 +0000 (11:29 +0000)]
ptab: Replace the Catacomb groups.

These new ones are generated by a more reproducible (but very slow)
process.  The key sizes are taken from NIST SP800-57, and cover the full
range, including a truly daft-sized 15360-bit field.

17 years agonoise: Fix freewheel generator's use of setitimer(2).
Mark Wooding [Wed, 20 Sep 2006 15:20:23 +0000 (16:20 +0100)]
noise: Fix freewheel generator's use of setitimer(2).

If the old timer was turned off, don't accidentally turn it on.  While
on some Linux versions, this seems harmless enough, on others it causes
spurious SIGALRM signals to be sent to the process, which is terribly
unhelpful.

17 years agocatcrypt: Increase encryption buffer to 64K.
Mark Wooding [Sat, 13 May 2006 12:05:01 +0000 (13:05 +0100)]
catcrypt: Increase encryption buffer to 64K.

No reason not to, really.

17 years agocatcrypt: Implement symmetric key-encapsulation and signature schemes.
Mark Wooding [Sat, 13 May 2006 11:49:39 +0000 (12:49 +0100)]
catcrypt: Implement symmetric key-encapsulation and signature schemes.

For cases where you don't actually want to send messages, just keep
stuff lying around locally.

17 years agocc-kem: Fix memory leak in DH KEMs.
Mark Wooding [Sat, 13 May 2006 10:10:48 +0000 (11:10 +0100)]
cc-kem: Fix memory leak in DH KEMs.

Just didn't free the context at the end.  How strange.

18 years agoutils: Make very bad ECM factoring program.
Mark Wooding [Fri, 17 Feb 2006 12:01:17 +0000 (12:01 +0000)]
utils: Make very bad ECM factoring program.

  * Extract factoring code from existing `prim' program.

  * Write driver front-end.

18 years agodebian: Fix package sections.
Mark Wooding [Wed, 15 Feb 2006 12:30:11 +0000 (12:30 +0000)]
debian: Fix package sections.

18 years agodh_kcdsagen: Generate cofactor first.
Mark Wooding [Sat, 11 Feb 2006 23:55:26 +0000 (23:55 +0000)]
dh_kcdsagen: Generate cofactor first.

Reorganize the parameter generation so that we generate the cofactor
%$v = (p - 1)/2 q$% first, on its own, and then run a simultaneous
primality search to find %$q$% and %$p$%.  Because %$q$%-sized primes
are (usually) much more common than %$p$%-sized primes, this makes the
search go considerably faster -- though it seems to print many more
dots.

18 years agodh, keyutil: Implement KCDSA key generation.
Mark Wooding [Sat, 11 Feb 2006 20:50:29 +0000 (20:50 +0000)]
dh, keyutil: Implement KCDSA key generation.

New function dh_kcdsagen generates KCDSA prime groups.  It's less quick
than I'd hoped, but it appears to do the right thing.  Make the keyutil
generate keys of this kind, and add documentation.

Currently no tests.

18 years agodh-limlee: Make code return PGEN_ABORT on error, like the comments say.
Mark Wooding [Sat, 11 Feb 2006 20:00:12 +0000 (20:00 +0000)]
dh-limlee: Make code return PGEN_ABORT on error, like the comments say.

The documentation says it returns PGEN_ABORT on error, but it doesn't:
it returns PGEN_FAIL instead.  Since PGEN_ABORT is -1, it makes sense to
do what the comments say, so make it do that.

18 years agopgen-safe: Expunge.
Mark Wooding [Sat, 11 Feb 2006 15:37:20 +0000 (15:37 +0000)]
pgen-safe: Expunge.

No trace remains.  This is an incompatible change, but I doubt anybody
cares.  The high-level key-generation functions still exist and do the
same things they ever did.

18 years agobbs-gen: Don't use the safe stepper.
Mark Wooding [Sat, 11 Feb 2006 15:34:37 +0000 (15:34 +0000)]
bbs-gen: Don't use the safe stepper.

This didn't use the safe-tester anyway.  I no longer understand why this
code was ever written this way, and since I want to eradicate the safe
stepper, this seems a good change now.

18 years agodh-gen: Use new simultaneous prime search.
Mark Wooding [Sat, 11 Feb 2006 15:21:43 +0000 (15:21 +0000)]
dh-gen: Use new simultaneous prime search.

I'm trying to expunge the old `safe prime' search.  This seems to work
now.

18 years agopgen: Implement general simultaneous-primality searching.
Mark Wooding [Sat, 11 Feb 2006 15:20:51 +0000 (15:20 +0000)]
pgen: Implement general simultaneous-primality searching.

Find a collection of primes of the form %$a x + b$% for fixed constants
%$a$% and %$b$%, and a variable %$x$%.

18 years agopgen: Declare steppers and so on as being `pgen_proc's.
Mark Wooding [Sat, 11 Feb 2006 14:02:28 +0000 (14:02 +0000)]
pgen: Declare steppers and so on as being `pgen_proc's.

Just saves some mental effort reading them, and finger effort writing
them.

18 years agopgen_safetest: Use a separate witness for each test.
Mark Wooding [Sat, 11 Feb 2006 12:41:26 +0000 (12:41 +0000)]
pgen_safetest: Use a separate witness for each test.

I have a suspicion that not doing this can do bad things to the
probability of returning a non-prime.

18 years agogcd: General tidying up.
Mark Wooding [Tue, 7 Feb 2006 19:32:47 +0000 (19:32 +0000)]
gcd: General tidying up.

  * Implement a GCD algorithm in calc/gfx.cal (partly to help with
    testing the Python bindings).

  * Clean up the MP and GF implementations: expunge incorrect commentary
    and redundant code.

18 years agoinfra: Clean up project setup
Mark Wooding [Tue, 7 Feb 2006 19:29:56 +0000 (19:29 +0000)]
infra: Clean up project setup

18 years agogf: Fix gf_irreduciblep() for small-degree polynomials.
Mark Wooding [Sat, 4 Feb 2006 16:19:03 +0000 (16:19 +0000)]
gf: Fix gf_irreduciblep() for small-degree polynomials.

Fix division-by-zero error for argument zero, and segfaults for
arguments with degree less than 2 due to skipping the main loop.  Handle
these as a special case.

18 years agopgen/pfilt: Special cases for primality checking.
Mark Wooding [Sat, 4 Feb 2006 13:01:25 +0000 (13:01 +0000)]
pgen/pfilt: Special cases for primality checking.

Don't consider 1, 0, or anything negative to be prime.  Also, add a test
for pgen_primep(), because it's probably useful.

18 years agotests: Fix tests for 222c8a43... (mp-modsqrt change).
Mark Wooding [Sat, 4 Feb 2006 11:59:55 +0000 (11:59 +0000)]
tests: Fix tests for 222c8a43... (mp-modsqrt change).

Ooops.  I accidentally broke some tests (in elliptic curve point-
finding) when I made that change, and (naughty me!) didn't run the full
suite.  I've checked that the breakages are acceptable (i.e., we just
get the positive y-coordinate rather than a random one now) and fixed
the tests.

18 years agoinfra: Remove BRANCHES file.
Mark Wooding [Wed, 1 Feb 2006 18:38:57 +0000 (18:38 +0000)]
infra: Remove BRANCHES file.

This was only interesting when severe discipline was required for
managing branches.  The switch to GIT makes this redundant.  Besides,
I've no longer any idea where all the branches might be. ;-)

18 years agomp-modsqrt: Always return the smaller possible square root.
Mark Wooding [Wed, 1 Feb 2006 18:26:33 +0000 (18:26 +0000)]
mp-modsqrt: Always return the smaller possible square root.

This makes the function more predictable in its behaviour, and therefore
easier to test.

18 years agomp-gcd: Add tests for mp_modinv.
Mark Wooding [Sun, 29 Jan 2006 15:11:16 +0000 (15:11 +0000)]
mp-gcd: Add tests for mp_modinv.

Just noticed there aren't any.  Naughty me.

18 years agoExtract Subversion ignore data.
Mark Wooding [Sat, 28 Jan 2006 10:19:04 +0000 (10:19 +0000)]
Extract Subversion ignore data.

18 years agocatcrypt security fix: sign metadata.
mdw [Tue, 6 Dec 2005 00:23:03 +0000 (00:23 +0000)]
catcrypt security fix: sign metadata.

18 years agoAllow insertion of new random data into the pool as a miscop.
mdw [Wed, 26 Oct 2005 15:43:09 +0000 (15:43 +0000)]
Allow insertion of new random data into the pool as a miscop.

18 years agoCorrectly work with the bizarre negative bases the @mptext@ functions allow.
mdw [Wed, 26 Oct 2005 15:42:43 +0000 (15:42 +0000)]
Correctly work with the bizarre negative bases the @mptext@ functions allow.

18 years agoFix maintainer email address.
mdw [Mon, 24 Oct 2005 14:33:49 +0000 (14:33 +0000)]
Fix maintainer email address.

18 years agoFix segfault in retagging.
mdw [Wed, 5 Oct 2005 09:40:35 +0000 (09:40 +0000)]
Fix segfault in retagging.

18 years agoAccept `-' as a name for standard input.
mdw [Fri, 30 Sep 2005 16:45:54 +0000 (16:45 +0000)]
Accept `-' as a name for standard input.

18 years agoFix catsign verify for -C.
mdw [Tue, 27 Sep 2005 18:25:25 +0000 (18:25 +0000)]
Fix catsign verify for -C.

18 years agoOptionally turn off checking of keys.
mdw [Tue, 27 Sep 2005 18:22:50 +0000 (18:22 +0000)]
Optionally turn off checking of keys.

18 years agoEliminate buggy clone-and-hack keyreport functions.
mdw [Tue, 27 Sep 2005 17:52:53 +0000 (17:52 +0000)]
Eliminate buggy clone-and-hack keyreport functions.

18 years agoCheck freshness on signatures.
mdw [Tue, 27 Sep 2005 17:43:37 +0000 (17:43 +0000)]
Check freshness on signatures.

18 years agoBug fix for key_match
mdw [Tue, 27 Sep 2005 15:50:40 +0000 (15:50 +0000)]
Bug fix for key_match

18 years agokey getattr
mdw [Tue, 27 Sep 2005 11:32:59 +0000 (11:32 +0000)]
key getattr

18 years agoRemove buf bits which moved to mLib. Fix email addresses.
mdw [Fri, 23 Sep 2005 16:05:38 +0000 (16:05 +0000)]
Remove buf bits which moved to mLib.  Fix email addresses.

18 years agoMake name and value outputs of key_nextattr optional.
mdw [Thu, 22 Sep 2005 23:00:16 +0000 (23:00 +0000)]
Make name and value outputs of key_nextattr optional.

18 years agoMajor and incompatible overhaul of key_data representation. Fix leaks.
mdw [Thu, 22 Sep 2005 11:03:20 +0000 (11:03 +0000)]
Major and incompatible overhaul of key_data representation.  Fix leaks.

18 years agoExport better list of errors.
mdw [Tue, 20 Sep 2005 13:30:18 +0000 (13:30 +0000)]
Export better list of errors.

18 years agoReport error in key_create.
mdw [Tue, 20 Sep 2005 13:29:56 +0000 (13:29 +0000)]
Report error in key_create.

18 years agoFixes for Cygwin.
mdw [Thu, 15 Sep 2005 10:30:44 +0000 (10:30 +0000)]
Fixes for Cygwin.

18 years agoIncompatibly fix fingerprinting again. Sigh.
mdw [Wed, 14 Sep 2005 14:31:42 +0000 (14:31 +0000)]
Incompatibly fix fingerprinting again.  Sigh.

18 years agoHashing macros for strings and integers.
mdw [Wed, 14 Sep 2005 14:31:15 +0000 (14:31 +0000)]
Hashing macros for strings and integers.

18 years agoFix error message in merge.
mdw [Tue, 13 Sep 2005 16:56:02 +0000 (16:56 +0000)]
Fix error message in merge.

18 years agoFix formatting some more.
mdw [Tue, 13 Sep 2005 15:41:25 +0000 (15:41 +0000)]
Fix formatting some more.

18 years agoVerify key fingerprints.
mdw [Tue, 13 Sep 2005 15:25:39 +0000 (15:25 +0000)]
Verify key fingerprints.

18 years agoFormatting fixes.
mdw [Tue, 13 Sep 2005 15:25:20 +0000 (15:25 +0000)]
Formatting fixes.

18 years agoBetter PSS testing.
mdw [Tue, 13 Sep 2005 15:24:53 +0000 (15:24 +0000)]
Better PSS testing.

18 years agoTranslate PSS tests to mLib format.
mdw [Tue, 13 Sep 2005 15:24:30 +0000 (15:24 +0000)]
Translate PSS tests to mLib format.

18 years agoStupid mistake fix.
mdw [Tue, 13 Sep 2005 15:23:59 +0000 (15:23 +0000)]
Stupid mistake fix.

18 years agoNew function to decide whether a share is already inserted.
mdw [Tue, 13 Sep 2005 15:23:21 +0000 (15:23 +0000)]
New function to decide whether a share is already inserted.

18 years agoOoops. key_discard doesn't return a value. Make the declaration reflect
mdw [Wed, 29 Jun 2005 10:10:41 +0000 (10:10 +0000)]
Ooops.  key_discard doesn't return a value.  Make the declaration reflect
this!

18 years agoFix documentation for mkphrase. Oops.
mdw [Thu, 9 Jun 2005 17:52:38 +0000 (17:52 +0000)]
Fix documentation for mkphrase.  Oops.

18 years agoDon't print DATA when being quiet. Actually allow `-b' to `decrypt'.
mdw [Wed, 1 Jun 2005 16:03:01 +0000 (16:03 +0000)]
Don't print DATA when being quiet.  Actually allow `-b' to `decrypt'.

18 years agoFix bug which decoded elliptic curve key data wrongly.
mdw [Wed, 25 May 2005 13:28:21 +0000 (13:28 +0000)]
Fix bug which decoded elliptic curve key data wrongly.

18 years agoFix for new automake.
mdw [Wed, 27 Apr 2005 17:55:59 +0000 (17:55 +0000)]
Fix for new automake.

19 years agoFix bug in client error reporting.
mdw [Sun, 10 Apr 2005 17:53:27 +0000 (17:53 +0000)]
Fix bug in client error reporting.

19 years agoUprating of the passphrase pixie.
mdw [Tue, 5 Apr 2005 20:59:07 +0000 (20:59 +0000)]
Uprating of the passphrase pixie.

19 years agoToo obviously cloned. Ooops.
mdw [Fri, 18 Mar 2005 00:33:56 +0000 (00:33 +0000)]
Too obviously cloned.  Ooops.

19 years agoDocument encode and decode commands.
mdw [Fri, 18 Mar 2005 00:32:37 +0000 (00:32 +0000)]
Document encode and decode commands.

19 years agoMinor fixes.
mdw [Fri, 18 Mar 2005 00:29:45 +0000 (00:29 +0000)]
Minor fixes.

19 years agoNew tool for signing and verifying messages.
mdw [Fri, 18 Mar 2005 00:28:07 +0000 (00:28 +0000)]
New tool for signing and verifying messages.

19 years agoSupport strings in buffer formats.
mdw [Fri, 18 Mar 2005 00:26:11 +0000 (00:26 +0000)]
Support strings in buffer formats.

19 years agoUppercase metasyntactic variables in usage message.
mdw [Fri, 18 Mar 2005 00:25:28 +0000 (00:25 +0000)]
Uppercase metasyntactic variables in usage message.

19 years agoIgnore more generated files.
mdw [Sat, 5 Mar 2005 16:52:06 +0000 (16:52 +0000)]
Ignore more generated files.

19 years agoAdd Barreto and Rijmen's Whirlpool hash function.
mdw [Sat, 5 Mar 2005 16:51:19 +0000 (16:51 +0000)]
Add Barreto and Rijmen's Whirlpool hash function.

19 years agoFormatting fix.
mdw [Sat, 5 Mar 2005 16:50:27 +0000 (16:50 +0000)]
Formatting fix.

19 years agoProvide some more useful functions via the miscop interface.
mdw [Sat, 5 Mar 2005 16:48:24 +0000 (16:48 +0000)]
Provide some more useful functions via the miscop interface.

19 years agoStyle: fix cast in execl(3) call.
mdw [Sat, 5 Mar 2005 16:47:54 +0000 (16:47 +0000)]
Style: fix cast in execl(3) call.

19 years agoSimplify the standard filter stepper.
mdw [Sat, 5 Mar 2005 16:47:22 +0000 (16:47 +0000)]
Simplify the standard filter stepper.

19 years agoCorrect lies.
mdw [Sat, 5 Mar 2005 16:47:03 +0000 (16:47 +0000)]
Correct lies.

19 years agoCorrect misunderstanding of how inttypes.h printf format strings work.
mdw [Sat, 5 Mar 2005 16:45:23 +0000 (16:45 +0000)]
Correct misunderstanding of how inttypes.h printf format strings work.

19 years agoBuild failure: don't unlock memory unless we have mlock!
mdw [Sat, 5 Mar 2005 16:44:44 +0000 (16:44 +0000)]
Build failure: don't unlock memory unless we have mlock!

19 years agoAdd some fast paths for standard operations.
mdw [Sat, 5 Mar 2005 16:44:11 +0000 (16:44 +0000)]
Add some fast paths for standard operations.

19 years agoAdd some fast paths for standard operations.
mdw [Sat, 5 Mar 2005 16:43:25 +0000 (16:43 +0000)]
Add some fast paths for standard operations.

19 years agoExport the code to transform DH or EC table entries into usable group specs.
mdw [Sat, 5 Mar 2005 16:42:06 +0000 (16:42 +0000)]
Export the code to transform DH or EC table entries into usable group specs.

19 years agoExport the code to transform DH or EC table entries into usable group specs.
mdw [Sat, 5 Mar 2005 16:41:48 +0000 (16:41 +0000)]
Export the code to transform DH or EC table entries into usable group specs.

19 years agoBBS overhaul (incompatible). Jumping is now by bignum quantities, and
mdw [Sat, 5 Mar 2005 16:40:13 +0000 (16:40 +0000)]
BBS overhaul (incompatible).  Jumping is now by bignum quantities, and
negative jumps are allowed.  All the various cool things are supported via
the miscop interface.

19 years agoDistribute the binary group table source.
mdw [Sat, 5 Mar 2005 16:38:25 +0000 (16:38 +0000)]
Distribute the binary group table source.

19 years agoActually build field-exp.
mdw [Wed, 1 Dec 2004 01:31:09 +0000 (01:31 +0000)]
Actually build field-exp.

19 years agoAllow base 255 (or whatever) in mptext.
mdw [Wed, 1 Dec 2004 01:30:42 +0000 (01:30 +0000)]
Allow base 255 (or whatever) in mptext.

19 years agoBetter reduction.
mdw [Wed, 1 Dec 2004 01:30:06 +0000 (01:30 +0000)]
Better reduction.

19 years agoFix bogus comparison revealed by mp_cmp fix.
mdw [Wed, 1 Dec 2004 01:29:48 +0000 (01:29 +0000)]
Fix bogus comparison revealed by mp_cmp fix.

19 years agoMake prime generation work when function pointers are equal. Get random
mdw [Mon, 22 Nov 2004 01:54:52 +0000 (01:54 +0000)]
Make prime generation work when function pointers are equal.  Get random
noise from network device packet counts.  And fix a really stupid bug
from the beginning of time in mp_cmp().

19 years agoProvide better interface to key locking.
mdw [Thu, 11 Nov 2004 19:40:25 +0000 (19:40 +0000)]
Provide better interface to key locking.

19 years agoLock elliptic-curve keys as requested.
mdw [Thu, 11 Nov 2004 17:34:57 +0000 (17:34 +0000)]
Lock elliptic-curve keys as requested.

19 years agoMore rational initialization and finalization.
mdw [Thu, 11 Nov 2004 12:47:26 +0000 (12:47 +0000)]
More rational initialization and finalization.

19 years agoBunch of errors fixed.
mdw [Thu, 11 Nov 2004 12:47:05 +0000 (12:47 +0000)]
Bunch of errors fixed.

19 years agoFix a number of free/xfree bugs.
mdw [Thu, 11 Nov 2004 00:57:31 +0000 (00:57 +0000)]
Fix a number of free/xfree bugs.

19 years agoAllow modified key files to be discarded.
mdw [Thu, 11 Nov 2004 00:57:15 +0000 (00:57 +0000)]
Allow modified key files to be discarded.