SenderKeyMessage constructor

SenderKeyMessage(
  1. int keyId,
  2. int iteration,
  3. Uint8List ciphertext,
  4. ECPrivateKey signatureKey,
)

Implementation

SenderKeyMessage(int keyId, int iteration, Uint8List ciphertext,
    ECPrivateKey signatureKey) {
  final version = Uint8List.fromList([
    ByteUtil.intsToByteHighAndLow(
        CiphertextMessage.currentVersion, CiphertextMessage.currentVersion)
  ]);
  final message = protocol.SenderKeyMessage.create()
    ..id = keyId
    ..iteration = iteration
    ..ciphertext = ciphertext;
  final messageList = message.writeToBuffer();
  final signature =
      _getSignature(signatureKey, ByteUtil.combine([version, messageList]));
  _serialized = ByteUtil.combine([version, messageList, signature]);
  _messageVersion = CiphertextMessage.currentVersion;
  _keyId = keyId;
  _iteration = iteration;
  _ciphertext = ciphertext;
}