@tech-back/decript-sdk
v0.0.1
Published
SDK em NestJS para descriptografia SHA
Keywords
Readme
Decrypter
Uma classe utilitária em TypeScript/JavaScript para validar labels (whitelabels) e descriptografar strings codificadas com AES-256-CBC.
📦 Instalação
Você pode copiar a classe diretamente para seu projeto ou publicar como pacote privado.
Se estiver usando como parte de um projeto, certifique-se de que as dependências nativas do Node.js (crypto) estejam disponíveis.
🚀 Uso
Importação
import { Decrypter } from './caminho/para/Decrypter';Instanciando
const decrypter = new Decrypter();🔐 Método: decrypt
Descriptografa uma string criptografada em base64 utilizando AES-256-CBC.
Parâmetros
- encryptedUserId: string – A string criptografada em base64.
- key: string – A chave usada para gerar o IV e descriptografar o conteúdo. Deve ter até 32 caracteres.
Retorno
- string – A string descriptografada.
Exemplo
const key = 'minha-chave-secreta';
const encrypted = 'aGVsbG93b3JsZA=='; // Exemplo fictício
const decrypted = decrypter.decrypt(encrypted, key);
console.log(decrypted); // Saída: valor descriptografado🏷️ Método: validadeLabel
Valida se um whitelabel informado está presente em uma lista de labels permitidos.
Parâmetros
- whitelabel: string – O valor a ser validado.
- labels: string[] – Lista de valores válidos.
Regras de validação:
- Ignora espaços em branco e diferenciação de maiúsculas/minúsculas.
- O whitelabel deve ter no máximo 50 caracteres.
- Pelo menos um label válido deve ser fornecido.
- Lança exceções se as regras forem violadas.
Retorno
- boolean – true se for válido, caso contrário uma exceção será lançada.
Exemplo
const labels = ['abc', 'xyz', '123'];
const isValid = decrypter.validadeLabel('ABC', labels);
console.log(isValid); // true⚠️ Exceções
Ambos os métodos podem lançar erros:
validadeLabel:
- 'No valid labels provided for validation.'
- 'Label cannot be an empty string.'
- 'Label cannot exceed 5 characters.'
- 'Invalid label provided. Valid labels are: ...'
decrypt:
- Pode lançar erros se a chave for inválida ou a string não for descriptografável.
