JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index Implementasi Digital Signature Pada Faktur Dengan Menggunakan Kombinasi Algoritma SHA-256 Dan RSA-CRT Syahfira Chairunnisa Lubis 1 . Khairi Ibnutama2 . Syarifah Fadillah Rezky3 1,2,3 Sistem Informasi. STM IK Triguna Dharma Email: raralubis53@gmail. com, 2mr. ibnutama@gmail. com, 3ikic5500@gmail. Email Penulis Korespondensi: raralubis53@gmail. AbstrakOe Pemodifikasian dokumen kerap terjadi di dunia bisnis, salah satunya adalah faktur. Permasalahan faktur yang sering terjadi adalah perbedaan isi antara faktur yang diterbitkan oleh pengirim dengan faktur yang di terima oleh penerima. Sehingga solusi yang tepat untuk mengatasi permasalahan tersebut dengan menggunakan mekanisme Digital Signature. Digital Signature akan dibuat dengan menggunakan kombinasi algoritma SHA-256 dan RSA-CRT. SHA-256 merupakan jenis kriptografi fungsi hash yang dapat digunakan untuk proses pengecekan integritas data, dan mempunyai waktu paling cepat dalam proses otentikasi. M enghasilkan 256 bit message digest lalu di enkripsi menggunakan kunci publik RSA-CRT. Kombinasi algoritma tersebut merupakan kombinasi yang tepat dalam penggunaan Digital Signature untuk memperketat keamanan data. Digital Signature akan dibubuhkan di setiap faktur yang telah diterbitkan dalam bentuk QR Code. Proses verifikasi keabsahan faktur dapat dilakukan dengan pemindaian QR Code yang ada di dalam faktur. Kata Kunci: Digital Signature. Faktur. Kriptografi. QR Code. RSA-CRT (Rivest Shamir Adleman - Chinesse Reminder Theore. SHA-256 (Secure Hash Algoritm-. AbstracOe Document modifications often occur in the business world, one of which is invoices. An invoice problem that often occurs is the difference in content between the invoice issued by the sender and the invoice received by the recipient. So the right solution to overcome this problem is to use the Digital Signature mechanism. Digital Signature will be created using a combination of the SHA256 and RSA-CRT algorithms. SHA-256 is a type of cryptographic hash function that can be used to check data integrity, and has the fastest time in the authentication process. Generates a 256 bit message digest and then encrypts it using the RSA-CRT public key. This combination of algorithms is the right combination for using Digital Signature to tighten data security. Digital Signature will be affixed to every invoice that has been issued in the form of a QR Code. The process of verifying the validity of the invoice can be done by scanning the QR Code on the invoice. Keywords: Cryptography. Digital Signature. Invoice. QR Code. RSA-CRT (Rivest Shamir Adleman - Chinese Reminder Theore. SHA-256 (Secure Hash Algorithm-. PENDAHULUAN Dunia bisnis sangat melekat pada teknologi dan sangat berpengaruh bagi perusahaan besar maupun kecil dikarenakan tutuntan pasar yang selalu mengikuti perkembangan zaman . Perusahaan harus mengamankan catatan catatan dan hartanya salah satunya faktur . Faktur merupakan dokumen yang harus disimpan oleh pihak yang berwenang . Faktur adalah bukti transaksi berisi tentang rincian pengiriman barang terkait dengan penagihan untuk Pada umumnya dokumen ini berisi tentang jumlah barang, perhitungan pembayaran, harga satuan, dan harga total . Faktur dibagi menjadi dua ada faktur penjualan dan faktur pembelian. Faktur penjualan merupakan bukti transaksi yang diberikan oleh penjual ketika barang telah sampai kepada pembeli dan pembayaran bisa dilakukan dengan kredit . , sedangkan faktur pembelian merupakan bukti yang dibuat setelah transaksi ketika barang telah diterima dan diberikan langsung oleh penjual kepada pembeli dibayar dengan lunas . Banyak permasalahan yang terjadi mengenai faktur salah satunya pemalsuan yang menyebabkan kerugian terhadap perusahaan dan merupakan tindak pidana . Kasus pemalsuan faktur kerap terjadi. Faktur yang diterbitkan oleh pengirim berbeda dengan faktur yang diterima oleh penerima. Adanya perubahan isi faktur yang tidak sesuai dengan kesepakatan, yaitu penambahan dalam jumlah transaksi. Hal tersebut merugikan perusahaan karena mendapatkan keluhan serta merusak citra perusahaan. Dalam rangka meningkatkan kemanan dan menjaga keaslian faktur, maka dibuat mekanisme untuk menghasilkan faktur disertai dengan Digital Signature. Digital Signature adalah sebuah teknik dalam kriptografi yang dapat digunakan untuk menanda tangani dokumen digital . , berfungsi sebagai alat otentikasi dan verifikasi keaslian data dengan menggunakan kode acak sebagai tanda tanganya . Kriptografi adalah ilmu yang mempelajari bagaimana agar pesan atau dokumen aman, tidak bisa dibaca oleh pihak yang tidak berhak . Algoritma yang akan digunakan untuk menghasilkan Digital Signature pada faktur pembelian distributor ini adalah kombinasi SHA-256 dan algoritma RSA-CRT. Kombinasi algoritma Syahfira Chairunnisa Lubis, 2022. Hal 112 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index digunakan agar memperkuat kemanan data dari pemodifikasian. Digital Signature akan dibuat berbasis web agar dapat memudahkan dalam prorses memverifikasi faktur dan mencegah terjadinya pemalsuan faktur. METODOLOG I PENELITIAN Tahapan Penelitian Metode penelitian digunakan untuk mengumpulkan informasi atau data dalam menyelesaikan masalah. Berikut metode penelitian yang digunakan dalam penelitian ini: Observasi Observasi adalah salah satu teknik pengumpulan data yang dimana data diambil dengan melakukan tinjauan dan pengamatan secara langsung ke objek penelitian. Wawancara Wawancara adalah salah satu teknik pengumpulan data yang dimana data diambil dengan melakukan tanya jawab kepada pihak yang bersangkutan mengenai hal yang akan dijadikan informasi. Studi Pustaka Referensi merupakan hal yang penting di dalam sebuah penelitian, sebab referensi berguna sebagai penguat sebuah karya tulis agar menjadikan karya tulis penelitian menjadi relevan . Kriptografi Berasal dari bahasa Yunani kriptografi . yaitu cryptos dan graphia yang berarti penulisan rahasia . Rinaldi. Munir berpendapat bahwa kriptografi merupakan ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek kemanan informasi misalnya kerahasiaan, integritas data, otentikasi pengirim/penerima data, dan otentikasi data . Seni dan ilmu yang mampu mengubah data atau pesan menjadi kode tertentu dan kode tersebut dapat menjadi data atau pesan kembali jikadengan mengetahui kunci rahasia, sehingga berfungsi sebagai dapat terjaga kerahsiaannya disebut kriptografi. Fungsi Hash Fungsi hash merupakan suatu fungsi matematika yang mengambil masukan panjang variabel dan mengubahnya ke dalam urutan biner dengan panjang yang tetap . Fungsi hash mengubah pesan asli menjadi serangkaian kode acak yang disebut dengan message digest . Pesan yang telah diubah menjadi message digest tidak dapat dikembalikan lagi menjadi pesan semula karena sifatnya satu arah dan pesan yang berbeda akan menghasilkan nilai hash yang berbeda . Adanya perubahan 1 . bit saja akan mengubah keluaran hash secara drastis. Fungsi hash biasanya digunakan untuk menjamin integritas dan digital signature . Fungsi hash digunakan untuk menjamin bahwa data atau pesan yang dikirim tidak mengalami modifikasi atau pemalsuan selama proses transmisi. Suatu fungsi hash akan memetakan bit-bit string dengan panjang sembarang ke sebuah string dengan panjang tertentu misalnya n. Proses pemetaan suatu input string output tersebut disebut dengan proses hashing. Nilai hash, kode hash atau hasil hash merupakan sebutan dari output fungsi hash . Digital Signature Digital Signature pertama kali ditemukan oleh Diffie dan Hellman pada tahun 1976 . Digital Signature atau tanda tangan digital adalah mekanisme otentikasi yang memungkinkan pembuat pesan dapat melampirkan sebuah kode yang bertindak sebagai tanda tangan berfungsi untuk menguji keutuhan dan otentikasi suatu dokumen digital, serta dapat mendeteksi perubahan dokumen dari hasil manipulasi . , . Tanda tangan digital yang dibubuhkan dalam suatu dokumen digital dapat memastikan bahwa pesan yang ditandatangani dan diterima adalah asli . Tanda tangan digital dapat menjamin kemanan dokumen yang di tanda tanganinya dalam aspek non-repudation yang artinya anti penyangkalan apabila dokumen valid maka pengirim tidak bisa menyangkal keberadaan dokumen bahwa memang benar dikirim oleh pengirim yang bersangkutan . SHA-256 Secure Hash Algorithm 256 (SHA-. adalah sebuah kriptografi fungsi hash satu arah yang dirancang oleh National Security Agency (NSA) dan dipublikasikan oleh National Institute of Standart and Technology (NIST) sebagai sebuah Federal Information Processing Standart (FIPS) oleh U. S pada tahun 2002 . Ada empat algoritma untuk keamanan fungsi hash yaitu SHA-0. SHA-1. SHA-2, dan SHA-3 . SHA 256 merupakan pengembangan dari SHA 0 dan SHA 1 . SHA-256 menghasilkan message digest sepanjang 256 bit . Algoritma SHA-256 dapat digunakan untuk melakukan pengecekan integritas data, pembuatan Digital Signature, dan lain-lain . Dalam sign dan verify SHA 2 yang mempunyai waktu paling cepat dan baik dalam melakukan proses otentikasi . SHA Ae256 tergolong aman karena didesain sedemikian rupa sehingga tidak memungkinkan mendapatkan pesan yang berhubungan dengan message digest yang sama . Syahfira Chairunnisa Lubis, 2022. Hal 113 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index RSA-CRT RSA-CRT (Rhivest-Shamir-Adleman dengan Chinese Remainder Theore. merupakan suatu metode kriptografi yang sama dengan RSA biasa, namun memanfaatkan teorema CRT untuk memperpendek ukuran bit eksponen dekripsi . CRT (Chinese Remainder Theore. merupakan suatu algoritma untuk mengurangi perhitungan aritmatika modular dengan modulus besar untuk perhitungan yang sama untuk masing -masing faktor dari modulus . Pada dasarnya, proses enkripsi pesan dengan RSA tidak membutuhkan proses perhitungan dengan teori seperti CRT. Hal ini dikarenakan nilai pemangkatan eksponensial modulus yang diproses tidaklah besar. CRT hanya diperlukan untuk menurunkan nilai pemangkatan yang besar pada saat dekripsi pesan un tuk menghemat waktu pengerjaan . Kerangka Kerja Algoritma SHA-256 dan RSA-CRT SHA-256 dan RSA-CRT adalah algoritma yang digunakan dalam proses pembentukan Digital Signature pada penelitian ini. Plainteks akan di enkripsi dengan fungsi hash SHA-256 dan menghasilkan message digest kemudian message digest akan dienkripsi dengan kunci publik dari algoritma RSA -CRT. Pesan (M) atau Konversi ke biner PraPemprosesan Komputasi Hash Padding Untuk setiap blok pesan M 0 ,M 1 ,A. M n-1 Penjadwalan Parsing Komputasi nilai hash untuk t=0 sampai t=63 Inisialisasi nilai hash Inisialisasi variabel kerja dan nilai Jumlahkan hasil akhir komputasi dengan inisialisasi nilai hash Gabungan H0 - H7 Nilai hash (Message Diges. Ubah message digest menjadi kode ASCII Tentukan nilai p&q dari bilangan prima Hitung nilai n n=pxq Hitung nilai m m=. Tentukan kunci publik & kunci privat Enkripsi dengan kunci publik RSA-CRT Hasil kode digital Gambar 1. Diagram Algoritma SHA-256 dan RSA-CRT Syahfira Chairunnisa Lubis, 2022. Hal 114 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index HASIL DAN PEMBAHASAN Pada bagian ini berisi hasil dan pembahasan dari topik penelitian, yang bisa di buat terlebih dahulu metodologi Bagian ini juga merepresentasikan penjelasan yang berupa penjelasan, gambar, tabel dan lainnya. Banyaknya kata pada bagian ini berkisar. Penerapan Algoritma SHA-256 dan RSA-CRT Tentukan Plainteks Data yang akan diolah adalah nomer permintaan faktur yang tertera di dalam faktur. Data nomer faktur yang digunakan adalah AuPO21100461Ay. Konversi Plainteks ke Biner Plainteks yang digunakan berjumlah 10 digit dan akan diubah ke dalam bentuk biner. (P = 01010000. O = 01001111, 2 = 00000010, 1 = 00000001, 1 = 00000001, 0 = 00000000, 0 = 00000000, 4 = 00000100, 6 = 00000110, 1 = 00000. Panjang pesan . = 10 x 8 = 80 bit. Maka panjang pesannya adalah 80 bit. Tambahkan Bit Padding Tahap berikutnya adalah menambahkan bit-bit pengganjal sehingga total panjangnya 512 bit. Padding dilakukan dengan cara menambahkan bit 1 dan sisanya adalah bit 0 sejumlah k dengan persamaan sebagai berikut: l 1 k O 448 mod 51 80 1 k O 448 mod 512 81 k O 448 mod 512 k = 448 Ae 81 mod 512 k = 367 mod 512 Karena k = 367, maka banyak bit 0 yang akan ditambahkan adalah sebanyak 367 bit. Lalu pada akhir pesan yang dipadding, ditambahkan 8 bit nilai l yaitu 80 = 10100000. Hasil pesan yang dipadding adalah sebagai berikut: Tabel 1. Hasil Padding Pesan Lakukan Parsing Pesan Selanjutnya adalah membagi setiap blok 512 bit menjadi 16 blok dan masing -masing blok berukuran 32 bit. Berikut adalah hasil parsing pesan: Blok ycA1 . ycA2 . ycA3 . ycA4 . ycA5 . ( ) ycA6 0 Tabel 2. Parsing Pesan Biner 01010000 01001111 00000010 00000001 00000000 00000000 00000110 00000001 10000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Syahfira Chairunnisa Lubis, 2022. Hal 115 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index ycA7 . ycA8 . ycA9 . ycA10 . ycA11 . ycA12 . ycA13 . ycA14 . Blok ycA15 ycA16 . Biner Inisiallisasi Nilai Hash Nilai hash terdiri dari 8 kata 32 bit dalam bentuk heksadesimal, sebagai berikut: a = H0 . = 6A09E667 b = H1 . = BB67AE85 c = H2 . = 3C6EF372 d = H3 . = A54FF53A e = H4 . = 510E527F f = H5 . = 9B05688C g = H6 . = IF83D9AB h = H7 . = 5BE0CD19 Lakukan Penjadwalan Pesan Mengubah setiap blok pesan menjadi bilangan heksadesimal yang diberi label W 0 . W 1 . W 2 , sampai W 63 dengan ketentuan sebagai berikut : ycA 0 O yc O 15 Wt = { yc . cOycn Oe . ycOycn Oe 7 yua 256 . cOycn Oe . ycOycn Oe 16 16 O yc O 63 yua Dimana : cOycnOe2 ) = ( . cOycn Oe2 )ycIycCycNycI . Oi (( ycOycnOe2 ) ycIycCycNycI 19 Oi (( ycOycnOe2 ) ycIyaycI10 ) yua1 cOycnOe15 ) = ( ( ycOycnOe15 ) ycIycCycNycI . Oi ( . cOycn Oe15 )ycIycCycNycI 18 Oi (( ycOycnOe15 ) ycIyaycI. yua0 Keterangan : = Blok pesan yang baru = Blok pesan yang lama ycOycnOe2 = Blok pesan dari W ke i-2 ycOycn Oe15 = Blok pesan dari W ke i-15 ROTR = Rotate Right SHR = Shift Right Oi = Operator XOR Tabel 3. Penjadwalan Pesan 504F0201 W16 W17 W18 W19 W20 W21 W22 W23 W24 W25 924F020A 8E423148 214FC144 9669BE2D B44ED8CA CCEE77DC 924E5809 8DEC873D 3D3DE8E9 W32 W33 W34 W35 W36 W37 W38 W39 W40 W41 3D869ACC C8FE85A2 E2F7CFE2 B834068B 3F0DFB3A 5E39265B FD234098 1E9031CD CB132BF2 8B47F883 W48 W49 W50 W51 W52 W53 W54 W55 W56 W57 19581D66 A5248819 90E57231 DE872D61 945BF77B 1F099B95 79522E12 216EA6F2 00F35B5B d6FB8F Syahfira Chairunnisa Lubis, 2022. Hal 116 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index W10 W11 W12 W13 W14 W15 W26 W27 W28 W43 W30 W31 0E54F166 ED884433 601A4F32 1843E197 CE9CA6E5 30FAD8AD W42 W43 W44 W45 W46 W47 B662E66C 08E5BA2A D9F3C438 7112A99A 4651BEB7 W58 W59 W60 W61 W62 W63 D563B330 B41F2CF8 56D231E1 D854B08D 89B1D4EC 3692E6E2 Untuk perhitungan penjadwalan pesan ke 16 sampai ke 63 dilakukan dengan penyelesaia n dengan persamaan rumus sebagai berikut: cOycnOe2 ) = ( . cOycn Oe2 )ycIycCycNycI . Oi (( ycOycnOe2 ) ycIycCycNycI 19 Oi (( ycOycnOe2 ) ycIyaycI10 ) yua1 = . 00000 00000000 00000000 00000. Oi. 00000 00000000 00000000 00000. 0000000000000 00000000 00000. = 00000000 00000000 00000000 00000000 = 00000000 cO16 Oe. = ycO9 = 00000000 cOycn Oe15 ) = (( ycOycnOe15 ) ycIycCycNycI . Oi ( . cOycn Oe15 )ycIycCycNycI 18 Oi (( ycOycnOe15 ) ycIyaycI3 = . 00010 0000000 00000000 00001. Oi. 0000 00000000 00000000 00000. 00000 00000000 00000000 00000. = 11001111 10000100 01010001 00000000 = 42000009 cO16Oe16 ) = ycO0 = 504F0201 ( . cO16Oe2 ) ycO16 Oe7 yua0 256 . cO16Oe15 ) ycO16Oe16 ycOyc = yua1 = 00000000 00000000 42000009 504F0201 = 924F020A Perhitungan dilakukan sampai dengan W 63 . Inisialisasi Variabel Kerja dan Konstanta Setiap variabel kerja a, b, c, d, e, f, g, dan h daimbil dari inisial nilai hash. Tabel 4. Nilai Konstanta 428A2F98 D807AA98 E49B69C1 983E5152 27B70A85 A2BFE8A1 19A4C116 48F82EE 12835B01 EFBE4786 A831C66D 2E1B2138 A81A664B 1E376C08 78A5636F B5C0FBCF 0FC19DC6 B00327C8 4D2C6DFC C24B8B70 84C87814 E9B5DBA5 550C7DC3 240CA1CC BF597FC7 53380D13 C76C51A3 34B0BCB5 8CC70208 3956C25B 72BE5D74 2DE92C6F C6E00BF3 650A7354 D192E819 391C0CB3 90BEfA 59F111F1 80DEB1FE 4A7484AA D5A79147 766A0ABB D6990624 4ED8AA4A A4506CEB 923F82A4 9BDC06A7 5CB0A9DC 06CA6351 81C2C92E F40E3585 5B9CCA4F BEF9A3F7 AB1C5ED5 C19BF174 76F988DA 92722C85 106AA070 682E6FF3 C67178F2 Hitung komputasi Fungsi Hash Komputasi hash dilakukan untuk mencari nilai t. Proses penyelesaian komputasi fungsi hash dilakukan dari t0 hingga t63. Tabel 5. Nilai Komputasi Syahfira Chairunnisa Lubis, 2022. Hal 117 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index Init 6A09E667 4C578A4E 7F03F68E 9E3BDC12 A767190D C4618819 BB67AE85 6A09E667 4C578A4E 7F03F68E 9E3BDC12 A767190D 3C6EF372 BB67AE85 6A09E667 4C578A4E 7F03F68E 9E3BDC12 A54FF53A 3C6EF372 BB67AE85 6A09E667 4C578A4E 7F03F68E 510E527F E916E4A3 B1DC843B C7366809 0AF2D4C4 13C46A73 9B05688C 510E527F E916E4A3 B1DC843B C7366809 0AF2D4C4 1F83D9AB 9B05688C 510E527F E916E4A3 B1DC843B C7366809 5BE0CD19 1F83D9AB 9B05688C 510E527F E916E4A3 B1DC843B t=10 t=11 7131E3B5 3266AD5E D2D2174B 450A5C8F B2D5917E ACF46289 C4618819 7131E3B5 3266AD5E D2D2174B 450A5C8F B2D5917E A767190D C4618819 7131E3B5 3266AD5E D2D2174B 450A5C8F B2D5917E 9E3BDC12 A767190D C4618819 7131E3B5 3266AD5E D2D2174B 450A5C8F B1DC1C0F 64D7DBAD 3D1C982C B57AD57F F7FF2E05 13C46A73 B1DC1C0F 64D7DBAD 3D1C982C B57AD57F 0AF2D4C4 13C46A73 B1DC1C0F 64D7DBAD 3D1C982C B57AD57F C7366809 0AF2D4C4 13C46A73 B1DC1C0F 64D7DBAD 3D1C982C t=12 t=13 t=14 t=15 t=16 t=17 t=18 t=19 t=20 t=21 t=22 t=23 t=24 t=25 t=26 t=27 t=28 t=29 t=30 CBE60D99 AA333E78 37A1FA8A F886545D EB0D388D 501F8C8B FB31C256 7D341E46 CEE44A45 D6E6C9BD 72E4BF28 A00FABA1 F260A3B5 1E410A35 CFCAB889 9AACA407 8A76C70D ACF46289 CBE60D99 AA333E78 37A1FA8A F886545D EB0D388D 501F8C8B FB31C256 7D341E46 CEE44A45 D6E6C9BD 72E4BF28 A00FABA1 F260A3B5 1E410A35 CFCAB889 9AACA407 ACF46289 CBE60D99 AA333E78 37A1FA8A F886545D EB0D388D 501F8C8B FB31C256 7D341E46 CEE44A45 D6E6C9BD 72E4BF28 A00FABA1 F260A3B5 1E410A35 CFCAB889 B2D5917E ACF46289 CBE60D99 AA333E78 37A1FA8A F886545D EB0D388D 501F8C8B FB31C256 7D341E46 CEE44A45 D6E6C9BD 72E4BF28 A00FABA1 F260A3B5 1E410A35 B1019067 0D130FF4 C86BD349 1B838CDB 36B0A107 747F3090 6C5551B5 0F43F71D 83B3FCC7 EBC04537 924A9321 D596F0EE 5BA14635 B22EDA4E 5E51EB36 4788DC79 E06D15C7 7CAB6FE6 F7FF2E05 B1019067 0D130FF4 C86BD349 1B838CDB 36B0A107 747F3090 6C5551B5 0F43F71D 83B3FCC7 EBC04537 924A9321 D596F0EE 5BA14635 B22EDA4E 5E51EB36 4788DC79 E06D15C7 F7FF2E05 B1019067 0D130FF4 C86BD349 1B838CDB 36B0A107 747F3090 6C5551B5 0F43F71D 83B3FCC7 EBC04537 924A9321 D596F0EE 5BA14635 B22EDA4E 5E51EB36 4788DC79 B57AD57F F7FF2E05 B1019067 0D130FF4 C86BD349 1B838CDB 36B0A107 747F3090 6C5551B5 0F43F71D 83B3FCC7 EBC04537 924A9321 D596F0EE 5BA14635 B22EDA4E 5E51EB36 t=31 t=32 t=33 t=34 4406C77E 92BEA4BD FCA16147 CE6F5D01 8A76C70D 4406C77E 92BEA4BD FCA16147 9AACA407 8A76C70D 4406C77E 92BEA4BD CFCAB889 9AACA407 8A76C70D 4406 C77E 556B594A 26742D3E CE6F5D01 7CAB6FE6 556B594A 26742D3E E06D15C7 7CAB6FE6 556B594A 26742D3E 4788DC79 E06D15C7 7CAB6FE6 556B594A t=35 t=36 t=37 t=38 t=39 t=40 t=41 t=42 t=43 t=44 t=45 t=46 t=47 t=48 t=49 t=50 t=51 t=52 t=53 D43DE0FE 831F219F FF7B8017 0D2A7971 DE3E71D2 E6A9D97A 36DC9791 47B7A0F8 2BA6F28B 603B46F0 86C2674E FCE98B70 9EC7F1EC 2F150BCD 1D16B678 A7FEA8F6 D768BAC5 6FA2FA0C CE6F5D01 D43DE0FE 831F219F FF7B8017 0D2A7971 DE3E71D2 E6A9D97A 36DC9791 47B7A0F8 2BA6F28B 603B46F0 86C2674E FCE98B70 9EC7F1EC 2F150BCD 1D16B678 A7FEA8F6 D768BAC5 FCA16147 CE6F5D01 D43DE0FE 831F219F FF7B8017 0D2A7971 DE3E71D2 E6A9D97A 36DC9791 47B7A0F8 2BA6F28B 603B46F0 86C2674E FCE98B70 9EC7F1EC 2F150BCD 1D16B678 A7FEA8F6 92BE A4BD FCA16147 CE6F5D01 D43DE0FE 831F219F FF7B8017 0D2A7971 DE3E71D2 E6A9D97A 36DC9791 47B7A0F8 2BA6F28B 603B46F0 86C2674E FCE98B70 9EC7F1EC 2F150BCD 1D16B678 1113A074 0E766B6B FBA8FCFB 7079E67E 65C880B7 9314F5AC DAC470BC 59B3A096 97510A01 8FA52FC3 88ABF5D3 550D6990 C9F7A134 9F0AE0C6 3230B25E 0619C83C CE6F5D01 1113A074 0E766B6B FBA8FCFB 7079E67E 65C880B7 9314F5AC DAC470BC 59B3A096 97510A01 8FA52FC3 88ABF5D3 550D6990 C9F7A134 9F0AE0C6 3230B25E CE6F5D01 1113A074 0E766B6B FBA8FCFB 7079E67E 65C880B7 9314F5AC DAC470BC 59B3A096 97510A01 8FA52FC3 88ABF5D3 550D6990 C9F7A134 9F0AE0C6 26742D3E CE6F5D01 1113A074 0E766B6B FBA8FCFB 7079E67E 65C880B7 9314F5AC DAC470BC 59B3A096 97510A01 8FA52FC3 88ABF5D3 550D6990 C9F7A134 t=54 t=55 t=56 t=57 t=58 t=59 t=60 5DC4A17B ACA556F2 C9C1 08D4 0D9CFFEA 4A0CF720 6B78727C C7B4864F 6FA2FA0C 5DC4A17B ACA556F2 C9C108D4 0D9CFFEA 4A0CF720 6B78727C D768BAC5 6FA2FA0C 5DC4A17B ACA556F2 C9C108D4 0D9CFFEA 4A0CF720 A7FEA8F6 D768BAC5 6FA2FA0C 5DC4A17B ACA556F2 C9C108D4 0D9CFFEA 528CAB05 26951A8F A99CD6FB 3E8599EA 0A833E7E 3632DD07 5893E266 0619C83C 528CAB05 26951A8F A99CD6FB 3E8599EA 0A833E7E 3632DD07 3230B25E 0619C83C 528CAB05 26951A8F A99CD6FB 3E8599EA 0A833E7E 9F0AE0C6 3230B25E 0619C83C 528CAB05 26951A8F A99CD6FB 3E8599EA t=61 t=62 t=63 3EC9B568 45484CB6 432AD4AF C7B4864F 3EC9B568 45484CB6 6B78727C C7B4864F 3EC9B568 4A0CF720 6B78727C C7B4864F E0EB7080 550D4EF7 DD386DC6 5893E266 E0EB7080 550D4EF7 3632DD07 5893E266 E0EB7080 0A833E7E 3632DD07 5893E266 Perhitungan t=0 sampai t=63 dilakukan dengan menggunakan rumus: = Ea Oc1 yaEa. ce , yce, yc. ycOyc = 5BE0CD19 3587272B 1F85C985 428A2F98 504F0201 = 43C6EF69 = Oc0 . ycAycayc . ca, yca, yc. = CE20B47E 3A6FE667 = 08909AE5 = ycc ycN1 = A54FF53A 43C6EF69 = E916E4A3 = ycN1 ycN2 = 43C6EF69 08909AE5 = 4C578A4E Syahfira Chairunnisa Lubis, 2022. Hal 118 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index Jumlahkan Hasil Akhir dengan Nilai Hash Value Tabel 6. Penjumlahan Dengan Nillai Hash Value Inisial Nilai Hash Variabel Variabel Kerja Value H0 . 6A09E667 432AD4AF H1 . BB67AE85 45484CB6 H2 . 3C6EF372 3EC9B568 H3 . A54FF53A C7B4864F H4 . 510E527F DD386DC6 H5 . 9B05688C 550D4EF7 H6 . IF83D9AB E0EB7080 H7 . 5BE0CD19 5893E266 Hasil AD34BB16 00AFFB3B 7B38A8DA 6D047B89 2E46C045 F012B783 006F4A2B B474AF7F Menghasilkan Message Digest Setelah melakukan perhitungan, maka nilai message digest yang dihasilkan dari pesan AuPO21100461Ay yaitu: AD34BB1600AFFB3B7B38A8DA6D047B892E46C045F012B783006F4A2BB474AF7F Ubah Message Digest ke Bentuk ASCII Message digest yang diperoleh dari hasil hash SHA-256 akan diubah dalam bentuk kode ASCII, karena proses enkripsi RSA-CRT menggunakan bilangan desimal. Maka hasil konversi message digest dari nilai hash SHA-256 kedalam bentuk desimal adalah: 10 13 3 4 11 11 1 6 0 0 10 15 15 11 3 11 7 11 3 8 10 8 13 10 6 13 0 4 7 11 8 9 2 14 4 6 12 0 4 5 15 0 1 2 11 7 8 3 0 0 6 15 4 10 2 11 11 4 7 4 10 15 7 15 Tentukan Nilai p dan q p = 151 dan q = 137 Hitung Nilai n n = p. q= 151 x 137 = 20687 Tentukan Kunci Publik dan Kunci Privat Hitung . Dengan Menggunakan Persamaan Pada Rumus i. = . Ae . Ae . = . Ae . Ae 1 ) = . = 20400 Tentukan Nilai e Acak Sebagai Kunci Publik Dengan syarat memenuhi Greater Common Divisor (GCD) dimana . , i. ) = 1, 1 < e < i. menggunakan persamaan pada rumus r0 = q 1 r1 r2 , 0 < r2 < r1 r1 = q 2 r2 r3, 0 < r3 < r2 rn = a Perhitungan akan berhenti jika nilai r berahir pada angka 0. Jika nilai sebelum r terakhir adalah 1 maka angka yang menjadi percobaan benar sebagai e. Maka gcd . ,20. = 1 Percobaan pertama nilai e = 6 = 20400 = q 1 r1 r2 = 0. = q 2 r2 r3, 0 < r3 < r2 20400 = 3400. Karena angka pada r terakhir sebelum 0 tidak 1, tetapi 6 maka 6 bukanlah nilai e, dilakukan percobaan kedua. Percobaan kedua dengan nilai e = 7 = 204000 = q 1 r1 r2 = 0. = q 2 r2 r3, 0 < r3 < r2 20400 = 4314. = q 3 r3 r4, 0 < r4 < r5 = 3. = q 4 r4 r5, 0 < r5 < r6 = 2. Syahfira Chairunnisa Lubis, 2022. Hal 119 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index Dari perhitungan diatas, angka pada r terakhir sebelum 0 adalah 1, maka 7 adalah angka yang tepat untuk nilai e, maka e = 7. Membangkitkan Kunci Privat d Dengan Menggunakan Persamaan Rumus e x d mod m = 1 7 x 8743 mod 20400 = 1 61201 x mod 20400 = 1 Tentukan Nilai dP Dengan Menggunakan Persamaan Rumus dP =e -1 mod . = d mod . dP = 8743 mod . dP = 8743 mod 150 dP = 43 Tentukan Nilai dQ Dengan Menggunakan Persamaan Rumus dQ = e -1 mod . =d mod . dQ = 8743 mod . dQ = 8743 mod 136 dQ = 39 Menentukan Nilai qInv Dengan Menggunakan Persamaan Rumus qInv = q -1 mod p qInv = 137-1 mod p qInv = 137 x 97 mod 151 artinya 137 x 97 O 1 mod 151 , sama dengan 137 x 97 mod 151 = 1 Dari hasil perhitungan diatas, maka dapat disimpulkan bahwa: Kunci Publik adalah pasangan dari . = 7 dan n = 20. Kunci Privat adalah pasangan dari . P= 43, dQ= 39. QInv= 97, p= 151, q= . Enkripsi dengan Kunci Publik RSA-CRT Didalam proses enkripsi message digest yang sudah dikonversi menjadi kode ASCII akan dirubah menjadi Proses ini akan menggunakan kunci publik . Untuk mempermudah perhitungan maka, message digest dipecah menjadi blok yang lebih kecil. Dimulai dari M 1 sampai M 64. Dimulai dari M 1 = 10. M 2 = 13,M 3 = 3 sampai dengan M 64. Rumus enkripsi adalah sebagai berikut: = M e . = M 1 e . = 107 mod 20687 = 8179 = M 2 e . = 137 mod 20687 = 4846 Diteruskan sampai dengan C64. Hasil enkripsi dari RSA-CRT yaitu: 8179 4846 2187 16384 17 17 1 1005 0 0 8179 5442 5542 17 2187 17 16750 17 2187 7765 8179 7765 4846 8179 11005 4846 0 16384 16750 17 7765 4247 128 13239 16384 11005 1924 0 16384 16064 5442 0 1 128 17 16750 7765 2187 0 0 1105 5442 16384 8179 128 17 17 16384 16750 16384 8179 5442 16750 5442 Hasil Kode Digital Signature Maka hasil enkripsi RSA-CRT dikonversikan kembali ke dalam heksadesimal yaitu: IFF312EE88B4000111112AFD001FF3154215421188B11416E1188B1E551FF31E5512EE1FF32AFD12EE 04000416E111E5510B08033B740002AFD784040003EC01542018011416E1E5588B002AFD154240001FF3 8011114000416E40001FF31542416E1542 Implementasi Sistem Implementasi sistem merupakan penerapan dari proses perancangan sistem yang dioperasikan secara Rancangan Form Login Form login ini merupakan form yang harus diisi oleh admin. Hanya admin yang mempunyai hak akses untuk masuk ke dalam sistem. Admin harus mengisi username dan password yang sesuai dengan sistem agar sistem terbuka ke halaman berikutnya dan siap mengolah data faktur yang berada di dalam sistem. Syahfira Chairunnisa Lubis, 2022. Hal 120 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index Gambar 2. Tampilan Form Login Rancangan Halaman Home Halaman Home akan terbuka ketika proses login telah berhasil. Halaman Home berisi informasi jumlah data faktur dan data admin yang ada pada sistem. Gambar 3. Tampilan Halaman Home Rancangan Halaman Data Faktur Pada halaman data faktur terdapat daftar data faktur yang telah di input oleh admin. Data faktur tersebut berisi informasi faktur yang akan diterbitkan. Gambar 4. Tampilan Halaman Data Faktur Tampilan Form Tambah Data Faktur Halaman tambah data faktur berisi form yang harus diisi oleh admin berkaitan dengan isi faktur yang akan Ketika form sudah diisi serta disimpan maka data faktur akan tersimpan ke database sistem dan akan tampil di halaman data faktur. Gambar 5. Tampilan Form Tambah Data Faktur Syahfira Chairunnisa Lubis, 2022. Hal 121 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index Tampilan Halaman Cetak Faktur Halaman cetak faktur merupakan halaman print preview pada faktur pembelian distributor yang akan dicetak melalui aksi cetak pada halaman data faktur. Faktur pembelian distributor yang akan dicetak sudah disertai QR Code yang memudahkan para distributor untuk melakukan verifikasi pada faktur. Gambar 6 Tampilan Cetak Faktur Tampilan Halaman Verifikasi Faktur Halaman verifikasi faktur akan terbuka ketika para distributor sudah melakukan scan QR Code pada faktur. Code yang berada di faktur akan mengarahkan ke halaman verifikasi faktur. Apabila faktur tersebut asli maka halaman verifikasi faktur akan menampilkan data data faktur yang sesuai dengan faktur yang telah diterima oleh distributor dan menyatakan bahwa faktur asli, signature ditemukan. Namun, jika faktur tersebut palsu dan mengalami modifikasi maka halaman verifikasi faktur akan menampilkan data data faktur kosong dan menyatakan bahwa faktur palsu, signature tidak ditemukan. Gambar 7. Tampilan Halaman Verifikasi KESIMPULAN Permasalahan dalam pemodifikasian faktur dapat diatasi dengan mengimplementasikan sistem Digital Signature berbasis web. Digital Signature dapat menjamin dan memenuhi tujuan kriptografi yaitu menjaga integritas data, kerahasiaan data, otentikasi serta penyangkalan. Kombinasi algoritma SHA-256 dan RSA-CRT yang digunakan dalam pembuatan Digital Signature membantu menciptakan kode kode acak yang rumit sehingga sulit untuk dipecahkan. Untuk membuktikan bahwa faktur asli dikirim oleh pengirim yaitu dengan cara memvalidasi QR Code yang berada di Syahfira Chairunnisa Lubis, 2022. Hal 122 JURNAL CYBER TECH STMIK TRIGUNA DHARMA P-ISSN : 2988-2508 . E-ISSN : 2987-9604 Volume 5. Nomor 1. Edisi Januari 2022 https://ojs. id/index. php/jct/index faktur, jika QR Code yang dikirim oleh pengirim mengeluarkan informasi yang sama dengan faktur yang diterima menandakan bahwa faktur tersebut asli, namun jika QR Code tidak memunculkan informasi apapun yang tidak sama dengan faktur yang diterima maka sudah terjadi pemodifikasian faktur. Dengan diterapkannya digital signature pada faktur berbasis web dapat memudahkan para penguna dalam proses verifikasi. UCAPAN TERIMAKASIH Terima kasih disampaikan kepada Bapak Khairi Ibnutama dan Ibu Syarifah Fadillah Rezky, serta pihak-pihak yang telah mendukung dalam proses penyelesaian penelitian ini. REFERENCES