System Initialization Encryption by Sender Descryption by Receiver

Distribution by KDC, Encryption by Sender, dan Descryption by Receiver . Berikut adalah detail prosesnya :

2.7.1 System Initialization

Pilih sebuah prime q, bangkitkan g dari G , kelompokan G dan G T dari permintaan q, petakan sebuah e: G x G G T , dan gabungan fungsi H: {0,1} G dimana pemetaan itu mengidentifikasi user untuk G . Fungsi yang digunakan disini adalah SHA-1. Setiap KDC A j ϵ A memiliki sebuah set atribut L j . Atribut menguraikan L i ∩ L j = ø for i ≠ j. Setiap KDC juga memilih dua exponen acak α i , y i ϵ ʑ q . Private Key dari KDC A j adalah SK[j] = { α i, y i , i ϵ L j }. Public Key dari KDC A j diterbitkan PK[j] = {eg,g αi, g yi, i ϵ L j }. 2.7.2 Key Generation and Distribution by KDC User U u menerima sebuat set atribut I[j,u] dari KDC A j , dan sesuai dengan Private Key sk i,u untuk setiap i ϵ I[j,u] sk i,u = g αi Hu yi , dimana αi , yi ϵ SK[j]. Perhatikan bahwa semua key yang dikirimkan ke user aman menggunakan Public Key dari user, sehingga hanya user tersebut yang bisa melakukan deskripsi menggunakan Private Key.

2.7.3 Encryption by Sender

Fungsi enkripsinya adalah ABE.EncryptMSG,X. Pengirim memutuskan tentang access tree X. Penerima mengenkripsi pesan MSG sebagai berikut: 1. Pilih sebarangan sumber s ϵ ʑ q sebuah random vektor ⱴ ϵ ʑ h q , dengan s sebagai masukan pertama; h adalah jumlah leaves di access tree sama dengan jumlah baris pada koresponden matrik matrix R. 2. Hitung λ x = R x . ⱴ, dimana R x adalah baris dari R. 3. Pilih sebuah random vector w ϵ ʑ h q dengan 0 sebagai masukan pertama. 4. Hitung w x = R x . w. 5. Untuk setiap bari R x dari R, pilih sembarang ρ x ϵ ʑ q . 6. Hitung parameter berikut: C = MSGeg,g s , C1,x = eg,g λx eg,g απxρx , Áχ; C2,x = g ρ Áχ; C3,x = g yπxρx g wx Áχ, dimana πx adalah pemetaan dari R x untuk atribut i yang terletak pada koresponden leaves dari access tree. 7. Untuk ciphertext C dikirim oleh pengirim dan juga termasuk access tree melalui matrik R: C = ‹R, π, C , {C 1,x , C 2,x , C 3,x , Áχ }›

2.7.4 Descryption by Receiver

Fungsi deskripsi adalah ABE.DecryptC,{sk i,u }. Penerima U u mengambil sebagai masukan ciphertext C, private key ,{sk i,u }, kelompok G , dan pesan keluaran msg. Fungsi menerima akses matrik R dan pemetaan π dari C. Fungsi kemudian mengeksekusi langkah-langkah sebagai berikut: 1. U u menghitung kebutuhan sebagai input dari set atribut {πx : x ϵ X} ∩ I u yang umum untuknya dan matrik akses. X adalah set baris dari R. 2. Untuk setiap atribut ini, cek jika ada Ẋ subset dari R, sehingga vector 1,0,...,0 merupakan kombinasi mereka. Jika tidak, deskripsi mustahil dilakukan. Jika ya, akan menghitung konstanta c x ϵ ʑ q , seperti ∑ x ϵẊ c x R x = 1,0,...,0. 3. Hasil deskripsinya sebagai berikut: a. Untuk setiap x ϵ Ẋ, decx = � χe H u ,C ,x � ��π x ,u,C ,x . b. U u hitung MSG = C II x ϵ Ẋdecx.

2.8 Atributt Based Signature ABS