دانلود مقاله طریقه استفاده از قفل نرم افزاری

Word 116 KB 18136 47
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۲۴,۰۰۰ تومان
قیمت: ۱۹,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • با توجه به فزونی نرم افزار در سیستم های کامپیوتری از یک طرف و توانایی کنترل کپی های غیرمجاز ( از دیدگاه اقتصادی آن ) از طرفی دیگر دلیلی محکم جهت بررسی این شاخه از مهندسی نرم افزار می باشد.


    از آنجا که متاسفانه قانون Copyright در تمام جهان بجز ایران و چند کشور دیگر اجرا می گردد, بحث کنترل کپی های غیرمجاز حساس تر می شود.

    در این مقاله سعی بر این است تا علاوه بر آشنایی با انواع قفل های نرم افزاری و اختلاف آن ها با قفل های سخت افزاری, بتوانیم به عنوان طراح یک قفل نرم افزاری از محصولات نرم افزاری خودمان حمایت کنیم.

    ضمنا علاوه بر آشنایی با مفاهیم فوق, نوشتن روتین های ضد دیباگ و همچنین نحوه کد کردن اطلات نیز لحاظ شده است.
    از آنجا که زمان زیادی تا سال 2000 باقی نمانده, اما هنوز در کشور ما ایران, نرم افزار جای خود را به عنوان یک محصول صادراتی پیدا نکرده چرا که یکی از دلایل اصلی آن عدم توجه جدی به حمایت از تولید کنندگان نرم افزار می باشد.

    به هر حال قصد اینجانب از ارائه مقاله, بررسی کم و کاستی های نرم افزار در ایران نیست بلکه طریقه حل مشکل موجود در این بازار نابسامان می باشد.

    با توجه به کپی های غیرمجازی که روزانه بصورت کاملا عادی و بدون اطلاع سازنده آن صورت می گیرد, جلوگیری از این عمل و کنترل جدی آن امری ضروری و واجب بنظر می رسد.



    آشنایی با قفل های نرم افزاری و سخت افزاری

    تعریف قفل های نرم افزاری: به هر برنامه ای که کنترل کپی آن فقط از طریق نرم افزار و بدون نیاز به سخت افزار اضافی قابل انجام باشد, گویند.


    تعریف قفل های سخت افزاری: به هر برنامه ای که کنترل کپی آن از طریق سخت افزار اضافی قابل انجام باشد, گویند.


    با توجه به تعاریف فوق می توان به تفاوت قفل های سخت افزاری و نرم افزاری پی برد.

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

    برنامه قبل از اجرا ابتدا با توجه به مراجعه به آدرس سخت افزار نصب شده ( اضافه شده با استفاده از دستور Port) به سخت افزار مورد نظر خود مراجعه کرده و در صورت یافتن آن, تست های مختلف اعم از تست رمز, خواندن اطلاعات و ...

    می تواند تصمیم گیری نماید.

    اما در قفل های نرم افزاری برنامه بدون نیاز به سخت افزار اضافی و با کنترل رسانه ذخیره سازی می تواند تصمیم گیری کند.

    ضمنا لازم به توضیح است که هدف از طراحی قفل های نرم افزاری/ سخت افزاری این نیست که هیچکس توانایی شکستن ( باز کردن ) آنرا ندارد بلکه مقصود بالا بردن سطح کنترل کپی های غیر مجاز تا حد ممکن می باشد.

    ( چرا که می دانیم اطلاعات همه در یک سطح نیست)

    طریقه استفاده از قفل نرم افزاری در برنامه مورد نظر

    با توجه به نوع کاربرد برنامه ( کوچک وقابل کپی بر روی یک دیسکت, تحت شبکه و ...

    ) می توانیم از انواع روش هایی که جهت حفاظت از نرم افزار در نظر داریم ( و متعاقبا توضیح داده خواهد شد ) استفاده کنیم.

    اما مساله قابل بحث این است که چگونه از یک قفل منتخب استفاده نمائیم؟


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


    در این حالت قفل نرم افزاری در ابتدای شروع به کار برنامه کنترل می گردد حتی طراح می تواند در مواقع حساس نیز قفل را مجددا کنترل کند و یا در حالتی که طراح واقعا سخت گیر باشد, می تواند در زمان های مشخصی از وجود قفل اطمینان حاصل نماید ( مثلا هر 4 ثانیه ).

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


    ب: اعتقاد طراح نرم افزار به این که کاربر می تواند از نرم افزار به عنوان نسخه نمایشی نیز استفاده کند.


    با توجه به نوع کاربرد برنامه ( کوچک وقابل کپی بر روی یک دیسکت, تحت شبکه و ...

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

    در این حالت قفل نرم افزاری در ابتدای شروع به کار برنامه کنترل می گردد حتی طراح می تواند در مواقع حساس نیز قفل را مجددا کنترل کند و یا در حالتی که طراح واقعا سخت گیر باشد, می تواند در زمان های مشخصی از وجود قفل اطمینان حاصل نماید ( مثلا هر 4 ثانیه ).

    ب: اعتقاد طراح نرم افزار به این که کاربر می تواند از نرم افزار به عنوان نسخه نمایشی نیز استفاده کند.

    طراح در این حالت می بایست در مکان های خاصی از برنامه, قفل را کنترل کند.

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

    مزیت این روش بر روش قبلی این است که دیگر نیاز به طراحی نسخه نمایشی جهت مشاهده کاربران وجود ندارد.

    آشنایی با نحوه قفل گذاری بر روی یک برنامه الف: طراح به سورس برنامه دسترسی دارد.

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

    ( که مکان های قرار دادن قفل در عنوان قبلی توضیح داده شد) .

    ب: طراح ( مجری پروژه ) به سورس برنامه دسترسی ندارد.

    گاهی اوقات به یکسری برنامه های ارزشمندی برخورد می کنیم که فاقد قفل هستند, بنابراین نیاز به قفل گذاری وجود دارد.

    ( البته این حالت بیشتر در کشور ما و چند کشور دیگر که در آن ها قانون Copyright معنی ندارد, کاربرد دارد.

    ) جهت تزریق قفل به این گونه برنامه ها, نیاز به آشنایی کامل به ساختار فایل های اجرایی (EXE, COM, SYS, …) وجود دارد چرا که باید برنامه ای طراحی کنیم تا همانند یک ویروس کامپیوتری به فایل اجرایی مشخصی بچسبد.

    البته جهت اینکار بهترین زبان برنامه نویسی, اسمبلی می باشد.

    ( بدلیل توانایی دخالت در روند اجرای برنامه ) البته در رابطه با نحوه نوشتن این گونه برنامه ها, روش های زیادی وجود دارد که خود بحثی مجزا را می طلبد و از حوصله این مقاله خارج است.

    ضمنا برای بالا بردن سطح امنیت برنامه لازم است تا یکسری کد های ضد دیباگ در برنامه گنجانده شوند.

    کدهای ضد دیباگ, دستوراتی به زبان اسمبلی هستند که در حالت اجرای عادی برنامه, هیچ تغییری در روند اجرای نمی گذارند بلکه در صورتی که برنامه توسط دیباگرها اجرا گردد ( مورد ارزیابی قرار گیرد ) بتواند از اجرای آن جلوگیری نماید.

    با اضافه کردن کد های ضد دیباگ به ابتدای برنامه ( یا قبل از کنترل قفل ) می توان احتمال قفل با استفاده از موقعیت فایل روی هارد دیسک این نوع قفل فقط بر روی هارد دیسک قابل استفاده بوده و به این صورت است که فایل اجرایی به موقعیت خود بر روی هارد حساس می باشد چرا که قبل از اجرا ابتدا موقعیت خود را از روی سکتورهای ROOT خوانده و سپس شماره کلاستر اشاره گر به خودش را بدست می آورد, سپس آنرا با شماره کلاستری که قبلا توسط برنامه نویس بر روی یکی از فایل های برنامه ( ممکن است بصورت کد شده باشد ) قرار داده شده, مقایسه کرده و در صورت برابر بودن اجرا می شود.

    این نوع قفل نسبت به قفل قبلی ( شماره 2 ) استفاده کمتری داشته چرا که در صورتیکه برنامه از روی بخشی از هارد به ناحیه دیگری انتقال یابد, اجرا نخواهد شد و این از نظر کاربر بسیار ناپسند می باشد.

    ( ضمنا امکان Defra, Scandisk, و ...

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

    دستکاری در برنامه را پائین آورد.

    ( نحوه نوشتن کد های ضد دیباگ در پیوست A آورده شده است) روش ساده دانشگاه پرینستون برای سرقت اطلاعات هارد دیسک هنگامی که تراشه‌ها را توسط یک توده هوا سرد می‌کنید، اطلاعات هم در جای خود منجمد می‌شوند و در نتیجه نمی‌توان به راحتی این رشته‌های بلند صفر و یک را از تراشه‌های کامپیوتری استخراج کرد.

    دانشمندان عنوان کرده‌اند که تراشه‌های حافظه استاندارد، اطلاعات را تا چند ثانیه یا حتی چند دقیقه پس از خاموش شدن دستگاه در خود نگه می‌دارند.

    یک گروه از محققان امنیت کامپیوتر دانشگاه پرینستون روش ساده‌ای ابداع کرده‌اند که به وسیله آن می‌توان اطلاعات رمزی ذخیره شده در هارد دیسک را به سرقت برد.

    در این روش که می‌تواندبحث نرم‌افزار‌های امنیتی را به چالش بکشد، فقط کافی است تراشه حافظه کامپیوتر را به وسیله توده‌ای از هوای سرد، منجمد کرد.

    نرم‌افزار‌های رمز‌نگاری به طور فراگیر توسط شرکت‌ها و نهاد‌های دولتی گوناگون مورد استفاده قرار می‌گیرند، ضمن آن که یکی دیگر از کابرد‌های عمده آنها در کامپیوتر‌های همراه یا همان لپ‌تاپ‌هاست و امکان سرقت آنها نیز بالاست.

    در این روش، از نفوذ‌پذیری محدود تراشه DRAM بهره گرفته می‌شود.

    این تراشه‌ها، اطلاعات را به طور موقت نگهداری می‌کنند که از جمله می‌توان به الگوریتم رمز‌گذاری پیشرفته اطلاعات اشاره کرد.

    هنگامی که کامپیوتر خاموش می‌شود و منبع برق از کار می‌افتد.

    اطلاعات گوناگون از جمله این الگوریتم ناپدید می‌شود.

    در یک یادداشت فنی که در توضیح این دستاورد جدید از طرف دانشگاه پرینستون منتشر شده است، دانشمندان عنوان کرده‌اند که تراشه‌های حافظه استاندارد، اطلاعات را تا چند ثانیه یا حتی چند دقیقه پس از خاموش شدن دستگاه در خود نگه می‌دارند.

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

    ادوارد فلتن (Edward Felten) یکی از دانشمندان کامپیوتری دانشگاه پرینستون می‌گوید: اگر تراشه‌ها را در نیتروژن مایع (دمای 196- درجه سانتیگراد) منجمد کنید، تراشه‌ها بدون منبع انرژی، ساعت‌ها در حالت اولیه خود به این شکل باقی می‌مانند.

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

    دانشمندان به این منظور و برای شناسایی موانع و کلید‌های امنیتی میان میلیارد‌ها اطلاعات کامپیوتری مختلف در تراشه‌های حافظه، نرم‌افزار الگو شناختی خاصی را مورد استفاده قرار دادند.

    فلتن در این باره می‌گوید: ما بر این باوریم که امنیت اطلاعات مردم امر مهمی تلقی می‌شود و باید روی این موضوع بیش‌تر از اینها کار کرد.

    این گروه تحقیقاتی دانشگاه پرینستون از پنج دانشجوی فارغ‌التحصیل کامپیوتر تشکیل شده که توسط فلتن رهبری می‌شوند.

    علاوه بر این، سه متخصص فنی هم با گروه فلتن به همکاری می‌پردازند.

    طبق اعلام این گروه، با روش یاد شده، اطلاعات کامپیوتر‌های دولتی مورد تهدید قرار می‌گیرد، چون جزییات چگونگی طبقه‌بندی این اطلاعات کاملا محرمانه است و در سطح عمومی اطلاعی از آنها در دست نیست.

    محققان همچنین عنوان کردند که این روش سرقت اطلاعات را روی سیستم‌های رمز‌گذاری امنیتی جدید که در برخی از دیسک‌های تجاری به کار گرفته می‌شود، امتحان نکرده‌اند.

    با وجود این، فلتن مدعی است که گروه تحقیقاتی‌اش می‌تواند ثابت کند که سیستم سخت‌افزاری " ما بر این باوریم که امنیت اطلاعات مردم امر مهمی تلقی می‌شود و باید روی این موضوع بیش‌تر از اینها کار کرد....

    " مطرح Trusted Computing هم که به عنوان فناوری پیشرو در افزایش ضریب امنیت کامپیوتر‌های خانگی مدرن از آن یاد می‌شود، در مقابل چنین حمله‌ای نا‌توان است.

    وی می‌افزاید: نتایج تحقیقات ما نشان می‌دهدکه نمی‌توان با قاطعیت درباره امنیت کامپیوتر و نفوذ‌ناپذیری سیستم‌های امنیتی صحبت کرد و همواره باید به این امر با شک و تردید نگریست.

    پیتر نیومن (Peter Neumann) یکی از محققان امنیتی شرکت SRI در کالیفرنیا می‌گوید: این هم یک نمونه دیگر، حاکی از آن که اوضاع همیشه به همان شکلی نیست که در ظاهر شاهد هستیم.

    دانشمندان دانشگاه پرینستون اعلام کردندکه می‌توانند به اطلاعات رمز‌گذاری شده‌ای که توسط برنامه‌های کاربردی مخصوص سیستم‌های عامل ویندوز، مکینتاش و لینوکس ذخیره شده است، نفوذ کنند.

    اپل از سال 2003 تاکنون در سیستم‌عامل OS X یک سیستم رمز‌گذاری به نام File Vault را به کار گرفته است و مایکروسافت هم از سیستم رمز‌نگاری BitLocker در ویندوز ویستا بهره می‌برد.

    این در حالی است که هر دو برنامه برای رمز‌گذاری اطلاعات در هنگام خواندن و رایت آنها، از الگوریتم «سیستم رمز‌گذاری پیشرفته» دولت فدرال ایالات متحده بهره‌ می‌برند و هر دو نیز کلید دسترسی به اطلاعات را خارج از قالب رمز‌نگاری در کامپیوتر باقی می‌گذارند.

    مت بلیز (Matt Blaze) استادیار علوم اطلاعات و


تحقیق دانش آموزی در مورد دانلود مقاله طریقه استفاده از قفل نرم افزاری , مقاله دانشجویی با موضوع دانلود مقاله طریقه استفاده از قفل نرم افزاری , پروژه دانشجویی درباره دانلود مقاله طریقه استفاده از قفل نرم افزاری

مقدمه طبق آمار سایت Global Videogame Market سهم 7 میلیون دلاری بازی های همراه از بازار 28 میلیارد دلاری بازی های رایانه در سال 2001 ( که تقریباً معادل 025/0درصد است) به سهم 6/3میلیارد دلاری از بازار 30 میلیارد دلاری بازی های رایانه ای در سال 2006 افزایش یافته است. یعنی تنها در عرض 6 سال این بازار رشدی 500 درصدی داشته است. ارقام وقتی حیرت آورتر می شود که پیش بینی کاربران بازی های ...

مقدمه 1 فصل اول در باره شرکت 4 بخش پشتیبانی 5 بخش مدیر فنی 5 قسمت سخت افزار 6 عملکرد شرکت 7 نیازمندی های مشتریان 9 انواع محصولات موجود در شرکت 12 انواع کیوسک ها 13 تجهیزات جانبی 14 کیوسک مدلs131 15 کیوسک مدلm100 16 کیوسک مدلm200 17 کیوسک مدلw100 18 کیوسک مدلw110 19 کیوسک مدلw120 20 کیوسک مدلw130 21 سیستم تلفن گویا 22 انوای سیستم های صف 23 سیستم صف سخت افزاری 23 سیستم صف نرم ...

حمل ونقل از جمله بخش های زیر بنایی اقتصاد هر کشور است لذا فرایند توسعه اقتصادی یک کشور را شدیداً تحت تاثیر قرار می دهد و از این رو شرایط وموقعیت این بخش یکی از شاخصهای مهم سطح توسعه محسوب می گرددودر واقع حمل ونقل نیروی محرک توسعه کشور می باشد . با توجه به نقش و اهمیت حمل ونقل د ربرنامه توسعه جایگاه این بخش از نقطه نظر سرمایه گذاری در برنامه های مختلف عمرانی از اهمیت خاصی ...

حافظه های ATMagUlb, AVR این بخش تفاوت میان حافظه های دو، ATmegulb را توصیف  می کند در ساختار AVR  دو فضای حافظه ای، فضای حافظه ای برنامه تولیست وفضای حافظه ای اولیه وجود دارد در مجموع ATMega16  یکEEPROM برای نگهداری اطلاعات حافظه ای دارد همه فضاهای این حافظه به صورت خطی ومنظم می باشد.   سیستم REprogrammabl  حافظه فلش در برنامه نویسی حافظه ATMega16  ...

1 ویروس چیست ؟ ویروس به برنامه های کوچک و مخربی گفته می شود که مخفیانه به کامپیوتر شما انتقال پیدا می یابد . نام ویروس به این علت روی این گونه از برنامه ها گذاشته شده است که عملکردی مشابه ویروس های بیولوژیک دارند . یک ویروس بیولوژیک از طرق مختلفی ممکن است وارد بدن انسان شود و ممکن است تا مدت زیادی به فعالیت مخفیانه در بدن بپردازد و پس از مدتی علائم وجود ویروس مشخص شود . یک ویروس ...

خط فارسی و رایانه نقل از فصلنامه نشر دانش زبان فارسی که زبان ملی ما و وسیله ارتباط میان ایرانیان و فارسی زبانان داخلی و خارج کشور است، به صورت فعلی خود بیش از هزار سال عمر و ادبیات مکتوب دارد. اما از بخت بلند ما ایرانیان، زبان ما در این مدت کمتر تحول بنیادی پیدا کرده است. هر چند، در نخستین قرن های تکوین زبان فارسی، در سطح واژگانی و نحوی تفاوت هایی میان متونی که در مناطق مختلف ...

کلمات کلیدی: جبران کننده ایستای توان راکتیو، SVC ، STATCOM، اینورتر چند سطحی. چکیده هدف، طراحی و ساخت یک جبران کننده ایستای توان راکتیو از نوع منبع ولتاژی و بصورت چند سطحی بوده‌است، یک اینورتر سه سطحی از نوع اینورترهای متوالی با توان نامی +3KVAR طراحی و ساخته شده‌است، و یک روش کنترلی بر اساس کنترل اختلاف فاز با استفاده از مدولاسیون برنامه‌ریزی و بهینه شده اجرا شده‌است. مدارات ...

رشد استفاده از رایانه در ایران و به کارگیری آن در فرایندهای مختلف آموزش،صنعت، نشر و پژوهش، مسائل حقوقی نوظهوری را در پی داشت. این مسائل ضرورتاً باید در دستگاه فقهی و حقوقی ایران تحلیل و قوانین مناسب با آن‏ها تصویب گردد. بررسی‏های نظری پژوهش‏گران فقه و حقوق، بستر سازی برای دست‏یابی به قوانین کارآمد است. این مقاله تلاش دارد براساس نیازهای روز و مسائل نوظهور، متون فقهی و آراء ...

تعریف شبکه : در این فصل برای درک دقیق و اساسی پروژه بهتر است تعریفی از شبکه کامپیوتری و نیازهای آن داشته باشیم و در فصول بعدی به جزئیات وارد می‌شویم. در تعریف شبکه کامپیوتری می‌توان گفت: یک شبکه کامپیوتری سیستم ارتباطی برای تبادل داده هاست که چندین کامپیوتر و دستگاه جانبی مثل چاپگرها، سیستم‌های ذخیره سازی انبوه، کتابخانه‌های CD-Rom، فکس و بسیاری از دستگاه‌های دیگر را به هم متصل ...

WinSpeedUp ابزارهایی را ارائه می دهد که میتواندبه حل مشکلاتی همچون خرابی Registry Editorبپردازد یا اینکه آیکن های راترکیب نماید.در صورتی که راه حلی برای این مشکلات نداشته باشید، همین مسائل کوچک و پیش پا افتاده میتوانند موجب رنجش خاطر شما شوند.قبل از آن که کار با برنامه WinSpeedUp را آغاز کنید، از شما پرسیده می شود که آیا کاربر مبتدی هستید یا حرفها ی. اگر کاربر مبتدی باشید،برخی ...

ثبت سفارش