EncryptedPayload.fromJson constructor

EncryptedPayload.fromJson(
  1. Map<String, dynamic> json
)

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),
  );
}