سلام
من براي داشتن امنيت تو برنامم مي خوام براش رمز ورود تعريف كنم تا كاربرا با دادن رمز بتونن وارد بشن
و نشه از برنامه بدون داشتن رمز عبور استفاده كرد
بعضي از پستهاي مربوط به اينچنين سوالات رو خوندم ولي متوجه نشدم اگه بشه كامل شرح بديد كه چيكرا بايد بكنم
_____________________________________________________
salam man iek barname nevis mobtadi hastam va tazeh shorua be kar be surate herfeei kardam
mikham baraie porojam iek ramz bezaram ta zamani ke karbar ramz ru dorost nadadeh natuneh az barnameh estefadeh koneh
mikham daghighan va az sefr baram tuzig bedin ia iek nemuneh baram befrestin
man saier tapist ha ru khundam ama moteasefaneh ziiad motevajeh nashodam ke baiad che konam va ia koja dasturat ru benvisam mamnun misham age kamel tuzih bedin
____________________________________________________
ايندفعه من فارسيش كردم ولي دفعه بعد خودم پاك مي كنم
چون بر خلاف قوانين هست
سلام
اگه تایپ فارسی براتون مشکله، تو حالت آفلاین متن رو تایپ کنید بعد که وصل شدین متن رو کپی کنین.
اگه کسی بخواد برنامه نمونه بذاره راحته ولی اول باید بگین به چه روشی میخواین رمز رو ذخیره کنید.
اگه تو رجیستری ذخیره کنید که خیلی راحته (شاید پیدا کردنش هم برای بعضی ها راحت باشه)
اگه توی یک فایل ذخیره کنید، باید تصمیم بگیرید که با پاک شدن اون فایل برنامه چه عکس العملی نشون بده.
دو راه دیگه هست که من هم بلد نیستم.
1ـ ذخیره تو دیتابیس که راحته ولی چجور میشه ذخیره کرد که لو نره بچه ها باید نظر بدن.
2ـ ذخیره تو فایل Resource که من تا حالا فقط از فایل Resource اطلاعات رو می خوندم.
باید بگی برنامه برا چه کاریه؟ شاید ذخیره تو رجیستری مناسب باشه
یه برنامه ساده گذاشتم براتون که رمز تو رجیستری ذخیره میشه.
نکته:
من صحت رمز رو تو فرم اصلی هم چک کردم تا اگه کسی به زور وارد برنامه شد، هنگام Load شدن فرم اصلی، برنامه بسته بشه.
در ضمن اگه بخواین از روشی دیگه استفاده کنید کافیه توابع داخل ماژول رو دستکاری کنید و فرم ها نیازی به تغییر ندارند.
این یک روش ایده آل نیست و من هم مشتاق هستم تا روش های دیگران رو یاد بگیرم لطفا راهنمایی کنید دوستان.
ذخیره رمز در خارج از برنامه زیاد خوب نیست چون با ابزارهای مانیتورینگ و تریس توابع api که برنامه استفاده میکنه تو olly بخشهای امنیتی برنامت صریع لو میره تو ریسورس هم با ریسورس هکر کارش تمومه بهتره اطلاعات مربوطه رو ته فایل خودت با اگه dll خاصی استفاده میکنی ته اون اظافه کنی و از همونجا بخونی البته تمام اطلاعات رو با الگوریتم خاصی کد کنید تا در صورت دسترسی خوانا نباشند
آقا کدگذاری با من
اینم یه برنامه که خودم خیلی دوستش دارم ولی دیگران ... (زمان جوونیم نوشتمش)
وقتی می گه تازه کاره یعنی باید یه برنامه نمونه بذاریم که قابل فهم باشه. این از کدگذاری.
شما (بقیه کاربران) یه روش برا ذخیره پیشنهاد کنید لطفا.
فکر کنم ایشون یه چیز ساده میخوان یعنی همون پست شماره 3
اما در واقع تاپیکی رو ایجاد کردن که میتونه خیلی بدردبخور باشه: «ـرمز گذاری روی برنامه به یک روش استاندارد و مطمئن».
من تقریبا به این نتیجه رسیدم که با VB یا Delphy نمی شه سطح امنیت قابل قبولی ایجاد کرد. استفاده از شیوه های مختلف برنامه نویسی ، ساخت تردها ، ذخیره اطلاعات در پشته برنامه یا ریسورس یا فایلهای جانبی ، استفاده از متغیر به جای ثبات ها، اینکرپت کردن پسورد ، استفاده از CRC یا دیگر الگریتم های چک سام ، .... هیچ کدام قادر به تامین امنیت قابل قبول در برنامه نیستند.
ما با استفاده از این سکوها تنها قادر به تامین امنیت نسبی برای برنامه هستیم و در مواردی که امنیت بیشتری می خواهیم باید از زبان های سطح پائین تری مثل C استفاده کنیم.به نظر من بهتره به جای صرف وقت و هزینه فراوان برای رسیدن به بالاترین سطح امنیت، با در نظر گرفتن اطلاعات کاربر یا کاربران برنامه به تهیه طرح حفاظتی درخور سطح آنان بپردازیم.
در اینجا استفاده از روش "ذخیره پسورد کد شده در بانک اطلاعاتی" می تونه بهترین گزینه باشه. در این روش ، برنامه در ابتدا به بانک اطلاعاتی متصل می شود و سپس فیلدی از بانک اطلاعاتی که پسورد کد شده در آن قرار دارد را در یک متغیر ذخیره می کند.
در مرحله بعدی از کاربر رمز ورود را گرفته و کد می کند و آن را با پسورد کد شده ای که در متغیر ذخیره کرده بود مقایسه کرده و چنانچه پسوردها مطابقت داشت، اجازه ورود کاربر را خواهد داد.( چنانچه از هیچ بانک اطلاعاتی در برنامه استفاده نکرده اید می توانید پسورد را داخل یک فایل ذخیره نمایئد )
فوقش میای یه بکآپ ازشون یه جای دیگه میریزی.
اونم پاک کرد پیغام میدی : کاربر گرامی کو... می شدی پاک نمیکردی
.
عنوان و متن تاپیک رو درست کنید و گرنه مجبورم برخلاف میل باطنیم پاکش کنم .
نقل قول: فوقش میای یه بکآپ ازشون یه جای دیگه میریزی.
اونم پاک کرد پیغام میدی : کاربر گرامی کو... می شدی پاک نمیکردی
پس بار اول یه رمزی باید باشه؟ اگه اون رمز (رمز اولیه) ثابت باشه با لو رفتنش که دیگه قابل تعویض نیست.
چسبوندن به انتهای فایل اجرایی برنامه رو کسی بلد نیست (اونم در حالی که فایل در حال اجراست)
mojtabamalaekeh نوشته است:نقل قول: فوقش میای یه بکآپ ازشون یه جای دیگه میریزی.
اونم پاک کرد پیغام میدی : کاربر گرامی کو... می شدی پاک نمیکردی
پس بار اول یه رمزی باید باشه؟ اگه اون رمز (رمز اولیه) ثابت باشه با لو رفتنش که دیگه قابل تعویض نیست.
چسبوندن به انتهای فایل اجرایی برنامه رو کسی بلد نیست (اونم در حالی که فایل در حال اجراست)
سلام ممنون از اينكه يك نمونه برام فرستادين اگه امكان داره يك مقدار در موردش توضيح بدين ممنون ميشم منظورم از توضيح اينه كه اون رمز رو جوري براش تعريف مي كنيم بر حسب شماره هارد طرف هست يا نه؟
برنامه من مربوط به طلافروشي هست
پس اگه قراره بفروشی زودتر بجنب.
آخه یه نفر دیگه هم قراره تا یکی دو ماه آینده برنامشو بنویسه و توی کل ایرون پخش کنه.