• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2022

Membagikan "BAB II LANDASAN TEORI"

Copied!
14
0
0

Teks penuh

(1)

6 BAB II

LANDASAN TEORI 2.1 Kriptografi

Kriptografi adalah suatu ilmu yang mempelajari bagaimana cara menjaga agar data atau pesan tetap aman saat dikirimkan, dari pengirim ke penerima tanpa mengalami gangguan dari pihak ketiga. Buku yang dikeluarkan Bruce Scheiner yang berjudul "Applied Cryptography", kriptografi adalah ilmu pengetahuan dan seni menjaga pesan agar tetap aman (secure).

Kriptografi merupakan ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi, seperti aspek kerahasiaan, keabsahan, integritas, dan autentikasi. Kriptografi terdiri dari proses enkripsi dan dekripsi. Enkripsi adalah proses penyandian dari suatu pesan yang dapat dimengerti, disebut plaintext, dan menjadi suatu pesan yang tidak dimengerti, disebut dengan ciphertext, sedangkan proses sebaliknya disebut dengan dekripsi.

Proses enkripsi dan dekripsi memerlukan beberapa unsur yang harus dipenuhi seperti kunci publik, kunci privat, dan plainteks. Prinsip dari kriptografi adalah untuk mengamankan pengiriman suatu pesan rahasia apabilasdikirimkan melalui jalur yang tidak dapat dijamin keamanannya, sehingga rawan terjadi penyadapan dan manipulasi pesan.

Gambar 2.1. Skema kriptografi sederhana

Kriptografi memiliki 4 komponen utama yaitu:

1. Plaintext, yaitu pesan yang dapat dibaca

2. Ciphertext, yaitu pesan acak yang tidka dapat dibaca 3. Key, yaitu kunci untuk melakukan teknik kriptografi

4. Algorithm, yaitu metode untuk melakukan enkrispi dan dekripsi

(2)

7

Kriptografi dibagi menjadi 2 berdasarkan sifat kuncinya, sistem kripto terbagi menjadi dua, yaitu sistem kripto kunci rahasia (simetris) dan sistem kripto kunci publik (asimetris).

Kripto simetris proses enkripsi dan dekripsi menggunakan kunci rahasia yang sama. Kripto asimeteris proses enkripsi dan dekripsi menggunakan kunci yang berbeda, yaitu kunci publik untuk dekripsi, dan kunci privat untuk enkripsi.

2.2 Kriptografi Kunci Publik (Asimetris)

Algoritma kriptografi asimetris adalah algoritma yang menggunakan kunci untuk proses enkripsi dan dekripsi. Algoritma ini dapat disebut algoritma kunci umum (public key algorithm) karena kunci untuk melakukan proses enkripsi dibuat umum (public key) atau dapat diketahui oleh setiap orang, tetapi untuk kunci dekripsi hanya diketahui oleh orang yang memiliki kunci pribadi yang sering disebut (private key) atau orang yang berwenang mengetahui data atau pesan yang disandikan. Kedua belah pihak antara penngirim dan penerima pesan dapat menjamin asal pesan serta keaslian pesan atau data tersebut karena adanya mekanisme ini. Skema dari algoritma kriptografi asimetris dijelaskan pada Gambar 2.2.

Gambar 2.2. Skema enkripsi dan dekripsi algoritma asimetris

Masalah matematika yang sering dijadikan dasar pembangkitan sepasang kunci pada algortima kunci publik(asimetris), yaitu:

1. Pemfaktoran Diberikan bilangan bulat n. faktorkan n menjadi faktor primanya.

Semakin besar n, semakin sulit memfaktorkannya (butuh waktu sangat lama).

Algoritma yang menggunakan prinsip ini adalah RSA.

Temukan x sedemikian sehingga ax = b(mod n) sulit dihitung. Semakin besar a,b dan n semakin sulit memfaktorkannya.

2.3 Bilangan Prima

Bilangan Prima yaitu bilangan bulat positif yang lebih besar dari 1 dan hanya habis dibagi dirinya sendiri dan bilangan 1. Misalnya bilangan 2, 3, 5, 7, 11, 13, 17, 19 dan seterusnya. Dan bilangan komposit adalah bilangan bulat selain bilangan prima. Bilangan prima banyak

(3)

8

dibutuhkan dalam bidang ilmu Computer Security seperti RSA (Rivest Shamir Adleman), dimana semakin besar angka bilangan prima tersebut maka semakin susah untuk difaktorisasi.

Keprimaan sebuah bilangan dapat dilakukan dengan memfaktor bilangan tersebut dan bila dapat difaktorkan dengan bilangan selain dirinya sendiri dan bilangan 1, maka bilangan tersebut bukanlah prima. Contoh berikut ini :

Faktor dari 1 adalah 1; satu faktor Faktor dari 2 adalah 1 dan 2; dua faktor Faktor dari 3 adalah 1 dan 3; dua faktor Faktor dari 4 adalah 1, 2, dan 4; tiga faktor Faktor dari 5 adalah 1 dan 5; dua faktor

Faktor dari 6 adalah 1, 2, 3, dan 6; empat faktor Faktor dari 7 adalah 1 dan 7; dua faktor

Faktor dari 8 adalah 1, 2, 4, dan 8; empat faktor Faktor dari 9 adalah 1, 3, dan 9; tiga faktor

Berdasarkan hasil faktorisasi di atas, maka dapatlah diambil kesimpulan bahwa 2, 3, 5 dan 7 adalah bilangan prima, dan bilangan lainnya adalah komposit.

Bilangan bulat positif yang mempunyai aplikasi penting dalam ilmu komputer dan matematika diskrit adalah bilangan prima. Bilangan prima adalah bilangan bulat positif yang lebih besar dari 1 yang habis dibagi dirinya sendiri contoh 23 adalah bilangan prima karena bilangan tersebut lebih dari 1 dan habis di bagi 1 dan dirinya sendiri. Bilangan prima dimulai dari 3,5,7,11,13 . . . seluruh bilangan prima adalah bilangan ganjil, kecuali 2 adalah bilangan genap. Bilangan selain prima disebut dengan bilangan komposit. Misalkan 20 adalah bilangan komposit karena 20 dapat di bagi oleh 2,4,5 dan 10, selain 1 dan 20 sendiri.

Pengujian bilangan prima juga dapat dilakukan dengan cara membagi menggunakan sejumlah bilangan prima, misalkan n dibagi dengan sejumlah bilangan prima mulai dari 2,3,...,n. Jika n habis dibagi dengan salah satu dari baingan prima tersebut, maka n adalah bilangan komposit, tetapi jika n tidak habis dibagi oleh semua bilangan prima tersebut, maka n adalah bilangan prima.

2.3.1 Algoritma Pengujian Bilangan Prima Miller Rabin

(4)

9

Algoritma Miller Rabin dibuat oleh dua orang yaitu Miller (1975) dan Rabin (1980) yang biasa digunakan untuk menguji bilangan besar apakah termasuk bilangan prima atau tidak.

Algoritma ini tergolong efisien dan hampir pasti menghasilkan bilangan prima. Algoritma ini dapat diperhatikan bahwa (n-1) adalah bilangan integer genap, kemudian membagi (n) dengan 2 hingga menemukan bilangan ganjil q dengan total pembagian k kali. Jika n dinyatakan dalam bentuk bilangan biner dilakukan penggeseran hingga menemukan posisi 1 terkanan dengan k pergeseran.

2.4 Algoritma Merkle Hellman Knapsack

Merkle Hellman Knapsack merupakan kriptosistem yang dibuat oleh Merkle dan Hellman pada tahun 1978. Sistem ini dan beberapa variannya telah dipecahkan sekitar awal tahun 1980, tetapi masih layak untuk dipelajari dengan berbagai alasan. Algoritma Merkle hellman knapsack merupakan algoritma asimetris. Algoritma ini memliki kunci publik dan kunci privat untuk proses enkripsi dan dekripsinya.

Algoritma ini mempunyai tiga proses mekanisme. Proses yang pertama adalah proses pembangkitan kunci publik dan kunci privat, kedua proses enkripsi dan ketiga proses dekripsi.

Algoritma Merkle Hellman Knapsack memiliki beberapa mekanisme antara lain:

1. Menentukan deretan superincreasing di mana setiap elemen di dalam deretan harus lebih besar daripada jumlah elemen sebelumnya. Deretan superincreasing ini digunakan sebagai kunci privat.

2. Memilih bilangan prima m dengan ketentuan bilangan tersebut harus lebih besar daripada elemen terakhir deretan superincreasing

3. Memilih bilangan n, di mana bilangan tersebut relatif prima terhadap bilangan m.

4. Membangkitkan kunci publik dengan rumus :

pi = si ∗ n mod m...(Rumus 2.1) keterangan:

p = publik key

si = superincreasing n = bilangan relatif prima m = bilangan prima

(5)

10 5. Melakukan proses enkripsi dengan rumus :

c = b1 p1 + b2 p2+. . . +bn pn...(Rumus 2.2) keterangan:

c = chiperteks b = biner p = publik key

6. Melakukan proses dekripsi dengan rumus :

c ∗ n−1 mod m...(Rumus 2.3) keterangan:

c = chiperteks n−1 = invers dari m m = bilangan prima

2.4.1 Barisan Superincreasing

Barisan superincreasing merupakan barisan dimana setiap nilai dibarisan tersebut lebih besar daripada jumlah barisan sebelumnya. Algoritma Merkle Hellman Knapsack barisan superincreasing ini menjadi kunci privat untuk mendekripsi sebuah pesan. Sebagai contoh, {3, 5, 15, 25, 54, 110, 225} merupakan barisan superincreasing sedangkan {3, 5, 7, 14, 20, 30, 35}

bukan barisan superincreasing. Bilangan dalam barisan superincreasing jumlahnya adalah tujuh, karena barisan superincreasing tersebut nantinya berkoresponden terhadap pesan, yang mana pesan tersebut dirubah menjadi bilangan biner.

Contoh proses enkripsi algoritma Merkle Hellman Knapsack adalah sebagai berikut:

Bilangan superincreasing yang dipilih adalah s = 3, 5, 15, 25, 54, 110, 225 1. Plainteks “IT” dirubah menjadi biner

2. b = 1001001 1010100 3. Memilih bilangan m = 439.

4. Memilih bilangan n = 10 yang relatif prima terhadap m.

(6)

11

5. Membangkitkan kunci publik sesuai dengan (rumus 2.1) P1 = 3 * 10 mod 439 = 30

P2 = 5 * 10 mod 439 = 50 P3 = 15 * 10 mod 439 = 150 P4 = 25 * 10 mod 439 = 250 P5 = 54 * 10 mod 439 = 101 P6 = 110 * 10 mod 439 = 222 P7 = 225 * 10 mod 439 = 55

Jadi kunci publik p = 30, 50, 150, 250, 101, 222, 55

Bilangan biner berkoresponden terhadap kunci publik, artinya setiap elemen didalam bilangan biner maupun kunci publik harus dikalikan sesuai dengan urutannya kemudian di jumlahkan. Rumus untuk enkripsinya adalah

c = b1 p1 + b2 p2+. . . +bn pn.... (rumus 2.2) Proses enkripsi

cI = (1*30) + (0*50) + (0*150) + (1*250) + (0*101) + (0*222) + (1*55) = 335 cT = (1*30) + (0*50) + (1*150) + (0*250) + (1*101) + (0*222) + (0*55) = 281 Jadi, chiperteks dari “IT” adalah 335 281

Proses dekripsi menggunakan rumus c ∗ n−1 mod m...(rumus 2.3).

Proses menghitung nilai n-1, harus menggunakan algoritma extended euclidean. Proses dekripsi pada kasus ini n-1 = 44, kemudian hasil dari perkalian tersebut nantinya berkorsponden terhadap kunci privat (s) yaitu bilangan superincresing itu sendiri, langkah selanjutnya untuk mencari nilai binernya hasilnya dikurangi dengan angka yang ada di kunci privat dengan syarat memilih angka superincreasing yang mendekati hasil operasi tersebut. Nilai yang digunakan yaitu diberikan nilai 1 apabila terpilih menjadi operasi pengurangan dan diberikan nilai 0 apabila tidak terpilih. Langkah ini dilakukan secara berulang-ulang sampai hasilnya menjadi 0 :

cI = 335 * 44 mod 439 = 253

= 253 – 225 = 28 (1)

(7)

12

= 28 – 110 (0)

= 28 – 54 (0)

= 28 – 25 = 3 (1)

= 3 – 15 (0)

= 3 – 5 (0)

= 3 – 3 = 0 (1) 1001001 = I

cT = 281 * 44 mod 439 = 72

= 72 – 54 = 18

= 18 – 15 = 3

= 3 – 3 = 0 1010100 = T

Kemudian hasil biner 1001001 1010100 tersebut dikonversikan ke dalam bentuk karakter menjadi “IT”.

2.5 Algoritma RSA

Algoritma RSA diperkenalkan oleh tiga orang profesor MIT (Massachussets Institute of Technology) yaitu Ron Rivest, Adi Shamir, dan Leonard Adleman pada tahun 1978. Nama RSA sendiri diambil dari inisial nama penemunya yakni Rivest, Shamir dan Adleman.

Kesulitan dalam pemfaktoran bilangan kedalam bentuk prima adalah titik kekuatan dari algoritma ini untuk mendapatkan kunci private. Algoritma RSA tergolong kedalam kriptografi asimetri, yaitu kriptografi yang menggunakan dua kunci: kunci publik (public key) dan kunci pribadi (private key).

Proses kriptografi algoritma RSA terdiri dari 3 tahapan yaitu : 1. Pembangkitan Kunci

a. Tentukan nilai p dan q sebagai dua bilangan prima sembarang.

Keterangan:

(8)

13 p = bilangan prima acak

q = bilangan prima acak

b. Hitung n = p × q (sebaiknya p tidak sama dengan q)...(Rumus 2.4) keterangan:

n = modulus

p = bilangan prima acak q = bilangan prima acak

c. Hitung Ф(N) = (p – 1)(q – 1)...(Rumus 2.5) keterangan :

Ф(N) = euler totient function p = bilangan prima

q = bilangan prima

d. Tentukan kunci publik, yang relatif prima terhadap (gcd (e,Ф(N)) = 1)...(Rumus 2.6) keterangan:

gcd = faktor persekutuan terbesar e = eksponen enkripsi

Ф(N) = euler totient function

e. Cari d, sehingga e*d = 1 mod Ф(N)...(Rumus 2.7) keterangan:

d = eksponen dekripsinya e = eksponen enkripsinya Ф(N) = euler totient function

2. Proses Enkripsi

a. Ambil kunci publik penerima pesan, e, dan modulus N.

b. Nyatakan plainteks M menjadi blok-blok sehingga setiap blok menampilkan nilai di dalam selang [0, n – 1].

c. Tiap blok dienkripsi menjadi blok Ci dengan rumus :

C = Me mod N...(Rumus 2.8) keterangan:

(9)

14 C = cipherteks

M = plainteks asli

e = eksponen enkripsinya N = modulus

3. Proses Dekripsi Setiap blok cipherteks Ci didekripsi kembali menjadi blok dengan rumus M = Cd mod N...(Rumus 2.9) keterangan:

M = plainteks asli C = cipherteks

d = eksponen dekripsinya N = modulus

Setelah memenuhi properti diatas, proses selanjutnya adalah proses enkripsi dan dekripsi, berikut adalah contoh perhitungannya :

Proses enkripsi dengan rumus : C = Me mod N (Rumus 2.8) 1. Menentukan bilangan prima p = 53 dan q = 31

2. Menghitung nilai n = 53 * 31 = 1643

3. Menghitung nilai Ф(n) = (53-1)*(31-1) = 1560 4. Menentukan kunci publik e = (e,1560) = 7

5. Menentukan kunci privat d = (7*d mod 1560 = 1) = 223 6. Plaintext “IT” dirubah ke bilangan desimal 73 84 7. C1 = 737 mod 1643 = 1346

8. C2 = 847 mod 1643 = 1199 hasil dari cipherteks nya adalah 1346,1199 Proses dekripsi dengan rumus M = Cd mod N (Rumus 2.9)

M1 = 1346223 mod 1643 = 73 = desimal dari “I”

M2 = 1199223 mod 1643 = 84 = desimaldari “T”

Hasil dari proses dekripsi tadi dikonversi kedalam bentuk karakter menjadi “IT”

(10)

15

2.6 Kombinasi Algoritma Merkle Hellman Knapsack dengan Algoritma RSA

Penggabungan algoritma Merkle-Hellman Knapsack dengan Algoritma RSA pernah dilakukan oleh penelitian sebelumnya pada tahun 2018. Tujuan utama dari penggabungan kedua algoritma ini adalah memperkuat algoritma Merkle Hellman Knapsack itu sendiri.

Mekanisme dari kombinasi algoritma ini hampir sama dengan algoritma knapsack. Hal yang berbeda terdapat pada dua kali proses pada setiap mekanisme karena pada kombinasi algoritma ini terdapat dua kunci publik dan dua kunci privat.

Kombinasi algoritma merkle hellman knpsack dan algoritma RSA akan dilakukan pada proses pembgangkitan kunci dengan cara membangkitkan dua kunci publik dan dua kunci privat, Kombinasi selanjutnya pada proses enkripsinya yaitu dengan melakukan enkripsi sebanyak 2 kali, dimana proses enkripsi yang pertama menggunakan merkle hellman dan enkripsi yang kedua menggunakan algoritma RSA. Kombinasi selanjutnya pada proses dekripsinya yang dilakukan sebanyak 2 kali, dimana proses dekripsi yang pertama menggunakan algoritma RSA lalu dilanjutkan dengan proses dekripsi dengan merkle hellman knapsack.

2.6.1 Unsur untuk Kombinasi Merkle Hellman Knapsack dengan Algoritma RSA

Ada bebrapa unsur dari penggabungan antara Algoritma Merkle Hellman Knapsack dengan Algoritma RSA yang wajib dipenuhi, antara lain adalah sebagai berikut:

1. Menentukan bilangan superincreasing (s) dimana suatu angka didalamnya harus lebih besar daripada jumlah angka sebelumnya.

2. Plainteks harus dikonversikan kedalam bilangan biner.

3. Memilih sebuah integer (m) yang lebih besar daripada jumlah yang ada di bilangan superincresing.

4. Memilih integer (n) yang harus relatif prima terhadap (m).

5. Membangkitkan kunci publik (p) dengan rumus pi = si ∗ n mod m 6. Memilih p dan q adalah bilangan prima

(11)

16

7. Menghitung nilai n, dengan rumus n = p × q (sebaiknya p tidak sama dengan q).

8. Menghitung nilai Ф(n), dengan dengan rumus Ф(n) = (p-1) (q-1).

9. Mencari kunci publik (e), seperti pada rumus (e, ϕ (n)=1)

10. Mencari kunci privat (d), seperti pada rumus d * e mod (ϕ (n)) = 1

Setelah menentukan beberapa unsur diatas, proses selanjutnya adalah melakukan proses enkripsi dan dekripsi:

1. Bilangan superincreasing yang dipilih adalah s = 3, 5, 15, 25, 54, 110, 225 2. Plainteks “IT” dirubah menjadi biner b = 1001001 1010100

3. Memilih bilangan m = 439.

4. Memilih bilangan n = 10 yang relativ prima terhadap m.

5. Membangkitkan kunci publik P1 = 3 * 10 mod 439 = 30 P2 = 5 * 10 mod 439 = 50 P3 = 15 * 10 mod 439 = 150 P4 = 25 * 10 mod 439 = 250 P5 = 54 * 10 mod 439 = 101 P6 = 110 * 10 mod 439 = 222 P7 = 225 * 10 mod 439 = 55

Jadi kunci publik p = 30, 50, 150, 250, 101, 222, 55

Proses enkripsinya, bilangan biner berkoresponden terhadap kunci publik. Elemen didalam bilangan biner maupun kunci publik harus dikalikan sesuai dengan urutannya kemudian di jumlahkan. Rumus enkripsi yang digunakan adalah seperti pada rumus algoritma

Merkle Hellman Knapsack.

c = b1∗ p1 + b2∗ p2+. . . +bn∗ pn Proses enkripsi

cI = (1*30) + (0*50) + (0*150) + (1*250) + (0*101) + (0*222) + (1*55) = 335

(12)

17

cT = (1*30) + (0*50) + (1*150) + (0*250) + (1*101) + (0*222) + (0*55) = 281 Jadi, chiperteks dari “IT” adalah 335 281

Selanjutnya menentukan indikator dari algoritma RSA 1. Menentukan nilai p = 53 q = 31

2. Menentukan nilai n = 53 * 31 = 1643

3. Menentukan nilai Ф(n) = (53-1)*(31-1) = 1560 4. Menentukan nilai e = (e,1560) = 7

5. Menentukan nilai d = (7*d mod 1560 = 1) = 223

Hasil dari enkripsi algoritma Merkle-Hellman Knapsack tadi dienkripsi lagi menggunakan rumus enkripsi dari algoritma RSA, dengan rumus C = Me mod N

C1 = 3357 mod 1643 = 1172 C2 = 2817 mod 1643 = 314

Jadi hasil enkripsi dari penggabungan algoritma Merkle Hellman Knapsack dan algoritma RSA adalah 1172 314.

Pada proses dekripsi penggabungan dari kedua algoritma tersebut, ada dua kali proses dekripsi. Proses dekripsi yang pertama adalah menggunakan rumus dekripsi dari algoritma RSA menggunakan rumus M = Cd mod N . Sedangkan untuk proses dekripsi yang kedua adalah menggunakan rumus dekripsi dari Algoritma Merkle Hellman Knapsack seperti pada poin diatas :

m1 = 1172223 mod 1643 = 335 m2 = 314223 mod 1643 = 281 didapatkan 335 281

Kemudian, nilai diatas didekripsi lagi menggukan rumus Algoritma Merkle Hellman Knapsack yaitu c ∗ n−1 mod m :

cI = 335 * 44 mod 439 = 253

= 253 – 225 = 28

(13)

18

= 28 – 25 = 3

= 3 – 3 = 0 = 1001001 cT = 281 * 44 mod 439 = 72

= 72 – 54 = 18

= 18 – 15 = 3

= 3 – 3 = 0 = 1010100

Kemudian hasil biner 1001001 1010100 tersebut dikonversikan ke dalam bentuk karakter menjadi “IT”

2.7. Skenario Pengujian Algoritma dan Pengujian Keamanan 1. Pengujian Algoritma

Skenario pengujian yang dilakukan pada penelitian ini mengacu pada penelitian yang telah dilakukan sebelumnya oleh Faisal Helmi tahun 2018 yang menggunakan Algoritma Merkle Hellman Knapsack yang sama. Parameter apa saja yang digunakan meliputi bit kunci (256,512,1024), lalu panjang karakter yang digunakan pada rentang 100-400 kata. Pengujian selanjutnya yaitu membuktikan bagaimana rumus-rumus yang telah ditentukan pada bab 2 akan diterapkan pada source code dilakukan dengan cara memperlihatkan screenshot program lalu menjelaskan dengan kalimat variabel apa saja yang menggantikan rumus-rumus tersebut kedalam baasa pemrograman. Penelitian ini menggunakan panjang bit kunci yang sama yaitu (256,512,1024). Penelitian ini mengambil parameter panjang karakter (100,150,200) kata yang dimana pada penelitian sebelumnya 100-400 kata.

2. Pengujian Keamanan dengan Avalanche Effect

Skenario pengujian keamanan yang dilakukan pada penelitian ini mengacu pada penelitian yang telah dilakukan sebelumnya oleh Faisal Helmi tahun 2018 yang menggunakan Algoritma Merkle Hellman Knapsack dan dilakukan pengujian menggunakan metode Avalaneche effect. Pengujian ini akan dilakukan pengujian avalanche effect (perubahan plainteks) pada proses enkripsi untuk mengetahui perubahan bit-bit pada plainteks sehingga dapat diperoleh hasil persentase yang menentukan baik atau tidaknya algoritma Merkle Hellman Knapsack dan algoritma kombinasi Merkle Hellman dan algoritma RSA yang

(14)

19

digunakan. Parameter yang digunakan adalah dua buah plainteks yang dibedakan salah satu karakternya, lalu ada cipherteks yang dihasilkan dari kedua plainteks setelah di enkripsi, lalu ada persentase hasil dari avalanche effect dengan satuan persen(%).

Referensi

Dokumen terkait

FRINNA SHINTA 500644607 Magister Manajemen MM PENGARUH PELATIHAN, INTERAK.SI SOSIAL, DAN MOTIVASI KERJA TERHADAP KINERJA PENYULUH MELALUI KOMPETENSI Studi pada Kantor

This study have limitations in studying this field, where the measurements to the media exposure variable using dummy variable where a value of 1 for companies that

pergi dari rumah dengan semangkuk bubur gandum.. Dengan keteladanan mulia Rasulullah itu menunjukkan Islam tidak melarang orang mengemis. Dan sekaligus yang mampu seharusnya

Dan hasil penelitian didapatkan kesimpulan bahwa opini pendengar terhadap lagu “Udin Sedunia” dari Sualudin mendapatkan respon netral karena masyarakat sudah menganggap biasa

Selanjutnya apabila kita berbi- cara dengan berbahasa dengan tumpuan pada la- wan tutur misalnya agar orang yang kita ajak berbicara tidak tersinggung agar lawan bicara

Tujuan penelitian ini adalah membandingkan pemeriksaan dokter gigi dan bukan dokter gigi dan untuk mendapatkan ketepatan pemeriksaan agar hasil survei kesehatan

Karena proses pendataan yang dipakai di PT.Kharisma Prima Abadi sela ma ini masih menggunakan proses manual dan menggunakan Microsoft Office Excel, maka penulis ingin membuat

a. Program kunjungan ini, kami menggunakan sistem full public transportation, artinya penggunaan transportasi lokal di area Jepang menggunakan transportasi umum, seperti