Membangun SMS Gateway (windows)

sebenernya membangun SMS gateway itu susah susah gampang,,, hehehehe,,, oh iya apa itu sms gateway??? kalo menurut pandangan penulis, sms gateway itu gerbang buat sms lalu lalang di komputer kita,,, hehehehe… jadi gerbang yang menghubungkan CPU atau komputer ke mobile device atau HaPe…

bahan-bahan yang diperlukan untuk membuat sms gateway:

  • mobile device (hape) atau modem GSM 1 unit
  • CPU 1 unit
  • sms engine (gammu)
  • xampp
  • rokok 2 batang (untuk 18+)
  • korek jangan lupa

langkah-langkah:

  1. nyalain CPU dan  bakar rokok (hati-hati kebalik)
  2. install driver mobile device
  3. udah selesai install driver? hubungkan mobile device dengan CPU. jika mobile devicenya udah kedetect di CPU, cek port mobile device di CPU…  caranya klik kanan my computer->manage->device manager->klik 2x di modem mobile device.. ketemukan?? (contoh kasus: port COM8).
  4. install xampp.. tinggal next,, next,, next,,, tunggu sebentar selesai xampp di install… klik di xampp control panel.. start mysql… cek apakah mysql udah jalan atau belum dengan cara: ketikan di url browser(tanpa tanda petik) “localhost/phpmyadmin”
  5. kalo muncul tampilan phpmyadmin berati mysql sudah terinstall,, setelah itu buat database dengan nama (tanpa tanda petik) “smsd”
  6. ekstrak gammu.zip yang sudah didownload ke satu folder di partisi mana aja… masuk ke folder gammu.. ada dua file penting didalam folder gammu yaitu: gammurc dan smsdrc
  7. bakar rokok yang kedua
  8. buka file gammurc dengan wordpad,, temukan bagian file dibawah ini.. hapus tanda # pada port dan connecton.. isikan port dengan port modem.. dan conection sesuai dengan modem mobile device anda.. penulis menggunakan sony erricson maka conectionnya at115200.. dimana anda dapat mengetahui conection mobile device anda?? kunjungi situs ini: http://cihar.com/gammu/phonedb/
  9. [gammu]port = com8:
    #model = 6110
    connection = at115200
    #synchronizetime = yes
    #logfile = gammulog
    #logformat = textall
    #use_locking = yes
    #gammuloc = locfile
    #startinfo = yes
    #gammucoding = utf8
    #rsslevel = teststable
    #usephonedb = yes
  10. buka file smsdrc,, temukan potongan file dibawah ini… isikan user, password dengan user dan password dari phpmyadmin,, pc dengan localhost,,, database dengan smsd
  11. # ————————- SETTINGS FOR –smsd MYSQL —————————
    user = root
    password =
    pc = localhost
    database = smsd
  12. kembali ke phpmyadmin,, buka database smsd yang sudah dibuat tadi.. setelah itu inport file mysql.sql yang ada di folder gammu ke database.. jika sudah maka terinport maka secara otomatis akan terbentuk table-table yang salah duanya yaitu table inbox dan table outbox…
  13. ok dah langkah kesepuluh ya,, gammu dari cmd,, caranya: arahkan cmd ke folder gammu.. ketik seperti ini(tanpa tanda petik) “gammu −−identify” jika keuar nomer imei dari mobile device anda maka tandanya gammu sudah mendeteksi mobile device anda.. jika ada pesan error maka periksa lagi file gammurc anda..
  14. setelah terdeteksi maka jalankan perintah “gammu  −−smsd MYSQL smsdrc“… jika tidak ada pesan error maka ini akan menjalankan gammu secara terus menerus dan mengecek apakah ada sms masuk atau sms keluar…
  15. jika ada sms yang masuk maka sms tersebut akan langsung di foward ke table inbox,, nah jika ingin mengirim sms maka insertkan data ke table outbox melalui phpmyadmin… field yang perlu diisi di table outbox adalah destinationnumbers diisi nomer tujuan,, coding pilih default_no_compression, dan textdecode diisi dengan isi dari sms yang mw dikirimkan,, yang lainnya birkan aja… jika sms terkirim maka data tersebut akan terhapus dari table outbox dan masuk ke table sentitems

dah jalan tuh sms gatewaynya,, hehehe,, untuk teknik-teknik lainnya seperti diintegrasikan di php atau java, sms broadcast,, sms polling,, atau seperti reg<spasi>nama, remote komputer dari sms nanti ada postingan berikutnya,, hohoho…

autentifikasi login proxy (ncsa_auth)

hmm,, langsung aja deh.. misalnya pas mau ngenet ada browser yang minta login seperti ini :

ini ditujukan untuk mengamankan kalo-kalo ada orang yang ingin mengakses jaringan internet yang berada dirumah kita atau dikantor.  cara bikinnya begini.

  1. sediakan satu mesin untuk dijadikan server proxy boleh cpu atau laptop yang kita pakai. kebetulan os yang dipakai adalah ubuntu lucid jadi yang lain menyesuaikan :D .
  2. trus install deh proxynya. #apt-get install squid
  3. bikin folder cache di /usr. #mkdir /usr/cache
  4. bikin file access.log, swap.log, cache.log di /var/log.
  5. jangan lupa bikin permisionnya juga di file dan folder yang dibuat.
  6. setelah itu bikin user squid dan kasih passwordnya. #adduser squid
  7. setelah itu bikin file password yang nanti digunakan oleh client untuk memasukkan username dan password. #htpasswd /etc/squid/user_pass bayu

setelah itu tinggal cari deh ncsa_auth. pake find atau locate. kalo di lucid ada di /usr/lib/squid/ncsa_auth.  jika semua berjalan dengan lancar nih ya, baru ke settingan squidnya. #pico /etc/squid/squid.conf. settingan yang saya pakai cuma ini :

http_port 10.14.200.60:7786
logfile_rotate 10
maximum_object_size 1024 KB
maximum_object_size_in_memory 32 KB
visible_hostname bay_buw@yahoo.co.id

cache_dir diskd /usr/cache 1600 4 256 Q1=70 Q2=50
cache_mem 512 MB
cache_swap_low 80%
cache_swap_high 100%
cache_effective_user squid
cache_effective_group squid
cache_mgr b4_y0u
cachemgr_passwd 123456
cache_access_log /var/log/access.log
cache_swap_log  /var/log/swap.log
cache_log /var/log/cache.log
cache_store_log none

#extension_methods REPORT MERGE MKACTIVITY CHECKOUT
acl QUERY urlpath_regex cgi-bin \? localhost
no_cache deny QUERY
hierarchy_stoplist cgi-bin ?
half_closed_clients off

#—blok url
#acl whitelist url_regex -i “/etc/proxy/whitelist.txt”
#acl blacklist url_regex -i “/etc/proxy/blacklist.txt”
#http_access allow whitelist
#http_access deny blacklist
#—speed up
refresh_pattern ^http://www.facebook.com/.* 360 95% 4320
refresh_pattern ^http://www.gmail.com/.* 360 95% 4320
refresh_pattern ^http://*.yahoo.*/.* 360 95% 4320
refresh_pattern ^http://www.detik.com/.* 360 95% 4320
refresh_pattern ^http://www.kaskus.us/.* 360 95% 4320
refresh_pattern ^ftp: 10080 95% 241920
refresh_pattern \.gif 4320 50% 43200
refresh_pattern \.tif 4320 50% 43200
refresh_pattern \.jpg 4320 50% 43200
refresh_pattern \.jpeg 4320 50% 43200
refresh_pattern . 180 95% 120960
ipcache_size 2048
ipcache_low 98
ipcache_high 99
log_fqdn off
log_icp_queries off
quick_abort_min 0
quick_abort_max 0
quick_abort_pct 98
shutdown_lifetime 10 seconds
memory_pools off
icp_hit_stale on
query_icmp on
#reload_into_ims on
pipeline_prefetch on
vary_ignore_expire on

#— acl
acl all src 0.0.0.0/0.0.0.0

acl multimedia url_regex -i \.mp3$ \.rm$ \.mpg$ \.mpeg$ \.avi$ \.dat$ \.wmv$ \.3gp$

request_body_max_size 1 MB

#–autentifikasi squid
auth_param basic program /usr/lib/squid/ncsa_auth
/etc/squid/user_passwd
auth_param basic children 5
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

acl manager proto cache_object
http_access allow manager

http_access deny all
###############################################################################

setelah selesai merubah settingan dari squid.conf maka tinggal menjalan squid nya.

  1. ketikkan #squid -z
  2. trus #squid -k reconfigure
  3. setelaih itu #squid -d 1 -D

jika kita ingin melihat apakah squid sudah berjalan atau belum tinggal dilihat dengan #ps -aux | grep squid. jika ada squid atau hasilnya seperti gambar dibawah ini maka squid dengan ncsa sudah berjalan tinggal dicoba pada client.

selesai pembuatan proxy yang terautentifikasi. settingan pada client (browser firefox)  tinggal memasang proxynya pada option->network->setting. setelah itu pilih manual proxy isikan sesuai dengan http_port pada squid.conf

selesai sampai disitu. hehehe.. selain pake ncsa_auth bisa juga pake mysql_auth, php cli, dll. mungkin di artikel berikutnya aja.. :D

selamat mencoba ya.. :D

kalo ada salah sung komen dan kritiknya ya.. soalnya saya masih newbie,, :D

Data Encryption Standard (DES) eps.2

nah sekarang masuk ke proses 16 kali enchipering karena kunci internalnya dan hasil permutasi matriks IP  sudah didapatkan.  kemaren udah ditulis diepisode 1. yang episode 1 ada dimari.

secara lengkap bagan DES adalah seperti ini :

ini dia bagian terumit dari DES. gambar diatas ada dua bagian, yang kanan tuh proses DES lengkap sedangkan yang kiri adalah rincian dari proses fungsi F. proses enchipering dimulai pada saat hasil dari permutasi matriks IP dibagi dua yaitu Lo dan Ro masing-masing 32 bit. setelah itu dilakukan rumus dibawah ini untuk hasil putaran pertama (disebut L1 dan R1):

Li = Ri – 1

Ri = Li – 1 xor f(Ri – 1, Ki)

misalnya hasil dari permutasi IP adalah 1111111111111111111111111111111100000000000000000000000000000000 maka begini jika di pisah menjadi L0 dan R0

Continue reading

Data Encryption Standard (DES)

ini dulu adalah tugas yang diberikan dosen kepada saya yaitu membuat aplikasi DES pakai bahasa apa aja. nah kemaren iseng-iseng pake C#. sebenernya sih penasaran pake bahasa C# soalnya belum pernah bikin program pake C# *malu*. yasudah biar ga lupa saya tulis aja diblog.

sejarah

  • Algoritma DES dikembangkan di IBM dibawah kepemimpinan W.L. Tuchman pada tahun 1972.  Algoritma ini didasarkan pada algoritma LUCIFER yang dibuat oleh Horst Feistel.
  • Algoritma ini telah disetujui oleh National Bureau of Standard (NBS) setelah penilaian kekuatannya oleh National Security Agency (NSA) Amerika Serikat.

algoritma

DES termasuk ke dalam sistem kriptografi simetri dan tergolong jenis cipher blok. DES beroperasi pada ukuran blok 64 bit. DES mengenkripsikan 64 bit plainteks menjadi 64 bit cipherteks dengan menggunakan 56 bit kunci internal (internal key) atau upa-kunci (subkey). Kunci internal dibangkitkan dari kunci eksternal (external key) yang panjangnya 64 bit. secara global algorima digambarkan sebagai berikut :

menurut gambar diatas bisa diceritaken seperti ini :

  1. Blok plainteks dipermutasi dengan matriks permutasi awal (initial permutation atau IP).
  2. Hasil permutasi awal kemudian di-enciphering- sebanyak 16 kali (16 putaran). Setiap putaran menggunakan kunci internal yang berbeda.
  3. Hasil enciphering kemudian dipermutasi dengan matriks permutasi balikan (invers initial permutation atau IP-1 ) menjadi blok cipherteks.

Continue reading

PHP (bagian 2)

setelah membahas tentang sejarah PHP, statemen, komentar, dan variable, sekarang lanjut dengan bahasan operator dan struktur kendali. yang belum membaca bagian 1 ada disini.

operator

Operator digunakan untuk memanipulasi nilai suatu variabel. Variabel yang nilainya dimodifikasi oleh operator disebut operand.  Contoh penggunaan operator misalnya 13 – 3. Dalam hal ini 13 dan 3 adalah operand, dan tanda “-”  disebut operator.  Operator diklasifikasikan menjadi:

  • Arithmetic Operator
  • Assignment Operator
  • Relational Operator
  • Logical Operator
  • Lain-lain

Continue reading

PHP (bagian 1)

PHP adalah bahasa server-side scripting. Jadi script-script pada PHP akan di-run atau dijalankan pada sisi server. Client hanya merequest suatu halaman. Kepanjangan dari PHP sendiri adalah PHP : Hypertext Processor.

PHP diperkenalkan pada tahun 1994 oleh Rasmus Lerdorf yang mulanya tidak dipublikasikan dan hanya digunakan pada situs pribadinya untuk mencatat siapa saja yang mengakses daftar riwayat hidupnya. Script-script tersebut selanjutnya dikemas menjadi tool yang disebut Personal Home Page. Tidak seperti ASP atau ColdFusion, PHP merupakan software yang opensource dan mampu lintas platform. PHP menawarkan konektivitas yang baik dengan beberapa basis data antara lain Oracle, Sybase, mSQL, MySQL, PostgreSQL, Adabas, FilePro, Velocis, dBase, Informix, Ingres, InterBase, Unix dbm dan tak terkecuali semua database ber-interface ODBC.

Bagaimana memulainya? Untuk menjalankan PHP yang dibutuhkan adalah web server(apache, IIS) dan PHP itu sendiri. keduanya bisa didownload di http://www.php.net/downloads.php dan http://httpd.apache.org. Atau kalo ga mau susah ya cari aja yang namanya XAMPP. Itu udah semua kok komplit ada PHP, apache, dan MySql-nya. Jadi ga perlu repot-repot lagi deh. Setelah XAMPP diinstall, masuk ke folder xampp dan disana ada folder htdocs. Udah ketemu foldernya?? nah folder htdocs itu adalah workspacenya. Didalam folder htdocs itu buat folder sendiri untuk menyimpan file-file php.  Misal dibuat folder “saya” di dalam folder htdocs. Maka nanti cara mengaksesnya di browser adalah http://localhost/saya. Untuk lebih lanjut oprek sendiri ya file php.ini sama httpd.conf, di file itu banyak informasi penting tentang konfigurasi php dan apache-nya.

statemen

Script PHP selalu diawali oleh <?php dan diakhiri oleh ?>. Atau bisa juga dituliskan <? pada awal dan ?> pada akhir. Script PHP bisa ditempatkan ditempatkan dimana saja dalam file. contoh penggunaannya sebagai berikut :

<?php echo “halo semuanya!!”; ?>

Jika digabungkan dengan script HTML maka akan menjadi seperti ini

<html>

<body>

<?php echo “Hello World”; ?>

<? echo “ini adalah script php”; ?>

</body>

</html>

komentar

Untuk menuliskan komentar di PHP,  dapat digunakan // komentar atau /* komentar */. contohnya :

<html>

<body>

<?

// ini adalah komentar

/* bisa juga di tuliskan

seperti ini jika lebih dari

satu baris */

?>

</body>

</html>

variabel

menuliskan variabel di PHP sangat mudah karena tidak perlu di deklarasikan sebelumnya. PHP akan otomatis mendeteksi input adalah string atau integer. selain itu variable dapat dituliskan dimana saja. variabel di PHP harus didahului oleh tanda “$” dan diikuti oleh huruf atau pun underscore “_”. contoh :

<html>

<body>

<?

$nilai1= 9;

$nilai2= 1;

$hasil = “hasilnya adalah”;

$jumlah = $nilai1+$nilai2;

echo $hasil.” “.$jumlah;

?>

</body>

</html>

PHP mengenal dua tipe data sederhana yaitu numerik (integer,double) dan non-numerik (literal, string).  Secara umum, data literal ditandai dengan pasangan “ dan “. Data numerik tidak dikelilingi oleh “ dan “. Tetapi biasanya PHP akan secara otomatis mengubah tipe data sesuai kebutuhan.

bersambung. next

internet radio

hehehe,, gara2 kurang kerjaan nih,, makanya iseng bikin internet/ip radio sendiri… jadi bisa siaran deh walaupun hanya di jaringan kosan,,, wkwkwkwkwk…

membangun intrernet radio sendiri sangat mudah,,, hanya perlu software open source yang bisa di download di internet… player musicnya pun sudah sangat kita kenal sebelumnya,,, yaitu winamp plus ditambah 2 tool lagi

  1. shoutcast server (windows,freeBSD,linux,mac,sparc)
  2. shoutcast DSP plugin (windows,*nix)

sudah sudah sudah di download?? yang versi windows tentunya,,, hehehe… iya yang windows,, yang linux ntar menyusul lah ya… kalo uda di download,install winamp dulu ya… eh uda punya winamp ya,, yauda yauda soalnya saya ga pake winamp,, hehehe… jadi musti install winamp dulu deh,,, hohohoho… sekarang bikin servernya,,, langkah-langkah singkatnya:

  • install shoutcast server
  • install plugin winampnya
  • run winamp
  • klik kanan di winamp->options->preference
  • pilih plugin->nullsoft shoutcast source DSP

nah sekarang muncul window shoutcast kan,,, pilih yang output,, setelah itu klik conect,,, oh ya jangan lupa addressnya itu localhost dan password defaultnya adalah “Changeme” (tanpa tanda kutip tentunya),, oh ya ini rahasia ya,, passwornya itu bisa diganti,, cari aja di direktori shoutcastnya file “sc_serv.ini” atau “sc_serv.conf”,,, udah sampe situ,,, kita uda bisa siaran di radio kita sendiri… horay horay,,, bisa siaran di radio buatan sendiri,, apa lagi kalo punya ip public sendiri,,, whehehe… bisa di dengerin sampe benua antartika sono noh suara kita,,, gimana caranya nih muter lagunya?? wah gampang,, tinggal masukin aja ke playlist winamp trus play,, udah gampang kan,,, kalo mw ngomong tinggal pilih input trus klik “push to talk”…

gampang bgt kan bikin radio sendiri,,, hehehe… udah ah,, ak mw siaran dulu,,, para pendengar setiaku uda pada nungguin,, hihihii.. daaaaaaaahhhhhhhh…