Showing posts with label News. Show all posts
Showing posts with label News. Show all posts

Saturday, December 16, 2017

Perbandingan Sistem Cerdas Pada 3 Negara Asia

Kecerdasan buatan merupakan cabang salah satu bagian ilmu komputer yang membuat agar mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia, dan dalam merepresentasikan pengetahuan lebih banyak menggunakan bentuk simbol-simbol daripada bilangan dan proses informasi berdasarkan metode heuristic1 atau dengan berdasarkan sejumlah aturan.
Artificial Intelligence (AI) merupakan sub bidang pengetahuan komputer yang khusus ditujukan untuk membuat software dan hardware yang sepenuhnya bisa menirukan beberapa fungsi otak manusia.

Kecerdasan Buatan dapat dipandang dari sudut pandang, antara lain "Sudut Pandang Kecerdasan".
Kecerdasan buatan akan membuat mesin menjadi ‘cerdas’ (mampu berbuat seperti apa yang dilakukan oleh manusia).

Untuk perbandingan kali ini saya akan membandingkan 3 Negara Asia yang sudah tidak asing lagi dengan sistem cerdasnya, yaitu Indonesia, Singapura, dan Jepang.

 1. INDONESIA
Republik Indonesia (RI), biasa disebut Indonesia, adalah negara di Asia Tenggara yang dilintasi garis khatulistiwa dan berada di antara benua Asia dan Australia serta antara Samudra Pasifik dan Samudra Hindia. Indonesia adalah negara kepulauan terbesar di dunia yang terdiri dari 13.466 pulau. Nama alternatif yang biasa dipakai adalah Nusantara. Dengan populasi lebih dari 258 juta jiwa pada tahun 2016, Indonesia adalah negara berpenduduk terbesar keempat di dunia dan negara yang berpenduduk Muslim terbesar di dunia, dengan lebih dari 207 juta jiwa. Bentuk pemerintahan Indonesia adalah republik, dengan Dewan Perwakilan Rakyat, Dewan Perwakilan Daerah dan Presiden yang dipilih secara langsung.

Ibu kota negara Indonesia ialah Jakarta. Indonesia berbatasan darat dengan Malaysia di Pulau Kalimantan, dengan Papua Nugini di Pulau Papua dan dengan Timor Leste di Pulau Timor. Negara tetangga lainnya adalah Singapura, Filipina, Australia, dan wilayah persatuan Kepulauan Andaman dan Nikobar di India.
 
2. SINGAPURA
Singapura (nama resmi: Republik Singapura) adalah sebuah negara pulau di lepas ujung selatan Semenanjung Malaya, 137 kilometer (85 mi) di utara khatulistiwa di Asia Tenggara. Negara ini terpisah dari Malaysia oleh Selat Johor di utara, dan dari Kepulauan Riau, Indonesia oleh Selat Singapura di selatan. Singapura adalah pusat keuangan terdepan keempat di dunia dan sebuah kota dunia kosmopolitan yang memainkan peran penting dalam perdagangan dan keuangan internasional. Pelabuhan Singapura adalah satu dari lima pelabuhan tersibuk di dunia.

3. JEPANG
Jepang (bahasa Jepang: 日本 Nippon atau Nihon; nama resmi: 日本国 Nipponkoku atau Nihonkoku, nama harfiah: "Negara Jepang") adalah sebuah negara kepulauan di Asia Timur. Letaknya di ujung barat Samudra Pasifik, di sebelah timur Laut Jepang, dan bertetangga dengan Republik Rakyat Tiongkok, Korea, dan Rusia. Pulau-pulau paling utara berada di Laut Okhotsk, dan wilayah paling selatan berupa kelompok pulau-pulau kecil di Laut Tiongkok Timur, tepatnya di sebelah selatan Okinawa yang bertetangga dengan Taiwan.

Jepang terdiri dari 6.852 pulau yang menjadikannya sebagai negara kepulauan. Pulau-pulau utama dari utara ke selatan adalahHokkaido, Honshu (pulau terbesar), Shikoku, dan Kyushu. Sekitar 97% wilayah daratan Jepang berada di keempat pulau terbesarnya. Sebagian besar pulau di Jepang bergunung-gunung, dan sebagian di antaranya merupakan gunung berapi. Gunung tertinggi di Jepang adalah Gunung Fuji yang merupakan sebuah gunung berapi. Penduduk Jepang berjumlah 128 juta orang, dan berada di peringkat ke-10 negara berpenduduk terbanyak di dunia.


PERBANDINGAN SISTEM CERDAS DALAM BIDANG KESEHATAN

1. INDONESIA (ROBOTIC SURGERY INDONESIA)


Sekarang ini beberapa rumah sakit di Indonesia telah menerapkan sistem robotic surgery yaitu robot yang digunakan untuk membantu dalam proses pembedahan. Kemajuan teknologi dalam dunia kesehatan membawa banyak manfaat yaitu banyaknya penyakit yang dapat disembuhkan, terutama penyakit yang harus disembuhkan melalui proses pembedahan.
Operasi terbuka sekarang ini mulai dikurangi dengan ditemukannya alat-alat seperti minimal invasive laparoscopic surgery yang dapat mengurangi resiko infeksi, kehilangan banyak darah, sistem penyembuhan yang lama pasca operasi dan lain-lain. Salah satu perkembangan dalam minimally invasive untuk mendapatkan banyak keuntungan dalam proses operasi yaitu dengan menggunakan teknologi robotic surgery.

Proses pembedahan tradisional atau tanpa menggunakan robotic surgery selalu dihubungkan dengan bekas luka yang besar, resiko operasi yang lebih tinggi dan waktu pemulihan yang lama. Paradigma tersebut secara perlahan telah berkurang dengan pengenalan dan kemajuan dari minimal invasive surgery (MIS) sehingga pasien hanya akan menderita luka sayatan kecil yang mana akan membantu proses penyembuhan dengan cepat. Contoh dari prosedur MIS seperti Laparoscopy, Arthroscopy, Endoscopy dan prosedur MIS lainnya.

Sayangnya salah satu kekurangan dari MIS yaitu seorang ahli bedah akan membutuhkan waktu lama untuk memiliki kemampuan yang tinggi dalam melaksanakan proses MIS, khususnya dalam masalah patologi atau ilmu penyakit yang terkadang sangat rumit. Selain itu medan atau area pembedahan tidak dapat diatur dengan sempurna dan sudut gerakan yang terbatas disebabkan oleh keterbatasan fungsi dari alat-alat yang pada umumnya hanya memiliki dua jenis gerakan saja. Keterbatasan tersebut sering mengakibatkan proses operasi kurang optimal.

Pembedahan dengan menggunakan sistem robot tidak dapat dilakukan tanpa keterlibatan ahli bedah. Robot tersebut tidak dapat bergerak dengan sendirinya dan harus dikendalikan penuh oleh ahli bedah. Dengan kontrol dan artikulasi dari tangan dan jari dokter, tangan robot dapat bergerak dengan bebas layaknya tangan dokter yang berada di dalam rongga bedah seperti rongga perut. Meskipun ada beberapa kekurangan dalam teknik MIS, namun di tangan ahli bedah yang menguasai teknik tersebut maka manfaat yang lebih baik bisa didapatkan sehingga mengurangi resiko operasi yang sering terjadi dalam teknik operasi tradisional.

2. SINGAPURA (LAPAROSKOPI)


Teknik laparoskopi atau pembedahan minimal invasif diperkirakan menjadi tren bedah masa depan. Sekitar 70-80 persen tindakan operasi di negara-negara maju akan menggunakan teknik ini. Teknik laparoskopi kini  banyak diminati karena banyak keuntungan yang diperoleh pasien. Selain luka minimal, waktu operasi pun singkat dan masa penyembuhan pun menjadi lebih cepat.

Laparoskopi sendiri merupakan teknik bedah tanpa harus membuka dada atau perut, melainkan dilakukan lewat dua atau tiga lubang berdiameter masing-masing dua hingga 10 milimeter. Satu lubang untuk memasukkan kamera mini (endokamera), yang memindahkan gambaran bagian dalam tubuh ke layar monitor, sedangkan dua lubang lain menjadi jalan masuk peralatan bedah.

Karena lukanya minimal, pemulihan menjadi lebih cepat, mengurangi nyeri pascaoperasi, dan rawat inap jadi lebih singkat. Dari segi estetik juga menguntungkan, karena parut/bekas luka yang ditinggalkan sangat kecil, sehingga tidak mengganggu penampilan.

Teknik laparoskopi kini sudah banyak dilakukan untuk beragam kasus operasi di Singapura. Bahkan beberapa rumah sakit telah menetapkan teknik laparoskopi sebagai prosedur baku untuk beberapa jenis operasi. Teknik laparoskopi banyak paling banyak digunakan untuk pengangkatan batu dan kantung empedu, operasi usus buntu, dan pelepasan perlengketan.  Operasi itu juga digunakan untuk tumor usus, batu di saluran empedu, hernia.

 3. JEPANG (Cyberdyne Care Robotics GmbH)



Sebuah tim yang terdiri dari dokter, ahli terapi dan teknisi bekerja untuk sebuah perusahaan gabungan Jerman-Jepang 'Cyberdyne Care Robotics GmbH' di Bochum. Usai periode ujicoba di Klinik Universitas Bergmannsheil, perusahaan itu siap merilis ke pasar Eropa kaki-kaki robot yang dapat membantu pasien cacat kaki untuk berjalan.

Untuk menyebarluaskan terapi robot di Eropa, NEDA, sebuah organisasi di bawah Kementerian Ekonomi Jepang memberi sokongan berupa 24 kaki-kaki robot bernilai 2,3 juta Euro. Alat bantu bergerak yang diberi nama 'Hybrid Assistive Limb' (HAL) itu dikembangkan oleh peneliti Jepang, Yoshiyuki Sankai.


Di negeri sakura, kaki-kaki robot semacam ini sudah tersedia di 160 klinik, pusat rehabilitasi dan panti jompo. Bagi para pasien di Eropa, desain ini masih harus disesuaikan. Sekelompok pakar yang dipimpin oleh Thomas Schildhauer sepakat menggelar uji coba selama beberapa bulan untuk menyelaraskan produk teknologi tinggi ini dengan ukuran badan orang Eropa.


KESIMPULAN

Perbandingan ketiga Negara dalam bidang kesehatan tentu Negara-negara maju yang selangkah lebih baik dan maju dari Negara berkembang seperti Indonesia. Namun, di Indonesia sudah memiliki teknologi yang sudah baik dalam bidang kesehatan dalam hal ini tentu Indonesia melalui kementrian kesehatan agar semakin memajukan teknologi agar semakin dekat kualitasnya seperi Negara-negara maju di dunia.

Sumber
Sumber

Thursday, December 7, 2017

Keuntungan Dan Kerugian Sistem Cerdas

Kecerdasan Buatan (bahasa Inggris: Artificial Intelligence atau AI) didefinisikan sebagai kecerdasan entitas ilmiah. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf tiruan dan robotika.

Banyak hal yang kelihatannya sulit untuk kecerdasan manusia, tetapi untuk Informatikarelatif tidak bermasalah. Seperti contoh: mentransformasikan persamaan, menyelesaikan persamaan integral, membuat permainan catur atau Backgammon. 

Di sisi lain, hal yang bagi manusia kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk direalisasikan dalam Informatika. Seperti contoh: Pengenalan Obyek/Muka, bermain sepak bola. Walaupun AI memiliki konotasi fiksi ilmiah yang kuat, AI membentuk cabang yang sangat penting pada ilmu komputer, berhubungan dengan perilaku, pembelajaran dan adaptasi yang cerdas dalam sebuah mesin. Penelitian dalam AI menyangkut pembuatan mesin untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas. Termasuk contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan tangan, suara dan wajah. 

Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah kehidupan yang nyata. Sistem AI sekarang ini sering digunakan dalam bidang ekonomi, obat-obatan, teknik dan militer, seperti yang telah dibangun dalam beberapa aplikasi perangkat lunak komputer rumah dan video game.

Keuntungan Sistem Cerdas
  1. Kemampuan menyimpan data yang tidak terbatas (dapat disesuaikan dengan kebutuhan).
  2. Memiliki ketepatan dan kecepatan yang sangat akurat dalam system kerjanya
  3. Dapat digunakan kapan saja karena tanpa ada rasa lelah atau bosan
Kekurangan Sistem Cerdas
  1. Teknologi artificial intelegensi tidak memiliki common sense. common sense adalah sesuatu yang membuat kita tidak sekedar memproses informasi, namun kita mengerti informasi tersebut. Kemengertian ini hanya dimiliki oleh manusia.
  2. Kecerdasan yang ada pada artificial intelligence terbatas pada apa yang diberikan kepadanya (terbatas pada program yang diberikan). Alat teknologi artificial intelligence tidak dapat mengolah informasi yang tidak ada dalam sistemnya.
  3. Kelebihan dan kekurangan artificial intelligence dibandingkan dengan otak manusia, dalam hal waktu tunda propagasi Oleh karena itu manusia kalah dalam kecepatan perhitungan numerik. Dalam aspek lainnya otak manusia jauh di atas angin, terutama dalam tata letak dan jumlah elemennya. Sedangkan metoda pemrosesan secara paralel dalam komputer dikembangkan untuk menggantikan kedudukan manusia.
Contoh implementasi  AI dalam bidang kesehatan
Rekam Medik Elektronik (Electronic Medical Record/EMR) 
Rekam medik merupakan basis data yang berisi berbagai catatan medis pasien di sebuah institusi pelayanan kesehatan. Pencatatan dan penyimpanan data pasien ini bertujuan agar dapat dimanfaatkan kembali atau untuk mengenali pola kesehatan pasien.
Media rekam medik berkembang dari waktu ke waktu. Saat ini rekam medik menggunakan kertas sebagai media penyimpanan. Tetapi kertas memiliki banyak kelemahan seperti dalam akses data, tempat penyimpanan dan keawetannya sehingga rekam medis berkembang dengan menggunakan media elektronik.
Rekam medik elektronik menyimpan data elektronik dalam berbagai media penyimpanan seperti harddisk, smartcard, flashdisk dan sebagainya, bahkan ada juga yang disimpan dalam website tertentu.
Rekam medik memanfaatkan kelebihan komputer untuk menginput, menyimpan, mengolah dan memanfaatkan data rekam medis seorang pasien sehingga komputer diharapkan dapat melakukan diagnosis dan menentukan tindakan medis untuk mengatasi masalah kesehatan pasien.
Penerapan kecerdasan buatan (dari komputer) untuk rekam medik elektronik menggunakan teknik reasoning. Teknik reasoning memungkinkan komputer mengambil sebuah keputusan berdasarkan pengetahuan (data) dan aturan (rule) yang dimasukkan dan diproses dalam bentuk basis pengetahuan (knowledge base). Kecerdasan komputer dapat ditingkatkan dengan memasukkan fakta atau rule yang merupakan penemuan baru ke dalam knowledge base.
Sistem Pakar merupakan salah satu contoh penerapan kecerdasan komputer dalam rekam medik elektronik. Sistem pakar mengalihkan keahlian tenaga medis ke media elektronik seperti komputer untuk kemudian dialihkan lagi pada orang yang bukan ahli.
sistem pakar adalah sistem perangkat lunak komputer yang menggunakan ilmu, fakta, dan teknik berpikir dalam pengambilan keputusan untuk menyelesaikan masalah-masalah yang biasanya hanya dapat diselesaikan oleh tenaga ahli dalam bidang yang bersangkutan.
Pakar adalah orang yang memiliki pengetahuan, penilaian, pengalaman, metode khusus serta kemampuan untuk menerapkan bakat ini dalam memberi nasihat dan memecahkan masalah.
Pandangan Sistem Cerdas Untuk Indonesia Di Masa Depan
Untuk sekarang Sistem Cerdas di Indonesia masih perlu di perbanyak serta perlu di implementasikan lagi dengan karya-karya yang belum tersalurkan. Karena banyak karya anak bangsa yang sampai saat ini belom bisa mendapatkan lirikan dari instansi tertentu untuk karyanya dalam bidang Sistem Cerdas. Jangan sampai negara luar yang sampai melirik karena ini akan membuat kerugian sangat besar dan dampaknya bisa sangat besar.

Sumber 1
Sumber 2
Sumber 3

Friday, December 1, 2017

Teknologi Kecerdasan Buatan Dalam Bidang Bisnis (BANK BCA)

Teknologi informasi dan komunikasi yang berkembang pesat menjadi hal yang tak bisa dihindari. Manusia dituntut untuk bergerak cepat, lincah serta mampu beradaptasi dengan teknologi demi menunjang kualitas berbagai aspek kehidupan, tak terkecuali bagi pelaku bisnis.

Pelaku bisnis dituntut untuk merangkul teknologi dalam berinovasi demi mempertahankan keberlangsungan perusahaan.
"Tantangan pertama selalu adalah kita sendiri, karena memulai sesuatu yang baru itu selalu berat"
ujar Wakil Presiden Direktur PT Bank Central Asia Tbk Armand W Hartono di sela-sela konferensi Social Media Week Jakarta 2017 di Senayan City, Jakarta, Rabu (13/9/2017) sore.
Di sisi lain, Armand juga menegaskan bahwa perkembangan teknologi khususnya kecerdasan buatan (artificial intelligence) harus dimanfaatkan untuk meningkatkan kualitas pemenuhan kebutuhan maupun pelayanan terhadap konsumen.
"Jawabannya yang terpenting adalah konsistensi bahwa ini (kecerdasan buatan) menambah kenyamanan untuk seluruh stakeholders. Baik pihak internal maupun eksternal," ujarnya
Armand menceritakan, keberadaan mesin ATM pada zaman dulu sempat memunculkan ketakutan tersendiri bagi nasabah maupun pegawai bank. Hal itu dikarenakan kedua belah pihak masih berada dalam proses adaptasi untuk memahami penggunaan teknologi mesin ATM.

Perubahan merupakan sebuah proses yang lama, perusahaan pun dituntut untuk memperkuat dedikasinya dalam membangun kesadaran bagi para konsumen akan perkembangan teknologi baru.
"Dulu orang takut sama namanya ATM, ini mesin apa kok bisa ngeluarin duit sendiri, dari pihak internal bank sendiri juga takut, karena nasabah sudah menabung di bank, tiba-tiba ada mesin yang mengeluarkan duit sendiri," kata Armand.
Hal yang sama juga berlaku ketika Armand menceritakan kehadiran teknologi berbasis kecerdasan buatan (AI) bernama Virtual Asistant Bank BCA atau yang biasa disebut VIRA. Dalam awal pengembangannya, BCA juga sempat khawatir terkait penerimaan masyarakat terhadap fitur ini.

"Kita harus percaya, kami beruntung dapat ide ini dari kompetisi Finhack. Tadinya ide-ide semacam itu pernah jadi pembicaraan, tapi belum ada pop up-nya, begitu muncul di sana baru kita tes dan kami kembangkan chatbot VIRA," tuturnya.

Fitur VIRA, bagi BCA, memiliki keuntungan tersendiri bagi nasabah untuk melakukan sejumlah kegiatan seperti cek saldo, mutasi rekening, mencari lokasi ATM terdekat bahkan memperoleh beragam informasi promo.
"Saat ini VIRA temannya sudah 500 ribu-an, kita coba kembangkan supaya VIRA bisa menjadi lebih baik lagi bagi nasabah. Di Line, Kaskuser Chat, Facebook Messanger sudah ada. Tinggal add saja akunnya VIRA ini," jelas Armand.
Selain itu, fitur VIRA lebih mudah dan cepat diakses oleh nasabah ketimbang harus mengunduh aplikasi yang sewaktu-waktu bisa gagal unduh di tengah koneksi internet yang lambat.

Armand menyarankan agar para pelaku bisnis yang sedang memanfaatkan teknologi baru harus diterapkan di lingkungan masyarakat kecil terlebih dahulu yang tertarik dengan teknologi baru tersebut demi memperoleh evaluasi baik berupa kritik dan saran agar teknologi tersebut bisa dikembangkan dan dimanfaatkan secara luas.


Visi dan Misi
Kenyamanan, keamanan, dan keandalan adalah prioritas utama kami saat memberikan layanan finansial bagi seluruh nasabah BCA. Kami bertekad untuk terus menjadi pemimpin di industri perbankan nasional yang berkontribusi besar bagi perekonomian Indonesia.

VISI : 
Bank pilihan utama andalan masyarakat, yang berperan sebagai pilar penting perekonomian Indonesia.

MISI :
  • Membangun institusi yang unggul di bidang penyelesaian pembayaran dan solusi keuangan bagi nasabah bisnis dan perseorangan.
  • Memahami beragam kebutuhan nasabah dan memberikan layanan finansial yang tepat demi tercapainya kepuasan optimal bagi nasabah.
  • Meningkatkan nilai francais dan nilai stakeholder BCA.
Teknologi VIRA



Sebagai penyedia jasa perbankan, Bank BCA terus melakukan inovasi dengan menyediakan sarana yang memudahkan bagi para nasabah dalam melakukan transaksi perbankan. Nah, seiring dengan kebiasaan generasi millineal di berbagai platform aplikasi chatting, Bank BCA kini memperkenalkan Vira, Virtual Assistant di layanan Chat Banking BCA.

Vira adalah Virtual Assistant Chat Banking BCA yang dapat diakses melalui beberapa aplikasi chat populer, yaitu: Facebook Messenger, LINE dan Kaskus Chat. Saat ini VIRA dapat membantu mengetahui informasi dan promosi seputar BCA kepada pengguna aplikasi chat tersebut. Cara menggunakannya juga cukup mudah, cukup menambahkan akun resmi (official account) BCA, yaitu: “Bank BCA”, di Facebook Messenger, LINE dan Kaskus Chat. Selanjutnya pengguna dapat mulai masuk ke menu chat. Vira dapat diakses kapanpun dan dimanapun untuk mengetahui informasi, ragam promosi BCA.

Vira,  Chat Banking BCA memiliki ragam fitur seperti:

Info dan promo 
Anda bisa mendapatkan informasi terkini mengenai informasi serta promo-promo yang ada di BCA. Tidak hanya itu saja, Anda pun bisa mencari lokasi ATM BCA terdekat, serta mengetahui kurs terkini.


Serunya lagi, BCA Chat Banking akan menggandeng beberapa platform chatting populer seperti Facebook Messenger, LINE, Kaskus Chat dan lain sebagainya. Dengan begitu, Anda bisa langsung berinteraksi dengan Customer Service BCA terkait dengan promo serta transaksi perbankan. Seru, bukan?

Registrasi


VIRA Versi Line



Sunday, October 8, 2017

Aplikasi Kecerdasan Buatan Dalam Bidang Pendidikan


Kecerdasan Buatan atau sering disebut Artificial Intelligence (AI) merupakan kecerdasan yang diperlihatkan oleh suatu entitas buatan. Hal umum yang dapat dilakukan komputer yang sudah di masukkan kecerdasan buatan dapat melakukan tugas seperti manusia umumnya. Beberapa bidang yang menerapkan kecerdasan buatan seperti sistem pakar, games, logika fuzzy, jaringan syaraf tiruan serta robotika. Kecerdasan buatan ini ditemukan oleh seseorang dari prancis yang bernama Jacques de Vaucanson (1709 - 1782), kecerdasan buatan miliknya di terapkan kepada mesin pemain suling berukuran seperti seorang manusia yang dapat memainkan 12 melodi nada.

AI bisa dibilang tidak berdiri sendiri, ada kerja sama atau disebut keluarga yang berhubungan. Masing-masing mempunyai keahlian di bidangnya seperti Ahli komputer, elektronika, Psikologi, bahasa, phisiologi, dan biologi. Bisa dikategorikan menjadi Natural Language, Robotics, Perceptive System, Expert System, Neural Network, dan Intelligence Software.

1. Natural Language Processing
Fokus dengan pengenalan dan pembangkitan ucapan. Ucapan yang biasa sering disebutkan bisa termasuk ke beberapa ungkapan (idioms). Tujuan utama bagaimana membuat komputer (meliputi perangkat keras yang digabungkan dengan perangkat lunak) mampu mengenali ucapan dan membaca teks kemudian juga bicara dan menulis.

2. Robotics
AI memegang peran seolah melakukan pekerjaan fisik yang biasa dilakukan manusia, sebaliknya bahkan robot bisa negerjakan yang tidak bisa dilakukan oleh manusia (bahaya bagi manusia).

3. Perceptive System
Sebuah perangkat sensor dari perlengkapan robot sehingga dapat mengenal pola serta aliran data. Vision merupakan aplikasi yang dapat mengenali gambar yang diterima dari kamera, scanner, dan alat input lainnya dengan cara mecocokkan dan melacak gambar apa yang diterimanya melalui kamera atauscanner sebagai masukan.

Penerapan Kecerdasan Buatan dalam Dunia Pendidikan
Artificial Intelegence (AI) sangat berperan terutama dalam bidang pendidikan yang bertugas untuk mengirim berbagai informasi dan pengalaman belajar, sehingga membuat proses belajar lebih efektif.
Media yang digunakan juga sangat modern untuk pembelajaran bisa menggunakan prinsip dan teknik AI yaitu dapat belajar tanpa harus berhadapan langsung dengan guru, dan informasi media pendidikan bisa sangat berperan untuk memudahkan dan meringankan tugas guru atau pendidik dalam memberikan ilmu juga pengalaman ke peserta didik.

Untuk pemimpin lembaga pendidikan AI menjadi peran penting sebagai pengambil keputusan, hal ini disebabkan data, basis, dan pemberitahuan informasi yang di dapatkan lebih akurat daripada dengan cara manual. Contohnya seperti Kepala Sekolah lebih mudah dan tepat dalam mengambil keputusan dari sistem AI.


ILI Translator Otomatis

ILI merupakan perangkat yang bisa dibilang mempunyai kecerdasan dalam mengartikan bahasa, banyak orang di dunia mengenal aplikasi google translate namun pada kenyataannya kelemahan dari google translate ialah harus terhubung dengan koneksi yang biasa di sebut dengan internet. Perbedaan bahasa antar negara yang bisa menjadi penghambat sebuah komunikasi yang mengharuskan seseorang mengerti bahasa dari negara yang akan merekan kunjungi. Dengan hal tersebut membuat mereka sulit untuk berkomunikasi sehingga mengharuskan menyewa Tour Guide yang merupakan biaya tambahan dari liburan yang akan dilakukan.

Semua hal tersebut sudah diatasi dengan ILI sebuah perangkat translator buatan perusahaan Jepang, Logbar. Untuk mengoperasikannya (menggunakannya) orang yang memegang ILI hanya tinggal menekan tombol yang ada satu-satunya dan langsung mulai berbicara tanpa harus bingung memikirkan kalimat yang harus di ucapkan. Hanya memerlukan waktu singkat yaitu 0,2 detik ILI akan menterjemahkan bahasa kita yang tadi di ucapkan dengan suara yang berasal dari speaker perangkat ILI tersebut. Untuk buktinya bisa langsung melihat video dibawah ini.


ILI sendiri sudah bisa mengartikan beberapa bahasa, namun untuk pertama kali saat peluncurannya baru bisa menterjemahkan 3 bahasa, yaitu : Inggris, Jepang, dan China. Dari kabar yang sering di dengar bahasa baru akan ditambahkan ke sistem perangkat tersebut seperti bahasa Prancis, Italia, Thailand, Korea, Spanyol, dan Arab.

Dalam pembuatan ILI setidaknya lebih dari 50.000 jenis yang biasa digunakan dalam sehari-hari saat berpergian, sehingga errornya akan terbilang kecil. Kelebihan perangkat ini bisa dapat dibawa kemana-mana dan tidak diharuskan terhung dengan internet, jadi ILI bisa digunakan kapan pun dan dimana pun.

Untuk bidang pendidikan peran ILI bisa di gunakan bagi orang-orang yang baru saja studi di luar negeri yang belom paham dengan bahasa negara yang di kunjungi. Hal ini bisa dibilang memajukan pendidikan walau untuk sekarang peran ILI masih belom bisa menggantikan dari adanya google translate. Namun untuk kegiatan outdoor ( luar ruangan) ILI bisa sangat mampu membantu dari pengajar sampai murid.

Sumber 1
Sumber 2
Sumber 3

Wednesday, July 12, 2017

Memahami Cara Kerja Bitcoin


Bitcoin adalah mata uang digital yang mulai populer pada tahun 2003. Mata uang ini tidak dikontrol Bank atau lembaga lain. Mata uang yang terdesentralisasi ini didesain untuk menjaga uang kita dari mereka yang ingin mengambil keuntungan. Tapi bagaimana cara kerja sebuah mata uang digital? Bagaimana bisa mata uang ini berlaku jika tidak ada orang yang bisa mengatakan mereka menyimpannya.

Bitcoin terdiri atas tiga bagian yaitu: block chain, mining network, dan wallet. Untuk dapat memahami cara kerja Bitcoin, kita harus memahami cara kerja tiap bagiannya. Buatlah segelas kopi/teh dan nikmati artikel ini.

Block Chain
Block chain adalah daftar tiap transaksi Bitcoin yang pernah terjadi. Sebelum transaksi masuk ke block chain, maka transaksi itu belum selsai. Sesuai namanya, block chain merupakan rangkaian/rentetan sebuah blok. Blok tersebut berisi sekumpulan transaksi baru dan terhubung dengan blok sebelumnya. Semua orang dapat memvalidasi block chain dengan mengikuti seluruh catatan yang merekam setiap transaksi sampai dengan transaksi pertama saat Satoshi Nakamoto membuat Bitcoin.

Sampai disini, kamu mungkin berpikir keras, siapa yang bertugas mengelola block chain ini. Jawabannya adalah: tidak ada. Tidak ada satu organisasi atau perseorangan pun yang memegang salinan block chain sendiri. Bitcoin dibuat agar terdistribusi dengan baik, sehingga tidak ada titik kesalahan yang dapat merusak block chain baik secara sengaja maupun tidak disengaja. Block chain dipegang oleh setiap komputer yang menambang Bitcoin.


Menambang Bitcoin
Orang-orang yang menambang Bitcoing (miner), adalah orang-orang yang menjaga transaksi lama serta memastikan transaksi baru tercatat. Tugas mereka adalah membuat (atau menambang) blok baru. Blok-blok ini menyimpan transaksi baru yang terjadi. Sebagai kompensasi telah menambang blok-blok baru ini, mereka diberikan beberapa Bitcoin. Insentif seperti ini memastikan ada cukup orang untuk melakukan penambangan sehingga sistem jaringan Bitcoin terus berjalan.

Wallet
Wallet adalah bagian Bitcoin yang sering dilihat oleh pengguna. Istilah wallet (dompet) sendiri kurang tepat karena wallet sebetulnya tidak menyimpan Bitcoin. Wallet hanya menyimpan private key yang mengijinkan sang pemilik untuk menambah transaksi ke block chain disebuah alamat berupa public key. Bitcoin-nya tersimpan sebagai sebuah catatan transaksi di dalam block chain tersebut.

Paragraf-paragraf sebelumnya memberikan garis besar tentang cara kerja Bitcoin dan kita dapat mulai menambang atau menggunakan Bitcoin. Meskipun begitu, ada kemungkinan kamu tidak mempercayai mata uang ini karena cara kerjanya yang agak aneh.

Kehebatan mata uang ini adalah teknik kriptografi yang melindungi pengguna. Mari kita lihat secara lebih mendalam bagaimana cara teknik ini bekerja.

Keamanan Bitcoin sebagian besar datang dari hashing, dan hash inilah yang digunakan untuk menautkan blok yang satu dengan blok lainnya di block chain. Setiap blok menyimpan hash blok sebelumnya, dan nilai hash tersebut tidak dapat diganti tanpa mengubah nilai hash blok sekarang (yang juga perlu diubah di blok berikutnya, dst.). Semua orang bisa memeriksa bahwa tidak ada transaksi yang pernah mengubah nilai hash karena, jika hal itu dilakukan maka nilai hash berikutnya akan terpengaruh dan tidak lagi tertaut.

Bertransaksi dengan Bitcoin
Saat melakukan transaksi dengan Bitcoin, kita mengirimkan transaksi tersebut ke jaringan miner. Untuk menjaga bahwa tidak ada orang yang dapat melakukan transasi menggunakan wallet kita tanpa diketahui, terdapat beberapa keamanan yang diberlakukan.
Transaksi Bitcoin terjadi antara dua wallet atau lebih. Seperti yang telah dijelaskan sebelumnya, kedua wallet ini hanyalah pasangan public/private key yang digunakan untuk mengenkrip data. Cara kerja kedua pasangan key ini memastikan bahwa semua data yang dienkripsi dengan public key dapat dibaca dengan private key, dan begitu pula sebaliknya.
Di Bitcoin, kita tidak memiliki tumpukan uang yang bisa naik turun seperti di Bank. Sebagai gantinya, kita memiliki sekumpulan Bitcoin yang dapat ditelusuri hingga miner pertamanya. Saat melakukan transaksi, kita harus mereferensi transaksi saat mendapatkan Bitcoin tersebut (bisa mereferensikan lebih dari satu). Selanjutnya, kita harus menandai secara digital setiap transaksi yang direferensikan. Artinya, kita meng-hash-kan detail dari transaksi dan mengkripsinya dengan private key. Karena public key akan selalu terhubung dengan alamat kita (juga transaksi yang direferensikan), maka akan dipastikan bahwa hanya kita yang memiliki otorisasi untuk melakukan transaksinya. 
(Untuk penjelasan lebih lengkap, kunjungi https://en.bitcoin.it/wiki/Transactions)
Perhatikan bahwa tidak ada data fisik yang keluar dari wallet selain pesan ke block chain. Jumlah Bitcoin di dalam sebuah wallet dikalkulasi dengan melihat transaksi yang ada di block chain. Artinya siapapun dapat memeriksa jumlah Bitcoin yang ada di wallet manapun. Namun, bukan berarti siapapun dapat mengetahui siapa yang memiliki wallet tertentu karena tidak mudah untuk menentukan pemilik dari tiap wallet tersebut.
Saat transaksi ini sampai ke tangan miner, transaksi ditambahkan ke block berikutnya. Seperti yang telah kita pahami bahwa tiap block chain dapat dibagi lagi (dan seorang miner dengan computing power yang besar dapat membaginya secara berkelanjutan). Tidak ada garansi transaksi akan langsung masuk block chain, tapi dilihat dari jumlah block yang ada. Jika hanya ada satu blok, maka seorang penyerang yang beruntung dapat mengacaukan keseluruhan mining network. Dengan bertambahnya blok yang masuk ke block chain, kerjaan penyerang akan makin banyak dan lebih menyulitkan. 
Enam blok biasanya dianggap cukup untuk memastikan sebuah transaksi ditambah dengan benar ke dalam block chain. Dengan laju satu blok setiap sepuluh menit, maka proses penambahan transaksi dapat terjadi dalam waktu satu jam. Untuk transaksi dengan nominal besar, kamu mungkin akan menunggu sedikit lebih lama sebelum transaksi sudah selesai di-transfer. 
Block chain merupakan catatan tiap transaksi yang dapat diverfikasi secara publik. Setiap detail transaksi akan disebarluaskan ke semua miner yang ada di jaringan bitcoin dengan permintaan agar dimasukkan ke blok berikutnya.

Agar seorang miner dapat dibayar atas pekerjaannya menambah sebuah blok, ada dua hal yang harus terjadi: mereka harus memastikan hash-nya valid dan blok tersebut tercatat di block chain. Syarat pertama murni tantangan yang bersifat teknis, sedangkan syarat yang kedua akan memaksa mereka untuk memeriksa semua kemungkinan. Jika block chain mengandung transaksi yang tidak valid (misal, seseorang melakukan transaksi dengan coin yang tidak mereka miliki), maka miner berikutnya yang mendapatkan kiriman dari miner tersebut akan menolak sehingga ia tidak mendapat bayaran. Oleh karena itu miner akan memeriksa setiap transaksi untuk memastikan kevalidannya sebelum ditambahkan ke dalam sebuah blok.


Saat seorang miner menerima sebuah blok dari miner lainnya, mereka akan mendapatkan insentif saat menemukan kesalahan karena dua hal. Pertama, jika mereka menolak sebuah blok, itu artinya mereka masih memiliki kesempatan untuk menambangnya untuk diri mereka sendiri. Kedua, jika mereka menerima blok yang oleh miner lain ditolak karena tidak valid, maka penambangan yang mereka lakukan akan sia-sia karena blok ini tidak akan masuk ke block chain.

Diwaktu yang sama mereka akan mendapatkan insentif saat menerima blok yang valid, karena jika mereka menolak sebuah blok yang diterima oleh miner lain, maka blok selanjutnya yang mereka tambang akan ditolak oleh miner-miner lain.
Hashtag
Hashing – sering dikenal juga sebagai enkripsi satu arah – adalah sebuah metode untuk mengubah suatu data dengan satu cara yang tidak dapat dibalik tapi bisa diverifikasi. Mari kita lihat sebuah contoh hashing yang sangat sederhana dengan operator modulus 10. Dicontoh ini, kita membagi suatu angka dengan 10 dan sisa hasil bagi ini adalah hash-nya – sehingga angka 45 memiliki hash 5. 
Ada dua fungsi krusial yang harus dimiliki oleh hash. Yang pertama adalah mudah untuk diverfikasi. Tiap kali dilakukan, prosesnya haruslah cepat dan menghasilkan hasil yang sama. Fungsi kedua adalah tidak bisa dibalik. Jika seseorang mengatakan nilai sebuah hash adalah 5, seharusnya kita tidak tahu bahwa nilai aslinya adalah 45. 
Meskipun begitu modulo 10 adalah teknik algoritma hashing yang buruk karena memungkinkan adanya nilai hash yang sama dari sumber data yang berbeda. Hash yang bagus harus memiliki dua elemen tadi. Sedikit perubahan pada nilai awal akan membuat nilai hash-nya berubah drastis. 
Hash sering dipakai dalam keamanan komputer. Contohnya yaitu penyimpanan password di Linux. Sistem Linux tidak pernah menyimpan password, tetapi yang disimpan adalah nilai hash-nya. Kita bisa melihat nilai-nilai hash password di Linux dengan mengetikan: sudo cat /etc/shadow
Setiap kali log in, komputer akan merumuskan nilai hash dari password yang dimasukkan dan membandingkannya dengan hash yang tersimpan. Jika kedua hash memiliki nilai yang sama, maka log in berhasil. Meskipun bisa melihat semua hash yang ada di sistem, bukan berarti standar keamannya rendah karena sangat sulit untuk membalikkan nilai hash menjadi nilai asal. 
Dalam sistem Bitcoin, hash dipakai untuk memverifikasi integritas block chain, dan menjadi bukti bahwa seorang miner sudah menambang sebuah blok. Tugas hash di block chain adalah memastikan tidak ada blok yang diubah sejak mereka ditambang. 
Ada sebuah masalah yang mungkin terjadi yaitu dua miner dapat membuat block yang sama pada waktu yang bersamaan dan mengirimkannya ke miner lain. Saat hal ini terjadi, akan ada sebuah perpecahan di block chain. Beberapa miner dapat bekerja di salah satu blok, dan miner yang lain di blok satunya. Aturan Bitcoin menyatakan bahwa block chain valid yang lebih panjang yang akan dipakai. Salah satu dari perpecahan dua perpecahan tadi salah satunya akan masuk ke blok berikutnya lebih dulu, sehingga miner akan melewatkan chain yang lebih pendek agar mendapat bayaran untuk menambang *chain yang lebih panjang.

Aturan ini memastikan bahwa sebuah jaringan miner yang ingin memaksimalkan keuntungan pribadi tetap menjaga integritas mata uang ini. Sekelompok miner yang ingin mengakali sistem akan membutuhkan computing power yang lebih besar dari kombinasi semua miner yang benar (agar mereka dapat menambang blok dengan rate yang lebih cepat dan memiliki block chain lebih panjang). Hashcash selanjutnya mengamankan jaringan Bitcoin melalui raw computing power.

Ini lah alasan mengapa penambangan Bitcoin harus tetap untung. Saat ini, jaringan Bitcoin memiliki performa sebesar 15 peta hash per detik dan terus naik. Untuk membeli computing power yang lebih besar untuk mengalahkan angka di atas akan membutuhkan sekitar 150 juta poundsterling dan akan terus bertambah. Harga ini belum termasuk listrik, ruang penyimpanan, pendinginan, gaji orang yang menjalankannya, dll.

Hashcash
Hashcash adalah sistem yang digunakan oleh miner untuk memverifikasi bahwa mereka telah menambah sebuah blok sebelum blok tersebut dimasukkan ke block chain. Fungsi dasarnya adalah membuat block chain menjadi tidak memungkinkan untuk diubah.

Proses ini bergantung pada proses hashing, terutama fungsi hash SHA256. Fungsi ini menerima sebuah input dan mengeluarkan output sebuah angka 256-bit. Angka yang dimasukkan ke fungsi hash adalah header block (didalamnya terdapat sebuah counter) dan semua hash dari transaksi lain. Tugas miner adalah mencari nilai untuk counter dimana output dari fungsi hash berada di bawah nilai tertentu. Batas nilai ini akan menyesuaikan dengan pengaturan kesulitan saat ini, yang normalnya berubah tiap 2016 blok.

Satu-satunya cara untuk mendapatkan nilai hash yang dibutuhkan adalah dengan computing power yang besar. Dengan makin banyaknya nilai hash yang didapatkan dalam waktu yang lebih cepat akan memperbesar kemungkinan mendapatkan nilai yang memenuhi. Saat nilai hash ditemukan, itu artinya kita sudah menambah blok tersebut dan dapat mengirimkannya ke miner lain di jaringan.

Kecepatan sebuah jaringan atau sebuah komputer penambang Bitcoin dilihat dari berapa banyak hash yang dapat dicoba dalam satuan waktu (biasanya dihitung dalam juta hash perdetik atau GHs).

Miner tidak perlu khawatir pekerjaan mereka diambil orang karena didalamnya ada hash dari semua transaksi dan salah satu transaksi itu adalah bayaran untuk miner itu sendiri karena menambang blok. Hasil ini tidak bisa diambil orang tanpa mengubah nilai hash-nya.

Perlu dicatat bahwa algoritma hashcash yang digunakan oleh Bitcoin sedikit berbeda dengan algoritma yang digunakan untuk mendeteksi pesan spam, meskipun cara kerja keduanya hampir mirip.


Pencegahan Penipuan
Keuntungan menambang Bitcoin dikontrol oleh dua faktor: kesulitan dalam menambang tiap blok, dan jumlah Bitcoin yang didapatkan oleh miner di tiap blok. Kedua hal ini harus diimbangi dengan memperhitungkan computing power dan nilai Bitcoin yang terus meningkat di pasar.

Jumlah Bitcoin yang diberikan tiap blok berubah dalam nilai yang pas: bermula di 50,5 tiap 210.000 blok (kurang lebih empat tahun) sampai 21 juta Bitcoin sudah ditambang, dan tidak ada lagi Bitcoin yang dapat diberikan untuk menambang blok-blok selanjutnya.

Tingkat kesulitannya bervariasi setiap 2.016 blok. Jaringan Bitcoin didesain untuk membuat blok baru rata-rata setiap 10 menit. Waktu ini dipilih karena dua hal: waktu yang lebih singkat akan membuat transaksi lebih cepat terjadi, namun waktu yang terlalu singkat juga dapat membuat lebih dari satu miner membuat blok baru di saat yang bersamaan sehingga akan ada sumber daya yang terbuang karena ada dua block chain yang saling berkompetisi menjadi yang lebih panjang.

Kamu mungkin bisa melihat sedikit kekurangan dari penjelasan sebelumnya. Pertama, penulis menyatakan bahwa keamanan sistem bergantung pada computing power yang dimiliki pada akhirnya bergantung pada profitabilitas penambangan. Namun kemudian penulis menyatakan bahwa suatu saat nanti di masa yang akan datang saat 21 juta Bitcoin sudah telah ditambang, tidak akan ada lagi upah untuk penambangan.

Hal ini tidak sepenuhnya benar. Meskipun tidak ada lagi bitcoin baru sebagai upah menambang, namun saat melakukan transaksi kita dapat menambahkan biaya transaksi yang akan masuk ke kantong miner. Biaya transaksi jarang dilakukan saat ini karena proses penambangan masih cukup menguntungkan sehingga orang tidak tambahan uang receh, selain itu volume transaksi juga masih sedikit.

Tiap blok memiliki batasan ukuran sebesar 1MB (keputusan untuk mengubah angka ini masih diperdebatkan). Artinya, ada sebuah batasan jumlah transaksi untuk tiap blok. Jika seorang miner menemukan situasi dimana ada lebih banyak transaksi dibanding ruang dalam blok, mereka akan memutuskan transaksi mana yang akan ditambahkan. Tentunya, miner akan memilih transaksi yang memiliki biaya transaksi lebih besar. Transaksi lain tidak akan hilang, mereka hanya akan disimpan untuk dimasukkan di blok berikutnya. Makin besar biaya transaksi akan mempercepat transaksi masuk ke block chain.

Sebagian besar transaksi Bitcoin pada hari ini belum memiliki biaya transaksi. Belum dapat ditentukan apakah biaya transaksi ini akan menjadi satu-satunya cara atau akan ada fitur lain.

Satoshi Nakamoto
Bitcoin kini sudah sangat terkenal dan nilainya mencapai miliaran pounds, tetapi untuk semua ketenaran itu, ada satu rahasia yang tersimpan begitu rapat: identitas penciptanya. Pencipta Bitcoin dikenal dengan nama Satoshi Nakamoto. Tidak diketahui apakah Satoshi ini seorang laki-laki atau perempuan, apakah terdiri dari satu orang saja atau kelompok.

Satoshi menambang cukup banyak Bitcoin di masa-masa awalnya (kemungkinan mencapai satu jutaan), sehingga dengan nilai tukar saat ini, dia sudah kaya raya. Meski memiliki kekayaan dengan nilai yang cukup besar, hingga saat ini Satoshi belum pernah membelanjakannya sama sekali.

Ada beberapa spekulasi tentang siapa saja yang mungkin dapat membuat mata uang ini. Peneliti dan jurnalis telah menunjuk beberapa nama, namun semua membantah tuduhan itu. Mungkin di masa depan saat warnanya berubah menjadi hijau, sang pembuat misterius ini akan menunjukkan jati dirinya. Mari kita tunggu saja tanggal mainnya ...

Transaksi Anonim
Bitcoin menjadi terkenal sebagai mata uang pilihan dalam melakukan transaksi online, terutama untuk toko online ilegal seperti Silk Road. Walaupun begitu, Bitcoin tidak didesain sebagai mata uang anonim, dan faktanya memang tidak dapat dilakukan karena cara kerja block chain yang mencatat semua transaksi Bitcoin dan memperbolehkan siapapun untuk melihat alur Bitcoin manapun.

Satu-satunya faktor yang membuat Bitcoin populer sebagai sarana transaksi anonim adalah karena kita dapat membuat wallet Bitcoin tanpa memberitahu identitas siapa kita. Dalam pengertian ini, wallet akan tetap bersifat pribadi, namun mata uangnya akan tetap terpublikasi. Ini artinya jika kita mendapatkan koin secara anonim (misalnya, kita menambangnya atau membeli lewat jalan yang tak terlacak), membelanjakannya lewat cara yang tak terlacak (misalnya, membayar untuk sesuatu yang tidak dikirimkan atau terkait secara pribadi dengan cara apapun), dan tidak menghubungkan wallet dengan lokasi fisik (misalnya, hanya menggunakan wallet melalui Tor) maka seharusnya transaksi ini akan bersifat anonim. Namun keanoniman ini harus dilakukan dengan benar. Satu saja gagal, maka transaksi dapat dilacak sampai ujung.

Meski transaksi anonim memungkinkan untuk dilakukan dengan Bitcoin, namun tunai tetap cara paling aman. Block chain merupakan tambang emas untuk analis big-data dan kemungkinan akan ada hukum yang mengaturnya di masa depan.

Menggunakan Bitcoin
Manfaat sebuah mata uang, bagi kebanyakan orang, adalah bagaimana menggunakannya. Sebagian besar mata uang dunia digunakan dengan melibatkan lingkaran logam atau selembar kertas, tapi tidak ada hal seperti itu untuk Bitcoin.

Untuk melakukan transaksi, hal pertama yang dibutuhkan adalah sebuah wallet Bitcoin. Wallet ini hanya pasangan public/private key yang dipakai untuk menandai transaksi. Akan tetapi, kita memerlukan tempat yang aman untuk menyimpan key ini karena jika hilang semua coin itu akan turut lenyap dari muka bumi. Tingkat keamanan bergantung pada jumlah uang yang ingin disimpan. Ada berbagai jenis wallet untuk hampir semua perangkat komputer termasuk gawai alias smartphone. Patut diingat bahwa tidak ada biaya untuk membuat sebuah wallet, jadi tidak ada yang membatasi kita untuk membuat beberapa.

Semua wallet Bitcoin memiliki cara kerja yang sama, dan menyimpan semua informasi yang dibutuhkan untuk menerima dan mengirim Bitcoin serta melihat transaksi yang pernah dilakukan.

Setelah membuat wallet, kita perlu mendapatkan coin. Untuk sebagian besar orang, artinya kita perlu membeli dari tempat penukaran seperti Coinbase. Sayangnya, opsi ini tidak semudah membeli sebagian besar barang, dan jarang pula yang menggunakan kartu kredit atau Paypal dalam transaksi jual beli coin. Hal ini terjadi karena banyak oknum yang telah membeli menggunakan metode ini komplain kepada perusahaan penyedia kartu kredit ini bahwa mereka tidak pernah menerima coin yang dibeli dan kemudian meminta uang kembali uang yang telah diterima oleh penjual. Perusahaan kartu kredit dapat dengan mudah memeriksa block chain, tapi dulu mereka lebih memilih untuk berpihak pada pembeli dan hasilnya sekarang sebagian besar tempat penukaran tidak menerima kartu kredit. Saat ini cara paling umum untuk membeli coin ialah dengan transfer antar bank.

Saat membeli Bitcoin kita akan dimintai alamat wallet. Saat transfer bank telah dilakukan, tempat penukaran akan mengirimkan koin ke wallet tersebut.

Membelanjakan coin jauh lebih mudah dibanding membelinya. Semakin banyak perusahaan yang menerima pembayaran lewat Bitcoin. Dibagian checkout akan ada alamat wallet untuk mengirimkan coin. Perlu diingat bahwa kita tidak mengirimkan transaksi ke penjual, namun ke jaringan. Penjual akan menerima block chain dari jaringan dan memeriksa transaksi yang dikirimkan ke wallet tertentu.

Perusahaan yang menerima uang biasanya akan menunggu sampai transaksi mencapai enam blok atau lebih, yang akan memakan waktu hingga satu jam. Saat transaksi selesai, kita akan mendapatkan produk yang diinginkan.
Diterjemahkan dari artikel asli berjudul "How Bitcoin Works" dari majalah Linux Voice Issue 1 di bawah lisensi Creative Commons BY-SA.
Source :
How Bitcoin Works
Creative Commons BY-SA

Saturday, April 22, 2017

Blokir Akun Dari Ojek Online


PENDAHULUAN

1. Latar Belakang
Dalam kehidupan di zaman sekarang yang sudah berbasis online, semua sudah di mudahkan dengan adanya jasa transportasi online. Baik itu dari kendaraan roda 2 hingga kendaraan roda 4, sampai banyak masyarakat yang menjadikannya sebagai mata pencarian sampingan untuk menambah pemasukan agar bisa hidup lebih layak di kerasnya ekonomi ibu kota.

Transportasi Online sendiri mempunyai definisi suatu transportasi (kendaraan) berbasis aplikasi yang digunakan di sebuah smartphone, dan driver diwajibkan untuk bisa mengoperasikan aplikasi tersebut di smartphonenya. Di dalam aplikasi tersebut akan diketahui secara detail tentang jarak, lama pemesanan, harga, nama driver, serta perusahaan pengelolanya.

Kemanan bagi penumpang sudah termasuk terjamin karena seluruh identitas driver sudah diketahui secara pasti, sebab perusahaan pengelola telah melakukan proses verifikasi terlebih dahulu sebelum melakukan kerjasama kemitraan.

Berikut hal-hal yang dapat diketahui oleh pelanggan saat order jasa transportasi online :

  • Identitas Pelanggan
  • Mudah menemukan tukang ojek
  • Tidak perlu tawar menawar
  • Bisa menemukan pengendara yang tahu lokasi tujuan
  • Mengetahui harga secara pasti sebelum berangkat.
  • Foto pengendara

Sebaliknya jika dari pihak pengendara atau driver, sudah tidak perlu menawarkan kepada pelanggan lagi dengan jasanya cukup mengambil order yang sudah ada jika ada pelanggan yang membutuhkannya.

2. Tujuan Studi Kasus
Pembahasan studi kasus ini dilaksanakan agar banyak pengguna yang menggunakan jasa transportasi online tidak sampai melanggar aturan yang sudah ditetapkan oleh masing-masing perusahaan pengelola transportasi online.

Dari wujud studi kasus ini sama sekali tidak bermaksud untuk menjelekkan ataupun yang membuat pihak pengelola transportasi online merasa disalahkan dari sebuah pelanggaran-pelanggaran yang telah dilakukan.


ISI LAPORAN

1. Identitas Kasus
Langkah ini dimaksudkan untuk mengenal kasus beserta gejala-gejala yang terjadi. Dalam kasus ini penulis sudah mengumpulkan beberapa perkiraan yang mengakibatkan terjadinya kasus ini.

1.1 Pengumpulan Data

  • Nama Jasa Transportasi Online      : Ojek Online "G"
  • Tempat                                                 : Jakarta
  • Tanggal Kejadian                            : 10 April 2017
  • Pengaduan                                       : Customer Service

2. Hasil Kejadian
Dalam jasa transportasi online ada beberapa peraturan yang memang tidak boleh sampai dilanggar karena sanksi dari tiap aturannya berbeda-beda.


Untuk kasus saat ini terjadi karena beberapa faktor tentang adanya aktifitas mencurigakan yang diperkirakan oleh pengelola transportasi online tersebut. Untuk studi kasus ini akun yang telah dibuat karena melanggar karena aktivitas mencurigakan sampai dibekukan atau biasa disebut dengan suspend. Dari gambar yang ada diberitahukan akses untuk aplikasi dihentikan berarti tidak boleh digunakan lagi dari data yang telah di daftarkan baik itu email dan nomor hp.


Di dalam sebuah notifikasi juga di cantumkan sebuah link agar pengguna ingin mengajukan naik banding jika tidak melakukan aktivitas mencurigakan tersebut.

Tapi dalam kasus ini saya sendiri sebagai yang mengalami kejadian tersebut sudah 3x melakukan naik banding tentang akun yang telah di bekukan tapi tidak diterima mungkin terkait hal-hal lain yang hanya pihak pengelola yang mengetahui.

Jika kalian yang mengalami hal serupa dan ingin melakukan naik banding hanya tinggal klik link formulir tersebut. Untuk tampilan dimana kalian akan mengajukan naik banding bisa melihat dibawah ini :






Dari gambar yang sudah ada bisa dilihat disitu sudah ada kebijakan-kebijakan yang mengharus pengguna untuk naik banding jika merasa keberatan dengan pembekuan akun. Untuk kolom yang disediakan dibutuhkan Nama, Nomor Telepon, Alamat E-mail yang pernah di daftar kan untuk akun yang telah dibekukan.

Setelah kolom identitas untuk pengguna ada catatan dari pengelola tujuan dari adanya naik banding. dsitu tertulis :
Tujuan Naik Banding dibuat*
Silahkan Jelaskan, alasan pengaktifan ulang Aplikasi G***Taxi, silahkan tambahan rincian pemesanan, nomor telepon dan yang lainnya, yang akan memberi penjelasan lebih lanjut terhadap permohonan anda.
 Mungkin jika diterima oleh pihak pengelolanya akan langsung diberitahukan melalui e-mail yang sudah di masukan di kolom naik banding.

Dari kejadian masalah yang sudah berlangsung hampir 70% jarang bisa naik banding dan diharuskan melewati kepada customer service yang sudah tertera dibawah web pengelolanya tersebut. Dari pihak customer service juga bisa di informasikan jika pembekuan tidak hanyak dari akun tetapi langsung dari data handphone yang berakibat jika ingin melakukan pembuatan ulang tidak akan bisa.

Ada juga yang menginformasikan dari driver bahwa jika pengguna terkena pembekuan akun langsung terkena dari IMEI nomor telepon yang digunakan jadi harus menggunakan nomor telepon dan juga e-mail baru saat ingin pembuatan ulang.

Hal itu sudah dilakukan tetap hal ini tidak bisa dilakukan dan informasi yang diberikan dari customer service menggunakan device (perangkat) lain yang belom pernah ter-install aplikasi tersebut.


KESIMPULAN

Dari isi laporan dapat disimpulkan bahwa salah satu pengelola transportasi online membuat sebuah peraturan yang bisa dibilang sangat ketat agar menjadi keamanan tersendiri baik itu untuk pengelolanya maupun sistem lainnya.

Tidak semuanya dengan keamanan lebih membuat nyaman pengguna bahkan bisa membuat kerepotan untuk menggunakannya lagi, apalagi dengan adanya pembekuan data handphone sehingga bisa dibilang harus mengganti perangkat handphone dengan yang lain jika ingin menggunakan aplikasi tersebut.

Saran & Kritik
Untuk memberikan sebuah saran di studi kasus kali ini mungkin dari penulis yang mengalami kejadian tersebut. Disini saya mencantumkan beberapa saran serta kritik agar yang membacanya memahami.
  • Lebih baik untuk keamanan sistemnya diubah karena menyusahkan bagi sebagian besar pengguna yang tidak memahami langkah-langkah naik banding.
  • Untuk melakukan naik banding sebaiknya di beritahukan pendapat jika sudah mengisi formulir dengan membalas melalui e-mail yang telah dicantumkan.
  • Jika tidak ada pemberitahuan setelah pengajuan naik banding hal ini membuat pengguna yang akunnya telah dibekukan menjadi tidak tertarik lagi sehingga pindah ke jasa transportasi online lain.
  • Untuk customer servicenya juga harus bisa memberikan informasi yang jelas dan mudah dipahami untuk pengguna, karena saya sendiri pun belom mengetahui apa yang menyebabkan akun saya dibekukan.
  • Untuk pihak pengelolanya jangan hanya menginformasikan beberapa kode-kode diskon tetapi lebih mengecek apa kepuasan pengguna sudah tercukupi apa belum, dengan tidak melihat dari kepuasan saat setelah order.
  • Lebih memperhatikan kembali kasus dari naik banding bagi pengguna, karena hal tersebut sangat penting sebab adanya jasa berarti harus digunakan oleh pengguna dan membuat pengguna tetap tertarik dengan tawaran-tawaran lainnya.

Sumber Struktur : Pertama , Kedua , Ketiga 
Sumber Studi Kasus : Dialami Sendiri

Saturday, April 8, 2017

Memahami Cara Kerja Token Internet Banking


Token atau Access Token, dalam arsitektur Windows NT adalah sebuah objek sistem operasi (yang diberi nama "Token") yang merepresentasikan subjek dalam beberapa operasi pengaturan akses (access control). Objek Token umumnya dibuat oleh layanan logon (logon service) untuk merepresentasikan informasi keamanan yang diketahui mengenai sebuah pengguna yang lolos proses autentikasi (authenticated user). Objek token digunakan oleh komponen sistem operasi Windows NT yang menangani masalah keamanan, yaitu Security Reference Monitor (SRM).

Authentication Method
Otentikasi bertujuan untuk membuktikan siapa anda sebenarnya, apakah anda benar-benar orang yang anda klaim sebagai dia (who you claim to be). Ada banyak cara untuk membuktikan siapa anda. Metode otentikasi bisa dilihat dalam 3 kategori metode:

1. Something You Know
Ini adalah metode otentikasi yang paling umum. Cara ini mengandalkan kerahasiaan informasi, contohnya adalah password dan PIN. Cara ini berasumsi bahwa tidak ada seorangpun yang mengetahui rahasia itu kecuali anda seorang.

2. Something You Have
Cara ini biasanya merupakan faktor tambahan untuk membuat otentikasi menjadi lebih aman. Cara ini mengandalkan barang yang sifatnya unik contohnya adalah kartu magnetik/smartcard, hardware token, USB token dan sebagainya. Cara ini berasumsi bahwa tidak ada seorangpun yang memiliki barang tersebut kecuali anda seorang.

3. Something You Are
Ini adalah metode yang paling jarang diapakai karena faktor teknologi dan manusia juga. Cara ini mengandalkan keunikan bagian-bagian tubuh anda yang tidak mungkin ada pada orang lain seperti sidik jari, suara atau sidik retina. Cara ini berasumsi bahwa bagian tubuh anda seperti sidik jari dan sidik retina, tidak mungkin sama dengan orang lain.

Lalu bagaimana dengan metode otentikasi tradisional seperti tanda tangan di atas materai? Masuk ke kategori manakah cara itu dari ketiga metode di atas? Saya pikir tidak ada yang cocok, karena itu saya tambahkan satu lagi yaitu “Something You Can“. Cara ini berasumsi bahwa tidak ada orang lain di dunia ini yang bisa melakukan itu selain anda. Memang otentikasi dengan tanda tangan dibangun di atas asumsi itu, tidak ada yang bisa menuliskan tanda tangan anda kecuali anda. Walaupun pada kenyataannya ada saja orang yang bisa meniru tanda tangan anda dengan sangat baik, namun walaupun menyadari fakta tersebut tanda tangan di atas kertas tetap diakui sebagai bukti otentik atas siapa anda.

Two Factor Authentication
Pada aplikasi yang kritis dan sensitif seperti transaksi keuangan, satu metode otentikasi saja tidak cukup. Oleh karena itu muncul istilah 2FA (Two Factor Authentication) yang merupakan sistem otentikasi yang menggunakan 2 faktor (metode) yang berbeda. Empat metode otentikasi yang sudah saya jelaskan sebelunya dapat dikombinasikan untuk meningkatkan keamanan, salah satu contohnya adalah dengan kombinasi “something you have” berupa kartu ATM dengan “something you know” berupa PIN. Kombinasi ini merupakan kombinasi yang paling banyak dipakai.

Contoh kasus lain adalah ketika anda berbelanja di pasar modern dan membayar dengan kartu, tanpa disadari anda telah memakai lebih dari satu faktor otentikasi. Faktor yang pertama adalah “Something You Have” yaitu kartu debit/kredit anda. Faktor kedua adalah “Something You Know”, ketika anda diminta memasukkan PIN ke dalam mesin EDC. Bahkan mungkin ada faktor ketiga yaitu “Something You Can”, ketika anda diminta menanda-tangani nota pembayaran yang dicetak mesin EDC.

Internet banking juga menggunakan two factor authentication dengan mengombinasikan “something you know” berupa password dan “something you have” berupa hardware token (keyBCA atau Token Mandiri).

Password yang Dikeluarkan Token Internet Banking
Pada umumnya ada dua mode pemakaian token internet banking:

1. Mode Challenge/Response (C/R)
Ini adalah mode yang paling sering dipakai ketika bertransaksi. Dalam mode ini server memberikan challenge berupa sederetan angka. Angka tersebut harus dimasukkan kedalam mesin token untuk mendapatkan jawaban (response). Kemudian pengguna memasukkan angka yang muncul pada tokennya ke dalam form di situs internet banking. Token akan mengeluarkan kode yang berbeda-beda walaupun dengan challenge code yang sama secara periodik tergantung waktu ketika challenge dimasukkan ke dalam token.

2. Mode Self Generated (Response Only)
Dalam mode ini server tidak memberikan tantangan (challenge) apapun. Token pengguna bisa langsung mengeluarkan sederetan angka tanpa harus memasukkan challenge. Seperti mode C/R, token juga mengeluarkan kode yang berbeda-beda secara periodik tergantung waktu ketika token diminta untuk menghasilkan kode self generated.

Sebenarnya jawaban yang diberikan oleh token baik dalam mode C/R maupun Self Generated(resopnse only) tidak lain adalah password juga. Namun berbeda dengan password yang anda pakai untuk login, password yang dihasilkan token ini memiliki keterbatasan untuk alasan keamanan, yaitu:

1. Hanya boleh dipakai 1 kali
Ini disebut dengan OTP (One Time Password). Setelah suatu password dipakai, maka password yang sama tidak bisa lagi dipakai untuk kedua kalinya. Dengan cara ini tidak ada gunanya menyadap password yang dihasilkan token karena password tersebut tidak bisa dipakai lagi. Namun bila password tersebut di-intercept sehingga tidak pernah sampai ke server, maka password tersebut masih berharga karena di mata server, password itu belum pernah dipakai.

2. Hanya boleh dipakai dalam rentang waktu yang terbatas
Password yang dihasilkan token memiliki umur yang sangat terbatas, mungkin antara 3-6 menit bila umurnya habis maka password itu tidak bisa dipakai, walaupun belum pernah dipakai. Nanti akan saya jelaskan mengapa password token memerlukan umur, waktu merupakan unsur yang sangat kritikal dalam sistem ini.

3. Hanya boleh dipakai dalam konteks sempit
Bila password/PIN yang dipakai untuk login adalah password yang bebas konteks, dalam arti dengan berbekal password itu, anda bisa melakukan banyak hal, mulai dari melihat saldo, mengecek transaksi dan sebagainya. Namun password yang dihasilkan token, hanya bisa dipakai dalam konteks sempit, contohnya password yang dipakai untuk mengisi pulsa ke nomor 08123456789, tidak bisa dipakai untuk melakukan transfer dana.

Terbatasnya konteks ini disebabkan karena untuk melakukan transaksi dibutuhkan password yang diikat oleh challenge dari server, sehingga password tersebut tidak bisa dipakai untuk transaksi lain yang membutuhkan challenge code yang berbeda. Contohnya bila challenge yang diberikan server adalah 3 digit terakhir dari nomor handphone (untuk transaksi isi pulsa), atau 3 digit terakhir nomor rekening tujuan (untuk transaksi transfer). Maka password yang dihasilkan token untuk transaksi isi pulsa ke nomor 0812555111222, akan valid juga untuk transaksi transfer uang ke rekening 155887723120222. Sebab kebetulan kedua transaksi tersebut membutuhkan password yang diikat oleh challenge code yang sama, yaitu 222 (diambil dari 3 digit terakhir).

Konteks ini hanya berlaku bila password dihasilkan dalam mode C/R. Password yang dihasilkan dalam mode Self Generated, bisa dipakai dalam transaksi apa saja yang tidak meminta password dengan challenge code.

Jadi bisa disimpulkan bahwa password yang dikeluarkan token bersifat:
  • Selalu berubah-ubah secara periodik
  • Memiliki umur yang singkat
  • Hanya bisa dipakai 1 kali
Terbagi dalam ada dua jenis, yaitu:
  • Password kontekstual yang terikat oleh challenge code dalam mode challenge/response.
  • Password bebas konteks yang dihasilkan dalam mode self generated.
Proses Otentikasi

Seperti password pada umumnya, syarat agar otentikasi berhasil adalah:
password yang dikirimkan client = password yang disimpan di server
Dengan alasan keamanan jarang sekali server menyimpan password user dalam bentuk plain-text. Biasanya server menyimpan password user dalam bentuk hash sehingga tidak bisa dikembalikan dalam bentuk plain-text. Jadi syarat otentikasi berhasil di atas bisa diartikan sebagai hasil penghitungan hash dari password yang dikirim klien harus sama dengan nilai hash yang disimpan dalam server. Perhatikan gambar di bawah ini untuk lebih memahami.


Penggunaan Salt
Untuk menghindari brute-force attack terhadap hash yang disimpan di server, maka sebelum password user dihitung nilai hashnya, terlebih dahulu ditambahkan string acak yang disebut dengan salt. Perhatikan contoh berikut, bila password user adalah “secret”, maka sebelum dihitung nilai hashnya, password ditambahkan dulu salt berupa string acak “81090273″ sehingga yang dihitung nilai hashnya adalah “secret81090273″ bukan “secret”.

Perhatikan bahwa nilai MD5(“secret81090273″) adalah 894240dbe3d2b546c05a1a8e9e0df1bc sedangkan nilai MD5(“secret”) adalah 5ebe2294ecd0e0f08eab7690d2a6ee69. Bila tanpa menggunakan salt, maka attacker yang mendapatkan nilai hash 5ebe2294ecd0e0f08eab7690d2a6ee69 bisa menggunakan teknik brute force attack atau rainbow table untuk mendapatkan nilai password dalam plain-text. Salah satu contoh database MD5 online yang bisa dipakai untuk crack md5 adalah http://gdataonline.com/seekhash.php . Dalam situs tersebut coba masukkan nilai 5ebe2294ecd0e0f08eab7690d2a6ee69, maka situs tersebut akan memberikan hasil “secret”. Hal ini disebabkan karena situs tersebut telah menyimpan pemetaan informasi secret<=>5ebe2294ecd0e0f08eab7690d2a6ee69.

Penambahan salt “81090273″ membuat nilai hash menjadi 894240dbe3d2b546c05a1a8e9e0df1bc. Bila nilai ini dimasukkan dalam situs tersebut, dijamin tidak akan ada dalam databasenya bahwa nilai hash tersebut adalah “secret81090273″. Dan karena nilai salt ini dibangkitkan secara random, maka tiap user memiliki nilai salt yang berbeda sehingga tidak mungkin attacker bisa membangun database pemetaan antara plaintext dan hash secara lengkap.

Dengan penggunaan salt, maka database pengguna dalam server akan tampak seperti ini:
----------------------------------------------------------------------------------
| Username    |   Salt         |                         Password Hash                 |
----------------------------------------------------------------------------------
| budi             |  81090273 |    894240dbe3d2b546c05a1a8e9e0df1bc|
----------------------------------------------------------------------------------
Field salt diperlukan ketika melakukan otentikasi. Password yang dikirimkan user akan ditambahkan dulu dengan nilai salt ini baru kemudian dihitung nilai hashnya. Nilai hash hasil perhitungan tersebut akan dibandingkan dengan field Password Hash yang ada di kolom sebelahnya. Bila sama, maka otentikasi berhasil, bila tidak sama, berarti otentikasi gagal. Secara prinsip sama saja dengan gambar di atas, hanya ditambahkan satu langkah yaitu penambahan salt sebelum dihitung nilai hashnya.

Pembangkitan One Time Password (OTP) Token Internet Banking
Apa yang saya jelaskan sebelumnya menjadi dasar dari apa yang akan saya jelaskan berikut ini. Bagaimana cara token menghasilkan sederetan angka sebagai OTP yang bisa diotentikasi oleh server? Ingat bahwa syarat agar otentikasi berhasil adalah password yang dikirim klien harus sama dengan yang disimpan di server. Ingat juga bahwa password yang dihasilkan token selalu berubah-ubah secara periodik. Bagaimana apa yang dihasilkan alat itu bisa sinkron dengan server? Padahal alat tersebut tidak terhubung dengan server, bagaimana server bisa tahu berapa nilai yang dihasilkan token? Jawabannya adalah dengan waktu. Sebelumnya sudah saya sebutkan bahwa waktu adalah elemen yang sangat penting dalam sistem ini. Server dan token dapat sinkron dengan menggunakan waktu sebagai nilai acuan.

OTP dalam Mode Self Generated (Response Only)
Saya akan jelaskan mulai dari pembangkitan OTP dalam mode self generated atau response only. Sebelumnya tentu saja, server dan token harus menyepakati sebuah nilai awal rahasia (init-secret). Nilai awal ini disimpan (ditanam) dalam token dan disimpan juga dalam tabel di server.

Ketika pada suatu waktu tertentu token diminta menghasilkan OTP tanpa challenge code, inilah yang dilakukan token:

- Mengambil waktu saat ini dalam detik berformat EPOCH (jumlah detik sejak 1 Januari 1970), biasanya dalam granularity 10 detik, sehingga nilai EPOCH dibagi 10.
- Menggabungkan init-secret dengan waktu saat ini dari langkah 1.
- Menghitung nilai hash gabungan init-secret dan waktu dari langkah 2.

Nilai hash dari langkah 3 inilah yang menjadi OTP. Namun biasanya OTP diambil dari beberapa karakter/digit di awal hash.

Bagaimana cara server melakukan otentikasi? Caranya mirip dengan yang dilakukan token, yaitu dengan menghitung nilai hash gabungan init-secret dengan waktu saat ini dan mengambil beberapa digit di awal sebagai OTP. Bila OTP yang dikirim user sama dengan OTP yang didapatkan server dari perhitungan hash, maka otentikasi berhasil.

Namun ada sedikit catatan yang harus diperhatikan terkait waktu. Untuk memberikan toleransi perbedaan waktu antara token dan server, dan juga jeda waktu dari sejak server meminta password sampai user meminta token membangkitkan token, maka server harus memberikan toleransi waktu.

Ada tiga kejadian yang perlu diperhatikan waktunya, yaitu:

1. Detik ketika server meminta password (OTP) dari user
2. Detik ketika token membangkitkan OTP
3. Detik ketika server menerima OTP dari user

Perhatikan contoh di bawah ini:

Bila diasumsikan waktu di server sama persis dengan waktu di token (jam internal token), maka kita harus perhatikan bahwa pasti akan ada jeda antara kejadian 1, 2 dan 3. Bila pada detik ke-0 server meminta password dari user, karena lambatnya akses internet, bisa jadi baru pada detik ke-30 user melihat pada browsernya bahwa dia harus memasukkan OTP dari token. Kemudian baru pada detik ke-60 token menghasilkan OTP. Pada detik ke-65 user mensubmit nilai OTP tersebut ke server dan baru tiba di server pada detik ke-90.

Karena pembangkitan OTP tergantung waktu pada saat OTP dibangkitkan, maka OTP yang dihasilkan token, adalah OTP pada detik ke-60. Sedangkan server meminta password dari user sejak detik ke-0. Bagaimana cara server melakukan otentikasi? Caranya adalah dengan memeriksa seluruh kemungkinan OTP dalam rentang waktu yang dipandang memadai, misalkan 180 detik.

Bila sistem menggunakan granularity 10 detik maka server harus menghitung nilai OTP sejak dari detik ke-0, 10, 20, 30, 40, s/d ke 180 dalam kelipatan 10 detik. Perhatikan contoh pada gambar di bawah ini. Dalam sistem ini diasumsikan OTP adalah 6 karakter awal dari MD5 gabungan. Dalam melakukan otentikasi, server harus membandingkan semua nilai OTP sejak detik ke-0 (dalam contoh ini EPOCH/10 = 124868042) hingga waktu toleransi maksimum.


Dalam contoh di atas bila user mengirimkan OTP “b1cdb9″ maka otentikasi akan berhasil ketika server menghitung nilai OTP pada detik ke-60 sejak server meminta OTP dari user.

Ilustrasi di atas hanyalah contoh, pada kenyataannya ada kemungkinan waktu antara server dan token tidak sama persis 100%, sehingga server terpaksa harus memberikan toleransi waktu tidak hanya ke depan, namun juga ke belakang. Sebab bisa jadi waktu di server lebih cepat daripada waktu di token. Sebagai contoh ketika waktu di server menunjukkan EPOCH/10=124868219, bisa jadi waktu di token baru menunjukkan EPOCH/10=1248682121 (waktu token terlambat 80 detik).

Misalkan waktu toleransi adalah 3 menit, maka server harus memberikan toleransi 3 menit ke depan dan 3 menit ke belakang relatif terhadap waktu ketika server menerima OTP dari user dan melakukan otentikasi. Ingat, waktu toleransi ini relatif terhadap waktu server melakukan otentikasi. Jadi jika server melakukan otentikasi pada EPOCH/10=600, maka server harus menghitung seluruh nilai OTP sejak EPOCH/10=420 hingga EPOCH/10=780.

Ingat penjelasan saya tentang salt sebelumnya. Kalau dibandingkan dengan OTP ini, maka nilai init-secret adalah sejenis dengan password plain-text pengguna, sedangkan salt atau tambahannya adalah waktu (EPOCH/10).

Umur OTP
Sebelumnya sudah saya sebutkan bahwa sifat dari OTP adalah memiliki umur yang terbatas. Umur ini terkait dengan waktu toleransi yang diberikan server sebesar X detik ke depan dan X detik ke belakang relatif terhadap saat server melakukan otentikasi. Bila waktu toleransi adalah 3 menit (180 detik), maka umur sebuah OTP adalah 3 menit, dalam arti bila server melakukan otentikasi tidak lebih dari 3 menit sejak OTP dibangkitkan token, maka OTP tersebut akan dianggap valid oleh server.

OTP dalam Mode Challenge/Response
Pembangkitan dan otentikasi OTP dalam mode C/R sebenarnya mirip dengan mode self-generated. Bila dalam mode self generated tambahan (salt) dari init-secret adalah waktu (EPOCH/10), dalam mode C/R ini salt/tambahannya lebih banyak. Init-secret tidak hanya ditambah dengan waktu, namun juga ditambah lagi dengan challenge.

Perhatikan gambar di bawah ini. Server melakukan penghitungan OTP untuk semua detik dalam waktu toleransinya.


Dalam mode C/R ada field tambahan yang harus digabungkan sebelum dihitung nilai hashnya, yaitu challenge. Nilai challenge ini diketahui oleh server dan juga oleh token (ketika user mengetikkan challenge ke token), sehingga baik token maupun server akan dapat menghitung OTP yang sama sehingga proses otentikasi dapat berlangsung.

 
biz.