دانگل محافظ نرمافزاری (که معمولاً به عنوان دانگل یا قفل سختافزاری شناخته میشود) یک دستگاه محفاظت الکترونیکی از رونوشت و محافظت از محتوا است. هنگامی که به رایانه یا سایر وسایل الکترونیکی متصل میشوند، قفل عملکرد نرم افزار را آزاد میکنند یا محتوا را رمزگشایی میکنند. قفل سخت افزاری با یک کلید محصول (لایسنس) یا سایر مکانیسمهای حفاظتی رمزنگاری برنامهریزی شدهاست و از طریق یک اتصال الکتریکی به گذرگاه خارجی رایانه یا دستگاه کار میکند.
در حفاظت از نرم افزار، دانگلها توکنهای امنیتی دو رابط با جریان داده هستند. اطلاعاتی که نرم افزارها از از دانگل میخواند با آنها اجازه فعالیت میدهد. در غیاب این دانگلها، نرم افزار خاصی ممکن است فقط در حالت محدود اجرا شود یا اصلاً اجرا نشود. علاوه بر محافظت نرمافزاری، دانگلها میتوانند عملکردهایی را در دستگاههای الکترونیکی، مانند دریافت و پردازش جریانهای ویدیویی رمزگذاریشده در دستگاههای تلویزیون، فعال کنند.
فرهنگ لغت Merriam-Webster بیان میکند که "اولین استفاده شناخته شده از دانگل " در سال ۱۹۸۱ بود و ریشهشناسی آن "شاید تغییر کلمه (dangle) به معنی آویزان" باشد.[۱]
دانگلها به سرعت به دستگاههای فعالی تبدیل شدند که حاوی یک فرستنده گیرنده سریال (UART) و حتی یک ریزپردازنده برای انجام تراکنشها با سختافزار میزبان بودند. نسخههای بعدی از رابط USB استفاده کردند که باعث تغییر رابط آنها از موازی به رابط سریال تبدیل شد.
یک تبلیغ در سال ۱۹۹۲ برای Rainbow Technologies ادعا کرد که کلمه دانگل از نام "Don Gall" گرفته شدهاست. اگرچه این موضوع نادرست است، اما باعث ایجاد یک افسانه محلی شدهاست.[۲]
تلاشها برای معرفی محافظت از کپی دانگل در بازار نرمافزار اصلی با مقاومت شدید کاربران روبرو شدهاست. چنین محافظت از کپی معمولاً با بستههای بسیار گرانقیمت و نرمافزارهایی مانند نرمافزار CAD / CAM، نرمافزار رفع اشکال فلاشر تلفن همراه/JTAG، نرمافزارهای بیمارستانی و خردهفروشی ویژه سیستمهای MICROS، برنامههای محیط کاری صوتی دیجیتال و برخی نرم افزارهای ترجمه استفاده میشود.
در مواردی مانند نرم افزار طراحی چاپ و چاپ، دانگل با یک کلید مجوز خاص برای هر کاربر کدگذاری میشود که ویژگیهای خاصی را در برنامه هدف فعال میکند. این نوعی دانگل استفاده از نرم افزار را به صورت به شدت کنترل شده به کاربر میدهد که به فروشنده این امکان را میدهد تا به راحتی دسترسی کاربر را قطع کند و هزینه بیشتری نسبت به محصول دریافت کند. یک مثال برای ایم مورد روشی است که کداک مجوز استفاده از نرم آزار پرینرجی را به کاربران میدهد: هنگامی که یک دستگاه خروجی کامپیوتر به صفحه به مشتری فروخته میشود، هزینه مجوز خود پرینرجی بهطور جداگانه به مشتری ارائه میشود و قیمت پایه شامل کمی بیشتر از مجوزهای لازم برای استفاده از دستگاه است.
دانگلهای USB نیز بخش بزرگی از سیستمهای تولید و ویرایش صوتی اشتاینبرگ هستند، مانند Cubase , WaveLab, Hypersonic, HALion و غیره. دانگلی که در محصولات اشتاینبرگاستفاده میشود به نام کلید استینبرگ نیز شناخته میشود. کلید اشتاینبرگ را میتوان بهطور جداگانه از برنامههای مرتبط خود خریداری کرد و بهطور کلی با برنامه "Syncrosoft License Control Center" همراه است که با سیستم عامل مک او اس و ویندوز سازگار است.
برخی از توسعه دهندگان نرم افزار از درایوهای فلش USB سنتی به عنوان دانگل مجوز نرم افزاری استفاده میکنند که حاوی شماره سریال سخت افزاری در ارتباط با مشخصههای شناسه دستگاه مورد استفاده است، که معمولاً توسط کاربر نهایی به راحتی قابل تغییر نیستند. یک توسعه دهنده همچنین میتواند از دانگل برای ذخیره تنظیمات کاربر یا حتی نسخه کامل «قابل حمل» برنامه استفاده کند. همه درایوهای فلش برای این استفاده مناسب نیستند، زیرا تمامی این درایوها قابلیت ذخیرهسازی شماره سریال منحصر به فرد دستگاه را ندارند.
اگرچه چنین سیستم امنیتی ممکن است یک هکر معمولی را منصرف کند، فقدان هسته پردازشگر در دانگل برای احراز هویت دادهها، انجام رمزگذاری/رمزگشایی و اجرای کد باینری غیرقابل دسترس توسط کاربر، چنین دانگلی را برای استفاده برای اکثر نرم افزارها به جز نرم افزارهای ارزان قیمت نامناسب میکند. یک گزینه سادهتر و حتی کمایمنتر، استفاده از فضای ذخیرهسازی پارتیشن نشده یا تخصیص نشده در دانگل برای ذخیره دادههای مجوز است. درایوهای فلش USB معمولی در مقایسه با دستگاههای دانگل امنیتی اختصاصی نسبتاً ارزان هستند، اما خواندن و ذخیره دادهها در فلش مموری به راحتی قابل رهگیری، تغییر و دور زدن است.
نقاط ضعف احتمالی در اجرای اتصال بین دانگل و نرم افزار کنترل شده با لایسنس وجود دارد. به عنوان مثال، یک پیادهسازی ساده ممکن است تابعی را برای بررسی اتصال دانگل تعریف کند و بر این اساس «درست» یا «نادرست» را برگرداند، اما نیاز دانگل را میتوان به راحتی با تغییر نرم افزار به گونه ای که همیشه «درست» پاسخ دهد، دور زد.
دانگلهای مدرن شامل رمزگذاری قوی داخلی هستند و از تکنیکهای تولید اختصاصی استفاده میکنند که برای خنثی کردن مهندسی معکوس طراحی شدهاند. دانگلهای معمولی هماکنون حاوی حافظه غیر فرار هستند بخشهای ضروری نرمافزار ممکن است در واقع روی دانگل ذخیره و اجرا شوند؛ بنابراین دانگلها تبدیل به رمزپردازندههای امنی شدهاند که دستورالعملهای برنامهای را اجرا میکنند که ممکن است فقط به شکل رمزگذاریشده اجرا شوند. اولین رمزپردازنده ایمن اصلی برای محافظت از کپی نرم افزار رایانه شخصی طراحی شدهاست (ثبت اختراع ایالات متحده ۴٬۱۶۸٬۳۹۶، ۱۸ سپتامبر 1979)[۳] تا امنیت بیشتری نسبت به دانگلها فراهم کند.
شبیهسازی سختافزار، که در آن دانگل توسط یک درایور نرک افزاری شبیهسازی میشود، همچنین تهدیدی برای دانگلهای سنتی است. برای خنثی کردن این امر، برخی از فروشندگان دانگل از محصول کارت هوشمند استفاده کردند که بهطور گسترده در محیطهای امنیتی بسیار سخت مانند نظامی و بانکی در محصولات دانگل خود استفاده میشود.
یک دانگل مدرن با تکنولوژی به روز تر با فرایند انتقال کد طراحی میشود که بخشهای رمزگذاری شده کد برنامه کاربر را به یک محیط سخت افزاری امن (مانند سیستم عامل کارت هوشمند، که در بالا ذکر شد) منتقل میکند. یک ISV میتواند هزاران خط کد برنامه رایانهای مهم را به دانگل منتقل کند.
علاوه بر این، دانگلها مورد انتقاد قرار گرفتهاند، زیرا از آنجایی که سختافزار هستند، به راحتی گم میشوند و مستعد آسیب هستند و بهطور بالقوه هزینههای عملیاتی مانند هزینه دستگاه و هزینه تحویل را افزایش میدهند.
برخی از بازیهای بدون مجوز برای کنسولهای بازی (مانند Super 3D Noah's Ark یا Little Red Hood) از دانگلها برای اتصال به کارتریجهای رام دارای مجوز رسمی استفاده میکردند تا تراشه احراز هویت تعبیهشده در کنسول را دور بزنند.
برخی از دستگاههای کد تقلب، مانند GameShark و Action Replay از دانگل استفاده میکنند. معمولاً به اسلات کارت حافظه سیستم متصل میشود و در صورت شناسایی نشدن دانگل، نرمافزار مبتنی بر دیسک از کار کردن خودداری میکند. دانگل همچنین برای نگهداری تنظیمات و ذخیره کدهای جدید که توسط کاربر یا از طریق بهروزرسانیهای رسمی اضافه شدهاند، استفاده میشود، زیرا دیسک فقط خواندنی نمیتواند آنها را ذخیره کند. برخی از دانگلها را نیز مانند کارتهای حافظه معمولی استفاده کرد.
[[رده:اجازهنامههای نرمافزار]] [[رده:حفاظت در برابر کپی]] [[رده:سختافزار اختصاصی]] [[رده:صفحههای با ترجمه بازبینینشده]] [[رده:مدیریت حقوق دیجیتال]] [[رده:نقض قوانین حق تکثیر نرمافزار]] [[رده:ورز]]