سلام . شرمنده که دیر به دیر آپ میکنم ولی تا بتونم هر چند وقت یکبار هم سر میزنم .
در مورد کیجن و دکامپایلر پرسیده بودند . حالا جواب :
دکامپایلر ابزارهایی پرقدرت و سودمندی برای تجزیه و تحلیل کدهای Disassemble شده هستند . که هدف نهایی تمام دکامپایلرها تبدیل این کدها به برنامه هایی قابل درک برای انسان هست . باتوجه به ساختارهای گوناگون که در کامپایلرهای مختلف برای کامپایل برنامه ها به زبان ماشین مربوطه به کار گرفته میشوند و هریک از از این ابزارها نیز جهت تفسیر و دکامپایل کردن نوع و یا انواع خاصی از کامپایلرها ساخته شده اند .یا به زبان ساده تر که بخوام بگم دکامپایلرها ، برنامه های کامپایل شده رو تا حد زیادی به کد اصلی تبدیل میکنن البته بستگی داره چه مدلی رو استفاده کنی ، از هزار تا یکی خوبه بقیه به درد نخورن .
هر زبانی برنامه خاص خودشو میخواد ، مثلا دلفی برنامه خاص خودشو واسه دکامپایل کردن میخواد و یا VB .
حالا کیجن چیه ؟
بر فرض مثال این کد پایین طرح حفاظتی یک برنامه هستش و از شما یک یوزر و سریال میخاد که اگه درست باشه میره تو برنامه و گرنه پیغام میده .اولین طرحی ویا اولین روش پسورد گذاری برای برنامه ها که من و شما یاد گرفتیم وچقدر ذوق میکردیم
Dim d As Integer
For i = 1 To Len(usertxt)
d = d + Int(Mid(usertxt, i, 1))
Next
If sntxt = d Then
MsgBox "Tanx TO BUY SOFTWARE", , "Tnx"
rm2.Show
Me.Hide
Else
MsgBox "Sorry. No Mismatch", , "Sorry"
End If
میبینیم که یوزر ما عدد هستش و رقم به رقمشو با هم جمع میکنه و و با یک IF اونو با سریال مقایسه میکنه اگه برابر بودن برنامه فعال میشه و گرنه که پیغام میده .
حالا اگه شما بخوایین کاری کنین که با هر یوزر و سریالی برنامه فعال بشه (یعنی شما اون IF ایی رو که سریال و یوزر و رو با هم مقایسه میکنه یه ذره سیخ کاریش میکنین )، میگن اونو Patch کردی که کار راحتیه و مشکلات خاص خودشو داره .
ولی اصولی ترین راه و بدون مشکل (مشکل یعنی اینکه بلایی سر فایل نیاد که وسط کارش کرش کنه ) و سخت ترین راه همین کیجن هستش که شما میایین دنبال اون حلقه میگردین که بفهمین بر چه اساسی میگه این سریال و یوزر اشتباه هستش که بالاخره بعد از اینکه الگوریتمشو بدست اوردین یک برنامه مینویسین که کار همین حلقه رو انجام میده و اخر سر مقدار بدست اومده که سریال ما باشه رو بهمون نشون میده یعنی در کل قفل رو شبیه سازی میکنین ولی با کمی تفاوت ، البته این مثال یک طرح ساده بود و یک آدم عاقل که با علوم کرکینگ آشنا باشه از این مدل قفل ها استفاده نمیکنه .
حالا کامپایلر ها که گفتین مگه خود VB کامپایلر نداره ؟
عزیز جان حرف شما درسته ولی این کامپایلر ها واسه کارهای کم حجم هستن که خیلی کم ازشون استفاده میشه (عین ماکرو اسمبلر و ... ) واسه کیجن نویسی هستشو کارهای مثل اضافه کردن سکشن و ... که با این زبان ها راحتر هستش و تا حالا من که هرچی کیجن دیدم همشون از زبان های GUI استفاده کردن .
|