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
Untuk mencegah serangan replay replay attacks, pengguna dapat melakukan perubahan data sewaktu-waktu. Sistem akan mencabut atribut pengguna
yang tidak memiliki kebijakan akses yang sah, dan sistem akan meghapus pengguna yang bersangkutan sehingga tidak akan diijinkan untuk masuk ke sistem lagi.
Ada enam langkah yang dilakukan dalam algoritma ABS Priyanka Palekaru, Abhijeet Bharate, dan Nisar Anjum 2014, diantaranya : System
Initialization, User Registration, KDC Setup, Atributte Generation, Sign, dan
Verify . Berikut adalah detai proses dalam algoritma ABS :
2.8.1 System Initialization
Pilih sebuah prime q, dan kelompok G
1
and G
2
, berdasarkan q. Kita mendefinisikan pemetaan
ě : G
1
x G
1
G
2
. Biarkan g
1
, g
2
menjadi generator dari G
1
dan h
j
menjadi generator dari G
2
, untu j ϵ [t
max
], untuk kewenangan t
max
. Biarkan H menjadi sebuah fungsi. Biarkan A
= h
a
, dimana a ϵ ʑ
q
dipilih secara acak.
Tsig, TV er berarti TSig adalah private key untuk mendeskripsikan pesan dan TV adalah public key yang digunakan untuk melakukan versifikasi. Private key untuk
trustee adalah TSK = a
0,
Tsig public key adalah TPK = G
1
, G
2
, H, g
1,
A , h
0,
h
1,
..., h
tmax,
g
2
, TV er.
2.8.2 User Registration
Untuk user dengan identitas U
u
KDC menarik secara acak K
base
ϵ G. Let K =
K base
1a0
. Berikut adalah keluaran dari token-nya ᵧ = u, K
base
, K , ρ,
dimana penandatanganan pada u||K
base
menggunakan kunci penandatanganan TSig.
2.8.3 KDC Setup
Pilih a, b ϵ ʑ
q
acak dan hitung: A
ij
= h
a j
, B
ij
= h
b j
, for A
i
ϵ AA, j ϵ [t
max
]. Private key
dari ith KDC adalah ASK[i] = a,b dan public key APK[i] = A
ij
, B
ij
|j ϵ [t
max
]. 2.8.4
Atributte Generation
Algoritma verrifikasi Token dan verifikasi penandatanganan terkandung dalam
ᵧ menggunakan signature verification key TV er di TPK. Algoritma ini mengekstrak K
base
dari ᵧ menggunakan a,b dari ASK[i] dan menghitung K
x
= K
base 1a,bx
, x ϵ J[i,u]. kunci K
x
dapat dicek untuk konsistensi penggunaan algoritma ABS
.KeyCheckTPK, APK[i], ᵧ, K
x
, dimana checks eKx, AijB
x
ij = eKbase, hj, untuk semua x
ϵ J[i,u] and j ϵ [t
max
].
2.8.5 Sign
Algoritma ABS.Sign
TPK, {APK[i] : i ϵ AT[u]},
ᵧ, {K
x
: x ϵ J
u
}, MSG, У,
Memiliki masukan public key dari trustee, private key untuk penandatanganan, pesan yang akan ditandatangani dan klaim kebijakan
У. Klaim kebijakan pertama diubah menjadi program jangka M
ϵ ʑ
lxt q
, dengan baris berlebel dengan atribut. M
x
menunjukan baris x dari M. π
menunjukan pemetaan dari baris atriut. So,
π x berasal dari pemetaan M
x
menjadi atribut x. A vektor ѵ dihitung untuk
memenuhi {x : x ϵ J[i,u]}. Hitung µ = HMSG||Y. Pilih r
ϵ
ʑ
q
dan r
i ϵ
ʑ
q
, i ϵ J
u
, dan hitung:
Y = K
r0 base
, Si = K
vi
i
r0
.
g
2
g
1 µ
ri
Á ϵ J
u,
W = K
r0
, P
j
= Hi ϵ AT[u] A
ij
B
π ij
i Mijri
Áj ϵ [t].
Perhitungan untuk penandatanganan adalah σ = Y, W, S
1
, S
2
,...,S
t
, P
1
, P
2
,...,P
t
.
2.8.6 Verify