APLIKASI PENGAMANAN DOKUMEN TEKS DENGAN METODE CERTIFICATELESS PUBLIC KEY CRYPTOGRAPHY TANPA PAIRING

Ukuran: px
Mulai penontonan dengan halaman:

Download "APLIKASI PENGAMANAN DOKUMEN TEKS DENGAN METODE CERTIFICATELESS PUBLIC KEY CRYPTOGRAPHY TANPA PAIRING"

Transkripsi

1 APLIKASI PENGAMANAN DOKUMEN TEKS DENGAN METODE CERTIFICATELESS PUBLIC KEY CRYPTOGRAPHY TANPA PAIRING SKRIPSI Oleh: SUNARDI NIM : PROGRAM STUDI TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK TIME MEDAN 2015

2 ABSTRAK Penggunaan algoritma kriptografi kunci publik mengharuskan seseorang untuk menjamin keaslian dari kunci publiknya. Implikasi langsung dari mekanisme ini adalah diperlukan suatu layanan untuk menjamin bahwa kunci publik B adalah asli. Hal ini tentunya memerlukan biaya, sehingga tidak efisien untuk diterapkan secara praktikal. Pada kriptografi kunci publik normal, jaminan ini diperoleh melalui sertifikasi oleh sebuah Certification Authority (CA). Untuk itu, maka dapat diterapkan metode yang tidak memerlukan proses sertifikasi terhadap kunci publik. Sasaran utama dari Certificateless Public Key Encryption (CLPKE) adalah untuk memperbolehkan seorang pengirim untuk mengirimkan sebuah pesan rahasia kepada seorang penerima dengan mengenkripsi pesan dengan menggunakan kunci publik penerima yang tidak perlu mencantumkan sebuah sertifikat yang dibuat oleh CA. Sebagai hasilnya, seseorang dapat membuang proses pengecekan sertifikat yang menambah kerumitan sistem. Selain tidak mencakup proses pengecekan, pengirim juga diberikan jaminan bahwa hanya penerima yang jujur yang melakukan proses dengan melalui prosedur otentikasi yang sesuai dan memiliki kunci privat parsial yang benar yang berhubungan dengan identitasnya ID dari Key Generation Center (KGC) yang mampu untuk mendekripsi pesan. Dalam penelitian ini, dibahas proses kerja dari setiap tahapan pada Certificateless Public Key Encryption dan akan diimplementasikan dalam proses pengiriman pesan. Kata kunci: Certificateless Public Key Encryption (CLPKE), pengiriman pesan, jaringan komputer i

3 ABSTRACT Implementation of public key cryptography needs the public key to be sertified first. The direct implication of this mechanism is that it needs a service to guarantee that the public key is valid. Of course, this needs fee, so that it s not efficient to be implemented practically. In public key cryptosystem, this process is done by Certification Authority (CA). Therefore, it needs a method which doesn t need a sertification process for public key. The goal of Certificateless Public Key Encryption (CLPKE) is to allow sender to send a secret message to receiver by encrypting the message by using receiver s public key without the needs of sertification of public key. As the result, the sender could remove the sertification checking. Besides that, the sender is given guaranteed that only honest receiver who follow the authentication procedure correctly and has the right partial private key which is related to the identity from Key Generation Center (KGC), that could decrypt the message. In this research, the application will show the detail process of every step in Certificateless Public Key Encryption and is implemented in message sending process. Keyword : Certificateless Public Key Encryption (CLPKE), sending message, computer network ii

4 KATA PENGANTAR Puji syukur kepada Tuhan Yang Maha Esa yang telah memberikan kesehatan kepada saya penulis dan berkat kebajikan yang telah diperbuat selama ini sehingga saya dapat menjelaskan skripsi yang merupakan salah satu pemenuhan kurikulum program studi Teknik Informatika pada STMIK TIME Medan. Adapun judul dari skripsi ini adalah Aplikasi Pengamanan Dokumen Teks dengan Metode Certificateless Public Key Cryptography tanpa Pairing. Dalam penyusunan skripsi ini, penulis banyak menerima bantuan baik bimbingan maupun petunjuk serta saran nasehat dari berbagai pihak. Melalui kesempatan ini penulis ingin menyampaikan rasa terima kasih yang sebesar besarnya kepada : 1. Ibu Feriani Astuti, M.Kom, selaku Dosen Pembimbing I yang telah membantu dan membimbing penulis dalam menyelesaikan skripsi ini. 2. Bapak Octara Pribadi, S.Kom, selaku Dosen Pembimbing II yang telah membantu dan membimbing penulis dalam menyelesaikan skripsi ini. 3. Bapak Simon Kanggali, selaku Ketua Yayasan STMIK TIME Medan. 4. Bapak Prof. Chainur Arrasyid, selaku Ketua BPH STMIK TIME Medan. 5. Bapak Prof. Harlem Marpaung, Ph.D, selaku Ketua STMIK TIME Medan. 6. Bapak Jackri Hendrik, S.T, M.Kom, selaku Puket I STMIK TIME Medan. 7. Bapak Hendri, M.Kom, selaku Ketua Program Studi Teknik Informatika STMIK TIME Medan. 8. Seluruh Dosen STMIK TIME Medan, yang telah banyak memberikan ilmu pengetahuan kepada penulis selama perkuliahan. iii

5 Meskipun telah disusun, penulis menyadari bahwa isi dan teknik penulisan skripsi ini masih memerlukan perbaikan untuk menyempurnakannya baik dari segi tata bahasa manapun materi yang terkandung didalamnya. Oleh karena itu setiap kritik dan saran akan diterima dengan senang hati agar dapat dijadikan bahan perbaikan untuk penulisan selanjutnya. Akhir puji dan syukur daya ucapkan kepada Tuhan Yang Maha Esa, semoga kita selalu dalam lindungan dan karunianya. Medan, 16 Februari 2015 Penulis Sunardi iv

6 DAFTAR ISI ABSTRAK... i ABSTRACT... ii KATA PENGANTAR... iii DAFTAR ISI... v DAFTAR GAMBAR... viii DAFTAR TABEL... x DAFTAR LAMPIRAN... xi BAB I PENDAHULUAN Latar Belakang Masalah Identifikasi Masalah Batasan Masalah Tujuan dan Manfaat Penelitian Sistematika Penulisan BAB II LANDASAN TEORI Aplikasi Pengenalan Kriptografi Sistem Kriptografi Kriptografi Kunci Rahasia Kriptografi Kunci Publik Sertifikasi (Certification) Landasan Matematis Kriptografi Fungsi Jueneman Metode Rabin Miller Aritmatika Modular Generator Primitif Key Escrow Infrastruktur Kunci Publik Certificateless Public Key Cryptography (CLPKC) Algoritma Skema CLPKC v

7 Analisis Keamanan BAB III METODE PENELITIAN Tempat dan jadwal penelitian Kerangka kerja Identifikasi Masalah Metode pengumpulan data Analisa sistem Perancangan sistem Pembangunan sistem Uji coba sistem BAB IV ANALISIS DAN PERANCANGAN Analisis Pemodelan Domain Informasi Penggambaran Fungsi Modul Representasi Tingkah Laku Model Analisis Fungsional Analisis Non Fungsional Partisi Model Perancangan Global Form Splash Screen Form Main Aplikasi Form Tambah User Form Login Form Utama Aplikasi Form Kirim File Form Kotak Masuk / Keluar Pemahaman vi

8 Form Pilih Algoritma Form Input Nilai Kunci Form Input Pesan Form Pemahaman Enkripsi Form Pemahaman Dekripsi Form Laporan Perancangan Basis Data BAB V HASIL DAN PEMBAHASAN Hasil Tampilan Bagian Pemahaman Tampilan Bagian Aplikasi Pembahasan BAB V1 KESIMPULAN DAN SARAN Kesimpulan Saran DAFTAR PUSTAKA LAMPIRAN vii

9 DAFTAR GAMBAR Gambar 2.1. Kriptografi Kunci Rahasia... 9 Gambar 2.2. Kriptografi Kunci Publik Gambar 2.3. Contoh Sertifikat Digital Gambar 2.4. Contoh Hirarki Otoritas Sertifikat Digital Gambar 2.5. Ilustrasi PKI Gambar 3.1. Kerangka kerja penelitian Gambar 4.1. Activity Diagram dari Setup Gambar 4.2. Activity Diagram dari Partial Key Extract Gambar 4.3. Activity Diagram dari Set Secret Value Gambar 4.4. Activity Diagram dari Set Private Key Gambar 4.5. Activity Diagram dari Set Public Key Gambar 4.6. Activity Diagram dari Encrypt Gambar 4.7. Activity Diagram dari Decrypt Gambar 4.8. (a) Diagram Use Case dari Aplikasi (b) Diagram Use Case dari Pemahaman Gambar 4.9. Rancangan Form Splash Screen Gambar Rancangan Form Main Gambar Rancangan Form Tambah User Gambar Rancangan Form Login Gambar Rancangan Form Utama Aplikasi Gambar Rancangan Form Kirim File Gambar Rancangan Form Kotak Masuk / Keluar Gambar Rancangan Form Pilih Algoritma Gambar Rancangan Form Input Nilai Kunci Gambar Rancangan Form Input Pesan Gambar Rancangan Form Pemahaman Enkripsi Gambar Rancangan Form Pemahaman Dekripsi Gambar Rancangan Form Laporan Gambar Rancangan Relasi Antar Tabel viii

10 Gambar 5.1. Tampilan form splash screen Gambar 5.2. Tampilan form Login Gambar 5.3. Form Tambah User Baru Gambar 5.4. Form Main Gambar 5.5. Form Main Saat Pemilihan Link Pemahaman Gambar 5.6. Form Pilihan Pemahaman Gambar 5.7. Form Pemahaman Proses Pembentukan Kunci Gambar 5.8. Form Pemahaman Proses Enkripsi (Tampilan Awal) Gambar 5.9. Form Input Pesan Gambar Form Pemahaman Proses Enkripsi Gambar Form Proses Dekripsi Gambar Form Main Saat Pemilihan Link Aplikasi Gambar Form Main Aplikasi Kotak Masuk Gambar Form Main Aplikasi Kotak Keluar Gambar Form Isi Kotak Gambar Form Kirim File Gambar Tampilan Rincian Data ix

11 DAFTAR TABEL Tabel 3.1 Daftar waktu dan kegiatan penelititan Tabel 4.1 Narasi Use Case Melakukan Proses Pembentukan Kunci Tabel 4.2 Narasi Use Case Mengenkripsi Pesan Tabel 4.3 Narasi Use Case Mendekripsi Pesan Tabel 4.4 Tabel User Tabel 4.5 Tabel KotakMasuk Tabel 4.6 Tabel KotakKeluar x

12 DAFTAR LAMPIRAN CD program Surat keputusan dosen pembimbing skripsi Daftar riwayat hidup mahasiswa Source code program xi

13 BAB I PENDAHULUAN 1.1. Latar Belakang Masalah Seiring dengan semakin berkembangnya teknologi komputer dan komunikasi, pengamanan data digital merupakan suatu permasalahan penting untuk mencegah agar isi dari data digital tidak diketahui oleh pihak yang tidak berhak. Pengamanan data digital ini dapat dilakukan dengan menggunakan metode kriptografi. Dalam literatur, dapat ditemukan berbagai metode kriptografi yang dapat diterapkan. Metode kriptografi ini dapat dikelompokkan menjadi dua bagian besar, yaitu metode kriptografi kunci rahasia (metode simetris) dan metode kriptografi kunci publik (metode asimetris). Metode simetris menggunakan kunci yang sama untuk melakukan proses enkripsi dan dekripsi, sehingga kunci yang digunakan harus dipertukarkan antara pengirim dan penerima. Sementara itu, metode asimetris menggunakan kunci publik untuk proses enkripsi dan kunci privat untuk proses dekripsi, dimana kunci publik akan dipublikasikan kepada semua orang. Hal ini menyebabkan kunci publik harus disertifikasi untuk menjamin keaslian dari kunci publiknya. Realisasi dari mekanisme infrastruktur kunci publik ini memiliki masalah dalam hal pencabutan kembali, penyimpanan dan distribusi dari sertifikat. Untuk menyelesaikan permasalahan ini, maka Al-Riyami dan Paterson memperkenalkan sebuah paradigma baru yang disebut certificateless public key cryptography (CLPKC). Perbedaan utama antara kunci publik tradisional dan kunci publik CLPKC adalah kunci publik CLPKC tidak perlu disertifikasi oleh 1

14 2 otoritas terpercaya (Key Generation Center / KGC), sehingga KGC tidak dapat mengetahui kunci privat user. Namun, kebanyakan CLPKC yang dikembangkan berdasarkan pada identity-based encryption (IBE) dari Boneh dan Franklin yang menggunakan bilinear pairing sebagai sekuritasnya. Penggunaan bilinear pairing ini memiliki biaya komputasi yang sangat besar jika dibandingkan dengan operasi eksponensiasi modular standar. Untuk mengatasi masalah itu, Joonsang Baek, Reihaneh Safavi-Naini dan Willy Susilo mengembangkan sebuah algoritma CLPKC yang tidak menggunakan pairing, yaitu sebuah skema yang hanya menggunakan operasi matematika dasar sebagai sekuritasnya. Penulis merasa tertarik untuk mempelajari dan menerapkan algoritma kriptografi ini dengan pertimbangan bahwa algoritma ini mampu menyelesaikan masalah key escrow problem dari identity based cryptography dan memiliki biaya komputasi yang relatif kecil. Oleh karena itu, penulis mengambil skripsi yang berjudul Aplikasi Pengamanan Dokumen Teks dengan Metode Certificateless Public Key Cryptography tanpa Pairing Identifikasi Masalah Berdasarkan penjabaran latar belakang diatas, maka yang menjadi permasalahan adalah: 1. Bagaimana mengamankan isi dari dokumen teks sehingga tidak diketahui oleh pihak yang tidak berhak? 2. Bagaimana menerapkan metode certificateless public key cryptography (CLPKC) tanpa pairing untuk melakukan pengamanan data?

15 3 3. Bagaimana membantu pemahaman terhadap prosedur kerja dari metode certificateless public key cryptography (CLPKC) tanpa pairing? 1.3. Batasan Masalah Ruang lingkup permasalahan dalam merancang perangkat lunak ini dibatasi sebagai berikut: 1. Bilangan prima yang diperlukan akan dibangkitkan dan diuji dengan menggunakan metode Rabin Miller. 2. Fungsi hash satu arah yang digunakan adalah fungsi Jueneman. 3. Identitas (ID) user berupa alamat yang digunakan. 4. Untuk bagian pemahaman, bilangan yang diperlukan dalam proses kerja algoritma memiliki batasan minimal 2 digit bilangan bulat positif dan maksimal 3 digit bilangan bulat positif. Untuk bagian aplikasi, bilangan yang diperlukan dalam proses kerja algoritma memiliki batasan minimal 2 digit bilangan bulat positif dan maksimal 6 digit bilangan bulat positif. Pembatasan nilai yang dilakukan untuk bagian studi / pemahaman dengan tujuan agar proses kerja dari skema dapat lebih mudah dipahami, karena nilai yang semakin besar akan membuat proses perhitungan menjadi semakin sulit dan rumit. 5. Hasil proses perhitungan yang dihasilkan oleh perangkat lunak dapat disimpan ke dalam sebuah file teks yang berekstensi *.txt. 6. Pemahaman dilakukan dengan menggunakan bantuan animasi-animasi sederhana, seperti gambar orang sedang mengetik komputer, pergerakan gambar kertas untuk melambangkan pengiriman file dan sebagainya.

16 4 7. Tipe file yang dapat dibuka berupa file teks yang berekstensi *.txt. 8. Hasil enkripsi akan disimpan ke dalam database Microsoft Access Tujuan dan Manfaat Penulisan Tujuan penyusunan skripsi ini adalah untuk membuat sebuah perangkat lunak yang mampu untuk menerapkan algoritma CLPKC tanpa pairing untuk mengamankan isi file teks, sekaligus menyediakan fasilitas pemahaman untuk membantu user dalam mempelajari proses kerja dari algoritma CLPKC. Manfaat dari penyusunan skripsi ini, yaitu: 1. Perangkat lunak dapat digunakan untuk mengamankan isi file teks. 2. Perangkat lunak dapat digunakan untuk membantu pemahaman mengenai prosedur kerja dari CLPKC tanpa pairing. 3. Penelitian skripsi ini dapat dijadikan sebagai bahan referensi dalam mempelajari mengenai CLPKC tanpa pairing Sistematika Penulisan bab, yaitu : Agar pembahasan lebih sistematika, maka tulisan ini dibuat dalam enam BAB I PENDAHULUAN Berisi latar belakang pemilihan judul, identifikasi masalah, tujuan dan manfaat, batasan masalah dan sistematika penulisan.

17 5 BAB II LANDASAN TEORI Berisi tentang penjelasan singkat mengenai aplikasi, pengenalan kriptografi, sistem kriptografi, sertifikasi, landasan matematis kriptografi dan Certificateless Public Key Cryptography (CLPKC). BAB III METODE PENELITIAN Berisi tentang tempat dan jadwal penelitian, kerangka kerja, metode pengumpulan data, analisa sistem, perancangan sistem, pembangunan sistem, uji coba sistem dan implementasi sistem. BAB IV ANALISA DAN PERANCANGAN Berisi tentang pembahasan mengenai proses kerja dan perancangan tampilan antarmuka. BAB V HASIL DAN PEMBAHASAN Berisi tentang tampilan output dari sistem yang dibuat dan pembahasan mengenai hasil pengujian terhadap sistem. BAB VI KESIMPULAN DAN SARAN Berisi tentang kesimpulan dan saran-saran yang diambil penulis setelah menyelesaikan skripsi.

18 BAB II LANDASAN TEORI 2.1 Aplikasi Aplikasi adalah suatu perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak adalah pengolah kata, lembar kerja dan pemutar media. Beberapa aplikasi yang digabung bersama menjadi suatu paket kadang disebut sebagai application suite. Contohnya adalah Microsoft Office dan OpenOffice.org, yang menggabungkan suatu apliaksi pengolah kata, lembar kerja, serta beberapa aplikasi lainnya. Aplikasi-aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan menggunakan tiap aplikasi. Sering kali, mereka memiliki kemampuan untuk saling berinteraksi satu sama lain sehingga menguntungkan pengguna. Contohnya, suatu lembar kerja dapat dimasukkan dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah. Definisi aplikasi menurut para ahli: 1. Menurut Hengky W. Pramana Aplikasi adalah suatu unit perangkat lunak yang dibuat untuk melayani kebutuhan akan beberapa aktivitas seperti sistem perniagaan, game 6

19 7 pelayanan masyarakat, periklanan, atau semua proses yang hampir dilakukan manusia. 2. Menurut Hendrayudi Aplikasi adalah kumpulan perintah program yang dibuat untuk melakukan pekerjaan-pekerjaan tertentu. 3. Menurut Ibisa Aplikasi adalah alat bantu untuk mempermudah dan mempercepat proses pekerjaan dan bukan merupakan beban bagi penggunanya. ( 2.2 Pengenalan Kriptografi Jika anda bertukar pesan (misalnya surat) dengan orang lain, maka anda tentu ingin pesan yang anda kirim sampai ke pihak yang dituju dengan aman. Pengertian aman di sini sangat luas. Aman bisa berarti bahwa selama pengiriman pesan tentu anda berharap pesan tersebut tidak dibaca oleh orang yang tidak berhak. Sebab, mungkin saja pesan yang anda kirim berisi sesuatu yang rahasia sehingga jika pesan rahasia dibaca oleh pihak lawan atau pihak yang tidak berkepentingan, maka bocorlah kerahasiaan pesan yang anda kirim. Ini adalah masalah keamanan pesan yang dinamakan kerahasiaan (confidentiality atau privacy). (Munir, 2006: 1) Aman bisa juga berarti bahwa anda ingin pesan yang dikirim sampai dengan utuh ke tangan penerima, artinya isi pesan tidak diubah atau dimanipulasi selama pengiriman oleh pihak ketiga. Di sisi penerima pesan, ia tentu ingin memastikan bahwa pesan yang ia terima adalah pesan yang masih asli, bukan

20 8 pesan yang sudah ditambah-tambah atau dikurangi. Ini adalah masalah keamanan pesan yang disebut integritas data (data integrity). Selain itu, penerima yakin bahwa pesan tersebut memang benar berasal dari anda, bukan dari orang lain yang menyamar seperti anda, dan anda pun yakin bahwa orang yang anda kirimi pesan adalah orang yang sesungguhnya. Ini adalah masalah keamanan pesan yang dinamakan otentikasi (authentication). Jika anda sebagai penerima pesan, anda pun tidak ingin kelak pengirim pesan membantah pernah mengirim pesan kepada anda. Ini adalah masalah keamanan yang disebut penyangkalan (repudiation). Zaman sekarang, banyak orang yang membantah telah mengirim atau menerima pesan. Padahal anda yakin bahwa anda memang menerima pesan dari orang tersebut. Jika pengirim membantah telah mengirim pesan, maka anda perlu membuktikan ketidakbenaran penyangkalan tersebut (non-repudiation). Keempat masalah keamanan yang disebutkan di atas, yaitu kerahasiaan, integritas data, otentikasi dan penyangkalan dapat diselesaikan dengan menggunakan kriptografi. Kriptografi tidak hanya menyediakan alat untuk keamanan pesan, tetapi juga sekumpulan teknik yang berguna. Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptos artinya secret (rahasia), sedangkan graphein artinya writing (tulisan). Jadi, kriptografi berarti secret writing (tulisan rahasia). Ada beberapa definisi kriptografi yang telah dikemukakan di dalam berbagai literatur, seperti: 1. Bruce Schneier di dalam bukunya Applied Cryptography menyatakan bahwa: Kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan (Cryptography is the art and science of keeping messages secure).

21 9 2. Menezes, Alfred J., Paul C. van Oorschot dan Scott A. Vanstone dalam buku mereka Handbook of Applied Cryptography menyatakan bahwa: Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data serta otentikasi. (Munir, 2006: 2) 2.3 Sistem Kriptografi Berdasarkan jumlah kunci yang digunakan, terdapat dua jenis sistem kriptografi yaitu sistem kriptografi kunci rahasia (secret-key cryptography) dan sistem kriptografi kunci publik (public-key cryptography) Kriptografi Kunci Rahasia Kriptografi kunci rahasia (secret-key cryptography) sering disebut juga sistem kriptografi simetris (symmetric key cryptography). Sistem ini sering juga disebut sebagai enkripsi konvensional atau enkripsi kunci-tunggal (single key). Pada sistem ini digunakan algoritma yang sama untuk proses enkripsi/dekripsi dengan memakai satu kunci yang sama, seperti terlihat pada Gambar 2.1: Gambar 2.1 Kriptografi Kunci Rahasia Sumber :

22 10 Keamanan dari sistem ini bergantung pada beberapa faktor, yaitu: 1. Algoritma enkripsi harus cukup kuat sehingga tidaklah praktis untuk mendekripsi suatu pesan hanya dengan memiliki cyphertext saja. 2. Keamanan dari enkripsi simetris adalah bergantung pada kerahasiaan kunci, bukan kerahasiaan dari algoritma enkripsi itu sendiri. Semakin panjang kunci yang dipakai maka semakin sulit untuk menebak kunci dengan menggunakan metode brute force attacks, yaitu mencoba semua kemungkinan kunci. Algoritma enkripsi simetris yang popular dewasa ini adalah DES (Data Encryption Standard) dengan panjang kunci 56-bit, IDEA (128-bit), Twofish (sampai dengan 256-bit), Rijndael (sampai dengan 256-bit) dan lain-lain. (Schneier, 2007: 4) Kriptografi Kunci Publik Kriptografi kunci-publik (public-key cryptography) sering disebut juga sistem kriptografi asimetris. Ide kriptografi asimetris ini pertama kali dimunculkan oleh Whitfield Diffie dan Martin Hellman pada tahun Diffie dan Hellman mendeskripsikan sistem ini tanpa menunjukkan algoritmanya. Walaupun demikian mereka menjabarkan syarat-syarat yang harus dipenuhi oleh suatu algoritma public-key yaitu: 1. Mudah secara komputasi bagi suatu pihak B untuk mengkonstruksi sepasang kunci asimetris (kunci publik KU, kunci pribadi KR). 2. Mudah secara komputasi bagi pengirim A, dengan memiliki kunci publik B dan pesan yang ingin dienkripsi, M, untuk menghasilkan ciphertext (C) : C = E KUb (M)

23 11 3. Mudah secara komputasi bagi penerima B untuk mendekripsi ciphertext yang dihasilkan dengan menggunakan kunci pribadinya untuk mengembalikan pesan aslinya. M = D KRb (C) = D KRb [E KUb (M)] 4. Tidak bisa secara komputasi bagi pihak ketiga untuk memperoleh kunci pribadi KRb hanya dengan mengetahui kunci publik KUb. 5. Tidak bisa secara komputasi bagi pihak ketiga untuk mengembalikan data asli M hanya dengan mengetahui kunci publik KUb dan ciphertext C. Walaupun bukanlah suatu keharusan bagi semua aplikasi public-key, namun persyaratan keenam bisa ditambahkan : 6. Fungsi enkripsi dan dekripsi bisa diterapkan dengan urutan yang dibalik : M = E KUb [D KRb (M)] Kegunaan dari persyaratan keenam adalah untuk penerapan tanda tangan digital (digital signature) yang digunakan memecahkan isu otentikasi (authentication) dalam masalah keamanan data. Menurut Stalling, proses enkripsi public-key sederhana melibatkan empat tahap berikut: (Stalling, 2011: 2) 1. Setiap user di dalam jaringan membuat sepasang kunci untuk digunakan sebagai kunci enkripsi dan dekripsi dari pesan yang akan diterima. 2. User mempublikasikan kunci enkripsinya dengan menempatkan kunci publiknya ke tempat umum. Pasangan kunci yang lain tetap dijaga kerahasiaannya. 3. Jika user A ingin mengirimkan sebuah pesan ke user B, ia akan mengenkripsi pesan tersebut dengan menggunakan kunci publik user B.

24 12 4. Pada saat user B ingin mendekripsi sebuah pesan yang diterimanya dari user A, ia akan menggunakan kunci pribadinya sendiri. Tidak ada pihak lain yang bisa mendekripsi pesan itu karena hanya B sendiri yang mengetahui kunci pribadi B. Ilustrasi dari kriptografi kunci publik dapat dilihat pada Gambar 2.2: Gambar 2.2 Kriptografi Kunci Publik Sumber : Sampai saat ini hanya ada beberapa sistem cryptography asimetris yang dipublikasikan. Yang paling berhasil sejauh ini adalah algoritma RSA yang memenuhi keenam persyaratan public-key di atas. Di samping itu, algoritma enkripsi public-key yang lain adalah LUC, DSS, Diffie-Hellman dan lain-lain. (Schneier, 2007: 4-5) Kunci publik adalah kunci yang tidak disembunyikan (boleh diketahui oleh orang lain) dan digunakan dalam proses enkripsi. Kunci private adalah kunci

25 13 rahasia yang tidak boleh diketahui oleh orang lain dan digunakan dalam proses dekripsi. 2.4 Sertifikasi (Certification) Sertifikasi adalah sebuah skema dimana pihak (orang) yang dipercayai seperti penguasa atau pihak yang berwenang mengeluarkan sertifikat untuk pihak lain. Pihak yang dipercayai mengeluarkan kupon (vouchers) yang disebut sertifikat yang memiliki sejumlah arti yang mendalam, misalnya nomor ijazah. Teknologi sertifikasi dikembangkan untuk identifikasi dan otentikasi dimungkinkan dalam skala besar (Stallings, 2011: 186). Untuk dapat lebih memahami kegunaan sertifikat digital ini, dapat dijelaskan lebih lanjut pada skenario berikut ini. Anto hendak mengirimkan Badu suatu dokumen rahasia dengan metode kunci publik. Jika mereka belum pernah bertemu sebelumnya, tentu Badu harus mengirimkan kunci publiknya kepada Anto agar Anto dapat melakukan enkripsi yang pesannya hanya dapat dibuka oleh Badu. Demikian juga pula sebaliknya, Anto harus mengirimkan kepada Badu kunci publiknya agar Badu dapat memeriksa keaslian tanda tangan Anto pada pesan yang dikirim. Dengan cara ini Anto dapat memastikan pesan itu sampai ke tujuannya, sedangkan Badu dapat merasa yakin bahwa pengirim pesan itu adalah Anto. Masalah yang muncul adalah bagaimana mereka dapat saling bertukar kunci dengan aman? Bisa saja di tengah pertukaran kunci-kunci publik milik Anto dan Badu itu diganti dengan kunci publik milik Maman. Dengan begitu Maman

26 14 dengan bebas dapat menyadap dan mengubah seluruh informasi. Inilah suatu contoh dari man-in-the-middle attack. Anto dan Badu harus sama-sama yakin bahwa kunci-kunci publik yang mereka dapatkan benar-benar otentik. Mereka bisa mendapatkannya dari sesorang yang dipercaya, Tari misalnya. Setiap anggota jaringan diasumsikan telah memiliki saluran komunikasi pribadi yang aman dengan Tari. Saluran inilah yang dimanfaatkan untuk mengirim kunci publik Badu ke Anto (dan sebaliknya). Tari menjadi penjamin keabsahan kunci jika Anto dan Badu sebelumnya tidak pernah bertukar kunci publik. Skenario ini tetap membutuhkan kunci-kunci kriptografi lagi (baik itu kunci simetris ataupun kunci asimetris) untuk pengamanan saluran komunikasi antara Tari dengan Anto atau Badu. Masalah di atas dapat dipecahkan dengan penggunaan sertifikat digital. Tari tidak lagi setiap saat menjadi penukar kunci, namun Tari cukup menandatangani kunci publik milik setiap orang di jaringan tersebut. Sebenarnya dalam sertifikat tersebut tak hanya berisi kunci publik, namun dapat berisi pula informasi penting lainnya mengenai jati diri pemilik kunci publik, seperti misalnya nama, alamat, pekerjaan, jabatan, perusahaan dan bahkan hash dari suatu informasi rahasia. Semua orang mempercayai otoritas Tari dalam memberikan tanda tangan, sehingga orang-orang dalam jaringan itu merasa aman menggunakan kunci publik yang telah ditandatangani Tari. Jika Maman berhasil mencuri sertifikat digital yang dipertukarkan antara Anto dan Badu, serta menggantinya dengan sertifikat digital milik dirinya sendiri, maka Anto dan Badu dapat segera melihat bahwa sertifikat digital yang diterimanya bukan lawan bicara yang semestinya.

27 15 Bagaimana jika Chandra yang berada di luar jaringan Tari hendak berkomunikasi dengan Anto? Chandra juga memiliki sertifikat, tetapi tidak ditandatangani oleh Tari, melainkan oleh Tata, seseorang yang dipercaya dalam jaringan tempat Chandra berada. Tari dan Tata adalah otoritas sertifikat (certificate authority), yaitu pihak-pihak yang berwenang memberikan sertifikat. Namun Anto tidak mengenal dan tidak mempercayai Tata. Masalah ini dapat diselesaikan jika ada otoritas sertifikat (OS) yang kedudukannya lebih tinggi dari Tata dan Tari katakanlah Tania. Tania memberikan pengesahan kepada Tata dan Tari. Jadi ada hirarki dari sertifikat digital. Jika Tania berada pada kedudukan hirarki yang paling tinggi, maka Tania disebut otoritas sertifikat utama (root certificate authority). Contoh sertifikat digital dapat dilihat pada Gambar 2.3: Gambar 2.3 Contoh Sertifikat Digital Sumber : Anto mempercayai tanda tangan Tari. Namun karena Tari sendiri keberadaannya disahkan oleh Tania, tentunya Anto harus mengakui otoritas

28 16 Tania. Jika Tania memberikan pengesahan kepada OS lain dibawahnya, seperti Tata, maka dengan menurut struktur hirarki percabangan OS, Anto dapat memeriksa kebenaran sertifikat digital milik Chandra yang disahkan oleh Tata. Contoh hirarki otoritas sertifikat digital dapat dilihat pada Gambar 2.4: Gambar 2.4 Contoh Hirarki Otoritas Sertifikat Digital Sumber : kripto81-300x271.jpg Serangan terhadap sistem yang memiliki pengamanan dengan sertifikat digital sulit dilakukan. Jelas Edi tidak mendapatkan apa-apa kalaupun ia memainkan ulang percakapan antara Anto dan Chandra. Edi membutuhkan kunci privat untuk bisa membuka pesan-pesan yang dipertukarkan, padahal kunci privat itu tidak ada di dalam sertifikat digital. Penukaran sertifikat digital Chandra dengan sertifikat digital Maman akan segera diketahui, karena sertifikat digital itu pasti berbeda. Sedangkan jika

29 17 sertifikat yang dipertukarkan antara Chandra dan Anto tidak diganti, tetapi yang diganti oleh Maman adalah pesan yang dipertukarkan, maka tentu ada ketidakcocokan dalam pemeriksaan tanda tangan digital. Secara teoritis keunggulan dari tanda tangan digital adalah kemampuan untuk melakukan proses otentikasi secara off-line. Pemeriksa cukup memiliki kunci publik dari OS utama untuk mengetahui sah tidaknya kunci publik dari lawan bicaranya. Selain itu untuk meningkatkan keamanan, kunci publik OS utama bisa saja diintegrasikan dalam program aplikasi. Namun kenyataannya, karena ada kemungkinan sertifikat digital tersebut hilang, tercuri atau identitas pemilik sertifikat berubah (perubahan alamat surat elektronik atau nomor KTP misalnya), maka sertifikat digital perlu diperiksa keabsahannya dengan melihat daftar sertifikat terbatalkan (certificate revocation list) yang disimpan oleh OS. (Stallings, 2011: ) 2.5 Landasan Matematis Kriptografi Berikut dirincikan konsep matematika yang digunakan dalam metode certificateless public key cryptography, yang mencakup fungsi Jueneman, key escrow dan infrastruktur kunci publik Fungsi Jueneman Fungsi hash Jueneman s method termasuk dalam kelompok MAC (Message Authentication Code). Fungsi hash ini sering disebut sebagai quadratic congruential manipulation detection code (QCMDC). Cara kerja dari fungsi hash ini adalah berikut: (Schneier, 2007: 457)

30 18 1. Pertama-tama pecahkan pesan (message) ke dalam m-bit block. 2. Kemudian lakukan perhitungan berikut, H 0 = I H, di mana I H adalah kunci rahasia. 3. Setelah itu, hitunglah H i = (H i 1 + M i ) 2 mod p, di mana p adalah bilangan prima yang lebih kecil daripada 2 m 1 dan + adalah operasi penjumlahan bilangan integer. 4. Jueneman menyarankan jumlah putaran N = 16 dan nilai p = Dia juga menyarankan agar menambahkan sebuah kunci tambahan H 1, sehingga proses dimulai dari H Metode Rabin Miller Bilangan prima adalah bilangan integer yang lebih besar dari satu yang memiliki faktor bilangan satu dan bilangan itu sendiri. Dalam proses pembangkitan bilangan prima, kita sering dihadapkan dengan beberapa masalah berikut ini, 1. Keamanan dari kriptografi tergantung pada jumlah bilangan prima yang tersedia. Ahli matematika telah menemukan bahwa jumlah bilangan prima yang tersedia pada bilangan 512 bit adalah sekitar Dua orang atau lebih mungkin mendapatkan dua bilangan prima yang sama. Bila terdapat satu milyar (10 9 ) orang yang masing-masing berusaha mendapatkan 1000 bilangan prima, maka diperlukan hanya bilangan prima yang berbeda untuk memenuhinya. Bandingkan bilangan prima yang diperlukan dengan bilangan prima yang tersedia. Bayangkan pula bila disediakan bilangan 1024 bit, maka akan tersedia bilangan prima sekitar

31 Angka ini diperoleh dari jumlah bilangan prima yang kurang dari n adalah sekitar n / (ln n). 3. Seseorang dapat membuat database yang dapat menyimpan seluruh bilangan prima dari 2 hingga kurang dari , tapi juga mustahil. Bila mempunyai harddisk yang berkapasitas word (untuk mempermudah perhitungan, dianggap setiap word sanggup menyimpan satu bilangan prima), maka akan diperlukan sekitar harddisk untuk menyimpan seluruh bilangan prima yang kurang dari (Munir, 2006: 197) Selain itu, pemfaktoran bilangan prima juga tidak mudah. Bila mencari faktor prima sedemikian sulit, maka proses pembangkitan bilangan prima juga tidak dapat dilakukan dengan mudah. Triknya adalah pertanyaan ya / tidak. Menjawab pertanyaan apakah angka ini merupakan bilangan prima ini lebih mudah daripada menjawab pertanyaan yang lebih kompleks seperti berapa faktor prima dari n. Cara yang salah untuk mendapatkan bilangan prima adalah dengan membangkitkan bilangan acak dan kemudian mencoba memfaktorkannya. Cara yang bendar adalah membangkitkan bilangan acak dan kemudian mentes apakah merupakan bilangan prima. Terdapat beberapa metoda tes peluang prima, tes menentukan apakah suatu bilangan termasuk bilangan prima atau bukan dengan tingkat keyakinan tertentu. Jadi kita tidak yakin seratus persen bahwa bilangan yang kita tes adalah betul-betul bilangan prima. Metode untuk tes peluang prima yang paling sering digunakan adalah metode Rabin-Miller. Algoritma ini dirancang oleh Michael Rabin dengan

32 20 berdasarkan beberapa ide dari Gary Miller. Algoritma pengetesan ini adalah seperti berikut, 1. Pilih bilangan acak p untuk dites. 2. Hitung b, di mana b adalah banyaknya (p 1) dibagi 2 (yaitu, b adalah pangkat terbesar dari 2, sedemikian sehingga 2b merupakan faktor dari p 1). 3. Kemudian hitung m, sedemikian sehingga p = b.m 4. Pilih bilangan acak a sedemikian sehingga a lebih kecil daripada p. 5. Set j = 0 dan set z = a m mod p. 6. Jika z = 1 atau jika z = p 1, maka p lolos tes dan mungkin bilangan prima. 7. Jika j > 0 dan z = 1, maka p bukan bilangan prima. 8. Set j = j + 1. Bila j < b dan z p 1, set z = z 2 mod p dan kembali ke tahap 4. Jika z = p 1, maka p lolos tes dan mungkin prima. 9. Jika j = b dan z p 1, maka p bukan bilangan prima. Dalam dunia nyata, implementasi pembangkitan bilangan prima dapat berlangsung dengan sangat cepat. Salah satu implementasinya adalah sebagai berikut : 1. Bangkitkan bilangan acak p sepanjang n bit. 2. Set bit MSB (Most Significant Bit) dan LSB (Least Significant Bit) nya ke 1. Atau set bit paling kiri dan kanannya ke bit satu. Pengesetan bit MSB menjamin panjang bit bilangan prima yang dihasilkan sesuai dengan yang diinginkan. Pengesetan bit LSB menjamin agar bilangan acak adalah bilangan ganjil, karena bilangan prima pasti harus bilangan ganjil. 3. Periksa apakah p tidak dapat dibagi bilangan prima kecil : 2,3,5,7,11, dan seterusnya hingga bilangan prima tertinggi yang lebih kecil dari 256.

33 21 Pemeriksaan ini akan mengurangi 80 % peluang bahwa bilangan yang dipilih bukan bilangan prima. Artinya bila bilangan yang dipilih tidak dapat dibagi bilangan prima kecil di atas, peluang bilangan yang dipilih merupakan bilangan prima adalah 80 %. 4. Lakukan tes Rabin Miller untuk beberapa nilai a. Bila p lolos tes untuk satu nilai a, bangkitkan nilai a lainnya. Pilih nilai a yang kecil agar perhitungan lebih cepat. Lakukan tes dengan minimal 5 macam nilai a. Bila p gagal tes, bangkitkan p lainnya dan ulangi langkah (2). (Munir, 2006: ) Aritmatika Modular Aritmatika modular merupakan operasi matematika yang banyak diimplementasikan pada metode kriptografi. Pada metoda kriptografi simetris, operasi aritmetika modular yang sering dipakai adalah operasi penjumlahan modulo dua. Operasi modulo dua ini melibatkan bilangan 0 dan 1 saja sehingga identik dengan bit pada komputer. Sebagai contoh, misalkan seorang bapak mengatakan kepada istrinya bahwa dia akan pulang terlambat 13 jam dari sekarang. Misalkan sekarang pukul 10:00 pagi. Pukul berapakah Milfred akan pulang? Ini merupakan persoalan aritmatika modular 12. Persoalan ini dapat diselesaikan seperti berikut : ( ) mod 12 = 23 mod 12 = 11 mod 12 Cara lain untuk menuliskan bentuk ini adalah dengan menyatakan bahwa 23 dan 11 adalah ekivalen, modulo 12, seperti berikut : (mod 12)

34 22 Secara mendasar, a b (mod n) jika a = b + kn untuk beberapa bilangan integer k. Jika a merupakan non-negatif dan b di antara 0 sampai n, dimana b merupakan sisa hasil bagi dari a ketika dibagi dengan n. Dengan kata lain, b adalah hasil dari a modulo n. Kadang-kadang a juga disebut kongruen dengan b modulo n. Operasi a mod n menghasilkan sisa bagi dari a, dimana sisa bagi merupakan beberapa bilangan integer dari 0 sampai n 1. Operasi ini merupakan reduksi modular. Sebagai contoh, 5 mod 3 = 2. Aritmatika modular mirip dengan aritmatika biasa, terdapat fungsi komutatif, assosiatif dan distributif. Fungsi-fungsi tersebut dapat dideklarasikan seperti berikut : (a + b) mod n = ((a mod n) + (b mod n)) mod n (a b) mod n = ((a mod n) (b mod n)) mod n (a * b) mod n = ((a mod n) * (b mod n)) mod n (a * (b + c)) mod n = (((a * b) mod n) + ((a * c) mod n)) mod n Kriptografi banyak menggunakan perhitungan mod n, karena perhitungan logaritma diskrit dan akar kuadrat mod n merupakan persoalan sulit. Aritmatika modular lebih mudah dikerjakan pada komputer, karena operasi ini membatasi hasil yang didapatkan sehingga hasil operasi dari k-bit modulo n tidak akan lebih dari n. Selain itu, untuk menghitung pangkat dari suatu bilangan modulo bilangan lainnya, dapat dikerjakan secara terpisah seperti contoh berikut ini, Misalkan ingin dicari nilai dari a 8 mod n, maka proses perhitungannya dapat dikerjakan seperti berikut, = (a * a * a * a * a * a * a * a) mod n = ((a 2 mod n) 2 mod n) 2 mod n

35 23 Dengan cara yang sama dapat dicari, a 16 mod n = (((a 2 mod n) 2 mod n) 2 mod n) 2 mod n Metode untuk menghitung a m mod n adalah dengan menggunakan algoritma fast exponentiation. Operasi a m mod n dapat dihitung dengan jumlah perkalian paling banyak 2.( 2 log (m + 1)) dengan algoritma sebagai berikut : 1. Konversikan m ke biner : b k b k-1 b 1 b 0 2. {Initialisasi} I := k; Product := a 3. While I >= 0 Do a. If b I = 0 Then Product := Product^2 Else Product := Product * a; b. Product := Product mod n; I := I 1; (Schneier, 2007: ) Generator Primitif Jika p adalah sebuah bilangan prima dan g adalah sebuah bilangan yang lebih kecil daripada p, maka g adalah sebuah generator mod p jika: Untuk setiap nilai b dari 1 sampai p 1, terdapat beberapa a dimana g a b (mod p). Cara lain untuk menyatakan hal tersebut yaitu bahwa g adalah primitif dari p. Sebagai contoh : jika p = 11, maka 2 adalah sebuah generator mod 11, karena : 2 10 = (mod 11) 2 1 = 2 2 (mod 11) 2 8 = (mod 11) 2 2 = 4 4 (mod 11)

36 = 16 5 (mod 11) 2 9 = (mod 11) 2 7 = (mod 11) 2 3 = 8 8 (mod 11) 2 6 = 64 9 (mod 11) 2 5 = (mod 11) Setiap angka dari 1 sampai 10 dapat diekspresikan dengan 2 a (mod p). Untuk p = 11, generatornya adalah 2, 6, 7 dan 8. Bilangan lainnya bukan generator. Sebagai contoh, 3 bukan sebuah generator karena tidak terdapat solusi pada persamaan berikut: 3ª 2 (mod 11) Secara umum, untuk menguji apakah sebuah bilangan yang diberikan merupakan sebuah generator bukanlah sebuah permasalahan. Hal ini sangat mudah apabila anda mengetahui faktorisasi dari p 1. Anggap q 1, q 2,, q n merupakan faktor prima dari p 1. Untuk menguji apakah sebuah bilangan g merupakan sebuah generator mod p, hitunglah: g (p 1)/q mod p untuk semua nilai q = q 1, q 2,, q n. Jika bilangan yang dihasilkan bernilai 1 untuk beberapa nilai q, maka g bukanlah sebuah generator. Sebaliknya, jika bilangan yang dihasilkan tidak ada yang bernilai 1 untuk semua nilai q, maka g adalah sebuah generator. Jika ingin dicari sebuah generator mod p, maka pilihlah sebuah bilangan acak dari 1 sampai p 1 dan uji apakah merupakan sebuah generator. (Schneier, 2007: )

37 Key Escrow Key escrow (juga dikenal sebagai fair cryptosystem) adalah sebuah pengaturan dimana kunci yang diperlukan untuk mendekripsi data terenkripsi disimpan di dalam data terenkripsi tersebut, sehingga pada keadaan tertentu, sebuah pihak ketiga yang memiliki wewenang dapat memperoleh kunci tersebut. Pihak ketiga ini dapat berupa pengusaha yang ingin mengakses komunikasi privat dari para karyawannya, ataupun pemerintah, yang berkeinginan agar mampu melihat isi data dari komunikasi terenkripsi (Schneier, 2007: 591). Problema teknis pada permasalahan ini merupakan suatu problema struktural yang besar, karena akses ke informasi terproteksi hanya boleh disediakan kepada penerima yang diinginkan dan paling sedikit satu pihak ketiga. Pihak ketiga hanya diperbolehkan mengakses data hanya pada kondisi yang terkontrol secara hati-hati, misalnya atas perintah pengadilan. Sampai sejauh ini, tidak ada desain sistem yang memenuhi persyaratan ini pada basis teknis. Semua sistem yang diperkenalkan juga memerlukan fungsi yang tepat dari beberapa hubungan sosial, seperti proses permintaan untuk akses, pemeriksaan permintaan untuk hak kekuasaan (sebagai contoh oleh pengadilan) dan mengabulkan akses oleh personal teknis yang dibatasi dengan kontrol akses. Semua hubungan / kontrol ini merupakan problema serius jika ditinjau dari perspektif sekuritas desain sistem. Pada level nasional, hal ini merupakan suatu kontroversial pada banyak negara yang disebabkan oleh ketidakpercayaan teknis dari sekuritas pengaturan penyimpanan kunci terenkripsi tersebut (berdasarkan pada sejarah panjang dari kurang memadainya proteksi dari informasi oleh organisasi yang berhak dalam

38 26 rangka untuk memproteksi data dari akses yang tidak legal) dan ketidakpercayaan terhadap sistem sekalipun sistem tersebut dapat berjalan sesuai dengan tujuan perancangannya. (Schneier, 2007: ) Sampai sejauh ini, tidak ada sistem key escrow yang didesain untuk memenuhi sebuah objektif diatas dan hampir semuanya gagal untuk memenuhi salah satu persyaratan diatas Infrastruktur Kunci Publik Dalam kriptografi, Public Key Infrastructure (PKI) adalah sebuah cara untuk otentikasi, pengamanan data dan perangkat anti sangkal. Secara teknis, PKI adalah implementasi dari berbagai teknik kriptografi yang bertujuan untuk mengamankan data, memastikan keaslian data maupun pengirimnya dan mencegah penyangkalan (Stallings, 2011: 437). Teknik-teknik kriptografi yang digunakan antara lain: 1. fungsi hash 2. algoritma enkripsi simetrik 3. algoritma enkripsi asimetrik Fungsi hash akan digunakan bersama dengan algoritma enkripsi asimetrik dalam bentuk tanda tangan digital untuk memastikan integritas dan keaslian berita/data berikut pengirimnya. Algoritma enkripsi simetrik digunakan untuk mengamankan data dengan cara enkripsi. Dalam PKI penggunaan algoritma enkripsi simetrik tidak langsung didefinisikan tetapi telah diimplementasikan oleh berbagai perangat lunak. Secara garis besar PKI diwujudkan dalam bentuk

39 27 kolaborasi antar komponen-komponennya. Contoh ilustrasi PKI dapat dilihat pada gambar berikut: Gambar 2.5 Ilustrasi PKI Sumber : Seperti terlihat pada gambar diatas, komponen-komponen PKI antara lain: 1. Subscriber, merupakan orang yang memberikan kunci publiknya untuk disertifikasi. 2. Certification Authority (CA), berfungsi untuk melakukan sertifikasi terhadap kunci publik dari subscriber. 3. Registration Authority (RA), berfungsi untuk mendaftarkan identitas dari subsriber. 4. Sertifikat Digital, berfungsi sebagai bukti sertifikasi terhadap kunci publik subscriber. Secara praktis wujud PKI adalah penggunaan sertifikat digital. Sertifikat digital adalah sebuah file komputer yang berisi data-data tentang sebuah public key, pemiliknya (subscriber atau CA), CA yang menerbitkannya dan masa berlakunya (Stallings, 2011: ).

40 28 PKI telah diimplementasikan dengan berbagai aplikasi seperti S/MIME, HTTPS, VPN, dll. Anda dapat melihat fitur S/MIME pada software yang terkenal seperti Outlook Express, Mozilla Mail/Thunderbird, dan Evolution. 2.6 Certificateless Public Key Cryptography (CLPKC) Sasaran utama dari Certificateless Public Key Cryptography (CLPKC) adalah untuk memungkinkan seorang pengirim untuk mengirimkan sebuah pesan rahasia kepada seorang penerima dengan mengenkripsi pesan dengan menggunakan kunci publik penerima yang tidak perlu mencantumkan sebuah sertifikat yang dibuat oleh CA. Sebagai hasilnya, seseorang dapat membuang proses pengecekan sertifikat yang menambah kerumitan sistem. Selain tidak mencakup proses pengecekan, pengirim juga diberikan jaminan bahwa hanya penerima yang jujur yang melakukan proses dengan melalui prosedur otentikasi yang sesuai dan memiliki kunci privat parsial yang benar yang berhubungan dengan identitasnya ID dari Key Generation Center (KGC) yang mampu untuk mendekripsi pesan. Model CLPKC dari Joonsang Baek, Reinhaneh Safavi-Naini dan Willy Susilo sangat mirip dengan CLPKC asli. Kenyataannya, sub-algoritma dari CLPKC mereka, Setup, Set Secret Value, Set Private Key, Encrypt dan Decrypt identik dengan algoritma pada CLPKC asli. Dua algoritma yang berbeda adalah Partial Key Extract dan Set Public Key. Partial Key Extract mirip dengan algoritma Partial Private Key Extract dari CLPKC asli dengan sebuah perbedaan dimana output dari Partial Key Extract terdiri dari sebuah kunci privat parsial yang harus disimpan rahasia dan kunci

41 29 publik parsial yang akan digunakan oleh user untuk menghasilkan sebuah kunci publik. Sementara itu, satu-satunya perbedaan antara algoritma Set Public Key dari CLPKC asli dan algoritma Set Public Key dari algoritma mereka adalah pada model CLPKC mereka ini, kunci publik parsial yang dihasilkan oleh Partial Key Extract harus disediakan sebagai input pada Set Public Key, yang membuatnya menjadi tidak mungkin bagi seorang user untuk menentukan sebuah kunci publik jika dia tidak menghubungi KGC dan memperoleh pasangan kunci privat / publik parsial. CLPKC yang dikemukakan oleh Joonsang Baek, Reinhaneh Safavi-Naini dan Willy Susilo ini tidak kehilangan sifat unik dari CLPKC yaitu penggunaan dari sertifikat untuk menjamin otentitas dari kunci publik tidak diperlukan lagi. Berikut dirincikan tahapan kerja yang terdapat pada skema CLPKC tersebut: 1. Setup Pusat pembangkitan kunci (key generation center / KGC) menjalankan algoritma ini untuk menghasilkan sebuah parameter umum params dan sebuah kunci utama masterkey. Nilai params ini diberikan kepada semua pihak yang terlibat dalam sistem. Tahapan ini dapat dituliskan sebagai (params, masterkey) = Setup(). 2. Partial Key Extract Dengan mengambil nilai params, masterkey dan sebuah identitas ID yang diterima dari seorang user sebagai input, KGC menjalankan algoritma ini untuk menghasilkan sebuah kunci privat parsial D ID dan sebuah kunci publik parsial P ID. Tahapan ini dapat dituliskan sebagai (P ID, D ID ) = Partial Key Extract(params, masterkey, ID).

42 30 3. Set Secret Value Dengan mengambil nilai params dan ID sebagai input, user menjalankan algoritma ini untuk menghasilkan sebuah nilai rahasia s ID. Tahapan ini dapat dituliskan sebagai s ID = Set Secret Value(params, ID). 4. Set Private Key Dengan mengambil nilai params, D ID dan s ID sebagai input, user menjalankan algoritma ini untuk menghasilkan sebuah kunci privat SK ID. Tahapan ini dapat dituliskan sebagai SK ID = Set Private Key(params, D ID, s ID ). 5. Set Public Key Dengan mengambil nilai params, P ID, s ID dan ID sebagai input, user menjalankan algoritma ini untuk menghasilkan sebuah kunci publik PK ID. Tahapan ini dapat dituliskan sebagai PK ID = Set Public Key(params, P ID, s ID, ID). 6. Encrypt Dengan mengambil nilai params, ID, PK ID, dan sebuah pesan (plaintext message) M sebagai input, seorang pengirim (sender) menjalankan algoritma ini untuk menghasilkan sebuah ciphertext C. Tahapan ini dapat dituliskan sebagai C = Encrypt(params, ID, PK ID, M). 7. Decrypt Dengan mengambil nilai params, SKID dan ciphertext C sebagai input, penerima pesan (recipient) menjalankan algoritma ini untuk menghasilkan sebuah dekripsi, dimana dapat berupa plaintext message ataupun pesan Reject. Tahapan ini dapat dituliskan sebagai = Decrypt(params, SK ID, C). (Joonsang, B., Reihaneh S.-N., dan Willy, 2005: 4-5)

43 Algoritma Skema CLPKC Berikut akan dirincikan algoritma CLPKC yang berdasarkan pada skema signature Schnorr. Seperti yang telah disebutkan sebelumnya, skema CLPKC dari Joonsang Baek, Reinhaneh Safavi-Naini dan Willy Susilo ini termotivasi dari konstruksi dari skema enkripsi yang menggunakan PKI. Para pengembang algoritma mengaplikasikan skema ini secara teliti untuk menghasilkan skema CLPKC yang efisien. Biaya komputasi untuk merealisasikan skema ini sangat rendah karena dipengaruhi oleh efisiensi yang dibawa dari algoritma signature Schnorr dan juga metode efektif yang mengkombinasikan skema signature Schnorr dan skema enkripsi kunci publik. Algoritma enkripsi dari skema CLPKC ini memerlukan dua buah eksponensiasi tambahan jika dibandingkan dengan enkripsi ElGamal yang di- hash, dan proses dekripsi juga memerlukan sebuah eksponensiasi tambahan jika dibandingkan dengan skema dekripsi ElGamal yang di- hash tersebut. Berikut dijabarkan algoritma dari skema CLPKC: 1. Setup a. Bangkitkan dua buah bilangan prima p dan q sedemikian sehingga q relatif prima terhadap (p 1). b. Pilih sebuah generator acak g dari Z p *. c. Pilih sebuah nilai x secara acak dari Z q *. d. Hitunglah nilai y = g x mod p. e. Pilih fungsi hash H 1 : {0, 1}* x Z q * Z q *, pilih fungsi hash H 2 : {0, 1} l 0 x {0, 1} l 1 Z q* dan pilih fungsi hash H 3 : Zp* x Zp* {0, 1} l, dimana l = l 0 + l 1. f. Params = (p, q, g, y, H 1, H 2, H 3 ).

44 32 g. masterkey = (p, q, g, x, H 1, H 2, H 3 ). 2. Partial Key Extract(params, masterkey, ID) a. Pilih sebuah nilai s Z q * secara acak. b. Hitunglah nilai w = g s mod p. c. Hitunglah nilai t = s + xh 1 (ID, w) (mod p). d. P ID = w (mod p). e. D ID = t (mod p). 3. Set Secret Value(params, ID) a. Pilih sebuah nilai z Zq* secara acak. b. s ID = z (mod p). 4. Set Private Key(params, D ID, s ID ) a. SK ID = (s ID, D ID ) = (z, t). b. Kembalikan nilai SK ID. 5. Set Public Key(params, P ID, s ID, ID) a. P ID = w (mod p). b. s ID = z (mod p). c. = g z (mod p). d. PK ID = (w, ). e. Kembalikan nilai PK ID. 6. Encrypt(params, ID, PK ID, M) a. Panjang bit dari M adalah l 0. b. Parsing PK ID sebagai (w, ). c. Hitunglah ID = wyh 1 (ID, w). d. Pilih nilai {0. 1} l 1 secara acak.

45 33 e. Hitunglah r = H 2 (M, ) (mod p). f. Hitunglah C = (c 1, c 2 ) sedemikian sehingga: c 1 = g r (mod p) c 2 = H 3 (k 1, k 2 ) (M ) (mod p) dimana : k 1 = r (mod p) r k 2 = ID (mod p) g. Kembalikan nilai C. 7. Decrypt(params, SK ID, C) a. Parsing C sebagai (c 1, c 2 ). b. Parsing SK ID sebagai (z, t). c. Hitunglah M = H 2 (c z 1, c t 1 ) c 2 (mod p). d. Jika g H 2 (M, ) (mod p) = c 1 (mod p), maka kembalikan nilai M. e. Jika tidak, maka kembalikan Reject. (Joonsang, B., Reihaneh S.-N., dan Willy, 2005: 8) Analisis Keamanan Secara mendasar, ide utama dari pembuktian sekuritas adalah untuk memungkinkan penyerangan Computational Diffie-Hellman (CDH) yang dilakukan oleh B dengan cara mensimulasikan lingkungan dari penyerang A I dan A II hingga mampu menghitung sebuah kunci Diffie-Hellman g ab dari g a dan g b dengan menggunakan kemampuan A I dan A II. A I dan A II menggunakan berbagai variasi query, seperti random oracle, ekstraksi kunci parsial, permohonan kunci

46 34 publik, ekstraksi kunci privat dan query dekripsi. B akan merespons pada query ini dengan jawaban secara identik terdistribusi sama seperti penyerangan riil. Selain itu, perlu dicatat bahwa untuk attacker A I, B men-set nilai g a sebagai sebuah bagian dari challenge ciphertext dan g b sebagai sebuah kunci publik KGC. Di sisi lain, untuk attacker A II, B men-set nilai g a sebagai bagian dari challenge ciphertext tetapi menggunakan g b untuk menghasilkan sebuah kunci publik yang berhubungan dengan identitas challenge. Kunci publik KGC di-set sebagai g x dimana B mengetahui nilai acak x Z q *. Dengan cara ini, B dapat memberikan kunci utama dari KGC kepada A II. Pengembang algoritma mengingatkan bahwa harus diberikan perhatian khusus ketika jawaban query dari permintaan kunci publik penyerang disimulasikan. Salah satu alasan yaitu sebuah kunci publik pada skema ini dihubungkan tidak hanya pada sebuah kunci privat tetapi juga kunci publik dan privat parsial yang diperoleh dari KGC. Alasan lainnya adalah selama proses serangan, penyerang diberi nama untuk melihat (atau menerima) sembarang kunci publik yang berhubungan dengan identitas target. (Joonsang, B., Reihaneh S.-N., dan Willy, 2005: 9)

47 BAB III METODE PENELITIAN 3.1 Tempat dan Jadwal Penelitian Penelitian ini dimulai dari November 2014 dan berakhir pada April Penelitian (dilakukan di kampus) ditujukan untuk mengumpulkan data yang diperlukan dalam proses perancangan dan pembuatan sistem beserta proses pengujian aplikasi yang dibuat. Berikut ini dijabarkan jadwal penelitian yang dapat dilihat pada Tabel 3.1. Tabel 3.1 Daftar Waktu dan Kegiatan Penelitian November Desember Januari Februari Maret April Waktu Kegiatan Pengumpulan Data Analisa Sistem Perancangan Sistem Pembangunan Uji Coba Sistem Penulisan Lap. Skripsi 35

48 Kerangka Kerja Adapun kerangka kerja yang dibuat penulis seperti gambar 3.1. Identifikasi Masalah Pengumpulan Data Analisa Sistem Perancangan Sistem Pembangunan Uji Coba Sistem Gambar 3.1 Kerangka Kerja Penelitian Identifikasi Masalah Proses diawali dengan merumuskan permasalahan yang ditemukan dan kemudian digunakan sebagai dasar / acuan di dalam penelitian, sehingga di akhir penelitian didapatkan jawaban / kesimpulan atas perumusan masalah tersebut.

49 Metode Pengumpulan Data Teknik pengumpulan data dapat didefinisikan sebagai suatu cara yang digunakan untuk memperoleh data yang dibutuhkan sebagai bahan masukan bagi penulis dalam penyusunan tugas akhir ini. Proses ini dimulai dengan mengumpulkan data-data yang diperlukan dalam penelitian, adapun metode pengumpulan data dalam penelitian dilakukan melalui Penelitian Kepustakaan (library research), dimana penulis mengumpulkan data-data melalui berbagai referensi seperti internet dan bukubuku yang relevan yang berhubungan dengan topik yang dibahas Analisa Sistem Pada tahap ini penulis akan menganalisis permasalahan lebih mendalam mengenai masalah yang muncul, sehingga perlu dirancang sebuah sistem baru untuk menyelesaikan permasalahan tersebut. Sekarang, untuk mengirimkan pesan kepada orang lain, maka dapat digunakan aplikasi ataupun aplikasi chatting pada jaringan ataupun dengan mengirimkan SMS. Namun, aplikasi tersebut tidak dapat menyamarkan pesan yang dikirimkan, sehingga pihak lain dapat mengetahui isi pesan yang dikirimkan Perancangan Sistem Perancangan sistem secara menyeluruh menjelaskan rancangan sistem secara detail. Perancangan yang dilakukan mencakup perancangan tampilan user interface dari aplikasi dan rancangan struktur program.

50 Pembangunan Sistem Proses dilanjutkan dengan melakukan coding terhadap perangkat lunak. Perangkat lunak ini dirancang dengan menggunakan bahasa pemrograman Microsoft Visual Basic 2010 dengan perincian sebagai berikut : 1. Data ditampilkan dengan menggunakan label dan textbox. 2. Data kunci dari setiap user akan disimpan dalam sebuah file database Uji Coba Sistem Setiap aplikasi perangkat lunak yang telah dibangun harus dilakukan uji coba terlebih dahulu sebelum digunakan, untuk mengetahui apakah aplikasi perangkat lunak yang dibangun sudah sesuai dengan yang diharapkan dan bekerja dengan baik atau masih terdapat kesalahan (error). Setiap kesalahan (error) yang terjadi akan diperbaiki kembali.

51 BAB IV ANALISIS DAN PERANCANGAN 4.1. Analisis Analisis sistem adalah pembelajaran sebuah sistem dan komponenkomponennya sebagai prasyarat system design / desain sistem dan spesifikasi sebuah sistem yang baru. Berpindah dari definisi klasik analisis sistem ini ke suatu yang lebih kontemporer, analisis sistem adalah sebuah istilah yang secara kolektif mendeskripsikan fase-fase awal pengembangan sistem. Berdasarkan definisi analisis sistem, maka proses analisis pada penelitian ini yang menggunakan model pemodelan OOA yaitu pemodelan domain informasi, penggambaran fungsi modul, representasi tingkah laku model, dan model partisi Pemodelan Domain Informasi Dalam proses komunikasi di jaringan komunikasi global seperti internet, diperlukan sebuah metode kriptografi untuk mengamankan data yang dikirimkan selama proses komunikasi tersebut. Pada umumnya, metode kriptografi kunci publik yang lebih sering digunakan, karena metode ini tidak memerlukan proses pertukaran kunci yang akan digunakan dalam proses komunikasi. Seseorang hanya perlu untuk mempublikasikan kunci publiknya dan metode yang digunakan agar orang lain dapat mengirimkan data terenkripsi kepadanya. Namun, penggunaan metode kriptografi kunci publik konvensional ini juga memiliki kelemahan, yaitu kunci publik yang digunakan harus disertifikasi 39

52 40 terlebih dahulu, untuk memastikan bahwa kunci publik memang benar-benar dimiliki oleh orang yang akan menerima data terenkripsi, dan bukan orang lain yang menyamar atau memalsukan kunci publik tersebut. Proses sertifikasi terhadap kunci publik ini dapat dilakukan melalui layanan sertifikasi online yang tersedia dan akan dikenakan biaya tertentu. Proses sertifikasi ini memakan waktu dan biaya. Sebagai alternatif dari penggunaan sertifikasi ini, seseorang dapat menggunakan algoritma kriptografi kunci publik yang menerapkan fungsi pairing dalam prosedur kerjanya. Namun, penggunaan fungsi pairing juga memiliki kelemahan yaitu proses perhitungannya yang panjang dan rumit sehingga proses kerjanya memerlukan waktu yang lama dan memerlukan perangkat keras dengan spesifikasi lebih tinggi agar dapat berjalan cepat. Sebagai solusi dari permasalahan diatas, maka dapat digunakan algoritma kriptografi kunci publik yang tidak menggunakan sertifikat dan juga fungsi pairing. Salah satu jenis algoritma ini adalah certificateless public key cryptography (CLPKC) yang dikembangkan oleh Joonsang Baek, Reihaneh Safavi-Naini dan Willy Susilo. Untuk menerapkan algoritma tersebut dalam kehidupan nyata, maka diperlukan sebuah perangkat lunak yang menyediakan antarmuka untuk mengimplementasikan algoritma tersebut untuk mengamankan file dokumen berbasis teks.

53 Penggambaran Fungsi Modul Prosedur kerja dari skema certificateless public key cryptography (CLPKC) ini terdiri dari beberapa tahapan yang dapat dirincikan seperti terlihat pada gambar activity diagram berikut: 1. Setup Prosedur ini berfungsi untuk menghasilkan parameter publik (params) yang akan digunakan dalam setiap proses selanjutnya dan kunci utama (masterkey) yang akan digunakan pada prosedur Partial Key Extract. Gambaran proses kerja dari Setup ini dapat dilihat pada gambar 4.1 berikut: Ambil dua buah bilangan prima, p dan q Pilih generator acak g Pilih nilai acak x Hitung nilai y = g x mod p Pilih fungsi hash H 1, H 2 dan H 3 Params = (p, q, g, y, H 1, H 2, H 3 ) masterkey = (p, q, g, x, H 1, H 2, H 3 ) Gambar 4.1 Activity Diagram dari Setup

54 42 2. Partial Key Extract Prosedur ini berfungsi untuk menghasilkan kunci privat parsial (D ID ) yang diperlukan pada prosedur Set Private Key dan sebuah kunci publik parsial (P ID ) yang diperlukan pada prosedur Set Public Key. Input dari prosedur ini mencakup params, masterkey dan sebuah identitas ID. Gambaran proses kerja dari Partial Key Extract ini dapat dilihat pada gambar 4.2 berikut: Input params, masterkey, ID Pilih sebuah nilai s Hitung nilai w = g s mod p Hitung nilai t = s + xh 1 (ID, w) P ID = w D ID = t Gambar 4.2 Activity Diagram dari Partial Key Extract 3. Set Secret Value Prosedur ini berfungsi untuk menghasilkan sebuah nilai rahasia s ID yang diperlukan pada prosedur Set Private Key dan Set Public Key. Input dari

55 43 prosedur ini mencakup nilai params dan ID. Gambaran proses kerja dari Set Secret Value ini dapat dilihat pada gambar 4.3 berikut: Input params, ID Pilih sebuah nilai z s ID = z Gambar 4.3 Activity Diagram dari Set Secret Value 4. Set Private Key Prosedur ini berfungsi untuk menghasilkan sebuah kunci privat SK ID yang diperlukan pada prosedur Decrypt. Input dari prosedur ini mencakup nilai params, D ID dan s ID. Gambaran proses kerja dari Set Private Key ini dapat dilihat pada gambar 4.4 berikut: Input params, D ID, s ID SK ID = (z, t) Gambar 4.4 Activity Diagram dari Set Private Key

56 44 5. Set Public Key Prosedur ini berfungsi untuk menghasilkan sebuah kunci publik PK ID yang diperlukan pada prosedur Encrypt. Input dari prosedur ini mencakup nilai params, P ID, s ID dan identitas (ID). Gambaran proses kerja dari Set Public Key ini dapat dilihat pada gambar 4.5 berikut: Input params, P ID, s ID, ID P ID = w s ID = z µ = g z PK ID = (w, µ) Gambar 4.5 Activity Diagram dari Set Public Key Prosedur Setup, Partial Key Extract, Set Secret Value, Set Private Key dan Set Public Key ini termasuk ke dalam proses pembentukan kunci. 6. Encrypt Prosedur ini berfungsi untuk mengamankan isi dari pesan menjadi bentuk ciphertext yang akan dikirimkan kepada penerima. Input dari prosedur ini

57 45 mencakup nilai params, ID, PK ID, dan sebuah pesan (plaintext message) M. Gambaran proses kerja dari Encrypt ini dapat dilihat pada gambar 4.6 berikut: Input params, ID, PK ID, M L 0 = panjang bit dari pesan M g ID = wyh 1 (ID, w) Pilih nilai s secara acak Hitung r = H 2 (M, s) Hitung c 1 = g r Hitung c 2 = H 3 (k 1, k 2 ) (M s) C = (c 1, c 2 ) Gambar 4.6 Activity Diagram dari Encrypt

58 46 7. Decrypt Prosedur ini berfungsi untuk mengubah ciphertext menjadi bentuk pesan semula. Input dari prosedur ini mencakup nilai params, SKID dan ciphertext (C). Gambaran proses kerja dari Decrypt ini dapat dilihat pada gambar 4.7 berikut: Input params, SK ID, C M s = H 2 (c 1 z, c 1 t ) c 2 g H2(M, s) = c 1 Tidak Ya Pesan = M Pesan = <ERROR> Gambar 4.7 Activity Diagram dari Decrypt Representasi Tingkah Laku Model Untuk merepresentasikan tingkah laku model, akan dilakukan analisis persyaratan terhadap sistem yang akan dirancang mencakup analisis fungsional yang mendeskripsikan fungsionalitas yang harus dipenuhi oleh perangkat lunak dan analisis non fungsional yang mendeskripsikan persyaratan non fungsional yang berhubungan dengan kualitas sistem.

59 Analisis Fungsional Adapun beberapa persyaratan fungsional yang harus dipenuhi oleh perangkat lunak adalah sebagai berikut: 1. Pemahaman a. Pesan input yang diperlukan dapat diketik langsung oleh pemakai melalui keyboard ataupun dengan membuka file dokumen yang telah tersimpan sebelumnya. b. Perangkat lunak mendukung proses pembukaan dan pembacaan isi file dokumen berbasis teks yang berformat *.txt dan *.rtf. Proses ini memerlukan komponen Open Dialog Box yang tersedia pada Microsoft Visual Basic.NET. c. Perangkat lunak juga akan menampilkan teori pendukung yang berhubungan dengan skema certificateless public key cryptography (CLPKC) tanpa pairing. d. Proses kerja yang akan ditampilkan oleh perangkat lunak mencakup proses pembentukan kunci (Setup, Partial Key Extract, Set Secret Value, Set Private Key dan Set Public Key), proses enkripsi dan proses dekripsi. 2. Aplikasi a. Perangkat lunak mendukung proses pembukaan dan pembacaan isi file dokumen berbasis teks yang berformat *.txt dan *.rtf. Proses ini memerlukan komponen Open Dialog Box yang tersedia pada Microsoft Visual Basic.NET.

60 48 b. Perangkat lunak juga mendukung proses penyimpanan hasil enkripsi ke sebuah file data yang berformat *.enc. Proses ini memerlukan komponen Save Dialog Box yang tersedia pada Microsoft Visual Basic.NET. c. Perangkat lunak menyediakan antarmuka untuk pengaturan dan penyimpanan data user ke dalam database Microsoft Access Proses koneksi ke database ini akan menggunakan reference ActiveX Data Object DataBase (adodb) yang terdapat pada Microsoft Visual Basic.NET Analisis Non Fungsional Untuk merumuskan persyaratan non-fungsional dari sistem, maka harus dilakukan analisis terhadap kinerja, informasi, ekonomi, keamanan aplikasi, efisiensi, dan pelayanan customer. Panduan ini dikenal dengan analisis PIECES (performance, information, economic, control, eficiency, dan services). Berikut rinciannya: 1. Performance Untuk bagian implementasi, perangkat lunak harus dapat menampilkan hasil proses sesaat setelah pemakai selesai melakukan pengisian data dan mengklik tombol eksekusi. Lamanya proses pada bagian implementasi tergantung pada panjangnya pesan yang dimasukkan. Semakin panjang pesan yang dimasukkan, maka proses kerjanya akan memakan waktu yang lebih banyak. Sedangkan, untuk bagian pemahaman, interval waktu antar langkah harus diatur sedemikian rupa agar pemakai dapat memahami langkah kerja yang ditampilkan.

61 49 2. Information Pada bagian implementasi, setelah selesai mengeksekusi proses, perangkat lunak akan memberikan sebuah pesan pemberitahuan kepada pemakai. Sedangkan, untuk bagian pemahaman, perangkat lunak harus mampu menampilkan laporan hasil proses perhitungan dari skema certificateless public key cryptography (CLPKC) tanpa pairing. Selain itu, setiap angka yang ditampilkan dalam proses perhitungan juga harus diberikan penjelasan secara terperinci. 3. Economics Perangkat lunak tidak memerlukan perangkat dukung tambahan lainnya dalam proses eksekusinya. Perangkat keras yang diperlukan hanya berupa satu set komputer lengkap dengan monitor, mouse, keyboard dan speaker saja. Sementara, perangkat lunak yang diperlukan hanya berupa aplikasi Microsoft Visual Basic 2010 beserta beberapa komponen tambahan yang dilampirkan beserta perangkat lunak. 4. Control Perangkat lunak akan menampilkan pesan kesalahan apabila data yang diinput tidak lengkap atau tidak valid (tidak sesuai dengan ketentuan). 5. Efficiency Hasil proses perhitungan dari perangkat lunak dapat disimpan ke dalam sebuah file teks yang dapat dibuka kembali apabila diperlukan dengan menggunakan fasilitas Notepad.

62 50 6. Service Perangkat lunak hanya dapat menampilkan proses pemahaman dengan menggunakan bantuan animasi sederhana agar proses pemahaman dapat menjadi lebih menarik. Selain itu, juga diberikan desain pada latar perangkat lunak agar kelihatan lebih hidup Partisi Model Setelah menganalisis prosedur kerja dari certificateless public key cryptography (CLPKC) tanpa pairing, maka tahapan selanjutnya adalah memodelkan sistem yang akan dirancang. Alat bantu yang digunakan untuk menganalisis dan memodelkan sistem adalah use case. Gambar 4.8 berikut menunjukkan use case dari sistem: Aplikasi Skema Certificateless Public Key Cryptography tanpa Pairing Mengenkripsi pesan Pengirim << uses >> Melakukan proses pembentukan kunci Penerima << uses >> Mendekripsi pesan Gambar 4.8 (a) Diagram Use Case dari Aplikasi

63 51 Pemahaman Skema Certificateless Public Key Cryptography tanpa Pairing Menampilkan proses dekripsi << uses >> Melakukan proses pembentukan kunci Pemakai << uses >> Menampilkan proses enkripsi Gambar 4.8 (b) Diagram Use Case dari Pemahaman Pada gambar 4.8 (a) dan (b) di atas, terlihat bahwa use case dari sistem hanya terdiri dari dua aktor yaitu pengirim dan penerima. Semua data yang diperlukan untuk proses pemahaman akan dimasukkan oleh pengirim dan penerima ke dalam sistem. Setelah itu, sistem akan melakukan proses validasi terhadap semua data input dan menampilkan proses kerja dari algoritma yang diinginkan apabila semua data input valid. Berikut dirincikan narasi dari use case : Tabel 4.1 Narasi Use Case Melakukan Proses Pembentukan Kunci Nama use case Actor Deskripsi Melakukan proses pembentukan kunci Penerima dan Pemakai Use case ini mendeskripsikan kejadian proses pembentukan kunci dari algoritma Certificateless Public Key Cryptography tanpa Pairing

64 52 Aksi Aktor 1. Input bilangan prima p dan Respons Sistem 2. Uji bilangan prima p dan q. q. 3. Input nilai generator g. 5. Input nilai acak x. 4. Uji generator primtif g. 6. Uji nilai x sesuai dengan ketentuan algoritma. 7. Input data identitas. 8. Input nilai acak s. 9. Uji nilai s sesuai dengan ketentuan algoritma. 11. Uji nilai z sesuai dengan 10. Input nilai acak z. ketentuan algoritma. 12. Tampilkan semua nilai hasil perhitungan. Tabel 4.2 Narasi Use Case Mengenkripsi Pesan Nama use case Actor Deskripsi Mengenkripsi pesan Pengirim dan Pemakai Use case ini mendeskripsikan kejadian proses enkripsi dari algoritma Certificateless Public Key Cryptography tanpa Pairing Aksi Aktor Respons Sistem 1. Input file teks. 2. Klik tombol Proses. 3. Sistem melakukan proses enkripsi pesan. 4. Sistem menampilkan hasil enkripsi.

65 53 Tabel 4.3 Narasi Use Case Mendekripsi Pesan Nama use case Actor Deskripsi Mendekripsi pesan Penerima dan Pemakai Use case ini mendeskripsikan kejadian proses dekripsi dari algoritma Certificateless Public Key Cryptography tanpa Pairing Aksi Aktor 1. Input file ciphertext. 2. Klik tombol Proses. Respons Sistem 3. Sistem melakukan proses dekripsi pesan. 4. Sistem menampilkan hasil dekripsi Perancangan Perangkat lunak implementasi skema certificateless public key cryptography (CLPKC) tanpa pairing ini dirancang dengan menggunakan bahasa pemrograman Microsoft Visual Basic 2010 dengan menggunakan beberapa objek dasar seperti : 1. Label, yang digunakan untuk menampilkan keterangan. 2. Link Label, yang digunakan sebagai link untuk menghubungkan form-form yang terdapat pada perangkat lunak. 3. Button, yang digunakan sebagai tombol eksekusi. 4. Textbox, yang digunakan sebagai tempat pengisian data dan untuk menampilkan nilai hasil perhitungan. 5. RichTextbox, yang digunakan untuk menampilkan hasil proses perhitungan.

66 54 6. Panel, yang digunakan untuk menggabungkan objek. Sedangkan, rancangan tampilan dari perangkat lunak implementasi certificateless public key cryptography (CLPKC) tanpa pairing ini dapat dirincikan sebagai berikut: 1. Global a. Form Splash Screen. b. Form Main. 2. Aplikasi a. Form Tambah User. b. Form Login. c. Form Utama Aplikasi. d. Form Kirim File. e. Form Kotak Masuk / Keluar. 3. Pemahaman a. Form Pilih Algoritma. b. Form Input Kunci. c. Form Input Pesan. d. Form Pemahaman Enkripsi. e. Form Pemahaman Dekripsi. f. Form Laporan.

67 Global Rancangan tampilan global mencakup form Splash Screen dan form Main. Tampilan global ini tidak termasuk ke dalam bagian aplikasi maupun pemahaman Form Splash Screen Form ini merupakan form awal yang akan ditampilkan pertama kali pada saat menjalankan perangkat lunak. Form ini dapat ditutup dengan mengklik pada sembarang tempat pada form ataupun akan ditutup secara otomatis setelah muncul selama 5 detik. Setelah form ini ditutup, maka akan muncul form Login. Rancangan tampilan dari form Splash Screen dapat dilihat pada gambar 4.9 berikut : Gambar 4.9 Rancangan Form Splash Screen Keterangan : 1 : Daerah tampilan nama perangkat lunak. 2 : Daerah tampilan gambar logo STMIK-TIME. 3 : Daerah tampilan data penyusun.

68 Form Main Form Main ini berfungsi untuk menyediakan link yang dapat digunakan untuk memahami dan menerapkan skema certificateless public key cryptography. Form ini merupakan form yang muncul pertama kali saat perangkat lunak dijalankan. Rancangan tampilan dari form Main ini dapat dilihat pada gambar 4.10 berikut: Keterangan : Gambar 4.10 Rancangan Form Main 1 : Link Pemahaman, berfungsi untuk menampilkan prosedur kerja dari skema certificateless public key cryptography. Apabila link ini diklik maka sistem akan menampilkan form Pilih Algoritma dan user dapat mengklik proses yang ingin ditampilkan dan dipelajari.

69 57 2 : Link Aplikasi, berfungsi untuk menerapkan skema certificateless public key cryptography dalam mengamankan file dokumen berbasis teks. Apabila link ini diklik maka sistem akan menampilkan form Pilih Algoritma dan user dapat mengklik proses yang ingin dilakukan. 3 : Link Keluar, berfungsi untuk menutup perangkat lunak. 4 : Daerah tampilan keterangan mengenai link yang sedang ditunjuk oleh pointer mouse. 5 : Link Tambah User Baru, berfungsi untuk menampilkan form Tambah User untuk meng-input data user baru Aplikasi Bagian ini merincikan form-form yang terdapat pada bagian aplikasi dari sistem. Tampilan-tampilan ini hanya dapat diakses apabila pemakai masuk ke bagian aplikasi dari sistem Form Tambah User Form ini berfungsi sebagai tempat pengisian data user baru yang akan menggunakan perangkat lunak. Rancangan tampilan dari form Tambah User dapat dilihat pada gambar 4.11 berikut ini :

70 Gambar 4.11 Rancangan Form Tambah User Keterangan : 1 : Tombol x, berfungsi untuk menutup form dan kembali ke form Main. 2 : Textbox User ID, berfungsi sebagai tempat pengisian data nama user. 3 : Textbox Password, berfungsi sebagai tempat pengisian data password user. 4 : Textbox Nama, berfungsi sebagai tempat pengisian data nama user. 5 : Textbox Alamat, berfungsi sebagai tempat pengisian data alamat user. 6 : Radiobutton Laki-Laki, dipilih apabila user berjenis kelamin laki-laki. 7 : Radiobutton Perempuan, dipilih apabila user berjenis kelamin perempuan. 8 : Textbox , berfungsi sebagai tempat pengisian data alamat user. 9 : Tombol Simpan, berfungsi untuk menyimpan data user yang di-input ke dalam database.

71 59 10 : Tombol Keluar, berfungsi untuk menutup form dan kembali ke form Main Form Login Form ini berfungsi sebagai tempat pengisian data user yang terdaftar yang dapat menggunakan sistem. Apabila data yang di-input valid (terdaftar dalam database), maka sistem akan menampilkan form Main. Jika tidak valid, maka akan ditampilkan pesan kesalahan. Rancangan tampilan dari form Login dapat dilihat pada gambar 4.12 berikut ini : Gambar 4.12 Rancangan Form Login Keterangan : 1 : Textbox User ID, berfungsi sebagai tempat pengisian data nama user. 2 : Textbox Password, berfungsi sebagai tempat pengisian data password user. 3 : Tombol OK, berfungsi untuk melakukan pengecekan data user yang diinput. Apabila data yang di-input valid (terdaftar dalam database), maka sistem akan menampilkan form Main. Jika tidak valid, maka akan ditampilkan pesan kesalahan.

72 60 4 : Tombol Batal, berfungsi untuk menutup perangkat lunak Form Utama Aplikasi Form ini merupakan tampilan utama dari bagian aplikasi, yang berfungsi untuk menampilkan semua file yang diterima dan dikirimkan oleh pemakai. Rancangan tampilan dari form Utama Aplikasi dapat dilihat pada gambar 4.13 berikut ini : Gambar 4.13 Rancangan Form Utama Aplikasi Keterangan : 1 : Tombol Kirim File, berfungsi untuk membuka form Kirim File. 2 : Link label Kotak Masuk, berfungsi untuk menampilkan daftar file yang diterima pada tabel (5). 3 : Link label Kotak Keluar, berfungsi untuk menampilkan daftar file yang dikirimkan pada tabel (5).

73 61 4 : Tombol Hapus dari tabel, berfungsi untuk menghapus data yang dipilih pada tabel (5). 5 : Tabel Daftar, merupakan daerah tampilan daftar file yang dikirimkan ataupun diterima oleh pemakai. 6 : Tombol Tampilkan Pesan, berfungsi untuk menampilkan form Kotak Masuk / Keluar. 7 : Link label Keluar, berfungsi untuk menutup form dan kembali ke form Main Form Kirim File Form ini berfungsi sebagai tempat pengisian data untuk mengirimkan file kepada pemakai lainnya. Rancangan tampilan dari form Kirim File dapat dilihat pada gambar 4.14 berikut ini :

74 Gambar 4.14 Rancangan Form Kirim File Keterangan : 1 : Textbox Kirim Kepada, berfungsi untuk menampilkan nama user yang akan menerima file. 2 : Tombol Pilih User, berfungsi untuk menyediakan daftar user yang tersimpan pada database. 3 : Tombol Pilih User Lainnya, berfungsi untuk menyediakan daftar user yang tersimpan pada database. 4 : Tombol Hapus, berfungsi untuk menghapus user yang dipilih dari listbox. 5 : Listbox Daftar User Lainnya, berfungsi untuk menampilkan daftar user lainnya yang akan menerima file.

75 63 6 : Textbox Judul / Topik, berfungsi sebagai tempat pengisian data judul / topik dari file yang akan dikirimkan. 7 : Tombol Buka File, berfungsi untuk menyediakan fasilitas untuk membuka dan memilih file yang diinginkan. 8 : Textbox Isi File, berfungsi untuk menampilkan isi dari file yang dibuka. 9 : Tombol Kirim, berfungsi untuk mengirimkan file kepada user yang diinginkan. 10 : Link label Keluar, berfungsi untuk menutup form dan kembali ke form Main Form Kotak Masuk / Keluar Form ini berfungsi untuk menampilkan daftar file yang dikirimkan atau diterima. Apabila form ini diakses dari link label Kotak Masuk pada form Utama Aplikasi maka akan ditampilkan daftar file yang diterima. Sedangkan, apabila form ini diakses dari link label Kotak Keluar pada form Utama Aplikasi maka akan ditampilkan daftar file yang dikirimkan. Rancangan tampilan dari form Kotak Masuk / Keluar dapat dilihat pada gambar 4.15 berikut ini :

76 Gambar 4.15 Rancangan Form Kotak Masuk / Keluar Keterangan : 1 : Date Time Picker Tanggal, berfungsi untuk menampilkan tanggal pengiriman / penerimaan file. 2 : Textbox Dari / Kepada, berfungsi untuk menampilkan nama user yang mengirimkan / menerima file. 3 : Textbox Judul / Topik, berfungsi sebagai tempat pengisian data judul / topik dari file yang akan dikirimkan. 4 : Textbox Isi File, berfungsi untuk menampilkan isi dari file yang dibuka. 5 : Tombol Balas, berfungsi untuk menampilkan form Kirim File. 6 : Link label Keluar, berfungsi untuk menutup form dan kembali ke form Main.

77 Pemahaman Bagian ini merincikan form-form yang terdapat pada bagian pemahaman dari sistem. Tampilan-tampilan ini hanya dapat diakses apabila pemakai masuk ke bagian pemahaman dari sistem Form Pilih Algoritma Form Pilih Algoritma ini berfungsi untuk menyediakan link yang disusun secara bertahap dalam memahami dan menerapkan skema certificateless public key cryptography. Form ini akan ditampilkan apabila user mengklik link Pemahaman ataupun link Aplikasi yang terdapat pada form Main. Form ini merupakan penghubung antara form Main dengan form proses yang akan ditampilkan. Rancangan tampilan dari form Pilih Algoritma ini dapat dilihat pada gambar 4.16: Gambar 4.16 Rancangan Form Pilih Algoritma

78 66 Keterangan : 1 : Link Proses Pembentukan Kunci, berfungsi untuk menampilkan prosedur kerja dari proses pembentukan kunci pada skema certificateless public key cryptography. 2 : Link Proses Enkripsi, berfungsi untuk menampilkan prosedur kerja dari proses enkripsi pesan menjadi ciphertext pada skema certificateless public key cryptography. 3 : Link Proses Dekripsi, berfungsi untuk menampilkan prosedur kerja dari proses dekripsi ciphertext menjadi pesan semula pada skema certificateless public key cryptography. 4 : Link Keluar, berfungsi untuk menutup form dan kembali ke form Main Form Input Nilai Kunci Form ini berfungsi sebagai tempat pengisian nilai kunci yang diperlukan pada skema certificateless public key cryptography. Rancangan tampilan dari form Input Nilai Kunci dapat dilihat pada gambar 4.17 berikut ini :

79 Gambar 4.17 Rancangan Form Input Nilai Kunci Keterangan : 1 : Textbox Nilai p, berfungsi sebagai tempat pengisian nilai p. 2 : Textbox Nilai q, berfungsi sebagai tempat pengisian nilai q. 3 : Tombol Acak Prima, berfungsi untuk menghasilkan bilangan prima p dan q secara acak dengan menggunakan metode pembangkitan bilangan prima Rabin-Miller. 4 : Tombol Validasi, berfungsi untuk menguji kebenaran nilai prima dengan menggunakan metode pengujian bilangan prima Rabin-Miller. 5 : Textbox Nilai g, berfungsi sebagai tempat pengisian nilai g. 6 : Tombol Acak Nilai, berfungsi untuk menghasilkan nilai generator primitif g secara acak dengan menggunakan metode pembangkitan bilangan generator primitif.

80 68 7 : Tombol Validasi, berfungsi untuk menguji kebenaran nilai generator primitif dengan menggunakan metode pengujian bilangan dari generator primitif. 8 : Textbox Nilai x, berfungsi sebagai tempat pengisian nilai x. 9 : Tombol Acak Nilai, berfungsi untuk menghasilkan nilai x secara acak. 10 : Textbox Nilai y, berfungsi sebagai tempat untuk menampilkan hasil proses perhitungan nilai y. 11 : Tombol Hitung, berfungsi untuk memulai proses perhitungan nilai y. 12 : Textbox Nilai Private Value, berfungsi sebagai tempat untuk menampilkan nilai kunci privat yang dihasilkan. 13 : Textbox Identitas, berfungsi sebagai tempat pengisian identitas penerima. 14 : Textbox Nilai s, berfungsi sebagai tempat pengisian nilai s. 15 : Tombol Acak Nilai, berfungsi untuk menghasilkan nilai s secara acak. 16 : Tombol Validasi, berfungsi untuk mengecek apakah nilai s yang dimasukkan sesuai dengan ketentuan dari algoritma atau tidak. 17 : Textbox Nilai Lainnya, berfungsi sebagai tempat untuk menampilkan hasil proses perhitungan nilai lainnya. 18 : Tombol Hitung, berfungsi untuk memulai proses perhitungan nilai lainnya. 19 : Textbox Nilai z, berfungsi sebagai tempat pengisian nilai z. 20 : Tombol Acak Nilai, berfungsi untuk menghasilkan nilai z secara acak. 21 : Tombol Validasi, berfungsi untuk mengecek apakah nilai z yang dimasukkan sesuai dengan ketentuan dari algoritma atau tidak. 22 : Textbox Nilai Public Value, berfungsi sebagai tempat untuk menampilkan nilai kunci publik yang dihasilkan.

81 69 23 : Tombol Simpan, berfungsi untuk menyimpan semua nilai kunci yang dihasilkan ke dalam memori sementara dan menutup form serta kembali ke form Pilih Algoritma. 24 : Tombol Keluar, berfungsi untuk menutup form dan kembali ke form Pilih Algoritma. Semua data nilai kunci yang di-input dan dihitung tidak disimpan ke dalam memori sementara Form Input Pesan Form ini berfungsi sebagai tempat pengisian pesan yang diperlukan pada proses pemahaman skema certificateless public key cryptography. Rancangan tampilan dari form Input Pesan dapat dilihat pada gambar 4.18 berikut ini : Gambar 4.18 Rancangan Form Input Pesan Keterangan : 1 : Textbox Pesan, berfungsi sebagai tempat pengisian pesan. 2 : Tombol Buka File, berfungsi untuk membuka file notepad. 3 : Tombol Set, berfungsi untuk menyimpan pesan ke dalam sebuah variabel dan menutup form serta kembali ke form Pemahaman Enkripsi.

82 70 4 : Tombol Batal, berfungsi untuk menutup form serta kembali ke form Pemahaman Enkripsi. Pesan yang di-input tidak disimpan ke dalam variabel Form Pemahaman Enkripsi Form ini berfungsi untuk menampilkan prosedur kerja dari proses enkripsi yang terdapat pada skema certificateless public key cryptography. Rancangan tampilan dari form Pemahaman Enkripsi dapat dilihat pada gambar 4.19 berikut ini : Gambar 4.19 Rancangan Form Pemahaman Enkripsi Keterangan : 1 : Tombol Input Pesan, berfungsi untuk menampilkan form Input Pesan sebagai tempat pengisian pesan yang akan dienkripsi. 2 : Daerah tampilan animasi proses.

83 71 3 : Daerah tampilan data yang di-input dan juga yang dihasilkan dari proses sebelumnya. 4 : Daerah tampilan keterangan mengenai proses yang sedang dikerjakan. 5 : Textbox Hasil, merupakan daerah tampilan proses perhitungan. 6 : Link Langkah Sebelumnya, berfungsi untuk menampilkan langkah proses perhitungan sebelumnya. 7 : Link Langkah Selanjutnya, berfungsi untuk menampilkan langkah proses perhitungan selanjutnya. 8 : Link Keluar, berfungsi untuk menutup form dan kembali ke form Main Form Pemahaman Dekripsi Form ini berfungsi untuk menampilkan prosedur kerja dari proses dekripsi yang terdapat pada skema certificateless public key cryptography. Rancangan tampilan dari form Pemahaman Dekripsi dapat dilihat pada gambar 4.20 berikut ini : Gambar 4.20 Rancangan Form Pemahaman Dekripsi

84 72 Keterangan : 1 : Daerah tampilan animasi proses. 2 : Daerah tampilan data yang di-input dan juga yang dihasilkan dari proses sebelumnya. 3 : Daerah tampilan keterangan mengenai proses yang sedang dikerjakan. 4 : Textbox Hasil, merupakan daerah tampilan proses perhitungan. 5 : Link Langkah Sebelumnya, berfungsi untuk menampilkan langkah proses perhitungan sebelumnya. 6 : Link Langkah Selanjutnya, berfungsi untuk menampilkan langkah proses perhitungan selanjutnya. 7 : Link Keluar, berfungsi untuk menutup form dan kembali ke form Main Form Laporan Form Laporan berfungsi untuk menampilkan laporan hasil proses perhitungan. Rancangan tampilan dari form Laporan dapat dilihat pada Gambar 4.21: Gambar 4.21 Rancangan Form Laporan

85 73 Keterangan : 1 : Textbox Hasil, berfungsi untuk menampilkan hasil proses perhitungan. 2 : Tombol Simpan, berfungsi untuk menyimpan hasil proses perhitungan ke dalam sebuah file teks. 3 : Tombol Keluar, berfungsi untuk menutup form dan kembali ke form Main Perancangan Basis Data Perancangan database dilakukan dengan menggunakan Microsoft Access Desain database dimaksudkan untuk mendefinisikan isi atau struktur tabel. Adapun tabel yang terdapat dalam database adalah sebagai berikut. a. Tabel User, berisi tentang rincian data pemakai yang menggunakan sistem. Rancangan tabel User dapat dilihat pada tabel 4.1. Tabel 4.4 Tabel User Nama Input Tipe Data Panjang Maksimum Kode ID Text 20 Nama Text 50 User ID Text 30 Password Text 8 Alamat Text 50 JenisKelamin Text 1 Text 20 Keterangan Text 50 Nilai p Number Double

86 74 Nilai q Number Double Nilai g Number Double Nilai x Number Double Nilai y Number Double Nilai s Number Double Nilai z Number Double b. Tabel KotakMasuk, berisi tentang rincian data pesan yang diterima. Rancangan tabel KotakMasuk dapat dilihat pada tabel 4.2. Tabel 4.5 Tabel KotakMasuk Nama Input Tipe Data Panjang Maksimum Tanggal Date / Time General Date Dari Text 20 Topik Text 100 c. Tabel KotakKeluar, berisi tentang rincian data pesan yang dikirimkan. Rancangan tabel KotakKeluar dapat dilihat pada tabel 4.3. Tabel 4.6 Tabel KotakKeluar Nama Input Tipe Data Panjang Maksimum Tanggal Date / Time General Date Kepada Text 20 Topik Text 100

87 75 Hubungan antar tabel yang terdapat pada database dapat digambarkan sebagai berikut: Gambar 4.22 Rancangan Relasi Antar Tabel

88 BAB V HASIL DAN PEMBAHASAN 5.1. Hasil Tampilan hasil output dari sistem dapat dikelompokkan menjadi 2 bagian, yaitu tampilan bagian pemahaman dan tampilan bagian aplikasi Tampilan Bagian Pemahaman Pada saat pertama kali menjalankan perangkat lunak implementasi skema Certificateless Public Key Cryptography tanpa Pairing, maka form yang akan muncul pertama kali adalah form Splash Screen seperti terlihat pada gambar 5.1: Gambar 5.1 Tampilan Form Splash Screen Form Splash Screen ini akan muncul selama 5 detik sebelum ditutup secara otomatis. Form ini juga dapat ditutup secara manual dengan mengklik pada 76

89 77 sembarang tempat di form. Setelah form Splash Screen ditutup, maka akan muncul form Login seperti terlihat pada gambar 5.2: Gambar 5.2 Tampilan Form Login Agar dapat menggunakan sistem, maka user harus mengisi data user ID dan password-nya. Setelah itu, klik tombol OK. Apabila data yang di-input user terdaftar dalam basisdata, maka sistem akan menutup form Login dan menampilkan form Main, seperti terlihat pada gambar 5.3. Apabila data yang diinput tidak terdaftar pada basisdata, maka sistem akan menampilkan pesan kesalahan. Sementara itu, apabila user ingin melakukan penginputan data user baru, maka dapat mengklik tombol Daftar User Baru sehingga sistem akan menampilkan form Tambah User Baru, seperti terlihat pada gambar 5.3.

90 78 Gambar 5.3 Form Tambah User Baru Sedangkan, apabila user ingin menambah data identitas user yang baru, maka dapat mengklik link Tambah User Baru yang terdapat pada form Main Aplikasi, sehingga akan muncul tampilan form berikut ini: Gambar 5.4 Form Main

91 79 Untuk menampilkan proses pemahaman, klik link Pemahaman seperti terlihat pada gambar 5.5 sehingga akan muncul tampilan form Pilihan Pemahaman seperti terlihat pada gambar 5.6: Gambar 5.5 Form Main Saat Pemilihan Link Pemahaman Gambar 5.6 Form Pilihan Pemahaman

92 80 Setelah itu, klik bulatan link yang tersedia untuk menampilkan pemahaman dari proses kerja yang diinginkan. Misalkan pemakai ingin menampilkan pemahaman terhadap proses pembentukan kunci, maka dapat mengklik link proses pembentukan kunci, sehingga akan muncul tampilan form Proses Pembentukan Kunci berikut: Gambar 5.7 Form Pemahaman Proses Pembentukan Kunci Pertama, masukkan bilangan prima p dan q yang akan digunakan. Apabila pemakai ingin agar bilangan prima diambil secara acak, maka klik tombol Acak Prima sehingga program akan menghasilkannya secara acak. Apabila pemakai ingin memasukkannya secara manual, maka dapat mengklik tombol Validasi untuk menguji bilangan prima yang dimasukkan. Bilangan prima yang dimasukkan memiliki batasan minimal 2 digit bilangan bulat positif dan maksimal 3 digit bilangan bulat positif. Setelah itu, masukkan nilai bilangan generator primitif dan bilangan acak yang diperlukan. Proses pengisiannya sama dengan

93 81 proses bilangan prima di atas. Batasan nilai juga berada diantara 2 digit sampai 3 digit bilangan bulat positif. Kemudian, masukkan Identitas Data (ID) yang akan dipakai. Terakhir, klik tombol Hitung untuk melakukan proses perhitungan kunci privat dan kunci publik yang diperlukan. Setelah selesai mengisi semua nilai yang diperlukan, maka klik tombol Simpan. Lalu, sistem akan melakukan pengecekan terhadap semua data input. Apabila semua data valid (sesuai dengan ketentuan algoritma), maka semua data akan disimpan ke memori sementara dan form Proses Pembentukan Kunci ini akan ditutup dan kembali ke form Pilihan Pemahaman. Apabila user ingin menampilkan proses enkripsi, maka kliklah link Enkripsi sehingga akan muncul form berikut ini: Gambar 5.8 Form Pemahaman Proses Enkripsi (Tampilan Awal)

94 82 Sebelum dapat menampilkan tahapan proses enkripsi, maka harus dilakukan penginputan pesan terlebih dahulu dengan mengklik tombol Input Pesan, sehingga sistem akan menampilkan form Input Pesan berikut: Gambar 5.9 Form Input Pesan Gambar 5.10 Form Pemahaman Proses Enkripsi

95 83 Sedangkan, untuk menampilkan pemahaman proses dekripsi, maka kliklah link Dekripsi sehingga akan muncul form berikut ini: Gambar 5.11 Form Proses Dekripsi Tampilan Bagian Aplikasi Sedangkan, untuk menampilkan aplikasi dari skema Certificateless Public Key Cryptography tanpa Pairing, maka dapat mengklik link Aplikasi yang terdapat pada form Main, sehingga akan muncul tampilan form seperti terlihat pada gambar 5.12 berikut ini:

96 84 Gambar 5.12 Form Main Saat Pemilihan Link Aplikasi Gambar 5.13 Form Main Aplikasi Kotak Masuk

97 85 Gambar 5.14 Form Main Aplikasi Kotak Keluar Untuk melihat daftar pesan masuk, maka kliklah link kotak masuk, sehingga akan ditampilkan daftar pesan yang diterima oleh user yang bersangkutan pada tabel Daftar Pesan disamping. Sedangkan, untuk melihat daftar pesan keluar, maka kliklah link kotak keluar, sehingga akan ditampilkan daftar pesan yang dikirimkan oleh user yang bersangkutan pada tabel Daftar Pesan disamping. Untuk melihat isi dari pesan yang dikirimkan/diterima, maka pilihlah file yang ingin ditampilkan dan kliklah tombol Tampilkan pesan sehingga akan muncul form berikut:

98 86 Gambar 5.15 Form Isi Kotak Apabila user ingin membalas pesan yang dikirimkan, maka dapat mengklik tombol Balas sehingga akan muncul tampilan berikut ini:

BAB 2 LANDASAN TEORI. 2.1 Kriptografi Berikut ini akan dijelaskan sejarah, pengertian, tujuan, dan jenis kriptografi.

BAB 2 LANDASAN TEORI. 2.1 Kriptografi Berikut ini akan dijelaskan sejarah, pengertian, tujuan, dan jenis kriptografi. BAB 2 LANDASAN TEORI 2.1 Kriptografi Berikut ini akan dijelaskan sejarah, pengertian, tujuan, dan jenis kriptografi. 2.1.1 Pengertian Kriptografi Kriptografi (cryptography) berasal dari bahasa yunani yaitu

Lebih terperinci

Penggunaan Digital Signature Standard (DSS) dalam Pengamanan Informasi

Penggunaan Digital Signature Standard (DSS) dalam Pengamanan Informasi Penggunaan Digital Signature Standard (DSS) dalam Pengamanan Informasi Wulandari NIM : 13506001 Program Studi Teknik Informatika ITB, Jl Ganesha 10, Bandung, email: if16001@students.if.itb.ac.id Abstract

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Kriptografi Ditinjau dari segi terminologinya, kata kriptografi berasal dari bahasa Yunani yaitu crypto yang berarti secret (rahasia) dan graphia yang berarti writing (tulisan).

Lebih terperinci

Otentikasi dan Tandatangan Digital (Authentication and Digital Signature)

Otentikasi dan Tandatangan Digital (Authentication and Digital Signature) Bahan Kuliah ke-18 IF5054 Kriptografi Otentikasi dan Tandatangan Digital (Authentication and Digital Signature) Disusun oleh: Ir. Rinaldi Munir, M.T. Departemen Teknik Informatika Institut Teknologi Bandung

Lebih terperinci

Cryptanalysis. adalah suatu ilmu dan seni membuka (breaking) ciphertext dan orang yang melakukannya disebut cryptanalyst.

Cryptanalysis. adalah suatu ilmu dan seni membuka (breaking) ciphertext dan orang yang melakukannya disebut cryptanalyst. By Yudi Adha KRIPTOGRAFI adalah ilmu yang mempelajari bagaimana membuat suatu pesan yang dikirim pengirim dapat disampaikan kepada penerima dengan aman [Schn 96]. dilakukan oleh cryptographer Cryptanalysis

Lebih terperinci

ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN RAHASIA

ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN RAHASIA ABSTRAK ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN RAHASIA Makalah ini membahas tentang pengamanan pesan rahasia dengan menggunakan salah satu algoritma Kryptografi, yaitu algoritma ElGamal. Tingkat keamanan

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Kriptografi Kriptografi berasal dari bahasa Yunani. Menurut bahasa tersebut kata kriptografi dibagi menjadi dua, yaitu kripto dan graphia. Kripto berarti secret (rahasia) dan

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1 Keamanan Data Keamanan merupakan salah satu aspek yang sangat penting dari sebuah sistem informasi. Masalah keamanan sering kurang mendapat perhatian dari para perancang dan

Lebih terperinci

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu Penelitian sebelumnya yang terkait dengan penelitian ini adalah penelitian yang dilakukan oleh Syaukani, (2003) yang berjudul Implementasi Sistem Kriptografi

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya

BAB II TINJAUAN PUSTAKA. Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya BAB II TINJAUAN PUSTAKA 2.1 Kriptografi Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya secret (rahasia), sedangkan gráphein artinya writing (tulisan), jadi kriptografi berarti secret

Lebih terperinci

BAB 2 LANDASAN TEORI. Berikut ini akan dijelaskan pengertian, tujuan dan jenis kriptografi.

BAB 2 LANDASAN TEORI. Berikut ini akan dijelaskan pengertian, tujuan dan jenis kriptografi. BAB 2 LANDASAN TEORI 2.1. Kriptografi Berikut ini akan dijelaskan pengertian, tujuan dan jenis kriptografi. 2.1.1. Pengertian Kriptografi Kriptografi (cryptography) berasal dari bahasa Yunani yang terdiri

Lebih terperinci

Skema Boneh-Franklin Identity-Based Encryption dan Identity-Based Mediated RSA

Skema Boneh-Franklin Identity-Based Encryption dan Identity-Based Mediated RSA Skema Boneh-Franklin Identity-Based Encryption dan Identity-Based Mediated RSA Dedy Sutomo, A.Ais Prayogi dan Dito Barata Departemen Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 Bandung

Lebih terperinci

APLIKSASI TES BILANGAN PRIMA MENGUNAKAN RABIN- MILLER, GCD, FAST EXPONENSIAL DAN FAKTORISASI PRIMA UNTUK DASAR MATEMATIS KRIPTOGRAFI

APLIKSASI TES BILANGAN PRIMA MENGUNAKAN RABIN- MILLER, GCD, FAST EXPONENSIAL DAN FAKTORISASI PRIMA UNTUK DASAR MATEMATIS KRIPTOGRAFI APLIKSASI TES BILANGAN PRIMA MENGUNAKAN RABIN- MILLER, GCD, FAST EXPONENSIAL DAN FAKTORISASI PRIMA UNTUK DASAR MATEMATIS KRIPTOGRAFI Budi Triandi STMIK Potensi Utama, Jl. K.L Yos Sudarso Km.6.5 No.3A Tanjung

Lebih terperinci

BAB 2 LANDASAN TEORI. Universitas Sumatera Utara

BAB 2 LANDASAN TEORI. Universitas Sumatera Utara 5 BAB 2 LANDASAN TEORI 2.1 Kriptografi Kriptografi adalah ilmu yang mempelajari bagaimana mengirim pesan secara rahasia sehingga hanya orang yang dituju saja yang dapat membaca pesan rahasia tersebut.

Lebih terperinci

Simulasi Pengamanan File Teks Menggunakan Algoritma Massey-Omura 1 Muhammad Reza, 1 Muhammad Andri Budiman, 1 Dedy Arisandi

Simulasi Pengamanan File Teks Menggunakan Algoritma Massey-Omura 1 Muhammad Reza, 1 Muhammad Andri Budiman, 1 Dedy Arisandi JURNAL DUNIA TEKNOLOGI INFORMASI Vol. 1, No. 1, (2012) 20-27 20 Simulasi Pengamanan File Teks Menggunakan Algoritma Massey-Omura 1 Muhammad Reza, 1 Muhammad Andri Budiman, 1 Dedy Arisandi 1 Program Studi

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 Kriptografi Kriptografi atau Cryptography berasal dari kata kryptos yang artinya tersembunyi dan grafia yang artinya sesuatu yang tertulis (bahasa Yunani) sehingga kriptografi

Lebih terperinci

PERANCANGAN APLIKASI PAILLIER CRYPTOSYSTEM UNTUK MENGAMANKAN DATA FILE SKRIPSI NOVY

PERANCANGAN APLIKASI PAILLIER CRYPTOSYSTEM UNTUK MENGAMANKAN DATA FILE SKRIPSI NOVY PERANCANGAN APLIKASI PAILLIER CRYPTOSYSTEM UNTUK MENGAMANKAN DATA FILE SKRIPSI NOVY 071401034 PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS

Lebih terperinci

ALGORITMA ELGAMAL UNTUK KEAMANAN APLIKASI

ALGORITMA ELGAMAL UNTUK KEAMANAN APLIKASI ALGORITMA ELGAMAL UNTUK KEAMANAN APLIKASI E-MAIL Satya Fajar Pratama NIM : 13506021 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung E-mail : if16021@students.if.itb.ac.id

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah Dewasa ini penggunaan teknologi Internet di dunia sudah berkembang pesat. Semua kalangan telah menikmati Internet. Bahkan, perkembangan teknologi Internet tersebut

Lebih terperinci

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM BAB 3 ANALISIS DAN PERANCANGAN PROGRAM Dalam perancangan program simulasi dan penyusunan aplikasi ini terdiri dari empat tahapan, yaitu analisis, perancangan, pengkodean, dan pengujian/implementasi. Tahap

Lebih terperinci

Tandatangan Digital. Yus Jayusman STMIK BANDUNG

Tandatangan Digital. Yus Jayusman STMIK BANDUNG Tandatangan Digital Yus Jayusman STMIK BANDUNG 1 Review materi awal Aspek keamanan yang disediakan oleh kriptografi: 1. Kerahasiaan pesan (confidentiality/secrecy) 2. Otentikasi (authentication). 3. Keaslian

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 5 BAB 2 LANDASAN TEORI 2.1. Latar Belakang Kriptografi 2.1.1. Sejarah Kriptografi Sejarah kriptografi dimulai pertama sekali dengan menggunakan metode pertukaran posisi untuk mengenkripsi suatu pesan.

Lebih terperinci

TUGAS KRIPTOGRAFI Membuat Algortima Sendiri Algoritma Ter-Puter Oleh : Aris Pamungkas STMIK AMIKOM Yogyakarta emali:

TUGAS KRIPTOGRAFI Membuat Algortima Sendiri Algoritma Ter-Puter Oleh : Aris Pamungkas STMIK AMIKOM Yogyakarta emali: TUGAS KRIPTOGRAFI Membuat Algortima Sendiri Algoritma Ter-Puter Oleh : Aris Pamungkas STMIK AMIKOM Yogyakarta emali: arismsv@ymail.com Abstrak Makalah ini membahas tentang algoritma kriptografi sederhana

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI II.1 Jenis Sistem Kriptografi Sistem kriptografi ( cryptographic system atau cryptosystem) adalah kumpulan yang terdiri dari algoritma kriptografi, semua plaintext dan ciphertext

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Kriptografi Kriptografi berasal dari bahasa Yunani. Menurut bahasa tersebut kata kriptografi dibagi menjadi dua, yaitu kripto dan graphia. Kripto berarti secret (rahasia) dan

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Kriptografi 2.1.1 Pengertian Kriptografi Kriptografi (cryptography) berasal dari Bahasa Yunani criptos yang artinya adalah rahasia, sedangkan graphein artinya tulisan. Jadi kriptografi

Lebih terperinci

Sedangkan berdasarkan besar data yang diolah dalam satu kali proses, maka algoritma kriptografi dapat dibedakan menjadi dua jenis yaitu :

Sedangkan berdasarkan besar data yang diolah dalam satu kali proses, maka algoritma kriptografi dapat dibedakan menjadi dua jenis yaitu : KRIPTOGRAFI 1. 1 Latar belakang Berkat perkembangan teknologi yang begitu pesat memungkinkan manusia dapat berkomunikasi dan saling bertukar informasi/data secara jarak jauh. Antar kota antar wilayah antar

Lebih terperinci

STUDI KASUS PENGGUNAAN TinyCA SEBAGAI APLIKASI CERTIFICATE AUTHORIZATION (CA) YANG MUDAH DAN SEDERHANA PADA SISTEM OPERASI UBUNTU

STUDI KASUS PENGGUNAAN TinyCA SEBAGAI APLIKASI CERTIFICATE AUTHORIZATION (CA) YANG MUDAH DAN SEDERHANA PADA SISTEM OPERASI UBUNTU STUDI KASUS PENGGUNAAN TinyCA SEBAGAI APLIKASI CERTIFICATE AUTHORIZATION (CA) YANG MUDAH DAN SEDERHANA PADA SISTEM OPERASI UBUNTU Nila Feby Puspitasari STMIK AMIKOM Yogyakarta nilafeby@amikom.ac.id ABSTRAKSI

Lebih terperinci

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan jaringan komputer di masa kini memungkinan kita untuk melakukan pengiriman pesan melalui jaringan komputer. Untuk menjaga kerahasiaan dan keutuhan pesan

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Seiring perkembangan teknologi, berbagai macam dokumen kini tidak lagi dalam

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Seiring perkembangan teknologi, berbagai macam dokumen kini tidak lagi dalam BAB 1 PENDAHULUAN 1.1 Latar Belakang Seiring perkembangan teknologi, berbagai macam dokumen kini tidak lagi dalam bentuknya yang konvensional di atas kertas. Dokumen-dokumen kini sudah disimpan sebagai

Lebih terperinci

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM BAB III ANALISIS DAN DESAIN SISTEM III.1. Analisis III.1.1 Analisis Masalah Secara umum data dikategorikan menjadi dua, yaitu data yang bersifat rahasia dan data yang bersifat tidak rahasia. Data yang

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Saat ini keamanan terhadap data yang tersimpan dalam komputer sudah menjadi persyaratan mutlak. Dalam hal ini, sangat terkait dengan betapa pentingnya data tersebut

Lebih terperinci

IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI MENGGUNAKAN ALGORITMA RSA DAN METODE LSB

IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI MENGGUNAKAN ALGORITMA RSA DAN METODE LSB IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI MENGGUNAKAN ALGORITMA RSA DAN METODE LSB Rian Arifin 1) dan Lucky Tri Oktoviana 2) e-mail: Arifin1199@gmail.com Universitas Negeri Malang ABSTRAK: Salah satu cara

Lebih terperinci

SISTEM PENGAMBILAN KEPUTUSAN PERMOHONAN KREDIT SEPEDA MOTOR DENGAN MENGGUNAKAN METODE DECISION TREE

SISTEM PENGAMBILAN KEPUTUSAN PERMOHONAN KREDIT SEPEDA MOTOR DENGAN MENGGUNAKAN METODE DECISION TREE SISTEM PENGAMBILAN KEPUTUSAN PERMOHONAN KREDIT SEPEDA MOTOR DENGAN MENGGUNAKAN METODE DECISION TREE Iwan Fakhrozi (12110954) Mahasiswa Program Studi Teknik Informatika STMIK Budi Darma Medan Jl. Sisingamangaraja

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Teori Bilangan 2.1.1 Keterbagian Jika a dan b Z (Z = himpunan bilangan bulat) dimana b 0, maka dapat dikatakan b habis dibagi dengan a atau b mod a = 0 dan dinotasikan dengan

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1. Kriptografi Kriptografi secara etimologi berasal dari bahasa Yunani kryptos yang artinya tersembunyi dan graphien yang artinya menulis, sehingga kriptografi merupakan metode

Lebih terperinci

Sistem Kriptografi Kunci Publik Multivariat

Sistem Kriptografi Kunci Publik Multivariat Sistem riptografi unci Publik Multivariat Oleh : Pendidikan Matematika, FIP, Universitas Ahmad Dahlan, Yogyakarta S Matematika (Aljabar, FMIPA, Universitas Gadjah Mada, Yogyakarta E-mail: zaki@mailugmacid

Lebih terperinci

Protokol Kriptografi

Protokol Kriptografi Bahan Kuliah ke-22 IF5054 Kriptografi Protokol Kriptografi Disusun oleh: Ir. Rinaldi Munir, M.T. Departemen Teknik Informatika Institut Teknologi Bandung 2004 22. Protokol Kriptografi 22.1 Protokol Protokol:

Lebih terperinci

BAB II DASAR TEORI. membahas tentang penerapan skema tanda tangan Schnorr pada pembuatan tanda

BAB II DASAR TEORI. membahas tentang penerapan skema tanda tangan Schnorr pada pembuatan tanda BAB II DASAR TEORI Pada Bab II ini akan disajikan beberapa teori yang akan digunakan untuk membahas tentang penerapan skema tanda tangan Schnorr pada pembuatan tanda tangan digital yang meliputi: keterbagian

Lebih terperinci

Pengamanan Sistem Login Aplikasi Menggunakan Protokol ID Based Diffie-Hellman Key Agreement

Pengamanan Sistem Login Aplikasi Menggunakan Protokol ID Based Diffie-Hellman Key Agreement Pengamanan Sistem Login Aplikasi Menggunakan Protokol ID Based Diffie-Hellman Key Agreement Aprita Danang Permana, S.ST Jl. Harsono RM No. 70, Ragunan, Pasar Minggu, Jakarta Selatan 12550 aprita.danang@lemsaneg.go.id

Lebih terperinci

BAB 1 PENDAHULUAN Latar Belakang

BAB 1 PENDAHULUAN Latar Belakang BAB 1 PENDAHULUAN 1.1. Latar Belakang Salah satu bentuk komunikasi adalah dengan menggunakan tulisan. Ada banyak informasi yang dapat disampaikan melalui tulisan dan beberapa di antaranya terdapat informasi

Lebih terperinci

PERANCANGAN PERANGKAT LUNAK SIMULASI PENGAMANAN TANDA TANGAN DENGAN MENGUNAKAN METODE SCHNORR AUTHENTICATION DAN DIGITAL SIGNATURE SCHEME

PERANCANGAN PERANGKAT LUNAK SIMULASI PENGAMANAN TANDA TANGAN DENGAN MENGUNAKAN METODE SCHNORR AUTHENTICATION DAN DIGITAL SIGNATURE SCHEME PERANCANGAN PERANGKAT LUNAK SIMULASI PENGAMANAN TANDA TANGAN DENGAN MENGUNAKAN METODE SCHNORR AUTHENTICATION DAN DIGITAL SIGNATURE SCHEME 1 Amiluddin, 2 Berto Nadeak 1 Mahasiswa Program Studi Teknik Informatika

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Electronic mail(email) adalah suatu sistem komunikasi elektronik yang saat ini telah menjadi bagian yang penting dalam melakukan komunikasi. Kecepatan, ketepatan serta

Lebih terperinci

Penerapan digital signature pada social media twitter

Penerapan digital signature pada social media twitter Penerapan digital signature pada social media twitter Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia arief.suharsono@comlabs.itb.ac.id

Lebih terperinci

Penerapan algoritma RSA dan Rabin dalam Digital Signature

Penerapan algoritma RSA dan Rabin dalam Digital Signature Penerapan algoritma RSA dan Rabin dalam Digital Signature Gilang Laksana Laba / 13510028 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

Manajemen Keamanan Informasi

Manajemen Keamanan Informasi Manajemen Keamanan Informasi Kuliah ke-6 Kriptografi (Cryptography) Bag 2 Oleh : EBTA SETIAWAN www.fti.mercubuana-yogya.ac.id Algoritma Kunci Asimetris Skema ini adalah algoritma yang menggunakan kunci

Lebih terperinci

BAB 3 KRIPTOGRAFI RSA

BAB 3 KRIPTOGRAFI RSA BAB 3 KRIPTOGRAFI RSA 3.1 Sistem ASCII Sebelumnya, akan dijelaskan terlebih dahulu Sistem ASCII sebagai system standar pengkodean dalam pertukaran informasi yaitu Sistem ASCII. Plainteks yang akan dienkripsi

Lebih terperinci

PENGGUNAAN DIGITAL SIGNATURE DALAM SURAT ELEKTRONIK DENGAN MENYISIPKANNYA PADA DIGITIZED SIGNATURE

PENGGUNAAN DIGITAL SIGNATURE DALAM SURAT ELEKTRONIK DENGAN MENYISIPKANNYA PADA DIGITIZED SIGNATURE PENGGUNAAN DIGITAL SIGNATURE DALAM SURAT ELEKTRONIK DENGAN MENYISIPKANNYA PADA DIGITIZED SIGNATURE Ari Wardana 135 06 065 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung

Lebih terperinci

Perangkat Lunak Pembelajaran Protokol Secret Sharing Dengan Algoritma Asmuth Bloom

Perangkat Lunak Pembelajaran Protokol Secret Sharing Dengan Algoritma Asmuth Bloom Perangkat Lunak Pembelajaran Protokol Secret Sharing Dengan Algoritma Asmuth Bloom Marto Sihombing 1), Erich Gunawan 2) STMIK IBBI Jl. Sei Deli No. 18 Medan, Telp. 061-4567111 Fax. 061-4527548 E-mail :

Lebih terperinci

APLIKASI TEORI BILANGAN UNTUK AUTENTIKASI DOKUMEN

APLIKASI TEORI BILANGAN UNTUK AUTENTIKASI DOKUMEN APLIKASI TEORI BILANGAN UNTUK AUTENTIKASI DOKUMEN Mohamad Ray Rizaldy - 13505073 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung, Jawa Barat e-mail: if15073@students.if.itb.ac.id

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Seiring dengan perkembangan teknologi informasi secara tidak langsung dunia komunikasi juga ikut terpengaruh. Dengan adanya internet, komunikasi jarak jauh dapat dilakukan

Lebih terperinci

Perancangan dan Implementasi Aplikasi Bluetooth Payment untuk Telepon Seluler Menggunakan Protokol Station-to-Station

Perancangan dan Implementasi Aplikasi Bluetooth Payment untuk Telepon Seluler Menggunakan Protokol Station-to-Station Ultima Computing Husni Perancangan dan Implementasi Aplikasi Bluetooth Payment untuk Telepon Seluler Menggunakan Protokol Station-to-Station EMIR M. HUSNI Sekolah Teknik Elektro & Informatika, Institut

Lebih terperinci

Perancangan dan Implementasi Aplikasi Bluetooth Payment untuk Telepon Seluler Menggunakan Protokol Station-to-Station

Perancangan dan Implementasi Aplikasi Bluetooth Payment untuk Telepon Seluler Menggunakan Protokol Station-to-Station Perancangan dan Implementasi Aplikasi Bluetooth Payment untuk Telepon Seluler Menggunakan Protokol Station-to-Station Emir M. Husni Sekolah Teknik Elektro & Informatika, Institut Teknologi Bandung Jl.

Lebih terperinci

BAB Kriptografi

BAB Kriptografi BAB 2 LANDASAN TEORI 2.1 Kriptografi Kriptografi berasal dari bahasa Yunani, yakni kata kriptos dan graphia. Kriptos berarti secret (rahasia) dan graphia berarti writing (tulisan). Kriptografi merupakan

Lebih terperinci

Penerapan Digital Signature pada Dunia Internet

Penerapan Digital Signature pada Dunia Internet Penerapan Digital Signature pada Dunia Internet Nur Cahya Pribadi NIM : 13505062 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung E-mail : if15062@students.if.itb.ac.id

Lebih terperinci

Analisis Penerapan Algoritma MD5 Untuk Pengamanan Password

Analisis Penerapan Algoritma MD5 Untuk Pengamanan Password Analisis Penerapan Algoritma MD5 Untuk Pengamanan Password Inayatullah STMIK MDP Palembang inayatullah@stmik-mdp.net Abstrak: Data password yang dimiliki oleh pengguna harus dapat dijaga keamanannya. Salah

Lebih terperinci

Algoritma Kriptografi Kunci Publik. Dengan Menggunakan Prinsip Binary tree. Dan Implementasinya

Algoritma Kriptografi Kunci Publik. Dengan Menggunakan Prinsip Binary tree. Dan Implementasinya Algoritma Kriptografi Kunci Publik Dengan Menggunakan Prinsip Binary tree Dan Implementasinya Hengky Budiman NIM : 13505122 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10,

Lebih terperinci

Bab 2: Kriptografi. Landasan Matematika. Fungsi

Bab 2: Kriptografi. Landasan Matematika. Fungsi Bab 2: Kriptografi Landasan Matematika Fungsi Misalkan A dan B adalah himpunan. Relasi f dari A ke B adalah sebuah fungsi apabila tiap elemen di A dihubungkan dengan tepat satu elemen di B. Fungsi juga

Lebih terperinci

BAB 2 LANDASAN TEORI. 2.1 Kriptografi Definisi Kriptografi

BAB 2 LANDASAN TEORI. 2.1 Kriptografi Definisi Kriptografi BAB 2 LANDASAN TEORI 2. Kriptografi 2.. Definisi Kriptografi Kriptografi adalah ilmu mengenai teknik enkripsi di mana data diacak menggunakan suatu kunci enkripsi menjadi sesuatu yang sulit dibaca oleh

Lebih terperinci

MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA

MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA CESS (Journal Of Computer Engineering System And Science) p-issn :2502-7131 MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA Mohamad Ihwani Universitas Negeri Medan Jl. Willem Iskandar

Lebih terperinci

PERANCANGAN SIMULASI MAN IN THE MIDDLE ATTACK PADA ALGORITMA KRIPTOGRAFI RSA DAN PENCEGAHANNYA DENGAN INTERLOCK PROTOCOL NASKAH PUBLIKASI

PERANCANGAN SIMULASI MAN IN THE MIDDLE ATTACK PADA ALGORITMA KRIPTOGRAFI RSA DAN PENCEGAHANNYA DENGAN INTERLOCK PROTOCOL NASKAH PUBLIKASI PERANCANGAN SIMULASI MAN IN THE MIDDLE ATTACK PADA ALGORITMA KRIPTOGRAFI RSA DAN PENCEGAHANNYA DENGAN INTERLOCK PROTOCOL NASKAH PUBLIKASI disusun oleh Moh. Yose Rizal 06.11.1136 Kepada SEKOLAH TINGGI MANAJEMEN

Lebih terperinci

MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA

MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA Mohamad Ihwani Universitas Negeri Medan Jl. Willem Iskandar Pasar v Medan Estate, Medan 20221 mohamadihwani@unimed.ac.id ABSTRAK

Lebih terperinci

I. PENDAHULUAN. Key Words Tanda Tangan Digital, , Steganografi, SHA1, RSA

I. PENDAHULUAN. Key Words Tanda Tangan Digital,  , Steganografi, SHA1, RSA Analisis dan Implementasi Tanda Tangan Digital dengan Memanfaatkan Steganografi pada E-Mail Filman Ferdian - 13507091 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah keamanan dan kerahasiaan data merupakan salah satu aspek penting dari suatu sistem informasi. Dalam hal ini, sangat terkait dengan betapa pentingnya informasi

Lebih terperinci

Pada sistem terdistribusi, security berfungsi untuk: pengambilan informasi oleh penerima yang tidak berhak

Pada sistem terdistribusi, security berfungsi untuk: pengambilan informasi oleh penerima yang tidak berhak 11. SECURITY Definisi Keamanan Keamanan (Security) : Serangkaian langkah untuk menjamin privasi, integritas dan ketersediaan sumber daya seperti obyek, database, server, proses, saluran, dll yang melibatkan

Lebih terperinci

RUANG LINGKUP KRIPTOGRAFI UNTUK MENGAMANKAN DATA Oleh: Budi Hartono

RUANG LINGKUP KRIPTOGRAFI UNTUK MENGAMANKAN DATA Oleh: Budi Hartono RUANG LINGKUP KRIPTOGRAFI UNTUK MENGAMANKAN DATA Oleh: Budi Hartono 1. PENDAHULUAN Data menjadi sesuatu yang amat berharga di dalam abad teknologi informasi dewasa ini. Bentuk data yang dapat dilibatkan

Lebih terperinci

PENGAMANAN DATA DENGAN MENGGUNAKAN ALGORITMA STREAM CIPHER SEAL

PENGAMANAN DATA DENGAN MENGGUNAKAN ALGORITMA STREAM CIPHER SEAL PENGAMANAN DATA DENGAN MENGGUNAKAN ALGORITMA STREAM CIPHER SEAL Semuil Tjiharjadi, Marvin Chandra Wijaya Universitas Kristen Maranatha Bandung semuiltj@gmail.com, marvinchw@gmail.com ABSTRACT Data security

Lebih terperinci

Elliptic Curve Cryptography (Ecc) Pada Proses Pertukaran Kunci Publik Diffie-Hellman. Metrilitna Br Sembiring 1

Elliptic Curve Cryptography (Ecc) Pada Proses Pertukaran Kunci Publik Diffie-Hellman. Metrilitna Br Sembiring 1 Elliptic Curve Cryptography (Ecc) Pada Proses Pertukaran Kunci Publik Diffie-Hellman Metrilitna Br Sembiring 1 Abstrak Elliptic Curve Cryptography (ECC) pada Proses Pertukaran Kunci Publik Diffie-Hellman.

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN BAB III ANALISIS DAN PERANCANGAN III.1. Analisis Masalah Secara umum data dikategorikan menjadi dua, yaitu data yang bersifat rahasia dan data yang bersifat tidak rahasia. Data yang bersifat tidak rahasia

Lebih terperinci

Studi dan Analisis Perbandingan Antara Algoritma El Gamal dan Cramer-Shoup Cryptosystem

Studi dan Analisis Perbandingan Antara Algoritma El Gamal dan Cramer-Shoup Cryptosystem Studi dan Analisis Perbandingan Antara Algoritma El Gamal dan Cramer-Shoup Cryptosystem Yudhistira 13508105 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI Pada bab ini, akan dibahas landasan teori mengenai teori-teori yang digunakan dan konsep yang mendukung pembahasan, serta penjelasan mengenai metode yang digunakan. 2.1. Pengenalan

Lebih terperinci

Tanda Tangan Digital Majemuk dengan Kunci Publik Tunggal dengan Algoritma RSA dan El Gamal

Tanda Tangan Digital Majemuk dengan Kunci Publik Tunggal dengan Algoritma RSA dan El Gamal Tanda Tangan Digital Majemuk dengan Kunci Publik Tunggal dengan Algoritma RSA dan El Gamal Muhamad Fajrin Rasyid 1) 1) Program Studi Teknik Informatika ITB, Bandung 40132, email: if14055@students.if.itb.ac.id

Lebih terperinci

SKRIPSI ENKRIPSI TEKS MENGGUNAKAN ALGORITMA TWOFISH

SKRIPSI ENKRIPSI TEKS MENGGUNAKAN ALGORITMA TWOFISH SKRIPSI ENKRIPSI TEKS MENGGUNAKAN ALGORITMA TWOFISH JOVI TANATO NPM: 2012730011 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INFORMASI DAN SAINS UNIVERSITAS KATOLIK PARAHYANGAN 2017 UNDERGRADUATE

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Latar Belakang Kriptografi Menurut Pandiangan dalam jurnalnya yang berjudul Aplikasi Kriptografi untuk Sistem Keamanan Penyimpanan Data atau Informasi (Tahun 2005), menerangkan

Lebih terperinci

PERANAN ARITMETIKA MODULO DAN BILANGAN PRIMA PADA ALGORITMA KRIPTOGRAFI RSA (Rivest-Shamir-Adleman)

PERANAN ARITMETIKA MODULO DAN BILANGAN PRIMA PADA ALGORITMA KRIPTOGRAFI RSA (Rivest-Shamir-Adleman) Media Informatika Vol. 9 No. 2 (2010) PERANAN ARITMETIKA MODULO DAN BILANGAN PRIMA PADA ALGORITMA KRIPTOGRAFI RSA (Rivest-Shamir-Adleman) Dahlia Br Ginting Sekolah Tinggi Manajemen Informatika dan Komputer

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 2 BAB 2 LANDASAN TEORI 2.1. Kriptografi 2.1.1. Definisi Kriptografi Kriptografi berasal dari bahasa Yunani yang terdiri dari dua kata yaitu cryto dan graphia. Crypto berarti rahasia dan graphia berarti

Lebih terperinci

KRIPTOGRAFI SISTEM KEAMANAN KOMPUTER

KRIPTOGRAFI SISTEM KEAMANAN KOMPUTER KRIPTOGRAFI SISTEM KEAMANAN KOMPUTER Definisi Cryptography adalah suatu ilmu ataupun seni mengamankan pesan, dan dilakukan oleh cryptographer. Cryptanalysis adalah suatu ilmu dan seni membuka (breaking)

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Pertukaran data berbasis komputer menghasilkan satu komputer saling terkait dengan komputer lainnya dalam sebuah jaringan komputer. Perkembangan teknologi jaringan

Lebih terperinci

Modifikasi Algoritma RSA dengan Chinese Reamainder Theorem dan Hensel Lifting

Modifikasi Algoritma RSA dengan Chinese Reamainder Theorem dan Hensel Lifting Modifikasi Algoritma RSA dengan Chinese Reamainder Theorem dan Hensel Lifting Reyhan Yuanza Pohan 1) 1) Jurusan Teknik Informatika ITB, Bandung 40132, email: if14126@students.if.itb.ac.id Abstract Masalah

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 1 PENDAHULUAN. 1.1 Latar Belakang BAB 1 PENDAHULUAN 1.1 Latar Belakang Teknologi jaringan komputer yang terus berkembang memiliki banyak keuntungan dalam kehidupan manusia, misalnya memungkinkan seseorang untuk terhubung dari satu komputer

Lebih terperinci

Oleh: Benfano Soewito Faculty member Graduate Program Universitas Bina Nusantara

Oleh: Benfano Soewito Faculty member Graduate Program Universitas Bina Nusantara Konsep Enkripsi dan Dekripsi Berdasarkan Kunci Tidak Simetris Oleh: Benfano Soewito Faculty member Graduate Program Universitas Bina Nusantara Dalam tulisan saya pada bulan Agustus lalu telah dijelaskan

Lebih terperinci

Kriptografi. A. Kriptografi. B. Enkripsi

Kriptografi. A. Kriptografi. B. Enkripsi Kriptografi A. Kriptografi Kriptografi (cryptography) merupakan ilmu dan seni untuk menjaga pesan agar aman. Proses yang dilakukan untuk mengamankan sebuah pesan (yang disebut plaintext) menjadi pesan

Lebih terperinci

BAB 1 PENDAHULUAN Latar belakang

BAB 1 PENDAHULUAN Latar belakang BAB 1 PENDAHULUAN 1.1. Latar belakang Seiring berkembangnya zaman, diikuti juga dengan perkembangan teknologi sampai saat ini, sebagian besar masyarakat melakukan pertukaran atau saling membagi informasi

Lebih terperinci

Perbandingan Sistem Kriptografi Kunci Publik RSA dan ECC

Perbandingan Sistem Kriptografi Kunci Publik RSA dan ECC Perbandingan Sistem Kriptografi Publik RSA dan ECC Abu Bakar Gadi NIM : 13506040 1) 1) Jurusan Teknik Informatika ITB, Bandung, email: abu_gadi@students.itb.ac.id Abstrak Makalah ini akan membahas topik

Lebih terperinci

1.1 Latar Belakang BAB I PENDAHULUAN

1.1 Latar Belakang BAB I PENDAHULUAN BAB I PENDAHULUAN 1.1 Latar Belakang Keamanan merupakan aspek yang sangat penting dalam berkomunikasi, kerahasiaan data atau informasi harus dapat dijaga dari pihak pihak yang tidak berwenang sehingga

Lebih terperinci

KEAMANAN DATA DENGAN METODE KRIPTOGRAFI KUNCI PUBLIK

KEAMANAN DATA DENGAN METODE KRIPTOGRAFI KUNCI PUBLIK KEAMANAN DATA DENGAN METODE KRIPTOGRAFI KUNCI PUBLIK Chandra Program Studi Magister S2 Teknik Informatika Universitas Sumatera Utara Jl. Universitas No. 9A Medan, Sumatera Utara e-mail : chandra.wiejaya@gmail.com

Lebih terperinci

Kriptografi Kunci Rahasia & Kunci Publik

Kriptografi Kunci Rahasia & Kunci Publik Kriptografi Kunci Rahasia & Kunci Publik Transposition Cipher Substitution Cipher For internal use 1 Universitas Diponegoro Presentation/Author/Date Overview Kriptografi : Seni menulis pesan rahasia Teks

Lebih terperinci

Tanda Tangan Digital pada E-Resep untuk Mencegah Pemalsuan Resep Dokter dan sebagai Media Anti Penyangkalan Dokter

Tanda Tangan Digital pada E-Resep untuk Mencegah Pemalsuan Resep Dokter dan sebagai Media Anti Penyangkalan Dokter Tanda Tangan Digital pada E- untuk Mencegah Pemalsuan Dokter dan sebagai Media Anti Penyangkalan Dokter Yulino Sentosa- NIM : 13507046 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

DAFTAR ISI. Pengamanan Pesan Rahasia Menggunakan Algoritma Kriptografi Rivest Shank Adleman (RSA)

DAFTAR ISI. Pengamanan Pesan Rahasia Menggunakan Algoritma Kriptografi Rivest Shank Adleman (RSA) DAFTAR ISI PERNYATAAN... i ABSTRAK... ii KATA PENGANTAR... iii UCAPAN TERIMA KASIH... iv DAFTAR ISI... v DAFTAR TABEL... ix DAFTAR GAMBAR... x DAFTAR LAMPIRAN... xi ARTI LAMBANG... xii BAB 1 PENDAHULUAN

Lebih terperinci

PERANCANGAN PEMBANGKIT TANDA TANGAN DIGITAL MENGGUNAKAN DIGITAL SIGNATURE STANDARD (DSS) Sudimanto

PERANCANGAN PEMBANGKIT TANDA TANGAN DIGITAL MENGGUNAKAN DIGITAL SIGNATURE STANDARD (DSS) Sudimanto Media Informatika Vol. 14 No. 2 (2015) PERANCANGAN PEMBANGKIT TANDA TANGAN DIGITAL MENGGUNAKAN DIGITAL SIGNATURE STANDARD (DSS) Abstrak Sudimanto Sekolah Tinggi Manajemen Informatika dan Komputer LIKMI

Lebih terperinci

BAB III KUNCI PUBLIK

BAB III KUNCI PUBLIK BAB III KUNCI PUBLIK Kriptografi dengan metode kunci publik atau asimetri merupakan perkembangan ilmu kriptografi yang sangat besar dalam sejarah kriptografi itu sendiri. Mekanisme kriptografi dengan model

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Dengan semakin berkembangnya teknologi informasi pada masa sekarang ini, dimana penggunaan jaringan internet sudah lazim digunakan dalam kehidupan sehari-hari dan saling

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 7 BAB 2 LANDASAN TEORI 2.1 Kriptografi 2.1.1 Pengertian kriptografi Kriptografi (Cryptography) berasal dari Bahasa Yunani. Menurut bahasanya, istilah tersebut terdiri dari kata kripto dan graphia. Kripto

Lebih terperinci

Penggabungan Algoritma Kriptografi Simetris dan Kriptografi Asimetris untuk Pengamanan Pesan

Penggabungan Algoritma Kriptografi Simetris dan Kriptografi Asimetris untuk Pengamanan Pesan Penggabungan Algoritma Kriptografi Simetris dan Kriptografi Asimetris untuk Pengamanan Pesan Andreas Dwi Nugroho (13511051) 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

Aplikasi Pengamanan Data dengan Teknik Algoritma Kriptografi AES dan Fungsi Hash SHA-1 Berbasis Desktop

Aplikasi Pengamanan Data dengan Teknik Algoritma Kriptografi AES dan Fungsi Hash SHA-1 Berbasis Desktop Aplikasi Pengamanan Data dengan Teknik Algoritma Kriptografi AES dan Fungsi Hash SHA-1 Berbasis Desktop Ratno Prasetyo Magister Ilmu Komputer Universitas Budi Luhur, Jakarta, 12260 Telp : (021) 5853753

Lebih terperinci

BAB II LANDASAN TEORI. yang mendasari pembahasan pada bab-bab berikutnya. Beberapa definisi yang

BAB II LANDASAN TEORI. yang mendasari pembahasan pada bab-bab berikutnya. Beberapa definisi yang BAB II LANDASAN TEORI Pada bab ini akan diberikan beberapa definisi, penjelasan, dan teorema yang mendasari pembahasan pada bab-bab berikutnya. Beberapa definisi yang diberikan diantaranya adalah definisi

Lebih terperinci

BAB 1 PENDAHULUAN. 1.1.Latar Belakang

BAB 1 PENDAHULUAN. 1.1.Latar Belakang BAB 1 PENDAHULUAN 1.1.Latar Belakang Seiring dengan semakin berkembangnya teknologi jaringan komputer dan internet banyak orang yang memanfaatkan internet tersebut untuk saling bertukar dokumen/file. Pertukaran

Lebih terperinci

BAB I PENDAHULUAN Latar Belakang

BAB I PENDAHULUAN Latar Belakang BAB I PENDAHULUAN Bab ini akan menjelaskan mengenai latar belakang penilitian judul skripsi Implementasi Hybrid Cryptosystem dengan menggunakan Algoritma One Time Pad dan Algoritma Rabin Cryptosystem dalam

Lebih terperinci

SISTEM KRIPTOGRAFI. Mata kuliah Jaringan Komputer Iskandar Ikbal, S.T., M.Kom

SISTEM KRIPTOGRAFI. Mata kuliah Jaringan Komputer Iskandar Ikbal, S.T., M.Kom SISTEM KRIPTOGRAFI Mata kuliah Jaringan Komputer Iskandar Ikbal, S.T., M.Kom Materi : Kriptografi Kriptografi dan Sistem Informasi Mekanisme Kriptografi Keamanan Sistem Kriptografi Kriptografi Keamanan

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Kriptografi adalah ilmu sekaligus seni untuk menjaga keamanan pesan (message).

BAB II TINJAUAN PUSTAKA. Kriptografi adalah ilmu sekaligus seni untuk menjaga keamanan pesan (message). BAB II TINJAUAN PUSTAKA 2.1 Kriptografi Kriptografi adalah ilmu sekaligus seni untuk menjaga keamanan pesan (message). Kata cryptography berasal dari kata Yunani yaitu kryptos yang artinya tersembunyi

Lebih terperinci