Penulis Topik: Penggunaan Xor pada Pemograman  (Dibaca 4419 kali)

0 Anggota dan 1 Pengunjung sedang melihat topik ini.

Offline kang radi

  • Moderator
  • Master
  • *****
  • Tulisan: 1061
  • Thanked: 3 times
  • Total likes: 11
  • Jenis kelamin: Pria
  • Kemelekatan yang tak terasa
    • Lihat Profil
Penggunaan Xor pada Pemograman
« pada: Januari 08, 2014, 08:10:06 PM »
Setelah membaca thread yang ditulis pak asep tentang tabel kebenaran maka adie jadi teringat kembali sewaktu masa-masa sekolah dulu yang pernah mempelajari gerbang logika komputerisasi seperti OR, AND, NOR, NAND,  XOR dan Konco konconya ^_^

Untuk yang sudah khatam atau pernah berkenalan mesra dengan pelajaran
”Logika Matematika dan Teori Himpunan” atau ”Sistem Digital”
pasti sudah tidak asing lagi , jadi tidak perlu dijelaskan kalaupun tidak tau yach sekarang musimnya searcing google ^_^
Ada item yang menarik perhatian adie yaitu XOR yang pernah dibahas pak asep di  http://medialogika.org/teori-umum/xor/
tapi karena ini rubik programming jadi mungkin ada sentuhan nya pemograman walaupun adie akui jarang sekarang menggunakan makhluk aneh bernama XOR ketika melakukan coding ,
jadi adie bereferensi ke http://komputasi.wordpress.com/2009/01/16/enkripsi-xor-sekedar-kenal/


---------------------------------------------------
Secara singkat, operasi XOR akan mengembalikan nilai 1 jika jumlah operand bernilai satu ganjil, jika tidak maka akan mengembalikan hasil 0. Berikut ini contohnya:
1 XOR 1 = 01 XOR 0 = 10 XOR 1 = 10 XOR 0 = 0
Bagaimana jika 1 XOR 1 XOR 1? Hasilnya 1. Benarkah?
Dalam kriptografi, pembuatan chiper (teks hasil enkripsi) melalui operasi XOR merupakan suatu algoritma enskripsi yang relatif sederhana. Teknik ini beroperasi sesuai dengan prinsip:
A XOR 0 = A,A XOR A = 0,(B XOR A) XOR A = B XOR 0 = B,
Dengan logika ini, suatu string teks dapat diekripsi dengan menerapkan operasi XOR berbasis bit (binary digit) terhadap setiap karakter menggunakan key tertentu. Bagaimana mendekripsi outputnya untuk mendapatkan plaintext kembali? Dengan menerapkan operasi XOR terhadap chiper.
Sebagai contoh, string “Wiki” jika ditulis dalam format ASCII 8 bit menjadi 01010111 01101001 01101011 01101001 dapat dienkripsi dengan suatu key misalnya 11110011 sebagai berikut:
01010111 01101001 01101011 01101001
11110011 11110011 11110011 11110011
——————————————– (XOR)
10100100 10011010 10011000 10011010 (Hasil)

Dan sebaliknya, untuk dekripsi adalah:
10100100 10011010 10011000 10011010
11110011 11110011 11110011 11110011
——————————————– (XOR)
01010111 01101001 01101011 01101001 (Hasil)
Operator XOR sering dijadikan sebagai salah satu komponen dalam pembentukan chiper yang lebih kompleks. Namun, penggunaan suatu key yang berulang secara konstan menyebabkan suatu chiper dapat dengan mudah dipecahkan menggunakan analisis frekuensi (seperti dibahas pada huruf yang paling sering muncul dalam suatu bahasa). Keutamaan dari teknik ini adalah mudah diimplementasikan dan operasi XOR tidak mahal secara komputasional. Karena itu, chiper XOR masih sering kali digunakan untuk menyembunyikan informasi dalam kasus dan kemudian dilengkapi dengan suatu mekanisme keamanan tambahan. Akan tetapi, jika key dibuat sepanjang message (pesan), tidak berulang dan bit-bitnya bersifat random, maka akan menghadirkan efek one-time-pad (dikenal pula sebagai chiper Vernam) yang tidak dapat dipecahkan, bahkan dalam teori sekalipun.
---------------------------------------------------


Kalau di pakai menggunakan PHP bisa di coba seperti ini


Kode: [Pilih]




<?php
// Contoh Logika XOR
$f 8;
$k 5
if (
$f == Xor $k == 6


{echo
"<br><h1>Data Benar";} // Jika salah satu sama 


else
    {echo
"<br><h1>Data Salah ";} // Jika tidak ada yang sama atau data keduanya sama


?>

« Edit Terakhir: Januari 08, 2014, 08:44:04 PM oleh kang radi »
 

Offline kang radi

  • Moderator
  • Master
  • *****
  • Tulisan: 1061
  • Thanked: 3 times
  • Total likes: 11
  • Jenis kelamin: Pria
  • Kemelekatan yang tak terasa
    • Lihat Profil
Re:Penggunaan Xor pada Pemograman
« Jawab #1 pada: Januari 08, 2014, 08:48:40 PM »
Kode: [Pilih]


<?php

function xor_this($text) {
    
$key '123';
    
$i 0;
    
$encrypted '';
    foreach (
str_split($text) as $char) {
        
$encrypted .= chr(ord($char) ^ ord($key{$i++ % strlen($key)}));
    }
    return 
$encrypted;
}
print 
xor_this('radi ganteng'); // outputs "CSWXTP\GT\T"
?>





Contoh diatas adalah fungsi Xor untuk enkripsi karakter,


Terima kasih atas perhatian logicers semua , semoga ada manfaatnya


referesni tulisan :
- http://www.php.net/manual/en/language.operators.logical.php
- http://php.net/manual/en/language.operators.bitwise.php
- http://w3function.com/blog/index.php?p=det&idn=26
« Edit Terakhir: Januari 08, 2014, 08:53:12 PM oleh kang radi »
 

Offline Kang Asep

  • Administrator
  • Master
  • *****
  • Tulisan: 9264
  • Thanked: 55 times
  • Total likes: 353
  • Jenis kelamin: Pria
  • Logika = Undang-undang berpikir
    • Lihat Profil
Re:Penggunaan Xor pada Pemograman
« Jawab #2 pada: Januari 09, 2014, 03:32:20 AM »
saya mau mencoba script tersebut, tapi dream weaver saya kok bermasalah, gak bisa menyimpan file. kenapa ya ?

terus filenya mesti di simpen dengan extensi .php atau bisa dalam extensi  html ?

saya coba menyalinkan ke notepad, menyimpan file dalam format .php. diakses dari localhost, hasilnya muncul teks "Data Benar".

tapi saya belum mengerti alur berpikirnya. apa kang radi bisa mendeskripsikannya dalam bentuk kalimat baris perbaris ?
Diskusi adalah usaha saling membantu dalam memahami struktur realitas melalui jalan komunikasi berlandaskan pada rasa hormat dan kasih sayang.
 

Offline kang radi

  • Moderator
  • Master
  • *****
  • Tulisan: 1061
  • Thanked: 3 times
  • Total likes: 11
  • Jenis kelamin: Pria
  • Kemelekatan yang tak terasa
    • Lihat Profil
Re:Penggunaan Xor pada Pemograman
« Jawab #3 pada: Januari 09, 2014, 09:31:54 AM »
Quote (selected)
saya mau mencoba script tersebut, tapi dream weaver saya kok bermasalah, gak bisa menyimpan file. kenapa ya ?


Kalau seperti itu adie kurang tahu , adie bisa tahu kalau bisa melihat langsung editor dreamweaver di komputer bapak


Quote (selected)
terus filenya mesti di simpen dengan extensi .php atau bisa dalam extensi  html ?

Karena ini fungsi dari PHP berarti ext nya harus PHP

Quote (selected)
saya coba menyalinkan ke notepad, menyimpan file dalam format .php. diakses dari localhost, hasilnya muncul teks "Data Benar". tapi saya belum mengerti alur berpikirnya. apa kang radi bisa mendeskripsikannya dalam bentuk kalimat baris perbaris ?



Memang betul hasilnya berupa "Data benar" karena Xor sendiri adalah kebalikan dari Or sehingga aturannya kalo
true true  = false , false false = false -> bila kedua2nya bernilai true atau kedua2nya bernilai false maka hasilnya false
true false = true ,  false true  = true -> bila ada salah satu yang true maka hasilnya true


adie kan uraikan lagi script diatas

Kode: [Pilih]



<?php
// Contoh Logika XOR
$f 8// variable f ini di beri nilai 8
$k 5// variable k ini di beri nilai 5


//sekarang bandingkan dengan nilai lain (8 dan 6) terus Gunakan Xor Xor
// cek apakah variabe f sama dengan 8 , 
// karena f sendiri bernilai 8 maka nilai perbandingan menjadi true
// cek apakah variabe k sama dengan 6 , 
// karena k sendiri bernilai 5 maka nilai perbandingan menjadi false
// true Xor False = true
// Maka hasil print out dilayar "Data Benar"
if ($f == Xor $k == 6




{echo
"<br><h1>Data Benar";} // Jika salah satu sama 




else
    {echo
"<br><h1>Data Salah ";} // Jika tidak ada yang sama atau data keduanya sama




?>



« Edit Terakhir: Januari 09, 2014, 09:38:27 AM oleh kang radi »
 

Offline panjoelaza

Re:Penggunaan Xor pada Pemograman
« Jawab #4 pada: April 22, 2014, 10:55:26 PM »
@ mas radi
untuk aplikasi enkripsi dengan algoritma xor ini apakah bisa di buat yang agak menantang
misal untuk enkripsi file source code php
jadi masukin berkas terus keluar berkas tp yg terenkrip
kl bisa mohon bantuannya trmkasih
 

Offline kang radi

  • Moderator
  • Master
  • *****
  • Tulisan: 1061
  • Thanked: 3 times
  • Total likes: 11
  • Jenis kelamin: Pria
  • Kemelekatan yang tak terasa
    • Lihat Profil
Re:Penggunaan Xor pada Pemograman
« Jawab #5 pada: April 23, 2014, 11:00:57 AM »
@ mas radi
untuk aplikasi enkripsi dengan algoritma xor ini apakah bisa di buat yang agak menantang
misal untuk enkripsi file source code php
jadi masukin berkas terus keluar berkas tp yg terenkrip
kl bisa mohon bantuannya trmkasih

Salam kenal kangmas panjoelaza ^_^
 langsung aja yach , untuk enkripsi menggunakan Xor sebenarnya belum pernah adie lakukan sebab adie belum pernah membuat program yang di dalamnya menggunakan Xor.

Untuk Enkripsi PHP sebenernya adie pernah coba dari Zend(perusahaan yang membuat PHP) itu juga udah lama seitar tahun 2005an dan tidak dipakai lama karena pada saat itu setelah proses enkrip ada beberapa fungsi php yang tidak berjalan pada service PHP dan webservice apache. karena tidak dipakai lagi sampai sekarang jadi tidak begitu mengikuti perkembangan zend guard , kalo zend guard bisa dijadikan solusi silahkan coba.

Selain itu sekarang ada enkripsi online untuk file PHP diantaranya
1. TrueBug PHP obfuscator  ini linknya http://www.mediafire.com/?00a83w6xm7a0gzc
2. http://www.freephpencoder.com
3. http://fisip.net/free_php_encoder atau http://fisip.net/?tools=free_php_encoder

dan kebanyakan mereka menggunakan base64_encode dan base64_decode jadi intinya cara ini sebenrnya buka mengamankan file PHP tetapi hanya membuat bingung sehingga susah untuk dibaca/bongkar.

adie akan menuliskan script yang ada pada https://docs.google.com/file/d/0B4i1FYc_4RXzUXVsTnhOUlFwU1k/edit

 

Offline kang radi

  • Moderator
  • Master
  • *****
  • Tulisan: 1061
  • Thanked: 3 times
  • Total likes: 11
  • Jenis kelamin: Pria
  • Kemelekatan yang tak terasa
    • Lihat Profil
Re:Penggunaan Xor pada Pemograman
« Jawab #6 pada: April 23, 2014, 11:13:54 AM »
ini contoh script untuk enkrispsi file php



Dalam contoh program yang penulis buat terdiri dari 3 buah file (untuk file decodernya tidak dibahas), dengan urutan sebagai berikut :


1. decoded.php (file PHP asli yang dapat dibaca)
2. php-encoder.php (script PHP untuk mengenkripsi script yang ada di file decoded.php menjadi file encoded.php.
3. encoded.php (file PHP yang sudah dienkripsi sehingga tidak dapat dibaca tetapi masih dapat dijalankan secara sempurna.


Jadi urutan pengetesannya kira-kira sebagai berikut :
decoded.php => php-encoder.php =>  encoded.php

Misalnya kita buat contoh file script PHP pada decoded.php sebagai berikut :


Kode: [Pilih]

<?php
    
//nama filenya decoded.php
    
echo "saya seorang logicers";
?>



Kode: [Pilih]

<?php
// nama file nya php-encoder.php


//Include kan file yang akan di enkripsi
$php_code file_get_contents("decoded.php");


$_X=?>
'.$php_code;
$_X=strtr($_X,'aouie123456','123456aouie');
$_X=base64_encode($_X);


$result = "<?php $_F=__FILE__;$_X='".$_X."';
eval(
base64_decode('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLC
cxMjM0NTZhb3VpZScsJ2FvdWllMTIzNDU2Jyk7JF9SPWVyZWdfcmVwbGFjZSgnX19GS
UxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='
));?>
";


// hasil enkripsi akan di dimasuka kedalam file ini
file_put_contents("encoded.php", $result);
echo str_replace('<','&lt',str_replace('>','&gt',$result));
?>

maka silahkan panggil di browser misal http://localhost/test/encoded.php

jadi untuk mengenkripsi lebih dari satu file PHP silahkan bisa menggunakan LOOPING.

Untuk enkripsi menggunakan Xor mungkin jadi PR kalo gak ada kegiatan pekerjaan (Tapi gak janji hehehehe)

Makasih kang mas panjoelaza, mudah2an tidak puas, Salam Logicers
 

Offline kang radi

  • Moderator
  • Master
  • *****
  • Tulisan: 1061
  • Thanked: 3 times
  • Total likes: 11
  • Jenis kelamin: Pria
  • Kemelekatan yang tak terasa
    • Lihat Profil
Re:Penggunaan Xor pada Pemograman
« Jawab #7 pada: April 23, 2014, 11:27:35 AM »
oh iya baru ngeh dan kepikiran pada file php-encoder.php ganti aja base_encode nya dengan fungsi yang adie bikin

Kode: [Pilih]
function xor_this($text) {
    $key = '123';
    $i = 0;
    $encrypted = '';
    foreach (str_split($text) as $char) {
        $encrypted .= chr(ord($char) ^ ord($key{$i++ % strlen($key)}));
    }
    return $encrypted;
}
[/]

 

Offline panjoelaza

Re:Penggunaan Xor pada Pemograman
« Jawab #8 pada: April 29, 2014, 10:15:09 PM »
ini contoh script untuk enkrispsi file php



Dalam contoh program yang penulis buat terdiri dari 3 buah file (untuk file decodernya tidak dibahas), dengan urutan sebagai berikut :


1. decoded.php (file PHP asli yang dapat dibaca)
2. php-encoder.php (script PHP untuk mengenkripsi script yang ada di file decoded.php menjadi file encoded.php.
3. encoded.php (file PHP yang sudah dienkripsi sehingga tidak dapat dibaca tetapi masih dapat dijalankan secara sempurna.


Jadi urutan pengetesannya kira-kira sebagai berikut :
decoded.php => php-encoder.php =>  encoded.php

Misalnya kita buat contoh file script PHP pada decoded.php sebagai berikut :


Kode: [Pilih]

<?php
    
//nama filenya decoded.php
    
echo "saya seorang logicers";
?>



Kode: [Pilih]

<?php
// nama file nya php-encoder.php


//Include kan file yang akan di enkripsi
$php_code file_get_contents("decoded.php");


$_X=?>
'.$php_code;
$_X=strtr($_X,'aouie123456','123456aouie');
$_X=base64_encode($_X);


$result = "<?php $_F=__FILE__;$_X='".$_X."';
eval(
base64_decode('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLC
cxMjM0NTZhb3VpZScsJ2FvdWllMTIzNDU2Jyk7JF9SPWVyZWdfcmVwbGFjZSgnX19GS
UxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='
));?>
";


// hasil enkripsi akan di dimasuka kedalam file ini
file_put_contents("encoded.php", $result);
echo str_replace('<','&lt',str_replace('>','&gt',$result));
?>

maka silahkan panggil di browser misal http://localhost/test/encoded.php

jadi untuk mengenkripsi lebih dari satu file PHP silahkan bisa menggunakan LOOPING.

Untuk enkripsi menggunakan Xor mungkin jadi PR kalo gak ada kegiatan pekerjaan (Tapi gak janji hehehehe)

Makasih kang mas panjoelaza, mudah2an tidak puas, Salam Logicers

untuk penggunaan algoritma xor kan ada proses pembentukan kunci dan chiernya ada masukkan ga, saya kan mau membuat proses enkripsinya sampai nanti bisa dibaca di browser
 

Offline kang radi

  • Moderator
  • Master
  • *****
  • Tulisan: 1061
  • Thanked: 3 times
  • Total likes: 11
  • Jenis kelamin: Pria
  • Kemelekatan yang tak terasa
    • Lihat Profil
Re:Penggunaan Xor pada Pemograman
« Jawab #9 pada: April 30, 2014, 10:12:20 AM »
Kutip dari: panjoelaza linkantic=2729.msg12999#msg12999 date=1398784509
untuk penggunaan algoritma xor kan ada proses pembentukan kunci dan chiernya ada masukkan ga, saya kan mau membuat proses enkripsinya sampai nanti bisa dibaca di browser

Until case yang memiliki key nanti buatkan contoh yacht,
 

Tags: belum puas mas 
 

GoogleTagged



Related Topics

  Subyek / Dimulai oleh Jawaban Tulisan terakhir
0 Jawaban
1212 Dilihat
Tulisan terakhir Pebruari 12, 2012, 12:34:27 PM
oleh Kang Asep
xor

Dimulai oleh Kang Asep Teori Umum

2 Jawaban
1353 Dilihat
Tulisan terakhir April 22, 2014, 10:56:40 PM
oleh panjoelaza
2 Jawaban
1413 Dilihat
Tulisan terakhir Januari 11, 2014, 03:10:51 PM
oleh Kang Asep
2 Jawaban
1112 Dilihat
Tulisan terakhir Januari 20, 2014, 07:54:51 AM
oleh Kang Asep
7 Jawaban
1115 Dilihat
Tulisan terakhir Mei 22, 2015, 06:17:35 AM
oleh Kang Asep
0 Jawaban
427 Dilihat
Tulisan terakhir September 09, 2015, 12:39:11 PM
oleh Kang Asep
1 Jawaban
1011 Dilihat
Tulisan terakhir Januari 24, 2016, 12:57:53 AM
oleh Sultan
1 Jawaban
713 Dilihat
Tulisan terakhir Mei 14, 2017, 06:20:09 AM
oleh flair666
0 Jawaban
337 Dilihat
Tulisan terakhir Maret 18, 2016, 05:47:05 PM
oleh kang radi
0 Jawaban
202 Dilihat
Tulisan terakhir Oktober 29, 2016, 10:11:35 PM
oleh Kang Asep

Ilmu Logika

Proposisi Syllogisme Kupas Logika TTS

Meditasi

Menenangkan Pikiran Mengembangkan Kekuatan-Kekuatan