Commit Graph

90 Commits

Author SHA1 Message Date
6fabbe6af1 Initial port-over of ECDSA signing. 2018-05-16 22:00:17 -07:00
f83b8a3fe5 Ignore more things. 2018-05-15 15:42:51 -07:00
61f4a009a0 Update the Travis build to use stable, and to leave some time for the tests to run. 2018-05-15 14:45:39 -07:00
1d67b4c775 Split the encryption test suite into two parts, to help reduce the cost of the test suite. 2018-05-15 07:28:00 -07:00
81ccf3e06b Trying to cut down the time taken running the test suite, so that we fit in Travis's expectations. 2018-05-12 16:41:55 -07:00
219641da5e Try to speed up DSA a bit using Barrett reduction. 2018-05-12 16:41:33 -07:00
f0f4891abe DSA! Working, with tests! 2018-05-12 08:04:33 -07:00
3d767c3e13 Switch to a Java-based test generator, which seems to work better. 2018-05-06 21:22:10 -07:00
a2b4baa087 Initial DSA support.
Should be upgraded with faster modulo operations and a
more full test suite.
2018-05-05 21:06:11 -07:00
213c75ad51 Add some #[ignore]s for the longer-running tests. 2018-05-05 19:47:59 -07:00
29a14b39e6 Fix the bits() implementation, and add is_multiple_of() and gcd(). 2018-05-05 19:42:21 -07:00
c34629aa47 Add conversions for BigInt/BigUint. 2018-05-05 19:41:30 -07:00
b01c59a094 I've started playing with IDEs, let's ignore their leavings. 2018-05-05 19:38:48 -07:00
fa04efa5fe Encryption! With test cases. 2018-05-02 17:05:17 -07:00
bd0ddd848b A very slightly faster modexp. 2018-05-01 23:04:06 -07:00
9c60a3bc3e Ignore the Haskell executable I generated. 2018-05-01 22:31:04 -07:00
7c28727f73 RSA signature verification. 2018-05-01 22:30:07 -07:00
c9092ffe6a Slightly better test generation for RSA signatures. 2018-05-01 22:29:37 -07:00
296bb6ad90 Remove an unnecessary mut. 2018-05-01 22:28:59 -07:00
d9df506920 Start with RSA signing! Looks like it works against Haskell RSA test vectors. 2018-04-30 13:05:57 -07:00
2eacea8ff9 Factor out the testing code, so we can use it later. 2018-04-30 13:05:10 -07:00
153d88237f Clean up (and make a lot more flexible) the code to translate to/from bytes. 2018-04-30 13:04:46 -07:00
5758b6e22b Factor out the gold testing infrastructure so we can use it elsewhere. 2018-04-23 20:31:02 -07:00
baa70a6ce6 Starting to include RSA crypto. 2018-04-14 10:45:11 -07:00
b5a5cbdd98 Serialization routines. 2018-04-14 07:56:03 -07:00
4985426e74 Prospective prime support. 2018-04-14 07:16:50 -07:00
c45235473a Support modular inverses. 2018-04-14 07:05:57 -07:00
b1c659087d Add a quick test to ensure that our GCD algorithm works. 2018-04-14 07:01:59 -07:00
0d08f53d70 Make sure we print 0. 2018-04-14 06:59:49 -07:00
109e23789a Support fast modular exponentiation for when your base is roughly the same order of magnitude as the modulo. 2018-04-13 11:51:39 -04:00
551ebeac3b Fix some println!() leavings. 2018-04-13 11:06:42 -04:00
017392ff6c Fix the conversion functions, make sure we can do usize, too. 2018-04-13 10:57:22 -04:00
d98baa1381 Fix Barrett reduction. 2018-04-13 10:56:59 -04:00
330dabe017 Shift the gold testing infrastructure into its own module, and add the Haskell program I used to generate the tests. 2018-04-13 10:56:42 -04:00
675f8adc7e [BROKEN] Division seems to be broken? Might need better test vectors. 2018-04-05 18:02:03 -07:00
5868553c74 First whack at prime numbers and such. 2018-04-04 17:27:07 -07:00
ceb1e9eb58 Fix some shifting issues. 2018-04-04 17:26:49 -07:00
3cd37a881d First whack at modular inverses. 2018-04-04 18:47:02 -04:00
2f16a45784 Quickcheck properties for signed numbers. 2018-04-04 18:28:01 -04:00
f06f83583f Whoops. Don't correct for rounding if there's no remainder on the division. 2018-04-04 18:13:50 -04:00
ae6a33f4b8 Support negation for signed numbers. 2018-04-04 18:12:30 -04:00
8a4693d30d Zero is a problem for me. 2018-04-04 17:57:11 -04:00
20592a3d65 I guess i128_type isn't stable in the beta after all. 2018-04-03 07:04:38 -04:00
acda294bac Signed numbers! 2018-04-02 16:36:28 -04:00
c4409d9c25 Fix some printlns and other bad bits. 2018-04-02 15:26:41 -04:00
ec0f0dc597 Add support for gold value testing, as well, and test some stuff. 2018-04-02 15:26:16 -04:00
80f57b9f22 Fix division by not returning a weirdly-shifted remainder when the quotient is zero. 2018-04-02 15:24:48 -04:00
fa33de88db Fix subtraction. 2018-04-02 15:23:38 -04:00
b92b47d971 [BROKEN] First crach at division. 2018-04-01 20:43:19 -07:00
a4e65fa35f Fix multiplication when either argument is zero. 2018-04-01 20:42:49 -07:00