n (PA); 11 Supervising (PA, supervising tcsatt^ 12 If (DAS false ) do !3 substitute (OuisoiircmgSei^veri ^ OMmmcM^ervefj) 14 check (DAS);
[0017] 15 end if 16 end whife )1 end if ? 8 en d i f 19 end while
[0018] 該算法I的具體釋義如下:
[0019] 第1行和第2行為輸入和輸出;
[0020] 第3行利用Xpath對(duì)BPEL流程進(jìn)行解析以獲取標(biāo)記Invoke ;
[0021] 第4行至第14行,首先,獲取作用域scope在服務(wù)與服務(wù)之間的標(biāo)記Invoke,即: scope = Service1。然后,判斷此外包服務(wù)是否為加密服務(wù),如果為加密服務(wù),說明此后的 隱私信息為密文,直到解密前無須進(jìn)行隱私監(jiān)督;假若此服務(wù)為非加密服務(wù),則檢測(cè)外包服 務(wù)是否擁有服務(wù)組合者或者其它官方機(jī)構(gòu)的授權(quán);如果擁有此授權(quán),則提供請(qǐng)求的隱私屬 性,并同時(shí)啟用監(jiān)控算法對(duì)外包服務(wù)的執(zhí)行過程時(shí)行監(jiān)控;否則,利用候選服務(wù)替換此外包 服務(wù),直到滿足委托授權(quán)聲明為止。
[0022] 本發(fā)明所述對(duì)隱私協(xié)議的匹配,包括如下具體步驟:
[0023] -是進(jìn)行隱私項(xiàng)的匹配,匹配算法分別對(duì)用戶的需求文檔和服務(wù)提供者所提供的 服務(wù)輸入和前置條件進(jìn)行分析,提取用戶的隱私偏好PR和服務(wù)的隱私屬性集PAC,對(duì)其進(jìn) 行沖突檢測(cè),發(fā)現(xiàn)不能滿足用戶隱私需求的隱私屬性,并調(diào)用映射層中的隱私屬性之間的 語義關(guān)系,對(duì)其進(jìn)行替換,找到滿足用戶隱私需求的隱私屬性序列;
[0024] 二是進(jìn)行隱私披露斷言的匹配,在隱私披露斷言PDA (Privacy Disclosure Assertion)的匹配階段,將服務(wù)的隱私屬性所對(duì)應(yīng)的隱私披露斷言與用戶的隱私需求 所對(duì)應(yīng)的隱私暴露斷言進(jìn)行匹配,并將此過程進(jìn)行迭代,找到滿足用戶與服務(wù)提供者雙 方的所有隱私屬性所對(duì)應(yīng)的隱私披露斷言集,即,隱私披露策略(Privacy Disclosure Strategy);并將此隱私披露策略寫入 SLA (Services Level Agreement)中;
[0025] 三是在進(jìn)行云服務(wù)組合時(shí),對(duì)云服務(wù)組合流程進(jìn)行監(jiān)督的過程中,對(duì)具體的隱私 項(xiàng)所對(duì)應(yīng)的隱私策略進(jìn)行匹配。
[0026] 本發(fā)明對(duì)隱私協(xié)議的匹配中設(shè)計(jì)了隱私策略的匹配算法,具體內(nèi)容如下:
[0027] 隱私披露/暴露斷言的語義匹配滿足以下條件:
[0028] 第一,用戶的隱私屬性類的實(shí)例所對(duì)應(yīng)的隱私披露斷言與服 務(wù)提供者的隱私屬性類的實(shí)例所對(duì)應(yīng)的隱私暴露斷言之間等價(jià),即:
[0029] 第二,用戶的隱私屬性類的實(shí)例所對(duì)應(yīng)的隱私暴露斷言包含服務(wù)提供者隱私屬性 類的實(shí)例所對(duì)應(yīng)的隱私披露斷言,BP :
[0030] 算法 2 (語義匹配算法):SM ((PDA-S1, PDA-U1),PDA)
[0031] I Input : {PDA-Sj , {PDA-Uj 2 Output:{PDA} 3 Init Stack(PDA-U1); 4 Init Stack(PDA-Si); 5 Init Queue(SLA); 6 Push (Stack (PDA-U),{PDA-Un,PDA-Un !,PDA-Un 2, ··· PDA-U1, ··· PDA-U1I); 7 Push (Stack (PDA-S),{PDA-Sn,PDA-Sn !,PDA-Sn 2,…PDA-S1,…PDA-S1I); 8 while {Stack (PDA-Lr) I= 0 a Stack(PDA-S)I= 0 ) do 9 Pop (Stack (PDA-U),PDA-U1); 10 Pop (Stack (PDA-S),PDA-S1); 11 Match (PDA-Si [DAS], PDA-Ui [trustDegree]; 12 if (PDA-U1= PDA-S ,) do 13 EnQueue (Queue (SLA), PDA-U1V PDA-S ,); 14 Else if( PDA - Uj \zPDA - S1 v Maich{ D AS,trust Degree) - lure ) 15 EnQueue(Queue(SLA),PDA-Si); 16 Else 17 BroihaiQiopi) h-> PDA-S1): 18 Push (Stack (PDA-S),PDA-Sk); 19 Push (Stack (PDA-U),PDA-U1); 20 end if 21 end if 22 end if 23 end while
[0032] 假設(shè)存在 PDA-SjP Brother (PDA-S J 滿足:
[0034] 該算法2的具體釋義如下:
[0035] 第1行和第2行分別是輸入和輸出,輸入為預(yù)協(xié)商所得到的最小隱私屬性集所對(duì) 應(yīng)的服務(wù)雙方的隱私披露/暴露斷言序列;輸出為服務(wù)雙方協(xié)商后,即交換隱私斷言后所 得到的隱私披露策略。
[0036] 第3行到第5行分別為初始化隱私暴露斷言PDA-UJ^,初始化隱私披露斷言 PDA-Si棧和初始化 SLA (Service Level Agreement)隊(duì)列;
[0037] 第6行和第7行分別將隱私暴露斷言序列
[0038] {PDA-Un,PDA-Un η PDA-Un 2,…PDA-U1,…PDA-UJ 和隱私披露斷言序列
[0039] {PDA-Sn,PDA-Sn !,PDA-Sn 2,…PDA-S1,…PDA-SJ 逆向入棧;
[0040] 第8行到最后一行為本算法的一個(gè)while循環(huán),當(dāng)兩個(gè)棧都不為空時(shí),分別取出 兩棧的棧頂元素 PDA-UjP PDA-S i,并對(duì)取出的隱私披露斷言的委托授權(quán)聲明和隱私暴露 斷言的信任度進(jìn)行匹配。假如隱私暴露斷言與隱私披露斷言等價(jià),則將兩者中的任何一 個(gè)(PDA-U 1V PDA-S J進(jìn)SLA隊(duì)列;假如隱私披露斷言包含隱私暴露斷言或者委托授權(quán)聲 明與信任度相匹配,此時(shí),將隱私披露斷言?〇441進(jìn)SLA隊(duì)列;假如不滿足上述兩類條件, 即滿足夂HG]時(shí),得到本體樹中此隱私披露斷言所對(duì)應(yīng)兄弟的隱私披露斷言
即:PDA-Sk,然后將其壓入棧Stack(PDA-S)中,同時(shí)將PDA-U 1S 入棧Stack (PDA-U)中,進(jìn)行循環(huán),直到找到滿足用戶需求的披露斷言為止。
[0041] 隱私披露/暴露斷言的交換發(fā)生在用戶與服務(wù)組合者之間,此過程也是隱私披露 /暴露斷言的語義匹配過程。首先,服務(wù)組合者所對(duì)應(yīng)的服務(wù)端根據(jù)預(yù)協(xié)商所得到的隱私 斷言的交換序列,向用戶端發(fā)送隱私披露斷言PDA-S 1,用戶端收到以后,啟動(dòng)描述邏輯推理 機(jī)Reasoner (PDA-S1, PDA-U1)對(duì)隱私披露斷言PDA-SjP隱私暴露斷言PDA-U通行推理,其 推理結(jié)果有三種情況:
[0042] (I)PDA-U1= PDA-S i,由于用戶與服務(wù)提供者之間的隱私披露斷言等價(jià),用戶端向 服務(wù)端發(fā)送協(xié)商成功消息,并將PDA-U1S PDA-S #斤對(duì)應(yīng)的隱私屬性放入SLA中。
[0043] ⑵戶似-匚P/上4 - S, V ..丨/池甸似以/.".燈Ζλ貨 PDA-U1包含于服務(wù)提供者的隱私披露斷言PDA-S i,或者服務(wù)提供者的委托授權(quán)聲明與用戶 的信任度相匹配。此時(shí),用戶端向服務(wù)端發(fā)送協(xié)商成功消息,將PDA-S1作為最終的隱私披 露斷言,并將其所對(duì)應(yīng)的隱私屬性放入SLA中。
[0044] (3) /m,] ,由于用戶的隱私暴露斷言PDA-U^含服務(wù)提供者的隱私 披露斷言PDA-S1,用戶端向服務(wù)端發(fā)送協(xié)商失敗消息,此時(shí),服務(wù)端利用本