در علم کامپیوتر، اثر انگشت به فرایند ایجاد شناسههای منحصربهفرد برای همه نوع دادهی دیجیتال اشاره دارد. اما وقتی از تکنیکهای خاصی برای شناسایی کاربران یا ماشینها استفاده میشود، ما به آن، اثر انگشت مرورگر یا دستگاه میگوییم.
این فرایند اصولاً شامل جمعآوری اطلاعات یک تلفن هوشمند، کامپیوتر یا دستگاههای دیگر است. گاهاً حتی در صورت پنهان بودن آدرس IP کاربر یا در صورت تغییر از یک مرورگر به مرورگر دیگر نیز میتوان به این فرایند رسید.
سالهاست که سرویسهای تحلیل وب با هدف اندازهگیری ترافیک قانونی وب و شناسایی تقلبهای احتمالی، به جمعآوری دستگاهها و اطلاعات مرورگرها مبادرت میورزد. امروزه روشهای پیشرفتهتر، امکان جمعآوری پارامترهای خاص را فراهم کردهاند. روشهای پیشین انگشتنگاری عمدتاً بر روی کامپیوتر متمرکز بود. اما روشهای مدرن الان میتواند تقریباً هر نوع دستگاهی را شناسایی کند و علاقهی روزافزونی به محیط در حال رشد و گسترش تلفن همراه وجود دارد.
دستگاه اثر انگشت شامل جمعآوری مجموعهای از دادههاست که با هم ترکیب شده و از طریق عملکرد هش ارسال میشوند. خروجی آن (مقدار هش)، بهعنوان یک شناسهی منحصربهفرد برای هر دستگاه (یا کاربر) عمل میکند.
اطلاعات جمعآوری شده غالباً در یک پایگاه داده ذخیره میشود و نه خود دستگاه. در حالیکه یک نقطهی دادهی واحد تاحدی عمومی است، ترکیب چند مجموعهی داده میتواند منحصربهفرد باشد.اثر انگشت دستگاه میتواند شامل دو روش فعال و غیرفعال باشد. هدف هر دو روش، جمعآوری اطلاعات دستگاه است. بنابراین، حتی اگر هزاران کامپیوتر از یک سیستمعامل استفاده کنند، هر کدام از آنها احتمالاً دارای ترکیب منحصربهفرد نرمافزار، سختافزار، مرورگر، پلاگینها، زبان، منطقهی زمانی و تنظیمات عمومی هستند.
همانطور که از نامش پیداست، روشهای غیرفعال، بدون پرسش از کاربر (یا سیستم راه دور)، اطلاعات را بهشکلی کمتر مشخص و واضح جمعآوری میکند. دادهها براساس آنچه توسط هر دستگاه ارسال شده جمعآوری میشود. بنابراین، اثر انگشت غیرفعال معمولاً اطلاعات کمتر خاصتری را فراهم میکند (برای مثال، سیستم عامل).
برای نمونه، میتوان تکنیک اثر انگشت غیرفعالی ایجاد کرد که اطلاعات مربوط به یک درایور بیسیم را در دستگاههای شبکهای همچون مودم اینترنت جمعآوری کند. تعامل غیرفعال را میتوان بدون نیاز به انجام هیچ اقدامی از سوی دستگاهها، در انواع گوناگون درایورها جستجو کرد. بهزبان ساده، دستگاههای گوناگون از روشهای گوناگونی برای بررسی ارتباطات احتمالی (نقاط دسترسی) استفاده میکنند. این تفاوت در روشها ممکن است توسط مهاجم استفاده شود تا بهدرستی فهمیده شود که کدام درایور توسط دستگاه هدف استفاده میشود.
از طرف دیگر، اثر انگشت فعال به ارتباط فعال شبکهای وابسته است که باعث میشود آنها در سمت مشتری، بیشتر قابلشناسایی باشند. برخی وبسایتها کُد JavaScript را بهعنوان روش جمعآوری اطلاعات در مورد دستگاهها و مرورگرهای کاربر اجرا میکنند. این ممکن است شامل اندازهی پنجره، فونتها، پلاگینها، تنظیمات زبان، منطقهی زمانی و حتی جزئیات مربوط به سختافزار آنها باشد.
یک نمونهی برجسته از یک تکنیک فعال، اثر انگشت بوم (Canvas Fingerprinting) است که هم در کامپیوتر و هم در دستگاههای تلفن همراه استفاده میشود و غالباً به اسکریپتی متکی است که با بوم (عنصر گرافیکی) یک صفحهی وب HTML5 در تعامل است. این اسکریپت به بوم دستور میدهد تا یک تصویر پنهان روی صفحه بکشد و سپس اطلاعات نشان داده شده در تصویر همچون رزولوشن صفحه، فونتها و رنگهای پسزمینه را ثبت میکند.
روشهای اثر انگشت دستگاه، روشی را در اختیار تبلیغکنندگان قرار میدهد تا رفتار مصرفکننده را در چندین مرورگر ردیابی کند. این روشها همچنین به بانکها اجازه میدهد تا تشخیص دهند که آیا درخواستی از یک دستگاه قابلاعتماد وارد شده یا از سیستمی که قبلاً با فعالیتهای مجرمانه در ارتباط بوده.
جدا از این، اثر انگشت دستگاه به وبسایتها کمک میکند تا از ثبت چندین حساب یا یک موتور جستجو برای دستگاههایی که رفتار مشکوک از خود نشان میدهند، جلوگیری کنند. هنگام شناسایی و جلوگیری از سرقت هویت یا جعل کارت اعتباری، اثر انگشت دستگاه میتواند مفید باشد. با این حال، این تکنیکها، حریم خصوصی کاربر را تهدید میکند و بسته به شکل اجرا، جمعآوری دادهها میتواند غیرقابلشناسایی باشد- خصوصاً در اثر انگشت غیرفعال.
در اثر انگشت فعال، جمعآوری دادهها به دسترس بودن زبانهای اسکریپتی همچون JavaScript وابسته است. دستگاههای تلفن همراه و کاربرانی که نرمافزار یا پلاگینهای حریم خصوصی را اجرا میکنند، احتمالاً دارای محدودیت دسترسی به اسکریپت هستند و این مسئله، شناسایی آنها را دشوار میسازد. این شامل استفاده از Extensions مرورگری میشود که ردیابها و تبلیغات را مسدود میسازد.
در برخی موقعیتها، شناسایی کاربران متمرکز بر حریم خصوصی آسانتر است. برای مثال، وقتی کاربران از نرمافزارها و پلاگینهای نهچندان معروف همراه با تنظیمات خاصی استفاده میکنند که آنها را حتی بیشتر متمایز میسازد.
کارایی روش اثر انگشت ممکن است بواسطهی تغییرات زیادی از سمت مشتری محدود شود. کاربرانی که پیوسته تنظیمات خود را تغییر میدهند یا از چند سیستم عامل مجازی استفاده میکنند، ممکن است مشکلاتی در فرایند جمعآوری اطلاعات ایجاد کنند.
استفاده از مرورگرهای گوناگون ممکن است در فرایند جمعآوری اطلاعات ناسازگاریهایی ایجاد کند، اما از تکنیکهای مُدرن و بین مرورگری اثر انگشت میتوان برای جلوگیری از چنین محدودیتهایی استفاده کرد.
روشهای گوناگونی برای اجرا و استفاده از تکنیک اثر انگشت دستگاه وجود دارد. بنابراین، کارایی جمعآوری دادهها و شناسایی یک منبع واحد ممکن است بهشکل قابلتوجهی از یک روش به روش دیگر متفاوت باشد.
اثر انگشت دستگاه میتواند بهتنهایی یا در ترکیب با روشهای دیگر، ابزار موثر و مفیدی برای ردیابی رفتار و شناسایی کاربران باشد. در نتیجه، از این تکنیک قدرتمند میتوان هم برای فعالیتهای مشروع و هم برای فعالیتهای شبههدار استفاده کرد. بنابراین، آگاه شدن از مکانیسمهای پایه، قطعاً نقطهی شروع خوبی است.