"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية إنشاء رموز واجهة برمجة التطبيقات الآمنة تشفيرًا؟

كيفية إنشاء رموز واجهة برمجة التطبيقات الآمنة تشفيرًا؟

تم النشر بتاريخ 2024-11-09
تصفح:770

How to Generate Cryptographically Secure API Tokens?

إنشاء الرموز المميزة الآمنة المشفرة

في السعي للوصول الآمن إلى واجهة برمجة التطبيقات، من الممارسات الشائعة استخدام رمز مميز مكون من 32 حرفًا. ومع ذلك، فإن الطريقة المستخدمة حاليًا والتي تعتمد على md5(uniqid(mt_rand(), true)) تواجه التدقيق نظرًا لاعتمادها على ساعة النظام، مما يجعلها عرضة للتنبؤ.

أدخل Openssl: A تشفيرًا حل قوي

للتغلب على هذا القيد، يوصي الخبراء باستخدام opensl_random_pseudo_bytes لإنشاء الرموز آمنة التشفير. على عكس mt_rand()، تعمل openssl_random_pseudo_bytes على الاستفادة من وظائف التشفير لإخراج بايتات شبه عشوائية، مما يجعل التنبؤ أمرًا صعبًا للغاية.

حساب الرمز

كود بايثون المناسب لإنشاء رمز آمن. الرمز المميز هو:

import os
token = os.urandom(16).hex()

سينتج هذا الرمز سلسلة سداسية عشرية مكونة من 32 حرفًا تلبي متطلبات الأمان.

اختيار الطول

طول الرمز أمر بالغ الأهمية لأمنه. يعتبر الرمز المميز المكون من 16 بايت (32 حرفًا) قويًا، حيث سيستغرق اختراق القوة الغاشمة مليارات السنين باستخدام التكنولوجيا الحالية. لذلك، 16 هو الطول المناسب لإنشاء الرمز المميز.

البديل في PHP 7

يقدم PHP 7 وظيفة Random_bytes، والتي تشبه openssl_random_pseudo_bytes. كود PHP 7 لإنشاء رمز مميز آمن تشفيريًا هو:

$token = bin2hex(random_bytes(16));
$token = bin2hex(random_bytes(16));
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3