Protección de datos sensibles
Protocolo de exposición de datos sensibles en los endpoints de la API
¿Qué consideramos como un dato sensible?
Proceso de consulta de endpoint con datos sensibles
Proceso de desencriptar datos sensibles
const { publicEncrypt, constants, privateDecrypt } = require('crypto');
function decrypt(passphrase: string, privateKey: string, dataEncrypted: Buffer) {
return privateDecrypt(
{
key: privateKey,
padding: constants.RSA_PKCS1_OAEP_PADDING,
oaepHash: "sha512",
passphrase
},
dataEncrypted
);
}
// Convert base64 to Buffer
const encryptedBuff = Buffer.from(dataBase64, 'base64')
// Decrypt Data
const decrypt = decrypt(keys.passphrase, keys.privateKey, encryptedBuff);
console.log('decrypt::', decrypt)
// Decrypt plain
console.log('decrypt:: REAL DATA', decrypt.toString('utf8'))Endpoints relacionados con datos sensibles
CardsLast updated