專利名稱:會(huì)話密鑰協(xié)商方法、網(wǎng)絡(luò)系統(tǒng)、認(rèn)證服務(wù)器及網(wǎng)絡(luò)設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,具體涉及一種會(huì)話請(qǐng)求實(shí)體、認(rèn)證服務(wù)器、
會(huì)話目標(biāo)實(shí)體、P2P網(wǎng)絡(luò)及會(huì)話密鑰協(xié)商方法。
背景技術(shù):
對(duì)等網(wǎng)(P2P: peer-to-peer)技術(shù)是目前國(guó)際計(jì)算網(wǎng)絡(luò)技術(shù)領(lǐng)域研究的一個(gè) 熱點(diǎn),越來越得到了人們的認(rèn)可。P2P網(wǎng)絡(luò)提供了一種資源共享的方法,在P2P 網(wǎng)絡(luò)環(huán)境,成前上萬臺(tái)彼此連接的計(jì)算機(jī)都處于對(duì)等的地位,每臺(tái)主機(jī)既可能 是資源請(qǐng)求者(Client)的同時(shí),還可能是資源4是供者(Server),能夠?qū)ζ渌?jì) 算機(jī)的請(qǐng)求做出響應(yīng),自愿提供資源與服務(wù),故對(duì)等網(wǎng)中的各個(gè)節(jié)點(diǎn)可稱之為 Peer對(duì)等節(jié)點(diǎn)。
P2P是一套與SIP相關(guān)的協(xié)議,其使用P2P技術(shù)解析SIP請(qǐng)求的目標(biāo) (Resource),提供SIP消息傳輸以及其他與SIP相關(guān)的服務(wù),互聯(lián)網(wǎng)工程任務(wù) 組(IETF)于2007年2月8日成立了 P2P工作組。P2P 4支術(shù)可以用于支撐多種應(yīng) 用,并可能成為許多網(wǎng)絡(luò)系統(tǒng)的核心協(xié)議, 一些電信設(shè)備開始關(guān)注P2P技術(shù), 并對(duì)其開展研究,P2P的典型應(yīng)用包括P2P VOIP、核心網(wǎng)等,其有可能成為未 來的電信核心網(wǎng)中的一個(gè)關(guān)鍵協(xié)議。
參考圖1,是現(xiàn)有技術(shù)的基于SIP協(xié)議的P2P網(wǎng)絡(luò)的一種典型結(jié)構(gòu)示意圖, 包括互連的各個(gè)peer節(jié)點(diǎn),如用戶代理節(jié)點(diǎn)(Proxy peer E )、重定向節(jié)點(diǎn)(Redirect peer R)、中繼節(jié)點(diǎn)(Relay peer Q)、語音服務(wù)節(jié)點(diǎn)(VMpeer S)、代理節(jié)點(diǎn)(Proxy peer P)、網(wǎng)關(guān)節(jié)點(diǎn)(GatewaypeerG)、防火墻穿透節(jié)點(diǎn)(STUNpeer F)等。
在上述基于SIP協(xié)議的P2P網(wǎng)絡(luò)系統(tǒng)中,為了保證系統(tǒng)安全,需要建立相 應(yīng)的安全機(jī)制,為此,在[]I-D.lowekamp-P2P-dsip-security]草案中,提出了一種 在P2P網(wǎng)絡(luò)中基于共享密鑰的端到端的認(rèn)證機(jī)制。P2P網(wǎng)絡(luò)中的各個(gè)實(shí)體(節(jié) 點(diǎn)、用戶、資源)通過帶外機(jī)制(通過P2P網(wǎng)絡(luò)外的傳送方法,如電話通知,口頭轉(zhuǎn)達(dá),郵件傳送等)事先得到一個(gè)共享密鑰(shared secret )。當(dāng)某個(gè)實(shí)體發(fā) 起消息時(shí),對(duì)消息各字#爻(from/to/contact/date/call-id/cseq/message-body )利用 共享密鑰和HMAC-SHA1算法生成的值作為Identity認(rèn)證頭域,并在Identity-info 頭域中帶上算法參數(shù)。消息接收方利用事先知道的共享密鑰和Identity-info頭域 中得到的算法參數(shù)對(duì)消息的各字段重新計(jì)算,如果計(jì)算的值和Identity頭域帶的 值一樣,則驗(yàn)證通過,驗(yàn)證通過后,消息接收方回復(fù)響應(yīng)消息,通過同樣的方 法生成Identity和Identity頭域,最初的消息發(fā)起方也通過同樣的方法驗(yàn)證響應(yīng) 消息,會(huì)話雙方一次會(huì)話交互完成。
在上述在[]I-D.lowekamp-P2PSIP-dsip-security]草案中規(guī)定的安全機(jī)制,在小 規(guī)模的網(wǎng)絡(luò)環(huán)境中具備一定的可行性,但在大規(guī)模的網(wǎng)絡(luò)環(huán)境下,通過帶外機(jī) 制傳遞和分配共享密鑰是不安全也不容易實(shí)現(xiàn)的。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明實(shí)施例所要解決的技術(shù)問題在于,提供一種應(yīng)用于P2P 網(wǎng)絡(luò)中的會(huì)話密鑰協(xié)商方法,實(shí)現(xiàn)在P2P網(wǎng)絡(luò)中提供集中、安全、易管理的會(huì) 話密鑰協(xié)商機(jī)制。
為了解決上述技術(shù)問題,本發(fā)明實(shí)施例提出了一種會(huì)話密鑰協(xié)商方法,應(yīng) 用于P2P網(wǎng)絡(luò)中,包括
接收來自會(huì)話請(qǐng)求實(shí)體的認(rèn)證請(qǐng)求;
對(duì)會(huì)話請(qǐng)求實(shí)體以及會(huì)話請(qǐng)求目標(biāo)實(shí)體進(jìn)行認(rèn)證,如果認(rèn)證成功,則生成 所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰;
向所述認(rèn)證請(qǐng)求實(shí)體返回?cái)y帶有所述會(huì)話密鑰的認(rèn)證響應(yīng)。 相應(yīng)地,本發(fā)明實(shí)施例還提出了一種認(rèn)證服務(wù)器,包括 認(rèn)證請(qǐng)求接收單元,用于接收來自會(huì)話請(qǐng)求實(shí)體的認(rèn)證請(qǐng)求; 認(rèn)證單元,用于在所述認(rèn)證請(qǐng)求接收單元接收到所述認(rèn)證請(qǐng)求后,對(duì)所述
會(huì)話請(qǐng)求實(shí)體以及會(huì)話目標(biāo)實(shí)體進(jìn)行認(rèn)證,認(rèn)證通過后,生成所述會(huì)話請(qǐng)求實(shí)
體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰;認(rèn)證響應(yīng)發(fā)送單元,用于向所述會(huì)話請(qǐng)求實(shí)體發(fā)送攜帶有會(huì)話密鑰的認(rèn)證 響應(yīng)。
相應(yīng)地,本發(fā)明還提出了一種會(huì)話請(qǐng)求實(shí)體,包括 認(rèn)證請(qǐng)求單元,用于向認(rèn)證服務(wù)其發(fā)送認(rèn)證請(qǐng)求; 認(rèn)證響應(yīng)接收單元,用于接收來自于所述認(rèn)證服務(wù)器的認(rèn)證響應(yīng); 會(huì)話密鑰獲取單元,用于從所述認(rèn)證響應(yīng)中獲取所述會(huì)話密鑰; 會(huì)話請(qǐng)求單元,用于向會(huì)話請(qǐng)求目標(biāo)實(shí)體發(fā)送攜帶有認(rèn)證信息的會(huì)話請(qǐng)求。 相應(yīng)地,本發(fā)明提出了一種會(huì)話目標(biāo)實(shí)體,包括
檢測(cè)單元,用于檢測(cè)來自于會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求是否攜帶有認(rèn)證信息;
會(huì)話密鑰協(xié)商獲得單元,用于在所述檢測(cè)單元檢測(cè)到來自于會(huì)話請(qǐng)求實(shí)體 的會(huì)話請(qǐng)求攜帶有認(rèn)證信息時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲得所述會(huì) 話密鑰。
相應(yīng)地,本發(fā)明^C出了一種簽名代理實(shí)體,包括
檢測(cè)單元,用于檢測(cè)來自于會(huì)話請(qǐng)求實(shí)體的簽名服務(wù)請(qǐng)求是否攜帶有認(rèn)證 信息;
會(huì)話密鑰獲取單元,用于在所述檢測(cè)單元檢測(cè)到來自于會(huì)話請(qǐng)求實(shí)體的簽 名服務(wù)請(qǐng)求攜帶有認(rèn)證信息時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲取會(huì)話密 鑰;
票據(jù)生成單元,用于基于所述會(huì)話密鑰生成對(duì)應(yīng)所述簽名服務(wù)請(qǐng)求的簽名 票據(jù);
發(fā)送單元,用于向所述會(huì)話請(qǐng)求實(shí)體發(fā)送所述簽名票據(jù)。
進(jìn)一步地,本發(fā)明還提出了一種P2P網(wǎng)絡(luò),其特征在于,所述P2P網(wǎng)絡(luò)包 括會(huì)話請(qǐng)求實(shí)體,會(huì)話目標(biāo)實(shí)體及認(rèn)證服務(wù)器,其中
會(huì)話請(qǐng)求實(shí)體,用于向所述認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求,并在接收到來自于所述認(rèn)證服務(wù)器的認(rèn)證響應(yīng)后,從所述認(rèn)證響應(yīng)中獲取會(huì)話密鑰,以及用于向 所述會(huì)話目標(biāo)實(shí)體發(fā)送攜帶有認(rèn)證信息的會(huì)話請(qǐng)求。
認(rèn)證服務(wù)器,用于在接收到來自于所述會(huì)話請(qǐng)求實(shí)體的所述認(rèn)證請(qǐng)求后, 對(duì)所述會(huì)話請(qǐng)求實(shí)體以及所述會(huì)話目標(biāo)實(shí)體進(jìn)行認(rèn)證,認(rèn)證通過后,生成所述 會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰,并用于向所述會(huì)話請(qǐng)求實(shí)體發(fā)
送攜帶有所述^S舌密鑰的認(rèn)證響應(yīng);
會(huì)話目標(biāo)實(shí)體,用于在4企測(cè)到來自于所述會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求攜帶有 認(rèn)證信息時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲取所述會(huì)話密鑰。
實(shí)施本發(fā)明實(shí)施例,在P2P網(wǎng)絡(luò)中增加認(rèn)證服務(wù)器,通過所述認(rèn)證服務(wù)器 對(duì)會(huì)話請(qǐng)求實(shí)體以及會(huì)話目標(biāo)實(shí)體進(jìn)行認(rèn)證,認(rèn)證通過后,生成會(huì)話請(qǐng)求實(shí)體 與會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰,所述會(huì)話請(qǐng)求實(shí)體以及所述會(huì)話目標(biāo)實(shí)體基于該 會(huì)話密鑰進(jìn)行會(huì)話,在P2P網(wǎng)絡(luò)中,保證了會(huì)話密鑰協(xié)商過程的安全性,實(shí)現(xiàn) 了在P2P網(wǎng)絡(luò)中提供集中、安全、易管理的會(huì)話密鑰協(xié)商機(jī)制。
圖1是現(xiàn)有技術(shù)的P2P網(wǎng)絡(luò)的一種典型結(jié)構(gòu)示意圖; 圖2是本發(fā)明實(shí)施例的一種P2P網(wǎng)絡(luò)組成示意圖; 圖3是本發(fā)明實(shí)施例的一種認(rèn)證服務(wù)器的組成示意圖; 圖4是本發(fā)明實(shí)施例的一種會(huì)話請(qǐng)求實(shí)體的組成示意圖; 圖5是本發(fā)明實(shí)施例的一種會(huì)話目標(biāo)實(shí)體的組成示意圖; 圖6是本發(fā)明實(shí)施例的一種簽名代理實(shí)體的組成示意圖; 圖7是本發(fā)明實(shí)施例的會(huì)話密鑰協(xié)商流程示意圖; 圖8是本發(fā)明實(shí)施例的P2P節(jié)點(diǎn)加入流程示意圖; 圖9是本發(fā)明的用戶注冊(cè)第一實(shí)施例流程示意圖; 圖IO是本發(fā)明的用戶注冊(cè)第二實(shí)施例流程示意圖; 圖11是本發(fā)明實(shí)施例的呼叫流程示意圖;圖12是本發(fā)明實(shí)施例的服務(wù)注冊(cè)流程示意圖13是本發(fā)明實(shí)施例的用戶申請(qǐng)?jiān)鲋禈I(yè)務(wù)流程示意圖14是本發(fā)明實(shí)施例的VM語音服務(wù)主叫留言流程示意圖15是本發(fā)明實(shí)施例的VM語音服務(wù)被叫收聽流程示意圖。
具體實(shí)施例方式
以下本發(fā)明實(shí)施例所要描述的P2P網(wǎng)絡(luò)為基于SIP協(xié)議的P2P網(wǎng)絡(luò),本技 術(shù)領(lǐng)域的技術(shù)人員應(yīng)該明白其僅是一種具體的實(shí)現(xiàn)方式,基于其它現(xiàn)有的乃至 于將來可能出現(xiàn)的新的協(xié)議實(shí)現(xiàn)本發(fā)明實(shí)施例所述的P2P網(wǎng)絡(luò)都應(yīng)該屬于本發(fā) 明所要求的保護(hù)范圍。為了使本發(fā)明的技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,下面結(jié) 合附圖并舉實(shí)施例對(duì)本發(fā)明實(shí)施例進(jìn)行進(jìn)一步詳細(xì)說明。
參考圖2,為本發(fā)明實(shí)施例的一種P2P網(wǎng)絡(luò)組成示意圖。如圖所示,所述 P2P網(wǎng)絡(luò)主要包括會(huì)話請(qǐng)求實(shí)體32,會(huì)話目標(biāo)實(shí)體33及認(rèn)證服務(wù)器31,其中
會(huì)話請(qǐng)求實(shí)體32,用于向所述認(rèn)證服務(wù)器31發(fā)送認(rèn)證請(qǐng)求,并在接收到來 自于所述認(rèn)證服務(wù)器31的認(rèn)證響應(yīng)后,從所述認(rèn)證響應(yīng)中獲取會(huì)話密鑰,以及 用于向所述會(huì)話目標(biāo)實(shí)體33發(fā)送攜帶有認(rèn)證信息的會(huì)話請(qǐng)求。
認(rèn)證服務(wù)器31,用于在接收到來自于所述會(huì)話請(qǐng)求實(shí)體32的所述認(rèn)證請(qǐng)求 后,對(duì)所述會(huì)話請(qǐng)求實(shí)體32以及所述會(huì)話目標(biāo)實(shí)體33進(jìn)行認(rèn)證,認(rèn)證通過后, 生成所述會(huì)話請(qǐng)求實(shí)體32與所迷會(huì)話目標(biāo)實(shí)體33的會(huì)話密鑰,并用于向所述 會(huì)話請(qǐng)求實(shí)體32發(fā)送攜帶有所述會(huì)話密鑰的認(rèn)證響應(yīng)。
會(huì)話目標(biāo)實(shí)體33,用于在檢測(cè)到來自于所述會(huì)話請(qǐng)求實(shí)體32的會(huì)話請(qǐng)求攜 帶有認(rèn)證信息時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲取所述會(huì)話密鑰。
參考圖3,是本發(fā)明實(shí)施例的一種認(rèn)證服務(wù)器的組成示意圖。所述認(rèn)證服務(wù) 器主要包括
認(rèn)證請(qǐng)求接收單元311 ,用于接收來自會(huì)話請(qǐng)求實(shí)體32的認(rèn)證請(qǐng)求。 此處,所述認(rèn)證請(qǐng)求中攜帶有會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息及會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息,其中所述標(biāo)識(shí)信息用于在P2P網(wǎng)絡(luò)中唯一標(biāo)識(shí)P2P節(jié)點(diǎn)。具體實(shí)現(xiàn)時(shí), 所述認(rèn)證請(qǐng)求消息報(bào)文包含如下信息
IDa||IDb||N
一IDa:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
—IDb:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
—N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)(后續(xù)消息中此數(shù)的含義相同)。
認(rèn)證單元312,用于在所述認(rèn)證請(qǐng)求接收單元接收到所述認(rèn)證請(qǐng)求后,對(duì)所 述會(huì)話請(qǐng)求實(shí)體以及會(huì)話目標(biāo)實(shí)體進(jìn)行認(rèn)證,認(rèn)證通過后,生成所述會(huì)話請(qǐng)求 實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰。
具體實(shí)施時(shí),所述認(rèn)證請(qǐng)求中攜帶有會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息及會(huì)話目標(biāo)實(shí) 體標(biāo)識(shí)信息,所述認(rèn)證單元312主要包括
標(biāo)識(shí)信息獲取單元3121,用于從所述認(rèn)證請(qǐng)求接收單元311所接收到的認(rèn) 證請(qǐng)求中獲取所述會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息及會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息。
認(rèn)證執(zhí)行單元3122,用于根據(jù)所述會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息、所述會(huì)話目標(biāo) 實(shí)體標(biāo)識(shí)信息判斷所述會(huì)話請(qǐng)求實(shí)體32和所述會(huì)話目標(biāo)實(shí)體33是否為已登記 P2P實(shí)體,如果判斷結(jié)果為是,則生成所述會(huì)話請(qǐng)求實(shí)體32與所述會(huì)話目標(biāo)實(shí) 體33的會(huì)話密鑰。
此處,具體實(shí)施時(shí),在所述認(rèn)證服務(wù)器中保存有屬于本認(rèn)證服務(wù)器的各個(gè) P2P實(shí)體標(biāo)識(shí)信息以及相應(yīng)的認(rèn)證服務(wù)器與P2P實(shí)體的共享密鑰。具體判斷所 述會(huì)話請(qǐng)求實(shí)體32是否為已登記P2P實(shí)體時(shí),通過查找認(rèn)證服務(wù)器中是否保存 有會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息(IDa),來確定會(huì)話請(qǐng)求實(shí)體是否為 已登記P2P實(shí)體,同理,通過查找認(rèn)證服務(wù)器中是否保存有會(huì)話目標(biāo)實(shí)體的會(huì) 話目標(biāo)實(shí)體標(biāo)識(shí)信息(IDb),來確定會(huì)話目標(biāo)實(shí)體是否為已登記P2P實(shí)體,只 有當(dāng)所述認(rèn)證執(zhí)行單元3122確定所述會(huì)話請(qǐng)求實(shí)體32和所述會(huì)話目標(biāo)實(shí)體33 都屬于已登記P2P實(shí)體時(shí),認(rèn)證執(zhí)行單元3122才會(huì)分配相應(yīng)的所述會(huì)話請(qǐng)求實(shí)體32與所述會(huì)話目標(biāo)實(shí)體33的會(huì)話密鑰。
認(rèn)證票據(jù)生成單元3123,用于以與所述會(huì)話請(qǐng)求實(shí)體32的共享密鑰生成第 一認(rèn)證票據(jù),以及用于以與所述會(huì)話目標(biāo)實(shí)體33的共享密鑰生成第二認(rèn)證票據(jù)。
此處,具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下
EKa[Ks|| IDb||N||T||L]
一Ks:會(huì)話請(qǐng)求實(shí)體與會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰
一IDb:會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體的響應(yīng)
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKa表示以會(huì)話請(qǐng)求實(shí)體與認(rèn)證服務(wù)器的共享密鑰Ka加密[Ks (I IDb(|
所述第二認(rèn)證票據(jù)如下
EKb[Ks II IDa ||T||L]
—Ks:會(huì)話請(qǐng)求實(shí)體與會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰
一IDa:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
—T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKb表示以會(huì)話目標(biāo)實(shí)體與認(rèn)證服務(wù)器的共享密鑰Kb加密[Ks II IDb||
認(rèn)證響應(yīng)發(fā)送單元313,用于向所述會(huì)話請(qǐng)求實(shí)體32發(fā)送攜帶有會(huì)話密鑰 的認(rèn)證響應(yīng)。
此處,所述認(rèn)證響應(yīng)中攜帶了所述第一認(rèn)證票據(jù)以及所述第二認(rèn)證票據(jù), 具體實(shí)現(xiàn)時(shí),所述i人-江相應(yīng)包含如下信息
EKa [Ks II IDb II N II T II L]|| EKb [Ks || IDa || T || L]—EKa [Ks II IDb|| N II T II L]為前文描述的第一認(rèn)證票據(jù)
—EKb[Ks II IDa II T || L]為前文描述的第二認(rèn)證票據(jù)
參考圖4,是本發(fā)明實(shí)施例的一種會(huì)話請(qǐng)求實(shí)體的組成示意圖。所述會(huì)話請(qǐng) 求實(shí)體主要包括
認(rèn)證請(qǐng)求單元321,用于向認(rèn)證服務(wù)器31發(fā)送認(rèn)證請(qǐng)求。
此處,所述iU正請(qǐng)求與前文描述的相同,在此不予贅述。
認(rèn)證響應(yīng)接收單元322,用于接收來自于所述認(rèn)證月良務(wù)器31的認(rèn)證響應(yīng)。
此處,所述認(rèn)證響應(yīng)與前文描述的相同,在此不予贅述。
會(huì)話密鑰獲取單元323,用于從所述認(rèn)證響應(yīng)中獲耳又所述會(huì)話密鑰。
此處,具體實(shí)現(xiàn)時(shí),所述會(huì)話密鑰獲取單元323以與所述認(rèn)證服務(wù)器的共 享密鑰Ka解密所述第一認(rèn)證票據(jù)EKa [Ks II IDb || N || T || L],獲取會(huì)話密鑰Ks, 同時(shí),可獲取會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)IDb、隨機(jī)數(shù)N 、時(shí)間戳T以及會(huì)話生命值L。
會(huì)話請(qǐng)求單元324,用于向會(huì)話請(qǐng)求目標(biāo)實(shí)體發(fā)送攜帶有認(rèn)證信息的會(huì)話請(qǐng)求。
此處,所述認(rèn)證信息如下 IdentityA| | Identity-info
其中IdentityA為以會(huì)話密鑰Ks加密會(huì)話請(qǐng)求消息的各字段而生成的認(rèn)證 頭域,Identity-info中攜帶有Ks加密生成IdentityA時(shí)使用的加密算法信息,即 通過Identity-info頭域告知會(huì)話目標(biāo)實(shí)體Ks加密生成IdentityA時(shí)所使用的是何 種算法。
參考圖5,是本發(fā)明實(shí)施例的一種會(huì)話目標(biāo)實(shí)體的組成示意圖。所述會(huì)話目 標(biāo)實(shí)體主要包括
檢測(cè)單元331 ,用于檢測(cè)來自于會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求是否攜帶有認(rèn)證信
自
此處,當(dāng)檢測(cè)單元331檢測(cè)到來自所述會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求為未攜認(rèn)證信息,也即未攜帶IdentityA認(rèn)證頭域時(shí),將直接拒絕該會(huì)話請(qǐng)求并在拒絕 響應(yīng)中告知會(huì)話請(qǐng)求實(shí)體其會(huì)話請(qǐng)求被拒絕的原因?yàn)槲磾y帶IdentityA認(rèn)證頭 域。
會(huì)話密鑰協(xié)商獲得單元332,用于在所述檢測(cè)單元331檢測(cè)到所述以會(huì)話密 鑰加密的會(huì)話請(qǐng)求時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲得所述會(huì)話密鑰。
此處,當(dāng)檢測(cè)單元331檢測(cè)到來自所述會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求中攜帶 IdentityA認(rèn)證頭域時(shí),從會(huì)話請(qǐng)求中所攜帶的Identity-info頭域中獲取加密算法 信息,由于此時(shí)會(huì)話目標(biāo)實(shí)體并不知道與IdentityA認(rèn)證頭域?qū)?yīng)的解密密鑰Ks, 因此會(huì)話密鑰協(xié)商獲得單元332將與會(huì)話請(qǐng)求實(shí)體交互信息,獲取第二認(rèn)證票 據(jù),進(jìn)而根據(jù)會(huì)話目標(biāo)實(shí)體33與所述認(rèn)證服務(wù)器31的共享密鑰Kb解密獲取會(huì) 話密鑰Ks,具體過程在后文中將會(huì)有進(jìn)一步詳細(xì)描述。
參考圖2,為了進(jìn)一步在P2P網(wǎng)絡(luò)中提供資源的完整性保護(hù),本發(fā)明實(shí)施例 還提供了以可信的簽名代理實(shí)體作為資源簽名可信節(jié)點(diǎn)。所述簽名代理實(shí)體34 用于在接收到來自于所述會(huì)話請(qǐng)求實(shí)體32的以所述會(huì)話密鑰加密的簽名服務(wù)請(qǐng) 求后,與所述會(huì)話請(qǐng)求實(shí)體32交互信息,獲取會(huì)話密鑰,生成對(duì)應(yīng)該簽名服務(wù) 請(qǐng)求的簽名票據(jù),并向所述會(huì)話請(qǐng)求實(shí)體32返回該簽名票據(jù)。
此處,所述會(huì)話請(qǐng)求實(shí)體32與所述簽名代理實(shí)體34之間的會(huì)話密鑰和所 述請(qǐng)求實(shí)體32與所述會(huì)話目標(biāo)實(shí)體33之間的會(huì)話密鑰是相同的,與所述會(huì)話 請(qǐng)求實(shí)體32發(fā)送至所述會(huì)話目標(biāo)實(shí)體33的會(huì)話請(qǐng)求類似,所述會(huì)話請(qǐng)求實(shí)體 32發(fā)送至所述簽名代理實(shí)體34的簽名服務(wù)請(qǐng)求攜帶如下認(rèn)證信息信息
IdentityAI |Identity-info
其中IdentityA為以會(huì)話密鑰Ks加密簽名請(qǐng)求消息各字段內(nèi)容而生成的認(rèn) 證頭域,Identity-info中攜帶有Ks加密生成IdentityA時(shí)使用的加密算法信息, 即通過Identity-info頭域告知簽名代理實(shí)體Ks加密生成IdentityA時(shí)所使用的是 何種算法。
與所述會(huì)話目標(biāo)實(shí)體33通過從所述會(huì)話請(qǐng)求實(shí)體32獲得第二認(rèn)證票據(jù)并解密該第二認(rèn)證票據(jù)以獲取會(huì)話密鑰Ks的原理類似,在需要引入所述簽名代理 實(shí)體34的會(huì)話時(shí),所述會(huì)話請(qǐng)求實(shí)體32發(fā)送至所述認(rèn)證服務(wù)器31的會(huì)話請(qǐng)求 中進(jìn)一步攜帶所述簽名代理實(shí)體34的簽名代理實(shí)體標(biāo)識(shí)信息(IDc),進(jìn)而所述 認(rèn)證服務(wù)器31通過查找是否保存有簽名代理實(shí)體34的簽名代理實(shí)體標(biāo)識(shí)信息 (IDc),來確定簽名代理實(shí)體34是否為已登記P2P實(shí)體,進(jìn)而生成第三認(rèn)證票 據(jù),并在認(rèn)^E響應(yīng)中進(jìn)一步攜帶該第三認(rèn)證票據(jù),所述簽名代理實(shí)體34從所述 會(huì)話請(qǐng)求實(shí)體獲得所述第三認(rèn)證票據(jù)并解密該第三認(rèn)證票據(jù)以獲取會(huì)話密鑰 Ks。 一般情況下,所述簽名代理實(shí)體34與所述認(rèn)證服務(wù)器31之間的的密鑰協(xié) 商機(jī)制為基于非對(duì)稱加密算法實(shí)現(xiàn),具體實(shí)現(xiàn)時(shí),所述第三認(rèn)證票據(jù)如下 Ticketac=EKRas[H(EKUc[Ks||IDa||T||L〗)]
—Ks:會(huì)話請(qǐng)求實(shí)體與簽名代理實(shí)體的會(huì)話密鑰
—IDa:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
—T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKUc表示以簽名代理實(shí)體c的公鑰加密[KsllIDallTIIL]
—EKRas[H(EKUc[KsllIDallTHL)]表示以認(rèn)證服務(wù)器AS的私鑰簽名 (EKUc[Ks||IDa||T||L)
所述簽名代理實(shí)體34在接收到攜帶有IdentityA||Identity-info的簽名服務(wù)請(qǐng) 求后,從所述會(huì)話請(qǐng)求實(shí)體32獲得的第三認(rèn)證票據(jù)Ticketac,并解密該第三認(rèn)證 票據(jù),以獲得所述會(huì)話密鑰Ks,進(jìn)而以Identity-info頭域中所標(biāo)識(shí)的算法以及會(huì) 話密鑰Ks解密IdentityA,完成對(duì)會(huì)話請(qǐng)求實(shí)體32的身份合法性驗(yàn)證,并以自 身的私鑰對(duì)會(huì)話請(qǐng)求實(shí)體32的注冊(cè)信息簽名生成Identity頭域,并帶上 Identity-info頭域標(biāo)識(shí)證書的位置,用戶注冊(cè)消息、Identity頭域和Identity-info 頭域三部分構(gòu)成Resource Ticket資源簽名票據(jù)。具體實(shí)現(xiàn)時(shí),參考圖6,是本發(fā) 明實(shí)施例的一種簽名代理實(shí)體的組成示意圖。本發(fā)明所述簽名代理實(shí)體34包括
檢測(cè)單元341 ,用于檢測(cè)來自于會(huì)話請(qǐng)求實(shí)體的簽名服務(wù)請(qǐng)求是否攜帶有認(rèn)證信息。
會(huì)話密鑰獲取單元342,用于在所述檢測(cè)單元檢測(cè)到來自于會(huì)話請(qǐng)求實(shí)體的 簽名服務(wù)請(qǐng)求攜帶有認(rèn)證信息時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲取會(huì)話 密鑰。
票據(jù)生成單元343,用于基于所述會(huì)話密鑰生成對(duì)應(yīng)所述簽名服務(wù)請(qǐng)求的簽 名票據(jù)。
發(fā)送單元344,用于向所述會(huì)話請(qǐng)求實(shí)體返回該簽名票據(jù)。
參考圖7,是本發(fā)明實(shí)施例的會(huì)話密鑰協(xié)商流程示意圖。該會(huì)話密鑰協(xié)商流 程主要為會(huì)話請(qǐng)求實(shí)體、認(rèn)證服務(wù)器以及會(huì)話目標(biāo)實(shí)體之間通信交互的過程, 認(rèn)證服務(wù)器保存和管理著P2P節(jié)點(diǎn)的密鑰,在本實(shí)施例中該類密鑰為各個(gè)P2P 節(jié)點(diǎn)與認(rèn)證服務(wù)器的共享密鑰,具體流程圖說明如下
步驟s50101,會(huì)話請(qǐng)求實(shí)體向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求。
此處,所述認(rèn)證請(qǐng)求中攜帶有會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息及會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)
信息,其中所述標(biāo)識(shí)信息用于在P2P網(wǎng)絡(luò)中唯一標(biāo)識(shí)P2P節(jié)點(diǎn)。具體實(shí)現(xiàn)時(shí),
所述認(rèn)證請(qǐng)求消息報(bào)文包含如下信息 IDa||IDb||N
—IDa:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
一IDb:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)(后續(xù)消息中此數(shù)的含義相同)。
步驟s50102,認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體以及會(huì)話目標(biāo)實(shí)體進(jìn)行認(rèn)證,認(rèn) 證通過后,生成所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰,并以共享 密鑰Ka加密所述會(huì)話密鑰以生成第一認(rèn)證票據(jù),以共享密鑰Kb加密所述會(huì)話 密鑰以生成第二認(rèn)證票據(jù)。
此處,所述共享密鑰Ka為所述會(huì)話請(qǐng)求實(shí)體與所述認(rèn)證服務(wù)器的共享密鑰,所述共享密鑰Kb為所述會(huì)話目標(biāo)實(shí)體與所述認(rèn)證服務(wù)器的共享密鑰,具體實(shí)施 時(shí),在所述認(rèn)證服務(wù)器中保存有屬于本認(rèn)證服務(wù)器的各個(gè)P2P實(shí)體標(biāo)識(shí)信息以 及相應(yīng)的認(rèn)證服務(wù)器與P2P實(shí)體的共享密鑰。所述認(rèn)證服務(wù)器對(duì)所述會(huì)話請(qǐng)求 實(shí)體進(jìn)行認(rèn)證為通過查找認(rèn)證服務(wù)器中是否保存有會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求 實(shí)體標(biāo)識(shí)信息(IDa),來確定會(huì)話請(qǐng)求實(shí)體是否為已登記P2P實(shí)體,同理,通 過查找認(rèn)證服務(wù)器中是否保存有會(huì)話目標(biāo)實(shí)體的會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息(IDb ), 來確定會(huì)話目標(biāo)實(shí)體是否為已登記P2P實(shí)體,只有當(dāng)確定所述會(huì)話請(qǐng)求實(shí)體和 所述會(huì)話目標(biāo)實(shí)體都屬于已登記P2P實(shí)體時(shí),認(rèn)證服務(wù)器才會(huì)分配相應(yīng)的所述 會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰Ks。 具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下 EKa[KS||IDb||N||T||L]
一Ks:會(huì)話請(qǐng)求實(shí)體與會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰
一IDb:會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體的響應(yīng)
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKa表示以會(huì)話請(qǐng)求實(shí)體與認(rèn)證服務(wù)器的共享密鑰Ka加密[Ks II IDb||
N||T||L〗
所述第二認(rèn)證票據(jù)如下
EKb[KS||IDa||T||L]
一Ks:會(huì)話請(qǐng)求實(shí)體與會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰
一IDa:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKb表示以會(huì)話目標(biāo)實(shí)體與認(rèn)證服務(wù)器的共享密鑰Kb加密[Ks II IDbl|
N||T||L]s50103,認(rèn)證服務(wù)器向所述會(huì)話請(qǐng)求實(shí)體發(fā)送認(rèn)證響應(yīng),所述認(rèn)證響應(yīng)攜帶 如下信息
EKa [Ks II IDb II N II T II L]|| EKb [Ks || IDa || T || L] 其中
—EKa [Ks II IDb II N II T II L]為前文描述的第一認(rèn)證票據(jù)
—EKb[Ks II IDa II T || L]為前文描述的第二認(rèn)證票據(jù)
s50104,會(huì)話請(qǐng)求實(shí)體接收到所述認(rèn)證響應(yīng)后,以共享密鑰Ka解密所述第 一認(rèn)證票據(jù)EKa [Ks II IDb II N II T II L],獲取會(huì)話密鑰Ks。
此處,解密所述第一認(rèn)證票據(jù),在獲取會(huì)話密鑰Ks的同時(shí),還將獲取會(huì)話 目標(biāo)實(shí)體標(biāo)識(shí)IDb、隨機(jī)數(shù)N 、時(shí)間戳T以及會(huì)話生命值L,其中通過獲取會(huì) 話目標(biāo)實(shí)體標(biāo)識(shí)IDb,可確定會(huì)話目標(biāo)實(shí)體的身份。
步驟S50105,所述會(huì)話請(qǐng)求實(shí)體向所述會(huì)話目標(biāo)實(shí)體發(fā)送攜帶有認(rèn)證信息 的會(huì)話請(qǐng)求。所述認(rèn)證信息如下 IdentityA || Identity-info
其中IdentityA為以會(huì)話密鑰Ks加密會(huì)話請(qǐng)求內(nèi)容而生成的認(rèn)證頭域, Identity-info中攜帶有Ks加密生成IdentityA時(shí)使用的加密算法信息,即通過 Identity-info頭域告知會(huì)話目標(biāo)實(shí)體Ks加密生成IdentityA時(shí)所使用的是何種算 法。
步驟s50106,所述會(huì)話目標(biāo)實(shí)體檢測(cè)到來自所述會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求 攜帶有所述認(rèn)證信息時(shí),向所述會(huì)話目標(biāo)實(shí)體發(fā)送票據(jù)獲取請(qǐng)求。
此處,具體實(shí)現(xiàn)時(shí),通過Subscribe訂閱消息攜帶票據(jù)獲取請(qǐng)求內(nèi)容。
步驟s50107,所述會(huì)話請(qǐng)求實(shí)體接收到來自所述會(huì)話目標(biāo)實(shí)體的票據(jù)獲取 請(qǐng)求后,向所述會(huì)話請(qǐng)求實(shí)體發(fā)送所述第二認(rèn)證票據(jù)。
此處,具體實(shí)現(xiàn)時(shí),通過Notify通告消息攜帶所述第二認(rèn)證票據(jù)。
訂閱消息(Subscribe) /通告消息(Notify)是因特網(wǎng)工程任務(wù)組(IETF)的SIP工作組通過對(duì)基本的會(huì)話啟動(dòng)協(xié)議進(jìn)行擴(kuò)充,提出了基于會(huì)話啟動(dòng)協(xié)議的事件 通告機(jī)制規(guī)范,本發(fā)明實(shí)施例基于該事件通告機(jī)制實(shí)現(xiàn)認(rèn)證票據(jù)的訂閱和通告,
本文后續(xù)描述中出現(xiàn)訂閱消息(Subscribe)/通告消息(Notify)時(shí),其功能目的 是相同或類似的。本領(lǐng)域的技術(shù)人員應(yīng)該明確所述步驟s50105、所述步驟s50106 以及所述步驟s50107從總體上實(shí)現(xiàn)了將以會(huì)話密鑰Ks加密的會(huì)話請(qǐng)求以及攜 帶會(huì)話密鑰Ks的認(rèn)證票據(jù)告知會(huì)話目標(biāo)實(shí)體,為此,在實(shí)現(xiàn)該基本目的的前提 下,其他實(shí)現(xiàn)方式當(dāng)然也屬于本發(fā)明要求的保護(hù)范圍。
s50108,會(huì)話目標(biāo)實(shí)體以共享密鑰Kb解密第二認(rèn)證票據(jù),獲取會(huì)話密鑰。
此處,解密所述第二認(rèn)證票據(jù),獲取會(huì)話密鑰Ks同時(shí),還可獲取會(huì)話請(qǐng)求 實(shí)體標(biāo)識(shí)IDa、時(shí)間戳T以及會(huì)話生命值L,其中通過獲取會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí) IDa可使會(huì)話目標(biāo)實(shí)體相信所述第二認(rèn)證票據(jù)是認(rèn)證服務(wù)器驗(yàn)證會(huì)話請(qǐng)求實(shí)體 身份后發(fā)送給會(huì)話請(qǐng)求實(shí)體的,也即明確了所述會(huì)話請(qǐng)求實(shí)體為通過認(rèn)證服務(wù) 器身份認(rèn)證的P2P實(shí)體。
s50109,會(huì)話目標(biāo)實(shí)體向會(huì)話請(qǐng)求實(shí)體發(fā)送確認(rèn)響應(yīng)(Identity)。 此處,所述確認(rèn)響應(yīng)也為攜帶有Identity頭域,即為Ks加密的消息,保證 了會(huì)話的安全性。
參考圖8,是本發(fā)明實(shí)施例的P2P節(jié)點(diǎn)加入流程示意圖。在本實(shí)施例子中, 節(jié)點(diǎn)E為會(huì)話請(qǐng)求實(shí)體,請(qǐng)求加入P2P網(wǎng)絡(luò),節(jié)點(diǎn)D為會(huì)話目標(biāo)實(shí)體,負(fù)責(zé)對(duì) 節(jié)點(diǎn)E進(jìn)行加入注冊(cè),AS為認(rèn)證服務(wù)器,本實(shí)施例所描述的是一P2P實(shí)體加入 注冊(cè)到P2P網(wǎng)絡(luò)的過程,下面進(jìn)行詳細(xì)描述。
步驟s50201 ,節(jié)點(diǎn)E向節(jié)點(diǎn)G發(fā)送Register注冊(cè)請(qǐng)求。
步驟s50202,節(jié)點(diǎn)G發(fā)現(xiàn)節(jié)點(diǎn)E不屬于自身負(fù)責(zé)注冊(cè)的P2P實(shí)體,向節(jié)點(diǎn) E返回302重定向消息。
此處,在所述302重定向消息中將告知節(jié)點(diǎn)E應(yīng)該向哪個(gè)P2P實(shí)體請(qǐng)求注冊(cè)。
步驟s50203 ,節(jié)點(diǎn)E向節(jié)點(diǎn)D發(fā)送Register注冊(cè)請(qǐng)求。步驟s50204,節(jié)點(diǎn)D向節(jié)點(diǎn)E發(fā)送401 Unathorized未i人證響應(yīng),告知節(jié)點(diǎn) E下次帶上認(rèn)證票據(jù)信息再來注冊(cè)。
步驟s50205,節(jié)點(diǎn)E向節(jié)點(diǎn)D發(fā)送認(rèn)證請(qǐng)求,所述認(rèn)證請(qǐng)求攜帶如下信息 IDe II IDd II N
一IDe:節(jié)點(diǎn)E的標(biāo)識(shí)信息 —IDd:節(jié)點(diǎn)D的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止才艮文重發(fā)
步驟s50206 ,認(rèn)證服務(wù)器對(duì)節(jié)點(diǎn)E以及節(jié)點(diǎn)D進(jìn)行認(rèn)證,認(rèn)證通過后, 生成節(jié)點(diǎn)E與節(jié)點(diǎn)D的會(huì)話密鑰Ks,并以共享密鑰Ke加密所述會(huì)話密鑰Ks 以生成第一認(rèn)證票據(jù),以共享密鑰Kd加密所述會(huì)話密鑰以生成第二認(rèn)證票據(jù)
具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下 EKe[Ks||IDd||N||T||L]
—Ks:節(jié)點(diǎn)E與節(jié)點(diǎn)D的會(huì)話密鑰
一IDd:節(jié)點(diǎn)D的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體的響應(yīng)
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKe表示以節(jié)點(diǎn)E與認(rèn)證服務(wù)器的共享密鑰Ke加密[Ks || IDd|| N || T ||
所述第二認(rèn)證票據(jù)如下
EKd[KS||IDe||T|| L]
—Ks:節(jié)點(diǎn)E與節(jié)點(diǎn)D的會(huì)話密鑰 一IDe:節(jié)點(diǎn)D的標(biāo)識(shí)信息 —T:時(shí)間戳一L:會(huì)話密鑰有效期
—EKd表示以節(jié)點(diǎn)D與認(rèn)證服務(wù)器的共享密鑰Kd加密[Ks II IDe || N || T ||
L]
步驟s50207,認(rèn)證服務(wù)器向節(jié)點(diǎn)E發(fā)送認(rèn)證響應(yīng),所述認(rèn)證響應(yīng)攜帶如下 "息:
EKe [Ks II IDd li N II T II L] ||EKd [Ks || IDe || T || L] 其中
—EKe [Ks II IDd II N li TII L]為前文描述的第一認(rèn)證票據(jù) —EKd [Ks i| IDe ||T || L]為前文描述的第二認(rèn)證票據(jù) 步驟s50208,節(jié)點(diǎn)E以共享密鑰Ke解密第一認(rèn)證票據(jù),獲取會(huì)話密鑰Ks。 步驟s50209,節(jié)點(diǎn)E向節(jié)點(diǎn)D發(fā)送攜帶有IdentityE的Register注冊(cè)請(qǐng)求。 步驟s50210,節(jié)點(diǎn)D向節(jié)點(diǎn)E發(fā)送Subscribe訂閱消息,請(qǐng)求獲取第二認(rèn)證
票據(jù)(EKd [KS|| IDe||T||L])。
步驟s502U,節(jié)點(diǎn)E向節(jié)點(diǎn)D發(fā)送攜帶有所述第二認(rèn)證票據(jù)(EKd [Ks||
IDellTHL])的Notify通告消息。
步驟S50212,節(jié)點(diǎn)D以共享密鑰Kd解密第二認(rèn)證票據(jù),獲取會(huì)話密鑰Ks,
并以會(huì)話密鑰Ks解密IdentityE,獲取注冊(cè)請(qǐng)求的內(nèi)容,接受節(jié)點(diǎn)E的加入注冊(cè)請(qǐng)求。
步驟s50213,節(jié)點(diǎn)D向節(jié)點(diǎn)E發(fā)送攜帶有IdentityD的加入確認(rèn)響應(yīng)200 OK, 表示節(jié)點(diǎn)D允許節(jié)點(diǎn)E加入,節(jié)點(diǎn)E接收到確認(rèn)響應(yīng)200 OK,會(huì)根據(jù)IdentityD 對(duì)節(jié)點(diǎn)D身份進(jìn)行驗(yàn)證。
步驟s50214,節(jié)點(diǎn)D向節(jié)點(diǎn)E發(fā)送Register IdentityD消息,將路由信息告 知節(jié)點(diǎn)E,節(jié)點(diǎn)E接收到Register IdentityD消息,會(huì)根據(jù)IdentityD對(duì)節(jié)點(diǎn)D身 份進(jìn)行馬h正。
步驟s50215,節(jié)點(diǎn)E向節(jié)點(diǎn)D發(fā)送確認(rèn)響應(yīng)200OK IdentityD。參考圖9,是本發(fā)明的用戶注冊(cè)第一實(shí)施例流程示意圖。在本實(shí)施例中,用 戶A為會(huì)話請(qǐng)求實(shí)體,請(qǐng)求注冊(cè)加入P2P網(wǎng)絡(luò),節(jié)點(diǎn)P為會(huì)話目標(biāo)實(shí)體,負(fù)責(zé) 對(duì)用戶A進(jìn)行加入注冊(cè),AS為認(rèn)證服務(wù)器,本實(shí)施例所描述的是用戶加入注冊(cè) 到P2P網(wǎng)絡(luò)的過程,為了防止惡意節(jié)點(diǎn)對(duì)注冊(cè)資源的修改,本流程中引入了第 三方可信簽名服務(wù)代理實(shí)體做資源簽名的完整性保護(hù),在本實(shí)施例中節(jié)點(diǎn)C為 所述簽名服務(wù)代理實(shí)體,下面進(jìn)行本實(shí)施例流程進(jìn)行詳細(xì)描述。
步驟s50301 ,用戶A向節(jié)點(diǎn)E發(fā)送Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)點(diǎn)。
步驟s50302,節(jié)點(diǎn)E發(fā)現(xiàn)自身不是用戶A的資源保存節(jié)點(diǎn),向用戶A發(fā)送 302重定向消息,指示用戶下次應(yīng)當(dāng)向誰發(fā)送Register請(qǐng)求。
步驟s50303,用戶A根據(jù)節(jié)點(diǎn)E的302重定向消息的指示,向節(jié)點(diǎn)G發(fā)送 Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)點(diǎn)。
步驟s50304,節(jié)點(diǎn)G仍然發(fā)現(xiàn)自身不是用戶A的資源保存節(jié)點(diǎn),向用戶A 發(fā)送302重定向消息,指示用戶下次應(yīng)當(dāng)向誰發(fā)送Register請(qǐng)求。
步驟s50305,用戶A才艮據(jù)節(jié)點(diǎn)G的302重定向消息的指示,向節(jié)點(diǎn)P發(fā)送 Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)點(diǎn)。
步驟s50306,節(jié)點(diǎn)P發(fā)現(xiàn)自身保存有用戶A的資源,即節(jié)點(diǎn)P為負(fù)責(zé)用戶 A注冊(cè)的節(jié)點(diǎn),因此向用戶A發(fā)送確認(rèn)響應(yīng)200OK。
步驟s50307,用戶A向節(jié)點(diǎn)C發(fā)送Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)
占
/"、 o
步驟s50308,節(jié)點(diǎn)C發(fā)現(xiàn)自身保存有用戶A的資源,即節(jié)點(diǎn)A為自身負(fù)責(zé) 簽名服務(wù)的用戶,節(jié)點(diǎn)C向用戶A發(fā)送確認(rèn)響應(yīng)200 0K。
步驟s50309,用戶A向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求,所述認(rèn)證請(qǐng)求攜帶如下 信息
IDa|| IDp|| IDc||N一IDa:用戶A的標(biāo)識(shí)信息 一IDP:節(jié)點(diǎn)P的標(biāo)識(shí)信息 一IDc:節(jié)點(diǎn)C的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
步驟s50310,認(rèn)證服務(wù)器對(duì)用戶A、節(jié)點(diǎn)P以及節(jié)點(diǎn)C進(jìn)行認(rèn)證,認(rèn)證通 過后,生成用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)話密鑰Ks,并以共享密鑰Ka加密所 述會(huì)話密鑰Ks以生成第一認(rèn)證票據(jù),以共享密鑰Kp加密所述會(huì)話密鑰以生成 第二認(rèn)證票據(jù),基于非對(duì)稱密鑰機(jī)制生成第三認(rèn)證票據(jù)。
具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下 EKa[Ks II IDp||N||T|| L]
一Ks:用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)話密鑰
一IDp:節(jié)點(diǎn)P的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體的響應(yīng)
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—Ejca表示以用戶與認(rèn)證服務(wù)器的共享密鑰Ka力口密[Ks II IDp|| N || T ||
L]
所述第二認(rèn)證票據(jù)如下
EKp[KS||IDa||T||L]
—Ks:用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)話密鑰
—IDa:用戶A的標(biāo)識(shí)信息
—T:時(shí)間戳
一L:會(huì)話密鑰有效期
—E"表示以節(jié)點(diǎn)P與認(rèn)證服務(wù)器的共享密鑰Kp加密[Ks II IDa|| T || L]Ticketac=EKRas[H(EKUc[Ks||IDa||T||L])]
一Ks:會(huì)話請(qǐng)求實(shí)體與會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰
一IDa:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
一EKUc表示以簽名代理實(shí)體節(jié)點(diǎn)C的公鑰加密[KsllIDallTIIL]
一EKRas[H(EKUc[KsllIDallTHL)]表示以認(rèn)證服務(wù)器AS的私鑰簽名 (EKUc[Ks||IDa||T||L;>
步驟s50311,用戶A以共享密鑰Ka解密所述第一認(rèn)證票據(jù),獲取會(huì)話密 鑰Ks。
步驟s50312,用戶A向節(jié)點(diǎn)C發(fā)送攜帶有IdentityA的簽名服務(wù)請(qǐng)求,簽名 服務(wù)請(qǐng)求中攜帶有用戶A對(duì)節(jié)點(diǎn)P的用戶注冊(cè)信息(需要簽名保護(hù)的對(duì)象)。
步驟s50313,節(jié)點(diǎn)C向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取第三認(rèn) 證票據(jù)(TicketafEKRas[H(EKUc[KsllIDallTIIL])])。
步驟s50314,用戶A向節(jié)點(diǎn)C發(fā)送攜帶有所述第三認(rèn)證票據(jù)(EKd [Ks|| IDellTHL])的Notify通告消息。
步驟s50315,節(jié)點(diǎn)C解密所述第三認(rèn)證票據(jù),獲取會(huì)話密鑰Ks,并以會(huì)話 密鑰Ks解密IdentityA,完成對(duì)用戶A的的身份合法性驗(yàn)證,并以自身的私鑰對(duì) 用戶注冊(cè)信息簽名生成Identity頭域,并帶上Identity-info頭域標(biāo)識(shí)證書的位置, 用戶注冊(cè)消息、Identity頭域和Identity-info頭域三部分構(gòu)成Resource Ticket資源 簽名票據(jù)。
步驟s50316,節(jié)點(diǎn)C向用戶A發(fā)送攜帶有Resource Ticket資源簽名票據(jù)的 確認(rèn)響應(yīng)200 OK,其中Resource Ticket以隧道方式包含在確認(rèn)響應(yīng)200 OK消 息中。
步驟s50317,用戶A向節(jié)點(diǎn)P發(fā)送攜帶有IdentityA以及Resource Ticket的注冊(cè)請(qǐng)求。
步驟s50318,節(jié)點(diǎn)P向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取第二認(rèn)證 票據(jù)EKp[Ksll闊TliL])。
步驟s50319,用戶A向節(jié)點(diǎn)P發(fā)送攜帶有所述第二認(rèn)證票據(jù)(EKp [Ks || IDa|| TII L])的Notify通告消息。
步驟s50320,節(jié)點(diǎn)P以共享密鑰Kp解密所述第二認(rèn)證票據(jù),獲取會(huì)話密鑰 Ks,并以會(huì)話密鑰Ks解密IdentityA,獲取注冊(cè)請(qǐng)求的內(nèi)容,接受用戶A的加 入注冊(cè)請(qǐng)求。
步驟s50321,節(jié)點(diǎn)P向用戶A發(fā)送確認(rèn)響應(yīng)200OK IdentityP。
參考圖10,是本發(fā)明的用戶注冊(cè)第二實(shí)施例流程示意圖。本實(shí)施例與本發(fā) 明的用戶注冊(cè)第一實(shí)施例的不同之處在于用戶A查詢資源保存節(jié)點(diǎn)是通過其代 理節(jié)點(diǎn)E實(shí)現(xiàn)的,下面進(jìn)行本實(shí)施例流程進(jìn)行詳細(xì)描述。
步驟s50401,用戶A向節(jié)點(diǎn)E發(fā)送Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)點(diǎn)。
步驟s50402,節(jié)點(diǎn)E發(fā)現(xiàn)自身不是用戶A的資源保存節(jié)點(diǎn),因此代理用戶 A向節(jié)點(diǎn)G發(fā)送Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)點(diǎn)。
步驟s50403,節(jié)點(diǎn)G仍然發(fā)現(xiàn)自身不是用戶A的資源保存節(jié)點(diǎn),向節(jié)點(diǎn)E 發(fā)送302重定向消息,指示節(jié)點(diǎn)E下次應(yīng)當(dāng)向誰發(fā)送Register請(qǐng)求。
步驟s50404,節(jié)點(diǎn)E根據(jù)節(jié)點(diǎn)G的302重定向消息的指示,向節(jié)點(diǎn)P發(fā)送 Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)點(diǎn)。
步驟s50405,節(jié)點(diǎn)P發(fā)現(xiàn)自身保存有用戶A的資源,即節(jié)點(diǎn)P為負(fù)責(zé)用戶 A注冊(cè)的節(jié)點(diǎn),因此向節(jié)點(diǎn)E發(fā)送確認(rèn)響應(yīng)200OK。
步驟s50406,節(jié)點(diǎn)E向用戶A發(fā)送確認(rèn)響應(yīng)200 OK。
步驟s50407,用戶A向節(jié)點(diǎn)E發(fā)送Register請(qǐng)求,請(qǐng)求查找資源保存節(jié)點(diǎn)。
步驟s50408,用戶A向節(jié)點(diǎn)C發(fā)送Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)點(diǎn)。
步驟s50409,節(jié)點(diǎn)C發(fā)現(xiàn)自身保存有用戶A的資源,即節(jié)點(diǎn)A為自身負(fù)責(zé)
簽名服務(wù)的用戶,節(jié)點(diǎn)C向用戶A發(fā)送確認(rèn)響應(yīng)200OK。
步驟s50410,節(jié)點(diǎn)E將來自節(jié)點(diǎn)C的確認(rèn)響應(yīng)200 OK轉(zhuǎn)發(fā)給用戶A。 步驟s50411,用戶A向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求,所述認(rèn)證請(qǐng)求攜帶如下
j呂息
IDa|| IDp|| IDc||N
一IDa:用戶A的標(biāo)識(shí)信息 —IDP:節(jié)點(diǎn)P的標(biāo)識(shí)信息 —IDc:節(jié)點(diǎn)C的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
步驟s50412,認(rèn)證月良務(wù)器對(duì)用戶A、節(jié)點(diǎn)P以及節(jié)點(diǎn)C進(jìn)行認(rèn)證,認(rèn)證通 過后,生成用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)話密鑰Ks,并以共享密鑰Ka加密所 述會(huì)話密鑰Ks以生成第一認(rèn)證票據(jù),以共享密鑰Kp加密所述會(huì)話密鑰以生成 第二認(rèn)證票據(jù),基于非對(duì)稱密鑰機(jī)制生成第三認(rèn)證票據(jù)。
具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下
EKa[KS||IDp,T||L]
一Ks:用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)話密鑰
一IDp:節(jié)點(diǎn)P的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體的響應(yīng)
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKa表示以用戶與認(rèn)證服務(wù)器的共享密鑰Ka加密[Ks II IDp|| N || T ||
L]所述第二認(rèn)證票據(jù)如下 EKp [Ks||IDa||T||L]
一Ks:用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)話密鑰
一IDa:用戶A的標(biāo)識(shí)信息
一T:時(shí)間戳
—L:會(huì)話密鑰有效期
一EKp表示以節(jié)點(diǎn)P與認(rèn)證服務(wù)器的共享密鑰Kp加密[Ks II IDa|| T || L〗 Ticketac=EKRas[H(EKUc[Ks||IDa||T||L])]
一Ks:會(huì)話請(qǐng)求實(shí)體與會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰
一IDa:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
一T:時(shí)間戳
—L:會(huì)話密鑰有效期
一EKUc表示以簽名代理實(shí)體節(jié)點(diǎn)C的公鑰加密[KsHIDallTIIL]
一EKRas[H(EKUc[KsllIDallTHL)]表示以認(rèn)證服務(wù)器AS的私鑰簽名 (EKUc[Ks||IDa||T||L)
步驟s50413,用戶A以共享密鑰Ka解密所述第一認(rèn)證票據(jù),獲取會(huì)話密 鑰Ks。
步驟s50414,用戶A向節(jié)點(diǎn)C發(fā)送攜帶有IdentityA的簽名服務(wù)請(qǐng)求,簽名 服務(wù)請(qǐng)求中攜帶有用戶A對(duì)節(jié)點(diǎn)P的用戶注冊(cè)信息(需要簽名保護(hù)的對(duì)象)。
步驟s50415,節(jié)點(diǎn)C向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取第三認(rèn) 證票據(jù)(Ticketae-EKRas[H(EKUc[KsllIDallTIIL])])。
步驟S50416,用戶A向節(jié)點(diǎn)C發(fā)送攜帶有所述第三認(rèn)證票據(jù)(EKd [Ks|| IDellTUL])的Notify通告消息。
步驟s50417,節(jié)點(diǎn)C解密所述第三認(rèn)證票據(jù),獲取會(huì)話密鑰Ks,并以會(huì)話 密鑰Ks解密IdentityA,完成對(duì)用戶A的的身份合法性驗(yàn)證,并以自身的私鑰對(duì)用戶注冊(cè)信息簽名生成Identity頭域,并帶上Identity-info頭域標(biāo)識(shí)證書的位置, 用戶注冊(cè)消息、Identity頭域和Identity-info頭域三部分構(gòu)成Resource Ticket資源
簽名票據(jù)。
步驟s50418,節(jié)點(diǎn)C向用戶A發(fā)送攜帶有Resource Ticket資源簽名票據(jù)的 確認(rèn)響應(yīng)200 OK,其中Resource Ticket以P逸道方式包含在確i人響應(yīng)200 OK消 息中。
步驟s50419,用戶A向節(jié)點(diǎn)P發(fā)送攜帶有IdentityA以及Resource Ticket 的注冊(cè)請(qǐng)求。
步驟s50420,節(jié)點(diǎn)P向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取第二認(rèn)證 票據(jù)Ekp[Ks ||IDa||T||L])。
步驟s50421,用戶A向節(jié)點(diǎn)P發(fā)送攜帶有所述第二認(rèn)證票據(jù)(EKp [Ks || IDa|| TIIL])的Notify通告消息。
步驟s50422,節(jié)點(diǎn)P以共享密鑰Kp解密所述第二認(rèn)證票據(jù),獲取會(huì)話密鑰 Ks,并以會(huì)話密鑰Ks解密IdentityA,獲取注冊(cè)請(qǐng)求的內(nèi)容,接受用戶A的加 入注冊(cè)請(qǐng)求。
步驟s50423,節(jié)點(diǎn)P向用戶A發(fā)送確認(rèn)響應(yīng)200OK IdentityP。 參考圖11,是本發(fā)明實(shí)施例的呼叫流程示意圖。本發(fā)明實(shí)施例的呼叫流程 與本發(fā)明的用戶注冊(cè)流程類似,同樣有兩種流程,即查詢會(huì)話目標(biāo)節(jié)點(diǎn)由自身 負(fù)責(zé)的方式(與對(duì)應(yīng)圖9的本發(fā)明用戶注冊(cè)的第一實(shí)施例流程類似)以及查詢 會(huì)話節(jié)點(diǎn)由代理節(jié)點(diǎn)負(fù)責(zé)的方式(與對(duì)應(yīng)圖IO的本發(fā)明用戶注冊(cè)的第二實(shí)施例 流程類似)。本發(fā)明實(shí)施例的呼叫流程為在P2P網(wǎng)絡(luò)中某一用戶發(fā)起查詢會(huì)話對(duì) 象以及在查詢到會(huì)話對(duì)象后會(huì)話的建立過程。本實(shí)施例是以代理節(jié)點(diǎn)負(fù)責(zé)的方 式為例,對(duì)本發(fā)明實(shí)施例的呼叫流程進(jìn)行說明,具體說明如下
步驟s50501,用戶A向代理節(jié)點(diǎn)E發(fā)送Register請(qǐng)求,請(qǐng)求查詢會(huì)話對(duì)象。 步驟s50502,代理節(jié)點(diǎn)E代理用戶A的查詢會(huì)話對(duì)象,向節(jié)點(diǎn)P發(fā)送Register 請(qǐng)求,請(qǐng)求查詢會(huì)話對(duì)象。步驟s50503,節(jié)點(diǎn)P發(fā)現(xiàn)自身不是用戶A所要查詢的會(huì)話對(duì)象,向節(jié)點(diǎn)E 發(fā)送302重定向消息,指示用戶下次應(yīng)當(dāng)向誰發(fā)送Register請(qǐng)求。
步驟s50504,代理節(jié)點(diǎn)E根據(jù)節(jié)點(diǎn)P的302重定向消息的指示,向節(jié)點(diǎn)R 發(fā)送Register請(qǐng)求,請(qǐng)求查詢會(huì)話對(duì)象。
步驟s50505,節(jié)點(diǎn)R發(fā)現(xiàn)自身保存為所要查詢的會(huì)話對(duì)象用戶C的代理節(jié) 點(diǎn),因此向代理節(jié)點(diǎn)E發(fā)送確認(rèn)響應(yīng)200 OK,在該確認(rèn)響應(yīng)200 OK中攜帶有 Contact頭域之外還需攜帶有用于表示用戶C注冊(cè)資源的有效性以及完整性的 Resource Ticket資源簽名票據(jù)。
步驟s50506,節(jié)點(diǎn)E向用戶A轉(zhuǎn)發(fā)所述攜帶有Contact頭域以及Resource Ticket資源簽名票據(jù)的確認(rèn)響應(yīng)200 OK。
步驟s50507,用戶A根據(jù)Resource Ticket對(duì)用戶C的注冊(cè)資源的有效性以 及完整性進(jìn)行驗(yàn)證。
步驟s50508,用戶A向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求,所述認(rèn)證請(qǐng)求攜帶如下 信息
闊IDc||N
一IDa:用戶A的標(biāo)識(shí)信息 _IDc:用戶C的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
步驟s50509 , "i人證服務(wù)器對(duì)用戶A以及用戶C進(jìn)行認(rèn)證,認(rèn)證通過后, 生成用戶A與用戶C的會(huì)話密鑰Ks,并以共享密鑰Ka加密所述會(huì)話密鑰Ks 以生成第一認(rèn)證票據(jù),以共享密鑰Kc加密所述會(huì)話密鑰以生成第二認(rèn)證票據(jù)
具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下 EKa[Ks|| IDc|lN||T||L]
一Ks:用戶A與用戶C的會(huì)話密鑰一IDc:用戶C的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—E&表示以用戶A與認(rèn)證服務(wù)器的共享密鑰Ka加密[Ks || IDc|| N || T ||
L〗
所述第二認(rèn)證票據(jù)如下 EKc [Ks||IDa||T||L]
—Ks:用戶A與用戶C的會(huì)話密鑰
一IDa:用戶A的標(biāo)識(shí)4言息
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
一E&表示以節(jié)點(diǎn)D與認(rèn)證服務(wù)器的共享密鑰Kd加密[Ks II IDa|| T || L] 步驟s50510,用戶A以共享密鑰Ka解密所述第一認(rèn)證票據(jù),獲取會(huì)話密 鑰Ks。
步驟s505U,用戶A向用戶C發(fā)送攜帶有IdentityA的Invite呼叫請(qǐng)求。
步驟s50512,用戶C向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取第二認(rèn) 證票據(jù)(EKc[Ks||IDa||T||L])。
步驟s50513,用戶A向用戶C發(fā)送攜帶有所述第二認(rèn)證票據(jù)(EKe[KsllIDa ||T||L])的Notify通告消息。
步驟s50514,用戶C以共享密鑰Kc解密所述第二認(rèn)證票據(jù)(Ejcc[KsllIDall T||L]),以獲取會(huì)話密鑰Ks,并以會(huì)話密鑰Ks解密IdentityA,完成對(duì)用戶A 的的身份合法性驗(yàn)證。
步驟s50515,用戶C向用戶A發(fā)送180振鈴消息。步驟s50516,用戶C向用戶A發(fā)送攜帶有IdentityC的200OK響應(yīng)。 步驟s50517,用戶A向用戶C發(fā)送攜帶有IdentityA的ACK確認(rèn)響應(yīng)。 步驟s50518,用戶A與用戶C進(jìn)行會(huì)話。
步驟s50519,會(huì)話結(jié)束,用戶C主動(dòng)結(jié)束會(huì)話,向用戶A發(fā)送攜帶有IdentityC 的Bye會(huì)話結(jié)束消息。
步驟s50520,用戶A向用戶C發(fā)送攜帶有IdentityA的200 OK確認(rèn)響應(yīng)。
參考圖11,本發(fā)明實(shí)施例的服務(wù)注冊(cè)流程示意圖。在本實(shí)施例中,VM服 務(wù)節(jié)點(diǎn)S為提供語音留言服務(wù)的節(jié)點(diǎn),節(jié)點(diǎn)R為負(fù)責(zé)保存服務(wù)信息的節(jié)點(diǎn),下 面進(jìn)〗于詳細(xì)"i兌明
步驟s50601, VM服務(wù)節(jié)點(diǎn)向節(jié)點(diǎn)F發(fā)送Register請(qǐng)求。
步驟s50602,節(jié)點(diǎn)F發(fā)現(xiàn)自身沒有保存對(duì)應(yīng)所述VM服務(wù)節(jié)點(diǎn)S的服務(wù)信 息,向所述VM服務(wù)節(jié)點(diǎn)S發(fā)送302重定向消息,指示所述VM服務(wù)節(jié)點(diǎn)下次 應(yīng)當(dāng)向誰發(fā)送Register請(qǐng)求。
步驟s50603,所述VM服務(wù)節(jié)點(diǎn)S根據(jù)節(jié)點(diǎn)F的302重定向消息的指示, 向節(jié)點(diǎn)R發(fā)送Register請(qǐng)求。
步驟s50604,節(jié)點(diǎn)R向所述VM服務(wù)節(jié)點(diǎn)S發(fā)送401注冊(cè)拒絕消息,告訴 所述VM服務(wù)節(jié)點(diǎn)S注冊(cè)被拒絕的原因?yàn)镽egister請(qǐng)求未攜帶Identity認(rèn)證頭。
步驟S50605,所述VM服務(wù)節(jié)點(diǎn)S向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求,所述認(rèn)證 請(qǐng)求攜帶如下信息 IDs|| IDr||N
—IDs: VM服務(wù)節(jié)點(diǎn)S的標(biāo)識(shí)信息 —IDr:節(jié)點(diǎn)R的標(biāo)識(shí)信息
—N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
步驟s50606,認(rèn)證服務(wù)器對(duì)VM服務(wù)節(jié)點(diǎn)S以及節(jié)點(diǎn)R進(jìn)行認(rèn)證,認(rèn)證通過后,生成VM服務(wù)節(jié)點(diǎn)S與節(jié)點(diǎn)R的會(huì)話密鑰Ks,基于共享密鑰加密Ks生 成第一認(rèn)證票據(jù),并以共享密鑰Kr加密Ks生成第二認(rèn)證票據(jù)。
具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下 EKUs [Ks||IDr||N||T||L])]
一Ks: VM月l務(wù)節(jié)點(diǎn)S與節(jié)點(diǎn)R的會(huì)話密鑰 一IDr:節(jié)點(diǎn)R的標(biāo)識(shí)信息
—N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
一EKUs表示以VM服務(wù)節(jié)點(diǎn)S的公鑰加密[KsllIDrl網(wǎng)ITIIL])] 所述第二認(rèn)證票據(jù)構(gòu)成如下 EKr[Ks||IDs||T||L]
一Ks: VM服務(wù)節(jié)點(diǎn)S與節(jié)點(diǎn)R的會(huì)話密鑰
一IDr:節(jié)點(diǎn)R的標(biāo)識(shí)信息
一T:時(shí)間戳
—L:會(huì)話密鑰有效期
步驟s50607, VM服務(wù)節(jié)點(diǎn)S解密所述第一認(rèn)證票據(jù)(EKUs [Ks||IDr||N||T||L])]),獲取會(huì)話密鑰Ks。
步驟s50608 , VM服務(wù)節(jié)點(diǎn)S向節(jié)點(diǎn)R發(fā)送攜帶有IdentityS的Register請(qǐng)求。
步驟s50609 ,節(jié)點(diǎn)R向VM服務(wù)節(jié)點(diǎn)S發(fā)送Subscribe訂閱消息,請(qǐng)求獲取 第二認(rèn)證票據(jù)(EKe [Ks II IDa II T II L])。
步驟s50610, VM服務(wù)節(jié)點(diǎn)S向節(jié)點(diǎn)R發(fā)送攜帶有所述第二認(rèn)證票據(jù)(Ekt [Ks II IDs II T II L])的Notify通告消息。
步驟s506U,節(jié)點(diǎn)R以共享密鑰Kr解密所述第二認(rèn)證票據(jù)(EKr [Ks || IDs|| T II L]),以獲取會(huì)話密鑰Ks,并以會(huì)話密鑰Ks解密IdentityS,完成對(duì)VM服務(wù)節(jié)點(diǎn)S的身份合法性驗(yàn)證以及根據(jù)解密后的內(nèi)容完成對(duì)VM服務(wù)節(jié)點(diǎn)S的服 務(wù)注冊(cè)。
步驟s50612,節(jié)點(diǎn)R向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶有IdentityR的200 OK確
認(rèn)響應(yīng)。
參考圖13,是本發(fā)明實(shí)施例的用戶申請(qǐng)?jiān)鲋禈I(yè)務(wù)流程示意圖。在本實(shí)施例 中用戶A為需要申請(qǐng)?jiān)鲋禈I(yè)務(wù)的客戶端,節(jié)點(diǎn)P為負(fù)責(zé)保存登記用戶可使用那 些增值業(yè)務(wù)的信息的節(jié)點(diǎn),節(jié)點(diǎn)C為簽名服務(wù)代理實(shí)體,具體說明如下
步驟s50701,用戶A向節(jié)點(diǎn)E發(fā)送Register請(qǐng)求,請(qǐng)求查找負(fù)責(zé)保存登記 用戶可使用那些增值業(yè)務(wù)的信息的節(jié)點(diǎn)。
步驟S50702,節(jié)點(diǎn)E發(fā)現(xiàn)自身不是負(fù)責(zé)保存登記用戶可使用那些增值業(yè)務(wù) 的信息的節(jié)點(diǎn),向用戶A發(fā)送302重定向消息,指示用戶下次應(yīng)當(dāng)向誰發(fā)送 Register請(qǐng)求。
步驟s50703,用戶A根據(jù)節(jié)點(diǎn)E的302重定向消息的指示,向節(jié)點(diǎn)G發(fā)送 Register請(qǐng)求,請(qǐng)求查找負(fù)責(zé)保存登記用戶可使用那些增值業(yè)務(wù)的信息的節(jié)點(diǎn)。
步驟s50704,節(jié)點(diǎn)G仍然發(fā)現(xiàn)自身不是負(fù)責(zé)保存登記用戶可使用那些增值 業(yè)務(wù)的信息的節(jié)點(diǎn),向用戶A發(fā)送302重定向消息,指示用戶下次應(yīng)當(dāng)向誰發(fā) 送Register請(qǐng)求。
步驟s50705,用戶A根據(jù)節(jié)點(diǎn)G的302重定向消息的指示,向節(jié)點(diǎn)P發(fā)送 Register請(qǐng)求,請(qǐng)求查找負(fù)責(zé)保存登記用戶可使用那些增值業(yè)務(wù)的信息的節(jié)點(diǎn)。。
步驟s50706,節(jié)點(diǎn)P發(fā)現(xiàn)自身為負(fù)責(zé)保存登記用戶可使用那些增值業(yè)務(wù)的 信息的節(jié)點(diǎn),因此向用戶A發(fā)送確認(rèn)響應(yīng)200OK。
步驟s50707,用戶A向節(jié)點(diǎn)C發(fā)送Register請(qǐng)求,請(qǐng)求查找資源的保存節(jié)
占
,、、、o
步驟s50708,節(jié)點(diǎn)C發(fā)現(xiàn)自身保存有用戶A的資源,即節(jié)點(diǎn)A為自身負(fù)責(zé) 簽名服務(wù)的用戶,節(jié)點(diǎn)C向用戶A發(fā)送確認(rèn)響應(yīng)200OK。步驟s50709,用戶A向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求,所述認(rèn)證請(qǐng)求攜帶如下 信息
酬| IDp|| IDc||N
一IDa:用戶A的標(biāo)識(shí)信息 一IDP:節(jié)點(diǎn)P的標(biāo)識(shí)信息 一IDc:節(jié)點(diǎn)C的標(biāo)識(shí)信息
—N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
步驟s50710,認(rèn)證服務(wù)器對(duì)用戶A、節(jié)點(diǎn)P以及節(jié)點(diǎn)C進(jìn)行認(rèn)證,認(rèn)證通 過后,生成用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)話密鑰Ks,并以共享密鑰Ka加密所 述會(huì)話密鑰Ks以生成第一認(rèn)證票據(jù),以共享密鑰Kp加密所述會(huì)話密鑰以生成 第二認(rèn)證票據(jù),基于非對(duì)稱密鑰機(jī)制生成第三認(rèn)證票據(jù)。
具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下 EKa[Ks||IDp||N||T|| L||P]
一Ks:用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)活密鑰
一IDp:節(jié)點(diǎn)P的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體的響應(yīng)
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—P:表示用戶可以使用那些增值業(yè)務(wù)
—EKa表示以用戶與認(rèn)證服務(wù)器的共享密鑰Ka加密[Ks II IDp|| N || T ||
L]
所述第二認(rèn)證票據(jù)如下 EKp[KsPDaimiL]
_Ks:用戶A與節(jié)點(diǎn)P、節(jié)點(diǎn)C的會(huì)話密鑰—IDa:用戶A的標(biāo)識(shí)信息
—T:時(shí)間戳
一L:會(huì)話密鑰有效期
一Ejcp表示以節(jié)點(diǎn)P與認(rèn)證服務(wù)器的共享密鑰Kp加密[Ks II IDa|| T || L] Ticketac=EKRas[H(EKUc[Ks||IDa||T||L])]
一Ks:會(huì)話請(qǐng)求實(shí)體與會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰
一IDa:會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKUc表示以簽名代理實(shí)體節(jié)點(diǎn)C的公鑰加密[KsllIDallTIIL]
一EKRas[H(EKUc[KsllIDallTIIL)]表示以認(rèn)證服務(wù)器AS的私鑰簽名 (EKUc[Ks||IDa||T||L)
步驟s50711,用戶A以共享密鑰Ka解密所述第一認(rèn)證票據(jù),獲取會(huì)話密 鑰Ks。
步驟s50712,用戶A向節(jié)點(diǎn)C發(fā)送攜帶有IdentityA的簽名服務(wù)請(qǐng)求,簽名 服務(wù)請(qǐng)求中攜帶有用戶A對(duì)節(jié)點(diǎn)P的用戶注冊(cè)信息(需要簽名保護(hù)的對(duì)象)。
步驟s50713,節(jié)點(diǎn)C向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取第三認(rèn) 證票據(jù)(TicketafEKRas[H(EKUc[KsllIDallTIIL])])。
步驟s50714,用戶A向節(jié)點(diǎn)C發(fā)送攜帶有所述第三認(rèn)證票據(jù)(EKd [Ks|| IDellTUL])的Notify通告消息。
步驟s50715,節(jié)點(diǎn)C解密所述第三認(rèn)證票據(jù),獲取會(huì)話密鑰Ks,并以會(huì)話 密鑰Ks解密IdentityA,完成對(duì)用戶A的的身份合法性驗(yàn)證,并以自身的私鑰對(duì) 用戶注冊(cè)信息簽名生成Identity頭域,并帶上Identity-info頭域標(biāo)識(shí)證書的位置, 用戶注冊(cè)消息、Identity頭域和Identity-info頭域三部分構(gòu)成Resource Ticket資源
簽名票據(jù)。步驟s50716,節(jié)點(diǎn)C向用戶A發(fā)送攜帶有Resource Ticket資源簽名票據(jù)的 確認(rèn)響應(yīng)200 OK,其中Resource Ticket以隧道方式包含在確i人響應(yīng)200 OK消 息中。
步驟s50717,用戶A向節(jié)點(diǎn)P發(fā)送攜帶有IdentityA以及Resource Ticket 的Register請(qǐng)求,申請(qǐng)?jiān)鲋禈I(yè)務(wù)服務(wù)。
步驟s50718,節(jié)點(diǎn)P向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取第二認(rèn)證 票據(jù)EKp[KsllIDallTIIL])。
步驟s50719,用戶A向節(jié)點(diǎn)P發(fā)送攜帶有所述第二認(rèn)證票據(jù)(EKp[KsPDall T|| L])的Notify通告消 息o
步驟s50720,節(jié)點(diǎn)P以共享密鑰Kp解密所述第二認(rèn)證票據(jù),獲取會(huì)話密鑰 Ks,并以會(huì)話密鑰Ks解密IdentityA,獲取Register請(qǐng)求的內(nèi)容,接受用戶A的 加入的增值業(yè)務(wù)申請(qǐng)請(qǐng)求,為用戶A提供相應(yīng)的增值業(yè)務(wù)服務(wù)。
步驟s50721,節(jié)點(diǎn)P向用戶A發(fā)送確認(rèn)響應(yīng)200OK IdentityP。
參考圖14,本發(fā)明實(shí)施例的VM語音服務(wù)主叫留言流程示意圖。本實(shí)施例 描述了主叫用戶A呼叫^l叫用戶C,當(dāng)用戶C不在線時(shí),主叫用戶A通過VM 語音留言服務(wù)為用戶C語音留言的過程。
步驟s508(H,用戶A向節(jié)點(diǎn)E發(fā)送Register請(qǐng)求,請(qǐng)求查找會(huì)話對(duì)象。
步驟s50802,節(jié)點(diǎn)E代理用戶A的查詢會(huì)話對(duì)象,向節(jié)點(diǎn)P發(fā)送Register 請(qǐng)求,請(qǐng)求查詢會(huì)話對(duì)象。
步驟s50803,節(jié)點(diǎn)P發(fā)現(xiàn)自身不是用戶A所要查詢的會(huì)話對(duì)象,向節(jié)點(diǎn)E 發(fā)送302重定向消息,指示用戶下次應(yīng)當(dāng)向誰發(fā)送Register請(qǐng)求。
步驟s50804,節(jié)點(diǎn)E根據(jù)節(jié)點(diǎn)P的302重定向消息的指示,向節(jié)點(diǎn)R發(fā)送 Register請(qǐng)求,請(qǐng)求查詢會(huì)話對(duì)象。
步驟s50805,節(jié)點(diǎn)R發(fā)現(xiàn)自身為所要查詢的會(huì)話對(duì)象用戶C的代理節(jié)點(diǎn), 但是此時(shí)用戶C不在線,因此,向節(jié)點(diǎn)E發(fā)送404響應(yīng),通過節(jié)點(diǎn)E告訴用戶A可選擇使用語音留言服務(wù)為用戶C提供留言。
步驟s50806,節(jié)點(diǎn)E將404響應(yīng)轉(zhuǎn)發(fā)給用戶A。
步驟s50807,用戶A選擇通過語音留言為用戶C留言,向節(jié)點(diǎn)E發(fā)送Register 請(qǐng)求。
步驟s50808,通過語音服務(wù)查詢算法查找VM服務(wù)節(jié)點(diǎn)。
步驟s50809,查詢到VM服務(wù)節(jié)點(diǎn)S后,節(jié)點(diǎn)E向用戶A發(fā)送200 OK響應(yīng)。
步驟s50810,用戶A向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求,所述認(rèn)證請(qǐng)求攜帶如下 信息
IDa|lIDc|lIDsl|N
一IDa:用戶A的標(biāo)識(shí)信息 —IDc:用戶C的標(biāo)識(shí)信息 —IDs: VM服務(wù)節(jié)點(diǎn)S的標(biāo)識(shí)信息
—N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
步驟s50811 ,認(rèn)證服務(wù)器對(duì)用戶A、用戶C以及VM服務(wù)節(jié)點(diǎn)進(jìn)行認(rèn)證, 認(rèn)證通過后,生成第一認(rèn)證票據(jù)、第二認(rèn)證票據(jù)以及第三認(rèn)證票據(jù)。
具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下 Eka[Ksl||Ks2||IDs||IDc||N||T||L]
—Ksl:用戶A與VM服務(wù)節(jié)點(diǎn)S的會(huì)話密鑰
—Ks2:用戶A與用戶C的會(huì)話密鑰,用于加密用戶A對(duì)用戶C的留
言信息
—IDs: VM服務(wù)節(jié)點(diǎn)S的標(biāo)識(shí)信息 —IDc:用戶C的標(biāo)識(shí)信息
一N:隨才幾數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文中需包含此數(shù),用于防止才艮文重發(fā)
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
—EKa表示以用戶A與認(rèn)證服務(wù)器的共享密鑰Ka加密 [Ksl||Ks2||IDs|lIDc||N||T||LJ 所述第二認(rèn)證票據(jù)如下
Eks[Ksl||IDa||T||L]
一Ksl:用戶A與VM服務(wù)節(jié)點(diǎn)S的會(huì)話密鑰
一IDa:用戶A的標(biāo)識(shí)l言息
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
一Eks表示以VM服務(wù)節(jié)點(diǎn)S與認(rèn)證服務(wù)器的共享密鑰Ks加密 [Ks耶DaimiL]
所述第三認(rèn)證票據(jù)如下
Ekc[Ks2||IDa||T||L]
一Ks2:用戶A與用戶C的會(huì)話密鑰
一IDa:用戶A的標(biāo)識(shí)信息
一T:時(shí)間戳
一L:會(huì)話密鑰有效期
一EKc表示以用戶C與認(rèn)證服務(wù)器的共享密鑰Ks加密[KslHIDallTIIL] 步驟s50812,用戶A以共享密鑰Ka解密所述所述第一認(rèn)證票據(jù),獲取用 戶A與VM服務(wù)節(jié)點(diǎn)S的會(huì)話密鑰Ksl以及用戶A用于加密對(duì)用戶C的留言信 息的會(huì)話密鑰Ks2。
步驟S50813,用戶A向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶有IdentityA的Invite會(huì)話請(qǐng)求。步驟s50814, VM服務(wù)節(jié)點(diǎn)S向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取 第二認(rèn)證票據(jù)(Ticketa^Eks[KslHlDallTIIL])。
步驟s50815,用戶A向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶有所述第二認(rèn)證票據(jù) (Tickets- Eks[KslllIDallTHL])的Notify通告消息。
步驟S50816, VM服務(wù)節(jié)點(diǎn)S解密所述第二認(rèn)證票據(jù),獲取用戶A與VM 服務(wù)節(jié)點(diǎn)S的共享密鑰Ksl,并以Ksl解密IdentityA,獲取會(huì)話請(qǐng)求內(nèi)容。
步驟s50817, VM服務(wù)節(jié)點(diǎn)S向用戶A發(fā)送攜帶有IdentityS的200 OK響應(yīng)。
步驟s50818,用戶A向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶IdentityA以及第三認(rèn)證票 據(jù)Ekc[Ks2UIDallTIIL]的ACK響應(yīng)。
步驟S50819,用戶A與VM服務(wù)節(jié)點(diǎn)S進(jìn)行會(huì)話,為用戶C進(jìn)行語音留言, 所述語音留言用所述會(huì)話密鑰Ks2加密。
步驟s50820,用戶A主動(dòng)掛機(jī),留言結(jié)束,向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶有 IdentityA的Bye確i人響應(yīng)。
步驟步驟s50821, VM服務(wù)節(jié)點(diǎn)S向用戶A發(fā)送攜帶IdentityS的200 OK 響應(yīng)。
參考圖15,是本發(fā)明實(shí)施例的VM語音服務(wù)被叫收聽流程示意圖。本實(shí)施 例描述了被叫用戶C通過VM語音留言服務(wù)收聽來自用戶A的語音留言的過程。 步驟s50卯l ,用戶C向節(jié)點(diǎn)E發(fā)送Register注冊(cè)更新請(qǐng)求。 步驟s50902,節(jié)點(diǎn)E代理用戶C查詢用戶C的服務(wù)代理節(jié)點(diǎn),向節(jié)點(diǎn)R發(fā) 送Register請(qǐng)求。
步驟s50903,節(jié)點(diǎn)R為用戶C的服務(wù)代理節(jié)點(diǎn),向節(jié)點(diǎn)E發(fā)送攜帶Resource
Ticket的200 OK響應(yīng)。
步驟s50904,節(jié)點(diǎn)E向用戶C轉(zhuǎn)發(fā)攜帶Resource Ticket的200 OK響應(yīng)。 所述Resource Ticket攜帶有用戶C可使用那些增值業(yè)務(wù)的信息,在本實(shí)施例中作用為告知用戶c可使用語音留言業(yè)務(wù)。
步驟s50905 ,用戶C向節(jié)點(diǎn)E發(fā)送Register請(qǐng)求。
步驟s50906,通過語音服務(wù)查詢算法查找VM服務(wù)節(jié)點(diǎn)。
步驟s50907,查詢到VM服務(wù)節(jié)點(diǎn)S后,節(jié)點(diǎn)E向用戶C發(fā)送200 OK響應(yīng)。
步驟s50908,用戶C向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求,所述認(rèn)證請(qǐng)求攜帶如下 信息
IDc||IDs||N
一IDc:用戶C的標(biāo)識(shí)信息
—IDs: VM服務(wù)節(jié)點(diǎn)S的標(biāo)識(shí)信息
一N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā)
步驟s50909 ,認(rèn)證服務(wù)器對(duì)用戶C以及VM服務(wù)節(jié)點(diǎn)S進(jìn)行認(rèn)證,認(rèn)證 通過后,生成第一認(rèn)證票據(jù)、第二認(rèn)證票據(jù)。 具體實(shí)施時(shí),所述第一認(rèn)證票據(jù)如下 Ekc網(wǎng)闊N||T||L]
—Ks:用戶C與VM服務(wù)節(jié)點(diǎn)S的會(huì)話密鑰 —IDs: VM服務(wù)節(jié)點(diǎn)S的標(biāo)識(shí)信息
—N:隨機(jī)數(shù)或序列號(hào),用于標(biāo)識(shí)本次認(rèn)證請(qǐng)求,返回的認(rèn)證響應(yīng)報(bào)文 中需包含此數(shù),用于防止報(bào)文重發(fā) 一T:時(shí)間戳 —L:會(huì)話密鑰有效期
一Ekc表示以用戶A與認(rèn)證服務(wù)器的共享密鑰Ka加密[KsllIDsll N||T||L] 所述第二認(rèn)證票據(jù)如下 Eks[Ks||IDc||T||L]—Ks:用戶C與VM服務(wù)節(jié)點(diǎn)S的會(huì)話密鑰
—IDc:用戶C的標(biāo)識(shí)信息
一T:時(shí)間戳
—L:會(huì)話密鑰有效期
一Eks表示以VM服務(wù)節(jié)點(diǎn)S與認(rèn)證服務(wù)器的共享密鑰Ks加密 [Ks||IDc||T||L]
步驟s50910,用戶C以共享密鑰Kc解密所述所述第一認(rèn)證票據(jù),獲取用 戶C與VM服務(wù)節(jié)點(diǎn)S的會(huì)話密鑰Kc。
步驟s50911,用戶C向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶有IdentityC以及Resource Ticket的Invite會(huì)話請(qǐng)求。
步驟s50912, VM服務(wù)節(jié)點(diǎn)S向用戶A發(fā)送Subscribe訂閱消息,請(qǐng)求獲取 第二認(rèn)證票據(jù)(Ticketcf Eks[Ks||IDc||T||L])。
步驟s50913,用戶A向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶有所述第二認(rèn)證票據(jù) (Ticketcs= Eks[KsllIDcllTHL])的Notify通告消息。
步驟S50914, VM服務(wù)節(jié)點(diǎn)S解密所述第二認(rèn)證票據(jù),獲取用戶C與VM 服務(wù)節(jié)點(diǎn)S的會(huì)話密鑰Ks,并以Ks解密IdentityA,獲取會(huì)話請(qǐng)求內(nèi)容。
步驟s50915, VM服務(wù)節(jié)點(diǎn)S向用戶C發(fā)送攜帶有IdentityS以及Ticketac (Ekc[Ks2||IDa||T||L])的200 OK響應(yīng),所述Ticketac ( Ekc[Ks2||IDa||T||L])攜帶 有用戶A用于加密對(duì)用戶C的留言的會(huì)話密鑰Ks2的。
步驟S50916,用戶C向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶IdentityC的ACK響應(yīng)。
步驟s50917,用戶C以與認(rèn)證服務(wù)器的共享密鑰解密所述Ticketac (Ekc[Ks2|lIDa|lT||L]),獲取會(huì)話密鑰Ks2,用戶C與VM服務(wù)節(jié)點(diǎn)S進(jìn)行會(huì) 話,以會(huì)話密鑰Ks2解密并收聽用戶A語音留言。
步驟s50918,用戶C主動(dòng)掛機(jī),留言結(jié)束,向VM服務(wù)節(jié)點(diǎn)S發(fā)送攜帶有 IdentityC的Bye確i^響應(yīng)。步驟步驟s50919, VM服務(wù)節(jié)點(diǎn)S向用戶C發(fā)送攜帶IdentityS的200 OK響應(yīng)。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通 技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進(jìn)和潤(rùn)飾, 這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
權(quán)利要求
1、一種會(huì)話密鑰協(xié)商方法,其特征在于,應(yīng)用于P2P網(wǎng)絡(luò)中,包括認(rèn)證服務(wù)器接收來自會(huì)話請(qǐng)求實(shí)體的認(rèn)證請(qǐng)求;認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體以及會(huì)話請(qǐng)求目標(biāo)實(shí)體進(jìn)行認(rèn)證,如果認(rèn)證通過,則生成所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰;認(rèn)證服務(wù)器向所述會(huì)話請(qǐng)求實(shí)體返回?cái)y帶有所述會(huì)話密鑰的認(rèn)證響應(yīng)。
2、 如權(quán)利要求l所述的方法,其特征在于,還包括會(huì)話目標(biāo)實(shí)體與會(huì)話請(qǐng)求實(shí)體交互信息,以獲得所述會(huì)話密鑰。
3、 如權(quán)利要求2所述的方法,其特征在于,所述認(rèn)證請(qǐng)求中包括會(huì)話請(qǐng)求 實(shí)體標(biāo)識(shí)信息和會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息;所述認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體以及會(huì)話請(qǐng)求目標(biāo)實(shí)體進(jìn)行認(rèn)證,如果認(rèn) 證通過,則生成所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰的步驟包括認(rèn)證服務(wù)器根據(jù)所述會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息、所述會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息 分別對(duì)所述會(huì)話請(qǐng)求實(shí)體、所述會(huì)話目標(biāo)實(shí)體進(jìn)行認(rèn)證;如果認(rèn)證通過,則生成所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰, 用認(rèn)證服務(wù)器與所述會(huì)話請(qǐng)求實(shí)體的共享密鑰加密所述會(huì)話密鑰,生成對(duì)應(yīng)會(huì) 話請(qǐng)求實(shí)體的第一認(rèn)證票據(jù),用認(rèn)證服務(wù)器與所述會(huì)話目標(biāo)實(shí)體的共享密鑰加 密所述會(huì)話密鑰,生成對(duì)應(yīng)會(huì)話目標(biāo)實(shí)體的第二認(rèn)證票據(jù)。
4、 如權(quán)利要求3所述的方法,其特征在于,所述認(rèn)證響應(yīng)中包括所述第一 認(rèn)證票據(jù),所述會(huì)話目標(biāo)實(shí)體與會(huì)話請(qǐng)求實(shí)體交互信息,以獲得所述會(huì)話密鑰 的步驟包括所述會(huì)話請(qǐng)求實(shí)體用與認(rèn)證服務(wù)器的共享密鑰解密所述第一認(rèn)證票據(jù),以 獲取所述會(huì)話密鑰。
5、 如權(quán)利要求4所述的方法,其特征在于,所述認(rèn)證響應(yīng)中包括所述第二 認(rèn)證票據(jù),所述會(huì)話目標(biāo)實(shí)體與會(huì)話請(qǐng)求實(shí)體交互信息,以獲得所述會(huì)話密鑰 的步驟包括會(huì)話請(qǐng)求實(shí)體向會(huì)話請(qǐng)求目標(biāo)實(shí)體發(fā)送攜帶有認(rèn)證信息的會(huì)話請(qǐng)求;會(huì)話目標(biāo)實(shí)體接收到所述會(huì)話請(qǐng)求后,與所述會(huì)話請(qǐng)求實(shí)體交互信息,以 獲得所述第二認(rèn)證票據(jù);會(huì)話目標(biāo)實(shí)體用與所述認(rèn)證服務(wù)器的共享密鑰解密所述第二認(rèn)證票據(jù),以 獲取所述會(huì)話密鑰。
6、 如權(quán)利要求2所述的方法,其特征在于,所述P2P網(wǎng)絡(luò)還包括簽名代理 實(shí)體,所述認(rèn)證請(qǐng)求中包括會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息、會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息、 以及簽名代理實(shí)體標(biāo)識(shí)信息,所述認(rèn)證服務(wù)器對(duì)會(huì)話請(qǐng)求實(shí)體以及會(huì)話請(qǐng)求目 標(biāo)實(shí)體進(jìn)行認(rèn)證,如果認(rèn)證通過,則生成所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí) 體的會(huì)話密鑰的步驟包括認(rèn)證服務(wù)器根據(jù)所述會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息、會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息、簽 名代理實(shí)體標(biāo)識(shí)信息分別對(duì)所述會(huì)話請(qǐng)求實(shí)體、會(huì)話目標(biāo)實(shí)體、簽名代理實(shí)體 標(biāo)識(shí)進(jìn)行認(rèn)證;密鑰,生成對(duì)應(yīng)所述會(huì)話請(qǐng)求實(shí)體與所述簽名代理實(shí)體的會(huì)話密鑰,用認(rèn)證服 務(wù)器與所述會(huì)話請(qǐng)求實(shí)體的共享密鑰加密所述對(duì)應(yīng)所述會(huì)話請(qǐng)求實(shí)體與所述會(huì) 話目標(biāo)實(shí)體的會(huì)話密鑰,生成對(duì)應(yīng)會(huì)話請(qǐng)求實(shí)體的第三認(rèn)證票據(jù);用認(rèn)證服務(wù)器與所述會(huì)話目標(biāo)實(shí)體的共享密鑰加密所述對(duì)應(yīng)所述會(huì)話請(qǐng)求 實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰,生成對(duì)應(yīng)會(huì)話目標(biāo)實(shí)體的第四認(rèn)證票據(jù);應(yīng)簽名代理實(shí)體的第五認(rèn)證票據(jù)
7、 如權(quán)利要求6所述的方法,其特征在于,所述i人證響應(yīng)中包括所述對(duì)應(yīng) 會(huì)話請(qǐng)求實(shí)體的認(rèn)證票據(jù),所述會(huì)話請(qǐng)求者接收到所述認(rèn)證響應(yīng)后,根據(jù)與所 述認(rèn)證服務(wù)器的共享密鑰解密所述第三認(rèn)證票據(jù),以獲取所述會(huì)話密鑰。
8、 如權(quán)利要求7所述的方法,其特征在于,所述認(rèn)證響應(yīng)中包括所述第五 認(rèn)證票據(jù),在所述會(huì)話目標(biāo)實(shí)體與會(huì)話請(qǐng)求實(shí)體交互信息,以獲得所述會(huì)話密 鑰的步驟之前進(jìn)一步包括所述會(huì)話請(qǐng)求實(shí)體向所述簽名代理實(shí)體發(fā)送攜帶有認(rèn)證信息的簽名請(qǐng)求消白 (&,所述簽名代理實(shí)體接收到所述簽名請(qǐng)求消息后,與所述會(huì)話請(qǐng)求實(shí)體交互 信息,以獲取所述第五認(rèn)證票據(jù);所述簽名代理實(shí)體解密所述第五認(rèn)證票據(jù),以獲取所述對(duì)應(yīng)所述會(huì)話請(qǐng)求 實(shí)體與所述簽名代理實(shí)體的會(huì)話密鑰,用該會(huì)話密鑰解密所述認(rèn)證信息,生成 對(duì)所述簽名請(qǐng)求消息的簽名票據(jù);所述簽名代理實(shí)體向所述會(huì)話請(qǐng)求實(shí)體返回所述簽名票據(jù)。
9、 如權(quán)利要求8所述的方法,其特征在于,所述認(rèn)證響應(yīng)中攜帶有所述第 四認(rèn)證票據(jù),所述會(huì)話目標(biāo)實(shí)體與會(huì)話請(qǐng)求實(shí)體交互信息,以獲得所述會(huì)話密 鑰的步驟包括會(huì)話請(qǐng)求實(shí)體向會(huì)話請(qǐng)求目標(biāo)實(shí)體發(fā)送攜帶有所述簽名票據(jù)以及認(rèn)證信息 的會(huì)話請(qǐng)求信息;會(huì)話目標(biāo)實(shí)體接收到所述會(huì)話請(qǐng)求消息后,與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲得所述對(duì)應(yīng)會(huì)話目標(biāo)實(shí)體的認(rèn)證票據(jù);會(huì)話目標(biāo)實(shí)體用與所述認(rèn)證服務(wù)器的共享密鑰解密所述第四認(rèn)證票據(jù),以 獲取所述對(duì)應(yīng)所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰。
10、 一種認(rèn)證服務(wù)器,其特征在于,包括認(rèn)證請(qǐng)求接收單元,用于接收來自會(huì)話請(qǐng)求實(shí)體的^人證請(qǐng)求;認(rèn)證單元,用于在所述認(rèn)證請(qǐng)求接收單元接收到認(rèn)證請(qǐng)求后,對(duì)所述會(huì)話 請(qǐng)求實(shí)體以及會(huì)話目標(biāo)實(shí)體進(jìn)行認(rèn)證;當(dāng)認(rèn)證通過后,生成所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰;認(rèn)證響應(yīng)發(fā)送單元,用于向所述會(huì)話請(qǐng)求實(shí)體發(fā)送攜帶有會(huì)話密鑰的認(rèn)證響應(yīng)。
11、 如權(quán)利要求IO所述的認(rèn)證服務(wù)器,其特征在于,所述認(rèn)證請(qǐng)求中包括 會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息及會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息,所述認(rèn)證單元包括標(biāo)識(shí)信息獲取單元,用于從所述認(rèn)證請(qǐng)求接收單元所接收到的認(rèn)證請(qǐng)求中 獲取所述會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息及會(huì)話目標(biāo)實(shí)體標(biāo)識(shí)信息;認(rèn)證執(zhí)行單元,用于根據(jù)所述會(huì)話請(qǐng)求實(shí)體標(biāo)識(shí)信息、所述會(huì)話目標(biāo)實(shí)體 標(biāo)識(shí)信息判斷所述會(huì)話請(qǐng)求實(shí)體和所述會(huì)話目標(biāo)實(shí)體是否為已登記實(shí)體,如果 判斷結(jié)果為是,則生成所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰;認(rèn)證票據(jù)生成單元,用于用與所述會(huì)話請(qǐng)求實(shí)體的共享密鑰加密所述會(huì)話 密鑰,生成對(duì)應(yīng)會(huì)話請(qǐng)求實(shí)體的認(rèn)證票據(jù);用與所述會(huì)話目標(biāo)實(shí)體的共享密鑰 加密所述會(huì)話密鑰,生成對(duì)應(yīng)會(huì)話目標(biāo)實(shí)體的認(rèn)證票據(jù)。
12、 一種網(wǎng)絡(luò)設(shè)備,其特征在于,包括 認(rèn)證請(qǐng)求單元,用于向認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求; 認(rèn)證響應(yīng)接收單元,用于接收來自于所述認(rèn)證服務(wù)器的認(rèn)證響應(yīng);會(huì)話密鑰獲取單元,用于從所述認(rèn)證響應(yīng)接收單元接收到的認(rèn)證響應(yīng)中獲 取會(huì)話密鑰;會(huì)話請(qǐng)求單元,用于向會(huì)話請(qǐng)求目標(biāo)實(shí)體發(fā)送攜帶有認(rèn)證信息的會(huì)話請(qǐng)求。
13、 如權(quán)利要求12所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述認(rèn)證響應(yīng)攜帶有對(duì) 應(yīng)本網(wǎng)絡(luò)設(shè)備的認(rèn)證票據(jù),所述會(huì)話密鑰獲取單元包括第 一認(rèn)證票據(jù)獲得單元,用于從所述認(rèn)證響應(yīng)4矣收單元接收到的認(rèn)證響應(yīng) 中獲取所迷認(rèn)證票據(jù);第一解密單元,用于以與認(rèn)證服務(wù)器的共享密鑰解密所述認(rèn)證票據(jù),獲取 所述會(huì)話密鑰。
14、 一種網(wǎng)絡(luò)設(shè)備,其特征在于,所述網(wǎng)絡(luò)設(shè)備包括檢測(cè)單元,用于檢測(cè)來自于會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求是否攜帶有認(rèn)證信息; 會(huì)話密鑰獲取單元,用于在所述檢測(cè)單元檢測(cè)到來自于會(huì)話請(qǐng)求實(shí)體的會(huì) 話請(qǐng)求攜帶有認(rèn)證信息時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲取會(huì)話密鑰。
15、 如權(quán)利要求14所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述會(huì)話密鑰獲取單元 包括第二認(rèn)^L票據(jù)獲得單元,用于從所述會(huì)話請(qǐng)求實(shí)體獲得對(duì)應(yīng)本網(wǎng)絡(luò)設(shè)備的 認(rèn)證票據(jù);第二解密單元,用于以與認(rèn)證服務(wù)器的共享密鑰解密所述認(rèn)證票據(jù),獲取 所述會(huì)話密鑰。
16、 一種網(wǎng)絡(luò)設(shè)備,其特征在于,所述網(wǎng)絡(luò)設(shè)備包括檢測(cè)單元,用于檢測(cè)來自于會(huì)話請(qǐng)求實(shí)體的簽名服務(wù)請(qǐng)求是否攜帶有認(rèn)證 信息;會(huì)話密鑰獲取單元,用于在所述檢測(cè)單元檢測(cè)到來自于會(huì)話請(qǐng)求實(shí)體的簽名服務(wù)請(qǐng)求攜帶有認(rèn)證信息時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲取會(huì)話密鑰;票據(jù)生成單元,用于基于所述會(huì)話密鑰生成對(duì)應(yīng)所述簽名服務(wù)請(qǐng)求的簽名 票據(jù);發(fā)送單元,用于向所迷會(huì)話請(qǐng)求實(shí)體發(fā)送所述簽名票據(jù)。
17、 一種網(wǎng)絡(luò)系統(tǒng),其特征在于,包括會(huì)話請(qǐng)求實(shí)體,會(huì)話目標(biāo)實(shí)體及認(rèn) 證服務(wù)器,其中會(huì)話請(qǐng)求實(shí)體,用于向所述認(rèn)證服務(wù)器發(fā)送認(rèn)證請(qǐng)求;在接收到來自于所 述認(rèn)證服務(wù)器的認(rèn)證響應(yīng)后,從所述認(rèn)證響應(yīng)中獲取會(huì)話密鑰;向所述會(huì)話目 標(biāo)實(shí)體發(fā)送攜帶有認(rèn)證信息的會(huì)話請(qǐng)求;認(rèn)證服務(wù)器,用于在接收到來自于所述會(huì)話請(qǐng)求實(shí)體的所述認(rèn)證請(qǐng)求后, 對(duì)所述會(huì)話請(qǐng)求實(shí)體以及所述會(huì)話目標(biāo)實(shí)體進(jìn)行認(rèn)證;iU正通過后,生成所述 會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰;向所述會(huì)話請(qǐng)求實(shí)體發(fā)送攜帶 有所述會(huì)話密鑰的認(rèn)證響應(yīng);會(huì)話目標(biāo)實(shí)體,用于在檢測(cè)到來自于所述會(huì)話請(qǐng)求實(shí)體的會(huì)話請(qǐng)求攜帶有 認(rèn)證信息時(shí),與所述會(huì)話請(qǐng)求實(shí)體交互信息,以獲取所述會(huì)話密鑰。
18、 如權(quán)利要求17所述的網(wǎng)絡(luò)系統(tǒng),其特征在于,所述網(wǎng)絡(luò)系統(tǒng)進(jìn)一步包括簽名代理實(shí)體,用于在接收到來自于所述會(huì)話請(qǐng)求實(shí)體的攜帶有認(rèn)證信息 的簽名服務(wù)請(qǐng)求后,與所述會(huì)話請(qǐng)求實(shí)體交互信息,獲取會(huì)話密鑰,生成對(duì)應(yīng) 該簽名服務(wù)請(qǐng)求的簽名票據(jù),向所述會(huì)話請(qǐng)求實(shí)體返回該簽名票據(jù)。
全文摘要
本發(fā)明公開了一種會(huì)話密鑰協(xié)商方法,應(yīng)用于P2P網(wǎng)絡(luò)中,包括接收來自會(huì)話請(qǐng)求實(shí)體的認(rèn)證請(qǐng)求;對(duì)會(huì)話請(qǐng)求實(shí)體以及會(huì)話請(qǐng)求目標(biāo)實(shí)體進(jìn)行認(rèn)證,如果認(rèn)證成功,則生成所述會(huì)話請(qǐng)求實(shí)體與所述會(huì)話目標(biāo)實(shí)體的會(huì)話密鑰;向所述認(rèn)證請(qǐng)求實(shí)體返回?cái)y帶有所述會(huì)話密鑰的認(rèn)證響應(yīng)。同時(shí)本發(fā)明還公開一種認(rèn)證服務(wù)器、會(huì)話請(qǐng)求實(shí)體、會(huì)話目標(biāo)實(shí)體以及P2P網(wǎng)絡(luò),提供了集中、安全、易管理的會(huì)話密鑰協(xié)商機(jī)制。
文檔編號(hào)H04L9/08GK101420413SQ20071003106
公開日2009年4月29日 申請(qǐng)日期2007年10月25日 優(yōu)先權(quán)日2007年10月25日
發(fā)明者劉經(jīng)及, 呂曉雨, 賢 朱, 朋 李, 金洪波 申請(qǐng)人:華為技術(shù)有限公司