Bash Programming: Menu Interaktif dengan Select

Heylooo.. Ketemu lagi dengan artikel Bash programming di blog kita tercinta ini. *tsaaah..* Sebelumnya telah dibahas mengenai menu interaktif dengan Case ya.. Sekarang yg bakal dibahas adalah menu interaktif menggunakan “Select“.

Sebenarnya select bukan merupakan percabangan murni, karena select melibatkan percabangan lain yaitu if statements atau case. Biasanya select digunakan untuk membuat daftar menu pilihan pada script. Di dalam select berisi pola–pola yang mencakup keseluruhan daftar pilihan.

Untuk lebih jelasnya, langsung bikin script-nya aja yuk.. Buka text editor favorit Anda. Lalu ketikkan baris2 berikut:

#!/bin/bash
# Script sederhana penggunaan select

GEJALA="Pusing Pilek"

select pilihan in $GEJALA; do 
   if [ "$pilihan" = "Pusing" ]; then 
      echo "Mungkin Anda belum makan, masuk angin, atau kurang piknik."
      exit
   elif [ "$pilihan" = "Pilek" ]; then 
      echo "Anda terkena flu."
      exit
   else
      echo "Tidak ada dalam pilihan!"
      exit
   fi
done
  • Variabel GEJALA memiliki 2 item, yaitu Pusing dan Pilek.
  • Variabel pilihan menyimpan pilihan dari user, yang diambil dari variabel GEJALA.
  • Jika isi dari variabel pilihan adalah Pusing, maka perintah echo “Mungkin Anda belum makan, masuk angin, atau kurang piknik.” dan perintah exit akan dieksekusi.
  • Jika isi dari variabel pilihan adalah Pilek, maka perintah echo “Anda terkena flu.” dan perintah exit akan dieksekusi.
  • Jika isi dari variabel pilihan adalah bukan Pusing maupun Pilek, maka perintah echo “Tidak ada dalam pilihan!” dan perintah exit akan dieksekusi.

Simpan file tsb dgn nama “select.sh“. Sekarang coba kita jalankan file script tsb ya.. Jangan lupa ganti dulu hak aksesnya agar bisa dieksekusi.

root@ubuntu:/home/ninkyhade# chmod +x select.sh
root@ubuntu:/home/ninkyhade# ls -l select.sh
-rwxr-xr-x 1 root root 316 Nov 23 14:34 select.sh
root@ubuntu:/home/ninkyhade# bash select.sh
1) Pusing
2) Pilek
#? 1
Mungkin Anda belum makan, masuk angin, atau kurang piknik.
root@ubuntu:/home/ninkyhade# bash select.sh
1) Pusing
2) Pilek
#? 2
Anda terkena flu.
root@ubuntu:/home/ninkyhade# bash select.sh
1) Pusing
2) Pilek
#? 3
Tidak ada dalam pilihan!
  • Menu interaktif dengan select pada contoh di atas, akan menampilkan urutan nomor menu sesuai banyaknya item yang didefinisikan di dalam variabel GEJALA.
  • Di dalam variabel GEJALA, terdapat 2 item (Pusing dan Pilek), sehingga menu yang ditampilkan juga ada 2.
  • Karakter #? menandakan user harus menginputkan nomor menu pilihannya.
  • Jika user memilih menu nomor 1 (Pusing), maka muncul tulisan Mungkin Anda belum makan, masuk angin, atau kurang piknik.
  • Jika user memilih menu nomor 2 (Pilek), maka muncul tulisan Anda terkena flu.
  • Jika pilihan user tidak ada dalam menu, misalnya memilih menu nomor 3, 4, 5, dst. maka muncul tulisan Tidak ada dalam pilihan!

Gimana? Sampai di sini udah paham penggunaan select kan? Insya Allah, bisa ya.. 🙂 Sip, sip..!

OK, sekian dulu.. Smoga bermanfaat ya.. Insya Allah ketemu lagi di postingan selanjutnya..

SUMBER

  • Modul Praktikum Sistem Operasi – Lab. Sisjarkom Teknik Informatika UII Yogyakarta

Bash Programming: Menu Interaktif dengan Case

Hellooow, jumpa lagi setelah sekian lama gak apdet blog yg ini. Harap maklum yak, soalnya kmren2 sibuk sm si blog yg 1-nya lagi.. Habis diganti skin-nya gitu, terus ditambah2in postingan. Hehehhe..

Pada postingan sebelumnya, saya sudah membahas mengenai penggunaan instruksi percabangan if statements. Ada if then, if then else, if then elif, dan nested if beserta contoh script-nya masing2. Nah, di postingan kali ini, saya akan mencoba membahas tentang penggunaan “Case” dalam Bash programming, untuk pembuatan menu interaktif.

Seperti apakah penggunaan case itu? Yuk mari, sama2 kita simak.. 🙂

Konstruksi case digunakan untuk menyederhanakan pemakaian if statements yang berantai atau kompleks, agar kondisi dapat dikelompokkan secara logis, serta lebih mudah & jelas dalam penulisannya.

Sintaks dari case adalah sbb:

case variable in
   match1)
      instruction 1.1
      instruction 1.2
      ...
      ;;
   match2)
      instruction 2.1
      instruction 2.2
      ...
      ;;
   matchn)
      instruction n.1
      instruction n.2
      ...
      ;;
   *)
      instruction *.1
      instruction *.2
      ...
      ;;
esac
  • variable adalah nilai yang akan dibandingkan dengan match1 sampai matchn.
  • Misalkan jika nilai dari variable sama dengan nilai match1, maka sistem akan mengeksekusi instruction 1.1, instruction 1.2,  dst.
  • Setiap kelompok instuction diakhiri dengan tanda ;;
  • *) berisi instruction yang dijalankan jika dari match1 sampai matchn tidak ada yang bernilai true.
  • Case diakhiri dengan perintah esac.

Bingung? Daripada bingung2 bengong kayak sapi ompong, langsung bikin script-nya aja yuk.. Seperti biasa, buka text editor favorit Anda. Lalu ketikkan baris2 berikut:

#!/bin/bash
# Script sederhana penggunaan case

echo "Tolong, saya amnesia."
echo "1. Siapakah saya?"
echo "2. Di manakah saya?"
echo "3. Tanggal berapakah sekarang?"

read -p "Masukan pilihan (1-3): " pil

case $pil in 
   1)
       echo "Anda adalah `whoami`"
       ;;
2) 
       echo "Anda berada di direktori `pwd`"
       ;;
3)
       echo "Sekarang tanggal `date`"
       ;;
*)
       echo "Angka yang Anda masukkan tidak ada dalam pilihan."
       ;;
esac
  • Pertama kali sistem akan membaca input dari user dan menyimpannya dalam variabel pil. Kemudian variabel pil dibandingkan.
  • Jika isi dari variabel pil adalah 1, maka perintah echo “Anda adalah `whoami`” akan dieksekusi.
  • Jika isi dari variabel pil adalah 2, maka perintah echo “Anda berada di direktori `pwd`” akan dieksekusi.
  • Jika isi dari variabel pil adalah 3, maka perintah echo “Sekarang tanggal `date`” akan dieksekusi.
  • Jika isi dari variabel pil adalah selain 1, 2, dan 3, maka perintah echo “Angka yang Anda masukkan tidak ada dalam pilihan.” akan dieksekusi.

Simpan file tsb dgn nama “case.sh“. Sekarang coba kita jalankan file script tsb ya.. Jangan lupa ganti dulu hak aksesnya agar bisa dieksekusi.

root@ubuntu:/home/ninkyhade# chmod +x case.sh
root@ubuntu:/home/ninkyhade# ls -l case.sh
-rwxr-xr-x 1 root root 428 Nov 16 22:24 case.sh
root@ubuntu:/home/ninkyhade# bash case.sh
Tolong, saya amnesia.
1. Siapakah saya?
2. Di manakah saya?
3. Tanggal berapakah sekarang?
Masukan pilihan (1-3): 1
Anda adalah root
root@ubuntu:/home/ninkyhade# bash case.sh
Tolong, saya amnesia.
1. Siapakah saya?
2. Di manakah saya?
3. Tanggal berapakah sekarang?
Masukan pilihan (1-3): 2
Anda berada di direktori /home/ninkyhade
root@ubuntu:/home/ninkyhade# bash case.sh
Tolong, saya amnesia.
1. Siapakah saya?
2. Di manakah saya?
3. Tanggal berapakah sekarang?
Masukan pilihan (1-3): 3
Sekarang tanggal Thu Nov 16 22:36:37 PST 2017
root@ubuntu:/home/ninkyhade# bash case.sh
Tolong, saya amnesia.
1. Siapakah saya?
2. Di manakah saya?
3. Tanggal berapakah sekarang?
Masukan pilihan (1-3): 4
Angka yang Anda masukkan tidak ada dalam pilihan.

Lihat perbedaannya ketika user menginputkan angka 1, 2, 3, dan 4. Gimana? Udah bisa kan? Insya Allah, si case ini gampang kog dipahaminya..

Sekian dulu ya.. Smoga bermanfaat. Insya Allah disambung lagi di postingan selanjutnya..

SUMBER

  • Modul Praktikum Sistem Operasi – Lab. Sisjarkom Teknik Informatika UII Yogyakarta

Bash Programming: If Statements

Haaaiiiii.. Kita ketemu lagi di kesempatan kali ini.. Masih lanjutan dari postingan kemaren tentang dasar2 Bash programming, dan sesuai janji saya di postingan tsb kalo di postingan kali ini kita akan bahas mengenai “If Statements“. Sudah siap? Yukkk mareeeee…

If statements adalah suatu pernyataan di mana jika kondisi sesuai yg ditentukan, maka akan dilakukan action2 tertentu. Struktur atau sintaks if statements secara umum dapat dijabarkan sbb:

if [ condition ]; then
   ...
fi

Perhatikan sintaks if statements di atas pada kondisi yg dijabarkan setelah if. Gunakan tanda kurung siku buka [ diikuti spasi, setelahnya jabarkan kondisi (condition) diikuti kembali oleh spasi dan tanda kurung siku tutup ]. If statements ditutup dengan fi.

Lanjut ya.. Dalam postingan kali ini, ada beberapa sub pembahasan mengenai if statements. Sub-sub pembahasan if statements tsb adalah sbb:

  1. If Then
  2. If Then Else
  3. If Then Elif
  4. Nested If

 

1. IF THEN

Sesuai dgn sintaks yg telah dijabarkan di atas. Tanpa berlama2, mari simak contohnya. Seperti biasa, buka text editor favorit, kemudian ketikkan baris2 berikut:

#!/bin/bash
# Script sederhana penggunaan if then

password=mappesona
read -p "Masukkan password Anda: " input

if [ $input = $password ]; then
   echo "Password benar!"
fi
  • Variabel password berisi string mappesona. *narsis bgt yak? 😛*
  • Terdapat menu interaktif untuk user berupa pertanyaan mengenai password. Inputan password dari user disimpan dalam variabel input.
  • Kondisi if yg dijabarkan dalam script di atas adalah memperbandingkan variabel input yg diisikan oleh user dengan variabel password yg berisi string mappesona.
  • Apabila variabel input sama dengan variabel password, maka di layar akan muncul tulisan Password benar!

Simpan file tsb dgn nama “ifthen.sh“. Sekarang coba kita jalankan file script tsb ya.. Jangan lupa ganti dulu hak aksesnya agar bisa dieksekusi.

root@ubuntu:/home/ninkyhade# chmod +x ifthen.sh
root@ubuntu:/home/ninkyhade# ls -l ifthen.sh
-rwxr-xr-x 1 root root 182 Nov 5 15:16 ifthen.sh
root@ubuntu:/home/ninkyhade# bash ifthen.sh
Masukkan password Anda: mappesona
Password benar!

Nah, apa yg terjadi kalo input dari user tidak sesuai dengan variabel password yg berisi string mappesona? Mari kita lihat..

root@ubuntu:/home/ninkyhade# bash ifthen.sh
Masukkan password Anda: syalalalala
root@ubuntu:/home/ninkyhade#

Jedeeeeng.. Tak muncul apa-apa lhaaaaa.. 😀 Malah langsung muncul prompt root@ubuntu:/home/ninkyhade# Kog bisa? Ya iyalah, kan nggak ada instruksi harus ngapain kalo kondisi variabel input tidak sama dengan variabel password. Sampe sini jelas ya?

Terus kalo mau nambahin instruksi biar klo inputannya salah nanti di layar muncul warning, gimana? Gampaaang.. Itu bisa diatur.. Ayok, tulis script lagi pake..

 

2. IF THEN ELSE

#!/bin/bash
# Script sederhana penggunaan if then else

password=mappesona
read -p "Masukkan password Anda: " input

if [ $input = $password ]; then
        echo "Password benar!"
else
        echo "Password salah! Coba lagi yaaa.."
fi
  • Script-nya sama kayak yg ifthen.sh, tapi…
  • Ada tambahan statement else.
  • Else berisi action yg akan dijalankan apabila kondisi tidak sesuai dgn yg dijabarkan pada kondisi if, dalam hal ini jika variabel input tidak sama dengan variabel password.

Simpan file tsb dgn nama “ifthenelse.sh“. Ganti hak aksesnya dan coba kita jalankan file script tsb..

root@ubuntu:/home/ninkyhade# chmod +x ifthenelse.sh
root@ubuntu:/home/ninkyhade# ls -l ifthenelse.sh
-rwxr-xr-x 1 root root 227 Nov 5 15:33 ifthenelse.sh
root@ubuntu:/home/ninkyhade# bash ifthenelse.sh
Masukkan password Anda: syubidubidu
Password salah! Coba lagi yaaa..

Gimana? Udah dong kan? 😀 Eiits… Masih ada lagi niiih variasi dari if statements, yaitu..

 

3. IF THEN ELIF

Apa itu if then elif? If then elif digunakan jika ada lebih dari 2 kondisi yg membutuhkan action. Daripada bingung2, yuk kita simak contohnya.. Seperti biasa, kita tulis script lagi pake text editor favorit.. Ketikkan baris2 berikut..

#!/bin/bash
# Script sederhana penggunaan if then elif

read -p "Masukkan bilangan pertama: " A
read -p "Masukkan bilangan kedua: " B

if [ "$A" –gt "$B" ]; then
   echo "Bilangan A lebih besar dari bilangan B"
elif [ "$A" -eq "$B" ]; then
   echo "Bilangan A sama dengan bilangan B"
else
   echo "Bilangan A lebih kecil dari bilangan B"
fi
  • Lho kog pemanggilan variabel di dalem kondisi if pake tanda petik ganda? Iyaaa.. Jadi tadi udah nyoba kalo gak pake tanda petik ganda malah error. Kenapa?
  • Kalo isi variabel berupa angka atau bilangan (integer), maka pemanggilan variabel di dalam kondisi if menggunakan tanda petik ganda.
  • Jadi si Bash ini akan menganggap isi variabel by default adalah string. Dengan kita menggunakan tanda petik ganda, maka isi variabel yg berupa integer dapat diperlakukan sebagaimana mestinya 🙂

NOTE:

Tapi lebih amannya sih, pemanggilan variabel (baik itu string maupun integer) di dalam kondisi if dilakukan dengan menggunakan tanda petik ganda.

Habis ini saya pake tanda petik ganda terus aja ya, untuk manggil variabel di dalam kondisi 😀

Simpan file tsb dgn nama “ifthenelif.sh“. Ganti hak aksesnya dan coba kita jalankan file script tsb.

root@ubuntu:/home/ninkyhade# chmod +x ifthenelif.sh
root@ubuntu:/home/ninkyhade# ls -l ifthenelif.sh
-rwxr-xr-x 1 root root 340 Nov 5 16:24 ifthenelif.sh
root@ubuntu:/home/ninkyhade# bash ifthenelif.sh
Masukkan bilangan pertama: 5
Masukkan bilangan kedua: 3
Bilangan A lebih besar dari bilangan B
root@ubuntu:/home/ninkyhade# bash ifthenelif.sh
Masukkan bilangan pertama: 3
Masukkan bilangan kedua: 3
Bilangan A sama dengan bilangan B
root@ubuntu:/home/ninkyhade# bash ifthenelif.sh
Masukkan bilangan pertama: 3
Masukkan bilangan kedua: 5
Bilangan A lebih kecil dari bilangan B
  • Bilangan pertama disimpan sebagai variabel A. Bilangan kedua disimpan sebagai variabel B.
  • Pada percobaan pertama, variabel A = 5, sedangkan variabel B = 3, maka memenuhi kondisi if yg pertama, sehingga muncul pesan Bilangan A lebih besar dari bilangan B.
  • Pada percobaan kedua, variabel A = 3, sedangkan variabel B = 3, maka memenuhi kondisi if yg kedua, sehingga muncul pesan Bilangan A sama dengan bilangan B.
  • Pada percobaan ketiga, variabel A = 3, sedangkan variabel B = 5, maka tidak memenuhi kondisi if baik yg pertama maupun yg kedua, sehingga muncul pesan Bilangan A lebih kecil dari bilangan B.

Gimana? Puyeng ya? Jangan khawatiiiir.. Masih ada lagi kog yg mau dibahas, yaituu…

 

4. NESTED IF

Atau if di dalam if. Kayak apa itu? Ada if di dalam if? Adaaa.. Bisa diatuuur.. 😀 Langsung aja kita simak contohnya ya.. Ketikkan baris2 berikut menggunakan text editor favorit Anda..

#!/bin/bash
# Script sederhana penggunaan nested if

read -p "Masukkan bilangan pertama: " A
read -p "Masukkan bilangan kedua: " B

if [ "$A" –gt "$B" ]; then
   echo "Bilangan A lebih besar dari bilangan B"
   if [ "$A" = "5" ]; then
      echo "Bilangan A adalah angka 5"
   else
      echo "Bilangan A bukan angka 5"
   fi
elif [ "$A" -eq "$B" ]; then
   echo "Bilangan A sama dengan bilangan B"
else
   echo "Bilangan A lebih kecil dari bilangan B"
fi
  • Baris2 berwarna merah menandakan nested if, yg akan dieksekusi jika variabel A > variabel B.
  • Jika memenuhi kondisi di mana variabel A > variabel B, maka akan muncul pesan Bilangan A lebih besar dari bilangan B. Kemudian kondisinya diperbandingkan kembali.
  • Jika variabel A berisi angka 5, maka akan muncul pesan Bilangan A adalah angka 5.
  • Jika variabel A berisi angka selain 5, maka akan muncul pesan Bilangan A bukan angka 5.

Simpan file tsb dgn nama “nestedif.sh“. Ganti hak aksesnya dan coba kita jalankan file script tsb.

root@ubuntu:/home/ninkyhade# chmod +x nestedif.sh
root@ubuntu:/home/ninkyhade# ls -l nestedif.sh
-rwxr-xr-x 1 root root 436 Nov 6 00:26 nestedif.sh
root@ubuntu:/home/ninkyhade# bash nestedif.sh
Masukkan bilangan pertama: 5
Masukkan bilangan kedua: 3
Bilangan A lebih besar dari bilangan B
Bilangan A adalah angka 5
root@ubuntu:/home/ninkyhade# bash nestedif.sh
Masukkan bilangan pertama: 4
Masukkan bilangan kedua: 3
Bilangan A lebih besar dari bilangan B
Bilangan A bukan angka 5

Paham ya…? *kedip2* Smoga apa yg dibahas ini gak bikin Anda2 semua jadi  Hehhehe..

Sekian dulu pembahasan if statements dalam Bash programming.. Insya Allah dilanjut lagi ya di kesempatan mendatang.. Tetap smangat belajar Bash programming-nya 😀

Smoga bermanfaat.. Sampai jumpa lagi Insya Allah..

SUMBER

 

Dasar-dasar Bash Programming (3)

Hey hey hey.. Kita ketemu lagi di mappesona.me. Gimana kabarnya nih? Maaf ya, kalo minggu kemaren postingannya vakum gegara kecantol sama K-drama yg panjangnya 50 episode *godaan memang!!!*.. 

Minggu ini kagak boleh vakum nulis lagi.. Eheheheh..

OK, di postingan sebelum2nya, saya mengangkat tema mengenai “Bash Programming“. Sedangkan yg dibahas adalah dasar2 pemrogramannya, di antaranya adalah pengenalan Bash & contoh script sederhana serta variabel & parameter. Nah, di postingan kali ini saya masih akan membahas dasar2 pemrogramannya. Duuuh panjang bgt yak dasar2nya, gak slese2, macem mata kuliah Kalkulus 1, Kalkulus 2, Kalkulus Lanjut aja.. Hehehe.. Kan biar makin banyak yg bisa dipelajarin, tul gak? 

OK, lanjuuuutt.. Di postingan kali ini yg bakal dibahas adalah sbb:

  1. Input
  2. Operator

Apa sajakah ituuuu…??? Yuk, kita bahas satu persatu 🙂

 

1. INPUT

Input ini digunakan untuk membuat menu interaktif yang melibatkan pengguna (user). Menu interaktif? Iya.. Menu interaktif. Jadi si user nanti akan memberikan inputan ke shell atas apa yang akan ditanyakan oleh program/script-nya. Perintah yang digunakan bernama read. Biar gak bingung en bengong, langsung aja ya saya kasih contoh.. 🙂

#!/bin/bash
# Script sederhana untuk menu interaktif menggunakan input dari user

read -p "Siapa nama Anda? " nama
read -p "Di mana alamat Anda? " alamat
echo "Salam kenal, $nama di $alamat."
  • Perhatikan opsi yang digunakan pada perintah read di atas. Opsi -p digunakan agar user dapat mengetikkan inputan/jawaban langsung di sebelah pertanyaannya (dalam 1 baris).
  • Dalam script di atas juga terdapat 2 variabel, yaitu “nama” dan “alamat“, yang cara pemanggilannya menggunakan tanda “$“.

Simpan file tsb dgn nama “input.sh“. Sekarang coba kita jalankan file script tsb ya.. Jangan lupa ganti dulu hak aksesnya agar bisa dieksekusi.

root@ubuntu:/home/ninkyhade# chmod +x input.sh
root@ubuntu:/home/ninkyhade# ls -l input.sh
-rwxr-xr-x 1 root root 191 Oct 29 01:01 input.sh
root@ubuntu:/home/ninkyhade# bash input.sh
Siapa nama Anda? Paul Scholes
Di mana alamat Anda? Manchester
Salam kenal, Paul Scholes di Manchester.
  • Paul Scholes dan Manchester merupakan inputan dari user.
  • Paul Scholes dibaca sebagai variabel “nama“.
  • Manchester dibaca sebagai variabel “alamat“.

Nah, sekarang udah paham kan mengenai penggunaan input? 😀 Kita lanjut ke pembahasan mengenai operator ya…

 

2. OPERATOR

Yak, sampai juga di pembahasan operator ini.. Ada beberapa jenis operator yg dapat digunakan dalam Bash programming, seperti operator aritmatika, operator perbandingan, dan operator logika. Yuk kita bahas 1 per 1 😉

  • Operator Aritmatika

Operator aritmatika digunakan untuk melakukan perhitungan aritmatik, seperti penjumlahan, pengurangan, endebre endebre.. 😀 Ini dia daftarnya..

[table id=8 /]

Nah.. Kita coba bikin di dalam script ya.. Seperti biasa, buka text editor favorit, terus ketikkan script sbb:

#!/bin/bash
# Contoh script sederhana penggunaan operator aritmatika

angka=5
echo 'expr $angka+1'
echo "expr $angka+1"
echo `expr $angka+1`
echo `expr $angka + 1`
  • Pada script di atas, kita set variabel “angka” = 5.
  • expr adalah perintah untuk melakukan operasi artimatika dan memperlihatkan hasilnya langsung di layar.
  • Script di atas juga digunakan untuk mengetahui perbedaan penggunaan tanda petik dalam Bash programming.
  • Perhatikan spasi ya..

Simpan file dengan nama “op-matik.sh“. Sekarang coba kita jalankan file script tsb ya.. Jangan lupa ganti dulu hak aksesnya agar bisa dieksekusi.

root@ubuntu:/home/ninkyhade# chmod +x op-matik.sh
root@ubuntu:/home/ninkyhade# ls -l op-matik.sh
-rwxr-xr-x 1 root root 165 Oct 31 17:04 op-matik.sh
root@ubuntu:/home/ninkyhade# bash op-matik.sh
expr $angka+1
expr 5+1
5+1
6
  • echo ‘expr $angka+1’    –> tanda petik tunggal, output: expr $angka+1
  • echo “expr $angka+1”   –> tanda petik ganda, output: expr 5+1
  • echo `expr $angka+1`   –> tanda petik balik, output: 5+1
  • echo `expr $angka + 1` –> tanda petik balik dan spasi, output: 6

Udah paham yah kombinasi penggunaan operator aritmatika, tanda petik, dan spasi.. Kita lanjut lagi ke..

  • Operator Perbandingan

Jika akan memperbandingkan 2 bilangan, maka digunakanlah operator perbandingan. Apa sajakah? Ini, monggo disimak.. 🙂

[table id=9 /]

Terus gimana cara pakenya? Biasanya digunakan dalam kondisi if … then … Apa itu if then? If then merupakan instruksi percabangan, misalnya jika kondisi benar maka dilakukan action A, dst. dst. Contohnya sbb ya..

A=5
B=3
if [ "$A" –gt "$B" ]; then
   echo "Benar!"
fi
  • Operator Logika

Penggunaannya mirip operator perbandingan, biasanya pada kondisi if … then …

[table id=10 /]

Contohnya sbb ya..

A=5
B=3
if [ "$A" -eq 5 –a "$B" -eq 3 ]; then
   echo "Benar! Variabel A=5 dan Variabel B=3"
fi

If then ini insya Allah bisa dibahas dalam postingan selanjutnya 🙂

Baiklaah.. sampai di sini dulu jumpa kita, karena saya harus masak bwt sarapan 😀 Smoga bermanfaat.. C u soon ya insya Allah.. 🙂

 

SUMBER

Dasar-dasar Bash Programming (2)

Heyhoooo.. Jumpa lagiii.. Jumpa Maissy kembaliiii.. *Dih, ketahuan tuanya.. Yg Gen 90-an pasti tau 😛* Eheheheh.. Ketemu lagi di blog ini, yg dalam postingan kali ini masih mengangkat tema tentang “Bash Programming“. Kalo di postingan sebelumnya yg dibahas adalah seputar perkenalan dgn Bash programming, maka postingan kali ini merupakan lanjutannya, yaitu pembahasan tentang variabel & parameter.

Di bagian akhir postingan yg lalu kan udah dicontohin tuh menulis script sederhana yg sangat FAMOUS di dunia persilatan pemrograman, yaitu scriptHello, World!“. Karena kesederhanaannya itu, dia bs hidup tenang dan damai.. *Ini apaaa siiihh?* Pokoknya, disebut sederhana karena nggak melibatkan tetek bengek macem variabel, operator, iterasi, menu interaktif, endebre endebre..

Oh nooooo.. Peyek kacangkuuu,, bertebaran di atas keyboard 🙁 *Nulisnya emg masih sambil ngemil peyek kacang* Hiks.. Bentar, ane bersihin dulu yaaa…

Fast forward…………………………….

OK, udah.. Fiuh.. Maaf pembaca, terjadi interupsi tadi. Ya intinya di postingan kali ini yg bakal dibahas adalah sbb:

  1. Variabel
  2. Parameter

Langsung aja yaaa… Yuk, kita bahas satu persatu

 

1. VARIABEL

Variabel bertugas untuk menyimpan data sementara yg sewaktu2 dapat dianggil. Kalo setting variabel-nya di CLI, maka variabel tsb dapat dipanggil kalo CLI window-nya (terminal) belum ditutup atau OS-nya belum kena reboot 😀 Tapi, klo setting variabel-nya langsung di dalam file script yg udh di-save, terminalnya ditutup atau OS reboot pun tak masalah. Bingung? Yuk, kita simak dulu contohnya 🙂

  • Contoh variabel yg langsung diketikkan di CLI.
root@ubuntu:/home/ninkyhade# nama=ninkyhade
root@ubuntu:/home/ninkyhade# lokasi="di mana aja yg penting hepi"
root@ubuntu:/home/ninkyhade# echo $nama $lokasi
ninkyhade di mana aja yg penting hepi
  • Format penulisan –> nama_variabel=isi_variabel
  • Penulisan nama_variabel harus diawali dgn huruf, bersifat case sensitive (huruf besar & kecil dibedakan), dan tidak ada spasi.
  • Antara nama_variabel, tanda sama dengan (=), dan isi_variabel juga tidak ada spasi.
  • Untuk isi_variabel yg terdiri lebih dari 1 kata, gunakan tanda petik.
  • Untuk pemanggilan variabel, gunakan tanda $ sehingga penulisannya menjadi $nama_variabel

Sekarang kalo nama di atas mau saya ganti jadi “belalang tempur” gimana? Yuk, kita coba..

root@ubuntu:/home/ninkyhade# nama="belalang tempur"
root@ubuntu:/home/ninkyhade# echo $nama $lokasi
belalang tempur di mana aja yg penting hepi
  • Lho kog, nama ninkyhade jd ilang dan berganti belalang tempur? Ya jelang doss, kan variabel-nya sama, yaitu variabel nama. Oleh karena belalang tempur didefinisikan dalam variabel yg sama dgn ninkyhade, dan didefinisikan setelah ninkyhade, jadi si ninkyhade ketimpa sama belalang tempur. Jelas ya? 🙂
  • Nah, terus tiba2 terminalnya ditutup ato lebih parahnya misal kena reboot OS-nya, maka variabel nama dan lokasi tidak akan ditemukan karena penyimpanan variabel yg diketikkan langsung di CLI sifatnya tidak permanen.
  • Contoh variabel dalam file script.
#!/bin/bash
# Contoh penggunaan variabel dalam file script

nama="belalang tempur"
lokasi="di mana aja yg penting hepi"
echo $nama $lokasi

Simpan file tsb dgn nama “variabel.sh“. Sekarang coba kita jalankan file script tsb ya.. Jangan lupa ganti dulu hak aksesnya agar bisa dieksekusi.

root@ubuntu:/home/ninkyhade# chmod +x variabel.sh
root@ubuntu:/home/ninkyhade# ls -l variabel.sh
-rwxr-xr-x 1 root root 138 Oct 20 15:42 variabel.sh
root@ubuntu:/home/ninkyhade# bash variabel.sh
belalang tempur di mana aja yg penting hepi

Kalopun terminalnya ditutup ato OS-nya kena reboot, variabelnya akan aman karena tersimpan di dalam file. Ketika file script tsb dijalankan, maka variabel akan ikut didefinisikan.

Variabel jg bisa digabung dan bisa juga berisi perintah lhooo.. Mari kita simak..

  • Contoh variabel gabungan.
root@ubuntu:/home/ninkyhade# nama="belalang tempur"
root@ubuntu:/home/ninkyhade# spasi=" "
root@ubuntu:/home/ninkyhade# lokasi="di mana aja yg penting hepi"
root@ubuntu:/home/ninkyhade# gabungan=$nama$spasi$lokasi
root@ubuntu:/home/ninkyhade# echo $gabungan
belalang tempur di mana aja yg penting hepi
  • Contoh variabel yg berisi perintah.
root@ubuntu:/home/ninkyhade# lihat_dir="ls -l"
root@ubuntu:/home/ninkyhade# $lihat_dir
total 28180
-rwxr-xr-x 1 root root 33 Oct 18 21:35 hello.sh
-rw-r--r-- 1 root root 8183815 Sep 19 14:21 latest.tar.gz
-rw-r--r-- 1 root root 8912693 Sep 19 14:21 latest.zip
-rwxr-xr-x 1 root root 2105 Sep 27 22:21 product-image.php
-rwxr-xr-x 1 root root 138 Oct 20 15:42 variabel.sh

Gimana? Asik kan? Belum bosen to? Boleh sambil nyemil2 lhoo.. Kebetulan ada martabak di atas meja 😛 Kita lanjut lagi ke pembahasan mengenai parameter yaaa…

 

2. PARAMETER

Ketika kita mengetikkan perintah pada CLI, misalnya cp file1 file2, maka file1 and file2 adalah argumen dari perintah cp (copy). file1 merupakan parameter ke-1 ($1) yg mewakili argumen pertama, dan file2 merupakan parameter ke-2 ($2) yg mewakili argumen kedua, begitu seterusnya. Parameter ini ($1, $2, dst.) udah otomatis tersedia di sistem, jadi kita tinggal pake aja.. Yuk, kita buat contohnya ke dalam file script 😉

#!/bin/bash
# Script sederhana untuk copy file menggunakan parameter

cp $1 $2
echo "meng-copy-kan file $1 ke $2"
ls -l $2

Simpan file tsb dgn nama “parameter.sh” kemudian jalankan ya..

root@ubuntu:/home/ninkyhade# chmod +x parameter.sh
root@ubuntu:/home/ninkyhade# ls -l parameter.sh
-rwxr-xr-x 1 root root 119 Oct 20 16:57 parameter.sh
root@ubuntu:/home/ninkyhade# bash parameter.sh variabel.sh variabelcopy.sh
meng-copy-kan file variabel.sh ke variabelcopy.sh
-rwxr-xr-x 1 root root 138 Oct 20 16:59 variabelcopy.sh

Nah, isi file script-nya tadi kan perintah untuk copy file, yaitu cp $1 $2. Pas file script tsb dijalankan pake perintah bash parameter.sh, di belakangnya kita kasih argumen berupa nama file yg akan di-copy-kan ($1) dan nama file hasil copy-an ($2). Sehingga, perintah lengkapnya menjadi bash parameter.sh variabel.sh variabelcopy.sh. Sampe sini paham kan gunanya parameter?

OK, lanjut gaaan.. Kira2 ada lagi nggak parameter selain $1 dan $2 yaaa? Sekarang kita cek aja, emang ada parameter apalagi selain kedua parameter yg udah disebut di atas. Seperti biasa, kita coba ke dalam file script ya.. 🙂

#!/bin/bash
echo "Anda menjalankan program $0"
echo "Parameter pertama adalah $1"
echo "Parameter kedua adalah $2"
echo "Parameter ketiga adalah $3"
echo "Anda memasukkan parameter sebanyak $#"
echo "Parameter yang Anda masukkan adalah $*"
echo "Proses berjalan dengan PID $$"

Simpan file dgn nama “parameterinfo.sh“. Dan coba jalankan seperti berikut..

root@ubuntu:/home/ninkyhade# bash parameterinfo.sh
root@ubuntu:/home/ninkyhade# bash parameterinfo.sh satu
root@ubuntu:/home/ninkyhade# bash parameterinfo.sh satu dua
root@ubuntu:/home/ninkyhade# bash parameterinfo.sh satu dua tiga

Hayoooo.. Apa bedanya perintah2 tsb?? Bisa mengamati hasilnya kan? Saya kasi liat hasilnya ya, tapi langsung aja ke hasil dari perintah terakhir yg bash parameterinfo.sh satu dua tiga.

root@ubuntu:/home/ninkyhade# bash parameterinfo.sh satu dua tiga
Anda menjalankan program parameterinfo.sh
Parameter pertama adalah satu
Parameter kedua adalah dua
Parameter ketiga adalah tiga
Anda memasukkan parameter sebanyak 3
Parameter yang Anda masukkan adalah satu dua tiga
Proses berjalan dengan PID 2998

Dan berikut adalah keterangannya:

  • $0 = parameterinfo.sh –> biasanya menunjukkan nama program
  • $1 = satu
  • $2 = dua
  • $3 = tiga
  • $# = 3 –> menunjukkan banyaknya parameter yg didefinisikan
  • $* = satu dua tiga –> menunjukkan nama2 parameter
  • $$ = 2998 –> menunjukkan nomor identifikasi proses (PID)

Tu kan, parameter ternyata banyak jg ragamnya.. Smoga dgn info ini jd pada tau dan syukur2 paham ya..

Waaaaaah.. Ternyata tulisannya udah panjang yak.. 😀 Padahal masih mau mbahas tentang Input dan Operator. Tapi kayaknya dilanjutin aja insya Allah di postingan selanjutnya.. OK, semoga bermanfaat yaaa 🙂

SUMBER

 

Dasar-dasar Bash Programming

Helloooo semuaaa, setelah di postingan sebelom2nya nulis tentang pengetahuan IT umum, maka di postingan kali ini saya pengen mengangkat tema IT yg agak spesifik, yaitu “Bash Programming” alias pemrograman Bash. Kenapa kog ngangkat tema ini? Yaaaah, bisanya ini gaaan.. Itupun gak dalem2 bgt, lg blajar juga..

Postingan ini niatnya akan dibagi ke beberapa bagian, yaitu sbb:

  1. Introduction
  2. Getting Started
  3. Contoh Script Sederhana

Bentar2.. Btw, kog ane laper ya? Brb, yaa… Mau cari cemilan dlu bwt nemenin nulis 😀

Beberapa menit kemudian…………………

Alhamdulillah.. Lumayan, nemu peyek kacang 😀 Skrg dh siap nulisnya, gak enak soalnya nulis sambil krucuk2 perutnya, bikin gak konsen 😐 OK deeeh, langsung ke bagian intro aja kali ya..

 

1. INTRODUCTION

Untuk masuk ke Bash programming, ada baiknya kenalan dengan si Bash ini. Siapa sih dia itu? Mari kita simak..

Bash merupakan shell-nya Unix, ditulis oleh Brian Fox untuk Proyek GNU sebagai pengganti sofwer gratis untuk Bourne shell. Pertama kali dirilis pada tahun 1989, Bash telah didistribusikan secara luas sebagai shell untuk login default-nya sebagian besar distribusi Linux dan Apple MacOS.

Kog nyebut2 shell? Apa pula itu?

Shell adalah istilah dalam UNIX untuk antarmuka pengguna & sistem operasi secara interaktif. Shell mengerti dan menjalankan perintah yang dimasukkan pengguna. Dalam beberapa sistem, shell disebut sebagai “command interpreter”. Shell biasanya merupakan sebuah antarmuka dengan sintaks perintah, seperti sistem operasi DOS dengan prompt “C:>”-nya dan perintah pengguna seperti “dir” dan “edit”.

Terus, di dunia ini emang cuman ada Bash doang? Ato ada shell yg lain selain Bash? Jawabannya.. Tentu aja ada. Berikut adalah beberapa jenis shell di UNIX..

  • Bourne shell – /bin/sh

Shell default-nya UNIX & banyak sistem operasi turunannya. Bourne shell ditulis oleh Stephen Richard Bourne *bukan sodaranya Jason Bourne* dan penekanannya lebih kepada bahasa script (set perintah) daripada shell interaktif.

  • C shell – /bin/csh

Didesain untuk menyediakan fitur interaktif yg kurang pada Bourne shell, seperti “job control” dan “alias“.

  • K shell – /bin/ksh

Dibuat oleh David Korn, memiliki fitur Bourne shell & C shell serta beberapa fitur tambahan lain.

  • Bash

Bash (Bourne again shell) dikembangkan oleh GNU project, berdasarkan bahasa Bourne shell dan memiliki fitur C shell & K shell.

  • tcsh

Shell default-nya sistem operasi FreeBSD & turunannya. Pada intinya, shell ini adalah C shell dgn penyelesaian baris perintah yg terprogram (programmable command-line completion), pengeditan baris perintah, dan beberapa fitur lain.

  • Zsh

Shell yg didesain untuk penggunaan interaktif dan memiliki banyak fitur dari Bash, ksh, dan tcsh, bersama dgn fitur2 baru lainnya.

Nah, di postingan kali ini akan bahas spesifik Bash saja ya..

OK, lanjut mengenai Bash.. Bash memproses perintah yg biasanya berjalan di jendela teks (CLI – Command Line Interface), di mana pengguna mengetikkan perintah yg menghasilkan action!!!

Bash - Bourne Again ShellBash juga dapat membaca dan mengeksekusi perintah di dalam sebuah file, yg disebut “script“. Seperti semua shell Unix, Bash mendukung variabel, struktur kontrol untuk pengujian kondisi dan iterasi.

Ada beberapa fitur juga yg di-copy dari shell lain, yaitu kata kunci, sintaks, dan fitur dasar lain yg didapet dari Bourne shell, terus ada perintah “history” yg didapet dari csh & ksh.

Udah lumayan lah yaaa intronya 🙂 Sekarang kita lanjut lagi ke..

 

2. GETTING STARTED

  • Untuk memulai pemrograman Bash menggunakan file script, kita gunakan yg namanya text editor, bisa vim, nano, ato pico, terserah pilihan Anda.
  • Lalu lalu lalu, buka text editor, dan ketikkan baris berikut di baris paling atas.
#!/bin/bash

Baris tsb disebut sebagai “shebang” *bukan lagunya Ricky Martin!!!* Jadi, shebang ini memberi tahu kernel mengenai jenis script yg dijalankan. Kalo shebang-nya pake /bin/bash, maka script-nya akan diinterpretasi dan dijalankan oleh Bash. Kalo pake /bin/ksh, berarti pake K shell, dst. dst…

Terus, tanda # di dalam script dipakai untuk menandai baris komentar. Jadi kata2 yg ditulis setelah tanda # akan dianggap komentar dan tidak akan dieksekusi.

  • Ada baiknya kita pelajari dulu tanda petik/tanda kutip (quote).
[table id=7 /]

3. CONTOH SCRIPT SEDERHANA

Sampe sini jelas to? Sekarang mau nyoba nulis script yg ZUPERRR FAMOUS di dunia pemrograman, dialah “Hello, World!“. Tapi sebelumnya, kita coba dulu yuk, langsung mengetikkan perintah echo “Hello, World!” di CLI-nya. Perintah echo ini digunakan untuk menampilkan string yg diinginkan di layar, dan yg digunakan adalah tanda petik tunggal (single quote) atau tanda petik ganda (double quote). Pilih salah satu yaaa, yg jelas cuman diperlukan untuk menampilkan string.

root@ubuntu:/home/ninkyhade# echo "Hello, World!"
Hello, World!

Nah, begitu perintah echo “Hello, World!” di-enter, maka output-nya akan langsung nongol di bawahnya. Sekarang, kita coba ketik perintah tsb ke dalam sebuah file script. Buka text editor favorit dan ketikkan baris2 berikut..

#!/bin/bash
# Ini komentar, gak akan dieksekusi. Liat di awal baris ada tanda pagernya ya..

echo "Hello, World!"

Kalo udah, jangan lupa di-save ya.. Kita kasih nama aja file-nya “hello.sh“. Setelah itu, kita coba jalankan script tsb yuk.. Begini caranya:

  • Ganti hak akses file “hello.sh” agar bisa dieksekusi (executable).
root@ubuntu:/home/ninkyhade# ls -l hello.sh
-rw-r--r-- 1 root root 33 Oct 18 21:35 hello.sh
root@ubuntu:/home/ninkyhade# chmod +x hello.sh
root@ubuntu:/home/ninkyhade# ls -l hello.sh
-rwxr-xr-x 1 root root 33 Oct 18 21:35 hello.sh
  • Jalankan script tsb dengan perintah berikut.
root@ubuntu:/home/ninkyhade# bash hello.sh
Hello, World!

NB: Perhatikan ya.. Karena file script “hello.sh” ada di direktori /home/ninkyhade dan dijalankan dari direktori yg sama, maka script tsb tidak perlu dijalankan dgn path lengkap. Tapi kalo script tsb dijalankan dari direktori yg berbeda, misal /root, maka perlu dijalankan dgn path lengkap, sehingga perintahnya menjadi –> bash /home/ninkyhade/hello.sh

  • Output pada layar –>> Hello, World! <<– merupakan hasil dari baris perintah echo “Hello, World!” yg ada pada file script “hello.sh”.

Sebenernya ada beberapa cara untuk menjalankan Bash script, selain menggunakan perintah “bash“, bisa juga digunakan perintah “sh“, atau “./“. Misalnya:

root@ubuntu:/home/ninkyhade# sh hello.sh
Hello, World!
root@ubuntu:/home/ninkyhade# ./hello.sh
Hello, World!

Yg membedakan adalah jika menggunakan perintah “bash” untuk menjalankan Bash script, file script tsb tidak harus diubah hak aksesnya menjadi executable. Namun jika menggunakan perintah “sh” atau “./“, maka file script tsb harus diubah hak aksesnya agar dapat dieksekusi. Saya sendiri lebih prefer untuk mengubah hak akses agar menjadi executable, karena bisa jadi bukan hanya kita saja yg akan menjalankan script tsb, tapi jg user lain yg login ke shell. Sesuaikan saja dgn kebutuhan ya.. 🙂

Naaaah.. Segitu dulu ya postingan kali ini. Takut kepanjangan, ntr bosen.. Insya Allah akan dilanjut dgn pembahasan variabel dan jenis2 operator pada Bash programming di postingan mendatang..

SUMBER

IoT: Internet of Things

IoT ato basa kerennya Internet of Things, klo diterjemahkan ke bahasa Indonesia jadi Internet untuk Serigala.. Astaghfirullah, bukan serigala, nooong.. Segala, Segalaaaa… bukan Serigala *oiya, salah tulis.. uhuk, efek terngiang2 sinetron ganteng2 serigala* Ulangi yah..

IoT atau Internet of Things klo diterjemahkan ke bahasa Indonesia jadi “Internet untuk Segala“. Aneh ya terjemahannya, segala apa? Segala rasa? Segala ada? Ehehehe.. Terus apa dong yg cucok? Itu kan udah berlaku nasional 😀 *okelah, iyaa, iyaaa..*

Seperti biasa, mengawali perjumpaan di dalam postingan, saya kasih tau latar belakangnya dulu ya, kenapa kog ngangkat tema IoT ini. Nah, kemaren kan udah nulis perihal NFC di postingan ini, di situ disinggung kalo teknologi NFC ini punya prospek yg panjang, termasuk juga akan dipake dalam perkembangan IoT di masa sekarang dan yg akan datang. Jadi postingan kali ini semacam kelanjutan dari postingan NFC kemaren.

OK, lanjuuut.. Sebelum mengenal lebih jauh atau lebih dekat, terserah preferensi pembaca.. *kan sama aja to, jauh dekat 500 perak.. emangnya angkot jadul 😀* mengenai IoT ini, kita bahas dulu pengertiannya.

PENGERTIAN IoT

Internet of ThingsIoT merupakan teknologi yg memungkinkan perangkat pintar seperti henpon, jam tangan, peralatan rumah tangga, mobil, dll. terhubung dgn perangkat lain melalui internet sehingga dapat bertukar data dan melakukan tugas yang diberikan. Dgn booming-nya teknologi perangkat pintar ini, memungkinkan untuk diaplikasikan ke dalam bermacam2 jenis industri, seperti smart city, jaringan bisnis & infrastruktur IT, perawatan kesehatan, pendidikan, manufaktur, de-es-te de-es-te.. Banyak deh pokoknya 🙂

Untuk menyederhanakannya, IoT itu konsep yg pada dasarnya menghubungkan perangkat apa aja yg punya tombol ON & OFF ke Internet dan/atau satu perangkat ke perangkat lainnya.Mulai dari henpon, mesin pembuat kopi, mesin cuci, headphone, lampu, juga berlaku untuk komponen mesin, misalnya mesin jet dari pesawat terbang atau bor dari tempat pengeboran minyak. Jadi kalo perangkatnya itu punya tombol ON/OFF, maka dimungkinkan perangkat tsb bisa menjadi bagian dari IoT.

“Thing” dalam Internet of Things juga dapat berupa manusia dgn implan monitor jantung, hewan ternak dgn transponder biochip, mobil yg punya sensor untuk ngasi tau pengemudi kalo misal bannya dh agak2 gembos, dan masih banyak lagi objek2 alami atau buatan manusia yg bisa dikasih IP address dan dilengkapi dengan kemampuan untuk transfer data lewat jaringan.

Prediksi ke depan menurut perusahaan analis Gartner, pada tahun 2020, akan ada lebih dari 26 miliar perangkat yang bisa terhubung melalui IoT ini. Banyaknya data yg dihasilkan dari sekian banyak perangkat ini tentunya memerlukan jaringan infrastruktur IT yg kuat, untuk mengumpulkan, menyimpan, dan menganalisis data agar dapat ditarik kesimpulan sehingga membantu dalam membuat keputusan bisnis ato memberikan solusi cerdas kepada penggunanya.

Nah, itulah sekelumit tentang pengertian IoT. Terus kita lanjut lagi niiih.. Apa aja manfaatnya si IoT ini ya, mengingat ternyata banyak bangeeed perangkat yg bisa tersambung lewat IoT. Yuk, kita pelajarin manfaatnya..

MANFAAT IoT

  • Seamless Communication

Kalo di-bahasa Indonesia-in jadinya komunikasi yg muluuuusss… 😀 Si IoT ini mendorong komunikasi antar perangkat atau Machine-to-Machine (M2M) yg membuat komunikasi lebih efisien daripada kalo masih pake cara manual, ato misalnya komunikasi antar perangkat tapi melalui perantara manusia.

  • Saves Money & Time

IoT dapat mengotomatisasi tugas2 yg diberikan secara berulang tanpa campur tangan manusia. Jadi mirip sama task scheduler yg ada di Windows ato cron yg ada di Linux 😀 Implementasi IoT ini dapat mengoptimasi utilisasi sumber daya perangkat dan membuat sistem monitoring berjalan dgn tepat waktu, jadi kalopun sampe ada delay ato kerusakan, bisa diketahui dan diperbaiki secepatnya. Hal inilah yg disebut sebagai penghematan biaya dan waktu.

  • Better Quality of Life

IoT memiliki aplikasi yang lebih luas di masyarakat modern karena menghemat uang, waktu, dan membantu pemanfaatan sumber daya secara optimal. Nah, kesemuanya ini menawarkan kenyamanan & kemudahan bagi orang2 sehingga meningkatkan kualitas hidup.

Terus masih inget kan tadi di awal saya sebutin NFC? NFC ini juga bs digunakan dalam implementasi IoT, seperti misalnya saat melakukan transaksi pembayaran via mobile payment yg cuman “nempelin” smartphone ke alat bayar. Hal seperti inilah yg amat sangat memudahkan pengguna perangkat dalam aktivitasnya sehari2. Mengurangi kerempongan dan kepusingan, jadi bisa punya quality of life yg lebih baik .. 

CONTOH PEMANFAATAN IoT DALAM KEHIDUPAN SEHARI-HARI

Tadi kan udah dibahas tuh manfaat IoT secara umum, nah sekarang apa aja sih contoh konkret dari pemanfaatan IoT dalam kehidupan sehari2?

  • Katakanlah misalnya Mr. X sedang dalam perjalanan bwt meeting. Kebetulan mobil Mr. X bisa memiliki akses ke kalender/agenda-nya si Mr. X hari itu, jadi dia bisa meng-kalkulasi rute terbaik untuk sampe ke tempat meeting. Bahkan kalo misalpun macet, si mobil bisa mengirim teks ke pihak lain yang memberitahukan bahwa Mr. X akan datang terlambat.
  • Jam alarm yg bisa disetel untuk membangunkan di pagi hari dan ngasi tau mesin pembuat kopi untuk mulai menyeduh kopi kesukaan.
  • Peralatan kantor yg dipakai tau kapan persediaannya hampir habis dan secara otomatis memesan ulang lebih banyak.
  • Perangkat yang digunakan di tempat kerja bisa ngasih tau kapan dan di mana si pengguna paling aktif dan produktif, terus membagi informasi itu dengan perangkat lain yg juga digunakan saat bekerja.

Sekeren itukah IoT? *he’emh..,, iyaaa…*

Tapi belum selese niiih.. Masih ada lagii.. Perhatikan gambar berikut, alangkah banyaknya implementasi IoT yg bisa dilakukan ya.. Dari smart parking, kontrol polusi udara, manajemen sampah, sampe deteksi pipa bocor.. 😀

Smart City Mengusung Konsep IoT

 

Pada skala yang lebih luas, IoT dapat diterapkan pada hal-hal seperti jaringan transportasi dan jg smart city yg bisa membantu mengurangi limbah dan meningkatkan efisiensi penggunaan energi. Kan jd bisa membantu kita memahami dan memperbaiki cara kerja dan hidup kita. Iya to?

TANTANGAN IoT

Dgn begitu banyaknya contoh pemanfaatan IoT, tantangan ke depan pun tak terhindarkan…!!!  *husssh.. hepi banged..*

Berikut adalah beberapa tantangan ato isu dari adanya IoT:

  • Keamanan

Keamanan adalah isu besar bagi IoT. Kan tadi udah disebutin tuh kalo akan ada miliaran perangkat yg tersambung, lalu apa yg bisa kita lakukan untuk memastikan informasi kita tetap aman? Kan hacker bisa aja to, menembus keamanan smart car, infrastruktur kritis, dan bahkan rumah orang. Sebagai akibatnya, sekarang beberapa perusahaan teknologi fokus pada keamanan cyber untuk menjamin privasi dan keamanan semua data ini.

  • Privasi dan berbagi data

Karena semua perangkat terhubung satu sama lain melalui internet, ada banyak informasi yang tersedia di dalamnya. Pelanggaran keamanan jaringan bisa mengekspos informasi rahasia kepada pihak yg tak bertanggung jawab. Padahal itu kan privasi ya, namanya jg rahasia 😀 Oleh karena itu, perlu untuk mengamankan jaringan IoT untuk melindungi data dari akses yang tidak sah.

  • Kompatibilitas Perangkat

Saat ini tidak ada standar atau protokol universal untuk menandai dan memantau perangkat pintar yg digunakan dalam IoT. Nah, ini yg bikin masalah kompatibilitas, yaitu kalo ada orang yg beli jenis perangkat yg sama tapi dari pabrikan yang berbeda. Namun, hal ini dapat diatasi dengan mengikuti standar umum yg diberlakukan oleh si pabrikan perangkat IoT tsb. Dgn cara ini, pengguna tidak akan menghadapi masalah kompatibilitas walopun perangkatnya beda2 merk.

  • Storage (tempat penyimpanan)

Masalah bagi perusahaan adalah sejumlah besar data yang akan dihasilkan oleh semua perangkat yg terhubung. Perusahaan perlu mencari cara untuk menyimpan, melacak, menganalisis, dan memahami sejumlah besar data yang akan dihasilkan.

  • Kompleksitas

Terkait masalah storage di atas, jangan lupa kalo IoT adalah jaringan perangkat yg kompleks yg mencoba berkomunikasi satu sama lain dengan mengirimkan informasi untuk menyelesaikan tugas tertentu. Bayangkan miliaran perangkat terhubung satu sama lain dan menghasilkan jutaan gigabyte data per jam…!!!

Untuk menyimpan, mengelola, dan mengkompilasi semua data ini adalah tugas yang amaaaat sangat tidak praktis. Dan oleh karena itu dibutuhkan infrastruktur IT yang kuat. Kesalahan atau kegagalan kecil dalam sistem semacam ini dapat menyebabkan ketidaknyamanan bagi banyak pengguna. *OK noted, boss..*

Tuh, banyak juga kan tantangan, isu, ato masalah dgn adanya si IoT ini..

TERUS SEKARANG BAIKNYA GIMANA?

Percakapan tentang IoT udah berlangsung selama beberapa tahun di seluruh dunia.. Iya lhoo, seluruh dunia.. *jadi saya ikut2an, dasar follower* 😀 Terus tadi jg udah dibahas mengenai manfaat dan tantangan apa aja yg bisa timbul dari adanya IoT ini.  Jadi, untuk saat ini, hal terbaik yang bisa kita lakukan adalah mendidik diri kita sendiri tentang apa itu IoT dan potensi dampak yg terlihat pada cara kerja dan kehidupan kita.

Dengan kemajuan teknologi, cara baru dan solusi inovatif untuk mengatasi tantangan IoT ini sedang dirancang. Internet of Things adalah teknologi generasi berikutnya yang akan mengubah cara kita hidup di masa depan..

Yah, kira2 kayak gitulah cerita tentang IoT.. Sekian dulu ya pembahasan mengenai IoT. Semoga mudah dipahami walopun panjaaang.. 😀 Dan tentunya semoga bermanfaat.. 🙂

SUMBER

NFC: Teknologi Pembayaran Masa Kini

Jangan salah ya, NFC bukan Nentucky Fried Chicken lhooo.. Tapi NFC singkatan dari Near Field Communication yg sekarang2 ini banyak dipake untuk teknologi pembayaran dgn cara tap-and-go.

Tap-and-Go

Apa pula itu tap-and-go? Itu lhooo… Istilah kerennya saat ini adalah “Mobile Payment“. Pernah liat gak, ada yg bayar2 di kasir pake smartphone yg dideketin ke alat bayar yg mirip EDC (Electronic Data Capture) yg bwt gesek kartu debit itu? Yah, kira2 mirip yg ada di gambar sebelah kiri ini. *Belakangan saya gugling, nama alatnya itu bisa disebut sbg NFC POS (Point-of-Sale) Terminal..

Kog bisa ya, cuman nge-tap smartphone ke alat tsb, lgsg bisa terbayar tagihannya? Jeng jeeeeng… Jawabannya ada pada teknologi NFC ini. Nah, di postingan kali ini, saya mau mengangkat tema tentang teknologi NFC.

Android Beam dengan NFCSebenernya 2 taun lalu pas lagi rempong2-nya nyari tema bwt tesis, kepikiran jg sih bwt ngangkat tema tentang NFC ini. Tertariknya sih gara2 dulu suka dgn fitur Android phone saya yg bisa nge-beam ato transfer data semisal foto gitu, cuman dgn mendekatkan ke sesama smartphone yg support fitur NFC ini. Waktu itu blom tau kalo NFC ternyata mendasari teknologi mobile payment. Tapi, berhubung dulu itu masih belum tau mau ngeksplor NFC di sebelah mananya, jadilah tema tesis saya brubah ke Rogue Access Point. Ehehehehe,,, malah jd ngomongin tesis sih..

OK, back to topic ya..

PENGERTIAN NFC

NFC merupakan bentuk komunikasi tanpa kontak di antara perangkat seperti smartphone atau tablet. Kog tanpa kontak sih? Gimane ceritanye?

Nah, si NFC ini bisa digunakan oleh pengguna dengan cara melambaikan *apa sih bahasa yg cocok? ngondek bgt ya kesannya.. * perangkat smartphone-nya ke perangkat lain yg juga support NFC untuk mengirimkan informasi tanpa perlu terjadi sentuhan *ato apalah itu* di antara kedua perangkat tsb. NFC ini juga bisa menghindarkan dari kerempongan setting2 koneksi antar perangkat, contohnya seperti pada setting koneksi Bluetooth.

CARA KERJA NFC

NFC ini sebenernya mirip2 sama Bluetooth dan Wi-Fi. Ketiga-tiganya digunakan untuk komunikasi nirkabel (wireless) dan pertukaran data antar perangkat digital seperti smartphone. Tapi yg membedakan NFC dgn Bluetooth dan Wi-Fi adalah, NFC memanfaatkan medan radio elektromagnetik sedangkan Bluetooth dan Wi-Fi fokus kepada transmisi radionya. NFC ini juga didesain untuk digunakan antar perangkat dalam jarak dekat, sehingga antar perangkat tsb dapat melakukan komunikasi nirkabel.

NFC merupakan cabang dari RFID (Radio Frequency Identification), teknologi identifikasi melalui gelombang radio dan sudah cukup lamaaaa digunakan, contohnya untuk scanning produk di supermarket atau pengambilan bagasi pesawat. Sedangkan NFC baru diperkenalkan pada awal tahun 2000-an dan menggunakan frekuensi RFID yg spesifik di 13.56MHz untuk komunikasi jarak dekat. Sampai hari ini, penggunaan NFC yg umum adalah untuk identifikasi kartu akses di area perkantoran. Namun belakangan, NFC juga digunakan untuk melakukan “contactless” payment alias pembayaran tanpa kontak.

Agar terjadi proses contactless payment, pengguna atau orang yg mau bayar biasanya harus mendekatkan smartphone-nya dgn perkiraan jarak kurang dari 4 cm *dih, males bgt praktek bwt ngukur2 😀 * dari NFC POS Terminal-nya. Nah, teknologi NFC berperan di sini. Ngapain sih? Ya untuk memuluskan jalannya proses pembayaran, yaitu agar si smartphone dan POS Terminal-nya bisa komunikasi bolak-balik antar sesama.

Antar perangkat harus berdekatan (near) jaraknya, makanya disebut Near Field Communication.

Kan syaratnya udah tuh, dengan jarak dekat. Terus untuk cara kerjanya sendiri gmana? Jadi gini… *pasang muka serius Perangkat yg udah disebut sebelumnya, yaitu smartphone dan POST Terminal menggunakan frekuensi 13.56MHz untuk berkomunikasi dan saling bertukar informasi yg udah ter-enkrip dalam rangka menyelesaikan proses pembayaran. Dan ini dalam itungan detik aja.. Nah, di sinilah keunggulan NFC, yaitu pada tingkat kecepatannya.

Untuk memahami cara kerjanya lebih lanjut, mari kita pelajari dulu jenis perangkat NFC:

  • Passive NFC device

NFC TagContohnya adalah NFC tag, yg memiliki informasi yg dapat dibaca oleh perangkat lain tetapi tidak dapat membaca informasinya sendiri. Jadi, perangkat lain bisa membaca infonya si NFC tag, tetapi si NFC tag cuman bisa mentransmisikan informasinya ke perangkat yg authorized. Ribet ya, intinya sih cuman bisa ngirim info aja gitu..

Contohnya adalah penggunaan student ID card bwt bayar ongkos bus dgn cara tapping kartunya ke alat pembaca kartu ID. Di sini, si kartu ID berperan sebagai passive device, yg transfer info kalo si pemegang kartu adalah salah satu siswa di sekolah X. Dan nanti si alat bacanya itu tau, terus ngecas sekolah X atas ongkos bus-nya si siswa tsb. Yah, di Indo mah belom ada kali ya sekolah yg mau mbayarin ongkos transportnya siswa.. 😀

NFC tag jenis ini bisa jg disebut sebagai unpowered tag, karena dia akan terinisiasi ketika ada perangkat NFC lain yg berdekatan dgn NFC tag tsb.

  • Active NFC device

Sementara sinar surya perlahan mulai tenggelam *yg hobi lagu oldies pasti tau* itu, active device dapat membaca informasi dan mengirimkannya. Contoh active NFC device adalah smartphone. Selain bisa membaca informasi dari NFC tag, dia jg bisa bertukar informasi dengan smartphone atau perangkat NFC lain, bahkan bisa mengganti informasi di NFC tag kalau memang dia authorized untuk melakukannya.

Keren jg ya teknologi smartphone itu *hus hus,,, lagi bahas NFC, ntar NFC-nya jealous

Back to cara kerja NFC ya…

Tadi udah disebutin klo ada passive NFC device. Nah si pasif ini bisa terinisiasi kalo ada active NFC device yg berdekatan dengannya. Kalo ada smartphone sebagai active NFC device berdekatan dgn NFC tag, maka medan elektrik di sekitarnya akan menyalakan (power up) sirkuit yg ada pada NFC tag melalui proses induksi elektromagnetik.

NFC tag tidak memiliki sumber daya (listrik) sendiri, makanya dia bergantung kepada active NFC device di dekatnya agar bisa nyala (power up).

Sedangkan pada sesama active NFC device, ketika mereka berdekatan, maka cara kerjanya adalah seperti walkie talkie yg komunikasinya bergantian. Di saat yg satu mengantarkan pesan, maka yg satu lagi hanya bisa menerima.

Kembali ke contactless payment yg tadi. Contactless payment ini mendasari adanya mobile payment masa kini. Mobile payment sendiri menggunakan aplikasi dompet digital (digital wallet). Ada 3 jenis smartphone yg memiliki aplikasi dompet digital, baik yg tersedia langsung di sistem operasinya maupun tersedia melalui software donlotan, yaitu Android, iOS, dan Windows Phone. Dompet digital keluaran ketiganya ini menggunakan teknologi NFC dalam proses pembayaran antar perangkat smartphone dan POS Terminal.

KEAMANAN NFC

Kan udah tau to, cara kerjanya NFC? Nah sekarang pertanyaannya, aman apa nggak sih klo mbayar2 pake mobile payment yg mengadopsi teknologi NFC ini?

Tenaaang.. Untuk memastikan keamanan, NFC membuat saluran yang aman (secure channel) dan menggunakan enkripsi saat mengirim informasi sensitif, seperti nomor kartu kredit. Dan pengguna pun dapat lebih melindungi data pribadi mereka dengan menggunakan perangkat lunak anti virus dan menambahkan password pada smartphone. Jadi kalopun smartphone-nya ilang ato dicolong, orang yg nemu ato si pencuri itu nggak bisa make smartphone tsb.

Kartu Magnetic StripeBerbeda dengan data pada kartu gesek yg pake magnetic-stripe (gambar sebelah kanan -> datanya statis ada di belakang kartu), data yang terlibat dalam transaksi NFC dienkripsi dan pastinya dinamis atau terus berubah. Sebagai contoh, si Apple Pay (dompet digital keluaran iOS), yang menggunakan teknologi bernama tokenization untuk melindungi detail data bank.

Begini cara kerjanya..

Setelah data kartu kredit dimasukkan ke iPhone, Apple mengirimkan rinciannya ke bank atau jaringan penerbit kartu. Bank dan jaringan kemudian mengganti data rincian bank dengan serangkaian nomor yang dihasilkan secara acak (token). Nomor acak itu dikirim kembali ke Apple, yang kemudian memprogramnya ke iPhone.

Ini berarti bahwa rincian akun di smartphone tidak dapat dikloning menjadi “sesuatu yang berharga” bagi penipu. Gimana? Aman to?

MASA DEPAN NFC

Cieee cieeeeeh… Masa depaaan.. Ehemmm.. Maksudnya di sini adalah teknologi NFC ini masih punya prospek yg panjang. Gitu lhooo…

Kog bisa? Ya karena teknologi NFC dapat memulai jalannya proses software lain (contoh: dompet digital), maka NFC akan tetap kompatibel sejalan dengan berkembangnya teknologi smartphone. Aliaaaas.. bakal kepake terus.

Apalagi sekarang dimulainya era “Internet of Things” (IoT), yg akan bergantung pada NFC untuk memulai proses komunikasi sekaligus mengurangi kompleksitas ato kerempongan bagi pengguna, dan ke depannya si NFC ini diharapkan bisa untuk mengerjakan tugas2 yg lebih WOOOW..

Sekian dulu ya.. Udh kebanyakan ngelantur 😀 Tp semoga bermanfaat.. Insya Allah besok2 ada pembahasan tentang IoT gara2 udh sempet disinggung di paragraf di atas..

Hatur nuhun..

SUMBER

Blueborne Attack

Setelah di postingan kemaren ngebahas tentang teknologi Bluetooth beserta cara kerja dan jenis2 serangan terhadapnya, maka di postingan ini saya pengen mengangkat tema tentang salah satu jenis serangan terhadap Bluetooth yg bulan lalu lagi nge-hits 😀

BlueBorne namanya.. Bukan James Bond, bukan pula Jason Bourne 😀 Apaan tuh BlueBorne? Makhluk berkulit biru macam film Avatar? Bukaaan.. Bukaaaan.. 😀 BlueBorne adalah vektor serangan yg memanfaatkan vulnerability atau celah keamanan pada Bluetooth dan menyebar melalui udara (airborne).

Masih inget kan tentang cara kerja Bluetooth di postingan sebelumnya? Ada proses yg namanya pairing agar 2 device dengan Bluetooth aktif dapat terkoneksi. Nah, si BlueBorne ini nggak butuh proses pairing buat mengambil alih device dengan Bluetooth aktif. Bahkan katanya nih, device yg Bluetooth-nya aktif walopun di-hide (hidden), tetep rentan sama si BlueBorne ini. Sungguh mengerikan!

KEMAMPUAN BLUEBORNE

Si BlueBorne ini mampu ngapain aja sih kalo udh nemu sang targetnya? Beware ya.. BlueBorne ini bisa digunakan untuk tindak kejahatan berikut:

  • Mengambil alih atau kendali perangkat target
  • Mengakses data-data dan jaringan perusahaan
  • Membobol celah keamanan jaringan melalui udara
  • Menyebarkan malware ke perangkat2 yang terinfeksi yg berada dalam jangkauannya

Selain itu, BlueBorne ini bisa juga menyerang berbagai macam sistem operasi. Di antaranya adalah:

  • Android
  • Windows
  • Linux
  • iOS

Mari kita lihat kemampuan si BlueBorne ini dalam video demo yg di-release oleh Armis Lab, perusahaan yg bergerak di bidang keamanan (security) Internet of Things (IoT) yg merupakan sebuah konsep yang bertujuan untuk memperluas manfaat dari konektivitas internet yang tersambung secara terus-menerus.

Berikut ini adalah video demonya..

DEMO

  • Serangan BlueBorne pada Android

Dalam video ini, penyerang mengambil alih gadget Android target, lalu mengakses kamera pada gadget tsb, mengambil foto kemudian mencuri foto yg baru diambil tsb dari gadget Android target. Perhatikan layar gadget yg menyala setelah penyerang berhasil mengambil alih gadget tsb.

  • Serangan BlueBorne pada Windows

Dalam video ini, penyerang memanfaatkan perangkat Bluetooth yg aktif namun ga tersambung ke mana2 alias Bluetooth-nya dinyalain aja gitu. Nah, si penyerang melancarkan aksinya agar si target tersambung dgn Bluetooth-nya si penyerang. Setelah itu, si penyerang me-redirect target untuk login ke web dgn alamat palsu-nya Ayu Ting Ting. Target tidak sadar kalo di-redirect ke web palsu, terus do’i login dgn mengisikan username & password-nya. Dan terbacalah itu username & password milik target oleh si penyerang >.<

  • Serangan BlueBorne pada Linux Smartwatch

Nah klo video demo yg ini melibatkan gadget berupa smartwatch yg juga konek ke speaker Bluetooth yg lagi muterin musik. Si penyerang mengambil alih smartwatch target, kemudian bisa ikut mendengarkan musik yg diputer di speaker. Udah gitu, penyerang juga me-reboot si smartwatch. Efeknya sih musiknya jd gak bisa didengerin kayak tadi, walopun speaker-nya masih muterin itu musik 😀

Setelah melihat bahayanya si BlueBorne ini melalui video demo di atas, alangkah baiknya kita sebagai pengguna perangkat, peduli dgn keamanan perangkat kita sendiri. Oleh karena itu, berikut akan dibahas cara2 mengamankan perangkat Bluetooth.

CARA MENGAMANKAN PERANGKAT BLUETOOTH

Ada beberapa hal yg dapat kita lakukan sebagai user, salah satunya adalah rajin2 meng-update patch terutama untuk security patch di bulan September 2017 yang melindungi perangkat dari serangan BlueBorne ini. Nah, hal lain yg bisa kita lakukan adalah sbb:

  • Matikan Bluetooth kalo gak dipake!

Ini nih yg sering kelupaan, kalo udh dipake Bluetooth-nya suka lupa dimatiin lagi. Bahaya! Kenapa perlu dimatiin? Ya biar aman dari orang iseng yg mau nargetin perangkat atau gadget Anda 😀 Karena sampe sekarang belom ada cara bagi penyerang untuk nyalain Bluetooth di gadget target. Kecuali mungkin kalo gadget Anda diambil tanpa Anda sadari terus dinyalain deh itu Bluetooth sama si penyerang.. *niat amat ya..

  • Pastikan pake lock screen yg aman.

Hayoo yg belum apply lock screen di gadget, sok atuh cepet dibikin. Bisa pake password, PIN, pattern, ato fingerprint. Jadi, gadget akan aman sampe Anda sendiri yg meng-unlock-nya.

  • Jangan sembarangan naro gadget!

Harap letakkan gadget di tempat yg aman, apalagi klo misal lagi di tempat umum. Taro gadget di kantong baju ato celana, di tas, ato misal taro di meja, tapi gak boleh lengah. Salah2 bisa ada yg ngambil dan menyalahgunakan gadget Anda.

  • Kalo misal layar gadget-nya lagi mati (off), terus tiba2 layarnya nyala, segera cek!

Biasanya sih yg bikin layar nyala adalah kalo ada notifikasi ato panggilan masuk. Tapiiii.. Ternyata si BlueBorne ini, ketika dia terkoneksi akan menyalakan layar gadget yg tadinya off. Cek di video demo ya.. 😉

  • Jangan sungkan untuk nanya ke vendor gadget Anda tentang update patch-nya klo emg belom ada.

Tanyakan baik2, harapannya sih biar si vendor ini tau kalo ada yg care sm produknya, dan membuat do’i segera mengeluarkan update security patch yg dinanti2 penggemar. Oiya, sekedar info, patch untuk BlueBorne ini sudah tersedia untuk Android versi 4.4 ke atas.

BONUS

Untuk tau apakah gadget Android Anda vulnerable terhadap si BlueBorne ini, silakan install dan jalankan apps BlueBorne Vulnerability Scanner dari Armis Lab di sini.

Baiklaah.. Sekian dulu info tentang si BlueBorne attack ini ya.. Stay safe and secure!!!

SUMBER

Teknologi Bluetooth

Teknologi Bluetooth tentunya sangat bermanfaat dalam komunikasi antar perangkat elektronik. Contohnya komunikasi antar handphone, handphone ke komputer, atau headset ke handphone. Dalam artikel kali ini, saya ingin mengangkat tema Bluetooth karena baru2 ini (sekitar awal September kemarin) ditemukan serangan baru terhadap Bluetooth.

Sebenernya lucu jg ya namanya Bluetooth? Kalau diterjemahin ke bahasa Indonesia berarti gigi biru. Apa hubungannya kog gigi biru bisa jadi teknologi penghubung antar perangkat? Mari kita simak penjelasannya.. 🙂

SEJARAH BLUETOOTH

Bluetooth merupakan teknologi nirkabel untuk bertukar data dalam jarak dekat. Seberapa dekat sih? Sedekat hatiku padamuuu.. Ish ish ish.. Umumnya sih sampe 100 meter, tapi Bluetooth versi baru kabarnya malah bisa mencapai jarak 2 kali lipat dgn kecepatan 4 kali lipat dari Bluetooth versi lama.

Bluetooth dikelola oleh organisasi bernama Bluetooth Special Interest Group (SIG) yg beranggotakan perusahaan2 yg bergerak di bidang telekomunikasi, komputer, jaringan, dan elektronik. Nah, untuk memasarkan produk Bluetooth-nya, pabrik pembuat alat2 Bluetooth harus memenuhi standar dari Bluetooth SIG ini.

Kabel RS-232

Kenal Ericsson kan? Bukan yg mantan pelatih Lazio n Timnas Inggris itu lho.. Tapi perusahaan telekomunikasi asal Swedia. Awalnya, pada tahun 1994, si Ericsson ini kepengen gantiin teknologi kabel RS-232 (yg dianggap ribet dan gampang bundet) yg biasa dipake buat komunikasi antar instrumen/perangkat dgn teknologi nirkabel berbasis Radio Frequency (RF-based). Gak lama setelah itu, Intel dan Nokia jg kepengen agar handphone dan komputer bisa terhubung menggunakan teknologi nirkabel yg RF-based. Oleh karena pabrikan perangkat komunikasinya berbeda2 tapi pengennya tetep bisa terhubung dgn teknologi nirkabel RF-based itu, maka dibutuhkan sebuah standar dan organisasi untuk mengaturnya.

Akhirnya pada bulan Desember tahun 1996, berkumpullah si Ericsson, Intel, dan Nokia di kota Lund, Swedia untuk membahas pembentukan Special Interest Group (SIG) yg berbagi minat yg sama untuk menciptakan teknologi nirkabel RF-based yg dapat menghubungkan berbagai macam perangkat elektronik walaupun berbeda vendor. Dalam pertemuan itu, seorang engineer Intel bernama Jim Kardach mengusulkan penggunaan nama Bluetooth untuk teknologi tsb.

Logo Bluetooth

Bluetooth diambil dari nama raja Denmark, Harald Blatand. Blatand dalam bahasa Inggris disebut Bluetooth. Harald Blatand-lah yg menyatukan suku2 yg berperang di Skandinavia. Konsep Bluetooth-pun demikian, yaitu menghubungkan perangkat2 elektronik seperti handphone, komputer, headset atau perangkat lain yg mendukung teknologi nirkabel. Sedangkan logonya, merupakan gabungan dari 2 huruf inisial nama Harald Blatand dalam aksara rune (aksara Jerman kuno yg digunakan oleh Denmark), yaitu Hagall (ᚼ) dan Bjarkan (ᛒ).

Bluetooth SIG resmi dibentuk pada tahun 1998, dengan beranggotakan 5 perusahaan, yaitu Ericsson, Intel, Nokia, Toshiba, dan IBM. Setahun setelahnya, launching-lah teknologi Bluetooth versi 1. Hingga saat ini, Bluetooth telah mencapai versi 5.0 dan perangkat pertama yg menggunakan Bluetooth versi 5.0 ini adalah Samsung Galaxy S8.

CARA KERJA BLUETOOTH

  • Bluetooth bekerja dgn melakukan scanning terhadap perangkat lain yang aktif Bluetooth-nya.
  • Perangkat yg aktif Bluetooth-nya tsb akan mengirimkan informasi berupa nama perangkat dan informasi teknis lainnya.
  • Ketika dua perangkat Bluetooth terkoneksi, maka terjadilah pairing. Saat pairing inilah dua perangkat Bluetooth tsb bertukar PIN atau kunci (link key).
  • Masing2 perangkat Bluetooth ini akan menyimpan link key tsb untuk proses pairing berikutnya.

SERANGAN TERHADAP BLUETOOTH

Tidak bisa dipungkiri bahwa teknologi Bluetooth sangat memudahkan dalam komunikasi antar perangkat. Namun di balik kemudahannya itu terdapat bahaya yg mengancam!!! *bacanya kayak kk Fenny Rose*

Teknologi Bluetooth pun rawan serangan. Beberapa di antaranya adalah sbb:

  • Blueprint     : Footprinting (pengumpulan informasi) terhadap perangkat Bluetooth aktif.
  • Bluesnarf     : Pengambilan data dari perangkat Bluetooth aktif seperti pesan SMS, gambar/foto, dan percakapan.
  • Bluebug       : Penyerang dapat mengambil kendali terhadap perangkat Bluetooth aktif yg menjadi target.
  • Bluejack       : Penyerang mengirimkan “kartu nama” (pesan teks) yang jika pengguna mengizinkan untuk ditambahkan ke daftar kontak mereka, memungkinkan penyerang untuk terus mengirim pesan tambahan.
  • Bluesmack   : Serangan DoS (Denial of Service) terhadap perangkat Bluetooth aktif.
  • BlueBorne    : Sebuah vektor serangan di mana penyerang dapat memanfaatkan koneksi Bluetooth untuk menembus dan mengendalikan sepenuhnya perangkat Bluetooth aktif yang ditargetkan.

Nah, serangan BlueBorne atau BlueBorne attack inilah yg baru2 ini muncul. Apa dan bagaimanakah Blueborne attack tsb? Jangan lupa stay tuned di blog ini ya… 🙂

SUMBER