相佳佳,李曉宇
(鄭州大學(xué) 信息工程學(xué)院,鄭州450000)
近些年隨著網(wǎng)絡(luò)的普及,在線會議在科技時代發(fā)展迅猛,應(yīng)用廣泛,獲得政府和企業(yè)的大力支持.在線會議在提高生產(chǎn)力的同時降低了成本,并提供實時客戶支持.對比基于硬件、軟件的傳統(tǒng)在線會議系統(tǒng),網(wǎng)頁版在線會議使用一種純網(wǎng)頁的會議方式,能夠即時通訊.網(wǎng)頁版在線會議系統(tǒng)基于Web瀏覽器,在幾乎所有的瀏覽器上都能使用,不用安裝額外的客戶端軟件和插件.但與此同時,在線會議需要考慮的網(wǎng)絡(luò)環(huán)境也更加復(fù)雜,過程中會實時傳輸文件、視頻、語音等機密數(shù)據(jù),涉及到通信雙方的身份隱私,因此團隊研發(fā)人員首要考慮的就是數(shù)據(jù)和信息安全問題.
匿名技術(shù)是網(wǎng)絡(luò)安全領(lǐng)域中一個十分重要的研究領(lǐng)域,通過密碼學(xué)[1]的編碼技術(shù)能比較有效地保護網(wǎng)絡(luò)中通信的消息內(nèi)容.典型的分組密碼體制有DES、3DES和AES,常見的公鑰加密體制有RSA、ECC等.混合加密技術(shù)[2]是對稱加密與非對稱加密的混合,它實現(xiàn)了網(wǎng)絡(luò)的密鑰配送與通信加密,但密碼技術(shù)難以防范敵手在通信鏈路上的攻擊.
匿名通信[3]注重保護網(wǎng)絡(luò)用戶的個人通信隱私,通過某種方法來隱藏通信流中雙方的通信關(guān)系或通信的一方.文獻[4]提出Mix技術(shù),通過每個Mix節(jié)點對通信消息進行一定的混淆處理并轉(zhuǎn)發(fā),有效地阻止時間分析和流量分析.文獻[5]提出Crowds協(xié)議:用戶在發(fā)送方和接收方之間通過隨機轉(zhuǎn)發(fā)請求構(gòu)建一條匿名路徑,并用同一路徑反向傳輸應(yīng)答信息.文獻[6]繼承PGACS系統(tǒng)的思想,提出一種分層架構(gòu)的結(jié)構(gòu)化P2P匿名通信系統(tǒng)CACSBSP,利用數(shù)據(jù)包的加密機制使匿名可取消,同時添加信譽機制對節(jié)點的自私行為進行懲罰.文獻[7]提出一種基于半可信第三方服務(wù)的隱私保護系統(tǒng)結(jié)構(gòu),設(shè)計了一種基于假位置和Stackelberg博弈的位置匿名算法.文獻[8]提出一種保護位置隱私的匿名路由策略:在真實源節(jié)點的鄰節(jié)點中隨機選擇幾個作為接收者,用一個代理源節(jié)點來隱藏其真正位置,同時通過增加路由分支來干擾敵方.文獻[9]提出基于網(wǎng)絡(luò)編碼的匿名通信模型ACM-NC,加大攻擊者對竊聽信息進行數(shù)據(jù)包分析的困難,保證了通信消息傳輸?shù)牟豢勺粉櫺院涂购现\攻擊能力.
近些年來,在線會議系統(tǒng)已被不斷的改進和創(chuàng)新.文獻[10]設(shè)計并實現(xiàn)了一種基于Web的遠程醫(yī)療視頻會議系統(tǒng),利用WebRTC使用戶可以通過web瀏覽器進行視頻/音頻通話和數(shù)據(jù)共享.文獻[11]提出一種基于SDN分層組播的視頻會議系統(tǒng)架構(gòu),通過可伸縮視頻編碼實現(xiàn)分層視頻組播,以達到不同設(shè)備能力的會議終端需求.文獻[12]設(shè)計了一個P2P多黨視頻會議的覆蓋網(wǎng)絡(luò)CoolConferencing,不用維護復(fù)雜的全局結(jié)構(gòu),可以分布式且快速地適應(yīng)網(wǎng)絡(luò)動態(tài).
為了解決在線會議中數(shù)據(jù)和信息在網(wǎng)絡(luò)中傳輸?shù)陌踩珕栴},本文將混合加密技術(shù)和匿名通信相結(jié)合,應(yīng)用到在線會議中,提出了一種基于匿名通信的雙通道匿名在線會議方案.在該方案中,用戶收看會議是通過Web訪問進入網(wǎng)頁會議室,保證會議過程的實時性.用戶的發(fā)言傳輸過程使用匿名通信技術(shù),對發(fā)言內(nèi)容使用AES和RSA混合加密,并隨機選取中轉(zhuǎn)節(jié)點轉(zhuǎn)發(fā).其路徑長度和整個路徑信息是不確定的,有效防止了流量分析和追蹤攻擊.用戶收看會議時先進行注冊登錄,擁有自己的觀眾名和密碼.每個合法用戶都有唯一的標(biāo)識符作為發(fā)言時的用戶ID,該用戶ID和觀眾名無任何對應(yīng)關(guān)系,保證發(fā)言者的身份和位置信息不被泄露,實現(xiàn)了發(fā)送匿名.系統(tǒng)的每個節(jié)點既能作為發(fā)言者又能轉(zhuǎn)發(fā)消息,不依賴某些特殊節(jié)點,不會因為節(jié)點負載過重而造成網(wǎng)絡(luò)阻塞.用戶收看會議和發(fā)言是兩個通道,互不影響,效率較高.
對稱加密[1]的算法是開源的,加密密鑰和解密密鑰比較容易相互推導(dǎo),加密解密的速度快,但是在密鑰分配和管理上存在一定的難度.公鑰加密的方式,將密鑰安全性進行了提升,但加密解密的處理速度太慢,特別是在數(shù)據(jù)量較大的情況中尤為明顯.
混合加密[2]是結(jié)合RSA和AES加密算法來實現(xiàn)數(shù)據(jù)的加密.首先,發(fā)送方采用AES加密信息,AES的對稱密鑰被RSA的公鑰進行加密,組合后進行傳輸.接收方接收到信息后,先用RSA的私鑰解密,獲取AES的對稱密鑰,再用其解密,即可得到發(fā)送的消息.這種混合加密方式將對稱密碼和公鑰密碼的優(yōu)勢很好地進行了結(jié)合.
本文使用一種匿名通信模型,該模型是在熊婉竹等人提出的移動位置隱私保護協(xié)議[13]的基礎(chǔ)上,進行了改進.模型利用Crowds協(xié)議的基本思想建立匿名重路由機制,使用隨機策略來選擇中轉(zhuǎn)節(jié)點進行消息轉(zhuǎn)發(fā),采用對稱加密和非對稱加密混合算法來保證消息的安全性.服務(wù)器在接收到消息后,不必對發(fā)送節(jié)點進行信息回復(fù).
整個通信系統(tǒng)中,所有的用戶節(jié)點(包括服務(wù)器)都加入一個RSA公開密鑰系統(tǒng),每一個用戶所在的節(jié)點均分配一對密鑰:一個公鑰PKi和一個私鑰SKi,為服務(wù)器分配一對公鑰PKs和私鑰SKs.發(fā)送節(jié)點向服務(wù)器發(fā)送的明文信息為P,系統(tǒng)的中轉(zhuǎn)節(jié)點為t.
每一個節(jié)點中都存在一個對應(yīng)的路由表R.路由表中記錄了該節(jié)點轉(zhuǎn)發(fā)的所有消息,表格中的每一項包含<序列號Seq,消息來源節(jié)點的IP地址>.路由表的結(jié)構(gòu)如表1所示.
匿名通信模型中節(jié)點發(fā)送消息給服務(wù)器的過程如下:
發(fā)送節(jié)點獲取兩個對稱密鑰K0和K1,用K0加密要發(fā)送的信息P得到密文,用服務(wù)器的公鑰PKs對對稱密鑰K0進行加密,將它們和序列號組合在一起形成報文c.發(fā)送節(jié)點隨機選擇網(wǎng)絡(luò)中的一個節(jié)點作為中轉(zhuǎn)節(jié)點t1,用對稱密鑰K1對報文進行加密,再用中轉(zhuǎn)節(jié)點t1的公鑰PK1加密K1,將這兩部分組合成REQ0發(fā)送給中轉(zhuǎn)節(jié)點t1.
算法1.發(fā)送節(jié)點發(fā)送消息算法
1.RSA公開密鑰系統(tǒng)為系統(tǒng)中每一個節(jié)點均分配一對公鑰PKi和私鑰SKi;
2.AES算法為發(fā)送節(jié)點生成兩個密鑰:K0和K1;
3.發(fā)送節(jié)點t0向服務(wù)器申請服務(wù)器的公有密鑰PKs;
4.用對稱密鑰K0加密要發(fā)送的明文信息P;
5.用服務(wù)器的公鑰PKs對對稱密鑰K0進行加密;
6.將其和Seq組合在一起形成報文c=(Seq,K0(P),PKs(K0));
7.m1=K1(c)//K1加密報文c;
8.m2=PK1(K1)//隨機選擇中轉(zhuǎn)節(jié)點t1的PK1加密K1;
9.發(fā)送請求信息REQ0=(m1,m2);
中轉(zhuǎn)節(jié)點t1接收到請求信息REQ0后,先用自己的私鑰SK1進行解密,得到發(fā)送節(jié)點的對稱密鑰K1,利用K1解密得到報文,中轉(zhuǎn)節(jié)點記錄下序列號,并將序列號和發(fā)送節(jié)點的IP地址存入自己的路由表中,從而更新路由表.然后中轉(zhuǎn)節(jié)點以概率P將信息發(fā)送給除了發(fā)送節(jié)點和中轉(zhuǎn)節(jié)點t1之外,隨機選擇的下一個中轉(zhuǎn)節(jié)點t2,或者以1-P的概率直接發(fā)送給服務(wù)器.但不管發(fā)送給誰,都要用當(dāng)前中轉(zhuǎn)節(jié)點的對稱密鑰K2加密報文信息,再用下一跳節(jié)點的公鑰加密對稱密鑰K2,將其組合成REQi+1進行發(fā)送.
算法2.中轉(zhuǎn)節(jié)點轉(zhuǎn)發(fā)算法
1.FOR(i=0;i≤N;i++){
2. 中轉(zhuǎn)節(jié)點ti收到請求信息REQi=(m1,m2);
3. 用私有密鑰SKi解密m2,得到對稱密鑰Ki;
4. 用對稱密鑰Ki解密m1,得到報文c;
5. 將Seq和上一個節(jié)點的IP地址記錄到路由表Ri中;
6. IF(Math.random() < Pf)
7. ti選擇發(fā)送給中轉(zhuǎn)節(jié)點ti+1;
8. ti獲取ti+1的公鑰PKi+1,并選取對稱密鑰Ki+1;
9. 用Ki+1加密報文c;
10. 用公鑰PKi+1加密公鑰PKi+1;
11. 組合成REQi+1發(fā)送給中轉(zhuǎn)節(jié)點ti+1;
12. ELSE
13. ti選擇發(fā)送給服務(wù)器;
14. ti獲取服務(wù)器的公鑰PKs,并選取對稱密鑰Ks;
15. 用Ks加密報文c;
16. 用公鑰PKs加密公鑰Ks;
17. 組合成REQs發(fā)送給服務(wù)器;
18. END IF
19. END FOR
20. }
服務(wù)器收到中轉(zhuǎn)節(jié)點發(fā)送的信息后,先用自己的私鑰SKs進行解密,得到對稱密鑰Ks,利用Ks解密得到報文信息.然后二次使用私鑰解密報文得到發(fā)送節(jié)點的對稱密鑰K0,用K0解密密文就可得到發(fā)送的明文信息.同樣地,服務(wù)器將該信息的序列號和上一個中轉(zhuǎn)節(jié)點的IP地址存入自己的路由表中,并進行更新.
算法3.服務(wù)器接收消息算法
1.服務(wù)器收到請求信息REQs;
2.用私有密鑰SKs解密,得到對稱密鑰Ks;
3.用Ks解密,得到報文c=(Seq,K0(P),PKs(K0));
4.將Seq和上一個節(jié)點的IP地址記錄到路由表Rs中;
5.用私鑰SKs解密報文c,得到對稱密鑰K0;
6.用對稱密鑰K0解密,得到明文信息.
至此,服務(wù)器收到一個來自某節(jié)點的請求信息.在整個傳送過程中,服務(wù)器和其他節(jié)點都不知道該消息的最初發(fā)送者是哪一個節(jié)點,只知道傳送消息給自己的上一個節(jié)點.即使對于第一個中轉(zhuǎn)節(jié)點來說,它的上一個節(jié)點恰好是發(fā)送節(jié)點,但是它并不知道這個事實,因此仍然無法確定發(fā)送節(jié)點究竟是哪一個節(jié)點.每一次轉(zhuǎn)發(fā)消息的中轉(zhuǎn)節(jié)點都是隨機選擇的,所以發(fā)送節(jié)點每一次發(fā)送消息給服務(wù)器所經(jīng)過的路徑都是隨機的.攻擊者很難通過流量分析手段來獲取消息的傳輸路徑,進一步找到發(fā)送節(jié)點的IP地址.
本文提出了一種基于上述匿名通信技術(shù)的雙通道匿名在線會議方案.該方案采用“雙通道”的方式,用戶的發(fā)言傳送給服務(wù)器是一個通道,它使用匿名通信技術(shù)來實現(xiàn),以保證用戶的身份和位置信息不被發(fā)現(xiàn).而用戶收看會議是另一個通道,它通過普通的web訪問,所有注冊過的合法觀眾均可收看會議.
用戶收看會議是通過訪問服務(wù)器網(wǎng)站上的會議室頁面實現(xiàn)的.用戶需要先在網(wǎng)站上進行注冊,填寫觀眾名和密碼,該觀眾名與發(fā)言的用戶ID完全不同,而且無任何對應(yīng)關(guān)系,另一方面,觀眾名也不包含任何用戶的身份信息和位置信息.在服務(wù)器上注冊后,用戶可以使用注冊過的觀眾名和密碼登錄服務(wù)器并進入會議室頁面,收看匿名在線會議.并且在收看過程中可以隨時發(fā)言,用戶的發(fā)言內(nèi)容是利用前述的匿名通信技術(shù)發(fā)送給服務(wù)器.
所有參加會議的用戶都有一個唯一的標(biāo)識符作為用戶ID,它與用戶的真實身份和地理位置毫無關(guān)系,與觀眾名也無任何關(guān)聯(lián).用戶發(fā)言時以ID+內(nèi)容的形式使用匿名通信算法發(fā)送給服務(wù)器,服務(wù)器和任意其他用戶都不知道發(fā)言者是誰.每一次發(fā)言都是通過新的轉(zhuǎn)發(fā)路徑,所以攻擊者很難通過流量分析手段來獲取消息的傳輸路徑,從而進一步找到發(fā)言者.在傳送過程中,對用戶ID和發(fā)言內(nèi)容采用AES和RSA混合加密的方式,使得用戶的發(fā)言在到達服務(wù)器之前是保密的,任何其他用戶不能獲取,也不能偽造.服務(wù)器接收用戶的發(fā)言內(nèi)容后,會在網(wǎng)站會議室頁面上將其公布出來,從而使其他合法用戶得知發(fā)言內(nèi)容.
用戶收看會議和發(fā)言是相互獨立的兩個功能,彼此無關(guān),但無論發(fā)言過程或者收看過程,均保證用戶的身份信息和位置信息不被泄露.在使用“雙通道”的情況下,用戶收看會議不用借助匿名通信技術(shù),因而能夠保證實時收看會議.用戶發(fā)言時,在匿名通信過程中需要相對較長的時延,但是匿名通信是單向的,它不影響用戶收看會議.
本方案中使用的符號定義如表2所示.
表2 相關(guān)符號描述Table 2 Description of related symbols
所有用戶所在的電腦和會議服務(wù)器均加入網(wǎng)絡(luò)上作為某個節(jié)點,服務(wù)器所在節(jié)點是公開的,而用戶的節(jié)點信息是保密的.所有用戶均在服務(wù)器上注冊,擁有觀眾名和密碼,并同步存儲在服務(wù)器的數(shù)據(jù)庫上,服務(wù)器在數(shù)據(jù)庫中建立用戶信息表list,每一項為<觀眾名Uname,用戶密碼Password>,用于存儲用戶注冊的觀眾名和密碼,以便驗證用戶的合法性.其中Uname不包含任何用戶的身份信息和位置信息,服務(wù)器和任何的節(jié)點都不能依據(jù)Uname獲得任何一個用戶的身份信息和位置信息.
算法4.注冊算法
1.用戶進入注冊頁面;
2.用戶填寫注冊的觀眾名Uname和密碼Password,并提交發(fā)送給服務(wù)器進行注冊;
3.服務(wù)器收到Uname和Password后,查找用戶信息表list,確定Uname和Password是否重復(fù);
4.IF(exist(Uname))
5. 查找list中該Uname對應(yīng)的Passwordlist;
6. IF(Password!=Passwordlist)
7. 服務(wù)器在list中新增一項,記錄
8. 用戶使用新注冊的
9. ElSE
10. 用戶直接用已注冊過的Uname和Password登錄網(wǎng)頁;
11. END IF
12.ElSE
13. 服務(wù)器在list中新增一項,記錄
14. 用戶使用新注冊的
15.END IF
16.用戶登錄后收看在線會議;
用戶收看會議是一個單獨的通道,與發(fā)言互不影響.會議服務(wù)器建立一個網(wǎng)站,有一個會議室網(wǎng)頁,用戶通過web方式登錄該會議室,這無關(guān)于用戶身份.任一用戶只需通過已注冊的觀眾名和密碼在web網(wǎng)頁上進行登錄,就可以進入會議室收看會議,同時可以看到其他合法用戶公開的發(fā)言.若是新用戶,可以先向服務(wù)器進行注冊,獲得新的觀眾名和密碼,登錄后進入會議室觀收看會議,亦可以與其它已注冊的用戶共用一個觀眾名和密碼來收看會議.比起發(fā)言過程中需要轉(zhuǎn)發(fā)消息而導(dǎo)致時延較長,用戶通過這種直接訪問網(wǎng)站的方式收看會議,速度更快,效率更高.
合法用戶收看會議時可以進行發(fā)言,但用戶發(fā)言是單獨的一個通道,它與用戶收看會議是完全獨立的,兩者互不影響,可同時進行.每個合法用戶都有一個發(fā)言用的ID,簡稱用戶ID,它與用戶注冊時的觀眾名無任何關(guān)系,因此服務(wù)器不能從收看會議的觀眾名追溯到發(fā)言的用戶.在通信過程中,用戶節(jié)點sender將用戶ID和發(fā)言內(nèi)容UInfo組成二元組,并用AES和RSA混合加密算法對二元組進行加密,之后采用匿名通信算法發(fā)送給服務(wù)器,服務(wù)器收到后進行解密,將用戶ID和發(fā)言內(nèi)容UInfo在網(wǎng)頁上公布出來,所有合法登錄的用戶都可以看到.
為了保證用戶的身份信息不被泄露,根據(jù)用戶所參加的會議類型而對發(fā)言內(nèi)容進行保密處理.若為一般的純文本會議,則用戶的發(fā)言內(nèi)容為純文本文字,可以將其發(fā)送給服務(wù)器并公開.若為在線視頻會議時,在只需要保密位置,不需要保密身份的情況下,用戶可以傳送自己的視頻給服務(wù)器,但是視頻中無任何與用戶位置相關(guān)的信息;如果位置和身份都要保密,則發(fā)送的視頻需要進行如下處理:遮蓋發(fā)言人,對發(fā)言人的聲音做變聲處理,抹除視頻中一切跟發(fā)言人身份有關(guān)的信息,例如房間里的標(biāo)志、裝飾等.
3.4.1 發(fā)言準(zhǔn)備
每個合法用戶所在的節(jié)點以及服務(wù)器均加入一個RSA公開密鑰系統(tǒng),RSA公開密鑰系統(tǒng)為系統(tǒng)內(nèi)的每個節(jié)點分配一對密鑰:一個公鑰PK和一個私鑰SK.任一合法用戶處于系統(tǒng)內(nèi)的節(jié)點時,可使用該節(jié)點的密鑰對.每個合法登錄的用戶都有一個用戶ID,它與登錄時的觀眾名無關(guān),服務(wù)器和其他任何節(jié)點都不能根據(jù)此用戶ID來獲取用戶的位置信息.發(fā)言的用戶節(jié)點若需保密身份信息,則先對發(fā)言內(nèi)容進行保密處理.之后使用AES算法生成兩個密鑰K0和K1,用K0加密用戶ID和發(fā)言內(nèi)容UInfo,用服務(wù)器的公有密鑰 PKs加密K0,連接序列號后形成{Seq,E{K0,(ID,UInfo)},E{PKs,K0}}.用K1對{Seq,E{K0,(ID,UInfo)},E{PKs,K0}}進行加密,形成要發(fā)送的密文.
算法5.發(fā)言準(zhǔn)備過程
1.sender CHECK發(fā)言內(nèi)容UInfo;
2.IF(UInfo是純文字信息)
3. UInfo不作處理等待發(fā)送;
4.ELSE
5. IF(UInfo是視頻信息&&用戶保密身份)
6. 對視頻中的發(fā)言人、聲音以及跟身份有關(guān)的信息進行處理;
7. UInfo等待發(fā)送;
8. ElSE
9. UInfo不作處理等待發(fā)送;
10. END IF
11.END IF
12.RSA公開密鑰系統(tǒng)為每一個合法用戶所在的節(jié)點均分配一對公鑰PKi和私鑰SKi,包括服務(wù)器server的公鑰PKs和私鑰SKs;
13.sender使用AES算法生成兩個對稱密鑰K0和K1;
14.sender獲取服務(wù)器server的公開密鑰PKs;
15.sender將用戶ID和發(fā)言內(nèi)容組成二元組(ID,UInfo);
16.密文 = E{K0,(ID,UInfo)};
17.E{PKs,K0};
18.Data = (Seq,E{K0,(ID,UInfo)},E{PKs,K0});
19.報文 = E{K1,Data};
3.4.2 發(fā)送發(fā)言
發(fā)送節(jié)點sender調(diào)用匿名通信算法在網(wǎng)絡(luò)中隨機選擇一個節(jié)點作為中轉(zhuǎn)節(jié)點1,中轉(zhuǎn)節(jié)點1收到消息后解密得到Data.中轉(zhuǎn)節(jié)點1以概率p直接將m發(fā)送給服務(wù)器;或者在除服務(wù)器和自己之外的節(jié)點任意選出一個節(jié)點,作為中轉(zhuǎn)節(jié)點2繼續(xù)發(fā)送,直至發(fā)送給服務(wù)器.Data每到達一個中轉(zhuǎn)節(jié)點時,該中轉(zhuǎn)節(jié)點將選取一個新的對稱密鑰加密Data,進一步提高了報文在網(wǎng)絡(luò)中傳送時的破解難度,其他用戶不能獲取或偽造.
算法6.發(fā)送發(fā)言算法
1.sender調(diào)用匿名通信算法隨機選取一個節(jié)點,記為中轉(zhuǎn)節(jié)點t1;
2.sender獲取t1的公鑰PK1;
3.Data1 = (E{K1,Data},E{PK1,K1});
4.t1收到sender發(fā)送的消息Data1;
5.K1= D{SK1,E(PK1,K1)};
6.Data = D{K1,E{K1,Data}};
7.FOR i=1 TO i=n
8. IF(Math.random() < Pf)
9. ti選擇發(fā)送給中轉(zhuǎn)節(jié)點ti+1;
10. ti獲取ti+1公鑰PKi+1,并選取對稱密鑰Ki+1;
11. Data(i+1)=(E{Ki+1,Data},E{PKi+1,Ki+1});
12. ti+1收到ti發(fā)送的消息Data(i+1);
13. Ki+1= D{SKi+1,E{PKi+1,Ki+1}};
14. Data= D{Ki+1,E{Ki+1,Data}};
15. ti+1在路由表中記錄
16. ELSE
17. ti選擇發(fā)送給服務(wù)器server;
18. ti獲取server公鑰PKs,并選取對稱密鑰Ks;
19. Data(s)=(E{Ks,Data},E{PKs,Ks});
20. ti將Data(s)發(fā)送給server;
21. BREAK;
22. END IF
23.END FOR
3.4.3 服務(wù)器公開發(fā)言內(nèi)容
服務(wù)器收到中轉(zhuǎn)節(jié)點ti發(fā)送的消息Data(s)后,二次解密得到序列號和對稱密鑰K0,用K0對密文解密得到明文信息,即二元組(ID,UInfo).之后將二元組(ID,UInfo)公布在會議室網(wǎng)頁上,每個觀看會議的用戶都可以看到發(fā)言者的用戶ID和發(fā)言內(nèi)容.但該用戶ID號和觀眾名無關(guān)聯(lián),服務(wù)器和其他用戶都不能識別發(fā)言者的位置和身份信息.即使是同一個發(fā)言者,每一次發(fā)言時都會隨機選擇新的轉(zhuǎn)發(fā)路徑.因此在消息傳輸過程中,任意的中轉(zhuǎn)節(jié)點和攻擊者都不能獲取消息內(nèi)容和發(fā)送者的位置信息.
算法7.服務(wù)器公開發(fā)言內(nèi)容算法
1.server收到中間節(jié)點ti發(fā)送的消息Data(s) = (E{Ks,Data},E{PKs,Ks});
2.Ks= D{SKs,E{PKs,Ks}};
3.Data=D{Ks,E{Ks,Data}}=(Seq,E{K0,(ID,UInfo)},E{PKs,K0});
4.server在路由表中記錄
5.K0= D(SKs,E(PKs,K0));
6.(ID,UInfo)= D{K0,E{K0,(ID,UInfo)}};
7.server獲得發(fā)言的用戶ID和發(fā)言內(nèi)容;
8.server在網(wǎng)頁上公布用戶ID和發(fā)言內(nèi)容;
定理1.發(fā)言者匿名:任意中轉(zhuǎn)節(jié)點、會議服務(wù)器和攻擊者都不能推斷出發(fā)言用戶節(jié)點的位置和身份信息.
證明:中轉(zhuǎn)節(jié)點接收到報文后,只是對外層的加密報文進行解密處理,發(fā)言內(nèi)容仍被混合加密,中轉(zhuǎn)節(jié)點沒有會議服務(wù)器的私鑰,無法對已加密發(fā)言內(nèi)容的報文進行解密操作,并且發(fā)言內(nèi)容中并不包含發(fā)言者身份和位置的相關(guān)信息.每一次發(fā)言所使用的路徑是隨機的,是中轉(zhuǎn)節(jié)點對報文進行加解密處理后,根據(jù)轉(zhuǎn)發(fā)概率隨機選擇下一跳中轉(zhuǎn)節(jié)點,發(fā)送的報文中并不包含有關(guān)自身節(jié)點的身份信息.每個中轉(zhuǎn)節(jié)點只知道其上一跳節(jié)點,但并不能由此推斷出上一跳節(jié)點是否為發(fā)言的用戶節(jié)點.
該匿名通信模型規(guī)定,發(fā)言的用戶節(jié)點和會議服務(wù)器之間一定存在至少一個中轉(zhuǎn)節(jié)點,因此會議服務(wù)器只能知道轉(zhuǎn)發(fā)消息給自己的最后一個節(jié)點(它一定不是發(fā)言者),但無法獲知發(fā)言者的位置和身份信息.
在通信過程中,每一次的發(fā)言內(nèi)容都是通過新的傳輸路徑發(fā)送給服務(wù)器,該路徑并不是提前建立,而是在傳輸過程中隨機選擇中轉(zhuǎn)節(jié)點而形成的,因此具體的傳輸路徑和路徑長度都是隨機的.攻擊者在進行觀察時,很難通過流量分析的手段來追蹤報文、分析報文,因此就不能獲取發(fā)言內(nèi)容的傳輸路徑,不能進一步推斷出發(fā)送者是誰.
定理2.通信匿名:任意節(jié)點都不能獲取整個傳輸路徑的路由成員信息.
證明:在該匿名通信系統(tǒng)中,系統(tǒng)中的每一個節(jié)點既可以作為發(fā)言的用戶節(jié)點,也可以作為中轉(zhuǎn)節(jié)點.每次發(fā)言的轉(zhuǎn)發(fā)路徑是隨機的,即使是同一發(fā)言者,每次發(fā)言的傳輸路徑也不相同.發(fā)言者每進行一次發(fā)言,都會產(chǎn)生一條傳輸路徑,但該路徑并不是提前制定的,而是在傳輸時由中轉(zhuǎn)節(jié)點采取隨機策略隨機選擇下一跳節(jié)點來確定的,即便是發(fā)言的用戶節(jié)點也不能提前獲取傳輸路徑上的成員節(jié)點信息.在傳輸過程中,中轉(zhuǎn)節(jié)點接收到報文后,根據(jù)轉(zhuǎn)發(fā)概率,在除自己外的節(jié)點中隨機選擇下一跳節(jié)點或者發(fā)送給服務(wù)器.中轉(zhuǎn)節(jié)點只知道其上一跳節(jié)點和下一跳節(jié)點,并不能獲取轉(zhuǎn)發(fā)路徑上除此之外其他節(jié)點的信息,這種隨機轉(zhuǎn)發(fā)過程決定了中轉(zhuǎn)節(jié)點不能獲取任意一次的轉(zhuǎn)發(fā)路徑.因此任意節(jié)點都不能獲取傳輸路徑上的全部路由成員信息.
定理3.發(fā)言內(nèi)容保密:任意中轉(zhuǎn)節(jié)點和攻擊者都不能獲取用戶節(jié)點發(fā)送的發(fā)言內(nèi)容.
證明:發(fā)言者所在的節(jié)點發(fā)送的發(fā)言內(nèi)容是經(jīng)過RSA算法和AES算法混合加密的.先將發(fā)言內(nèi)容用對稱密鑰加密,再用會議服務(wù)器的公鑰加密對稱密鑰.并且在每次準(zhǔn)備發(fā)送給下一跳中轉(zhuǎn)節(jié)點時,再次使用新的對稱密鑰和下一跳中轉(zhuǎn)節(jié)點的公鑰以相同方法混合加密.中轉(zhuǎn)節(jié)點接收到后僅進行一次解密,得到的是用對稱密鑰加密后的密文和用會議服務(wù)器公鑰加密后的對稱密鑰,任一中轉(zhuǎn)節(jié)點都沒有會議服務(wù)器的私鑰,因此不能繼續(xù)解密密文,不能知道真正的發(fā)言內(nèi)容.
發(fā)言內(nèi)容在用戶節(jié)點處是使用對稱密鑰和會議服務(wù)器的公鑰進行了混合加密的,發(fā)送前用第一個中轉(zhuǎn)節(jié)點的公鑰和新的對稱密鑰二次加密.并且在中轉(zhuǎn)節(jié)點間傳送時,每次都先解密再用新的對稱密鑰進行二次混合加密.因此經(jīng)過雙重加密,且攻擊者沒有各個節(jié)點和會議服務(wù)器的私鑰,是無法知道發(fā)送的發(fā)言內(nèi)容.
在匿名通信系統(tǒng)中,所有節(jié)點都是對等的,選擇固定的轉(zhuǎn)發(fā)概率進行重路由路徑選擇.攻擊者在進行攻擊時,先使得系統(tǒng)中的部分節(jié)點成為自己的合作者,這些節(jié)點就變成了惡意節(jié)點,其他非惡意節(jié)點稱為誠實節(jié)點.之后惡意節(jié)點為攻擊者提供系統(tǒng)信息,攻擊者從中推斷出匿名通信關(guān)系.如果系統(tǒng)中存在惡意節(jié)點,惡意節(jié)點也可能不位于轉(zhuǎn)發(fā)路徑上,此時攻擊者認為系統(tǒng)中所有誠實節(jié)點為發(fā)送者的概率是相同的.當(dāng)有惡意節(jié)點存在于轉(zhuǎn)發(fā)路徑上時,則攻擊者認為在所有節(jié)點中,第一個惡意節(jié)點的上一跳節(jié)點是發(fā)送者的幾率最大.
本文基于信息熵對發(fā)送者匿名度進行分析.已知系統(tǒng)有N個用戶,用戶集合U={Ui}={U1,U2,…,Un},系統(tǒng)在一段時間內(nèi)運行時,節(jié)點總數(shù)N是不變的.設(shè)Y是一個離散隨機變量,其概率分布Pi=P(Y=Ui)表示攻擊者認為用戶Ui是發(fā)送者的概率.對于系統(tǒng)中的N個用戶,攻擊者為每個用戶可能是發(fā)送者分配一個概率Pi.文獻[14]使用信息熵量化匿名度,提出了基于信息模型的匿名度的定義:
(1)
假設(shè)轉(zhuǎn)發(fā)概率為Pf,路徑長度為R,可以計算出路徑長度分布為:
P(R=j+1)=1·Pfj-1·(1-Pf) 1< (2) 那么路徑長度的期望值為: (3) 攻擊者攻擊系統(tǒng)后,設(shè)有M個節(jié)點已被攻擊者控制,成為攻擊者的共謀節(jié)點,則剩余的誠實節(jié)點數(shù)為N-M,惡意節(jié)點占總節(jié)點的比例為C.令發(fā)送者位于第0個位置,Ei(1≤i≤n)表示路徑上的第1個共謀節(jié)點位于第i個位置的事件, Ei+=Ei∧Ei+1…表示路徑上的第1個共謀節(jié)點位于第i個位置及之后的事件,F(xiàn)表示路徑上第1個共謀節(jié)點的前驅(qū)節(jié)點是發(fā)送者的事件,P(F|E1+)表示在路徑上有共謀節(jié)點時,第1個共謀節(jié)點的前驅(qū)節(jié)點是發(fā)送者的概率.對于攻擊者自己所在的節(jié)點和其控制的惡意節(jié)點,它們是發(fā)送者的概率為0. 路徑上有惡意節(jié)點時,第1個共謀節(jié)點的前驅(qū)節(jié)點是發(fā)送者的概率為: (4) 排除第一個共謀節(jié)點的前驅(qū)節(jié)點外,其他所有非惡意節(jié)點是發(fā)送者的概率為: (5) 則根據(jù)發(fā)送者匿名度公式計算得: (6) 圖1是在惡意節(jié)點占總節(jié)點(N為100)的不同比例下,對比了轉(zhuǎn)發(fā)概率f與匿名度之間的關(guān)系.從圖1可以看出,當(dāng)惡意節(jié)點的比例一定時,隨著轉(zhuǎn)發(fā)概率f的增大,系統(tǒng)的匿名度也增大.同時,在同一轉(zhuǎn)發(fā)概率下,當(dāng)惡意節(jié)點的比例越小,系統(tǒng)的匿名度越大. 圖1 轉(zhuǎn)發(fā)率f與匿名度的函數(shù)關(guān)系圖Fig.1 Functional relationship between forwarding probability and anonymity degree 圖2是在不同的轉(zhuǎn)發(fā)概率f下,對比了惡意節(jié)點占總節(jié)點(N為100)的比例與匿名度之間的關(guān)系.從圖2中可以看出,隨著惡意節(jié)點的比例逐漸增大,系統(tǒng)的匿名度不斷降低.而且在同一惡意節(jié)點占比下,轉(zhuǎn)發(fā)概率f越大,匿名度也越大. 圖2 惡意節(jié)點占總節(jié)點的比例M/N與匿名度的函數(shù)關(guān)系圖Fig.2 Functional relationship between maliciousnode and anonymity degree 圖3表示(N為100)隨著惡意節(jié)點的個數(shù)變化時,本方案和文獻[6]提出的CACSBSP系統(tǒng)的匿名度變化情況.在本方案中,由公式(3)知,當(dāng)轉(zhuǎn)發(fā)概率為0.5時,路徑長度期望值為3,當(dāng)轉(zhuǎn)發(fā)概率為0.75時,路徑長度期望值為5.CACSBSP系統(tǒng)中,假設(shè)自私節(jié)點個數(shù)為0,節(jié)點的信譽度最高為10.從圖3可以看出,兩個方案的匿名度都隨著惡意節(jié)點個數(shù)的增多大致呈線性下降.當(dāng)系統(tǒng)中惡意節(jié)點個數(shù)一定時,無論路徑長度是3還是5,本方案的匿名度都比ACSBSP系統(tǒng)要高.由此可以得出,本方案與ACSBSP系統(tǒng)相比較時,本方案的安全性較高,可以有效地實現(xiàn)發(fā)送者匿名,保證用戶身份位置隱私的安全. 圖3 惡意節(jié)點個數(shù)改變時的匿名度Fig.3 Degree of anonymity when the number of maliciousnodes changes 通過上述分析,本文提出的基于匿名通信的匿名在線會議方案,可以實現(xiàn)較高的匿名度,即在轉(zhuǎn)發(fā)概率f=0.75且少量惡意節(jié)點存在的情況下,攻擊者對節(jié)點進行合謀攻擊后仍不能推斷出發(fā)送節(jié)點的可能性達到0.8.該結(jié)果表明本文所提出的基于匿名通信的雙通道匿名在線會議方案可以較好的保障發(fā)送者的匿名性. 在匿名通信領(lǐng)域,隨著匿名技術(shù)的不斷研究和發(fā)展,匿名通信系統(tǒng)所可能遭受的攻擊也層出不窮.本文提出的雙通道匿名在線會議方案中,發(fā)言者每次發(fā)言都會選取新的轉(zhuǎn)發(fā)路徑,即使是同一個發(fā)言者,其每次發(fā)言內(nèi)容的傳輸路徑也是隨機的.在發(fā)言的傳輸過程中,發(fā)言內(nèi)容的轉(zhuǎn)發(fā)路徑長度也是不確定的.中轉(zhuǎn)節(jié)點根據(jù)轉(zhuǎn)發(fā)概率來確定是否轉(zhuǎn)發(fā)給會議服務(wù)器或其他中轉(zhuǎn)節(jié)點,若繼續(xù)轉(zhuǎn)發(fā)給其他中轉(zhuǎn)節(jié)點,則采取隨機選擇策略.因此,攻擊者不能通過流量分析的手段來獲取發(fā)言內(nèi)容的傳輸路徑,從而推斷出發(fā)言用戶節(jié)點的身份和位置信息,進而識別發(fā)言者的真實身份. 發(fā)言內(nèi)容和發(fā)言者的身份信息等在發(fā)送前就進行了混合加密:用對稱密鑰加密發(fā)言內(nèi)容,用會議服務(wù)器公鑰加密對稱密鑰.在發(fā)送給第一個中轉(zhuǎn)節(jié)點時,進行二次混合加密:用新的對稱密鑰加密報文,用第一個中轉(zhuǎn)節(jié)點的公鑰加密新對稱密鑰.在傳送過程中,中轉(zhuǎn)節(jié)點雖然會先進行一層解密,但得到的是用對稱密鑰和會議服務(wù)器公鑰混合加密的發(fā)言內(nèi)容,由于沒有會議服務(wù)器的私鑰,中轉(zhuǎn)節(jié)點無法解密獲取發(fā)言內(nèi)容.即使不在傳輸路徑上的中轉(zhuǎn)節(jié)點獲取到報文,由于報文是經(jīng)過兩次混合加密的,且任一中轉(zhuǎn)節(jié)點都沒有會議服務(wù)器和其他所有中轉(zhuǎn)節(jié)點的私鑰.不在傳輸路徑上的中轉(zhuǎn)節(jié)點無法進行雙重解密,也就無法得到發(fā)言內(nèi)容.因此,任意的中轉(zhuǎn)節(jié)點都不能獲取會議中發(fā)言者的發(fā)言內(nèi)容.同時發(fā)言的傳輸過程中進行多次不同的雙重加密,攻擊者很難竊聽和追蹤到報文,更不能輕易破解出發(fā)言內(nèi)容和發(fā)言者的身份信息來偽造會議內(nèi)容. 在一條匿名通信路徑中,攻擊者很可能會控制其中一些會議用戶所在的節(jié)點,使其成為惡意節(jié)點.攻擊者和多數(shù)惡意節(jié)點一起合謀攻擊會議系統(tǒng),尤其是在發(fā)言用戶節(jié)點的下一中轉(zhuǎn)節(jié)點是惡意節(jié)點時,攻擊者有很大概率能夠推斷出上一跳的節(jié)點信息,從而獲取發(fā)言者的身份和位置信息.但當(dāng)系統(tǒng)中惡意節(jié)點不多時,系統(tǒng)發(fā)送者匿名性被破壞的概率極小.面對合謀攻擊時,只要系統(tǒng)中惡意節(jié)點的數(shù)量保持在一定比例內(nèi),系統(tǒng)還是具有很好的匿名性. 4.4.1 健壯性 本文提出的雙通道匿名在線會議方案是節(jié)點對等、完全自組織的,具有較強的健壯性.系統(tǒng)中的每個節(jié)點既作為用戶節(jié)點發(fā)起發(fā)言,同時也是系統(tǒng)的中轉(zhuǎn)節(jié)點,轉(zhuǎn)發(fā)其他發(fā)言節(jié)點的發(fā)言內(nèi)容.在發(fā)起發(fā)言時,由用戶節(jié)點隨機選擇下一跳中轉(zhuǎn)節(jié)點,在傳輸過程中,當(dāng)前接收到發(fā)言內(nèi)容的中轉(zhuǎn)節(jié)點隨機選擇下一跳中轉(zhuǎn)節(jié)點.每次的傳輸路徑都是隨機的,不會依靠某些特定節(jié)點,當(dāng)系統(tǒng)中某些節(jié)點故障或者離開網(wǎng)絡(luò)時,也不會影響整個通信過程. 4.4.2 抗攻擊性 該方案具有較強的抗攻擊性.每次發(fā)言內(nèi)容的傳輸路徑并不是提前構(gòu)建,而是在傳輸時由當(dāng)前節(jié)點隨機確定下一跳中轉(zhuǎn)節(jié)點,因此具體的傳輸路徑和路徑長度都是隨機的.即使面對合謀攻擊,攻擊者也很難通過流量分析的手段來獲取消息的完整傳輸路徑,也就無法獲知發(fā)言者的身份.用戶的發(fā)言在到達服務(wù)器之前是保密的,使用AES和RSA算法進行混合雙重加密,任何其他用戶不能獲取,也不能偽造. 4.4.3 高效率性 本方案采取雙通道的方式,每次匿名通信是單向的,發(fā)言內(nèi)容通過匿名通信傳送到會議服務(wù)器,相對耗時較長.但是用戶可以直接通過瀏覽網(wǎng)頁的方式收看會議,不需要經(jīng)過匿名通信過程,因此可以保證實時性.總的來說,該方案比單通道的基于匿名通信協(xié)議的匿名在線會議的效率高得多. 為了驗證基于匿名通信的雙通道匿名在線會議方案的性能,表3列出了實驗環(huán)境和參數(shù)設(shè)置. 表3 實驗環(huán)境及參數(shù)設(shè)置Table 3 Experimental environment and parameter setting 實驗參數(shù)定義了用戶發(fā)言的平均響應(yīng)時間、平均路徑長度和用戶收看會議的平均響應(yīng)時間.用戶發(fā)言的響應(yīng)時間定義為,在一段時間內(nèi),系統(tǒng)中的用戶發(fā)送若干個發(fā)言,服務(wù)器接收到單個發(fā)言信息所消耗的時間.用戶發(fā)言的平均響應(yīng)時間是指,多個消息的響應(yīng)時間求取平均值.用戶收看會議的平均響應(yīng)時間定義為,在多個用戶隨機發(fā)言情況下,服務(wù)器收到兩條發(fā)言信息之間的平均間隔. 本實驗分別在方案中的“雙通道”上進行了試驗.在設(shè)定轉(zhuǎn)發(fā)概率分別為0.25,0.5,0.75的情況下,對由10,20,30,…,100個節(jié)點組成的網(wǎng)絡(luò)系統(tǒng)分別進行100次模擬實驗,模擬用戶對服務(wù)器的消息轉(zhuǎn)發(fā),記錄不同節(jié)點數(shù)構(gòu)成系統(tǒng)的100次路徑長度和響應(yīng)時間,由此計算出平均路徑長度和平均響應(yīng)時間.同時記錄了不同節(jié)點數(shù)組成的系統(tǒng)中,轉(zhuǎn)發(fā)概率為0.5時,服務(wù)器收到100次發(fā)言信息的間隔,由此計算出兩條發(fā)言信息之間的平均間隔. 圖4 用戶發(fā)言的平均響應(yīng)時間Fig.4 Average response time for a user to speak 圖4給出了在不同概率下,隨著節(jié)點數(shù)目增加,用戶發(fā)言的平均響應(yīng)時間的變化情況.從圖4可以看出,在轉(zhuǎn)發(fā)概率一定時,隨著節(jié)點數(shù)目的增加,用戶發(fā)言的平均響應(yīng)時間近似呈線性增加.這表明即使在節(jié)點并發(fā)訪問量很大的情況下,該方案仍然適用且具有較好的穩(wěn)定性.且當(dāng)節(jié)點數(shù)目一定時,隨著轉(zhuǎn)發(fā)概率的增加,用戶發(fā)言的平均響應(yīng)時間僅出現(xiàn)小幅度的增長.看到自己的發(fā)言內(nèi)容會有一定的延時,只要延時不超過5秒,一般會議中都是可以接受的.當(dāng)節(jié)點數(shù)較多時,用戶發(fā)言的平均響應(yīng)時間是不超過5秒的,這說明能夠保證發(fā)言內(nèi)容的同步.觀看其他用戶的發(fā)言內(nèi)容和自己的發(fā)言內(nèi)容是不需要同步的,所有用戶可以在會議頁面實時看到. 圖5表示在不同轉(zhuǎn)發(fā)概率下,隨系統(tǒng)中節(jié)點數(shù)目變化的平均路徑長度的變化情況.從圖5可以看出,在一定的概率下,隨著節(jié)點數(shù)目的增加,平均路徑長度曲線圖整體變化趨勢比較平穩(wěn),在某個恒定值上下波動,波動范圍不超過2.這表明當(dāng)概率一定時,通信的平均路徑長度與網(wǎng)絡(luò)的節(jié)點數(shù)目是無關(guān)的.這同樣也證實了本文所提出的方案在多個節(jié)點共同發(fā)送消息的過程中,不存在利用歷史路徑轉(zhuǎn)發(fā)信息的情況,節(jié)點在每次發(fā)送信息時,傳輸路徑都是隨機產(chǎn)生的,保證了節(jié)點位置的匿名性,具有較好的健壯性. 圖5 平均路徑長度Fig.5 Average path length 從圖5還可以看出,在節(jié)點數(shù)目一定時,隨著轉(zhuǎn)發(fā)概率的增加,節(jié)點的平均路徑長度也隨之增加.這與上述路徑長度期望值理論公式是相符的.結(jié)合圖4和圖5可以看出,當(dāng)轉(zhuǎn)發(fā)概率為0.25時,系統(tǒng)平均響應(yīng)時間較短,且平均路徑長度較短,大約為2,但路徑長度較短時,系統(tǒng)容易受到攻擊者的流量分析攻擊從而降低發(fā)送者的匿名性.當(dāng)轉(zhuǎn)發(fā)概率為0.75時,平均路徑長度較長,大約為5,同時平均響應(yīng)時間也較長,此時用戶與服務(wù)器的通信時延較大,會影響用戶體驗,且較長的路徑長度也會增加系統(tǒng)負載.當(dāng)轉(zhuǎn)發(fā)概率為0.5時,其平均路徑長度適中,大約為3,并且當(dāng)節(jié)點數(shù)目增加時,平均響應(yīng)時間呈小幅度增加.因此,本文所提出的方案中轉(zhuǎn)發(fā)概率可以選取為0.5. 圖6給出了隨著節(jié)點數(shù)目增加時,本方案和文獻[6]提出的CACSBSP系統(tǒng)的系統(tǒng)平均響應(yīng)時間變化情況.在本方案中,設(shè)定節(jié)點轉(zhuǎn)發(fā)概率為0.5.在CACSBSP系統(tǒng)中,假設(shè)自私節(jié)點個數(shù)為0,節(jié)點的信譽度最高為10.從圖6可以看出,兩個方案的平均響應(yīng)時間都隨著節(jié)點個數(shù)的增加而增長.當(dāng)系統(tǒng)中節(jié)點個數(shù)一定時,本方案的系統(tǒng)平均響應(yīng)時間比ACSBSP系統(tǒng)要小,且從整體趨勢來看,本方案平均響應(yīng)時間的增長速度較慢.由此得知,在用戶發(fā)言時,本方案的同步性較好,效率較高,可以保障會議的實時性. 圖6 節(jié)點個數(shù)變化時的系統(tǒng)平均響應(yīng)時間Fig.6 Average system response time when the number of nodes changes 圖7表示在轉(zhuǎn)發(fā)概率為0.5時,隨著系統(tǒng)節(jié)點個數(shù)發(fā)生改變,用戶收看會議的平均響應(yīng)時間的變化情況.從圖7可以看出,隨著系統(tǒng)內(nèi)節(jié)點數(shù)的增加,用戶收看會議的平均響應(yīng)時間呈現(xiàn)較小幅度的波動,但整體數(shù)值保持在6-10毫秒內(nèi),未超過10毫秒.相比用戶發(fā)言的平均響應(yīng)時間,用戶收看會議的平均響應(yīng)時間要小得多.這表明本方案的雙通道,即收看會議通道和發(fā)言通道是互不影響的,用戶的發(fā)言內(nèi)容經(jīng)過多次轉(zhuǎn)發(fā),所以時延較長,而用戶收看會議的時延很小,基本上是實時的.并且在用戶訪問量很大時,也能很好地保證會議的實時性. 圖7 用戶收看會議的平均響應(yīng)時間Fig.7 Average response time of users listening to a meeting 本文基于一種匿名通信模型,提出了一個雙通道匿名在線會議方案.在本方案中,用戶收看會議是一個通道,用戶通過普通的web訪問方式進入網(wǎng)頁會議室收看會議,擁有自己的觀眾名和登錄密碼.用戶發(fā)送發(fā)言內(nèi)容使用另一個通道,用戶ID和發(fā)言內(nèi)容一起通過匿名通信技術(shù)發(fā)送給會議服務(wù)器,會議服務(wù)器接收后將發(fā)言內(nèi)容公布在會議頁面上.兩個通道單獨工作,使得系統(tǒng)效率高,速度快,用戶能夠?qū)崟r收看會議,獲取會議內(nèi)容.用戶的觀眾名和用戶ID并無任何對應(yīng)關(guān)系,保證了用戶的身份和位置信息不會被泄露.發(fā)言通道中的匿名通信技術(shù),在選擇下一跳中轉(zhuǎn)節(jié)點時使用隨機選擇策略,同時用RSA和AES混合加密算法多次對發(fā)言內(nèi)容進行加密,有效地抵御了攻擊者的流量分析和追蹤攻擊,確保發(fā)言者的身份和位置信息是安全的.經(jīng)過理論分析和多次實驗驗證,該方案時延小,效率高,健壯性強,在系統(tǒng)用戶量較大的情況下,也能穩(wěn)定運行,保證會議的實時性和較強的匿名性.下一步將研究如何改善本方案,進一步提高方案的通信效率和安全性.4.3 安全性分析
4.4 本方案優(yōu)越性
5 實驗與結(jié)果分析
5.1 實驗環(huán)境及性能指標(biāo)
5.2 實驗結(jié)果及分析
6 結(jié)束語