- این الگوریتم در پروسه خودش وابسته به رمز عبور درخواستی باشه یعنی برای اینکه بخواد عملیات رو به انجام برسونه از شما درخواست رمز عبور کنه . در این حالت بدون در دست داشتن رمز عبور بازگرداندن اطلاعات با توجه به نوع الگوریتم مورد استفاده بین غیر ممکن تا آسان متغیره

- الگوریم بایستی بتونه ساختار اولیه اطلاعات اصلی رو به طور کامل تخریب کنه . متاسفانه برخی الگوریتمها تنها اقدام به جابجایی کاراکترها و انجام یک پروسه تبدیل خیلی ساده میکنن

در استفاده از الگوریتم رمز نگاری در داخل فایل به موارد زیر دقت کنید :
- تا حد ممکن یکی از دو الگوریتم Encrypt و یا Decrypt رو در داخل فایلتون قرار بدید . این امر انجام عملیات مهندسی معکوس رو سخت تر میکنه

- تا حد امکان توابع رمز نگاری رو در حالت Private تعریف کنید تا امکان اجرای اونها به صورت غیر مجاز وجود نداشته باشه

- تا حد امکان در داخل Access از اسامی که میتونه کرکر رو مستقیماً  متوجه عملکرد اون گزینه کنه استفاده نکنید مگر به قصد فریب دادن و سر در گم کردن کرکر

به طور مثال تابعی با نام IsRegistered میتونه کرکر رو متوجه این امر کنه که روال این تابع مرتبط با ثبت برنامه هستش و احتمالاً کلید باز شدن قفل رو هم باید در داخل اون پیدا کنه

- تا حد امکان تمامی String های مورد استفاده , که مرتبط با سیستم قفل گذاری هستند رو در حالت رمز نگاری شده قرار بدید . این امر میتونه به شما در بقای بیشتر الگوریتم قفل گذاری در نظر گرفته شده کمک کنه

- متغیرهای تعریف شده رو در داخل خود روتین و روال قرار ندید . سعی کنید فاصله فیزیکی اونها زیاد باشه

به طور مثال فرض کنید در داخل رویدار On Load میخواید یه متغیر رو چک کنید

Dim Y As String
Y="123"
X= Y ?
در این حالت فاصله فیزیکی Y با محلی که در اون چک میشه خیلی کمه , هر چه این فاصله بیشتر باشه خیلی بهتره . بهترین حالت تعریف Y در خارج از رویدار On Load هستش

استفاده از این روش در حالتی که کرکر قصد باز کردن فایل شما رو با یک ویرایشگر متن داره خیلی موثره

در مبحث دوم یعنی مخفی کردن و Disable کردن یک کنترل , توجه کنید که استفاده از شرط If در حالت تک شرطی میتونه مشکل ساز باشه

حتماً شرط رو به این صورت بنویسيد که اگه شرط درست بود این کارها رو انجام بده و اگه نادرست بود کارهایی دیگه

شرطهای یکسویه در داخل اکسس قابل دور زدن هستن . چه از طریق تغییر کد و چه از طریق دستکاری خود فرمها و گزارشها ( به طور کلی هر جایی که از اونها استفاده به عمل اومده )

توصیه : تا حد امکان از کاربرد شرطهایی با ساختار If X= Y Then در داخل رویدادهای آبجکتها استفاده نکنید
 یک تابع جهت انجام این امر طراحی کنید و در داخل اون تابع این کارها رو انجام بدید ( جهت اطلاع از نحوه کار به مثال ارائه شده در داخل فایل مراجعه کنید )

در فایل پیوست تغییرات زیر اعمال شده :

ارائه یک الگوریتم رمز نگاری در داخل برنامه جهت پوشش برخی نقائص

تذکر: این الگوریتم بدون درخواست رمز عبور عمل میکنه . قادر به تبدیل متون فارسی نیست و در مجموع استفاده از اون رو در جاهایی که رمز گذاری از اهمیت بالایی برخورداره توصیه نمیکنم ( تنها جهت آشنایی ارائه شده )

ارائه یک راه حل ساده در خصوص بخش دو مبحث

یادآوری : شاید یکسری از راه حلهای ارائه شده با مواردی که توی کتابهای Crack خوندید چندان هماهنگی نداشته باشه . توجه کنید ما داریم در خصوص فایلهای Access صحبت میکنم

در این فایلها 90% مسائلی که در رابطه با فایلهای اجرایی مطرح میشه در خصوص اونها مصداقی نداره
شما نیازی نیست کار خاصی انجام بدید . راه حلهای حرفه ای و ابزارهای مورد نیاز به مرور ارائه میشن
پس تا اون روز و قدمی دیگه به سمت جلو , خدا نگهدار
Password Zip File : npmpro.blogfa.com