كلمة مرور لمرة واحدة تعتمد على الوقت

تطبيق للهواتف الذكية يعرض كلمات المرور لمرة واحدة لكل خدمة بناءً على الوقت

كلمة المرور لمرة واحدة المستندة إلى الوقت ( TOTP ) هي خوارزمية حاسوبية تُنشئ كلمة مرور لمرة واحدة (OTP) باستخدام الوقت الحالي كمصدر للتفرد. وباعتبارها امتدادًا لخوارزمية كلمة المرور لمرة واحدة المستندة إلى HMAC (HOTP) ، فقد تم اعتمادها كمعيار من قِبل فريق عمل هندسة الإنترنت (IETF) RFC 6238. [ 1 ] 

يُعد TOTP حجر الزاوية في مبادرة المصادقة المفتوحة (OATH) ويتم استخدامه في عدد من أنظمة المصادقة الثنائية (2FA).

تاريخ

من خلال تعاون العديد من أعضاء منظمة OATH، تم تطوير مسودة TOTP بهدف إنشاء معيار مدعوم من قبل القطاع. يُكمّل هذا المعيار معيار HOTP القائم على الأحداث والذي يُستخدم لمرة واحدة، ويُتيح للمؤسسات والشركات المستخدمة النهائية خيارات أوسع لاختيار التقنيات التي تُناسب متطلبات تطبيقاتها وإرشاداتها الأمنية على أفضل وجه . في عام 2008، قدّمت OATH مسودة المواصفات إلى IETF. تتضمن هذه المسودة جميع الملاحظات والتعليقات التي تلقاها المؤلفون من المجتمع التقني بناءً على النسخ السابقة المُقدّمة إلى IETF. [ 2 ] في مايو 2011، أصبح TOTP رسميًا RFC 6238. [ 1 ]

الخوارزمية

لتأسيس مصادقة TOTP، يجب على كل من المصادق عليه والمصادق عليه تحديد معلمات HOTP ومعلمات TOTP التالية مسبقًا:

  • T 0 ، وهو وقت يونكس الذي يبدأ منه حساب الخطوات الزمنية (القيمة الافتراضية هي 0).
  • T X ، وهي فترة زمنية سيتم استخدامها لحساب قيمة العداد C T (الافتراضي هو 30 ثانية).

يقوم كل من المُصادِق والمُصادَق عليه بحساب قيمة TOTP، ثم يتحقق المُصادِق مما إذا كانت قيمة TOTP المُقدمة من المُصادَق عليه تُطابق قيمة TOTP المُولَّدة محليًا. تسمح بعض المُصادِقات بقيم كان من المفترض توليدها قبل أو بعد الوقت الحالي لمراعاة انحرافات الساعة الطفيفة ، وزمن استجابة الشبكة، وتأخيرات المستخدم.

تستخدم TOTP خوارزمية HOTP، حيث تستبدل العداد بقيمة غير متناقصة بناءً على الوقت الحالي:

   قيمة TOTP ( K ) = قيمة HOTP ( K , C T

حساب قيمة العدادجتي=تي-تي0تيX،{\displaystyle C_{T}=\left\lfloor {\frac {T-T_{0}}{T_{X}}}\right\rfloor ,}أين

  • يمثل C T عدد الفترات الزمنية T X بين T 0 و T ،
  • يمثل T الوقت الحالي بالثواني منذ حقبة زمنية معينة .
  • T 0 هو الحقبة الزمنية كما هو محدد بالثواني منذ حقبة يونكس (على سبيل المثال، إذا كنت تستخدم وقت يونكس ، فإن T 0 هو 0).
  • يمثل T X طول المدة الزمنية لمرة واحدة (على سبيل المثال 30 ثانية).

otpauth://مخطط URI

يُشفّر عنوان URI المذكور في هذا القسم على شكل رمز QR. تسمح العديد من الهواتف الذكية للمستخدمين بمسح هذه الرموز وتسجيلها في تطبيق مصادقة، مثل Google Authenticator .

تتيح بعض تطبيقات TOTP للهواتف الذكية للمستخدمين مسح رموز QR لإضافة رموز HOTP وTOTP إلى تطبيقات المصادقة الخاصة بهم. تحتوي رموز QR هذه على مُعرّفات موارد موحدة (URIs) وفقًا للمخطط [ 3 ]otpauth:// .

otpauth://تبدأ معرّفات TOTP URI بـ otpauth://totp/ويجب أن تحتوي على تسمية وكلمة مرور. تُشفّر التسمية كجزء من المسار، بينما تُشفّر كلمة المرور كمعاملات استعلام. قد يحتوي معرّف URI اختياريًا على حقول أخرى، مثل عدد الأرقام (وهو 6 افتراضيًا)، والخوارزمية المستخدمة (وهي SHA1 افتراضيًا)، والفترة (وهي 30 ثانية افتراضيًا)، واسم الجهة المُصدرة.

يتم ترميز السر باستخدام RFC 4648 Base32 ، مع حذف الحشو. على سبيل المثال، يمثل URI otpauth://totp/Wikipedian?secret=JBSWY3DPFQQHO33SNRSCCرمز TOTP يحمل اسم "Wikipedian" مع Hello, world!ترميز السر باستخدام ASCII.

حماية

على عكس كلمات المرور ، فإن رموز TOTP صالحة لفترة محدودة فقط. ومع ذلك، يتعين على المستخدمين إدخال رموز TOTP في صفحة المصادقة، مما يُهيئ بيئةً لهجمات التصيد الاحتيالي . ونظرًا لقصر فترة صلاحية رموز TOTP، يتعين على المهاجمين استخدام بيانات الاعتماد كوكيل في الوقت الفعلي. [ 4 ]

تعتمد بيانات اعتماد TOTP أيضًا على سر مشترك معروف لكل من العميل والخادم، مما يُنشئ مواقع متعددة يُمكن من خلالها سرقة هذا السر. يستطيع المهاجم الذي يمتلك هذا السر المشترك توليد رموز TOTP جديدة وصالحة متى شاء. وقد يُشكل هذا مشكلة خاصة إذا تمكن المهاجم من اختراق قاعدة بيانات مصادقة ضخمة. [ 5 ]

انظر أيضاً

مراجع

  1. 1 2 م'رايهي، ديفيد؛ ريدل، يوهان؛ بي، مينغليانغ؛ ماتشاني، صلاح (مايو 2011). "RFC 6238 – TOTP: خوارزمية كلمة المرور لمرة واحدة المستندة إلى الوقت" . مؤرشف من الأصل في 11 يوليو 2011. تم الاسترجاع في 13 يوليو 2011 .
  2. ألكسندر، ماديسون. "منظمة OATH تقدم مواصفات TOTP: كلمة المرور لمرة واحدة المستندة إلى الوقت إلى IETF" . المصادقة المفتوحة . مؤرشف من الأصل في 9 أبريل 2013. تم الاطلاع عليه في 22 فبراير 2010 .
  3. ^ عادات ، توماس (2018-11-26). "تنسيق Uri الرئيسي" . جيثب . تم الاسترجاع 2026-05-24 .
  4. أوماوينغ، جوفي (21 يناير 2019). "هل تم التغلب على المصادقة الثنائية؟ تسليط الضوء على أحدث تحدياتها" . مختبرات مالويربايتس . مؤرشف من الأصل في 25 سبتمبر 2020. تم الاطلاع عليه في 9 أغسطس 2020 .
  5. زيتر، كيم. "شركة RSA توافق على استبدال رموز الأمان بعد اعترافها بالاختراق" . مجلة WIRED . مؤرشف من الأصل في 12 نوفمبر 2020. تم الاطلاع عليه في 17 فبراير 2017 .