در این قسمت از وبسایت پرووید آموزش ویدیویی و رایگان ایجاد کردن یک تکست باکس برای ذخیره کردن داده های ایمن را برای شما در نظر گرفته ایم. همانطور که در یک آموزش دیگر با نام آموزش رایگان کلاس SecureString در سی شارپ خدمت شما عرض شد. کلاس SecureString یک گزینه ای بسیار مناسب برای ذخیره کردن اطلاعات حساس در یک قالب رمز شده می باشد. این موضوع باعث میشود که خطر منتشر شدن اطلاعات حساس شما از قبیل پسوردها و دسترسی پیدا کردن یک هکر به آنها به مراتب کاهش پیدا کند. اما با این وجود برای به دست آوردن این اطلاعات حساس توسط کاربر مشکلاتی پیش روی ما است که با استفاده از این آموزش می توانیم آنها را برطرف کنیم.
SecureString چیست؟
در زمان کار کردن با داده های متنی حساس از قبیل پسورد ها می توانید از کلاس SecureString استفاده کرده و دادههای خود را به طور موقت ذخیره کنید. این کلاس اطلاعات متنی شما را در قالبی رمز شده قرار میدهند. در رابطه با این موضوع نیز می توانید از آموزش رمزنگاری Cryptography در دات نت استفاده کنید. اگر یک هکر به حافظه سیستم دسترسی پیدا کند به سختی میتواند این اطلاعات موجود در کلاس SecureString را پیدا کرده و آنها را رمزگشایی کند. به همین دلیل کلاس SecureString یک گزینه مناسب برای ذخیره کردن گذرواژه ها، جزئیات مربوط به کارت های اعتباری و دیگر موارد حساس به حساب میآیند. اگر این گونه از داده ها را در کلاس ساده String قرار بدهید به سادگی می توان آنها را از درون حافظه سیستم خواند و مورد استفاده قرار داد. Object هایی که از نوع کلاس SecureString تعریف می شوند نیز می توانند به صورت کد نویسی از درون حافظه پاک بشوند. این موضوع کاملاً متفاوت از اتفاقی است که برای Object های ساده شده از کلاس String می افتد. به همین جهت کار کردن با SecureString مسائل امنیتی را بیش از پیش در نظر گرفته است. برای یادگیری زبان برنامه نویسی سی شارپ نیز می توانید از آموزش سی شارپ دات نت در ویژوال استادیو استفاده کنید.
SecureString کلاسی در namespace ای System.Security می باشد که به منظور کار کردن با رشته های حساس از قبیل پسورد و اطلاعات بانکی کاربران می باشد. قابلیت هایی که در کلاس SecureString وجود دارد آن را نسبت به کلاس String بسیار متمایز می کند. توصیه می شود که در کار کردن با اطلاعات رشته ای حساس به هیچ وجه از کلاس String استفاده نشود و حتماً از کلاس SecureString استفاده شود. از شما دعوت می کنیم که از آموزش رایگان کلاس SecureString در سی شارپ دیدن کنید.
ایجاد کردن یک تکست باکس با کلاس SecureString
یکی از مشکلات موجود در کار کردن با کلاس SecureString این است که روشی ساده برای به دست آوردن یک String از کاربر وجود ندارد. البته این کلاس متد هایی را در اختیار ما قرار میدهد که با استفاده از آن می توانیم کاراکترهای درون یک String را یکی یکی به درون SecureString اضافه کنیم. این موضوع نیازمند ذخیره کردن متن مورد نظر به شکلی ساده و بدون رمزنگاری کردن آن است. که این موضوع نیز از لحاظ امنیتی مشکلاتی را ایجاد خواهد کرد. بنابراین برای حل و فصل کردن این مشکلات نیاز به ایجاد کردن یک کنترل سفارشی داریم که بتواند اطلاعات را از همان ابتدای کار به صورت مستقیم و رمز شده ذخیره کند.
در این آموزش ویدیویی از وبسایت پرووید یک UserControlرا برای پلتفرم Windows Forms ایجاد کرده و از آن استفاده خواهیم کرد. اهداف ما در این آموزش ایجاد کردن یک UserControl است که ویژگی های زیر را داشته باشند.
- میبایست از لحاظ ظاهری شبیه به یک تکست باکس استاندارد و ساده باشد.
- باید از لحاظ رفتاری شبیه به یک تکست باکس عمل کند و اجازه بدهد کاربر کاراکترهای مورد نظر خود را اضافه و یا حذف کند. و حتی یک کاراکتر Placeholder برای هر کدام از عناصر نشان بدهد.
- اطلاعات وارد شده در این تکست باکس میبایست از همان ابتدای کار در یک Object از نوع کلاس SecureString قرار گرفته و هیچ گاه در یک Object ساده String قرار نگیرند. علاوه بر این کاربرانی که با این کنترلر کار میکنند باید بتوانند اطلاعات موجود در SecureString مورد نظر را برای پردازشهای مدنظر خود دریافت کنند.
از شما دعوت میکنیم که در این آموزش با وبسایت پرووید همراه باشید. ضمنا در صورت تمایل می توانید از آموزش رایگان کلاس SecureString در سی شارپ نیز دیدن کنید.