M17-Project / M17_spec

M17 standard specification
GNU General Public License v2.0
149 stars 33 forks source link

Signatures/encryption #138

Closed sp5wwp closed 1 month ago

sp5wwp commented 4 months ago
  1. Expand the definition of the encryption subtype subfield of TYPE with AES key length indication.
  2. Add definitions for ECDSA signed streams.
lwvmobile commented 4 months ago

Something I was considering on that, is if we use the following setup for AES, it'll let us use the crypt code we've got currently and also allow compatibility to m17-tools which still uses the hard coded 128 keylen value, since that signals enc_subtype as 0 on AES, and is also the same progression of key len values that scrambler mode uses.

subtype 0 for AES 128; subtype 1 for AES 192; subtype 2 for AES 256;

sp5wwp commented 4 months ago

Agreed! The enum in the code needs to be changed to start with 0.

sp5wwp commented 4 months ago

AES subtypes added to the spec doc in dce7f5e.

sp5wwp commented 1 month ago

ECDSA added in 9ec7c6c.

sp5wwp commented 1 month ago

Fix the frame numbering (for the frames carrying signature) to 0x7FFC, 0x7FFD, 0x7FFE, 0xFFFF.

sp5wwp commented 1 month ago

Fix the frame numbering (for the frames carrying signature) to 0x7FFC, 0x7FFD, 0x7FFE, 0xFFFF.

Done in f07d251.