السلام عليكم ,
Captch
كلنا او معظمنا اكيد شاف captcha بس مكنش يعرف
اسمها , طيب بنشوفها فين ؟!
مثلا لما تيجى تعمل ايميل جديد أوتسجل فى موقع أو ترد على بلوج بعض الناس أو فى بعض التصويتات أو…إلخ
بيطلب منك انك تكتب الحروف والأرقام العشوائية اللى ع الصورة.
أيون , هى دى كابتشا
ماهى Captcha؟
اولا هى اختصار ل
Completely Automated Public Turingtest to tell Computers and Humans apart
بكل بساطة , هى طريقة تخلينا نتأكد ان الرد ده جاى من انسان مش من كمبيوتر .
بكل بساطة هيعرض قدام حضرتك صورة وعليها حروف وأرقام عشوائية و يطلب منك
انك تكتبها فى المربع اللى تحتها.و بكده بيتأكد ان الرد جاى من انسان مش من كمبيوتر .


طيب , أيه التطبيقات المستخدمة فيها ؟!!!!!!!
معظمها سيكيورتى زى :
1) تجنب ال spam .
و ال spam بكل بساطة محتوى غير مرغوب فيه ,, بيتعمل
اوتوماتيكى بالكمبيوتر بغرض الدعايا , يعنى مثلا واحد عامل سكريبت كل شوية يدخل
يعمل رد و يحط فيها لينكات لموقعه.
2) حماية صفحات التسجيل بالمواقع registration
علشان فى ناس وحشة برده بتعمل سكريبت ظريف يدخل و يشترك فى المواقع علشان
يعمل مواضيع ضارة ( يعنى مثلا دعايا لموقعه أو تحتوى على محتوى ضار …)
3) حماية التصويتات الالكترونية
علشان طبعا لو فى تصويت و مفتوح من غير اشتراك , واحد ظريف برده يعمل سكريبت ظريف برده علشان يدخل يعمل تصويت لرأى معين كل شوية .
4) الحمايةمن Dictionary Attacks
و ال dictionary attacks زى ما احنا عارفين ,, مثلا
واحد قدامة صفحة فيها يوزرنيم وباسورد ,, يعمل سكريبت ظريف برده جواه شوية يوزرز و
باسوردات حاجة كده زى قاموس
و السكريبت يقعد يجرب بيهم لغيت
مايوصل .
# طبعا فى استخداماتكتير غير دول
و طبعا مع وجود Captcha مفيش اى سكريبت ظريف ولا
حاجة ظريفة من دول هتتعمل لان الصورة بتظهر عشوائى وصعب تخمينها.
إمكانية الوصول :
بما ان فى ناس نظرها ضعيف,, فأكيد كابتشا دى هتتعبهم و هنا نقدر نقول ان كابتشا مش متوفرة صورة بس ,
يعنى فى كابتشا صوتية ( يعنى تسمع حروف وتكتبها ).
و فى نوع تانى برده اسمه كابتشا
الحسابية و دى بيظهرك مسألة و تكتب الناتج.
مثلا يقول ” ما ناتج خمسة زائد ستة ?” وانت تكتب الناتج تحت .
كل ده علشان يتأكد ان انت مش كمبيوتر و انت شخص.
طيب سؤال يطرح نفسه ,, هل هى آمنة ؟!!!!!!!!!
إيمانا بالقاعدة التى تقول “ أن مفيش نظام أمنى محكم أو خالى من الثغرات ” و سلم لى على أدهم صبرى
فعلا الكلام ده صح ,, مفيش نظام امنى كامل ,, لازم يكون فى ثغرة ,, لازم نقطة ضعف
حتى لو كان نقطة الضعف ده الأنسان ! وسلم لى على Social Engineering
و دى اول قاعدة بيتعلمها الناس بتوع السيكيورتى والناس بتوع الهاكينج برده
فطبعا كابتشا مهما ان كانت فأكيد فى نقطة ضعف و هى ان ممكن يتم معرفة الكلام المكتوب ع الصورة عن طريق تقنيات
image-recognition و تقنيات تحليل الصور و هكذا
و بالتالى لايمكن الأعتماد عيها كليا ,, لانها غير أمنة 100% كأى نظام
طيب , دلوقت ازاى اعمل Captcha ؟
كل الفكرة انك بتعمل متغير بيحتوى ع بعض الحروف والأرقام عشوائيا و بعدين تكتب قيمته على صورة و بعدين اظهر الصورة
و ده تطبيق بسيط لكابتشا بال php
session_start() ;
header("Content-type: image/png");
$num = rand(100,9999);
// save in session variable
$_SESSION['num'] = $num ;
// creating the image
$im = imagecreate(200,200) ;//create the image
$white = imagecolorallocate($im,255,255,255) ; // background color
$black = imagecolorallocate($im,0,0,0);
imagestring($im,5,50,20,$num,$black); // write on image
imagepng($im);// output the image
مواقع مفيدة :
http://www.captcha.net/
http://www.captchacreator.com/
http://www.phpcaptcha.org/
, جزاكم الله خيرا