Nie wiem, czy zadaję głupie pytanie, ale chcę wiedzieć, czy funkcja Convert.ToBase64String w .NET zwraca tę samą długość, co jego bajt źródłowy, czy jest inny? Chciałem wypróbować artykuł od samego MSDN'a How To: Use Forms Authentication with SQL Server 2000, aby zaszyfrować moje hasło, ale odkryłem, że funkcja, której użyli do utworzenia ciągu soli, zwraca 3 dodatkowe długości, niż powinna. Aby wyjaśnić tutaj, jest kod w tym artykule.Czy Convert.ToBase64String zwraca tę samą długość, co jej tablica bajtów źródłowych?
private static string CreateSalt(int size)
{
// Generate a cryptographic random number using the cryptographic
// service provider
RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
byte[] buff = new byte[size];
rng.GetBytes(buff);
// Return a Base64 string representation of the random number
return Convert.ToBase64String(buff);
}
Dziękuję kolego. Naprawdę pomogło mi to w tajemniczej trailing "=". – User