textsecure storage is not compatible with libsignal-protocol storage and needs migration

Related to migration, e.g. #39 (closed)

Quirks should be all documented in code. Notably:

  • textsecure has a public key as [u8; 32], -protocol has it as [u8; 33] with the first byte a marker DJB_KEY.

Those quirks happen between reading from disk and feeding raw bytes to libsignal-protocol. This means we need to parse the files ourselves, alter the contents, and reserialize, before feeding it to -protocol's deserializer. This may have some impact on compile time, because we need to import .proto and prost for this.

Edited by Ruben De Smet