a day in the life …

Ini bukan tentang lagunya the Beatles, meskipun judulnya sama. Ini adalah tentang keseharian saya. Untuk apa diceritakan ya? Kepo? Ha ha ha. Namanya juga “blog”. Jadi sekali-sekali mencatatan (log) kegiatan sehari-hari. Seperti kegiatan sehari-harinya di pesawat ruang angkasa. Ciyeh.

Okay. Kemarin saya melakukan banyak hal. Catat dulu.

  1. Mewawancarai calon mahasiswa untuk CCE MBA SBM ITB. (Iya, singkatan semua.)
  2. Memberi mentoring entrepreneurship (selama 1 jam saja)
  3. Futsal (1 jam saja juga)
  4. Latihan band bersama BANDOS (Band Dosen ITB)

Itu garis besarnya. Tentu saja ada hal-hal lain. Ternyata sibuk juga saya untuk hari yang tidak saya ramalkan sebagai sibuk. Hmm…

interview CCE MBA SBM ITB

28619378_10155353991686526_2245848601284629566_o
Latihan BANDOS
Iklan

Berburu Hash

Ini cerita tentang tugas atau pekerjaan rumah mahasiswa saya. Ceritanya saya mengajar kuliah keamanan informasi (information security). Salah satu bagian dari materinya adalah tentang kriptografi dan minggu lalu kami membahas fungsih hash.

Apa itu fungsi hash? Bisa panjang lagi ceritanya. (Nambah daftar topik yang perlu diceritakan.) Singkatnya fungsi hash adalah fungsi satu arah yang dapat memberikan ciri atau tanda-tanda (signature) dari data digital (stream of data, files, dan-lain-lain). Contoh fungsi hash yang terkenal adalah MD5 dan SHA256.

Misal ada sebuah berkas (bernama “pesan1.txt”) yang berisi “beli 10000”. Maka hasil SHA 256 (algoritma SHA dengan panjang bit 256) dari teks tersebut dapat dilihat pada contoh di bawah ini.

unix$ echo "beli 10000" | shasum -a 256
375a6c46228994656932f4aa17d9ae50f21da75a31ff17f8517c255c06cba809 -

unix$ cat pesan1.txt
beli 10000
unix$ shasum -a 256 pesan1.txt
375a6c46228994656932f4aa17d9ae50f21da75a31ff17f8517c255c06cba809 pesan1.txt

unix$ cat pesan2.txt
beli 1000
unix$ shasum -a 256 pesan2.txt
5901bccc6a0556fac2b4a164ef831a7ed4ceddeb60c6ddde1162f5a40b9d2917 pesan2.txt

Pada contoh di atas ditunjukkan jika kita memiliki data yang berbeda – dicontohkan dengan berkas “pesan2.txt” yang berisi “beli 1000” (hilang satu angka nolnya) – maka hasil hash-nya pun berbeda. Bahkan, sangat jauh berbeda.

Hal lain dari fungsi hash adalah, jika kita diberikan sebuah hasil hash, maka akan sangat sulit bagi kita untuk merekonstruksi ulang berkas aslinya.

Kebetulan saat ini yang sedang ngetop adalah blockchain. Atau lebih ngetopnya adalah Bitcoin-nya. Salah satu dasar dari blockchain adalah fungsi hash. Maka salah satu tugas mahasiswa di kelas saya adalah berburu (hasil) hash.

Skenarionya adalah kita memiliki sebuah pesan “A>B,5000” (tanpa tanda kutip). Pesan ini ditambahkan nonce, sebuah angka (data, string) yang diambil “dari langit”, dan kemudian keduanya di-hash-kan dengan SHA256.

A>B,5000
NONCE

Ada sedikit “perlombaan” di kelas, yaitu siapa yang berhasil menghasilkan hash terkecil adalah pemenangnya. Cara menguji angka hash yang kecil adalah dengan melihat jumlah “0” di depannya. Yang perlu dicari adalah nonce-nya tersebut. Jadi carilah nonce yang menghasilkan nilai hash paling kecil. Silahkan diperlombakan. Kalau di kelas diberi waktu satu minggu. Pemenangnya akan saya beri hadiah buku.

[Catatan: konsep ini mirip dengan konsep “miner” di bitcoin.]

Memulai Perkuliahan Lagi

Hari ini sebetulnya sudah merupakan minggu kedua dari perkuliahan di ITB. Semester ini saya mengajar tiga (3) mata kuliah. Semuanya di bidang information security:

  • II3230 – Keamanan Informasi (Information Security)
  • EL5215 – Keamanan Perangkat Lunak (Software Security)
  • EL6115 – Secure Operation and Incident Handling

Ini potret yang saya ambil di kelas Keamanan Informasi minggu lalu.

ITB information security class 2018

Kelasnya dimulai pagi sekali, pukul 7 pagi. Ayo semangat! Semoga tetap bersemangat sampai akhir semester.

Serius Dalam Mengajar dan Membimbing

Sudah menjadi rahasia umum bahwa ada banyak dosen yang tidak serius dalam mengajar dan membimbing. Banyak orang yang menjadi dosen hanya untuk mendapatkan statusnya atau agar supaya dapat disekolahkan ke luar negeri melalui beasiswa. Setelah menjadi dosen tidak benar dalam mengajar dan membimbing karena memang alasannya menjadi dosen bukan itu.

Proses rekrutmen untuk menjadi dosen juga nampaknya kurang memperhatikan aspek passion dalam mengajar dan membimbing. Ada yang guyon bahwa mau memilih bagaimana, wong yang mendaftarkan jadi dosen adalah sisa-sisa yang tidak dapat pekerjaan di luar sana. Aduh. Mak jleb!

Saya tidak tahu apakah saya bagus dalam mengajar atau membimbing (karena yang dapat menilai adalah mahasiswanya), tetapi saya sangat serius dalam mengajar dan membimbing. Eh, setidaknya saya jauh lebih serius dari kolega-kolega saya.

Banyak dosen yang menelantarkan kuliahnya karena ada tawaran pekerjaan ini dan itu atau harus memberikan presentasi di sana dan di sini. Saya membatasi tawaran-tawaran seperti itu. (Ada BANYAK SEKALI.) Kalau tidak percaya, tanya kepada pihak-pihak yang terpaksa saya tolak undangan untuk berbicara di kampus-kampusnya. Mohon maaf. Bukannya saya tidak mau, tetapi jika saya harus pergi ke sana maka kuliah saya banyak bolongnya.

(Bagi yang ingin mengundang saya menjadi pembicara, keynote speaker, dan seterusnya, inilah alasan saya kenapa saya menolak undangan bapak dan ibu. Ini sebabnya saya juga tidak tertarik untuk menjadi pejabat di sana sini.)

Saya termasuk yang rajin memberikan kuliah. Biasanya sebelum mahasiswa hadir di kelas, saya sudah duluan ada di sana. Untuk kelas jam 7 pagi pun, saya yang nomor satu hadir. Ada banyak foto di facebook saya yang menunjukkan hal ini. ha ha ha. (Semester ini ada satu kelas yang saya telat terus hadirnya, karena saya harus kembali ke kantor untuk makan siang, shalat, meeting dan kembali lagi ke kelas. Jadinya terlambat terus. Maaaaappp.)

17758256_10154430056911526_3438788283222184741_o
hadir di kelas sebelum mahasiswa hadir. berbekal kopi

Konsisten dalam mengajar itu tidak mudah. Memberikan satu presentasi itu tidak susah. Yang susah itu hadir secara rutin dalam 15 kali pertemuan perkuliahan. Silahkan dicoba. Konsistensi itu susah. (Ada banyak orang yang baru sekali memberikan presentasi di sebuah seminar kemudian merasa bisa mengajar di perkuliahan. hi hi hi.)

Menjadi pembimbing juga sama saja. Banyak dosen yang tidak dapat ditemui oleh mahasiswa bimbingannya karena kesibukannya. Membimbing bagi mereka mungkin sebuah beban. Tugas yang terpaksa dilakukan. Makanya tidak serius dalam membimbing. Hasilnya adalah bimbingan yang acak adut ketika sidang.

Ada sebuah kasus mahasiswa maju sidang dengan kondisi penelitian yang kacau balau. Mengapa dia diijinkan oleh pembimbingnya untuk maju? Ternyata pembimbingnya sibuk sehingga menelantarkan mahasiswanya (sampai batas waktu). Sebagai pengobat rasa bersalahanya (karena jarang di tempat), maka mahasiswanya diijinkan maju sidang. Mau seperti apa dunia penelitian Indonesia kalau seperti ini kejadiannya?

Mahasiswa bimbingan saya banyak. Bukan karena saya gampang, tetapi karena saya ada di tempat untuk berdiskusi. Mahasiswa membutuhkan arahan dan diskusi (dalam thesis dan disertasi). Kadang saya kasihan lihat mahasiswa bimbingan saya yang harus bergantian bimbingan. Antri. Seperti ke dokter saja. Mau bagaimana lagi? Waktu yang ada pun terbatas. Namun saya selalu serius dalam membimbing.

Sering saya hanya bisa mengelus dada melihat kelakuan dosen-dosen yang mengabaikan tugasnya. Ada yang rajin menjabat di sana sini. Ada yang hobbynya presentasi sana sini juga. hi hi hi. Saya bukan atasan mereka yang dapat menegur. Kalau saya tegur nanti gak terima. Orang Indonesia mana bisa terima kritikan. ha ha ha.

Oh ya, sebetulnya saya adalah seorang profesional yang super sibuk. Ada banyak tanggung jawab yang harus saya lakukan. Jadi sesungguhnya saya bukan dosen  yang hanya mengajar saja. Demikian sibuknya pun saya selalu memprioritaskan mengajar dan membimbing.

Semua yang saya lakukan ini tidak untuk mencari pujian. Tidak juga untuk mendapatka gaji yang lebih besar. (Kalau tahu status saya, mungkin terkejut. Ada masanya beberapa tahun saya mangajar tanpa digaji. ha ha ha. Saya membuktikan kepada diri sendiri bahwa rejeki itu sudah ada yang ngatur.) Tidak juga saya lakukan ini untuk mendapatkan penghargaan atau medali. (Sombongnya sih sudah terlalu banyak plakat di rumah. ha ha ha.)

Jadi saya melakukan ini semua untuk apa? Karena memang saya suka mengajar. Menjadi guru. Berbagi pengalaman di industri dan menyederhanakan masalah sehingga mahasiswa dapat menangani topik-topik mereka di kemudian hari. As simple as that.

(PGP) Key-Signing Party

Salah satu aktivitas dalam rangka menjalankan sistem teknologi informasi yang aman (secure IT operation) adalah proses pertukaran kunci publik. Sistem kunci publik yang digunakan biasanya berbasis kepada PGP (Pretty Good Privacy) atau Gnu Privacy Guard (GPG). Maka di kelas saya, dilakukan key-signing party.

P_20170214_134309-01 keysigning

Para mahasiswa diminta membuat kunci publiknya, mengunggah kuncinya ke sebuah keyserver, dan kemudian menunjukkan identitasnya (KTP, kartu mahasiswa). Saya unduh kunci mereka dan saya tandatangani (signed) kunci mereka itu setelah melihat dan memastikan bahwa identitas mereka itu benar. Inilah kegiatan key-signing party yang sesungguhnya.

P_20170214_134545_BF keysigning

Di atas beberapa foto proses tersebut. Seru. Untuk memproses seluruh kunci di kelas ini dibutuhkan lebih dari 1 jam.

Semester Baru

 

Semester baru sudah dimulai di ITB hari-hari kemarin. Kelas sudah mulai. Saya mengajar tiga kelas semester ini. Semuanya berhubungan dengan keamanan informasi (information security). Ini foto kelas Keamanan Informasi (7:00 s/d 9:00), dipotret di akhir kelas. Masih pada segar.

P_20170118_083618_BF-01 kelas

Selain mengajar, saya juga membimbing S2 dan S3. Lupa jumlah mahasiswa bimbingannya. ha ha ha. Ini foto ketika bimbingan dengan sebagian mahasiswa.

P_20170118_111302_BF bimb

Waktunya memperbaharui halaman web juga. (Belum sempat euy.) Demikian pula masih ada setumpuk makalah (perbaikan) mahasiswa yang harus saya koreksi lagi. Ballpoint sudah disiapkan.

p_20170117_114824-01-ballpoint

Ayo semangat!

Judul / Topik Thesis / Penelitian

Minggu ini mulai banyak mahasiswa berdatangan untuk mencari topik penelitian & thesis S2 mereka. Berikut ini adalah beberapa topik yang saya tawarkan. Deskripsi dari masing-masing topik mungkin belum terlalu rinci, tetapi mudah-mudahan penjelasan ini masih dapat memberikan bayangan. Topik besarnya adalah security & big data.

  1. Anonimity + eVoting + Visual Cryptography ID. Topik ini melanjutkan disertasi dari I Made Ardhana (softcopy disertasi sedang saya telusuri dan akan diupload di web site). Fokus kepada implementasi ide-ide yang ada di dalam disertasi tersebut. Ada beberapa design decissions yang harus diambil dalam implementasinya beserta pembaharuan teorinya. Titik beratnya kepada programming. (Ada beberapa snippet code yang sudah saya buat sebagai proof of concept.) [Sudah ada rencana 1 mahasiswa yang memilih ini. Masih dapat ditambah khususnya untuk sisi attack-nya.] Untuk aspek teorinya, pengukuran tingkat anonimitas, juga sedang mencari mahasiswa. Namun yang ini lebih banyak aspek matematisnya. Jika menyukai matematika (atau memang mahasiswa matematika), bisa memikirkan topik ini.
  2. Stegokripto. Meneruskan thesis dari Almaarif (lihat budi.rahardjo.id bagian students). Pencarian kode yang berbeda antara data dan noise. (Coding theory. Mencari kode yang orthogonal terhadap noise. Ide on-curve dan off-curve pada Elliptic Curve juga dapat dipakai.) Pada thesis terdahulu proses pembedaan kode dan noise dilakukan dengan menggunakan marker tertentu. (Proses pendeteksian dapat dilakukan dengan sliding window, atau bahkan matriks. Belum dilihat aspek kinerjanya.) Kode terdahulu juga dapat lebih disempurnakan sehingga aplikasi menjadi lebih integrated. (Sebelumnya pecah-pecah menjadi beberap aplikasi.)
  3. Mekanisme pengamanan program chat (Signals / dahulu TextSecure, WA, dll.) dengan menggunakan Curve 25519. Thesis memahami protokol yang digunakan dan melakukan re-implementasi di program Open Whisper Systems. (Ini juga dapat menjadi topik thesis di Matematika.)
  4. Cryptocurrency. Block chain. Ini adalah konsep di belakang Bitcoin. Memahami dan membuat protototipe sebuah digital money. Mengembangkan teori uang digital.
  5. Secure phone. Beberapa komponen dari konsep secure phone, yaitu authentication module (menggunakan SAM). [Sudah ada 1 mahasiswa yang mengerjakan ini.] Ini bagian besar dari disertasi Virtual Trusted Machine (mahasiswa S3: Raidun). Beberapa kemungkinan implementasi dari ide secure phone dengan menggunakan DSP board.
  6. Proteksi DNS terhadap DoS attack. [Sudah ada 1 mahasiswa yang mengambil ini.] Fokus kepada teknis. (Sementara untuk aspek teori adanya di level S3.)
  7. Automated software security testing. Exploring several framework. [Sudah ada 1 mahasiswa yang memilih menggunakan Sully]
  8. Beberapa sub-topik dari disertasi mahasiswa saya. (Mahasiswa S3 akan memberikan beberap sub-topik dari penelitian [kesulitan] mereka saat ini yang dapat menjadi topik thesis.) Topik terkait dengan Graph-based Social Network Analysis (SNA), graph compression, big-data in SNA,¬† Distributed IDS (ant-colony), eLearning berbasis Jigsaw, …

Sementara ini daftarnya adalah seperti itu. Akan saya tambahkan dengan link-link lain agar lebih jelas lagi dalam update berikutnya.