چگونه از SHA256 برای رمزنگاری در سی شارپ استفاده کنیم؟ همونطور که میدونید برای دخیره سازی پسورد داخل بانک اطلاعاتی باید آن هارا رمز نگاری کنید که خدایی نکرده از طریق بانک رمز افراد عضو سیستم دزدیده نشه.الگوریتم های رمز نگاری یک طرفه و دو طرفه هستند . یکطرفه ها بعد از رمز نگاری دیگه قابل بازگشت نیستند اما الگوریتم های دو طرفه این قابلیت را دارند که عبارت رمز نگاری شده را دوباره به حالت اول برگردانند . برای ذخیره کردن پسورد در بانک و چک کردن کاربر هنگام ورود الگوریتم های یک طرفه مناسب هستند . با استفاده از تابع زیر میتوانید یک رشته را با الگوریتم SHA256 رمز نگاری کنید :
دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
private string creat(string s)
{
StringBuilder sb = new StringBuilder();
SHA256 hash = SHA256Managed.Create();
Encoding enc = Encoding.UTF8;
byte[] hashbyte = hash.ComputeHash(enc.GetBytes(s));
foreach (byte b in hashbyte)
{
sb.Append(b.ToString("x2"));
}
return sb.ToString();
}
برای مثال
عبارت : abcd123456
رمز نگاری شده عبارت : 5fae31539e070a690c1b63720c25eb5b86084b5098a942c86c89c1d67157ed6b