diff options
author | Richard van der Hoff <richard@matrix.org> | 2016-09-05 19:49:36 +0100 |
---|---|---|
committer | Richard van der Hoff <richard@matrix.org> | 2016-09-06 15:26:26 +0100 |
commit | 2fc83aa9aca1ce84b3c425a670cdf6a3a8886b34 (patch) | |
tree | 9b89ee865fc3b71f07d645dcd5c499672bca83eb /tests/test_message.cpp | |
parent | 50cd2b2a430b379bf6cee1259867faa08daea1b7 (diff) |
Sign megolm messages
Add ed25519 keys to the inbound and outbound sessions, and use them to sign and
verify megolm messages.
We just stuff the ed25519 public key in alongside the megolm session key (and
add a version byte), to save adding more boilerplate to the JS/python/etc
layers.
Diffstat (limited to 'tests/test_message.cpp')
-rw-r--r-- | tests/test_message.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/tests/test_message.cpp b/tests/test_message.cpp index 06b36dc..25693f5 100644 --- a/tests/test_message.cpp +++ b/tests/test_message.cpp @@ -67,8 +67,8 @@ assert_equals(message2, output, 35); TestCase test_case("Group message encode test"); - size_t length = _olm_encode_group_message_length(200, 10, 8); - size_t expected_length = 1 + (1+2) + (2+10) + 8; + size_t length = _olm_encode_group_message_length(200, 10, 8, 64); + size_t expected_length = 1 + (1+2) + (2+10) + 8 + 64; assert_equals(expected_length, length); uint8_t output[50]; @@ -99,9 +99,10 @@ assert_equals(message2, output, 35); "\x03" "\x08\xC8\x01" "\x12\x0A" "ciphertext" - "hmacsha2"; + "hmacsha2" + "ed25519signature"; - _olm_decode_group_message(message, sizeof(message)-1, 8, &results); + _olm_decode_group_message(message, sizeof(message)-1, 8, 16, &results); assert_equals(std::uint8_t(3), results.version); assert_equals(1, results.has_message_index); assert_equals(std::uint32_t(200), results.message_index); |