PENERAPAN METODE SHAMIR SECRET SHARING
SCHEMES PADA APLIKASI KRIPTOGRAFI FILE
Skripsi
Sebagai Salah Satu Syarat untuk Memperoleh Gelar
Sarjana Komputer
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
Tsuwaibatul Aslamiyah
106091002974
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
PENERAPAN METODE SHAMIR SECRET SHARING
SCHEMES PADA APLIKASI KRIPTOGRAFI FILE
Skripsi
Sebagai Salah Satu Syarat untuk Memperoleh Gelar
Sarjana Komputer
Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
Tsuwaibatul Aslamiyah
106091002974
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
PENGESAHAN UJIAN
Skripsi yang berjudul “Penerapan Metode Shamir Secret Sharing Schemes pada
Aplikasi Kriptografi File” telah diuji dan dinyatakan lulus dalam sidang
Munaqosyah Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif
Hidayatullah Jakarta pada hari Jum’at tanggal 6 Mei 2011. Skripsi ini telah
diterima sebagai salah satu syarat untuk memperoleh gelar Sarjana Strata Satu
(S1) Program Studi Teknik Informatika.
Jakarta, 6 Mei 2011
Tim Penguji,
Tim Pembimbing,
Mengetahui, Penguji I
Viva Arifin, MMSI NIP. 19730810 200604 2 001
Penguji II
Arini, MT
NIP. 19760131 200901 2 001
Pembimbing I
Victor Amrizal, M.Kom NIP. 150 411 288
Pembimbing II
Herlino Nanang, MT, CCNA NIP. 19731209 200501 1 002
Dekan
Fakultas Sains Dan Teknologi
DR. Syopiansyah Jaya Putra, M.Sis NIP. 19680117 200112 1 001
Ketua Program Studi Teknik Informatika
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR
HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI
SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU
LEMBAGA MANAPUN.
Jakarta, Mei 2011
ABSTRAK
Tsuwaibatul Aslamiyah (106091002974), Penerapan Metode Shamir Secret Sharing Schemes Pada Apikasi Kriptografi File dibawah bimbingan Victor Amrizal, dan Herlino Nanang.
Secret sharing merupakan salah satu metode untuk mengamankan suatu rahasia dengan membagi atau mendistribusikan rahasia tersebut menjadi beberapa bagian yang disebut share, setiap bagian dari rahasia tersebut tidak memberikan informasi apa-apa mengenai rahasia yang dimaksud bila tidak digabungkan dengan bagian yang lainnya. Salah satu alasan adanyasecret sharingadalah perlindungan terhadap ancaman kehilangan kunci kriptografi. Semakin besar salinannya, semakin banyak resiko kehilangan dan semakin sedikit salinan kunci yang digunakan, maka semakin sedikit resiko kehilangannya. Skemasecret sharingmengatasi masalah ini tanpa meningkatkan jumlah resiko yang ditimbulkan. Secara umum skemasecret sharingdibagi menjadi tiga yakni menggunakan skemaThreshold, Prevention, dan Disenrollment. Skema secret sharing yang diterapkan pada aplikasi ini adalah Shamir secret sharing scheme atau disebut juga Shamir threshold scheme. Pada skemaThreshold, pesan dibagi menjadi n bagian lalu dikirim ke n pihak tetapi dalam megkonstruksi pesan hanya butuh t pihak yang nilainya kurang dari n. Aplikasi ini diharapkan dapat mengatasi masalah keamanan dan juga kepemilikan bersama terhadap suatu data rahasia. Dalam perancangan aplikasi ini, penulis menggunakan bahasa pemrograman C++ dan Rapid Application Development (RAD) sebagai metode pengembangan sistem. Untuk ke depannya, diharapkan aplikasi ini dapat dikembangkan lagi, seperti diimplementasikan jaringan client-server, menambah batasan jumlah file share yang dapat terbentuk pada proses enkripsi agar file share yang dihasilkan lebih dari 255 file, dan memperbaiki cara pengaksesan file-file share yang akan direkonstruksi agar dapat diakses dari direktori yang berbeda-beda dalam satu komputer.
Kata Kunci: Kriptografi, Shamir, Secret Sharing, Threshold, Rapid Application Development.
Jumlah Halaman : xvi+122 halaman
KATA PENGANTAR
Bismillaahirrahmaanirrahiim………
Segala Puji dan Syukur penulis panjatkan kepada Allah SWT atas segala
karunia-Nya karena penulis dapat menyelesaikan penulisan Skripsi ini dengan
Judul ”PENERAPAN METODE SHAMIR SECRET SHARING SCHEMES
PADA APLIKASI KRIPTOGRAFI FILE” dengan baik. Shalawat serta salam
penulis haturkan kepada Nabi Muhammad SAW, para sahabat dan keluarga
beliau.
Setelah seluruh penulisan Skripsi ini terlaksana, penulis ingin
mengucapkan banyak terimakasih kepada seluruh pihak yang telah membantu
baik itu berupa motivasi, bimbingan, moril maupun materil, yang ditujukan
kepada:
1. Bapak DR. Syopiansyah Jaya Putra, M.SIS, selaku Dekan Fakultas Sains
dan Teknologi, UIN Syarif Hidayatullah Jakarta.
2. Bapak Yusuf Durrachman, M.Sc., M.I.T, selaku Ketua Program Studi
Teknik Informatika, Fakultas Sains dan Teknologi, UIN Syarif
Hidayatullah Jakarta.
3. Ibu Viva Arifin, MMSI., selaku Sekretaris Program Studi Teknik
Informatika, Fakultas Sains dan Teknologi, Universitas Islam Negeri
Syarif Hidayatullah Jakarta.
4. Bapak Victor Amrizal, M.Kom, Bapak Herlino Nanang, MT. CCNA.,
Jakarta, Mei 2011
Tsuwaibatul Aslamiyah 106091002974
pengarahan dan membantu menyelesaikan penulisan skripsi ini. Serta
bersedia meluangkan waktu dalam kesibukannya yang begitu padat.
5. Seluruh Dosen Program Studi Teknik Informatika yang tidak mungkin
penulis sebutkan satu persatu.
6. Staff karyawan Fakultas Sains dan Teknologi dan Prodi Teknik
Informatika.
Penulis sadar bahwa penyusunan skripsi ini masih jauh dari sempurna,
oleh karena itu penyusun mengharapkan kritik dan saran yang bersifat
membangun agar penyusunan skripsi ini menjadi lebih baik lagi.
Akhir kata, semoga skripsi ini bermanfaat khususnya kepada penulis
Teruntuk
Skripsi ini terkhusus penulis persembahkan kepada mereka yang telah
mendukung, baik moril maupun materiil, baik melalui doa ataupun sua dalam
menyelesaikan skripsi ini.
1. Teruntuk Ummi tercinta, Sulastri dan Apak tercinta, Zaenal Abidin, S.Sos.
Semoga Allah SWT selalu melimpahkan rahmat, rahim dan ampunan-Nya
kepada mereka. Amin.
2. Teruntuk adik dan kakakku, Mahda dah Teh Itsna yang telah dengan sabar
merawat penulis saat penulis sakit di tengah pengerjaan skripsi ini.
3. Teruntuk abangku tersayang, Zulfikar Harun Pohan yang senantiasa
memberikan motivasi, semangat dan perhatian yang tak henti kepada penulis.
4. Teruntuk teman-teman satu perjuangan, Atiyah Tahta Nisyatina, Nur Khaifah,
Shelvy Arini, Ratna Sri Wulandari, Zulfa Laily Jufri, Noviyanah Farhanah,
Zakiyah Yahya. Terima kasih atas segala bantuan dan semangatnya.
5. Teman-teman seperjuangan TI UIN 2006. Terima kasih untuk waktu, ilmu,
dan semua kenangan terindahnya.
6. Dan seluruh pihak yang telah membantu penulis, baik langsung maupun tidak
DAFTAR ISI
Halaman
Halaman Judul... ii
Lembar Pengesahan Ujian ... iii
Lembar Pernyataan ... iv
Abstrak ... v
Kata Pengantar ... vi
Lembar Persembahan... viii
Daftar Isi ... ix
Daftar Gambar ... xiii
Daftar Tabel ... xvi
BAB I PENDAHULUAN ... 1
1.1. Latar Belakang ... 1
1.2. Perumusan Masalah... 3
1.3. Pembatasan Masalah ... 3
1.4. Tujuan Penelitian ... 5
1.5. Manfaat Penelitian ... 5
1.5.1. Bagi Pengguna ... 5
1.5.2. Bagi Penulis ... 6
1.5.3. Bagi Universitas Islam Negeri Syarif Hidayatullah... 6
1.6. Metodologi Penelitian ... 6
1.6.2. Metode Pengembangan Sistem... 7
1.7. Sistematika Penulisan... 8
BAB II LANDASAN TEORI... 10
2.1. Aplikasi... 10
2.2. Keamanan Data ... 10
2.3. Aspek-aspek Keamanan Data ... 12
2.4. Enkripsi dan Dekripsi... 13
2.5. Kriptografi ... 14
2.5.1. Sejarah Kriptografi... 15
2.5.2. Tujuan Kriptografi ... 18
2.5.3. Algoritma Kriptografi ... 19
2.5.4. Macam-macam Algoritma Kriptografi... 20
2.5.5. Kriptografi Klasik ... 25
2.5.6. Kriptografi Modern ... 26
2.5.7. Stream Chiper ...27
2.6. Secret Sharing Schemes... 30
2.7. Shamir Secret Sharing Schemes... 34
2.7.1. Kelebihan Shamir Secret Sharing Schemes... 37
2.7.2. Kekurangan Shamir Secret Sharing Schemes... 38
2.8. Konsep RAD (Rapid Application Development)... 39
2.9. UML (Unified Modelling Language) ... 43
2.9.2. UML Diagram ... 44
2.10. QT SDK v.2010.05 Open Source Edition... 48
2.10.1. Pengenalan QT ... 48
2.10.2. Sejarah QT ... 50
BAB III METODOLOGI PENELITIAN... 56
3.1. Metode Pengumpulan Data... 56
3.1.1. Studi Pustaka ... 56
3.1.2. Studi Literatur... 57
3.2. Metode Pengembangan Sistem ... 59
3.2.1. Fase Perencanaan Syarat-syarat... 60
3.2.2. Fase Perancangan... 60
3.2.3. Fase Konstruksi... 61
3.2.4. Fase Pelaksanaan ... 61
BAB IV ANALISIS DAN PERANCANGAN... 64
4.1. Fase Perancangan Syarat-syarat... 64
4.2. Fase Perancangan ... 67
4.2.1. Use Case Diagram... 67
4.2.2. Use Case Scenario... 68
4.2.3. Actifity Diagram ... 70
4.2.4. Sequence Diagram ... 75
4.2.6. Design Antarmuka (Interface) ... 85
4.2.7. Penerapan Algoritma... 86
4.3. Fase Konstruksi... 97
4.4. Fase Pelaksanaan... 97
4.4.1. Spesifikasi Computer...98
4.4.2. Pengujian Tampilan ... 99
4.4.3. PengujianBlackbox... 105
4.4.4. Pengujian Aplikasi FileSecretSharing... 106
4.4.5. Pengujian Dengan Brute-Force... 110
4.4.6. Pengujian Lapangan ... 116
BAB V KESIMPULAN DAN SARAN... 118
5.1. Kesimpulan ... 118
5.2. Saran... 119
DAFTAR PUSTAKA... 120
DAFTAR GAMBAR
Halaman
Gambar 2.1 Hubungan Kriptografi dan Kriptanalis ... 15
Gambar 2.2 Proses enkripsi-dekripsi algoritma Kunci Simetris ... 21
Gambar 2.3 Proses enkripsi-dekripsi algoritma Kunci Asimetris...23
Gambar 2.4 Konsep stream cipher... 29
Gambar 2.5 Proses dari Secret Sharing ... 31
Gambar 2.6 Rapid Application Development (RAD) Model ... 40
Gambar 2.7 ContohUse Case Diagram Model... 45
Gambar 3.1 Kerangka Berpikir ... 63
Gambar 4.1 Flowchartsistem usulan untuk Share A Secret ... 65
Gambar 4.2 Flowchartsistem usulan untuk Combine Share... 66
Gambar 4.3 Usecase Diagram untuk Aplikasi File Secret Sharing ... 67
Gambar 4.4 Activity DiagramMain Menu ... 71
Gambar 4.5 Activity Diagram Share A Secret ... 72
Gambar 4.6 Activity Diagram Combine Shares ...73
Gambar 4.7 Activity Diagram About... 74
Gambar 4.8 Sequence Diagram Main Menu... 75
Gambar 4.9 Sequence Diagramuntuk Share A Secret... 76
Gambar 4.10 Sequence Diagram untuk Combine Shares... 78
Gambar 4.11 Sequence Diagram untuk User Account...79
Gambar 4.13 Halaman Menu ... 85
Gambar 4.14 Halaman Share A Secret ... 85
Gambar 4.15 Halaman Combine Share ... 86
Gambar 4.16 Halaman About... 86
Gambar 4.17 Flow ChartAlgoritma ShareByte ... 88
Gambar 4.18 Flow ChartAlgoritma Proses Share... 91
Gambar 4.19 Flow ChartAlgoritma ReconstructByte... 93
Gambar 4.20 Flow ChartAlgoritma Proses Reconstruction ... 96
Gambar 4.21 Interface Form Main Menu... 99
Gambar 4.22 Interface Form Share A Secret...100
Gambar 4.23 Gambar Tampilan file share yang dihasilkan...101
Gambar 4.24 Isi dari File Key.txt (file secret) ... 101
Gambar 4.25 Isi dari salah satu file shareyang dihasilkan (test001.shr) ... 102
Gambar 4.26Interface Form Combine Share ... 102
Gambar 4.27 Gambar Tampilan file secret yang dihasilkan melalui proses Rekonstruksi ... 103
Gambar 4.28 Gambar Tampilan isi dari file Secret (data awal) dan File Hasil Rekonstruksi ... 103
Gambar 4.29Interface Form About ... 104
Gambar 4.30Interface Message Box Sharing Complete... 104
Gambar 4.31Interface Message Box Reconstruction Complete... 105
Gambar 4.32 Informasi file sebelum file sharedibentuk ... 107
Gambar 4.34 Informasi file yang terbentuk melalui proses rekonstruksi... 109
Gambar 4.35 Isi file test001.shr ... 110
Gambar 4.36 Pengujian brute-force terhadap file test001.shr... 111
Gambar 4.37 Isi file aplikasi002.shr... 111
Gambar 4.38 Pengujian brute-force terhadap file aplikasi002.shr ... 112
Gambar 4.39 Isi file file003.shr... 112
Gambar 4.40 Pengujian brute-force terhadap file file003.shr... 113
Gambar 4.41 Isi file secret004.shr... 113
Gambar 4.42 Pengujian brute-force terhadap file secret004.shr ... 114
Gambar 4.43 Isi file sharing005.shr ... 114
DAFTAR TABEL
Halaman
Tabel 3.1 Tabel Perbandingan Literatur Sejenis ... 57
Tabel 4.1 Tabel Usecase ScenarioMain Menu ... 68
Tabel 4.2 Tabel Usecase ScenarioShare A Secret ... 69
Tabel 4.3 Tabel Usecase ScenarioCombine Shares ... 69
Tabel 4.4 Tabel Usecase ScenarioAbout... 70
Tabel 4.5 Tabel Spesifikasi hardwareuntuk pengujian aplikasi ... 98
Tabel 4.6 Tabel Hasil pengujian terhadap aplikasi File Secret Sharing ... 106
Tabel 4.7 Tabel Ukuran dan waktu enkripsi...108
Tabel 4.8 Tabel Ukuran dan waktu dekripsi ... 109
Tabel 4.9 Penentuan Jumlah Sampel dari populasi tertentu dengan taraf kesalahan 1%, 5%, dan 10% ... 116
DAFTAR PUSTAKA
Amin, Ayatullah Arruhul. 2008. Penggunaan Skema Bagi Rahasia untuk
Melakukan Pencarian pada Basis Data yang Terenkripsi. Institut
Teknologi Bandung.
Anonim. 2000. What is Rapid Application Development. CASEMaker Totem.
Anonim. 2006. Secret Sharing. CPT.
Ariyus, Dony. 2008. Pengantar Ilmu Kriptografi (Teori Analisis dan
Implementasi).Yogyakarta : Andi.
Barata, Addie. 1998. Studi dan Implementasi Clustering Penerima Kunci dengan
Metode Shamir Secret Sharing Advanced. Institut Teknologi Bandung.
Blanchette, Jasmin dan Summerfield, Mark. 2008. C++ GUI Programming with
Qt 4, Second Edition. ISBN : Prentice Hall.
Budiyono, Rudi Cahyo. 2008. Contoh Soal-Pembahasan Threshold-Scheme
Secret Sharing [pdf].
http://sandi.math.web.id/download/paper/kssandi-treshold_schemes.pdf[17 Maret 2011, 15.21 WIB].
Fowler, Martin. 2004. UML Distilled Third Edition. Pearson Education.
Hariyanto, Bambang. 2004. Rekayasa Sistem Berorientasi Objek. Bandung:
Informatika.
Kendall, Kenneth E. dan Kendall, Julie E. 2003. Analisis dan Perancangan
Sistem. Jakarta: Pearson Education Asia Pte. Ltd dan PT. Prenhallindo.
Menezes, Alfred J., Paul C van Oorschot, dan Scott A. Vanstone. 1996. Handbook
Munir, Rinaldi. 2006. Kriptografi. Bandung: Informatika.
Muttaqin, Zaenal. 2010. Pembuatan Aplikasi Enkripsi menggunakan Metode
Advance Encryption Standard & Rivest Shamir Adleman (Studi Kasus CV
Maharta Mandiri Promo). Universitas Islam Negeri Syarif Hidayatullah
Jakarta. Skripsi tidak diterbitkan.
Nugroho, Adi. 2005. Rational Rose untuk Pemodelan Berorientasi Objek.
Bandung: Informatika.
Paar, Christof dan Pelzl, Jan. 2010. Understanding Cryptography. New York:
Springer.
Pusat Bahasa Departemen Pendidikan Nasional. Kamus Pusat Bahasa Indonesia
[Online]. http://pusatbahasa.diknas.go.id/kbbi [06 Februari 2011, 04.15 WIB].
Putri, Heti Rahmawati. 2008. Perbandingan Beberapa Skema Pembagian Rahasia
dan Implementasi Skema Pembagian Rahasia Brickell. Institut Teknologi
Bandung.
QT Nokia. QT Reference Documentation [Online]. http://doc.qt.nokia.com [29 Maret 2011, 22.30 WIB]
Schneier, Bruce. 1996.Applied Cryptography, Second Edition: Protocols,
Algorthms, and Source Code in C (cloth), John Wiley & Sons.
Shamir, A. 1979. How to Share a Secret, Communications of the ACM, vol.22,
no.11, 612-613.
Sutana, Yessy. 2005. Perancangan Aplikasi Enkripsi-Dekripsi Gambar
Menggunakan Visual Secret Sharing Schemes. Universitas Bina
Nusantara.
Whitten, Jeffrey L., Lonnie D Bentley, dan Kevin C Dittman. 2001. Systems
Analysis And Design Methods 5thEdition. New York : McGrow Hill.
Winkler, Tim. 2004. Sharing Secrets Via Teleportation [Online].
http://info.anu.edu.au/ovc/media/Media_Releases/2004/May/070504Secret
LAMPIRAN-LAMPIRAN
1. LAMPIRAN A : HASIL WAWANCARA
2. LAMPIRAN B : HASIL PENGUJIAN LAPANGAN
3. LAMPIRAN C : SOURCE CODE
LAMPIRAN A
WAWANCARA
Hari/Tanggal : Jum’at, 13 Mei 2011
Narasumber : Bapak Ahmad Hardilani, SS. S.Hum, MT
Jabatan : Kepala PINTAR (Pusat Informasi Teknologi dan
Komunikasi Gerakan Pramuka)
Penulis : Apa yang dapat dilakukan untuk mengamankan data ataupun
file yang dianggap rahasia ?
Narasumber : Biasanya dengan memberikan password ataupun mengenkripsi
data tersebut.
Penulis : Menurut bapak, apakah dengan memberikan password pada data
tersebut sudah cukup aman untuk mengamankan data-data
penting?
Narasumber : Tidak juga, karena belakangan ini telah banyak beredar
aplikasi-aplikasi yang dapat memecah sandi dari password ataupun kunci
kriptografi, dengan menggunakan aplikasi tersebut akan
membantu orang-orang yang tidak memiliki hak akses untuk
membuka isi data tanpa harus mengetahui password ataupun
Penulis : Apakah kendala yang biasa dihadapi jika melakukan
pengamanan data dengan menggunakan password ataupun
dengan enkripsi yang menggunakan kunci kriptografi?
Narasumber : Kendala yang biasa dihadapi adalah ketika pemilik data lupa
akan password atau kunci yang menjaga datanya.
Penulis : Menurut bapak, apakah diperlukan sebuah metode baru untuk
mengamankan sebuah data rahasia? Mengapa?
Narasumber : Iya diperlukan, karena algoritma-algoritma enkripsi yang umum
telah banyak beredar di media internet, sehingga algoritma
tersebut dapat dengan mudah dipecahkan oleh pihak yang
memang mempunyai kemampuan untuk menganalisa algoritma
tersebut.
Penulis : Apakah aplikasi keamanan data yang tidak menggunakan kunci
ataupun password untuk proses pengamanannya dibutuhkan saat
ini? Mengapa?
Narasumber : Iya dibutuhkan, karena aplikasi semacam ini tidak mempersulit
penggunanya untuk menghafal baris password ataupun kunci
yang suatu saat dapat terlupa. Jadi, siapapun pihak yang
menggunakannya akan mendapat kemudahan dalam
Penulis : Menurut bapak, jika terdapat suatu data rahasia yang dimiliki
sekelompok pihak, apa yang dapat dilakukan dengan data
tersebut?
Narasumber : Biasanya data tersebut cukup dipegang oleh satu orang atau bisa
juga masing-masing pihak dari kelompok tersebut akan
mempunyai minimal satu data rahasia ataupun kunci untuk
membuka data tersebut.
Penulis : Apa resiko yang dapat terjadi jika data rahasia milik bersama
tersebut dipegang oleh satu orang atau masing-masing pihak
dari kelompok tersebut memiliki data tersebut?
Narasumber : Kemungkinan orang yang memegang data tersebut bisa dengan
bebas membuka atau menyebarluaskan data tersebut tanpa
memerlukan izin dari yang lain, dengan kata lain data tersebut
seakan-akan bukan menjadi milik bersama akan tetapi menjadi
milik pribadi masing-masing pemegangnya.
Penulis : Apakah aplikasi untuk menjaga keamanan data rahasia milik
bersama diperlukan saat ini? Mengapa?
Narasumber : Iya diperlukan, karena sering terjadi pengklaiman data yang
sebenarnya data tersebut milik sekelompok pihak namun dapat
.
LAMPIRAN B
HASIL PENGUJIAN LAPANGAN
1. Apakah aplikasi ini mudah dijalankan (User Friendly) ?
Jawaban Responden Jumlah Penjawab (Orang)
Persentase
(%)
Mudah 10 15.4%
Cukup Mudah 43 66.1%
Kurang Mudah 12 18.5%
0.00% 20.00% 40.00% 60.00% 80.00%
Mudah Cukup
Kurang 15.4%
66.1%
18.50%
User Friendly
Mudah
Cukup
Kurang
Berdasarkan hasil pengujian dapat diketahui bahwa aplikasi ini cukup mudah
untuk dijalankan bagi user. Hal ini berarti aplikasi yang di buat telah
memenuhi kriteria user friendly.
2. Menurut anda, apakah aplikasi ini telah cukup baik dalam menjawab
permasalahan mengenai keamanan ataupun kepemilikan bersama pada suatu
Jawaban Responden Jumlah Penjawab (Orang)
Persentase
(%)
Baik 8 12.3%
Cukup Baik 39 60%
Kurang Baik 18 27.7%
0.00% 20.00% 40.00% 60.00%
Baik Cukup
Kurang 12.30%
67.70%
27.70%
Menjawab Permasalahan
Baik
Cukup
Kurang
Berdasarkan hasil pengujian dapat diketahui bahwa aplikasi ini cukup baik
dalam menjawab permasalahan mengenai keamanan ataupun kepemilikan
bersama pada suatu data rahasia.
3. Menurut anda bila dilihat dari segi pemilihan warna Layout, jenis, maupun
ukuran Font, bagaimana tampilan aplikasi ini secara keseluruhan?
Jawaban Responden Jumlah Penjawab (Orang)
Persentase
(%)
Bagus 32 49.2%
Cukup Bagus 28 43.1%
0.00% 20.00% 40.00% 60.00%
Bagus Cukup
Kurang 49.20%
43.1%
7.70%
Kesesuaian Tampilan
Bagus
Cukup
Kurang
Berdasarkan hasil pengujian dapat diketahui bahwa pemilihan warna Layout,
jenis, maupun ukuran Font, serta tampilan aplikasi ini secara keseluruhan
adalah bagus.
4. Apakah fitur yang terdapat dalam aplikasi ini sudah sesuai dengan kebutuhan
anda?
Jawaban Responden Jumlah Penjawab (Orang)
Persentase
(%)
Sesuai 25 38.5%
Cukup Sesuai 27 41.5%
0.00%
Berdasarkan hasil pengujian dapat diketahui bahwa aplikasi ini sudah cukup
sesuai dengan kebutuhan user.
5. Apa pendapat anda setelah melihat aplikasi ini secara keseluruhan?
Jawaban Responden Jumlah Penjawab (Orang)
Persentase
(%)
Baik 14 21.5%
Cukup Baik 40 61.5%
Kurang Baik 11 17%
Berdasarkan hasil pengujian dapat diketahui bahwa aplikasi ini secara
keseluruhan cukup baik.
6. Apakah aplikasi ini dapat membantu anda untuk mengamankan data rahasia
anda?
Jawaban Responden Jumlah Penjawab (Orang)
Persentase
(%)
Bisa 25 38.5%
Cukup Bisa 21 32.3%
Kurang Bisa 19 29.2%
0.00% 10.00% 20.00% 30.00% 40.00%
Bisa
Cukup Kurang 38.50%
32.3% 29.20%
Pengamanan Data
Bisa
Cukup
Kurang
Berdasarkan hasil pengujian dapat diketahui bahwa aplikasi ini dapat
membantu untuk mengamankan data yang bersifat rahasia.
7. Menurut anda, apakah aplikasi ini bila dikembangkan akan lebih membantu
Jawaban Responden Jumlah Penjawab (Orang)
Persentase
(%)
Bisa 36 55.4%
Cukup Bisa 23 35.4%
Kurang Bisa 6 9.2%
0.00% 20.00% 40.00% 60.00%
Bisa
Cukup Kurang 55.40%
35.4%
9.20%
Pengembangan Aplikasi
Bisa
Cukup
Kurang
Berdasarkan hasil pengujian dapat diketahui bahwa aplikasi ini bila
LAMPIRAN C
Source Code User haring(QWidget *parent) : QDialog(parent),
digunakan untuk membuat share \ndari sebuah file yang akan dirahasiakan");
ui->psbtReconForm->setToolTip("Menu ini
digunakan untuk membangun file rahasia \ndari beberapa share yang telah dibuat
FileSecretSharing::hide(); ShareForm * sh = new
ShareForm();
sh->activateWindow(); sh->raise();
FileSecretSharing::hide(); ReconstructForm * rc = new
ReconstructForm();
rc->activateWindow(); rc->raise();
class FileSecretSharing;
}
Ui::FileSecretSharing *ui;
ui(new Ui::ShareForm)
SIGNAL(clicked()),SLOT(slotRes
et()));
QObject ::connect(ui->psbt_Share,
SIGNAL(clicked()),SLOT(slotSha
re()));
QObject ::connect(ui->psbt_Browse1,
SIGNAL(clicked()),SLOT(slotInp
utFile()));
QObject ::connect(ui->psbt_Open,
SIGNAL(clicked()),SLOT(slotOut
putShare()));
QObject ::connect(ui->psbt_Add1,
SIGNAL(clicked()),SLOT(addItem
()));
QObject ::connect(ui->psbt_Remove1,
SIGNAL(clicked()),SLOT(removeI
tem()));
QObject ::connect(ui->rb_Create,
SIGNAL(clicked()),SLOT(choose(
)));
QObject ::connect(ui->rb_Default,
SIGNAL(clicked()),SLOT(choose(
)));
QMessageBox::information(this,
"Warning",tr("Select File Secret..."));
QMessageBox::information(this,
"Warning",tr("Select Output Directory..."));
QFileInfo info(InputFile); QString ext =
QMessageBox::information(this,
"Info",tr("Please add more share to listbox...")); return; }
else if (n<lb){
QMessageBox::information(this,
"Info",tr("Please remove some share from listbox...")); return;
"Critical",tr("Can't open file
QMessageBox::information(this,
"Critical",tr("A file with this name already exists, please choose another
directory or create a new name of share..."));
QMessageBox::information(this,
"Critical",tr("Can't open file for read"));
QMessageBox::information(this,
"Complete",tr("Sharing Complete..."));
ory(this, tr("Open
Directory"),
ui->led_OutputShare->setText(OutputShare); }
void ShareForm::addItem() {
if( ui->led_Item->text().length() > 0 ) {
ui->led_Item->setFocus(); }
ui->led_OutputShare->clear(); fss->activateWindow(); fss->raise();
class ShareForm : public
QDialog
{
Q_OBJECT
public:
explicit ShareForm(QWidget
*parent = 0); ~ShareForm();
public:
Ui::ShareForm *ui; rm(QWidget *parent) :
QDialog(parent),
SIGNAL(clicked()),SLOT(slotRes
et()));
QObject ::connect(ui->psbt_Save,
SIGNAL(clicked()),SLOT(slotOut
putFile()));
QObject ::connect(ui->psbt_Add,
SIGNAL(clicked()),SLOT(slotInp
utShare()));
QObject ::connect(ui->psbt_Reconstruct,
SIGNAL(clicked()),SLOT(slotRec
onstruct()));
QMessageBox::information(this,
"Warrning",tr("Select files share to reconstruct secret... "));
QMessageBox::information(this,
"Warrning",tr("Create File name..."));
QMessageBox::information(this,
"Info",tr("Number of shares input must match with the configuration options..."));
QMessageBox::information(this,
"Critical",tr("Can't open file for write"));
if(!rshare[i].open(QIODevice:: ReadOnly)){
QMessageBox::information(this,
"Critical",tr("Can't open file % for read"));
QMessageBox::information(this,
"Complete",tr("Reconstruction
ui->ted_Reconstruct->clear();
InputShare =
QFileDialog::getOpenFileNames(
this,
"Select one or more files using Ctrl key to open files",
"/",
" files (*.shr)");
foreach(QString >insertPlainText(name + "\n"); }
ui->spinBox_k2->setValue(1);
ui->ted_Reconstruct->clear();
ui->led_OutputFile->clear();
ReconstructForm::hide(); FileSecretSharing * fss =
new FileSecretSharing(); fss->activateWindow(); fss->raise();
class ReconstructForm;
}
class ReconstructForm : public
QDialog
QStringList InputShare; QString OutputFile;
on_psbt_Menu2_clicked(); }; char Byte, unsigned char K,
unsigned char N )
Q[x-1]=temp; // Q(x=1) =
} }
unsigned char
ShareByte::GetQ(int i ) {
Byte, unsigned char K,
unsigned char N );
~ShareByte();
te(unsigned char * num,
unsigned char * C, unsigned
}
return (unsigned char)S;
}
ReconstructByte.h
#ifndef _Reconstruct_Byte_ #define _Reconstruct_Byte_
class ReconstructByte {
long S; // secret
unsigned char k; // threshold scheme
unsigned short p;
// prime number
long P; // Temporary variable
unsigned char * x;
unsigned char * Y;
public:
ReconstructByte
(unsigned char * x, unsigned
char * Y, unsigned char K);
void
extended_euclid(long a, long
b, long * x, long * y, long * d);
int sub(int a, int b );
int inv(int a ); unsigned char
ReconstructSecret(); };
LAMPIRAN D
PENGUJIAN LAPANGAN
Nama :
1. Menurut anda, apakah aplikasi ini mudah dijalankan (user friendly) ?
a. Mudah
b. Cukup Mudah
c. Kurang Mudah
2. Menurut anda, apakah aplikasi ini telah cukup baik dalam menjawab
permasalahan mengenai keamanan ataupun kepemilikan bersama pada suatu
data rahasia?
a. Baik
b. Cukup Baik
c. Kurang Baik
3. Menurut anda bila dilihat dari segi pemilihan warna Layout, jenis, maupun
ukuran Font, bagaimana tampilan aplikasi ini secara keseluruhan?
a. Bagus
b. Cukup Bagus
c. Kurang Bagus
4. Apakah fitur yang terdapat dalam aplikasi ini sudah sesuai dengan kebutuhan
anda?
b. Cukup Sesuai
c. Kurang Sesuai
5. Apa pendapat anda setelah melihat aplikasi ini secara keseluruhan?
a. Baik
b. Cukup Baik
c. Kurang Baik
6. Apakah aplikasi ini dapat membantu anda untuk mengamankan data rahasia
anda?
a. Bisa
b. Cukup Bisa
c. Kurang Bisa
7. Menurut anda, apakah aplikasi ini bila dikembangkan akan lebih membantu
anda?
a. Bisa
b. Cukup Bisa