Executando verificação de segurança...
1

Você precisa mostrar ou utilizar o cpf/cnpj no seu sistema ou ele só serve de chave?

Se for somente usado como chave, encripta o cpf/cnpj usando um salt predefinido, como a hora de cadastro do usuário por exemplo.

Assim se alguém conseguir acesso ao seu redis, pode até pegar a chave mas o cpf/cnpj não fica exposto e por consequência problemas com gdpr/lgpd.

Carregando publicação patrocinada...
1

Como no desafio técnico você precisa consultar uma api externa fake que retorna um autorizado ou negado. se for negado, tenho que reverter todo o processo e devolver o valor de transação para o cpf / cnpj do remetente.

Imagino que usar um algoritmo de hash tipo argon / bcrypt não seja uma boa, já que são irreversíveis, devo usar uma criptografia?

1

Eu acho que usar criptografia sincrona ou assíncrona pra esse caso seria overengineering.

Eu arrumaria uma outra forma de guardar essa chave no redis. Claro, isso vai depender dos seus requisitos e trade-offs.

Porém se usar criptografia, não hashing como sugeri anteriormente, tenha em mente que você vai ter que gerenciar/guardar a chave, sincrona ou assíncrona, e que criptografia assíncrona impacta diretamente a performance. Ou seja, se seu redis vai guardar um número considerável de registros, fica atento a isso.