رمزگشایی و نمایش اطلاعات رمزنگاری شده در دیتاگرید
سلام خدمت دوستان عزیز
من یک بانک 2003 Access دارم و قبل از درج رکورد توی بانک ابتدا مقادیر همه ی فیلد ها رو با الگوریتمی که از توی همین سایت پیدا کردم Encrypt میکنم . الگوریتم Decrypt رو هم دارم و به درستی کار میکنه . مشکل من اینجاست که زمانی که دیتاگرید اطلاعات جدول رو نمایش میده همه ی اطلاعات رمز شده هستند . چطور میتونم همه ی رکوردها رو هنگام نمایش توی دیتاگرید به صورت یکجا Decrypt کنم ؟
نقل قول: رمزگشایی و نمایش اطلاعات رمزنگاری شده در دیتاگرید
خواهش میکنم راهنماییم کنید .
نقل قول: رمزگشایی و نمایش اطلاعات رمزنگاری شده در دیتاگرید
اول باید کل اطلاعات را تک تک decrypt کنی بریزی داخل datatable بعد دیتاگریدتو وصل کنی به DataTable
نقل قول: رمزگشایی و نمایش اطلاعات رمزنگاری شده در دیتاگرید
چطوری تک تک اطلاعات رو decrypt کنم ؟ با حلقه؟؟؟؟
نقل قول: رمزگشایی و نمایش اطلاعات رمزنگاری شده در دیتاگرید
سلام
فرض کنید شما یه دیتاتیل اولیه دارید به اسم tb1 که اطلاعات رو با استفاده از دیتا آداپتر داخل این دیتاتیبل می ریزید. همچنین فرض می کنیم برای تبدیل اطلاعات کد شده به اطلاعات خوانا، یک متد هم به اسم YourMethod دارید، حالا بعد از پر کردن دیتا تیبل مذکور، با یه حلقه Foreach همه اطلاعات رو قابل خواندن می کنیم و در آخر هم اطلاعات رو در دیتاگریدویو می ریزیم:
.
.
.
foreach (DataRow dr in tb1.Rows)
{
dr["field1"] = YourMethod(dr["field1"]);
tb1.AcceptChanges();
}
datagridview1.DataSource=tb1;
نقل قول: رمزگشایی و نمایش اطلاعات رمزنگاری شده در دیتاگرید
باید درون حلقه رکورد به رکورد بخونی جلو بری دیکریپت کنی و بریزی داخل DataTable
اصولا این کارهایی که می کنی درست نیست
شما باید فیلدی که EnCrypt شده را در گریدت نمایش ندی . و کاربر اگر خواست اون فیلدتو ببینه . باید روی رکورد مورد نظر روی گریدت کلیک کنه و همون موقع باید با استفاده از Id رکورد اونو دکریپت کنی و به کاربر نشون بدی
خب شما که همه ی اطلاعات ضروری را اینکریپت کردی هدفت اینه که کسی نبینه یا دسترسی نداشته باشه . از طرفی هم میخوای کلشو تو گریدت نمایش بدی که طرف ببینه . خب این منطقی نیست
نقل قول: رمزگشایی و نمایش اطلاعات رمزنگاری شده در دیتاگرید
بله کاملا درسته . ولی من اطلاعات ضروری رو Encrypt میکنم که اگه کسی به صورت مستقیم به بانک دسترسی پیدا کرد نتونه اطلاعات رو ببینه و فقط از توی برنامه این اطلاعات قابل دسترسی باشه . واسه این چه راهکاری پیشنهاد میکنید ؟
1 ضمیمه
نقل قول: رمزگشایی و نمایش اطلاعات رمزنگاری شده در دیتاگرید
با کمک دوستان عزیز مشکلم برطرف شد . شماره تلفن Encrypt میشه و توی دیتابیس ذخیره میشه . هنگام نمایش در گرید ، فیلد شماره تلفن Decrypt میشه و در گرید نمایش داده میشه . فایل برنامه رو همینجا میزارم تا شاید به درد کسی بخوره .
ضمیمه 113244