PDA

View Full Version : سوال: بهترین روش ذخیره Password



regbyte
یک شنبه 03 شهریور 1387, 12:49 عصر
سلام

من یه برنامه کوچیک نوشتم که DataBase نداره، می خواستم برای ورود به برنامه Password بذارم، بهتره کجا Password رو ذخیره کنم؟ و با چه روشی؟

لطفا راهنمایی کنید.

رها
یک شنبه 03 شهریور 1387, 13:01 عصر
سلام
می تونید یک فایل اکسس به عنوان دیتابیس کارتون در نظر بگیرید.
هرچند که می تونید به صورت دستی با فایلها و رجیستری ویندوز هم کار کنید.

regbyte
یک شنبه 03 شهریور 1387, 13:23 عصر
بله، اما سوال من اینکه بهتره از چه روشی استفاده کنم؟

اَرژنگ
یک شنبه 03 شهریور 1387, 14:20 عصر
بله، اما سوال من اینکه بهتره از چه روشی استفاده کنم؟
بستگی به برنامه و کاری که انجام میده دارد، برنامه کوچک که داتابیس ندارد چرا پسورد لازم دارد؟
در چه حالتهایی باید به پسورد قابلیت دسترسی داشته باشد؟ در همه لگینها بر رویه یک ماشین؟ بر رویه یک شبکه؟
سادهترین روش اینه که اینکریپتش کنید و یا در اپلیکیشن ستینگ نگهش دارید و یا اینکه در یک فایل در همان دایرکتوری، ولی امنیت این روش کمه ولی شاید برایه یک برنامه کوچک کافی باشد.

برنامه چه پسوردهایی را بگه میداره و چرا؟ با پسوردها چکار میکنه؟ کلی شرائط باید در نظر گرفت بشد حتی قبل از اینکه بخواهیم یک روش پیش پا افتاده پیشنهاد کنیم چه برسد به اینکه بهترین روش را برایتان پیدا کنیم.

m_amin_t
یک شنبه 03 شهریور 1387, 16:44 عصر
سلام
اگه یه سری به این بحث یزنی شاید مشکلت حل بشه:
http://barnamenevis.org/forum/showthread.php?t=118825

regbyte
یک شنبه 03 شهریور 1387, 21:33 عصر
بستگی به برنامه و کاری که انجام میده دارد، برنامه کوچک که داتابیس ندارد چرا پسورد لازم دارد؟
در چه حالتهایی باید به پسورد قابلیت دسترسی داشته باشد؟ در همه لگینها بر رویه یک ماشین؟ بر رویه یک شبکه؟
سادهترین روش اینه که اینکریپتش کنید و یا در اپلیکیشن ستینگ نگهش دارید و یا اینکه در یک فایل در همان دایرکتوری، ولی امنیت این روش کمه ولی شاید برایه یک برنامه کوچک کافی باشد.

برنامه چه پسوردهایی را بگه میداره و چرا؟ با پسوردها چکار میکنه؟ کلی شرائط باید در نظر گرفت بشد حتی قبل از اینکه بخواهیم یک روش پیش پا افتاده پیشنهاد کنیم چه برسد به اینکه بهترین روش را برایتان پیدا کنیم.

یه برنامه ساده هست که Drive ها رو Hidden می کنه، تحت شبکه هم نیست،
اما می خوام امنیت Password ش بالا باشه.

jaza_sa
یک شنبه 03 شهریور 1387, 23:27 عصر
برای اینکار میتونید از یک فایل XML استفاده کنید.
UserName و Password ها رو از کاربر دریافت کنید و در اون فایل ذخیره کنید
برای اینکه تا حدی امنیت فالتون بالا بره ، میتونید کار های زیر رو انجام بدید :
1 - پسوند فایل رو از xml به یه چیز دیگه تغیر بدید مثلا dat
2 - نام کاربری رو Hash کنید یعنی مثلا بنویسید

textBox1.Text.GetHashCode();3 - همین کار رو هم برای رمز عبور انجام بدید
در آخر برای لاگین کردن کاربر ابتدا نام کاربری و رمز عبور رو دریافت کنید و بعد Hash کنیدش و بعد با اون چیزی که در فایلتون هست مقایسه کنید

موفق باشید

regbyte
دوشنبه 04 شهریور 1387, 00:09 صبح
بهتر نیست از Application Setting استفاده کنم؟

linux
دوشنبه 04 شهریور 1387, 23:11 عصر
سلام

من یه برنامه کوچیک نوشتم که DataBase نداره، می خواستم برای ورود به برنامه Password بذارم، بهتره کجا Password رو ذخیره کنم؟ و با چه روشی؟

لطفا راهنمایی کنید.
از رجیستری می توانی استفاده کنی ، از فایل app.config می توانی استفاده کنی
یک فایل تکست معمولی می توانی استفاده کنی. خیلی مهم نیست.

regbyte
سه شنبه 05 شهریور 1387, 15:59 عصر
من Password رو در Application Setting ذخیره کردم اما ظاهرا با تغییر نام فولدری که فایل اجرایی در آن قرار دارد، Application Setting از بین می رود! Application Setting دقیقا در کجا ذخیره می شود؟

از app.config چطوری می تونم استفاده کنم؟

ASKaffash
سه شنبه 05 شهریور 1387, 16:34 عصر
سلام
بنظرمن در رجیستری با Encrypt کردن برای اینکار شما هم مناسبتراست و هم آسانتر.

Amir Oveisi
سه شنبه 05 شهریور 1387, 21:07 عصر
به نظر من تو فایل config بصورت encrypt شده نگهداری کنید راحت تره ولی امنیتش زیر سواله یه کم به خصوص اگه از hashing استفاده کرده باشید.

linux
سه شنبه 05 شهریور 1387, 22:54 عصر
به نظر من تو فایل config بصورت encrypt شده نگهداری کنید راحت تره ولی امنیتش زیر سواله یه کم به خصوص اگه از hashing استفاده کرده باشید.
چرا؟! امنیت زیرا سوال خواهد با با hashing?

Amir Oveisi
چهارشنبه 06 شهریور 1387, 13:37 عصر
خوب فایل config برنامه رو میشه به راحتی پیداش کرد. اونم که یه فایل xml هستش. اون فیلدی که مقدار hash شده password رو نگهداری میکنه رو میشه تغییر داد. یعنی شما میتونین مقدار hash شده یه کلمه دیگه (که خودتون میدونین چیه) رو به جای password قبلی تو فایل config جایگزین کنید.
با این کار password قبلی از بین مبره و password شما به جای اون قرار میگیره.

البته اینجا ساده ترین حالت نگهداری password رو در نظر گرفتم.
موفق باشید
jooje

linux
چهارشنبه 06 شهریور 1387, 14:31 عصر
خوب فایل config برنامه رو میشه به راحتی پیداش کرد. اونم که یه فایل xml هستش. اون فیلدی که مقدار hash شده password رو نگهداری میکنه رو میشه تغییر داد. یعنی شما میتونین مقدار hash شده یه کلمه دیگه (که خودتون میدونین چیه) رو به جای password قبلی تو فایل config جایگزین کنید.
با این کار password قبلی از بین مبره و password شما به جای اون قرار میگیره.

البته اینجا ساده ترین حالت نگهداری password رو در نظر گرفتم.
موفق باشید
jooje

بله اگر شما الگوریتم هش کردنتان را به همه بگویید با پیچیده ترین الگوریتم ها هم می توانند. این قسمت از برنامه نباید دست کسی بی افتد.

golestan1
دوشنبه 09 تیر 1393, 20:35 عصر
این روش هم نسبتا خوب است
http://barnamenevis.org/showthread.php?456632-%D8%A2%D9%85%D9%88%D8%B4-%D8%B3%D8%A7%D8%AE%D8%AA-%D9%81%D8%B1%D9%85-%D9%84%D8%A7%DA%AF%DB%8C%D9%86-%D8%AF%D8%B1-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE-%28%D8%A8%D8%AF%D9%88%D9%86-%D9%86%DB%8C%D8%A7%D8%B2-%D8%A8%D9%87-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%DB%8C%2 9