View Full Version : کد کردن یک رشته و دکد کردن آن
tc1000
شنبه 20 شهریور 1389, 16:33 عصر
با سلام
من میخوام اطلاعاتی که در دیتا بیس ذخیره میکنم رو کد کنم و ذخیره کنم و بعد از بازیابی آنها رو به حالت اون در بیارم
حالا در خود دات نت چیزی هست که بشه این کار رو باهاش کرد؟
hamhik
شنبه 20 شهریور 1389, 16:37 عصر
می تونی خودتم یه الگوریتم ساده برای کد کردن اطلاعات ببنویسی.
مثلا رشته رو تبدیل به بایت کنی 1 عدد به بایت اضافه کنی بعد برا دیکد کردنش هم یکی از بایت کم کنی بایت رو به رشته تبدیل کنی
tc1000
شنبه 20 شهریور 1389, 16:42 عصر
خوب این راه خوبی هستش ، اینو بلد بودم ولی منظورم کلاس خاصی در دات نت باشه
amordad
شنبه 20 شهریور 1389, 19:57 عصر
با سلام
بله دوست من وجود دارد، ابتدا باید system.security را use کنی و سپس با استفاده از روش های DES یا TRIPLEDES ویاRC2 و RIJNDAEL آن ها را کد کنی
در مورد روش های فوق یک سرچ کن.
روش معرفی نوع کدینک هم به صورت زیر است.
SymmetricEncryptionUtility.AlgorithmName = "DES";
میدونم خیلی مختصر پاسخ دادم، منو ببخش دوست من مثال آمادش رو ندارم اما ظرف چند روز آینده اگر فرصت کنم حتما در سایت قرار میدهم.
موفق باشی
Arash_Niazmand
شنبه 20 شهریور 1389, 21:51 عصر
خوب یک مثال ساده .............
using System;
using System.Text;
using System.Security.Cryptography;
namespace Helper
{
public class Coding
{
///<param name="text">
/// متن مورد نظر براي كد شدن
/// </param>
/// <param name="type">
/// 1 = High
/// 2 = Low
/// </param>
/// <returns>رشته متني كد شده را باز ميگرداند</returns>
public static string Encrypted(string text, int type)
{
Byte[] entropy = null;
Byte[] strByteEncrypt = Encoding.UTF8.GetBytes(text.Trim());
Byte[] strEncrypt = ProtectedData.Protect(strByteEncrypt, entropy, DataProtectionScope.CurrentUser);
switch (type)
{
case 1:
{
string high = Convert.ToBase64String(strEncrypt);
return high;
}
case 2:
{
string low = Convert.ToBase64String(strByteEncrypt);
return low;
}
}
return "خطا در تبديل";
}
///<param name="text">
/// متن مورد نظر براي رمزگشايي متن
/// </param>
/// <param name="type">
/// 1 = High
/// 2 = Low
/// </param>
/// <returns>رشته متني رمزگشايي شده را باز ميگرداند</returns>
public static string Decrypted(string text, int type)
{
Byte[] entropy = null;
switch (type)
{
case 1:
Byte[] strByteDecryptHigh = Convert.FromBase64String(text.Trim());
Byte[] strDecrypt = ProtectedData.Unprotect(strByteDecryptHigh, entropy, DataProtectionScope.CurrentUser);
string high = Encoding.UTF8.GetString(strDecrypt);
return high;
case 2:
Byte[] strByteDecryptLow = Convert.FromBase64String(text.Trim());
string low = Encoding.UTF8.GetString(strByteDecryptLow);
return low;
}
return "خطا در تبديل";
}
}
}
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.