EncryptedPayload.fromJson constructor
Reconstrói um EncryptedPayload a partir de um Map JSON.
O campo algorithm é opcional para compatibilidade com payloads
gerados antes da versão 4.4.0 — se ausente, assume
CryptAlgorithm.chacha20Poly1305.
Lança ArgumentError se algorithm contiver um valor desconhecido.
Implementation
factory EncryptedPayload.fromJson(Map<String, dynamic> json) {
return EncryptedPayload(
algorithm: CryptAlgorithm.fromString(
(json['algorithm'] as String?) ?? 'chacha20-poly1305',
),
ciphertext: base64.decode(json['ciphertext'] as String),
key: base64.decode(json['key'] as String),
tag: base64.decode(json['tag'] as String),
nonce: base64.decode(json['nonce'] as String),
aad: base64.decode(json['aad'] as String),
);
}