Little boy questioned his mother, he asked what he can be in the future..with a sad smile, she tells him he can be anything he wants to be.... Boy said he’d become (an) astronaut and fly out into space crews around the universe he wanted to see the stars and also see other planets in outer space------------- "Why don’t we just keep dreaming, let’s keep our mind with dream and faith, as long as we wish we can make it come true, how old you are never forget your dream and keep dreaming "
Showing posts with label Kriptograpi. Show all posts
Showing posts with label Kriptograpi. Show all posts

Saturday, 12 May 2018

Hashing : Mekanisme menjamin integritas data

Hashing adalah mekanisme yang digunakan untuk menjamin integritas dari data. Hashing didasarkan pada fungsi matematika satu arah: fungsi yang relatif mudah dihitung, tetapi sangat sulit untuk dibalik. Menggiling kopi adalah contoh yang baik dari fungsi satu arah: Sangat mudah untuk menggiling biji kopi, tetapi hampir tidak mungkin untuk mengembalikan semua potongan kecil untuk membangun kembali biji asli.
Gambar di atas ini menggambarkan bagaimana hashing dilakukan. Data dengan panjang dan ukuran tertentu merupakan input untuk fungsi hash, dan hasil dari fungsi hash adalah hash dengan panjang yang tetap (fixed length), yang dikenal sebagai "digest" atau "fingerprint" Ketika data yang sama digunakan fungsi algoritma hash sebanyak dua kali , hasilnya akan identik dan menghasilkan nilai hash yang sama. Setiap modifikasi kecil pada data menghasilkan output yang sangat berbeda. Karakteristik ini sering disebut sebagai efek longsoran salju (avalache effect). Data dianggap otentik jika hasil dari hash menghasilkan nilai hash sesuai yang diharapkan. Karena algoritma hash menghasilkan output dengan panjang tetap, ada keterbatasan dari jumlah output. Ada kemungkinan untuk dua input yang berbeda untuk menghasilkan output yang identikyang disebut dengan "hash collision".

Hashing sendiri mirip dengan perhitungan CRC checksum, tetapi jauh lebih kuat secara kriptografi. CRC dirancang untuk mendeteksi kesalahan yang terjadi secara acak dalam data digital di mana algoritma hash dirancang untuk menjamin integritas data bahkan ketika modifikasi data disengaja dengan tujuan untuk mengirimkan data palsu sebagai otentik. Satu perbedaan utama adalah ukuran "digest" yang dihasilkan. Checksum CRC relatif kecil, seringkali 32 bit. Algoritma hash yang umum digunakan menghasilkan "digest" dalam kisaran 128 hingga 512 bit panjangnya. Secara relatif lebih mudah bagi penyerang untuk menemukan dua input dengan nilai-nilai checksum 32-bit yang identik daripada menemukan dua input dengan intestasi identik 128 hingga 512 bit.

Friday, 11 May 2018

Apa itu Digital Signatures (RSA Digital Signature)

Misalkan seorang pelanggan mengirimkan instruksi transaksi melalui email ke seorang broker saham, dan transaksi ternyata sangat buruk bagi pelanggan. Bisa dibayangkan bahwa pelanggan dapat mengklaim tidak pernah mengirim pesanan transaksi atau seseorang memalsukan email. Broker dapat melindungi dirinya sendiri dengan mewajibkan penggunaan tanda tangan digital sebelum menerima instruksi melalui email.

Tanda tangan tulisan tangan telah lama digunakan sebagai bukti kepengarangan (Authorship), atau setidaknya kesepakatan dengan keaslian dari isi dan pemilik dokumen. Tanda tangan digital dapat memberikan fungsi yang sama seperti tanda tangan tulisan tangan, dan banyak lagi.

Gagasan mengenkripsi file dengan kunci pribadi (private key) Anda merupakan awal menuju tanda tangan digital. Siapa pun yang mendekripsi file dengan kunci publik (public key) anda tahu bahwa anda adalah orang yang mengenkripsikannya artinya anda tidak bisa menyangkal bahwa andalah yang membuat dan mengirim (non repudiation). Namun, karena enkripsi asimetris mahal secara komputasi maka menjadi tidak optimal. 

Tanda tangan digital tetap meninggalkan data asli dengan kondisi tidak terenkripsi. Tidak perlu dekripsi mahal untuk hanya membaca dokumen yang ditandatangani. Sebaliknya, tanda tangan digital menggunakan algoritma hash untuk menghasilkan sidik jari yang jauh lebih kecil dari data asli. Sidik jari ini kemudian dienkripsi dengan private key si penandatangan. Dokumen dan tanda tangan dikirim bersama. Tanda tangan digital divalidasi dengan mengambil dokumen dan menjalankannya melalui algoritma hash untuk menghasilkan sidik jarinya. Tanda tangan tersebut kemudian didekripsi dengan public key pengirim. Jika tanda terenkripsi dan kecocokan hash yang dihitung, maka dokumen tersebut identik dengan apa yang semula ditandatangani oleh penandatangan.

Kriptografi asimetris merupakan dasar untuk tanda tangan digital. Algoritma public key seperti RSA menghasilkan dua kunci: satu pribadi (private key) dan kunci publik (public key). kedua kunci tsb secara matematis saling terkait.

Contoh Kasus :
Alice ingin mengirimi email kepada Bob yang berisi informasi penting untuk transaksi saham. Alice ingin memastikan bahwa Bob tahu bahwa pesan itu datang darinya, dan pesan itu tidak berubah setelah dia mengirimnya.
Alice membuat pesan bersama dengan sidik jari pesan (digest). Dia kemudian mengenkripsi digest ini dengan kunci pribadinya seperti yang ditunjukkan pada Gambar 1.

 Alice memaketkan pesan, sidik jari dari pesan yang terenkripsi, dan kunci publiknya bersama-sama untuk membuat dokumen yang ditandatangani. Alice mengirimkan ini ke Bob seperti yang ditunjukkan pada Gambar 2.

Bob menerima pesan itu dan membacanya. Untuk memastikan bahwa pesan itu datang dari Alice, dia menciptakan sidik jari/intisari dari pesan tersebut. Dia mengambil pesan terenkripsi yang diterima dari Alice dan mendekripsi menggunakan kunci publik Alice. Bob membandingkan sidik jari pesan yang diterima dari Alice dengan yang dia hasilkan. Jika mereka cocok, Bob tahu bahwa dia dapat percaya bahwa tidak ada yang merusak pesan seperti yang ditunjukkan pada Gambar 3.