Monday, February 25, 2019

Pembangkit Bilangan Random Algoritma LCG

Pembangkitan bilangan acak (pseudonoise) dilakukan sesuai dengan kunci atau password yang dimasukkan menggunakan algoritma LCG. Pembangkitan bilangan acak ini dilakukan untunk mendapatkan pseudonoise code yang akan digunakan untuk memodulasi segemen pesan. Untuk memulai bilangan acak ini dibutuhkan sebuah bilangan bulat X1 yang didapat dari kata kunci

Rumus Algoritma LCG :
Xn = (a*Xn-1 + c) mod m

Dimana :
            Xn                    = Bilangan acak ke-n
            Xn-1                  = Bilangan acak sebelumnya
            a                      = Faktor Pengali
            c                      = Increment
            m                     = modulus pembagi


Misalkan kunci yang dimasukkan adalah “kunci”
k          = 107   =  0 1 1 0 1 0 1 1
            u          = 117   =  0 1 1 1 0 1 0 1
                                    =  0 0 0 1 1 1 1 0
            n          = 110   =  0 1 1 0 1 1 1 0
                                    =  0 1 1 1 0 0 0 0
            c          = 99     =  0 1 1 0 0 0 1 1
                                    =  0 0 0 1 0 0 1 1
            i           = 105   =  0 1 1 0 1 0 0 1
                                    =  0 1 1 1 1 0 1 0                     = 122 (decimal)

Setelah mendapatkan nilai dari kata kunci, (122), nilai tersebut akan digunakan sebagai nilai awal dari pada proses pengacakan (X0).

Xn = (a*Xn-1 + c) mod m

X0        = 122
a          = 20
c          = 9
m         = 100 
Angka c, a, dan m dipilih secara acak (terserah). Namun biasanya mengikuti syarat sebagai berikut


Sehingga,
             X1 = (20 * 122 + 9 ) mod 100            =  49
             X2 = (20 * 49 + 9) mod 100               =  89
             X3 = (20 * 89 + 9) mod 100               =  89
             X4 = (20 * 89 + 9) mod 100               =  89
             X5 = (20 * 89 + 9) mod 100               =  89
             ….. Dst
Sebagai contoh dilakukan 5 kali penyebaran dan hasilnya adalah “49, 89, 89, 89, 89”. Kemudian diubah ke dalam bentuk biner menjadi “0 0 1 1 0 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 0 1”. Deretan biner inilah yang disebut dengan pseudonoise code.


Artikel Yang Berkaitan :
Metode Spread Spectrum
Pembangkit Bilangan Random Algoritma LCG
Modulasi dengan Fungsi XOR

Penyisipan Hasil Modulasi dengan LSB

No comments:

Post a Comment