خطا در فایل Encoder در Visual Studio 2022

سوال شده توسط: مجتبی فعال

تاریخ ثبت: ۱۴۰۰/۱۱/۲۹

بازدید: 780

پاسخ: 1

تگ: Asp.net Core


سلام استاد

در فایل Encoder و در Visual Studio 2022 در خط زیر پیام اخطار داده می شود :

MD5 md5 = new MD5CryptoServiceProvider();

اخطار :

Warning SYSLIB0021 'MD5CryptoServiceProvider' is obsolete: 'Derived cryptographic types are obsolete. Use the Create method on the base type instead.'

 

باید چکار کنیم

تشکر

 

پاسخ ها
user

محمد اشرافی

میگه این کلاس MD5CryptoServiceProvider منسوخ شده ، میتونید از اش استفاده نکنید ، ولی اگر هم استفاد کنید مشکلی نداره

اگر بخواید می تونید از این کلاس استفاده کنید : 
 

 public static string EncodePasswordMd5(string pass) //Encrypt using MD5   
        {
            using var md5 = MD5.Create();

            byte[] inputBytes = Encoding.ASCII.GetBytes(pass);
            byte[] hashBytes = md5.ComputeHash(inputBytes);

            // Convert the byte array to hexadecimal string
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < hashBytes.Length; i++)
            {
                sb.Append(hashBytes[i].ToString("X2"));
            }
            return sb.ToString();
        }

یا کلا از یه الگوریتم دیگه استفاده کنید مثل sha256

 public class Sha256Encoder
    {
        public static string Encode(string inputValue)
        {
            using var sha256 = SHA256.Create();
            var originalBytes = Encoding.Default.GetBytes(inputValue);
            var encodedBytes = sha256.ComputeHash(originalBytes);
            return Convert.ToBase64String(encodedBytes);
        }
        public static bool IsCompare(string hashText, string rawText)
        {
            rawText = Encode(rawText);
            return hashText == rawText;
        }
    }
برای ثبت پاسخ باید خود شوید

محبوب ترین مقالات