Responsible for decrypting megolm session data retrieved from a remote backup. The result of CryptoBackend#getBackupDecryptor.

interface BackupDecryptor {
    sourceTrusted: boolean;
    decryptSessions(
        ciphertexts: Record<
            string,
            KeyBackupSession<
                AESEncryptedSecretStoragePayload
                | Curve25519SessionData,
            >,
        >,
    ): Promise<IMegolmSessionData[]>;
    free(): void;
}

Properties

sourceTrusted: boolean

Whether keys retrieved from this backup can be trusted.

Depending on the backup algorithm, keys retrieved from the backup can be trusted or not. If false, keys retrieved from the backup must be considered unsafe (authenticity cannot be guaranteed). It could be by design (deniability) or for some technical reason (eg asymmetric encryption).

Methods