Trabalhando com o algoritmo de criptografia Base64 no SQL Server

Olá Pessoal,
Boa tarde!

Hoje vou fazer um post rápido, mas bem interessante para quem tem a necessidade de criptografar e/ou descriptografar strings utilizando o algoritmo Base64 no SQL Server. Muita gente não sabe, mas o SQL Server possui recursos para trabalhar com essa criptografia nativamente, sem precisar escrever toda a lógica para isso.

Um pouco sobre o Base64
Base64 é um método para codificação de dados para transferência na Internet (codificação MIME para transferência de conteúdo) . É utilizado frequentemente para transmitir dados binários por meios de transmissão que lidam apenas com texto, como por exemplo para enviar arquivos anexos por email.

É constituído por 64 caracteres ([A-Za-z0-9], “/” e “+”) que deram origem ao seu nome. O carácter “=” é utilizado como um sufixo especial e a especificação original (RFC 989) definiu que o símbolo “*” pode ser utilizado para delimitar dados convertidos, mas não criptografados, dentro de um stream.

Exemplo de codificação:
Texto original: hello world
Texto convertido para Base64: aGVsbG8gd29ybGQK

A codificação Base64 é frequentemente utilizada quando existe uma necessidade de transferência e armazenamento de dados binários para um dispositivo designado para trabalhar com dados textuais. Esta codificação é amplamente utilizada por aplicações em conjunto com a linguagem de marcação XML, possibilitando o armazenamento de dados binários em forma de texto.

Diferente das funções criptográficas como o MD5, SHA1, SHA-256 e outros, o Base64 é um método de criptografia, já que por definição, a encriptação é uma tarefa de mão dupla que você usa sempre que você precisa armazenar com segurança uma informação, mas precisa recuperá-la mais tarde através de uma chave simétrica ou privada. Já o hash, que é utilizado pelas funções criptográficas como as citadas acima, é comumente utilizado quando você necessita comparar informações e não é possível obter a string original a partir da string onde foi aplicado o Hash.

Agora vamos à prática!

Criptografando uma string
Para criptografar uma string, vamos utilizar a função fncBase64_Encode:

Exemplo de utilização:

Descriptografando uma string
Para descriptografar uma string, vamos utilizar a função fncBase64_Decode:

Exemplo de utilização:

É isso aí pessoal!
Até mais.

SQL, sql server, sql server 2008, sql server 2008 R2, Oracle, Oracle Database, Oracle 11g, Oracle 10g, Oracle 12c, MySQL, Firebird, Consultoria, Consultor, Programador, Programação. Desenvolvedor, Analista de Sistemas, DBA, Criação de website, Criação de Sistema Web, Vitória, Vila Velha, Guarapari, Espírito Santo, ES, Consultoria SQL em VItória, Treinamento, Curso, Prestação de serviço, prestar serviço, freelancer, freela, banco de dados, consultoria em banco de dados, consultor de banco de dados

Deixe uma resposta