Commit Graph

29 Commits

Author SHA1 Message Date
Rhys Weatherley
3cc08ef765 Spec rev30: Fixes for the new fallback patterns 2016-07-08 18:08:16 +10:00
Rhys Weatherley
36223590c4 Spec rev30: Add the "no identity hiding" patterns 2016-07-08 05:39:28 +10:00
Rhys Weatherley
f1a2a468c3 Spec rev30: Add NXfallback and IXfallback patterns 2016-07-03 13:24:25 +10:00
Rhys Weatherley
ac6ec2b537 Spec rev30: Call MixKey() on ephemeral pre-messages when PSK active 2016-07-03 09:09:31 +10:00
Rhys Weatherley
881da5a644 Spec rev30: Hash ephemeral pre-messages before static pre-messages 2016-07-02 18:07:44 +10:00
Rhys Weatherley
d88803fa78 Remove AESGCMCipherState for now
Doesn't work yet, and it is difficult to get it to compile on
older Android versions.  Remove it for now until we can come up
with a better solution.
2016-06-30 08:37:55 +10:00
Rhys Weatherley
2bda3038b3 Modify tests so both the system and fallback algorithms can be tested 2016-06-29 16:02:58 +10:00
Rhys Weatherley
01136906e3 Fallback implementations of SHA256 and SHA512 2016-06-29 14:31:59 +10:00
Rhys Weatherley
0d93e22b41 Fallback implementation of AESGCM with no JCE dependencies 2016-06-29 11:20:58 +10:00
Rhys Weatherley
db53b3321a Import the public domain Rijndael AES implementation 2016-06-29 10:49:21 +10:00
Rhys Weatherley
ea4de93775 Fail if the JCE AES implementation does not support 256-bit keys 2016-06-29 09:17:24 +10:00
Rhys Weatherley
fba5785035 Remove direct references to GCMParameterSpec
Doesn't exist in JDK's prior to 1.6
2016-06-29 07:44:12 +10:00
Rhys Weatherley
1964c5a394 Remove references to AEADBadTagException 2016-06-29 07:28:49 +10:00
Rhys Weatherley
148f2b92f4 Replace multi-catch try statements
Older JDK's, particularly those on Android, don't have multi-catch try's.
2016-06-29 07:10:59 +10:00
Rhys Weatherley
63519b8e89 Documentation generation 2016-06-28 15:09:13 +10:00
Rhys Weatherley
cb4e98cdd6 Test harness for running JSON format vector tests 2016-06-28 14:31:07 +10:00
Rhys Weatherley
b5c1689d07 Add the Curve448 primitive to the crypto package 2016-06-27 19:10:49 +10:00
Rhys Weatherley
8b83fc5c27 Implement AES/GCM on top of AES/CTR
Older JDK's do not have built-in AES/GCM but they do have AES/CTR.
2016-06-27 13:35:12 +10:00
Rhys Weatherley
7901c7df23 Unit tests and API improvements for CipherState 2016-06-26 15:28:46 +10:00
Rhys Weatherley
b29ba50927 HandshakeState API 2016-06-25 15:57:05 +10:00
Rhys Weatherley
1764404d1d Add the Curve25519 primitive to the crypto package 2016-06-22 17:59:52 +10:00
Rhys Weatherley
5e10f7dda9 Interface to Diffie-Hellman algorithms 2016-06-18 15:57:29 +10:00
Rhys Weatherley
a47b03674d ChaChaPoly implementation 2016-06-18 14:00:25 +10:00
Rhys Weatherley
688faaec7c Fallback implementations of BLAKE2b and BLAKE2s 2016-06-18 06:13:39 +10:00
Rhys Weatherley
6aaef8409d Implement AESGCM using JCA/JCE 2016-06-17 11:51:06 +10:00
Rhys Weatherley
11e744d189 Remove unnecessary constants 2016-06-17 10:25:28 +10:00
Rhys Weatherley
a2756f72f0 Implement hash algorithms using JCA/JCE 2016-06-17 10:24:53 +10:00
Rhys Weatherley
85b163413f Define the basic interfaces for the protocol API 2016-06-17 09:58:42 +10:00
Rhys Weatherley
34a2430725 Initial commit to create the repository 2016-06-16 17:39:17 +10:00