akwizgran
2ff439ffe6
Separated contact transports from secrets and cleaned up some tests.
2012-09-24 18:27:20 +01:00
akwizgran
e779210ced
First stage of key rotation refactoring. Some tests are failing.
2012-09-23 17:40:54 +01:00
akwizgran
eb360475aa
KeyRotatorImpl looks a *lot* like DatabaseCleanerImpl.
2012-09-07 16:58:03 +01:00
akwizgran
f8183a4ce3
Refactored DatabaseCleanerImpl to use Timer and TimerTask.
2012-09-07 16:36:48 +01:00
akwizgran
7a0e22d44c
Renamed clock API package and fixed a test.
2012-09-07 12:47:05 +01:00
akwizgran
2e2eba820d
Handle exceptions thrown by connections' dispose() methods.
2012-09-07 12:46:45 +01:00
Daryl
0fa945a7ed
Updated gmail plugin and unit test, removed unused class.
2012-09-07 16:40:39 +08:00
akwizgran
59dc065c55
Plugin factories can supply clocks for their plugins if needed.
2012-09-06 17:35:52 +01:00
akwizgran
960ead0247
Wrapped the system clock in an interface so it can be replaced in tests.
2012-09-06 17:21:03 +01:00
akwizgran
67eb9d6f93
Unit tests for ConnectionWriterImpl.
2012-09-06 16:38:24 +01:00
Daryl
21e188f9c9
Added method to unit test for ID
2012-09-03 17:11:32 +08:00
Daryl
0362b8578b
Fixed bug "Access to default session denied" and reformatted code
2012-09-03 16:16:15 +08:00
Daryl
617c65dd48
Added gmail plugin containing both imap and smtp, with unit test
2012-08-30 18:48:25 +08:00
akwizgran
fbbebb7cfc
Unit tests and a bugfix for IncomingEncryptionLayer.
...
Throw FormatException rather than RuntimeException if authenticated
decryption fails.
2012-08-29 20:28:50 +01:00
akwizgran
0b0fa76686
Plaintext frames don't need to include space for the MAC.
2012-08-29 19:30:10 +01:00
akwizgran
5b4f566822
Code layout.
2012-08-29 18:54:44 +01:00
akwizgran
c8038a5865
Authentic but invalid frames should throw FormatException.
2012-08-29 18:52:55 +01:00
akwizgran
cea76cce7e
Use consistent wording.
2012-08-29 18:48:42 +01:00
akwizgran
88e7cc786f
If there's space for a partial final frame, use it.
2012-08-29 18:11:30 +01:00
akwizgran
a104548f7c
Allow for the maximum overhead when calculating capacity.
2012-08-28 14:22:29 +01:00
akwizgran
6965f809c7
Don't create tag ciphers and tag keys unnecessarily.
2012-08-28 12:02:37 +01:00
akwizgran
1762eaf3e9
Allow the initiator to close a connection without writing.
...
This will make it easier for simplex transports to discard empty
connections.
2012-08-28 11:38:26 +01:00
akwizgran
ff73905330
Changed to fixed-length frames (mostly untested).
2012-08-28 09:15:04 +01:00
akwizgran
b8b18add33
Replaced BouncyCastle with SpongyCastle for Android compatibility.
2012-08-24 12:22:40 +01:00
akwizgran
a9d196d511
Use the same method as Android to generate the Bluetooth UUID.
2012-08-22 11:53:41 +01:00
akwizgran
f4b34ca975
Moved defunct invitation and installer code to sandpit repo.
2012-07-03 10:49:43 +01:00
akwizgran
3eb3f8be3d
Code cleanup for the transport protocol.
2012-05-24 19:08:53 +01:00
akwizgran
d6b260ed61
Use AES/GCM instead of AES/CTR and HMAC.
...
This makes us Suite B compliant and saves 32 bytes per frame. The
AES/GCM implementation refuses to decrypt the frame header before
checking the MAC, so we have to use AES/CTR to peek at the header. The
header is still covered by the MAC, and we still check it after peeking!
2012-05-24 18:38:19 +01:00
akwizgran
d074652f43
Incremental subscription updates (untested).
2012-05-19 02:17:41 +02:00
akwizgran
fadf0221d2
Use a DB index to avoid linear insertion time.
2012-05-19 01:09:24 +02:00
akwizgran
1ca4ea9dcd
Further progress towards incremental subscription updates.
2012-05-18 23:54:03 +02:00
akwizgran
b4f0da53b5
Use a separate linked list for each contact, containing visible groups.
2012-05-17 23:08:57 +02:00
akwizgran
2f4b347cdf
Keep a linked list of the IDs of subscribed groups.
2012-05-17 21:25:10 +02:00
akwizgran
c1133644e8
Debugging code to track down TorPuginTest failures.
2012-05-12 16:58:00 +02:00
akwizgran
46ed0cc4b1
Minor changes to serialisation library (mostly renaming).
2012-05-09 13:17:04 +02:00
akwizgran
78e18fb373
Simplified serialisation format.
2012-05-08 11:02:49 +02:00
akwizgran
a82ae82108
Optionally create a Tor plugin without a hidden service. Should speed up
...
tests.
2012-05-04 17:46:29 +01:00
akwizgran
4338bd9a8b
Refactored PollingRemovableDriveMonitor, fixed test.
2012-05-04 14:24:16 +01:00
akwizgran
5814826573
Separated key agreement algorithm from signature algorithm.
2012-04-28 18:02:28 +01:00
akwizgran
b01b17f2b1
Fixed some key derivation bugs and removed an unnecessary argument.
...
CryptoComponentImpl needs some unit tests.
2012-03-29 20:11:11 +01:00
akwizgran
15d7fd5796
Encode the frame number at the start of the IV (easier to describe).
2012-03-29 19:38:53 +01:00
akwizgran
d7581586fd
Length prefix all KDF arguments.
2012-03-29 16:58:21 +01:00
akwizgran
474fa3d523
All KDF arguments must be either null-terminated or length-prefixed.
2012-03-29 15:59:01 +01:00
akwizgran
0391c4cfcd
Merged some redundant code.
2012-02-24 00:01:47 +00:00
akwizgran
c316ebcf7a
Partial implementation of the invitation protocol (untested).
2012-02-23 23:18:25 +00:00
akwizgran
34cd8cddc3
Upgraded hash function to SHA-384 and MAC to HMAC-SHA-384.
...
This matches the security level of AES-256 according to NSA Suite B. To
better comply with Suite B we should replace the combination of CTR mode
and HMAC with GCM, which would reduce the MAC size from 48 to 16 bytes.
2012-02-22 13:17:07 +00:00
akwizgran
a9d91beaaa
Removed unused variables.
2012-02-16 15:18:39 +00:00
akwizgran
c0eb71748c
Removed an unnecessary allocation.
2012-02-10 16:44:18 +00:00
akwizgran
4ca5be7c06
Added a flag to indicate the last frame of the connection.
2012-02-07 10:46:01 +00:00
akwizgran
e8660c13ca
Use a single NetLayer instance for all connections.
2012-02-07 09:58:13 +00:00