لطفا به من بگيد كي سي دي كليد رو كرك كرده و كي ميتونه قفل كولك رو كرك كرده آموزش بديد
:oops: مرسي
Printable View
لطفا به من بگيد كي سي دي كليد رو كرك كرده و كي ميتونه قفل كولك رو كرك كرده آموزش بديد
:oops: مرسي
با سلام:نقل قول:
نوشته شده توسط combat
آقا ما چشامون چپ شد پس كي ميزارين :shock:
من اين مطلب رو نوشته بودم .
درباره سوالات بچه ها:
اگه از همه ي مرحله ها استفاده كنيم . باز هم قفل كار مي كنه . من خودم تا حالا بيشتر از 30 بار با اين برنامه و با همين روش قفل گذاشتم كه تا حالا كسي قفل گذاشته هاي منو نشكونده . البته بايد قفل گذاري رو خودتون هم بلد باشيد . مثلا با برنامه نرو كه همتون مي شناسيدش مي شه سر سي دي قفل گذاشت . از اون دوست عزيز هم كه لينك دانلود برنامه ها رو گذاشتن ممنونم.
سلام به همه
قفل هايي كه نرم افزار tz copy مي زاره همه با كلون سي دي ورژن پايين مثل 3.2 شكسته مي شه
ميكين نه امتحان كنيد.
اما فايلهايي با حجم 2 گيگا بايت يا درستش 1.99 گيگا بايت
اين حجم مجازي نيز با نرم افزار هايي مانند ايزو باستر (ISO -Buster) به راحتي برداشته مي شن
مي گين نه امتحان كنيد.
پس دنبال قفل گذاري با نرم افزار tz copy نباشيد
چون به درد نمي خوره
يكي از دوستان اسم نرم افزار Tz Executable Protector رو آورده بود كه قفل اين نرم افزار هم قابل شبيه سازي مي باشد چون فايل هايي با كاركتر هاي غير مجاز به راحتي شبيه سازي ميشوند ولي قفل هاي آن نسبت به tz copy بهتر است
انشا الله در آينده نزديك به طور مفصل آموزش قفلگذاري و حفاظت اطلاعات بر روي سي دي رو براي همه شما عزيزان خواهم نوشت .
تا بعد
آقايون وخانمهاي خيلي كاردرست سلام .
عزيزتون يه برنامه مي خاد كه فيلم رو كه مي خوام روي
سي دي بريزم غير قابل رايت بشه.
منظورو كه گرفتيد پس بسم الله...
با تشكر قبلي...
ميشه يكي از دوستان طريقه رايت فايل avi رو با برنامه ي نرو به dvd بده؟
اخه من يك دفعه اين كارو كردم نشد، يعني نتونستم هم سيدي سوخت هم ديويدي نشون نميداد.
ممنون
چندتا برنامه توپ برای شکستن قفل سی دی یکی برنامه alcohol است که خیلی کارش درسته رقیبه کلون هست یکی دیگه هم برنامه clone cd است که نسخه 3 رو استفاده کنید و دیگری که مخصوص قفلهای نقطه ای است حتمآ امتحانش کنید Blind Write است.
lord_theone جان به نظر میرسه شما مطالب قبلی اصلا نخونده باشید :wink:
دوستانی که قول گذاشتن آموزش دادن به قولشون وفا کنن .
Realamd جان برای رایت باید قبلا اون رو به فرمت مخصوص DvD تبدیل کنی البته با نرم افزارهای مخصوصش که سری به دانلود بازار بزنی هم خوبه . بعد هر بلایی دلت خواست سرش بیار .
mmezrab , mobtakeran جان ما همچنان منتظریم اگه نمیتونید آموزش بذارید دیگه تاپیک سرکاری نذارین :evil:
محسن خان, lord_theone, عزیز به صفحات قبلی همین تاپیک مراجعه کنید :arrow:
HolySooshiant عزیز ممنون از توجهتون به این تاپیک :wink:
موفق و سربلند باشید :wink:
چگونه ميشه نوع قفل يك سيدي را تشخيس داد
يك برنامه معرفي كنيد.
ممنون
من تازه عضو پي سي ورلد شدم . اما يه نكته براتون مي گم كه حال كنيد .
بهترين راه و مطمپن ترين راه براي شكستن قفل نرم افزارهايي كه بر روي هارد كپي مي شود ( لغت نامه ها و مثلا مترجم پارس ) :
بعد از نصب - با استفاده از نرم افزارهايي كه از روي يك پارتيشن ايميج مي گيرند . ايميج بگيريد و با آن ايميج حال كنيد . يه چند تا برنامه براي شكستن قفل هاي ايراني دارم كه خودم نوشتم . فردا براتون مي ذارم
براي كرك برنامه هاي ايراني ( سينا پك - نامه نگار - زرنگار - درج 2 و ... ) به سايت زير مراجعه كنيد :
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
mehdi_7070, جان قرار بود لینک برنامه که نوشتید بدین - نه تبلیغ برای سایتهای دیگه بکنین :?
لطفا پستتون رو ویرایش کنید :arrow: :arrow: :arrow:
شما میتونید برای نوشتن پستهای مفید فقط لینک بدید اونم لینک فعال نباشه
موفق و سربلند باشید :wink:
سلام
يه سري اطلاعات خوب در مورد قفلهاي CD.
منبع توي خود مقاله هست.
خوش باشين،کد:http://www.maintenance.persiangig.com/p30/LOCK.pdf
©م.م.©
سلام دوستان .
من قصد دارم درباره اين موضوع براتون چند سري مطالب خوب و بدردبخور بنويسم كه حال كنيد .
* لينك برنامه اي كه براي مخفي كردم اطلاعات سي دي هست را بگذاريد .
* در مورد قفل برنامه المايده 2 بگم كه اسمش gold lock هست كه براي شكستن نياز به يك آدم حرفه اي هست و به صورت معمولي رايت نمي شود . بعد از رايت معمولي زماني كه مي خواهد سي دي را چك كند سركار مي رويد .
* در مورد مجموعه برنامه red بگم كه نسخه 4.1 آن داراي فايل هاي حجمي است كه با برنامه cdrwin رايت مي شود و نسخه 4.3 آن داراي فايل هاي مخفي است كه با clone رايت مي شود .
* يه عده كه پز مي دن فلان چيز را دارم و يا آموزشش را مي نويسم . خواهشا بفيه را سركار نگذارند .
* هر كسي پروفايل هاي clone را دارد بگذارد .
در مورد انواع قفل ها مقاله اي آماده كردم كه فردا مي ذارم .
patal جان ممنون .
رفتم دانلود کنم .
موفق و سربلند باشید :wink:
یک سری مطالب آماده کرده بودم که بگذارم اما نشد . یعنی یه سری از صفحات باز نمی شد و حالم را گرفت . اون مقاله ای را که قولش را داده بودم را الان می ذارم .
قفلهای سی دی ها چگوونه کار می کنند
روشهاي بسياري براي حفاظت از يك CD در برابر كپي برداري وجود دارد ولي تاكنون هيچ سازنده و طراح قفلي ساختار آن را بصورت واضح بيان نكرده است.
يكي از ساده ترين و عمومي ترين روشهايي كه تاكنون برا ي حفاظت از CD ديده شده است افزايش مجازي طول چند فايل درون CDميباشد به نحوي كه آنها تا چند صد مگابايت به نظر ميرسند.براي انجام چنين كاري تنظيمات مربوط به طول آن فايل را در Image سي دي بيش از آن چه هست ذكر ميكنند.
اغلب اين فايلها درون Image بر روي هم قرار ميگيرند ولي برنامه حجم واقعي هر فايل را ميداند و عمل خواندن را تا آن نقطه انجام ميدهد. بنابراين برنامه بخوبي كار ميكند. اگر كاربري سعي كند كه فايلها را درون درايو دستگاهي كپي كند با شكست مواجه ميشود زيرا اين سي دي حاوي چندين گيگا بايت داده است! ولي اين روش اكنون ديگر كارايي لازم را ندارد زيرا امروزه تمام برنامه هاي كپي برداري ابتدا از روي سي دي Image (تصوير) برداري ميكنند.
يكي از روشهاي نادر و كمياب براي حفاظت از سي دي ها كنترل بر روي درايو سي دي مي باشد از اين روش بيشتر در حفاظت بازيها استفاده ميشود و نحوه ايجاد آن به دانش بالايي نياز دارد.روش آن بدين نحو است كه اطلاعاتي نادرست(عمدي) در قست ECC (تصحيح خطا) يك سكتور داده نوشته ميشود. سي دي نويسهاي استاندارد بصورت خودكار اين خطاها را هنگام نوشتن تصحيح ميكنند در هنگام خواندن ، برنامه سكتور داده را بصورت RAW و بدون تصحيح خطا در حافظه براي تطبيق با داده هاي اصلي بار ميكند و در صورتيكه تناقض با داده هاي اصلي برنامه اجرا نميشود.
اين روش در برنامه هايي كه عملكرد درايو توسط برنامه تعيين ميشود(مانند بازيهاي كنسول) كارايي قابل توجهي داشت. ولي اكنون بسيار ي از نرم افزارهاي نوشتن سي دي گزينه اي براي خاموش كردن تصحيح خودكار دارند. بنابراين اين روش نيز بزودي از ياد برده شد.
يكي از روشهاي غير حرفه اي ولي موثر در زمانهايي كه سي دي به تازگي خود را مطرح ساخته بود ايجاد سي دي هاي نقره اي غير استاندارد بود. اين سي دي ها بيش از 74 دقيقه(650 مگابايت) ظرفيت داشتند((Over sized و با دستگاههاي پرس سي دي توليد ميشدند . ولي امروزه CD-RوCD-RW هايي با ظرفيتهاي 700 و حتي 800 مگابايت توليد شدند كه اين روش را بسرعت متوقف نمودند.
امروزه متداول ترين روشي كه براي محافظت از سي دي ديده ميشود ايجاد فاصله هايي (gaps) غير استاندارد ما بين تراك هاي صوتي و قرار دادن انديسها در مكانهايي دور از انتظار است. سي دي كه با اين روش قفل گذاري ميگردد در بسياري موارد توسط نرم افزار هاي كپي برداري معمولي و سي دي نويسهايي كه از Disc at once پشتيباني نميكنند غير قابل كپي برداري است. ولي با پيشرفت تكنولوژي سي دي نويسها و نرم افزارها اين روش نيز بسرعت در حال كناره گيري است.
يكي ديگر از روشهاي ساده براي قفل گذاري توليد يك سي دي غير استاندارد با قرار دادن تراكهايي كمتر از 4 ثانيه است . برنامه براي اجرا شدن ابتدا اندازه و تعداد اين تراكهاي غير استاندارد را چك ميكند . همچنين قرار دادن تراكهاي خالي داده در مابين تراكهاي صوتي ميتواند اين روش را قدرتمند تر سازد.
در واقع با تركيب روش بالا و اين روش برخي نرم افزارها و سي دي نويسها را از نوشتن اينگونه سي دي ها عاجز نموده ايم ولي روش موثري محسوب نميشود. همچنين اين روش سبب ناسازگاريهايي نيز در نحوه خواندن سي دي ميشود به همين دليل عموميت پذيري كمتري دارد.
امروزه قرار دادن فاصله خالي يا سوراخگذار ي بر روي سي دي متداول شده است بدين نحو بسياري از برنامه ها كه يك قصد خواندن يك تراك از ابتدا تا انتها را دارند با مشكل مواجه ميشوند. فراد مبتدي گاهي براي سي دي ها ليبلي قرار ميدهند كه هنگام اجرا ي برنامه آن ليبل سي دي را چك ميكند گاهي امكان دارد در گزينش كردن برنامه از يك سي دي و نوشتن آن ، فراموش كنيم برچسب را نيز منتقل كنيم يا برچسب متفاوتي براي آن سي دي انتخاب كنيم ولي تا كنون اين روش به عنوان يك قفل مطرح نبوده است .
امروزه دستكاريToc سي دي بسيار فراگير است و يك قفل ساز سعي دارد با دستكاري TOC اطلا عاتي دروغين را به سي دي پيوند بزند.(با ساختار Toc در مقاله هاي آينده بيشتر آشنا خواهيد شد.)
امروزه شركتهايي بيشماري بر روي نحوه قفل گذاري بر روي سي دي ها و روشهاي جديد فعاليت دارند به طور مثال شركت سوني به تازگي ادعا ميكند كه قادر است با دستگاهي خاص برروي سي دي اطلاعاتي بنويسد يا مارك گذاري كند كه با تجهيزات عادي تنها قابل خواندن باشد. ولي از سوي ديگر شركتهايي سعي در ارائه كد برگردانهايي براي آن هستند. و اين مبارزه ادامه دارد....
دستتون درد نكنه .
من دارم خودمو مي كشم يه چيزاي بدردبخور بذارم .
حداقل دربارشون نظري بديد .
دوباره : پروفايلهاي clone را هر كي داره بذاره .
درباره قفل گلهاي بهشت ديگه نپرسيد .
همه بلدن ديگه . تازه نسخه هايي هست تو بازار كه قيمتش 800 تومنه كه خيلي عالي جواب مي ده و رايت هم ميشه . ديگه نپرسيد كه قفل گلهاي بهشت را چطوري ميشه شكست . بسه ديگه . بريد اگه راست مي گيد قفل المايده 2 را بشكنيد .
نظر ديگه من اينه كه قفل گذاري را بي خيال شيد .
اگه يه سري تو سايت [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] بزنید می فهمید چی میگم . اینهمه نرم افزار مهم که ارزش زیادی دارند و کلی مهندس روش کار کردند که نشه رایت کرد را به راحتی رایت می شه کرد .
* هر نرم افزاری رایت می شود و قفل آن شکسته می شود . ( باور ندارید . برید ببینید درج 1 و 2 را هم کرک کردن )
سلام دوست عزيز اين برنامه چي شد؟
من همين برنامه رو مي خوام :( :cry: :cry: :oops:
دوست عزيز لطف كن لينك اين برنامه رو به من بديد به همراه آمزش خيلي لازمش دارم من تا حالا هيچ سي دي رو قفل نكردم حالا اين برنامه رو ميخوام
ممنون مي شم اگر زودتر
نقل قول:
نوشته شده توسط Subzero
فکر کنم Mmezrab جان خرش از پل گذشت و دیگه به این تاپیککاری نداشته باشه .
مگه پی دی اف کردن چقدر طول میکشه من که خودم با PDFfactory فقط با دو کلید پی دی اف می سازم
فقط یه حالت داره : مگه تایپش طول کشیده باشه .
موفق و سربلند باشید :shock: :shock:
nbsfucker
مرسي :)
سلام آقاmehdi7070
آقا هواي بي سواد روهمداشته باشيد خواهشا راه كپي گلهاي بهشت وگلهاي شادي روبگيد
خيلي مخلصيم
با سلام
عزيزان با مرام هركي قفل گلهاي شادي رو شكونده يه گوشه چشمي هم به ما لطفا راهشو بگه
سلام دوستان
در مورد قفل گذاري گفتيد بايد 6 يا 7 تا برنامه دانلود كنم حالا همشو دانلود كردم الا يكيش اونم اينه CCD-Lock 1.7.2 *RC1a حالا خواهش ميكنم يه لينك درست به من بديد تا دانلودش كنم
با تشكر
باي
در مورد قفل گلهای بهشت :
یکی از راحت ترین راه ها این است که به صفحات قبل مراجعه کنید و مطالعه کنید .
دیگر اینکه بعد از رایت ( با استفاده از پروفایل کلون سی دی مربوط به قفل نگهبان ) هنگامی که برنامه می خواهد قفل سی دی را چک کند . سی ثانیه استندبای کنید و دوباره از این حالت خارج شوید . حالا بروید و حال کنید .
دوستان !
از تمام آقاياني كه اين موضوع را راه اندازي كردند و جز حرفه اي ها هستند خواهشمندم كه دوباره به ما سر بزنند . من كه اين موضوع را به 100 صفحه مي رسونم . خواهش مي كنيم نگذاريد اين موضوع بخوابه ! :oops:
اين يه مقاله توپ در مورد يك نوع قفل جديد :twisted:
.:: قفل هاي اکتيو ايکس ::.
تعريف قفل هاي اكتيو ايكس :
در واقع يك اكتيو ايكس كه مانع اجراي برنامه در شرايط خاصي شود را قفل اكتيو ايكس مينامند. اين نوع قفل مانند ساير كامپوننتهاي برنامه نويسي است . برنامه نويس به سادگي آن را بر روي فرم برنامه خود قرار ميدهد و با تنظيم پارامترها و خصوصيات آن ، سبب فعاليت آن ميشود. اين اكتيو ايكس قبل از قرارگرفتن فرم اصلي در حافظه ، شروع به كار ميكند و اگر براي اولين بار اجرا ميشود بر حسب اندازه حافظه ، شماره هاي سريال و سرعت پردازنده كد ويژه اي توليد ميكند اين كد توليد شده وابسته به خصوصيات كامپيوتر است بنابراين كد برگشتي اين اكتيو ايكس بر روي هر سيستمي متفاوت خواهد بود. پس از ارائه كد ، كد معادل آن را از كاربر در خواست ميكند. كاربر با ارائه كد توليد شده به شركت توليد كننده نرم افزار كد معادل آن را دريافت ميكند.اين كد را كاربر يا از طريق تلفن يا از طريق پست الكترونيكي و يا اينترنت دريافت ميكند در صورتيكه كد معادل دريافت شده پس از كد شدن معادل كد ارائه شده باشد يا به عبارتي ديگر كد ارائه شده از طرف كامپيوتر مكمل كد دريافت شده از شركت باشد اكتيو ايكس اجازه ميدهد كه برنامه بدون اشكال شروع به كار كند. كاربر نيز ميتواند بارها از اين كد بر روي كامپيوتر خود(كامپيوتري كه كد دريافت كرده) استفاده كند. پس از ورود كد، اين كد در مكاني از سيستم مثلا ريجستري يا يك فايل بصورت كد شده قرار ميگيرد و هر بار كامپيوتر برنامه را اجرا كند به جاي درخواست كد از كاربر ، كد را از رجيستري يا فايل پس از كديابي مورد استفاده قرار ميدهد. نقاط ضعف: 1.قفلهاي اكتيو ايكس نياز به دريافت كد از شركت دارند يعني اينكه بايد كاربر حتما به نحوي با شركت توليد كننده تماس بگيرد و نميتواند برنامه را پس از خريد بلافاصله استفاده كند . خصوصا دسترسي به تلفن و اينترنت ضروري است. 2. قفلهاي اكتيو ايكس تنها بر روي يك سيتسم اجرا ميشوند و بايد براي دريافت كد براي هر كامپيوتر اقدام شود.(دشواري در نصب هاي تعداد بالا) 3.قفلهاي اكتيو ايكس ممكن است با فرمت كردن ، پارتيشن بندي تعغير يابد كه نميتواند شركت دقيقا حدس بزند كه اين قفل براي اين سيستم بوده يا واقعا تعغير كرده . در اكثر قفلهاي ساخته شده تعغيرات اين كد بسيار مشاهده شده است. 4. با صدمه ديدن قطعه اي در كامپيوتر و يا تعويض يك قطعه برنامه تصور ميكند كه سيتسم تعغير يافته است مثلا با تعغير حافظه سيستم. نقاط قوت: 1- امنيت بالا براي برنامه نويس از نظر كپي برداري با تعداد بالا. 2- داراي بيشترين امنيت نسبت به ساير قفلهاي نرم افزاي يا سي دي 3- سازگاري بسيار بالا نسبت به ساير قفلهاي نرم افزاري. 4- قابليت آمار گيري فروش برنامه توسط شركت ارائه كننده كد معادل نحــوه ايجاد قفل براي برنامه نويسان ويژوال بيسيك: اول اينكه اين برنامه بايد بصورت اكتيو ايكس توليد شود كه بتوان از آن به سادگي استفاده نمود. قدم اول براي توليد آن اين است كه برنامه قبل از فرم اصلي بار شود. قدم دوم ارائه يك كد توليد شده براي سيستم است اين بخش تقريبا هسته برنامه را تشكيل ميدهد بنابراين در مورد اين قسمت توضيحات بيشتري ارائه ميكنم كدي كه اكتيو ايكس براي يك كامپيوتر خاص توليد ميكند بايد منحصر بفرد باشد يعني نبايد در سيستمهاي ديگر مشابه آن پيدا شود همچنين مهمترين نكته اي كه بايد براي توليد اين كد در نظر گرفته شود اين است كه با تعغيرات كوچك درون سيستم تغيير نكند بدين منظور ميتوان آن را به قسمتهاي مختلف كامپيوتر بنا بر نوع انتظار قفل تغيير دهيم مثلا به شماره سريال هارد يا مثلا به مقدار حافظه سيستم يا به نوع كارت گرافيكي و... و يا به مجموع آنها وابسته كنيم. بسياري سوال كردند در ويژوال بيسيك چگونه ميتوان شماره سريال هارد را بدست آورد؟ براي اين منظور ميتوان از API ها استفاده نمود. يك API خوب براي اين منظور GetVolumeInformation است قدم سوم ايجاد كد مكمل است . بصورتهاي گوناگون ميتوان براي كد توليد شده كد مكمل ايجاد كرد اولين روش استفاده كه ساده ترين است استفاده از يك فرمول است مثلا يك مثال ساده اين است كه اگر كد توليد شده 15663 بود برنامه با جمع كردن اعداد زوج و فرد اين عدد و تقسم نمودن و ضرب در 5586 يك كد توليد كند ايراد اينگونه روشها در قابل كشف بودن كد ميباشد مگر اينكه واقعا يك رياضيدان باشيد. روش ديگر توليد كد هاي تصادفي مثلا در ويژوال بيسيك بوسيله Randomize Timer و تشكيل يك بانك اطلاعاتي است كه كد معادل و كد ارايه شده براي همه آنها را در آوريم اين روش بسيار اطمينان بخش تر است. ديگر تمام است بسادگي يك قفل حرفه اي ساخته ايم . آنهم با ساده ترين زبان دنيا ويژوال بيسيك اگر آن را با برنامه هاي ديگر توليد كنيد كه ديگر محشر است ! با كمي رنگ و لعاب دادن به اكتيو ايكس خودمان و توليد همان پايگاه داده و تعيين پارامترهاي گوناگون مثلا محدود كردن در تعداد ، نوع وابستگي و ... براي برنامه خود ، حتي ميتوانيم آن را بفروش برسانيم !
.:: اطلاعيه ::.
دوستان علاقمند به قفل شكستن !
هر كسي دوست داشت قفل برنامه اي را بشكند براي من پيغام خصوصي بفرستد
آقا اگه چیزی بلدی بهتره بگی تا همه استفاده کنن
اینجا که جای تبلیغ نیست
mehdi_7070 جان بلدی برای این آموزشی که دادی آموزش برنامه نویسی هم بذاری :?:
موفق باشید :wink:
پس چي شد آقايان ادعا .
چرا ديگه چيزي نمي فرستيد يا نمي گيد دارم آموزش مي نويسم .
ديديد نمي شه قفلي نوشت كه باز نشه .
+++
من هنوز منتظر مقاله هاي دست اول دوستان حرفه اي تز از خودم هستم . لااقل نظر بديد . بي معرفت ها :shock:
+++
دنبال يه مقاله درباره قفل هاي سخت افزاري و نرم افزاري هستم كه تا چند ساعت ديگه مي گذارم . بريد و حال كنيد .
ادقام شد
قفل هاي نرم افزاري چگونه طراحي مي شوند؟
با توجه به فزوني نرم افزار در سيستم هاي كامپيوتري از يك طرف و توانايي كنترل كپي هاي غيرمجاز ( از ديدگاه اقتصادي آن ) از طرفي ديگر دليلي محكم جهت بررسي اين شاخه از مهندسي نرم افزار مي باشد.
از آنجا كه متاسفانه قانون Copyright در تمام جهان بجز ايران و چند كشور ديگر اجرا مي گردد, بحث كنترل كپي هاي غيرمجاز حساس تر مي شود. در اين مقاله سعي بر اين است تا علاوه بر آشنايي با انواع قفل هاي نرم افزاري و اختلاف آن ها با قفل هاي سخت افزاري, بتوانيم به عنوان طراح يك قفل نرم افزاري از محصولات نرم افزاري خودمان حمايت كنيم. ضمنا علاوه بر آشنايي با مفاهيم فوق, نوشتن روتين هاي ضد ديباگ و همچنين نحوه كد كردن اطلاعات نيز لحاظ شده است.
لازم به ذكر است كه اين مقاله حاصل تجربيات چند ساله و زحمات زيادي است كه تقديم مي گردد.
كلمات كليدي
Key Lock, Hard Lock, Software Lock, قفل نرم افزاري، Tag Lock, Anti Debug, قفل سخت افزاري
مقدمه
از آنجا كه زمان زيادي تا سال 2000 باقي نمانده, اما هنوز در كشور ما ايران, نرم افزار جاي خود را به عنوان يك محصول صادراتي پيدا نكرده چرا كه يكي از دلايل اصلي آن عدم توجه جدي به حمايت از توليد كنندگان نرم افزار مي باشد. به هر حال قصد اينجانب از ارائه مقاله, بررسي كم و كاستي هاي نرم افزار در ايران نيست بلكه طريقه حل مشكل موجود در اين بازار نابسامان مي باشد. با توجه به كپي هاي غيرمجازي كه روزانه بصورت كاملا عادي و بدون اطلاع سازنده آن صورت مي گيرد, جلوگيري از اين عمل و كنترل جدي آن امري ضروري و واجب بنظر مي رسد. در ادامه مطلب به توضيح درباره قفل هاي نرم افزاري و سخت افزاري مي پردازيم.
آشنايي با قفل هاي نرم افزاري و سخت افزاري
تعريف قفل هاي نرم افزاري: به هر برنامه اي كه كنترل كپي آن فقط از طريق نرم افزار و بدون نياز به سخت افزار اضافي قابل انجام باشد, گويند.
تعريف قفل هاي سخت افزاري: به هر برنامه اي كه كنترل كپي آن از طريق سخت افزار اضافي قابل انجام باشد, گويند.
با توجه به تعاريف فوق مي توان به تفاوت قفل هاي سخت افزاري و نرم افزاري پي برد. قفل هاي سخت افزاري با توجه به اضافه كردن يك سخت افزار جديد به كامپيوتر ( اغلب از طريق ارتباط با پورت چاپگر ) برنامه خود را كنترل مي كنند. برنامه قبل از اجرا ابتدا با توجه به مراجعه به آدرس سخت افزار نصب شده ( اضافه شده با استفاده از دستور Port ) به سخت افزار مورد نظر خود مراجعه كرده و در صورت يافتن آن, تست هاي مختلف اعم از تست رمز, خواندن اطلاعات و ... مي تواند تصميم گيري نمايد. اما در قفل هاي نرم افزاري برنامه بدون نياز به سخت افزار اضافي و با كنترل رسانه ذخيره سازي مي تواند تصميم گيري كند. ضمنا لازم به توضيح است كه هدف از طراحي قفل هاي نرم افزاري/ سخت افزاري اين نيست كه هيچكس توانايي شكستن ( باز كردن ) آنرا ندارد بلكه مقصود بالا بردن سطح كنترل كپي هاي غير مجاز تا حد ممكن مي باشد. ( چرا كه مي دانيم اطلاعات همه در يك سطح نيست. )
طريقه استفاده از قفل نرم افزاري در برنامه مورد نظر
با توجه به نوع كاربرد برنامه ( كوچك وقابل كپي بر روي يك ديسكت, تحت شبكه و ... ) مي توانيم از انواع روش هايي كه جهت حفاظت از نرم افزار در نظر داريم ( و متعاقبا توضيح داده خواهد شد ) استفاده كنيم. اما مساله قابل بحث اين است كه چگونه از يك قفل منتخب استفاده نمائيم؟
جواب اين سوال متغيير و وابسته به شرايط زير مي باشد:
الف: اعتقاد طراح نرم افزار به اينكه كاربر حتما بايد آنرا خريداري نمايد تا از امكانات آن مطلع گردد.
در اين حالت قفل نرم افزاري در ابتداي شروع به كار برنامه كنترل مي گردد حتي طراح مي تواند در مواقع حساس نيز قفل را مجددا كنترل كند و يا در حالتي كه طراح واقعا سخت گير باشد, مي تواند در زمان هاي مشخصي از وجود قفل اطمينان حاصل نمايد ( مثلا هر 4 ثانيه ). البته در اين حالت طراح بايد روشي را كه جهت كنترل قفل استفاده مي كند, نيز در نظر بگيرد.
ب: اعتقاد طراح نرم افزار به اين كه كاربر مي تواند از نرم افزار به عنوان نسخه نمايشي نيز استفاده كند.
طراح در اين حالت مي بايست در مكان هاي خاصي از برنامه, قفل را كنترل كند. مثلا در يك برنامه حسابداري مي توان تمام بخش هاي سيستم را آزاد گذاشته ( يعني برنامه نيازي به قفل نداشته باشد ) اما در صورتي كه كاربر مايل به استفاده از امكانات گزارشگيري سيستم باشد, قفل نرم افزاري در خواست گردد. مزيت اين روش بر روش قبلي اين است كه ديگر نياز به طراحي نسخه نمايشي جهت مشاهده كاربران وجود ندارد.
آشنايي با نحوه قفل گذاري بر روي يك برنامه
الف: طراح به سورس برنامه دسترسي دارد.
در اين حالت طراح پس از انتخاب روش قفل گذاري, كافيست آنرا به زبان مورد نظر خود پياده سازي نموده و در برنامه خود بگنجاند. ( كه مكان هاي قرار دادن قفل در عنوان قبلي توضيح داده شد. )
ب: طراح ( مجري پروژه ) به سورس برنامه دسترسي ندارد.
گاهي اوقات به يكسري برنامه هاي ارزشمندي برخورد مي كنيم كه فاقد قفل هستند, بنابراين نياز به قفل گذاري وجود دارد. ( البته اين حالت بيشتر در كشور ما و چند كشور ديگر كه در آن ها قانون Copyright معني ندارد, كاربرد دارد. ) جهت تزريق قفل به اين گونه برنامه ها, نياز به آشنايي كامل به ساختار فايل هاي اجرايي (EXE, COM, SYS, …) وجود دارد چرا كه بايد برنامه اي طراحي كنيم تا همانند يك ويروس كامپيوتري به فايل اجرايي مشخصي بچسبد. البته جهت اينكار بهترين زبان برنامه نويسي, اسمبلي مي باشد. ( بدليل توانايي دخالت در روند اجراي برنامه )
البته در رابطه با نحوه نوشتن اين گونه برنامه ها, روش هاي زيادي وجود دارد كه خود بحثي مجزا را مي طلبد و از حوصله اين مقاله خارج است.
ضمنا براي بالا بردن سطح امنيت برنامه لازم است تا يكسري كد هاي ضد ديباگ در برنامه گنجانده شوند. كدهاي ضد ديباگ, دستوراتي به زبان اسمبلي هستند كه در حالت اجراي عادي برنامه, هيچ تغييري در روند اجراي نمي گذارند بلكه در صورتي كه برنامه توسط ديباگرها اجرا گردد ( مورد ارزيابي قرار گيرد ) بتواند از اجراي آن جلوگيري نمايد. با اضافه كردن كد هاي ضد ديباگ به ابتداي برنامه ( يا قبل از كنترل قفل ) مي توان احتمال دستكاري در برنامه را پائين آورد. ( نحوه نوشتن كد هاي ضد ديباگ در پيوست A آورده شده است.)
آشنايي با روش هاي قفل گذاري و نحوه طراحي آن ها
1- قفل گذاري با استفاده از شماره سريال اصلي ديسكت
همانطور كه مي دانيد, سيستم عامل جهت هر ديسكت يك شماره سريال واحد (UNIQUE) اختصاص مي دهد, بطوريكه شماره سريال هر دو ديسكت با هم يكي نيستند. بنابراين همين خود يك راه تشخيص ديسكت كليد ( قفل ) مي باشد.
جهت استفاده از اين قفل مي بايست شماره سريال ديسكت را خوانده و سپس در داخل برنامه آنرا كنترل نمائيم. يك راه ساده جهت خواندن شماره سريال, اجراي دستور VOL بصورت شكل مقابل است:
VOL >>C:DOSLCK.TMP
بعد با باز كردن فايل LCK.TMP, مي توانيم به محتويات آن دسترسي پيدا كنيم. راه ديگر مراجعه به Boot Sector جهت كنترل قفل مي باشد.
ضريب اطمينان اين قفل در مورد ديسكت ها, 5%-2% بوده و در رابطه با هارد ديسك 60%-50% مي باشد. دليل اين اختلاف اين است كه در حالت قفل ديسكتي با كپي Boot Sector, قفل بر روي ديسكت ديگر قرار خواهد گرفت اما در رابطه با هارد ديسك اينكار به سادگي انجام پذير نيست.
2- قفل گذاري با استفاده از مشخصات سيستم
در اين نوع قفل نرم افزاري, برنامه قبل از اجرا ابتدا مشخصات سيستم را خوانده ( كه اينكار از طريق مراجعه به بخش هاي خاصي از حافظه و يا مراجعه به اطلاعات BIOS انجام مي شود. ) سپس آنرا با فايلي كه قبلا توسط نويسنده نرم افزار بر روي كامپيوتر كپي گرديده, مقايسه مي كند و در صورت عدم برابري, اجراي برنامه پايان مي پذيرد.
اين نوع قفل هنوز هم در بسياري از برنامه ها استفاده مي گردد, اما نكته قابل ذكر اين است كه جهت اطمينان بيشتر به قفل لازم است فايل حاوي مشخصات بصورت كد شده نوشته شده باشد تا امكان دستكاري آن توسط قفل شكنان به حد اقل ممكن برسد.
درصد اطمينان اين نوع قفل 75%-65% مي باشد.
3- قفل با استفاده از موقعيت فايل روي هارد ديسك
اين نوع قفل فقط بر روي هارد ديسك قابل استفاده بوده و به اين صورت است كه فايل اجرايي به موقعيت خود بر روي هارد حساس مي باشد چرا كه قبل از اجرا ابتدا موقعيت خود را از روي سكتورهاي ROOT خوانده و سپس شماره كلاستر اشاره گر به خودش را بدست مي آورد, سپس آنرا با شماره كلاستري كه قبلا توسط برنامه نويس بر روي يكي از فايل هاي برنامه ( ممكن است بصورت كد شده باشد ) قرار داده شده, مقايسه كرده و در صورت برابر بودن اجرا مي شود. اين نوع قفل نسبت به قفل قبلي ( شماره 2 ) استفاده كمتري داشته چرا كه در صورتيكه برنامه از روي بخشي از هارد به ناحيه ديگري انتقال يابد, اجرا نخواهد شد و اين از نظر كاربر بسيار ناپسند مي باشد. ( ضمنا امكان Defra, Scandisk, و ... نيز وجود ندارد چرا كه شماره كلاستر اشاره گر به فايل تغيير خواهد كرد. )
ضريب اطمينان اين نوع قفل نيز 80%-70% مي باشد.
4- قفل با استفاده از فرمت غير استاندارد
اين شيوه يكي از رايج ترين قفل هاي نرم افزاري است كه هنوز هم بصورت جدي مورد استفاده قرار مي گيرد. برخي از دلايل اهميت آن عبارتند از:
- امكان استفاده از روش هاي متفاوت در اين روش
- راحتي و سرعت زياد به هنگام استفاده آن
- وجود ضريب اطمينان بالا و انعطاف پذيري زياد آن
- عدم وجود نرم افزار خاصي جهت باز كردن اين نوع از قفل ها
همان طور كه مي دانيم سيستم عامل جهت دسترسي به اطلاعات يك ديسكت از فرمت خاصي ( 18 سكتور در هر تراك ) استفاده مي كند اما اگر يه تراك به صورت غير استاندارد فرمت شود, ( مثلا 19 سكتور در تراك ) سيستم عامل ديگر توانايي استفاده از سكتورهاي غيرمجاز را نخواهد داشت و بنابراين تمام نرم افزارهاي تحت سيستم عامل مزبور نيز از سكتورهاي مخفي استفاده نكرده, در نتيجه امكان كپي برداري از آنها بسيار ضعيف است. مانيز از همين روش جهت طراحي قفل مورد نظر مان استفاده مي كنيم. بصورتيكه تراك آخر ديسك را بصورت يك سكتوري و با شماره 20 فرمت مي كنيم. سپس جهت كنترل ديسكت به سكتور فوق مراجعه كرده و در صورت وجود, كنترل برنامه را پي مي گيريم. البته غير از تغيير شماره سكتور مي توان از اندازه غير مجاز نيز استفاده كرد يعني بجاي اينكه سكتورها را بصورت 512 بايتي فرمت كنيم, از اندازه 1024, 2048 و ... استفاده مي كنيم. ( قفل نرم افزاري Copy Control كه معروفترين در نوع خود مي باشد, از همين روش استفاده مي كند. )
اين قفل فقط جهت فلاپي ديسك قابل استفاده مي باشد و در صد اطمينان در اين روش حدود 95%-85% مي باشد.
5- قفل با استفاده از شماره سريال ساختگي
اين روش قفل گذاري كه قويترين قفل مي باشد, بصورت مخلوطي از روش هاي 1 و 4 مي باشد يعني ابتدا تراك خاصي را بصورت غير استاندرد فرمت كرده و سپس اطلاعات خاصي را درون آن قرار مي دهند ( شماره سريال فرضي ). اين قفل فقط جهت فلاپي ديسك قابل استفاده بوده و ضريب اطمينان آن حدود 98%-90% مي باشد.
پيوست A- روتين هاي ضد ديباگ Anti Debug Procedures
همان طور كه توضيح داده شد, روتين هاي ضد ديباگ جت جلوگيري از اجراي برنامه هاي ديباگر و يا جلوگيري از ( حد اقل مشكل كردن كار ) دستكاري توسط قفل شكنان, استفاده مي شوند. در زير توضيحات چند روش موثر و مفيد, آورده شده است:
الف: غير فعال كردن وقفه ها
جهت جلوگيري از اجراي مرحله به مرحله ( Trace كردن ) برنامه, مي توان وقفه هاي كنترلر 8359 را غير فعال ساخت. آدرس اين كنترلر 21h بوده و IRQ هاي 7-0 را كنترل مي كند IRQ1 همان وقفه مربوط به صفحه كليد مي باشد. پس با غير فعال كردن اين وقفه مي توان صفحه كليد را غير فعال نمود.
طريقه استفاده:
CS:0100 E421 IN AL,21
CS:0102 0C02 OR AL,02
CS:0104 E621 OUT 21,AL
ب: تغيير بردار وقفه ها
يكي از روش هاي ساده و راحت جهت ضد ديباگ كردن برنامه ها, تغيير برداري است, كه ديباگر از آن استفاده مي كند. (03 ) حتما بخاطر بسپاريد كه در پايان برنامه دوباره آدرس بردار وقفه تغيير داده شده را بازيابي كنيد.
طريقه استفاده:
CS:0100 EB04 JMP 0106
CS:0102 0000 ADD [BX+SI],AL
CS:0104 0000 ADD [BX+SI],AL
CS:0106 31C0 XOR AX,AX
CS:0108 8EC0 MOV ES,AX
CS:010A 268B1E0C00 MOV BX,ES:[000C]
CS:010F 891E0201 MOV [0102],BX
CS:0113 268B1E0E00 MOV BX,ES:[000E]
CS:0118 891E0401 MOV [0104],BX
CS:011C 26C7064C000000 MOV Word Ptr ES:[000C],0000
CS:0123 26C7064E000000 MOV Word Ptr ES:[000E],0000
ج:گيج كردن ديباگر
اين راه يكي از قويترين تكنيك هاي ضد ديباگ بوده كه در آن به وسط يك دستور, پرش مي شود و اينكار باعث قفل كردن ( Hang ) ديباگر خواهد شد.
طريقه استفاده:
CS:0100 E421 IN AL,21
CS:0102 B0FF MOV AL,FF
CS:0104 EB02 JMP 0108
CS:0106 C606E62100 MOV Byte Ptr [21E6],00
CS:010B CD20 INT 20
د: كنترل پرچم هاي CPU
اين روش در برابر ديباگرها بسيار مفيد مي باشد و به اين صورت است كه ابتدا پرچم Trace از CPU را خاموش كرده و در بين برنامه آنرا كنترل كنيم. در صورتيكه اين پرچم روشن شده باشد, مشخص است كه ديباگر در پشت صحنه در حال اجراست.
طريقه استفاده:
CS:0100 9C PUSHF
CS:0101 58 POP AX
CS:0102 25FFFE AND AX,FEFF
CS:0105 50 PUSH AX
CS:0106 9D POPF
و در بين برنامه از دستورات ذيل استفاده كنيد:
CS:1523 9C PUSHF
CS:1524 58 POP AX
CS:1525 250001 AND AX,0100
CS:1528 7402 JZ 152C
CS:152A CD20 INT 20
ه: متوقف ساختن ديباگر
اين روش باعث متوقف شدن ديباگر مي شود كه با اجراي دستور ساده INT 03 مي توان اين كار را انجام داد.
طريقه استفاده:
CS:0100 B96402 MOV CX,0264
CS:0103 BE1001 MOV SI,0110
CS:0106 AC LODSB
CS:0107 CC INT 3
CS:0108 98 CBW
CS:0109 01C3 ADD BX,AX
CS:010B E2F9 LOOP 0106
پيوست B- روش هاي كد كردن اطلاعات Data Coding Procedures
الف: افزودن يك عدد به كد هاي يك فايل
در اين روش جهت كد كردن يك فايل, ابتدا آنرا خوانده و سپس يك مقدار خاص, مثلا 20 را به مقدار هر بايت فايل اضافه مي كنيم. اين يكي از ساده ترين روش ها بوده و نسبتا كارايي خوبي نيز دارد. جهت خارج كردن فايل از حالت كد شده ( Decode ) نيز, كافيست مقدار فوق را از تمام بايت هاي فايل كم كنيم.
ب: XOR كردن كل فايل
در اين روش نيز پس از خواندن كل فايل, تمام بايت هاي آنرا با رشته كاراكتري يا عدد ثابت خاصي XOR كرده و سپس مقدار جديد را در فايل حاصل ضبط مي نمائيم. جهت خارج كردن فايل از حالت كد شده, دقيقا عمل فوق را انجام مي دهيم.
پيوست C- ليست برنامه قفل گذار Pascal Source To Learn
در زير ليست دو برنامه نمونه, كه شماره (1) جهت درست كردن ديسكت قفل و شماره (2) جهت تست آن طراحي شده, آورده شده است:
در اين برنامه ها از تراك 81 و سكتور 20 ( در حالت عادي هر ديسكت فقط 18 سكتور دارد ) جهت قفل برنامه استفاده شده و به اين صورت عمل مي كند كه يك رشته را از كاربر دريافت كرده و در مكان فوق قرار مي دهد و سپس جهت تست رشته دريافتي در برنامه دوم آنرا با اطلاعات موجود در ديسكت مقايسه مي كند و با دادن پيغام مناسبي آنرا چاپ مي نمايد.
اين برنامه توسط Turbo Pascal 7.0 كامپايل و اجرا شده اند.
{
برنامه شماره(1)
اين برنامه جهت ساختن ديسكت قفل استفاده مي شود
}
program PROGRAM-1;
Uses Dos;
TYPE
DAT = String[40];
VAR
C : Registers;
FP : String[15];
PU : Array[1..512] of char;
Data: Dat;
I : Byte;
Key : Dat;
{******************************************}
Procedure ZUW;
Begin
Fp:=#81+#0+#20+#2;
c.d1 :=0;
c.dh :=0;
c.ch:=81;
c.c1:=20;
c.a1:=1;
end;
Procedure Write-Key(data:Dat);
Begin
c.ah:=5;
ZUW;
c.es:=Seg(fp[1]);
c.bx:=Ofs(fp[1]);
Intr(19,c);
c.ah:=5;
ZUW;
c.es:=Seg(fp[1]);
c.bx:=Ofs(fp[1]);
Intr(19,c);
For i:=1 to Length(data) do
Pu:=data;
Pu[i+1]:=#0;
c.ah:=3;
ZUW;
c.es:=Seg(Pu);
C.bx:=Ofs(Pu);
Intr(19.c);
end;
{=======================================}
begin
Writeln;
Writeln( Program Number1 );
Writeln( This Program Used For Create The Key );
Write( Please Type Key Word : );
Readln(Key);
Writeln;
Write( Writing Key …);
Write-Key(Key);
Writeln( OK .);
Writeln;
end.
{
برنامه شماره (2)
اين برنامه جهت كنترل ديسكت قفل استفاده مي شود
}
program PROGRAM-2;
Uses Dos;
Type
DAT = String[40];
Var
C : Registers;
FP : String[15];
PU : Array[1 ..512] of char;
Data: Dat;
I : Byte;
Key : Dat;
{********************************************}
Procedure ZUW;
Begin
Fp:=#81+#0+#20+#2;
c.d1:=0;
c.dh:=0;
c.ch:=81;
c.c1:=20;
c.a1:=1;
end;
{********************************************}
Function Read-Key(Key:Dat):Boolean;
Begin
c.ah:=2;
ZUW;
c.es:=Seg(pu);
c.bx:=Ofs(pu);
Intr(19.c);
c.ah:=2;
ZUW;
c.es:=Seg(pu);
c.bx:=Ofs(pu);
Intr(19,c);
I:=1;
data:=;
While pu#0 do
begin
Data :=data+pu[];
Inc(I);
end;
If data=Key then
Read-Key:=True
Else
Read-Key:=False;
end;
{***********************************************}
begin
Writeln;
Writeln( Program Number2 );
Writeln( This Program Used For Check The Key );
Write( Please Type Key Word : );
Readln(Key);
Writeln;
If Read-Key(Key)=False then
Writeln( I am Sorry , Not Found .);
Else
Writeln( Very Good , That Found .);
Writeln;
end.
نويسنده : مهدي معاضدي
از سايت خبري فن آوري اطلاعات ايران
.:: قفل هاي سخت افزاري و نرم افزاري ::.
قفل در اصطلاح عاميانه كلامي آشناست و از آن براي حفاظت از اشيا مختلف استفاده مي شود.
اما مفهوم قفل در دنياي كامپيوتر و عالم نرم افزار، چيست ؟
امروزه براي جلوگيري از استفاده غيرمجازا ز برنامه ها ويا تكثيرغيرقانوني آنها، اصطلا حا به آنها قفل مي زنند.
اما اين قفل گذاري چگونه صورت مي گيرد ؟
قفل گذاري كلا به دو روش نرم افزاري و سخت افزاري انجام مي شود كه ذيلا به تشريح آن مي پردازيم.
قفل سخت افزاري ( Hardware lock ) چنانچه ازسخت افزارخاصي براي قفل گذاري استفاده شود، به آن قفل سخت افزاري مي گوييم. اين قفلها بعضي به صورت يك رابط، بر روي پورت پارالل سيستم نصب مي شوند كه البته هر دو نوع آن عملكرد مشابه دارند. بخش اصلي قفل، از يك حافظه قابل پاك شدن تشكيل شده كه با توجه به نوع و حجم آن، داراي عملكردي متفاوت مي باشد و عمدتا به يكي از دو روش زير عمل مي كند: الف) روش اول قفل گذاري به اين صورت است كه توليد كننده نرم افزار يك يا چند بايت از اطلاعات را در قفل نوشته و برنامه در هنگام اجرا آن را چك مي كند. در صورتيكه قفل وجود داشته باشد، برنامه به كار خود ادامه مي دهد و اگر قفل وجود نداشته باشد و يا اطلاعات خوانده شده از روي قفل صحيح نباشد، برنامه متوقف شده و با اعلام خطا، از اجراي صحيح، سرباز مي زند. اين نوع قفل ها داراي ساختاري ساده، حافظه اي در حد چند بايت، و قيمتي ارزان هستند. استفاده از اين قفل ها بسيار ساده بوده و نياز به تخصص خاصي ندارد،تنها كافيست كه نرم افزار ويژه قفل را ( كه توسط شركت توليد كننده قفل ارائه شده ) اجرا نمود. در ابتدا كه قفل فاقد اطلاعات است، اول يك كلمه دلخواه، به عنوان كلمه عبور درخواست كرده و سپس با توجه به نوع قفل، يك يا چند كلمه اطلاعات را دريافت و در حافظه قفل ثبت كنيد. در دفعات بعد مي بايست كلمه عبوري كه اولين بار ثبت شده، وارد شود تا بتوان به اطلاعات دروني قفل دسترسي داشت. البته بعد از ورود به برنامه اين كلمه قابل تغيير است. در هر صورت، پس از ثبت اطلاعات در قفل، توليد كننده نرم افزار، اطلاعات ثبت شده در يك برنلمه چك مي كند كه نحوه چك كردن اطلاعات، با توجه به نوع قفل متفاوت است. در بعضي فقط اطلاعات درون قفل چك مي شود و در بعضي ديگر، در مرحله اول وجود قفل چك شده و در مرحله بعدي، اطلاعات درون آن چك مي شود. ب) روش ديگر قفل گذاري به اين صورت است كه توليد كننده نرم افزار، بخش كوچكي از برنامه را در حافظه قفل قرار مي دهد كه در اين حالت، چنانچه قفل وجود نداشته باشد برنامه به هيچ وجه، قادر به اجرا و ادامه كار نخواهد بود. اين نوع قفل ها، داراي ساختاري كمي پيچيده، حافظه اي بعضا تا چند كيلو بايت، و قيمتي نسبتَََا گران هستند. استفاده از اين قفل ها، به سادگي نوع قبلي نيست. البته نحوه كلي كار مشابه روش قبلي است. با اجراي نرم افزار ويژه قفل و وارد نمودن كلمه عبور، بايد نام فايلي را كه مي خواهيم بر روي آن قفل بزنيم، مشخص كنيم، تا بخشي از آن در قفل ثبت گردد. البته در بعضي ديگر از اين نوع قفل ها، كه حفاظت بيشتري را انجام مي دهند، مي بايست توسط توليد كننده نرم افزار دقيقا كنترل شود كه چه بخش هايي از فايل بايد در قفل ثبت گردد كه ابته انجام اين كار نياز به تخصص و تجربه كافي دارد، چرا كه بعضا ممكن است كه خطا در انجام كار، باعث بروز اشكال در برنامه توليدي بشود. چون با اين كار در واقع بخشي از برنامه در قفل ثبت مي گردد، واضح است كه هر قفل فقط براي يك نسخه از برنامه مي تواند مورد استفاده قرار بگيرد و به همين علت كاربرد اين قفل، كمتر است. ضمنا نوع ديگري از قفل ها هستند كه هر دو روش فوق استفاده مي كنند، اما طرفدار چنداني ندارند. قفل نرم افزاري (Software Lock) چنانچه از روش ها و ترفند هاي نرم افزاري، براي قفل گذاري استفاده شود، به آن قفل نرم افزاري مي گوييم. قفل هاي نرم افزاري داراي تنوع بيشتري بوده و بعضا از لحاظ طراحي و اجرا سليقه اي و ابتكاري مي با شند. اما مي توان نحوه عملكرد اكثر آنها را، توسط يكي از 3 روش ذيل، تشريح نمود: الف) محدوديت در تعداد كپي(Copy Limited) در اين حالت برنامه نصب كننده نرم افزار، فضاي مشخصي در ديسك را با روش خاصي مرمت كرده، و تعداد مجاز نسخه برداري را در آن درج مي كند. بدين طريق با هر بار كپي كردن برنامه، يك واحد از اين عدد كم مي شود و هنگامي كه تعداد مجاز آن به صفر رسيد، ديگر نمي توان برنامه را بر روي سيستم نصب نمود. حال ممكن است اين سوال مطرح شود كه مگر نمي توان پس از نصب برنامه، از آن پشتيباني(Back Up) گرفته و سپس از نسخه پشتيبان نيز، بر روي سيستم ديگري استفاده نمود؟ پاسخ منفي است. زيرا هنگام نصب، اطلاعاتي راجع به سخت افزار سيستم كه مي تواند مثلا شامل نوع قطعات و يا شماره سريال قطعات باشد، در جايي، در محدوده قفل ذخيره مي شود و از اين پس هر بار در هنگام اجراي برنامه، اين اطلاعات به دقت چك مي شود و در صورت هرگونه تغيير، برنامه اجرا نمي شود. ب) استفاده از ديسكت، در هنگام اجراي برنامه (Disk Required) در اين حالت، ديسكت مورد نظر، يا به روش خاصي فرمت مي شود و سپس در هنگام اجرا، اطلاعات روي آن بررسي مي شود، و يا اينكه قسمتي از ديسكت را بصورت فيزيكي و عمدي خراب مي كنند و در اينجا، در واقع همان صدمه اي كه به عمد، بر سطح ديسكت وارد شده است، به عنوان قفل و محافظ نرم افزار عمل مي كند. از اين پس براي انتقال برنامه از يك سيستم به سيستم ديگر، اين فلاپي مانند قفل سخت افزاري عمل مي كند و مي بايست مختصات آن توسط برنامه تاييد شود و چنانچه اين فلاپي در درايو نباشد، برنامه اجرا نخواهد شد. قفل سي دي (اجرا از روي سي دي) با متداول شدن سي دي ويا لوح فشرده، روش جديدي در قفل گذاري ابداع شد و آن اجراي برنامه از روي سي دي است. در اين حالت برنامه هنگام اجرا، به سي دي رجوع كرده و نقاط خاصي از آن را چك مي كند. اين نقاط بخش هايي هستند كه به صورت فيزيكي علامت گذاري شده اند ودر واقع به نوعي صدمه ديده اند و معمولا اين خرابي با تابش اشعه ليزر انجام مي شود. به اين ترتيب به اصطلاح نقاط معيني از سي دي ليزرسوز مي شود. اين نقطه يا نقاط، به عنوان قفل سي دي عمل مي كند و از عمل تكثير يا كپي برداري و همچنين استفاده غير مجاز از آن جلوگيري به عمل مي آورد. در خاتمه سوالي كه در مورد سه روش فوق الذكر مطرح است، اين است كه آيا مي توان قبل از نصب، از ديسكت ها و سيدي هاي قفل گذاري شده كپي تهيه كرد و سپس آنها را نصب كرد؟ پاسخ منفي است، زيرا همانگونه كه اشاره شد، يا بخشي از ديسكت و يا تمامي ان، به روش خاصي فرمت مي شود كه قابل كپي برداري نيست و يا اينكه محل ونقاطي كه بر روي ديسكت و يا سي دي، به صورت فيزيكي و عمدي صدمه ديده اند، اجازه كپي برداري را نمي دهند و مانع از انجام اين كار مي شوند.
منبع خبر : سايت فن آوري اطلاعات ايران
خوب اين هم دو تا مقاله توپ ديگه كه از جاي ديگه اي آوردم . منتظر بقيه مقاله ها باشيد .
+++
خوب درباره قفل هاي سخت افزاري هم توضيح داديم . ديگه چي مي خواهيد .
+++
به اين جا هم سري بزنيد . درباره قفل اكتيو ايكس اين شركت
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
پست های پشت سر هم ادقام شد
لطفا به قوانین توجه کنید
میثم
مهدي جان از پستات ممنون
ولي ميتوني از ويرايش پست هم استفاده كني
البته اگه سليقت بگيره
ممنون از توجهت
سلام مهدي جان بهpmما هم جواب ندادي ها