احراز هویت با اثر انگشت روشی برای شناسایی بیومتریک است که از الگوی منحصربهفرد پاپیلاری روی نوک انگشتان برای تأیید هویت کاربر استفاده میکند. این فناوری به استاندارد امنیتی برای دستگاههای موبایل تبدیل شده است: از گوشیهای هوشمند اندرویدی ارزانقیمت تا مدلهای پرچمدار سامسونگ و گوگل پیکسل. طبق گزارش Counterpoint Research (2025)، بیش از 85٪ از گوشیهای هوشمند عرضهشده در سال 2025 به اسکنر اثر انگشت داخلی مجهز هستند.
نکات اصلی
احراز هویت با اثر انگشت روشی برای شناسایی بیومتریک است که الگوی منحصربهفرد پاپیلاری روی سطح انگشت را برای تأیید هویت کاربر تحلیل میکند. هر فرد دارای الگوی فردی از برجستگیها و فرورفتگیها است که در هفته ۱۲ رشد جنینی شکل میگیرد و به جز آسیبهای فیزیکی، در طول زندگی بدون تغییر میماند.
اثر انگشت یکی از سه نوع ویژگی بیومتریک است که به همراه عنبیه چشم و الگوی شبکیه به عنوان قابلاعتمادترینها برای شناسایی خودکار شناخته میشود. خطوط پاپیلاری ویژگیهای مشخصهای به نام مینوشیا را تشکیل میدهند: انتهاها، انشعابها، نقاط و تقاطعها. منحصربهفرد بودن اثر انگشت با موقعیت و نوع ۴۰–۱۰۰ مینوشیا در سطح اسکن تعیین میشود که احتمال ریاضی تطابق را برای دو فرد مختلف ۱ به ۶۴ میلیارد میکند.
اولین سیستمهای خودکار شناسایی اثر انگشت (AFIS) در دهه ۱۹۷۰ برای سازمانهای اجرای قانون ظهور کردند. استقرار گسترده در دستگاههای مصرفی از سال ۲۰۱۳ با iPhone 5S و Touch ID آغاز شد. امروزه اسکنرهای اثر انگشت در گوشیهای هوشمند، لپتاپها، تبلتها، قفلهای در و پایانههای پرداخت نصب میشوند.
صرفنظر از نوع حسگر، فرآیند احراز هویت با اثر انگشت از سه مرحله تشکیل شده است: ضبط تصویر، پردازش و استخراج ویژگیها، مقایسه با الگوی مرجع. هر مرحله بسته به پیادهسازی میتواند هم در سطح سیستمعامل و هم در سطح Trusted Execution Environment اجرا شود.
حسگر الگوی فیزیکی انگشت را ثبت میکند. ماتریسهای خازنی اختلاف پتانسیل الکتریکی بین برجستگیها (که ماتریس را لمس میکنند) و فرورفتگیها (که لمس نمیکنند) را میخوانند. اسکنرهای نوری انگشت را با نورپردازی LED روشن میکنند و نور بازتابیده را از طریق حسگر CMOS ثبت میکنند. حسگرهای فراصوت یک موج صوتی منتشر میکنند و اکوی بازتابیده از اعماق مختلف پوست را تحلیل میکنند — این یک تصویر سهبعدی مقاوم در برابر آلودگیهای سطح انگشت ایجاد میکند.
تصویر ضبطشده فیلتر میشود: حذف نویز، نرمالسازی کنتراست و باینریسازی (تبدیل به سیاه و سفید). الگوریتم برجستگیهای خطوط پاپیلاری را جدا میکند، اسکلتبندی میکند (تا عرض ۱ پیکسل نازک میکند) و مینوشیاها — نقاط انتها و انشعاب خطوط را پیدا میکند. هر مینوشیا با مختصات (x, y)، زاویه جهت و نوع توصیف میشود. الگوی ریاضی با اندازه ۲–۱۰ کیلوبایت حاوی تصویر اصلی نیست و امکان بازسازی اثر انگشت را نمیدهد.
الگوی بهدستآمده در اسکن با الگوی مرجع ذخیرهشده در هنگام ثبتنام مقایسه میشود. الگوریتم تعداد مینوشیاهای منطبق را محاسبه میکند. برای تأیید موفقیتآمیز، تطابق حداقل ۱۲–۱۵ مینوشیا لازم است (توسط تولیدکننده تنظیم میشود). اگر تعداد نقاط منطبق از آستانه فراتر رود، احراز هویت موفق تلقی میشود. در دستگاههای موبایل، آستانه به گونهای تنظیم میشود که FAR از ۰.۰۰۱٪ تجاوز نکند در حالی که FRR حدود ۲٪ است.
در دستگاههای موبایل مدرن از سه نوع اصلی اسکنر اثر انگشت استفاده میشود که از نظر فناوری خواندن، دقت و هزینه تولید متفاوت هستند. انتخاب نوع به بخش قیمتی دستگاه و الزامات امنیتی بستگی دارد.
| نوع اسکنر | اصل کار | FAR | نمونه دستگاهها |
|---|---|---|---|
| خازنی | ماتریس خازنها که اختلاف ظرفیت بین برجستگیها و فرورفتگیها را میخواند | ۰.۰۰۱٪ | iPhone (Touch ID), Samsung Galaxy S9, Google Pixel 3 |
| نوری | نورپردازی LED + حسگر CMOS; ضبط نور بازتابیده از سطح انگشت | ۰.۰۱٪ | Xiaomi Redmi, Realme, گوشیهای هوشمند اندرویدی ارزانقیمت |
| فراصوت | فرستنده پیزوالکتریک + گیرنده; بازسازی سهبعدی با سیگنال اکو | ۰.۰۰۰۵٪ | Samsung Galaxy S10+, Galaxy S21 Ultra, اسکنرهای زیرصفحهای |
در سالهای ۲۰۲۵–۲۰۲۶، اسکنرهای زیرصفحهای (in-display) که مستقیماً در زیر صفحه OLED تعبیه شدهاند، محبوبیت پیدا میکنند. آنها میتوانند هم نوری (بخش ارزانقیمت) و هم فراصوت (بخش پریمیوم) باشند. مزیت — عدم وجود دکمه یا ناحیه جداگانه روی بدنه که امکان نمایشگر بدون حاشیه را فراهم میکند. نقطه ضعف اسکنرهای نوری زیرصفحهای — آسیبپذیری در برابر نور شدید خورشید که ماتریس CMOS را از طریق پیکسلهای صفحه روشن میکند.
احراز هویت با اثر انگشت و تشخیص چهره دو فناوری بیومتریک غالب در دستگاههای موبایل هستند. هر کدام نقاط قوت و ضعفی دارند که در سناریوهای خاص استفاده بر انتخاب تأثیر میگذارد.
برای توسعهدهنده برنامههای موبایل مهم است که BiometricPrompt در اندروید و LocalAuthentication در iOS نوع حسگر را انتزاع میکنند. با این حال، در دستگاههای قدیمی اندروید (API < 28) ممکن است فقط FingerprintManager در دسترس باشد — در این صورت برنامه باید به صراحت نوع حسگر را بررسی کرده و روش احراز هویت جایگزین ارائه دهد.
قبل از اندروید ۹ (API 28) تنها راه ادغام اسکنر اثر انگشت کلاس FingerprintManager بود که در API 23 اضافه شد. از اندروید ۹ به بعد، گوگل استفاده از BiometricPrompt را توصیه میکند که کار با همه انواع حسگرهای بیومتریک را یکپارچه میکند. با این حال، برای دستگاههای با API 23–27، توسعهدهنده همچنان ممکن است به FingerprintManager نیاز داشته باشد.
class FingerprintAuthHelper(
private val context: Context
) {
private val manager =
context.getSystemService(Context.FINGERPRINT_SERVICE)
as FingerprintManager?
fun isFingerprintAvailable(): Boolean {
return manager?.isHardwareDetected() == true
&& manager?.hasEnrolledFingerprints() == true
}
fun authenticate(callback: FingerprintManager.AuthenticationCallback) {
if (isFingerprintAvailable()) {
manager?.authenticate(
null,
CancellationSignal(),
0,
callback,
null
)
}
}
}
// استفاده:
val helper = FingerprintAuthHelper(context)
helper.authenticate(object : FingerprintManager.AuthenticationCallback() {
override fun onAuthenticationSucceeded(
result: FingerprintManager.AuthenticationResult
) {
// اثر انگشت شناسایی شد — دسترسی مجاز است
binding.showContent()
}
override fun onAuthenticationFailed() {
binding.showError("اثر انگشت شناسایی نشد")
}
})
کد ارائهشده چرخه کامل احراز هویت را از طریق FingerprintManager برای دستگاههای قدیمی اندروید نشان میدهد. توجه به این نکته مهم است که FingerprintManager به طور پیشفرض از TEE استفاده نمیکند — نتیجه احراز هویت به فضای کاربر بازگردانده میشود که آن را از BiometricPrompt با پرچم BIOMETRIC_STRONG کمامنیتتر میکند. برای پروژههای جدید باید همیشه از BiometricPrompt استفاده کرد و FingerprintManager فقط برای سازگاری معکوس با API 23–27 است.
در مهاجرت از FingerprintManager به BiometricPrompt باید تغییر مدل امنیتی را در نظر گرفت: BiometricPrompt اجرای تمام عملیات بیومتریک را در TEE (Trusted Execution Environment) تضمین میکند. نتیجه احراز هویت که با کلید رمزنگاری داخل TEE امضا شده است، از کد کاربر قابل جعل نیست. کتابخانه AndroidX Biometric همچنین رابط BiometricPrompt.AuthenticationResult.getCryptoObject() را برای پیوند احراز هویت بیومتریک با عملیات رمزنگاری — رمزگذاری کلیدها و امضای دادهها فراهم میکند.
محافظت در برابر جعل اثر انگشت یکی از وظایف کلیدی تولیدکنندگان اسکنر است. حسگرهای مدرن از ترکیبی از روشهای سختافزاری و الگوریتمی برای تشخیص انگشت زنده (liveness detection) و مسدود کردن ماکتها استفاده میکنند. هر روش محدودیتهای خود را دارد، اما در مجموع جعل را برای حملات انبوه از نظر اقتصادی بیصرفه میکنند.
روشهای اصلی محافظت شامل: تحلیل عمق پوست (اسکنرهای فراصوت ضخامت اپیدرم را با زمان بازگشت سیگنال اکو تعیین میکنند)، تحلیل طیفی پوست (اسکنرهای نوری ضریب بازتاب پوست را در طولموجهای مختلف ارزیابی میکنند — سیلیکون و ژلاتین طیف متفاوتی دارند)، تشخیص ضربان (ارتعاشات میکروسکوپی جریان خون در مویرگهای انگشت) و بررسی پتانسیومتری (پوست زنده امپدانس الکتریکی مشخصی دارد که از مواد مصنوعی متفاوت است).
استاندارد ISO/IEC 30107-3:2023 سطوح مقاومت سیستمهای بیومتریک در برابر حملات ارائه (presentation attack detection, PAD) را تعریف میکند. برای برنامههای مالی سطح ۲ (PAD Level 2) توصیه میشود که نیاز به تشخیص خودکار حداقل ۹۵٪ از حملات با استفاده از ماکتها با FAR بیش از ۰.۰۱٪ ندارد. اسکنرهای فراصوت سامسونگ و Qualcomm 3D Sonic Sensor الزامات PAD Level 2 را برآورده میکنند، در حالی که اسکنرهای نوری ارزانقیمت معمولاً گواهینامه بالاتر از Level 1 را دریافت نمیکنند.
سوالات متداول
اسکنر خازنی اثر انگشت را با اختلاف پتانسیل الکتریکی بین برجستگیها و فرورفتگیهای پوست میخواند — فقط با انگشت خشک و تمیز کار میکند. اسکنر فراصوت یک موج صوتی منتشر کرده و نقشه سهبعدی بر اساس اکوی بازتابیده میسازد — از آلودگیها، آب و حتی دستکشهای نازک عبور میکند و دقت بالاتری ارائه میدهد.
اسکنرهای فراصوت به دلیل اسکن سهبعدی و FAR ۰.۰۰۰۵٪ قابلاعتمادترین محسوب میشوند. آنها در برابر انگشتان خیس، ماکتهای سیلیکونی و آلودگیها مقاوم هستند. اسکنرهای خازنی دقت کمتری دارند (FAR ۰.۰۰۱٪) اما سریعتر و ارزانتر هستند. اسکنرهای نوری کمترین قابلیت اعتماد را دارند (FAR تا ۰.۰۱٪) و میتوان با چاپ باکیفیت اثر انگشت روی فیلم شفاف فریب داد.
بله، اما با محدودیتها. مقررات PSD2 و PCI DSS احراز هویت چندعاملی را الزامی میکنند: اثر انگشت تنها یک عامل است (آنچه هستید). برای مجوز پرداخت به عامل دوم نیز نیاز است — کد PIN یا رمز یکبارمصرف (آنچه میدانید). در Apple Pay از اثر انگشت برای امضای تراکنش از طریق Secure Enclave استفاده میشود — این الزامات احراز هویت قوی مشتری (SCA) را برآورده میکند.
در صورت بریدگی، سوختگی یا پوستهپوسته شدن پوست، اثر انگشت ممکن است به طور موقت تشخیص داده نشود. در این حالت دستگاه کد PIN یا رمز عبور را به عنوان روش احراز هویت پشتیبان درخواست میکند. پس از بهبودی پوست، توصیه میشود اثر قدیمی را در تنظیمات حذف کرده و اثر جدیدی ثبت کنید. در دستگاههای اندرویدی میتوان چند انگشت را برای پشتیبان ثبت کرد.
بله — دستگاههای مدرن تصویر اثر انگشت را ذخیره نمیکنند، بلکه الگوی ریاضی را در ناحیه مجزای سختافزاری (TEE یا Secure Enclave) ذخیره میکنند. الگو با کلید تعبیهشده در تراشه رمزگذاری شده و از سیستمعامل یا برنامهها قابل خواندن نیست. در اندروید ۹+ BiometricPrompt اجرای تمام عملیات بیومتریک را در TEE با امضای رمزنگاری نتیجه تضمین میکند.
خلاصه
ما یک اپلیکیشن موبایل به صورت کلید در دست توسعه خواهیم داد
IT Sectr از سال 2017 برنامههای iOS و Android را برای استارتاپها و کسبوکارها ایجاد میکند. ما به شما مشاوره میدهیم و بهترین راهحل را پیشنهاد خواهیم کرد.
همچنین بخوانید