Apa itu CAPTCHA..??

Bagi sebagian besar pengguna internet, istilah CAPTCHA masih terasa asing untuk didengar dan dimengerti. Namun pada kenyataannya hampir seluruh aktifitas dunia maya yang berhubungan dengan form, akan disertakan kode CAPTCHA sebagai Security Code.Security Code?? Ya…CAPTCHA adalah deretan karakter atau symbol yang ditampilkan secara acak pada halaman form berupa gambar samar samar. Pengguna diharuskan menulis deretan karakter tersebut kedalam sebuah field sebagai syarat untuk dapat mengirimkan atau melanjutkan aktifitas pengisian data pada form.

Secara harfiah Captcha singkatan dari “Completely Automated Public Turing test to tell Computers and Humans Apart” ( dikutip dari Wikipedia ), dibuat untuk membedakan antara mesin ( bot ) dan manusia. Istilah Captcha ini dicetuskan oleh Luis von Ahn, Manuel Blum, and Nicholas J. Hopper dari Carnegie MellonUniversity, dan John Langford dari IBM pada tahun 2000.

kenapa mesti dibedakan? karena banyak buanget “penjahat form” alias program SPAM COMMENT yang bisa aja menyerang website kita kapanpun dengan tanpa “sopan santun” menyisipkan comment pada guestbook/forum yang isinya bisa berupa promosi atau malah link2 kesitus porno(ih….atut…) . kebayang ga gimana jadinya tampilan web kita?

nah untuk membedakan aktifitas pengisian form yang dilakukan manusia atau bot pada website, maka muncul ide bagaimana melakukan generating karakter menjadi image. mengapa harus image? karena bot sementara ini belom ada yang bisa membaca karakter yang sudah digenerate jadi image.

ini ada contoh source code yang bisa dicoba :

captchasecurityimages.php

  <?php session_start();
class 
CaptchaSecurityImages 
{
var 
$font ‘monofont.ttf’
;
function 
generateCode($characters
) {
/* list all possible characters, similar looking characters and vowels have been removed */
$possible ‘23456789bcdfghjkmnpqrstvwxyz’

$code 
;
$i 0
;
while (
$i $characters
) { 
$code .= substr($possiblemt_rand(0strlen($possible)-1), 1
);
$i
++;
}
return 
$code
;
}
function 
CaptchaSecurityImages($width=‘120’,$height=’40’,$characters=‘5’
) {
$code $this->generateCode($characters
);
/* font size will be 75% of the image height */
$font_size $height 0.75
;
$image = @imagecreate($width$height) or die(‘Cannot Initialize new GD image stream’
);
/* set the colours */
$background_color imagecolorallocate($image255255255
);
$text_color imagecolorallocate($image2551010
);
$noise_color imagecolorallocate($image1000200
);
/* generate random dots in background */
for( $i=0$i<($width*$height)/3$i
++ ) {
imagefilledellipse($imagemt_rand(0,$width), mt_rand(0,$height), 11$noise_color
);
}
/* generate random lines in background */
for( $i=0$i<($width*$height)/250$i
++ ) {
imageline($imagemt_rand(0,$width), mt_rand(0,$height), mt_rand(0,$width), mt_rand(0,$height), $noise_color
);
}
/* create textbox and add text */
$textbox imagettfbbox($font_size0$this->font$code
);
$x = ($width – $textbox[4])/2
;
$y = ($height – $textbox[5])/2
;
imagettftext($image$font_size0$x$y$text_color$this->font $code
);
/* output captcha image to browser */
imagejpeg($image
);
imagedestroy($image
);
$_SESSION[‘security_code’] = $code
;
}
}
$width = isset($_GET[‘width’]) ? $_GET[‘width’] : ‘120’
;
$height = isset($_GET[‘height’]) ? $_GET[‘height’] : ’40’
;
$characters = isset($_GET[‘characters’]) ? $_GET[‘characters’] : ‘5’
;
header(‘Content-Type: image/jpeg’
);
$captcha = new captchasecurityimages($width,$height,$characters); ?>

Form.php

<?php <form name=reguser action=sign.php method=post>
<
img src=“captchasecurityimages.php?width=100&height=40&character=5” /><br />
Security Code: <input id=“security_code” name=“security_code” type=“text” />
<
input type=submit></form?>

sign.php

<?php session_start();
if((
$_SESSION[‘security_code’] == $_POST[‘security_code’]) && (!empty($_SESSION[‘security_code’
])) )
{
    
//ini jika benar;
}
else
{
    
//ini jika salah;
?>

4 Responses to “Apa itu CAPTCHA..??”

  1. I have a good suggestion for you blog improvement….how if, u include your personal story, tat means your love story xixixixixi….pisssss ahhhh….

  2. owww

  3. gmk khalil Says:

    yg bwt captcha memang programmer hebat

  4. My brother suggested I might like this web site. He was
    entirely right. This post actually made my day. You can not imagine simply how much time I had spent for this info!
    Thanks!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: