حسنًا ، دعنا ننتقل إلى خطوتنا الأولى لبناء مدقق كلمة المرور الآمن.
الآن هنا ، لدي شيك ، ملف جواز سفري.
يمكنك أن تفعل الشيء نفسه.
ومن ثم لدي جهاز طرفي هنا.
ما نريد القيام به هو استيراد وحدة الطلبات في البداية.
إذا لم تقم بذلك ، حسنًا ، يمكنك تثبيت وحدة الطلبات.
ستسمح لنا وحدة الطلب بتقديم طلب.
لذا تذكر أن الأمر يشبه نوعًا ما وجود متصفح بدون المتصفح الفعلي.
يمكننا فقط طلب شيء يدويًا كما لو كان لدينا متصفح ونحصل على بعض البيانات مرة أخرى.
لذا فإن الطريقة التي يمكننا بها استخدام وحدة الطلب مع واجهة برمجة تطبيقات كلمة المرور هي أنه يمكننا الحصول على عنوان URL الخاص
بواجهة برمجة تطبيقات كلمة المرور ، والذي سأخبرك به فقط.
إنه https.
Colin slash slash API كلمات مرور النشر.
دوت كوم.
ثم نعطيه شرطة مائلة للمدى.
وهنا نمنحها كلمة المرور.
لذلك يمكننا فقط فعل زائد.
ودعنا نفعل الآن فقط.
كلمة المرور.
واحد اثنين ثلاثة.
هذا هو عنوان URL الذي سنستخدمه.
لنجعل هذا أصغر قليلاً من هذا القبيل.
الآن هنا ، سنحصل على رد من خلال تنفيذ الطلبات.
الحصول على نقطة.
ودعنا نكتب هذا ونرى ما سيحدث.
إذا قمت بحفظ وتشغيل هذا البرنامج وتذكرت ، فليس لدينا القدرة على كتابة كلمات المرور حتى الآن ، لذلك
لنقم فقط بتشغيل الملف.
حسنًا ، نحصل على شيء ما ، لكن يبدو أنه خطأ.
وهذا لأنني فعلت https.
ما أغباني.
لكن مرة أخرى ، أريد أن أريكم ذلك.
أجل ، هنا.
أنا قادر على قراءة الأخطاء ويبدو أنه مخطط غير صالح.
لا يوجد محول اتصال جيد https.
لذلك إذا قمنا بتشغيل ذلك مرة أخرى.
حسنا.
يبدو أنها عملت.
لا اخطاء.
لكن دعنا نطبع هذا لنرى لماذا نحصل على استجابة مطبوعة.
وسأقوم بتشغيل هذا.
وحصلنا على استجابة 400.
همم.
الآن رد أو 400 ليست جيدة.
عادةً ما يعني ذلك أنه غير مصرح به أو أن شيئًا ما غير صحيح مع واجهة برمجة التطبيقات.
الآن رموز الاستجابة هذه هي شيء سوف ندخل إليه في قسم تطوير الويب من الدورة التدريبية.
لكن هذا يعني فقط أن 400 ليس جيدًا.
نريد استجابة 200.
200 وسيلة.
تمام.
والسبب في حدوث ذلك هو أن هذه ليست الطريقة التي تعمل بها واجهة برمجة التطبيقات بالفعل.
ترى هنا لقد أعطيناها كلمة مرور.
لكن الطريقة التي تعمل بها واجهة برمجة التطبيقات هذه هي أنها تستخدم شيئًا يسمى التجزئة.
الآن ماذا يعني ذلك؟
سأقوم بتضمين درس إضافي بعد هذا الدرس حتى تتمكن من معرفة المزيد عن التجزئة.
لكن لدي هنا هذا الموقع الذي سأرتبط به ، ودعونا نجعله أكبر قليلاً.
نأمل أن ترى أنه منشئ تجزئة SHA1.
الآن تجزئة كلمة المرور.
إنه شيء يجب عليك فعله دائمًا.
لنفترض أنك تقوم بحفظ كلمة مرور المستخدم.
إلى قاعدة بيانات.
يجب ألا تخزن كلمة مرور المستخدم مطلقًا فيما نسميه نصًا عاديًا.
هذا هو بالضبط ما هي كلمة المرور.
بدلاً من ذلك ، نريد أن نفعل شيئًا يسمى التجزئة.
أي ، قم بتشغيلها من خلال خوارزمية تجزئة لجعلها رطانة.
لذلك عندما أقوم بعمل كلمة مرور اثنين ، واحد ، اثنان ، ثلاثة هنا ، ثم أنقر فوق إنشاء وأقوم بالتمرير لأسفل.
هذه هي كلمة المرور المجزأة.
لاحظ هنا أنه أثناء تغيير كلمة المرور هذه ، يتغير هذا أيضًا.
لكن المفتاح هنا وهذا شيء سنتحدث عنه في هذا الفيديو الإضافي هو أن التجزئة هي وظيفة ذات
اتجاه واحد.
إذن هناك العديد من خوارزميات التجزئة المختلفة ، هناك خوارزمية خماسية فارغة ، هناك SHA اثنان
، خمسة ، ستة ، نحن نستخدم SHA واحد لأن هذا هو ما تستخدمه واجهة برمجة التطبيقات هذه و SHA واحد بشكل أساسي مجرد تجزئة.
إنها خوارزمية تعمل على إخراج كلمة المرور هذه.
واحد اثنين ثلاثة.
ولكن بغض النظر عن عدد المرات التي ننشئ فيها كلمة المرور من 1 إلى 3 ، فستكون دائمًا نفس التجزئة.
وبهذه الطريقة يمكننا بالفعل التحقق مما إذا كان شخص ما يكتب كلمة مرور ولدينا بالفعل الإصدار المجزأ من كلمة المرور
ودعنا نقول قاعدة بيانات ، يمكننا في الواقع مقارنة النسخة المجزأة من كلمة المرور هذه بقاعدة البيانات.
كلمة مرور مجزأة.
مرة أخرى ، لا ترتبك كثيرًا هنا.
نأمل أن نغطي هذا الأمر أكثر قليلاً في مقطع الفيديو الإضافي هذا.
لكن الشيء الأساسي هو أن واجهة برمجة التطبيقات هذه ، لأننا نريد أن نكون آمنين قدر الإمكان ، هي ، حسنًا
، لا نريد إرسال كلمة المرور الحقيقية عبر السلك.
بدلاً من ذلك ، نريد إرسال هذه النسخة المجزأة من كلمة المرور الخاصة بنا.
لذا إذا قمت بنسخ هذا ووضعه هنا ، فهذا ما يجب أن نرسله إلى API.
لكن ها هي المشكلة.
لا يزال هذا غير آمن للغاية لأن أي شخص يمكنه الآن الكتابة والاستمرار في التخمين ، والاستمرار
في التخمين ، ثم النقر في النهاية على كلمة المرور من 1 إلى 3 ورؤية ، أوه ، هذه التجزئة هي نفسها تمامًا مثل هذه التجزئة.
لذلك سيعرفون أن هذه هي كلمة المرور الخاصة بنا.
لذلك تستخدم واجهة برمجة التطبيقات هذه تقنية تسمى إخفاء الهوية K وهي في الواقع تقنية حديثة تستخدمها جميع الشركات الكبرى
مثل Google و Facebook و Netflix و Amazon.
يسمح عدم الكشف عن هويته K لشخص ما بتلقي معلومات عنا ومع ذلك لا يزال لا يعرف من نحن.
كيف يعمل هذا؟
بالمناسبة ، هذه في الواقع تقنية تُستخدم كثيرًا ، خاصة الآن ، حيث استخدام البيانات
الشخصية للشركات أمر مستهجن.
لذلك من الناحية المثالية ، لا تريد إعطاء معلوماتك الشخصية للشركات.
لذلك تستخدم بعض الشركات التي تهتم بالأمان والخصوصية إخفاء الهوية هذا لتتبعك ، ولكن لا تزال لا
تعرف من أنت.
الآن ، الطريقة التي يعمل بها هذا.
هو أننا نعطي الأحرف الخمسة الأولى فقط من كلمة مرور التجزئة الخاصة بنا.
إذن واحد ، اثنان ، ثلاثة ، أربعة ، خمسة.
لذلك إذا قمت بإزالة هذا ، فإن ما ستفعله واجهة برمجة التطبيقات هذه هو أنها تحتوي على قائمة بجميع كلمات المرور التي تم تسريبها.
ومع ذلك ، يتم تجزئة كل كلمات المرور هذه باستخدام خوارزمية SHA one.
لذلك سيبحث في قاعدة البيانات الخاصة به عن كل كلمات المرور هذه ويختار كل كلمات المرور المجزأة التي تحتوي على الأحرف
الخمسة الأولى التي تطابق هذا.
وبهذه الطريقة ، مع الاستجابة ، سنحصل على جميع كلمات المرور التي تم تجزئتها والتي تحتوي
على هذا حتى يتسنى لنا ، عندما نتلقى هذه الاستجابة ، التحقق من بقية دالة التجزئة.
بهذه الطريقة ، لن تعرف واجهة برمجة التطبيقات هذه أبدًا التجزئة الكاملة ، وبالتالي لن تتمكن أبدًا من تخمين كلمة المرور الخاصة
بنا.
سيعرفون فقط أن لدينا هذا الجزء الصغير من وظيفة التجزئة التي يمكن أن تتطابق مع أي مئات من كلمات المرور.
كم ذلك رائع؟
لذلك إذا قمت بالفعل بحفظ هذا وتشغيله.
تلقيت استجابة 200.
رائع.
حسنا.
لنأخذ استراحة ، ونتعلم المزيد عن التجزئة ونراكم في الفيديو التالي.
مع السلامة.