decryptAny static method
Decifra payload despachando para o algoritmo correto automaticamente.
Lê o campo EncryptedPayload.algorithm e chama o método correspondente.
Algoritmos suportados: chacha20-poly1305, aes-gcm, aes-cbc, aes-ctr.
Lança CryptException para algoritmos desconhecidos.
final plain = CryptUtil.decryptAny(payload); // funciona com qualquer algoritmo
Implementation
static List<int> decryptAny(EncryptedPayload payload) {
switch (payload.algorithm) {
case CryptAlgorithm.chacha20Poly1305:
return decryptBytes(payload);
case CryptAlgorithm.aesGcm:
return decryptAesGcm(payload);
case CryptAlgorithm.aesCbc:
return decryptAesCbc(payload);
case CryptAlgorithm.aesCtr:
return decryptAesCtr(payload);
}
}