SignalMessage constructor
SignalMessage(
- int messageVersion,
- Uint8List macKey,
- ECPublicKey senderRatchetKey,
- int counter,
- int previousCounter,
- Uint8List ciphertext,
- IdentityKey senderIdentityKey,
- IdentityKey? receiverIdentityKey,
Implementation
SignalMessage(
int messageVersion,
Uint8List macKey,
ECPublicKey senderRatchetKey,
int counter,
int previousCounter,
Uint8List ciphertext,
IdentityKey senderIdentityKey,
IdentityKey? receiverIdentityKey) {
final version = Uint8List.fromList([
ByteUtil.intsToByteHighAndLow(
messageVersion, CiphertextMessage.currentVersion)
]);
final m = signal_protos.SignalMessage.create()
..ratchetKey = senderRatchetKey.serialize()
..counter = counter
..previousCounter = previousCounter
..ciphertext = ciphertext;
final message = m.writeToBuffer();
final mac = _getMac(senderIdentityKey, receiverIdentityKey!, macKey,
ByteUtil.combine([version, message]));
_serialized = ByteUtil.combine([version, message, mac]);
_senderRatchetKey = senderRatchetKey;
_counter = counter;
_previousCounter = previousCounter;
_ciphertext = ciphertext;
_messageVersion = messageVersion;
}