akwizgran
e8f33c0e6e
Merge branch 'introduction-ui-messages' into 'master'
...
Fix introduction response messages in UI and some minor fixes
Closes #923
See merge request akwizgran/briar!776
2018-04-27 21:42:10 +00:00
Torsten Grote
5f6af4e40f
Fix introduction response messages in UI and some minor fixes
2018-04-27 16:22:10 -03:00
Torsten Grote
55a329a879
Merge branch '474-automatic-decline' into 'master'
...
Send automatic decline when other introducee declines
See merge request akwizgran/briar!775
2018-04-27 17:58:45 +00:00
akwizgran
23f0864d8b
Don't track invisible decline message.
2018-04-27 18:35:07 +01:00
akwizgran
c0dfe3e85a
Sent automatic decline when other introducee declines.
2018-04-27 17:33:24 +01:00
Torsten Grote
31b69577e8
Merge branch '474-introduction-client' into 'master'
...
New Introduction Protocol
Closes #308 , #377 , #474 , and #613
See merge request akwizgran/briar!758
2018-04-27 14:43:01 +00:00
Torsten Grote
99dba69c87
Only add transport properties and keys when the contact was added
...
This will be changed once we have a way to reset state for peers
that were contacts already at some point in the past.
One contact might have deleted the other, but not vice versa.
So they have mismatching state that needs to be reset.
See #2 for more information.
2018-04-27 11:30:18 -03:00
Torsten Grote
44f5a9db1e
Address last review comments
2018-04-27 11:04:08 -03:00
Torsten Grote
80a9689316
Address second round of review comments
2018-04-26 20:39:17 -03:00
Torsten Grote
337f7e7b8f
Unify introduction response methods and handle ProtocolStateException
...
It is possible that a remote DECLINE message arrives short before the
user responds to the introduction.
This will cause a ProtocolStateException which (for now) is just caught
and a generic (existing) error message will be shown.
2018-04-26 18:18:31 -03:00
Torsten Grote
f8f98ed95d
Properly handle DECLINE messages in START state
...
Previously, DECLINE messages let directly to the START state
for introducer and introducees.
So incoming ACCEPT and DECLINE messages needed to be ignored in START state
introducing undefined behavior into the protocol.
This is fixed with this commit by adding two additional states
to the introducer state machine as well as making use of the existing
LOCAL_DECLINED state for the introducees.
2018-04-26 18:00:57 -03:00
Torsten Grote
bd5504de26
Add a MAC to the ACTIVATE message to prevent the introducer to fake them
...
A fake ACTIVATE message would cause us to activate the transport keys
before the contact has received our auth message,
which would compromise forward secrecy.
2018-04-26 16:56:38 -03:00
Torsten Grote
0e04044ebb
Ensure that incoming messages are expected in the current state
...
Previously, the introducer would process and forward invalid messages by
the introducees. This commit adds the necessary checks and tests.
2018-04-26 11:18:04 -03:00
Torsten Grote
0a5d408686
Add a test for when one introducee had deleted the other one
2018-04-25 14:42:17 -03:00
Torsten Grote
f94db28035
Handle and test introductions to existing contacts
2018-04-25 13:30:51 -03:00
Torsten Grote
b291fcd2cd
Only allow new introductions in START state
...
When the user attempts an introduction, instead of the introduction
message input field, an explanatory text will be shown and the
introduction can not be made until the last one has been finished.
2018-04-25 12:05:15 -03:00
Torsten Grote
94a6137a42
Also validate encoded message in MessageEncoder test
2018-04-25 10:52:32 -03:00
Torsten Grote
72e9a9d807
Address first round of review comments for new IntroductionClient
2018-04-25 10:43:56 -03:00
Torsten Grote
a9b678df32
Remove broken and deprecated MessageQueue as it is not needed anymore
...
Closes #308
2018-04-25 10:14:04 -03:00
Torsten Grote
f81ef30b47
Replace old introduction client with new one
2018-04-25 10:14:01 -03:00
Torsten Grote
1bc29fec06
IntroductionManager and Protocol Engines
2018-04-25 10:13:41 -03:00
Torsten Grote
61b216f572
Copy over Introduction API messages and events from old client
2018-04-25 10:13:41 -03:00
Torsten Grote
d57102ed90
IntroductionCrypto: Create dedicated class to handle introduction related crypto
2018-04-25 10:13:40 -03:00
Torsten Grote
e1fae7ad95
Implement SessionEncoder and SessionParser
2018-04-25 10:13:40 -03:00
Torsten Grote
672a52b2e5
Implement MessageEncoder and MessageParser
2018-04-25 10:13:39 -03:00
Torsten Grote
155c6a5613
Messages and Validator for new Introduction Client
2018-04-25 10:13:39 -03:00
Torsten Grote
218b2f7ff9
Fix activating transport keys in JdbcDatabase
2018-04-25 10:13:38 -03:00
Torsten Grote
f78f065204
Merge branch 'constant-time-mac-verification' into 'master'
...
Add constant-time method for verifying MACs
See merge request akwizgran/briar!773
2018-04-25 12:08:49 +00:00
akwizgran
0217c205a1
Add constant-time method for verifying MACs.
2018-04-25 12:23:46 +01:00
akwizgran
615f527270
Renamed method that now runs on IoExecutor.
2018-04-24 17:43:28 +01:00
akwizgran
b9cf1da861
Merge branch 'test_data_config' into 'master'
...
Make test data creation configurable.
Closes #1149
See merge request akwizgran/briar!771
2018-04-24 16:35:15 +00:00
goapunk
69c34adae3
Remove createTestData()
2018-04-24 16:57:02 +02:00
goapunk
fe213d46e3
Address review comments
2018-04-24 16:05:46 +02:00
goapunk
ac1bfcae60
Make test data creation configurable.
2018-04-24 12:29:20 +02:00
akwizgran
b30c2a8033
Merge branch 'fix_bt_test_data' into 'master'
...
Create a valid BT MAC and UUID when creating testdata
See merge request akwizgran/briar!769
2018-04-24 09:26:42 +00:00
goapunk
575847cb36
Create a valid BT MAC and UUID when creating testdata
2018-04-23 21:05:14 +02:00
akwizgran
951605151f
Merge branch 'transport-properties' into 'master'
...
Helper methods for dealing with TransportProperties
See merge request akwizgran/briar!768
2018-04-23 09:05:14 +00:00
Torsten Grote
05735e7a48
Add methods for dealing with TransportProperties to ClientHelper
2018-04-21 18:23:34 -03:00
Torsten Grote
f835e82653
Merge branch 'download-briar-button' into 'master'
...
Add download button to ExpiredActivity
See merge request akwizgran/briar!766
2018-04-19 17:11:49 +00:00
akwizgran
d074e4a3d6
Add download button to ExpiredActivity.
2018-04-19 17:39:07 +01:00
akwizgran
87a92c9ab6
Merge branch 'parse-transport-properties' into 'master'
...
Helper method for parsing transport properties
See merge request akwizgran/briar!764
2018-04-19 16:01:16 +00:00
akwizgran
89cc769dea
Don't accept empty keys/values in transport properties.
2018-04-19 16:48:59 +01:00
akwizgran
fcdc6ebafd
Helper methods for parsing transport properties.
2018-04-19 16:20:32 +01:00
akwizgran
215d236c2c
Merge branch 'forward-compatible-message-ids' into 'master'
...
Generate message and group IDs in a forward-compatible way
See merge request akwizgran/briar!763
2018-04-19 14:55:39 +00:00
Torsten Grote
e1b8b271e3
Merge branch 'offline-build' into 'master'
...
Don't download Tor binaries if they already exist
See merge request akwizgran/briar!760
2018-04-19 13:08:21 +00:00
akwizgran
9379990480
Use block label for root hash of single-block messages.
2018-04-19 13:13:31 +01:00
akwizgran
c7718db419
Skip second verification if first succeeds.
2018-04-18 17:01:02 +01:00
akwizgran
9196169561
Generate message and group IDs in a forward-compatible way.
2018-04-18 16:34:02 +01:00
akwizgran
ff9971b728
If verification fails, delete, download and re-verify.
2018-04-18 11:03:39 +01:00
Torsten Grote
8decc73f4d
Merge branch 'max-client-id-length' into 'master'
...
Set max length for client IDs
See merge request akwizgran/briar!762
2018-04-17 19:01:22 +00:00