بررسی امنیت وحریم خصوصی در RFID
سعیده منفرد
واحد پژوهش - کارخانجات مخابراتی ایران
خلاصه :
دراین مقاله آخرین تحقیقات فنی انجام شده در زمینه امنیت وحریم شخصی برای RFID بررسی می گردد.
تگ RFID کوچک ، وسیله ای بی سیم است که برای شناسایی افراد و اشیا به کار می رود .تگ های RFID در فروشگاههای زنجیره ای برای پیگیری کالاها ، برای پیگیری دارایی های شخصی و حتی در بدن انسان وجود دارند.
کلمات کلیدی : شناسایی[1] ، جعل کردن[2]، کد محصول الکترونیکی[3] ، حریم شخصی[4]، شناسایی فرکانس رادیویی[5]، امنیت[6] .
[1] Authentication
[2] Counterfeiting
[3] EPC ( Electronic Product Code )
[4] Privacy
[5] RFID ( Radio Frequency Identification)
[6] Security
RFID یک تکنولوژی برای اتوماتیک کردن شناسایی اشیا واشخاص است ومی توان آنرا تکامل بارکدهای نوری که برروی محصولات درون بازار می بینیم دانست با این تفاوت که اطلاعات دقیقترو بیشتری ازمحصول را بدون نیاز به قرارگرفتن مستقیم در برابر دستگاه خواننده[1] اطلاعات در اختیار ما قرار می دهد .
RFID Device یا همان تگ [2] RFID ، یک میکروچیپ کوچک است که برای انتقال داده های بی سیم طراحی گردیده است ومعمولا به همراه یک آنتن دریک مجموعه ارائه می گردد. خود میکروچیپ می تواند به کوچکی یک دانه شن یعنی حدود 0.4 mm2 باشد. یک تگ RFID داده هارا از طریق هوا درجواب یک درخواست از سمت RFID Reader ارسال می نماید .البته تگ های ارزان وکوچک غالبا Passive هستند که قادر به کار کردن در باندهای فرکانسی مختلفی هستند و به انواع LF[3] ،HF [4]و [5]UHF تقسیم می گردند . تگ های دیگری چون Semi-Active و Active نیز وجوددارد.
نمونه اصلی شبیه بارکدRFID وسیله ای است که با نام "تگ EPC "[6]نیز شناخته می شود وسازمانی بانام EPCglobal بر توسعه استانداردهای این تگ ها نظارت می کند . تگ EPC اطلاعاتی در حافظه همراه خود داردویک ایندکس منحصر به فرد با نام EPC Code دارد که علی رغم اطلاعاتی که یک بارکد دارد مشخص کننده یک رکورد برای تگ در دیتابیس است که قطعا محدودیتی برای نگهداری اطلاعات برای هر تگ ندارد. EPCglobal یک سیستم جستجوی عمومی برای تگ های EPC با نام [7]ONS توسعه داده که وظیفه آن اینست که درخواست عمومی برای اطلاعات یک تگ رابا هدایت آن به دیتابیس صاحب آن ، پاسخ دهد .
دو مساله برای کاربران RFID دراین زمینه مهم است عبارتند از :
§ [8] Clandestine Tracking
§ Inventorying [9]
تگ RFID درپی درخواست اطلاعات RFID Reader بدون مطلع کردن صاحب خود اطلاعات درونش راارسال می کند. که تاجایی که بازه خواندن اجازه می دهد اسکن غیرقانونی تگ ها تهدیدی قابل درنظر گرفتن است وهر تگ درپی هر درخواست Reader یک شناسه منحصر به فرد ارسال می کند که حتی اگر شماره سریال تگ تصادفی و حاوی اطلاعات حیاتی نباشد بازهم زمینه Clandestine Tracking را فراهم می کند چه برسد به زمانی که این شماره با اطلاعات شخصی افراد ترکیب شده باشد مثلا شماره کارت اعتباری . که معمولا یک تگ علاوه برشماره سریال منحصر به فرد اطلاعاتی درمورد چیزی که به آن متصل شده رادر بردارد مثلا کد سازنده [10]،کدمحصول [11] ، که باعث می شود طی یک Clandestine Tracking سایرین متوجه کالاهایی که شما درسبد خرید خود دارید، یا دچار چه بیماریهایی هستید وغیره شوند.
این موضوع بیشتربه تشخیص تگ های جعلی از تگ های اصلی توسط Reader ها بر می گرددوعلت بررسی این مساله امکان وجود چند تگ یکسان، زیرا اسکن وکپی کردن تجربه وهزینه کمی می خواهد، که فقط یکی واقعی وصحیح است می باشد. EPC یک رشته بیتی قابل کپی است و تگ های EPC ابتدایی هیچ مکانیزم کنترل دسترسی ندارند .و در بازار تگ هایEPC قابل برنامه ریزی یا دستگاههای شبیه ساز RFID وجود دارد که تگ های RFID را برای فریب RFID Reader ها شبیه سازی می کنند .درحال حاضر طرح هایی جهت پیشگیری از جعل شدن تگ ها درجریان است مثلا امضای دیجیتال که مانع جعل داده ها می گردد ولی مانع کپی آنها نمی گردد اما خود منحصر به فرد بودن شماره گذاری اشیا خود مانع کپی آنها می گردد یعنی اگر دو وسیله با شماره سریال یکسان باشد به معنای وجود یک مشکل است و خود RFID درشناسایی منبع جعل موثر است .
بااین حال سناریوهایی هستند که جعل کردن تگ های RFID درآنها ممکن است .تشخیص تکراری بودن داده ها منوط به داشتن داده ها به صورت یکپارچه ومرکزی است و وجایی که مکانیزم های ضدجعل فیزیکی ویا دیجیتال وجود نداشته باشد این مساله بسیار مهم می شود.
بعضی وسیله های RFID مثل American Express ExpressPay ویاMastercard PayPass credit card و تگ های فعال RFID با عملیات رمزنگاری مانع کپی نگاری این کارت ها شده اند . اما این مکانیزم برای حملات مشخص کاربرد دارد حال اگر کارتی به سرقت رفت چه طور؟ درست است که RFID از سرقت اشیا از فروشگاههای بزرگ جلوگیری می کند اما خارج ازآن محیط چطور؟
مبحث دیگر ی که در مورد شناسایی [12] مطرح است شناسایی فاصله است .درمورد تگ های با بورد کم مثل کارت های اعتباری چون دقیقا باید نزدیک یک Reader قراربگیرد لذا متوجه می شویم از کجا اطلاعات تگ برداشت می گردد ولی اگر این فاصله زیاد شود کار شناسایی سخت می گردد.
درتگ های عادی کمبود منابع برای عملیات رمزنگاری وجود دارد واگر بخواهیم این امنیت رابرقرار کنیم قیمت این تگ ها دو برابر می گردد که اکثر شرکت هانوع ارزانتر آن را ترجیح می دهند .
برای برقراری Privacy موارد زیر قابل پیشنهاد است :
دراین روش هنگامی که یک تگ EPC دستورKill را ازیک Reader دریافت می کندکشتن تگ اتفاق می افتد وبرای کنترل دستورهای Kill غیرمجاز این دستور با یک PIN Code محافظت می گردد پس Reader هم یک تگ وهم یک پین کد 32 بیتی را ارسال می کند . کشتن یک وسیله کنترل Privacy قوی محسوب می گردد چراکه تگ مرده هیچ اطلاعاتی راارسال نمی کند می توان ازاین کاربرد درفروشگاه زنجیره ای استفاده کردو به محض خروج از فروشگاه تگ همه کالاهای خریداری شده کشته شوند تا امنیت وحریم خصوصی مشتری تامین شود .
البته تگ های قابل جداشدن هم راهکار مناسبی به نظر می رسد یعنی تگ RFID را به همراه تگ قیمت قرار
گیرد تابه محض خروج از فروشگاه آن را از کالاجدا کنیم و حریم خصوصی مشتری حفظ گردد .هرچنداین روش حریم شخصی را به خوبی حفظ میکند ولی همه مزایای پس از خرید را ازمشتری سلب می کند مثلاخدمات به افراد سالخورده ، ارسال جوایز، خدمات پس از فروش و... ضمنا در بعضی موارد تگ ها نباید کشته شوند مثل تگ های روی کتابهای امانت گرفته شده از کتابخانه یا کالاهای کرایه ای و یا هرچیزی که باید تاآخر عمرش قابل تعقیب باشد به همین دلیل باید تغییراتی درسیستم کشتن تگ بدهیم .
راه کار دیگر اینست که به جای کشتن یک تگ آنرا به خواب بفرستیم و فقط مواقعی خاص آنهارافعال کنیم البته این کاربااینکه ساده به نظر می رسد مدیریت آن درعمل بسیار مشکل است . ضمنا اگر هر Reader قادربه بیدارکردن یک تگ باشد دیگر امنیت و حریم خصوصی درکار نخواهد بود! بنابراین فرم هایی از کنترل دسترسی درسیستم بیدارکردن تگ ها لحاظ می گردد مثلا دریافت PIN Code خاص . اما مشکل چنین سیستمی مشکل مدیریت تگ هاست که برای مصرف کننده ایجاد می گردد . PIN را می توان به صورت چاپی برروی کالا درج کرد تا کاربر با داشتن کلید یا دستگاه نوری آنرا ببیند .یاآنرا ازطریق پست الکترونیک یااینترنت دریافت کند .با توجه به مشکلاتی که مشتریان درمدیریت کلمات عبور فعلی خود دارند ومدیریت PIN ها ی هرRFID دردسر جدیدی محسوب می گردد .
بیدار یا خواب کردن فیزیکی مثلابا لمس مستقیم قسمتی از تگ نیز راه حل دیگری است که برای حل این مشکل پیشنهاد می گردد.
شناسه ای که بوسیله تگ ساتع می شود به خودی خود مفهوم وارزشی ندارد ولی Tracking را فعال می کند .پس کدکردن شناسه ها هم تاثیری دراین مورد ندارد وبه دلیل استاتیک بودن مثل هرشماره سریال دیگری قادر به Track شدن است .
§ ایده SWE [16] پاک کردن شناسه یکتای تگ درپایانه فروش برای حل مشکل Tracking ولی حفظ همان بارکد سابق برروی کالا برای استفاده های بعدی است .
§ پیشنهاد IY [17] [2] تجهیز کالاهابه تگ Relable با شناسه جدید که کد قدیمی برای فعال کردن مجدد برای استفاده های عمومی مجدد مثل بازیافت باقی می ماند . ومعمولا با تاییدی فیزیکی فعال می گردند .
§ کدکردن حداقل(Minimalist Cryptography) :
دراین سسیستم به جای اینکه یک Reader تگ را Lable گذاری مجددکندخود تگ حاوی تعدادی اسم مستعاراست که درهردرخواست هر Reader یکی از آنهارا برمی گرداند پس Reader مجاز کل اسامی مستعارتگ رادریافت ودرنتیجه آن راشناسایی می کند ولی یک Reader غیرمجاز که از قبل لیست کامل همه اسامی مستعار تگ راندارد نمی تواند اعلام حضورهای مختلف یک تگ بااسامی مختلف را به هم ارتباط دهد .ضمنا یک Reader مجاز قادر به ایجاد تغییر درلیست اسامی مستعار خواهد بود .
§ کدکردن مجدد(Re-Encryption) : JP [18][3] اشکال سیستم امنیتی اسکناس های دارای RFID رابررسی کرد.هر اسکناس یک کلید عمومی (PK) ویک کلید اختصاصی ( SK) که توسط یک موسسه قانونی نگهداری می شدرادربرداشت . دراین روش یک تگ RFID حاوی یک شناسه منحصر به فرد به معنی S که همان شماره سریال اسکناس است می باشدکه S تحت یک PK به متن رمزی C تبدیل می شود تگ RFID این C راساتع
می کند . وفقط آن موسسه مجازبه عنوان مالک کلید اختصاصی PK قادربه رمز گشایی C ودرنتیجه شماره سریالS راازآن استخراج کند.اما JP برای حل تهدیدTracking، پیشنهاد کردکه کد رمزشده C دوباره رمز شود.آنها با سیستمی مواجه شدند که بانکها و مغازه برنامه Reader رمزنگارمجدد با PK دارند و خاصیت جبری سیستم رمزنگاری Elgamal اجازه می دهد که متن رمزشدهC به وسیله PK به تنهایی و بدون هرگونه تغییر درS به C ' تبدیل شود . برای جلوگیری از رمزنگاری ناخواسته توسط افراد غیرمجاز، JP پیشنهاد کرد یک کلید باحق دسترسی نوری که یک Reader باید این کلید رااسکن نماید (پاسپورت های مجهز به RFID هم از رمز نگاری نوری مشابه ای استفاده می کنند)
§ رمزنگاری مجدد جهانی :
سیستم JP با یک جفت کلیدجهانی (PK,SK ) کارمی کند درحالی که یک جفت کلید ممکن است برا ی یک سیستم پولی به کار رود ، یک سیستم کلی RFID قطعا به چندین جفت کلید نیازدارد درواقع توسعه JP به چندین جفت کلید ، (PK1,SK1 ) ، (PK2,SK2 )، ....، (PKn,SKn ) ، هرچند حریم خصوصی راازبین می برد. برای رمزنگاری مجدد متن رمزشده C،لازم است بدانیم توسط کدامیک از PKi رمز شده است ، اطلاعاتی که بالقوه به حریم خصوصی حساس هستند .
Golle et al [1] این محدودیت درJP رابا پیشنهادیک سیستم رمزنگاری که رمزنگاری مجددمتن رمزشده بدون دانستن کلید عمومی منطبق برآن برطرف کرد.سیستم آنهاکه رمزنگاری جهانی نامیده می شود درگیرتوسعه سیستم رمزنگاری Gamal است و اندازه متن رمزشده رادوبرابر می کند .
سیستم Golle et al دارای محدودیتهای امنیتی جدی است : یکپارچگی سیستم را حفظ نمی کند. به جای رمزنگاری مجدد، یک رقیب می تواند یک کد رمز شده کاملا جدید را جانشین آن کند.
درزمینه حریم شخصی بازه Read فاکتور مهمی محسوب می گردد .فرکانس های مختلف به معنای بازه های Read متفاوت است که البته عامل هایی چون طراحی سخت افزاری وپروتکل ، مواد بازتاب دهنده امواج رادیویی و.. این بازه را تحت تاثیر قرار می دهند .
§ Nominal Read Rang :
حداکثربازه ای که به طور معمول یکReader با آنتن معمولی و قدرت خروجی به طور معمول می تواند یک تگ داده را اسکن کند.
§
§ Tag-To-Reader eavesdropping range
محدوده که اگرPassive RFID به یک تگ نیرو بدهد Reader دیگر بدون این کارقادر به خواندن آنست که این بازه از Rogue Scanning Rangeطولانی تر است .
§ Reader-To-Tag eavesdropping range
دربعضی از پروتکل های RFID یک Reader اطلاعات خاص تگ را به آن منتقل میکند و به دلیل اینکه Reader باقدرت بیشتری نسبت به تگ کار می کند تا بازه بیشتری قادربه استفاده غیرقانونی ازآنها هستند(حتی تا کیلومترها).
دربعضی موارد بازه Detection یعنی بازه ای که رقبا قادر به تشخیص حضورتگ هستند رابه جای بازه Read مهم می دانند .که این مساله درامورنظامی رکن مهمی به شمار می رود .
اهمیت حریم خصوصی در مبحث RFID خصوصا درامور نظامی مارابه این نکته رهنمون می سازد که حریم خصوصی فقط درمورد مشتریان مطرح نمی باشد. به عنوان مثال RFID در فروشگاههای زنجیره برای کارخانجات تولید کننده جالب است واز دیدی دیگر برای رقبا نیز داشتن چنین آماری جالب است .مثلا برای تجهیزات نظامی باRFID می توان فهمید نیروی دشمن به کدام سمت درحال حرکت است یا یک شرکت به کمک RFID از میزان اجناس فروخته نشده مطلع می شود که همین حجم برگشت کالا برای رقبا نیزمی تواند جالب نوجه باشد.
دراین روش هر تگ یک بیت با نام Privacy Bit دارد که درصورت تنظیم آن به عدد صفر به این معناست که عمومی دردسترس است و یک بودن آن به این معناست که آن تگ شخصی است و فقط Reader های درون محدوده Privacy Zone می توانند این تگ را بخوانند .
مثال : برای این که نحوه کارکرد این سیستم را متوجه شوید یک سوپر مارکت رادرنظر بگیرید که برروی همه کالاهایش تگی با بیت Privacy که به صفر تنظیم شده الصاق کرده است .زمانی که یک مشتری کالایی راخریداری می کند پس ازپرداخت این بیت به عدد یک تنظیم می گردد و تگ را به privacy zone می برد (این عمل مثل کشتن است و ممکن است مشابه آن PIN protected باشد ).دراین حالت درزمان لزوم می توان تگ رافعال نمود!
اما چگونه یک blocker مانع خوانده شدن وباعث محافظت یک تگ می گردد .BLOCKER از پروتکلی [19]Anti collision ای که RFID Reader برای ارتباط باتگ استفاده می کند بهره می برد . به این پروتکل Sinqulation می گویند . Sinqulation ، RFID reader ها را برای اسکن همزمان چندین تگ فعال می کند . برای اطمینان از اینکه سیگنالهای تگ های مختلف درحین اسکن شدن با یکدیگر تداخل پیدا نمی کنند Reader ابتدامعلوم می کند چه تگ هایی فعال هستند سپس به هرتگ یک آدرس منحصر به فرد تخصیص می دهد . هرچند قیمت طراحی یک تگ Blocker به ارزانی یک تگ معمولی است امااز ارائه جزئیات بیشتر صرفنظر می کنیم .
§ Soft Blocking
JB[20] این روش راابداع کردند که درآن Reader ها فقط قادربه خواندن تگ هایی با تگ Privacy یک نیستند وبدلیل کنترل Reader هایی که ازاین قوانین پیروی نمی کنند باید دستگاهی جهت اسکن Reader ها غیرمجازکه واردPrivate zone می شوند طراحی کرد.
همانطور که قبلا بحث شد تگ ها به سادگی قابل جعل شدن هستند .راه حل هایی دراین رابطه پیش نهاد گردیده به عنوان مثال روشی که توسط Yet plans are afoot برای حل این مشکل پیشنهاد گردید امضای دیجتالی تگ ها بود تا یکپارچگی تامین گردد که این روش مانع کپی داده ها نمی گردید ولی مانع جعل آنها می گردید که خود نحصر به فرد بودن شناسه تگ ها این مشکل را نیز حل نمود بدون اینکه نیازی به Authentication باشد.
Juels [4] روشی را پیشنهاد کرد که درآن ازتابع Kill تگ هابرای مقابله با جعل استفاده می گردید به طور کلی یک تگ توسط PIN Code ارسالی Reader به مجاز بودن دستور کشته شدن پی می برد .ازاین تکنیک هم می توان برعکس استفاده نمود یعنی Reader تگ مجازرااز روی PIN Code تشخیص دهد .یک پروتکل ابتدایی در [4] co-opts بحث شده که قادر به تمیز دادن یک تگ با PIN Code مجاز ویا جعلی از یکدیگر است .
در [5], Juels پروتکلی به نام yoking راپیشنهاد کرده که cryptographic proof رافراهم می کند که دو تگ که همزمان اسکن می کند وتگ هایی که به صورت فیزیکی اسکن و به تگی دیگری کپی شده اندرا تشخیص می دهد .
تگ های Symetric-Key کلاسی از تگ های RFID با مقداری قابلیت Security هستند که به محاسبه توابع Symetric-Key(یک روش رمزنگاری) می باشند . دراین بحث این تگ ها بررسی نمی شوند اما برای آشنایی یکی ازروشهای بررسی امنیت Cloning است که مراحلی که دراین روش صرفنظر از ماPrivacy طی می شود به فرم زیر هستند :
§ یک تگ خودش رابایک Ti به Reader معرفی می کند.
§ Reader یک رشته بیتی تصادفی R ، که معمولا به آن Nonceمی گویند ، تولید می کند و آنرا به تگ ارسال می کند.
§ تگ H را ازفرمول h(ki, R) محاسبه و آنرا ارسال میکند .
§ Reader تایید می کند که H=h(ki, R) است .
مشکل Privacy برای RFID Symetric-Key-Enabled مشکل مدیریت کلیدهاست .
دراین مقاله مشکلاتی راکه تگ های RFID درزمینه امنیت وحریم خصوصی بوجود می آورند مورد بررسی قرارداده وراه حل هایی را برای این مشکلات مطرح کردیم که البته هریک ازآنها بامرتفع کردن بعضی از مشکلات به وجود آورنده مسائل دیگری هستند لذا نمی توان هیچ یک رابه عنوان روش کاملی برای حل این مسایل دانست .
منابع
[1] P. Golle, M. Jakobsson, A. Juels, and P. Syverson, “Universal re-encryption for mixnets,” in Proc. RSA Conf.—Cryptographers’ Track (CTRSA),T. Okamoto, Ed., 2004, vol. 2964, Lecture Notes in Computer Science,pp. 163–178.
ONLINE ADDRESS : Http://www.syverson.org/univrenc-ctrsa.pdf
[2] S. Inoue and H. Yasuura, “RFID privacy using user-controllable uniqueness,”in Proc. RFID Privacy Workshop, Nov. 2003.
ONLINE ADDRESS: Http://interval.hu-berlin.de/downloads/rfid/prevention/inoue03rfid.pdf
[3] A. Juels and R. Pappu, “Squealing Euros: Privacy protection in RFID-enabled banknotes,” in Proc. Financial Cryptography, R.Wright, Ed.
Computer Science, pp. 103–121.
ONLINE ADDRESS: Http://www.eicar.org/taskforces/rfid/infomaterial/PrivProtecRFID_banknotes.pdf
[4] , “Strengthing EPC tags against cloning,” in Proc. ACM Workshop on Wireless Security, 2005, to be published.
ONLINE ADDRESS:
[5] , “‘Yoking-proofs’ for RFID tags,” in Proc. Workshop on Pervasive Comput. Commun. Security—PerSec, R. Sandhu and R. Thomas, Eds., 2004, pp. 138–143.
ONLINE ADDRESS:
[1] Reader
[2] Tag
[3] بازه فرکانسی آن 124-135 Khz
[4] بازه فرکانسی آن 13.56 Mhz (حدودا 1متر)
[5] بازه فرکانسی آن 890-960 Mhz(حدودا 10متر)
[6] این سازمان ترکیبی از سازمانهای سابق UCC و EAN که مسئول توسعه بارکد درآمریکا وسراسر دنیابودند می باشد.
[7] Object Name Service
[8] پیگردی مخفی وغیرقانونی
[9] لیست برداری
[10] General Manager
[11] SKU(Stock Keeping Unit)
[12] Authentication
[13] حریم شخصی
[14] خواب کردن
[15] کشتن
[16] Sarama , Weis and Engels
[17] Inoue and Yasuura
[18] Juels and Pappu
[19] ضدبرخورد
[20] Juels and Brainard