Symmetric Cryptography
Saiba como criptografar ou descriptografar usando o componente Symmetric Cryptography.
O Symmetric Cryptography criptografa e descriptografa com base em criptografia simétrica.
Parâmetros
Dê uma olhada nas opções de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB).
Crypto Operation
Tipos de operação disponíveis - Encrypt e Decrypt.
Encrypt
String
Account
Conta que será utilizada pelo componente. É esperada uma conta Private key. O tamanho configurado no parâmetro Algorithm Key Size deve corresponder ao tamanho do algoritmo Private key. Do contrário, uma mensagem de erro será retornada.
N/A
String
Fields To Encrypt/Decrypt
Campos a serem encriptados/decriptados utilizando uma notação com pontos (ex.: body.field1, body.field2, body).
body.field1,body.field2
String
Algorithm
Algoritmo a ser utilizado para criptografar/descriptografar dados.
AES
String
Algorithm Key Size
Tamanho da chave do algoritmo. Como citado anteriormente, o tamanho configurado neste parâmetro deve corresponder ao tamanho do algoritmo Private key.
256 bits
Inteiro
Operation Mode
Modo de operação a ser utilizado.
CBC
String
Padding
Utilizado em um bloco de cifra no qual os blocos são preenchidos com bytes de padding (ex.: AES 128 bits utiliza 16 bytes de padding).
PKCS5Padding
String
Fail On Error
Se a opção estiver habilitada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success".
True
Booleano
Advanced Settings
Configurações avançadas.
False
Booleano
Use IV
Essa opção é válida somente para a operação Encrypt. Se selecionada, a opção determina o IV (vetor de inicialização) para o modo CBC.
False
Booleano
Use Your Own Key
Se selecionada, a opção utilizará a sua própria chave gerada para criptografar e descriptografar dados.
False
Booleano
Encryption Key As Hex Value
Se selecionada, a opção espera/produz uma Encryption Key as Hex; do contrário, será esperada/produzida como base64.
False
Booleano
Concatenate IV
Uma mensagem encriptada é esperada/produzida com o Concatenate IV (IV+MESSAGE); do contrário, um parâmetro IV será produzido durante a encriptação e IV em IV será esperado no campo "Decryption".
False
Booleano
IV as Hex Value
Esta opção não é disponível se Concatenate IV estiver habilitado. Se for selecionada, a opção espera/produz um parâmetro IV em formato Hex; do contrário, será esperada/produzida como base64.
False
Booleano
Encrypted Message As Hex
Se selecionada, a opção espera/produz uma mensagem encriptada em formato Hex; do contrário, será esperada/produzida como base64.
False
Booleano
Fluxo de Mensagens
Key por Account - Operação Encrypt
Entrada
{
"operation": "encrypt",
"useOwnKey": true,
"useIV": true,
"algorithm": "AES",
"operationMode": "CBC",
"padding": "PKCS5Padding",
"failOnError": true,
"encryptedMessageAsHex": false,
"iVAsHex": false,
"encryptedFields": "data,data1"
}Payload
{
"data": someData,
"data1": someData1
}
Saída
{
"data": "RXZlbiBpZiBwZXJmZWN0IGNyeXB0b2dyYXBoaWMgcm91dGluZXMgYXJlIH=",
"data1": "RXZlbiBpZifd441mZWN0IGNyeXB0b2dyYXBoaWMgcm91dGluZXMgYXJlIH="
}Entrada
{
"operation": "encrypt",
"useOwnKey": true,
"useIV": true,
"algorithm": "AES",
"operationMode": "CBC",
"padding": "PKCS5Padding",
"failOnError": true,
"encryptedMessageAsHex": false,
"iVAsHex": false,
"encryptedFields": "data,data1"
}Payload
{
"encryptionKey": "-- THE FOLLOWING PUBLIC KEY--",
"data": "RXZlbiBpZiBwZXJmZWN0IGNyeXB0b2dyYXBoaWMgcm91dGluZXMgYXJlIH=",
"data1": "RXZlbiBpZifd441mZWN0IGNyeXB0b2dyYXBoaWMgcm91dGluZXMgYXJlIH="
}Saída
{
"ivParameterSpec": "RXZlbiBpZiBwZXJmZWN0IGNy==",
"data": someData,
"data1": someData1
}Key por Request Body - Operação Encrypt
Entrada
{
"operation": "encrypt",
"useOwnKey": true,
"useIV": true,
"algorithm": "AES",
"operationMode": "CBC",
"padding": "PKCS5Padding",
"failOnError": true,
"encryptedMessageAsHex": false,
"iVAsHex": false,
"encryptedFields": "data,data1"
}Payload
{
"encryptionKey": "-- THE FOLLOWING PUBLIC KEY--"
"data": someData,
"data1": someData1
}Saída
{
"data": "RXZlbiBpZiBwZXJmZWN0IGNyeXB0b2dyYXBoaWMgcm91dGluZXMgYXJlIH=",
"data1": "RXZlbiBpZifd441mZWN0IGNyeXB0b2dyYXBoaWMgcm91dGluZXMgYXJlIH="
}Entrada
{
"operation": "decrypt",
"useOwnKey": true,
"useIV": true,
"algorithm": "AES",
"operationMode": "CBC",
"padding": "PKCS5Padding",
"failOnError": true,
"encryptedMessageAsHex": false,
"iVAsHex": false,
"encryptedFields": "data,data1"
}Payload
{
"ivParameterSpec": "RXZlbiBpZiBwZXJmZWN0IGNy==",
"encryptionKey": "-- THE FOLLOWING PRIVATE KEY--"
"data": "RXZlbiBpZiBwZXJmZWN0IGNyeXB0b2dyYXBoaWMgcm91dGluZXMgYXJlIH=",
"data1": "RXZlbiBpZifd441mZWN0IGNyeXB0b2dyYXBoaWMgcm91dGluZXMgYXJlIH="
}Isto foi útil?