akwizgran
d7f204019d
Merge branch 'use-xsalsa20-poly1305' into 'master'
...
Use XSalsa20-Poly1305 instead of AES-GCM for transport encryption and password storage.
This patch integrates @str4d's new authenticated cipher implementation. It depends on !18 .
See merge request !35
2015-12-28 18:07:20 +00:00
str4d
efa7ac00ea
Merge branch '190-key-manager-duplicates' into 'master'
...
Fix off-by-one error in key rotation
Fixes #190 .
See merge request !32
2015-12-23 19:41:21 +00:00
akwizgran
fc897bd1b9
Use XSalsa20-Poly1305 instead of AES-GCM. #111
2015-12-18 16:47:01 +00:00
akwizgran
e6eb1707a9
Set STREAM_HEADER_IV_LENGTH to 24 to match spec.
2015-12-18 13:34:02 +00:00
akwizgran
f2efe7f2ea
Implement stream header for BTPv2. #111
2015-12-18 13:34:02 +00:00
akwizgran
aab62aaffc
Added sanity checks to catch bugs like #190 .
2015-12-18 11:31:11 +00:00
akwizgran
351e1bbbe6
Facade for forum post headers. #172
2015-12-17 16:56:58 +00:00
akwizgran
f899bc0c38
Facade for private message headers. #173
2015-12-17 16:56:58 +00:00
akwizgran
87689855da
Facades for private messaging. #173
2015-12-17 16:56:58 +00:00
akwizgran
4450ab171a
Facades for forums. #172
2015-12-17 16:56:58 +00:00
akwizgran
c5282c5b17
Moved some API classes into packages.
2015-12-17 16:56:57 +00:00
akwizgran
9fbdb08cf1
Created interfaces for use by UI. #172 #173
2015-12-17 16:56:57 +00:00
Torsten Grote
2d28dcada2
Create two new events to signal enabling and disabling of transports
2015-12-17 11:34:10 -02:00
akwizgran
e9226dc8e2
Fixed some missing imports from recent refactoring.
2015-12-16 12:50:17 +00:00
akwizgran
6e61504d24
Removed message expiry code. #180
2015-12-16 12:17:38 +00:00
akwizgran
2ca2356ecc
Moved MessageHeader to sync package.
2015-12-15 15:05:16 +00:00
akwizgran
e370cafb12
Moved classes from messaging package to sync package.
2015-12-15 15:05:06 +00:00
akwizgran
e7e7bf35ea
Use 'forum' instead of 'group'. #174
2015-12-15 13:23:52 +00:00
akwizgran
9868feeb2a
Refactor KeyManager and TagRecogniser. #55
2015-12-14 11:02:49 +00:00
akwizgran
912ba394c5
Refactored FileUtils.
...
Removed methods that are no longer needed for Java 6, moved the remaining method into the utils directory.
2015-12-10 15:58:52 +00:00
Torsten Grote
aa7d7642bf
make message status persistent and initialize it from database
2015-12-10 11:25:41 -02:00
Torsten Grote
0a8c42b939
Improve how the status of messages is indicated.
...
Remove the Toast that always says 'Message Sent' and show graphical
indicators instead that show either:
* message is waiting to be sent
* message was sent (or requested)
* message was delivered
2015-12-10 10:11:27 -02:00
Ernir Erlingsson
a5fd7ff9dc
Added dependency injections for FileUtils and removed redundant code
2015-12-10 11:07:10 +01:00
Ernir Erlingsson
2a61fa94d1
modified .gitignore and removed *.iml from git
2015-12-09 00:33:22 +01:00
akwizgran
061479dd68
Set source and target version to Java 6 in subprojects.
2015-12-04 10:12:01 +00:00
akwizgran
8529c976c2
Renamed a bunch of lock variables.
...
"synchLock" will become confusing when we have lots of objects with "sync" in the name.
2015-12-03 16:39:53 +00:00
akwizgran
7bc08b2de7
Updated Gradle wrapper.
2015-12-03 12:10:36 +00:00
akwizgran
8ae3fb3e35
Upgraded Spongy Castle to 1.53, fixed tests. #146
2015-12-03 11:12:16 +00:00
akwizgran
427efdc7d6
Raise minimum Java version to 6, upgrade H2. #24
2015-12-02 14:59:51 +00:00
akwizgran
79d9b4b6af
Raised minimum Android version to 2.3 (API 9). #23
2015-12-02 13:20:55 +00:00
akwizgran
7eb7257076
Added project files for Android Studio.
2015-11-30 11:49:44 +00:00
akwizgran
027ae8340f
Whitespace-only code formatting changes.
2015-11-30 09:38:25 +00:00
akwizgran
41c4c4d808
Renamed raw data type.
2015-05-02 21:05:23 +01:00
akwizgran
b8e37a5421
Renamed serial component to data, moved consumers to briar-core.
2015-05-02 20:39:24 +01:00
akwizgran
416719e3d9
Removed silly SerialComponent interface.
2015-05-02 20:30:25 +01:00
akwizgran
32c9ce50d9
Moved the messaging protocol one step closer to BSP.
...
This breaks backward compatibility for the wire protocol and messages
stored in the database. The database schema version has been
incremented.
2015-05-01 16:59:27 +01:00
akwizgran
dea5a44724
Simpler forum sharing UX.
2015-04-29 15:08:58 +01:00
akwizgran
a1d2aaf10e
Use JDK 1.7, target Android 5.1.
2015-04-03 20:56:01 +01:00
akwizgran
7fbad8dc26
Use FortunaGenerator to implement PseudoRandom.
2015-01-14 20:46:03 +00:00
akwizgran
920c81199e
Forgot to update some constants to reflect the new crypto primitives.
2015-01-14 16:38:15 +00:00
akwizgran
112d80420c
Downgrade to 256-bit curve for performance.
...
Also reduced hash function to 256 bits because our target security level
is now 128 bits.
2015-01-09 13:23:44 +00:00
akwizgran
5d46d3a4b4
AuthenticatedCipher interface isn't needed outside crypto package.
2015-01-09 13:06:44 +00:00
akwizgran
dc5e37a96d
Remove AAD from AuthenticatedCipher interface.
2015-01-09 13:01:02 +00:00
akwizgran
4e57029d98
Use constant-time GCM multiplier.
2015-01-06 19:30:11 +00:00
akwizgran
1f69f0d2f6
Variable-length frames (untested).
2015-01-05 17:35:45 +00:00
akwizgran
d3bf2d59a1
Use the same maximum frame length for all transports.
2015-01-05 16:24:44 +00:00
akwizgran
358166bc12
Don't try to erase secrets from memory.
...
1. The things we're really trying to protect - contact identities,
message contents, etc - can't be erased from memory because they're
encapsulated inside objects we don't control.
2. Long-term secrets can't be protected by erasing them from memory
because they're stored in the database and the database key has to be
held in memory whenever the app's running.
3. If the runtime uses a compacting garbage collector then we have no
way to ensure an object is erased from memory.
4. Trying to erase secrets from memory makes the code more complex.
Conclusion: Let's not try to protect secrets from an attacker who can
read arbitrary memory locations.
2014-12-29 21:08:27 +00:00
akwizgran
f316d64afa
Moved stream crypto to crypto component.
2014-12-29 19:55:05 +00:00
akwizgran
388b36b6be
Check periodically for retransmittable packets. Bug #46 .
2014-12-14 20:26:41 +00:00
akwizgran
29a6596ee3
Use the transport's idle timeout, not a hardcoded value.
2014-12-14 15:18:39 +00:00