From 2fc83aa9aca1ce84b3c425a670cdf6a3a8886b34 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 5 Sep 2016 19:49:36 +0100 Subject: 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. --- tests/test_message.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'tests/test_message.cpp') 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); -- cgit v1.2.3