2.0.2 • Published 1 year ago

@bussolaamazony/encrypt-card v2.0.2

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

Bussola Amazony Encrypt Card

Biblioteca criada com o intuito de criptografar os dados de um cartão provenientes de um formulário antes de enviá-los ao back-end, para se manter em conformidade com as normas PCI DSS.

Instalação

npm i @bussolaamazony/encrypt-card

Exemplo de uso

Importe a biblioteca:

import { EncryptCard } from '@bussolaamazony/encrypt-card';

Aqui você pode utilizar o axios para enviar o token e iv com segurança ao back-kend:

let cardData = {
    number: '5505 9304 7936 7317',
    holder: 'holder example card',
    exp_month: '05',
    exp_year: '2024',
    cvc: '216',
};

EncryptCard.encrypt(cardData, 'your-256-bit-secret-key').then(data => {
    console.log('Encrypted Token: ' + data.token);
    console.log('IV (Initialization Vector): ' + data.iv);
});

Utilize OpenSSL no back-end para descriptografar os dados, segue exemplo em PHP:

$decrypted = openssl_decrypt(base64_decode($_REQUEST['Encrypted Token']), 'aes-256-cbc', 'your-256-bit-secret-key', OPENSSL_RAW_DATA, base64_decode($_REQUEST['IV (Initialization Vector)']));
if ($decrypted === false) {
    throw new \Exception(openssl_error_string());
}

$cardData = json_decode($decrypted);

Utilize OpenSSL para gerar sua key 256 secret:

# Gerar uma chave de 256 bits (32 bytes) aleatória em hexadecimal
openssl rand -hex 32
2.0.2

1 year ago

2.0.1

1 year ago

2.0.0

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago