digilib@itb.ac.id +62 812 2508 8800

13519031 Daniel Mario Reynaldi.pdf
Terbatas  Dessy Rondang Monaomi
» Gedung UPT Perpustakaan

Enkripsi homomorfik adalah algoritma enkripsi yang memungkinkan proses komputasi pada data terenkripsi. Salah satu contoh algoritma enkripsi homomorfik adalah algoritma enkripsi CKKS yang dapat mengenkripsi bilangan kompleks. Algoritma enkripsi homomorfik memiliki tingkat keamanan yang sangat tinggi karena terbukti bersifat quantum safe dan data tidak perlu berada dalam keadaan plainteks meskipun harus dilakukan proses komputasi. Namun, tingkat penggunaan enkripsi homomorfik masih rendah karena waktu eksekusinya yang tinggi. Oleh karena itu, diperlukan upaya paralelisasi algoritma enkripsi CKKS untuk menurunkan waktu eksekusi algoritma enkripsi homomorfik. Paralelisasi dengan GPU dipilih karena ketersediaan GPU yang tinggi serta kemampuan komputasi paralelnya yang tinggi untuk algoritma bersifat single instruction multi data stream. Implementasi paralel dilakukan dengan platform CUDA pada GPU Nvidia, diimplementasikan juga CKKS secara serial dengan bahasa pemrograman C++ sebagai pembanding. Pengujian dilakukan untuk menilai fungsionalitas dan kinerja implementasi. Diimplementasikan juga algoritma NTT untuk mempercepat waktu eksekusi perkalian polinom yang sering dilakukan pada skema CKKS. Pengujian fungsionalitas dilakukan dengan mengenkripsi dan kemudian mendekripsi gambar, hasilnya, implementasi berhasil mengenkripsi gambar tanpa mengurangi kualitas gambar secara signifikan. Hal tersebut terbukti dari nilai PSNR yang mencapai 102 dan kualitas gambar keluaran yang sangat mirip dengan gambar masukan. Pengujian kinerja dilakukan dengan menghitung waktu eksekusi algoritma enkripsi pada implementasi serial dan paralel, kemudian dihitung percepatannya. Hasilnya, implementasi paralel memiliki waktu eksekusi yang lebih cepat dibanding implementasi serial.