مشاهده نسخه کامل
: Encryption
bahar009
27-08-2009, 14:36
سلام دوستان
چطوری میشه دیتاهای موجود در دیتابیس ای که به وسیله SQL EXPRESS 2005 ساخته شده رو انکریپت کرد؟
ممنون میشم اگه کسی کمکم کنه:41:
سلام
رمزنگاری اطلاعات درون بانک اطلاعاتی SQLServer:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
تبدیل رمزنگاری دو طرفه اطلاعات درون برنامه:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
لیست تاپیک های مهم و سوالات متداول انجمن Framework
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
bahar009
28-08-2009, 14:35
سلام
رمزنگاری اطلاعات درون بانک اطلاعاتی SQLServer:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
تبدیل رمزنگاری دو طرفه اطلاعات درون برنامه:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
لیست تاپیک های مهم و سوالات متداول انجمن Framework
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
با سلام
ممنون از راهنمایی جناب H2. من تمومه اینا رو قبل از اینکه سوالمو مطرح کنم خوندم.بنده مبتدی هستم و فقط C# بلدم چیزیم از این لینک ها سر در نیووردم. در MSDN هم کلی سرچ کردم ولی بازم متوجه نشدم:41:
ممنون می شم اگه کسی کمکم کنه(من از SQL EXPRESS استفاده می کنم:11:)
bahar009
28-08-2009, 15:17
با سلام
بعد از اینکه کلی خودمو خفه کردم این جمله رو تو msdn پیدا کردم:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
خب حالا سوالم اینه که چطوری قبل از اینکه دیتا رو تو جدول insert کنم،انکریپتش کنم؟
بعد موقع گزارش گیری چطوری دیکریپتش کنم؟
ممنون میشم اگه کسی کمکم کنه :11:
سلام
بعد از اینکه کلی خودمو خفه کردم این جمله رو تو msdn پیدا کردم
پس طبق چیزی که خودتان پیدا کرده اید، تنها راه می ماند رمزنگاری درون برنامه و یا نصب نسخه های بالاتر sqlserver.
در کل فراموش نکنید که کلیه این روشها یک پردازش و بار اضافه را به برنامه تحمیل میکنند و سرعت و بازدهی برنامه را کاهش میدهند و امکان استفاده از برخی دستورات SQL هم سلب خواهد شد و...
شما باید رمزنگاری را فقط برای دیتاهای مهم انجان دهید مثل password ها.
که رمزنگاری password ها هم معمولاً راه و روش دیگری دارد و با الگوریتم های یکطرفه انجام میشود.
در سایر فیلدها حتی اگر قرار باشد اطلاعات حسابهای بانکی افراد را ذخیره کند، بهتر است از رمزنگاری استفاده نکنید و به جای رمزنگاری امنیت تنظیمات sqlserver و شبکه و رایانه سرور و... را تضمین کنید.
(که البته این حرفها در نسخه Express چندان معنا ندارد!)
==============
من کدهای vb.net ان تاپیک را برایتان با کمی تبدیل به صورت زیر در آوردم.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
این کد آرایه های بایت را رمزنگاری میکنند و استفاده شان راحت است.
(میشد با بازدهی بیشتر هم نوشته شوند ولی باید Stream ای کار میکردند و شاید استفاده شان برای شما کمی سخت میشد.)
=====
حالا مثلاً برای رمز کردن یک strring میتوانید دستوری مثل این بدهید:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و برای از رمزخارج کردن هم
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
یعنی اسن دستور یک بار رمز میکند و یک بار از رمز در می اورد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
دو string ورودی و خروجی با هم برابر خواهند بود.
برای ذخیره در دیتابیبس هم فیلد varbinary میتواند مناسب ترین گزینه باشد.
==============
خب حالا سوالم اینه که چطوری قبل از اینکه دیتا رو تو جدول insert کنم،انکریپتش کنم؟
بعد موقع گزارش گیری چطوری دیکریپتش کنم؟
طبیعتاً قبل از هر INSERT و UPDATE (و DELETE) باید فیلدهایی که رمزنگاری نیاز دارند را رمزکنید و سپس دستور مربوطه را اجرا کنید.
و بعد از هم SELECT هم باید فیلدهای مذکور را مجدد رمزگشایی کنید.
موفق باشید.
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.