رمز یکبار مصرف OCRA و احراز هویت در سامانههای بانکی
سجاد زارعی، شرکت رهسا
3 دقیقه مطالعه | 21 شهریور 1403
فهرست مطالب
رمز یکبار مصرف OCRA که بر پایه الگوریتم احراز هویت باز (OATH) بنا شده، یکی از معتبرترین روشهای احراز هویت چندعاملی (MFA) محسوب میشود. این سیستم با افزایش سطح امنیت، به کاربران این امکان را میدهد که هویت خود را بهطور مؤثرتر تأیید کرده و از خطرات احتمالی در فضای آنلاین جلوگیری کنند.
در مطالبی که درباره رمز یکبار مصرف (OTP) در پایگاه دانش وبسایت شرکت رهسا ارائه شده است، انواع OTP شامل TOTP و HOTP بهطور کامل توضیح داده شدهاند. حالا وقت آن رسیده که توضیحات تکمیلی درباره الگوریتم رمز یکبار مصرف OCRA ارائه شود. این الگوریتم به عنوان یک روش معتبر در احراز هویت چندعاملی (MFA) شناخته میشود.
الگوریتم OCRA مبتنی بر روش چالش-پاسخ است و یکی از قویترین روشهای احراز هویت چندعاملی (MFA) به شمار میآید. این الگوریتم به عنوان یکی از ایمنترین راهها برای تولید رمز عبور یکبار مصرف (OTP) شناخته میشود. با استفاده از OCRA، کاربران میتوانند با اطمینان بیشتری هویت خود را تأیید کنند و از حفاظت بهتری در برابر تهدیدات آنلاین برخوردار شوند.
توکن رمز یکبار مصرف OTP کاربرد وسیعی در صنعت بانکداری کشور دارد. در حال حاضر بسیاری از مشتریان بانکها برای ورود به سامانه بانکداری دیجیتال از رمز یکبار مصرف OCRA استفاده میکنند. رمز یکبار مصرف OTP بانک رفاه، کشاورزی، صادرات، تجارت و دی از جمله این موارد هستند. رمز یکبار مصرف OTP بانک پارسیان و رمز یکبار مصرف OTP بانک ملت نیز به صورتهای نرمافزاری و پیامکی قابل ارائه هستند.
در این مقاله، قصد داریم به بررسی ساختار و نحوه عملکرد رمز یکبار مصرف OCRA بپردازیم و ویژگیهای منحصربهفرد آن را نسبت به فنآوریهای قدیمیتر تولید رمز یکبار مصرف مانند TOTP و HOTP معرفی کنیم. هدف ما آشنایی بیشتر شما با این الگوریتم و کمک به انتخاب آگاهانهتر در کاربردهای بانکداری دیجیتال است. با شناخت این تفاوتها، شما میتوانید بهترین گزینه را برای تأمین امنیت حسابهای خود انتخاب کنید.
رمز یکبار مصرف OCRA چیست؟
علت امنیت بالای الگوریتم OCRA، این است که در فرآیند تولید رمز یکبار مصرف، علاوه بر کلید مخفی (seed) یا هسته و عامل محرک (شمارنده یا زمان)، از عامل دیگری به نام چالش-پاسخ نیز استفاده میشود. افزودن عنصر چالش-پاسخ به ساختار احراز هویت، لایهای مضاعف از امنیت را فراهم میآورد و از حملات احتمالی جلوگیری میکند. شکل زیر ساختار تولید رمز یکبار مصرف OCRA را بهخوبی نشان میدهد.
نحوه عملکرد رمز یکبار مصرف OCRA و تفاوت آن با TOTP و HOTP
تفاوت اصلی الگوریتم احراز هویت چالش-پاسخ (OCRA) با الگوریتمهای TOTP و HOTP در شناسایی سرور است. به این ترتیب، کاربر میتواند از صحت و اعتمادپذیری سرور مطمئن شود، این امر بهطور قابل توجهی امنیت احراز هویت را افزایش میدهد. توکنهای OCRA معمولاً به صورت یک دستگاه کوچک با صفحهکلید یا بهصورت برنامه نرمافزاری ارائه میشوند. این توکنها به کاربران این امکان را میدهند که رمز عبور یکبار مصرف را بهراحتی تولید و استفاده کنند.
شکل زیر، دستگاه رمزساز بومی درسا 300 محصول شرکت ره آورد سامانههای امن را به تصویر کشیده است. این دستگاه، بهعنوان یک ابزار مؤثر در پیادهسازی احراز هویت چندعاملی، میتواند به بهبود امنیت حسابهای کاربری کمک کند.
بسیاری از بانکها در کشور، از جمله بانک دی، بانک صادرات و بانک تجارت از دستگاه رمزساز بومی درسا 300 برای تأمین امنیت حسابهای کاربران خود استفاده میکنند. این دستگاهها با استفاده از الگوریتمهای پیشرفته احراز هویت چندعاملی، امنیت معاملات و اطلاعات کاربران را بهطور قابل توجهی افزایش داده و از حملات مختلفی نظیر سرقت هویت و جعل اطلاعات جلوگیری میکنند. استفاده از این فناوری، به کاربران این امکان را میدهد تا با آرامش بیشتری از خدمات بانکی آنلاین بهرهبرداری کنند.
روند چالش-پاسخ در الگوریتم OCRA
برای اینکه مفهوم چالش-پاسخ برای شما روشن شود، به مثال زیر توجه کنید:
- ابتدا پایگاه وب یا برنامهای که کاربر سعی دارد وارد آن شود، یک کد ارائه میکند (این کد در واقع چالش است)
- کاربر باید این کد را در دستگاه توکن خود وارد نماید
- پس از این کار کد دیگری برای او برگردانده میشود (این کد در واقع پاسخ به چالش است)
- نهایتاً کاربر این کد پاسخ را برای ورود به سامانه مورد نظرش وارد میکند
تاریخچه احرار هویت الگوریتم OCRA
در سال 2010، استاندارد IETF RFC 627 الگوریتم OCRA را ارائه کرد. این الگوریتم با معرفی ساختار چالش-پاسخ، روش جدیدی را برای تولید رمز یکبار مصرف به همراه لایه مضاعفی از امنیت به ارمغان آورد. به عبارت دیگر، میتوان گفت که OCRA، رمز یکبار مصرف مبتنی بر زمان (TOTP) را گسترش داده و روند شناسایی سرور را به آن اضافه کرده است.
این ویژگی نه تنها به کاربران این امکان را میدهد که از صحت سرور مطمئن شوند، بلکه امنیت احراز هویت را نیز بهطرز چشمگیری افزایش میدهد. به همین دلیل، OCRA بهعنوان یکی از الگوریتمهای برتر در زمینه امنیت دیجیتال و سامانههای بانکی شناخته میشود.
نحوه کار الگوریتم تولید رمزیکبار مصرف OCRA
همانطور که در مثال قبل بیان شد، کاربر برای ورود به سیستم توسط الگوریتم احراز هویت OCRA باید قبل از تولید OTP، اطلاعاتی را وارد کند. طبق استاندارد IETF این ورودی میتواند هر نوع داده متغیر مورد توافق بین توکن و سرور باشد. این توافق از قبیل: یک شمارنده (مانند HOTP)، برچسب زمانی (مانند TOTP)، پین، شناسانه نشست (session identifier) و یا حتی یک جفت سؤال-جواب باشد. پارامتر ورودی همچنین باید مشخص کند کدام داده و تابع هش در حال استفاده هستند؛ بنابراین یک هدر در داده گنجانده میشود.
این هدر شامل اطلاعات اضافی و متادیتا است که به پروسه تولید رمز کمک میکند و اطمینان حاصل میکند که توکن و سرور به درستی با یکدیگر تعامل دارند. این ویژگیها باعث میشوند OCRA بهعنوان یک راهکار امن و انعطافپذیر برای احراز هویت شناخته شود.
در شیوههای احراز هویت HOTP و TOTP، تنها سرور توانایی اثبات هویت کاربر را دارد و کاربر نمیتواند بهطور مستقل هویت سرور را تأیید کند. این موضوع میتواند منجر به مشکلات امنیتی شود، زیرا کاربر ممکن است به یک سرور تقلبی متصل شود. اما در الگوریتم چالش-پاسخ OCRA OATH، این مسئله بهطور قابل توجهی بهبود یافته است. OCRA به هر دو طرف (کاربر و سرور) اجازه میدهد که هویت یکدیگر را تأیید کنند. این ویژگی کلیدی، که به آن احراز هویت متقابل یا دوطرفه نیز گفته میشود، با استفاده از یک چالش (Challenge) که سرور به کاربر ارسال میکند و پاسخی که کاربر تولید میکند، انجام میشود.
امضای دادههای تراکنش (OCRA پیشرفته)
همانطور که در بخش قبل گفتیم، OCRA به کاربر اجازه میدهد که چالشی را برای سرور ایجاد کند؛ بنابراین با وجود این حالت متقابل، دو محاسبه جداگانه به شرح زیر اتفاق میافتد:
- Client->Server
- Server->Client
امضای دادههای تراکنش به عنوان یک کاربرد پیشرفتهتری از الگوریتم رمز یکبار مصرف OCRA محسوب میشود. در این حالت، به جای این که فقط یک چالش عمومی مورد بررسی قرار گیرد، مشتری میتواند جزئیات خاص تراکنش را که شامل اطلاعات مهمی مانند شماره حساب دریافتکننده، مبلغ تراکنش و سایر اطلاعات مرتبط است، در فرآیند تأیید قرار دهد.
رویکرد (Confirm What You See) CWYS به طور مؤثری امنیت تراکنشها را در سیستمهای مالی افزایش میدهد. در این روش، کاربر قادر است تراکنش را با دقت بررسی کرده و اطمینان حاصل کند که اطلاعات نمایش داده شده مطابق خواسته اوست. مراحل این فرآیند به شرح زیر است:
- ایجاد تراکنش: کاربر در وبسایت یا برنامه بانک، اقدام به ایجاد یک تراکنش میکند که شامل اطلاعات مهمی مانند مبلغ و شماره حساب است
- تولید کد QR: سیستم پس از تأیید اطلاعات تراکنش، یک کد QR تولید میکند که حاوی اطلاعات تراکنش (مانند مبلغ و شماره حساب) است
- اسکن کد QR: کاربر کد QR را با استفاده از دستگاه یا برنامه مخصوص خود اسکن میکند. این اقدام به کاربر این امکان را میدهد که اطلاعات نمایش داده شده را بررسی کند و از صحت آن اطمینان حاصل نماید
- تأیید اطلاعات: کاربر با دقت اطلاعات را بررسی میکند. اگر همه چیز صحیح به نظر برسد، کاربر میتواند قدم بعدی را بردارد
- ورود OTP: در نهایت، کاربر OTP که توسط توکن ایجاد شده است را وارد میکند. این مرحله تأیید نهایی از جانب کاربر است که او عملیات را تأیید میکند
این روش به دلیل اینکه کاربر به طور مستقیم اطلاعات تراکنش را مشاهده میکند و میتواند از صحت آن اطمینان حاصل کند، به شدت در برابر انواع حملات مانند فیشینگ (phishing)، تروجان، حملات فرد در میان (MitM) و سایر تهدیدات امنیتی مقاوم است. به این ترتیب، حتی اگر کاربران به صورت اشتباه روی لینکهای مخرب کلیک کنند، نمیتوانند بدون تأیید واقعی اطلاعات، تراکنشها را به سرانجام برسانند.
در نهایت، CWYS به عنوان یک روش امنیتی قوی در کنار پروتکلهای تأیید هویت و رمزنگاری، میتواند به کاهش ریسکهای مرتبط با تراکنشهای مالی کمک کند و سطح امنیت را به میزان قابل توجهی افزایش دهد.
در حال حاضر تمامی بانکهای کشور برای ورود کاربران به سامانههای بانکداری از رمز یکبار مصرف OTP استفاده میکنند. بعضاً این رمز از طریق پیامک SMS OTP به کاربران ارسال میشود. بعنوان مثال برای دریافت رمزیکبار مصرف OTP بانک پارسیان کاربران شماره موبایل و مدارک هویتی خود را به بانک ارائه میدهند و بانک برای انجام تراکنشها پیامک ارسال میکند. از دیگر موارد قابل ذکر میتوان به رمز یکبار مصرف OTP بانک رفاه و رمز یکبار مصرف OTP بانک ملت اشاره کرد. لازم به ذکر است که علیرغم رواج این شیوه ارسال رمز، امنیت آن بسیار پایینتر از رمزهای ایجاد شده توسط دستگاههای تولید رمز یکبار مصرف OCRA است.
سخن پایانی
حتماً این سوال در ذهن شما وجود داشت که رمز یکبار مصرف OTP چیست؟ امیدواریم با خواندن این مقاله کلیه سؤالات شما در خصوص رمز عبور یکبار مصرف OTP، انواع رمز یکبار مصرف و نهایتاً نحوه عملکرد رمز یکبار مصرف OCRA پاسخ داده شده باشد.در حال حاضر بسیاری از بانکهای کشور از جمله رفاه، ملت، پارسیان، صادرات، ملی، تجارت، دی و کشاورزی و بسیاری دیگر، برای ورود مشتریان به سامانه بانکداری الکترونیکی (اینترنت بانک) رمز یکبار مصرف OTP را پیشنهاد میدهند. استفاده از رمز یکبار مصرف OCRA امنیت بسیار بالاتری نسبت به نسل قدیمیتر TOTP و HOTP در تراکنشهای مالی داشته و مشتریان بانکها میتوانند اطمینان بیشتری نسبت به امنیت تعاملات در سامانههای برخط داشته باشند.شرکت رهآورد سامانههای امن، محصولات متعدد احراز هویت از جمله رمزیابهای OTP را به کاربران عرضه مینماید. محصول بومی درسا 300 توسط کارشناسان کشور تهیه شده و الگوریتم تولید رمز یکبار مصرف OCRA در آن پیادهسازی شده است. با توجه به اینکه رمزهای یکبار مصرف تولید شده توسط الگوریتم OCRA بسیار امن هستند، لذا از آنها برای فرآیندهای حساس احراز هویت مانند امور بانکی توصیه میشود.