Criptografia se caracteres especiais

2 respostas
F

Pessoal,

Gostaria de saber se alguém já fez aquele esquema que é comum vermos em sites de cadastros com ativação de usuário através de uma URL passando um código por exemplo: “mrZav1qJdBTBQ2Txa6Oh” eu estou fazendo isso no meu site e estou gerando um código criptografado pra identificar que aquele usuário é daquele código.

Até ai OK! porém percebi que minha criptografia gera caracteres especiais oq é muito ruim, pq não dah pra usar os caracteres especiais enviando em uma URL para o usuário clicar e se ativar.

Gostaria de saber se vcs conhecem algum tipo de criptografia sem caracteres especiais que me atenda para este caso.

Obrigado!

2 Respostas

B

Isso “non ecziste”, até porque todos os métodos de criptografia trabalham sobre bytes e geram outros bytes, que podem ir de 0 até 255 (ou seja, vão gerar “caracteres especiais”.

Converta o array de bytes gerado pela criptografia para a codificação base-64 ou hexadecimal.

Um exemplo de codificação Base-64:

“cKW+g4zZrjpvzwricfIi7Q==”

B

Como você deve ter percebido, Base-64 usa os caracteres de 0 até 9, A até Z, a até z, +, / ou =.

Só que + e / são especiais em URLs.

Nesse caso, recomendo substituir + e / pelos caracteres - e _ respectivamente, como faz a própria Microsoft no ASP.NET quando é necessário armazenar em um campo INPUT TYPE=HIDDEN um objeto serializado.

Criado 12 de julho de 2012
Ultima resposta 12 de jul. de 2012
Respostas 2
Participantes 2