PDA

View Full Version : برنامه تبدیل md5 به hash و بعد تبدیل به عدد



pure_love
شنبه 08 شهریور 1399, 11:35 صبح
سلام بچه ها
من یه برنامه میخام که بتونه کد md5 به hash تبدیل کنه و بعد به عدد تبدیل کنه
ممنون میشم راهنمایی کنید
با تشکر

مهدی کرامتی
شنبه 08 شهریور 1399, 13:24 عصر
سوال تون واضح نیست، MD5 خودش یک نحوه نمایش از Hash است.

دقیقا می خواهید چکار کنید؟

pure_love
شنبه 08 شهریور 1399, 14:32 عصر
میخام کد md5 یا حالا hash به عدد تبدیل کنم

the king
سه شنبه 11 شهریور 1399, 00:31 صبح
میخام کد md5 یا حالا hash به عدد تبدیل کنم

MD5 یک hash ئه 128 بیتی (16 بایتی) است که اندازه بزرگی داره، لذا اگر بخواهید که به یک عدد 128 بیتی تبدیل بشه، در انواع داده ای صحیح عمومی که بزرگترین شون 64 بیتی است جا نخواهد شد. انواع داده ای بزرگتری مثل BigInteger هست ولی یک نوع داده عمومی نیست.
می توانید hash رو بصورت رشته ای نگهداری کنید. به همین دلیل معمولا hash رو بصورت یک رشته مبنای 16 نمایش میدن، نه عدد.

var md5 = System.Security.Cryptography.MD5.Create();
var input = Encoding.UTF8.GetBytes("This is a sample");
var hash = md5.ComputeHash(input);
var output = new StringBuilder();
for (var i = 15; i >= 0; i--)
{
output.Append(hash[i].ToString("X2"));
}
MessageBox.Show(output.ToString());


اگر بخواهید حتما عدد باشه از BigInteger استفاده کنید، البته باید به System.Numerics.dll در پروژه تون رفرنس بدهید :

var md5 = System.Security.Cryptography.MD5.Create();
var input = Encoding.UTF8.GetBytes("This is a sample");
var hash = md5.ComputeHash(input);
var bigInteger = new System.Numerics.BigInteger(hash);
MessageBox.Show(bigInteger.ToString());