hare表示用戶(hù)分享某個(gè)內(nèi)容的操作;
[0067] function Follow表示兩個(gè)用戶(hù)互相添加好友的操作;
[0068] function Notfollow表示兩個(gè)用戶(hù)互相刪除好友的操作;
[0069] function Register表示用戶(hù)注冊(cè)的操作;
[0070] function Create_Content表示用戶(hù)生成一個(gè)內(nèi)容的操作;
[0071] function Page_field表示用戶(hù)創(chuàng)建自己的個(gè)人主頁(yè)的操作;
[0072] function Show_timeline表示顯示用戶(hù)的個(gè)人時(shí)間軸的操作。
[0073] 需要說(shuō)明的是,框架時(shí)序邏輯程序設(shè)計(jì)語(yǔ)言MSVL是PTL的一個(gè)可執(zhí)行子集,對(duì)比 Tempura,它增加了投影操作符,框架操作符,等待操作符,過(guò)去時(shí)序操作符和無(wú)窮模型,并 且包含了非確定的選擇語(yǔ)句。從語(yǔ)法上講,一個(gè)MSVL程序可以分為兩部分:性質(zhì)描述部分 和系統(tǒng)描述部分。
[0074] MSVL程序涉及的主要語(yǔ)句:
[0075] (1)空語(yǔ)句:empty ;
[0076] (2)基本賦值語(yǔ)句:x < ==e,X :: e def skip λ Ox <== e ·
[0077] (3) next 語(yǔ)句:0x ;
[0078] (4) always 語(yǔ)句:□ x ;
[0079] (5)投影語(yǔ)句:(S1, · · ·,sjprjs ;
[0080] (6)順序語(yǔ)句?。╯^sJg^SrSjprj empty ;
[0081] (7)并行語(yǔ)句 Jsl ||s2)座£ Sl λ (s2; true) vs, λ (s,; true)
[0082] (8)條件語(yǔ)句:if s丨 then s, else s? def (b ^ s?) λ (^b ^s.);
[0083] (9) whiIe 語(yǔ)句:while b do s def (b λ s) a □ (empty -,b);
[0084] (10)狀態(tài)框架語(yǔ)句:;
[0085] (11)區(qū)間框架語(yǔ)句:framC(X) def □ (more 4 O Ibf(X));
[0086] (12)Await 語(yǔ)句:await(b) def (framc(x,) a ... λ framc(x,)) λ □ (empty b),其 中,X1,. . .,xh是出現(xiàn)在b中的變量;
[0087] MSVL的基本數(shù)據(jù)結(jié)構(gòu)有:
[0088] (1)整形:int
[0089] ⑵浮點(diǎn)型:float
[0090] (3)字符型:char
[0091] (4)字符串型:string
[0092] (δ)基本數(shù)據(jù)類(lèi)型指針:int*/char*/float*/string*
[0093] (6)結(jié)構(gòu)體:struct
[0094] (7)結(jié)構(gòu)體指針:struct*。
[0095] 第二步,確定所述需要驗(yàn)證的社交網(wǎng)絡(luò)系統(tǒng)中的隱私策略性質(zhì),并采用PPTL公式 描述這些性質(zhì)。PPTL公式是根據(jù)具體要驗(yàn)證的隱私策略性質(zhì)來(lái)確定的,首先根據(jù)需要驗(yàn)證 的性質(zhì),定義(define)命題,然后根據(jù)命題的邏輯關(guān)系,得出相應(yīng)合理的PPTL公式。
[0096] 需要說(shuō)明的是,命題投影時(shí)序邏輯PPTL是投影時(shí)序邏輯PTL的命題子集,它的語(yǔ) 義與PTL相似。PTL是一階的,不可判定,而PPTL在PTL中加入命題,并且去除了變量、量 詞和謂詞等一階成分,使得PPTL可判定,并且PPTL可以表達(dá)所有的正則表達(dá)式,用它作為 MSVL程序的性質(zhì)描述語(yǔ)言,能描述更多的性質(zhì),從而確保程序滿(mǎn)足系統(tǒng)性質(zhì)描述和滿(mǎn)足性 判斷的需求,這為研宄框架投影時(shí)序邏輯程序的模型檢測(cè)提供了理論基礎(chǔ)。
[0097] 第三步,將建模的MSVL程序和描述隱私策略性質(zhì)的PPTL公式統(tǒng)一在MSV解釋器 中仿真、模擬和驗(yàn)證,驗(yàn)證所述需要驗(yàn)證的社交網(wǎng)絡(luò)系統(tǒng)的隱私策略性質(zhì)是否正確。
[0098] 需要說(shuō)明的是,用來(lái)描述系統(tǒng)模型的MSVL程序和用來(lái)描述模型性質(zhì)的PPTL公式 都可以轉(zhuǎn)換成它們的范式形式。這兩者的范式在形式上很相似的,都是包含兩部分,一部分 是在當(dāng)前狀態(tài)成立,另一部分是在下一狀態(tài)成立。這樣,由于模型P和性質(zhì)Φ都是PTL公 式,所以可以在同一個(gè)MSV解釋器中執(zhí)行,并得出結(jié)果。
[0099] MSV解釋器是用來(lái)執(zhí)行MSVL語(yǔ)言,具體執(zhí)行流程如圖3所示,其中可以分為三個(gè)模 塊,分別為:
[0100] 仿真:模擬執(zhí)行,找到一個(gè)模型 [0101] 建模:找到所有模型
[0102] 驗(yàn)證:基于PPTL的性質(zhì)驗(yàn)證。
[0103] 所述MSV解釋器的工作原理如圖4所示,每一個(gè)MSVL程序都可以化簡(jiǎn)為一個(gè)等價(jià) 的范式形式Present Λ Remains。其中Present在當(dāng)前狀態(tài)被執(zhí)行,可包含變量的賦值,輸 出true,false或empty,若包含empty表明程序在當(dāng)前狀態(tài)結(jié)束,否則需要繼續(xù)執(zhí)行;而 Remains是將來(lái)需要執(zhí)行的程序,執(zhí)行的方法是將Remains改寫(xiě)成0 Next,在當(dāng)前狀態(tài)執(zhí)行 Remains相當(dāng)于在下一狀態(tài)執(zhí)行Next,執(zhí)行Next還是將其轉(zhuǎn)化為Present Λ Remains的形 式,MSVL程序就是這樣遞歸執(zhí)行的。
[0104] 現(xiàn)以著名的社交網(wǎng)絡(luò)系統(tǒng)Facebook作為實(shí)施例社交網(wǎng)絡(luò)系統(tǒng),以對(duì)本發(fā)明作進(jìn) 一步的說(shuō)明。Facebook的核心元素是Timeline(時(shí)間軸)和Friendship(朋友關(guān)系)。 Page_field表示用戶(hù)的個(gè)人主頁(yè),其中主要包括了個(gè)人信息,好友列表、喜歡的事物和時(shí)間 軸等內(nèi)容。
[0105] 以下通過(guò)構(gòu)建小型系統(tǒng)來(lái)仿真、建模并且驗(yàn)證Facebook的隱私策略。
[0106] 如圖5所示,該系統(tǒng)中,有四個(gè)用戶(hù)(初始化三個(gè)用戶(hù)Up UjPU3,注冊(cè)一個(gè)用戶(hù) U4,五個(gè)內(nèi)容(初始化四個(gè)內(nèi)容C1X 2XjP C4,用戶(hù)生成一個(gè)內(nèi)容C5),四個(gè)用戶(hù)分別有各自 的個(gè)人主頁(yè),包含個(gè)人信息和上傳發(fā)布的內(nèi)容,其中仏和U 2、%、^均是朋友關(guān)系,U 3和U 4也 是朋友關(guān)系,upload表示用戶(hù)上傳發(fā)布內(nèi)容到系統(tǒng)中,view表示擁有好友關(guān)系的兩個(gè)用戶(hù) 可以互相查看上傳發(fā)布的內(nèi)容,share表示分享好友上傳發(fā)布的內(nèi)容,并可以在自己的個(gè)人 主頁(yè)時(shí)間軸里顯示查看得到。
[0107] 建模實(shí)現(xiàn)的主要代碼如下:
[0108]
【主權(quán)項(xiàng)】
1. 一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方法,其特征在于,包括如 下步驟: Sl用框架投影時(shí)序邏輯程序設(shè)計(jì)語(yǔ)言(MSVL)對(duì)需要進(jìn)行驗(yàn)證的社交網(wǎng)絡(luò)系統(tǒng)進(jìn)行建 模,其中用結(jié)構(gòu)體數(shù)據(jù)類(lèi)型描述系統(tǒng)中的用戶(hù)、用戶(hù)發(fā)布的內(nèi)容和用戶(hù)個(gè)人主頁(yè),并采用鏈 表結(jié)構(gòu)表示用戶(hù)的好友列表和用戶(hù)個(gè)人主頁(yè)里的時(shí)間軸;另外,在建模中用函數(shù)表示用戶(hù) 對(duì)內(nèi)容的基本操作、用戶(hù)之間的基本操作以及用戶(hù)自身的操作; S2確定所述需要驗(yàn)證的社交網(wǎng)絡(luò)系統(tǒng)中的隱私策略性質(zhì),并采用命題投影時(shí)序邏輯 (PPTL)公式描述這些性質(zhì); S3將建模的MSVL程序和描述隱私策略性質(zhì)的PPTL公式統(tǒng)一在MSV解釋器中仿真、模 擬和驗(yàn)證,驗(yàn)證所述需要驗(yàn)證的社交網(wǎng)絡(luò)系統(tǒng)的隱私策略性質(zhì)是否正確。
2. 根據(jù)權(quán)利要求1所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證 方法,其特征在于,步驟Sl中,用結(jié)構(gòu)體數(shù)據(jù)類(lèi)型來(lái)描述系統(tǒng)中的用戶(hù)、用戶(hù)發(fā)布的內(nèi)容和 用戶(hù)個(gè)人主頁(yè),并采用鏈表結(jié)構(gòu)表示用戶(hù)的好友列表和用戶(hù)個(gè)人主頁(yè)里的時(shí)間軸,具體如 下: 系統(tǒng)中的用戶(hù)用結(jié)構(gòu)體structUser表示; 系統(tǒng)中用戶(hù)發(fā)布的內(nèi)容用結(jié)構(gòu)體structContnet表示; 系統(tǒng)中用戶(hù)的個(gè)人主頁(yè)用結(jié)構(gòu)體structUserPage表示; 系統(tǒng)中用戶(hù)的好友列表用結(jié)構(gòu)體structFri表示; 系統(tǒng)中用戶(hù)個(gè)人主頁(yè)里的時(shí)間軸用結(jié)構(gòu)體structTimeline表示。
3. 根據(jù)權(quán)利要求1所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方 法,其特征在于,所述步驟Sl中,用戶(hù)對(duì)內(nèi)容的基本操作主要包括內(nèi)容的上傳發(fā)布、刪除、 查看和分享。
4. 根據(jù)權(quán)利要求3所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方 法,其特征在于,步驟Sl中用函數(shù)表示用戶(hù)對(duì)內(nèi)容的基本操作具體如下: functionUpload表示用戶(hù)上傳發(fā)布內(nèi)容的操作;functionDelete表示用戶(hù)刪除已經(jīng)上傳發(fā)布的內(nèi)容的操作; functionView表示用戶(hù)可以查看某個(gè)內(nèi)容的操作; functionShare表示用戶(hù)分享某個(gè)內(nèi)容的操作。
5. 根據(jù)權(quán)利要求1所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方 法,其特征在于,所述步驟Sl中,用戶(hù)之間的基本操作主要包括添加好友和刪除好友。
6. 根據(jù)權(quán)利要求5所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方 法,其特征在于,步驟Sl中用函數(shù)表示用戶(hù)之間的基本操作具體如下: functionFollow表示兩個(gè)用戶(hù)互相添加好友的操作;functionNotfollow表示兩個(gè)用戶(hù)互相刪除好友的操作。
7. 根據(jù)權(quán)利要求1所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方 法,其特征在于,所述步驟Sl中,所述用戶(hù)自身的操作主要包括注冊(cè)、生成內(nèi)容、創(chuàng)建個(gè)人 主頁(yè)和顯示個(gè)人時(shí)間軸。
8. 根據(jù)權(quán)利要求7所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方 法,其特征在于,所述步驟Sl中,用函數(shù)表示用戶(hù)自身的操作具體如下: functionRegister表示用戶(hù)注冊(cè)的操作;functionCreate_Content表示用戶(hù)生成一個(gè)內(nèi)容的操作; functionPage_field表示用戶(hù)創(chuàng)建自己的個(gè)人主頁(yè)的操作; functionShow_timeline表示顯示用戶(hù)的個(gè)人時(shí)間軸的操作。
9. 根據(jù)權(quán)利要求1所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方 法,其特征在于,步驟S3的具體方法為: 在同一個(gè)MSV解釋器中驗(yàn)證社交網(wǎng)絡(luò)系統(tǒng)是否滿(mǎn)足隱私策略性質(zhì):記建模的MSVL程序 為P,記描述隱私策略性質(zhì)的PPTL公式為巾,證明公式p-巾的有效性;如果p-巾有效, 則該需要驗(yàn)證的社交網(wǎng)絡(luò)系統(tǒng)滿(mǎn)足隱性策略的性質(zhì),否則該需要驗(yàn)證的社交網(wǎng)絡(luò)系統(tǒng)就違 背性質(zhì)。
10. 根據(jù)權(quán)利要求1所述的一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方 法,其特征在于,步驟S2中,PPTL公式是根據(jù)具體要驗(yàn)證的隱私策略性質(zhì)來(lái)確定的,首先根 據(jù)需要驗(yàn)證的隱私策略性質(zhì),采用define定義命題,然后根據(jù)命題的邏輯關(guān)系,得出相應(yīng) 的PPTL公式。
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種基于MSVL的社交網(wǎng)絡(luò)系統(tǒng)建模及隱私策略性質(zhì)驗(yàn)證方法,首先采用框架投影時(shí)序邏輯程序設(shè)計(jì)語(yǔ)言MSVL對(duì)社交網(wǎng)絡(luò)系統(tǒng)進(jìn)行建模,同時(shí)采用命題投影時(shí)序邏輯PPTL描述其中的隱私策略性質(zhì),最后通過(guò)MSV解釋器加以驗(yàn)證,得出該社交網(wǎng)絡(luò)的隱私策略性質(zhì)是否正確。本發(fā)明中,系統(tǒng)建模用MSVL程序,隱私策略性質(zhì)用PPTL描述,MSVL是PTL的可執(zhí)行子集,PPTL是PTL的命題子集,兩者同屬PTL框架結(jié)構(gòu),使得兩者可以統(tǒng)一在MSV解釋器中執(zhí)行,相比于其他方法,本發(fā)明不需要調(diào)用另外的工具,也不需要再定義另外的邏輯語(yǔ)言、簡(jiǎn)單方便,而且MSV解釋器可以給出準(zhǔn)確的結(jié)果示意圖。
【IPC分類(lèi)】G06F21-62, G06F17-30, G06Q50-00, G06F9-44
【公開(kāi)號(hào)】CN104731582
【申請(qǐng)?zhí)枴緾N201510079118
【發(fā)明人】王小兵, 孫濤, 段振華, 趙亮, 田聰, 張南
【申請(qǐng)人】西安電子科技大學(xué)
【公開(kāi)日】2015年6月24日
【申請(qǐng)日】2015年2月13日