Por que tantas cadeias criptografadas e criptografadas terminam em um sinal de igual?

60

Eu trabalho em C # e MSSQL e, como você esperaria, eu armazenei minhas senhas com sal e hash.

Quando olho para o hash armazenado em uma coluna nvarchar (por exemplo, o provedor de associação out the box da aspnet). Sempre fiquei curioso porque os valores gerados de Salt e Hash sempre parecem terminar em um ou dois sinais de igual.

Eu vi coisas semelhantes ao trabalhar com algoritmos de criptografia, é coincidência ou existe uma razão para isso?

    
por Liath 17.06.2014 / 11:15
fonte

2 respostas

90

Estas cadeias de caracteres com hash são (geralmente?) codificadas no formato Base64 e o sinal de igual é usado para preencher a cadeia de caracteres para tornar o comprimento (número de bytes) divisível por três. A Wikipedia explica isso muito bem: link .

    
por 17.06.2014 / 11:22
fonte
33

Poderia ser o preenchimento de codificação da Base 64?

A sequência '==' indica que o último grupo continha apenas um byte e '=' indica que continha dois bytes. O exemplo abaixo ilustra como o truncamento da entrada de toda a citação acima altera o preenchimento de saída:

link

    
por 17.06.2014 / 11:22
fonte