亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種群組內(nèi)消息的通信方法和系統(tǒng)的制作方法

文檔序號:7811945閱讀:202來源:國知局
一種群組內(nèi)消息的通信方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種群組內(nèi)消息的通信方法和系統(tǒng),其中,所述方法包括:主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述群組的私鑰;所述主客戶端邀請從客戶端加入所述群組時,將所述群組的私鑰加密后發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的私鑰;所述群組的公鑰在所述主客戶端和從客戶端之間共享;所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述群組發(fā)送加密后的消息;和/或,所述主客戶端從所述群組獲取使用所述群組的公鑰加密后的消息,并使用所述群組的私鑰對所述加密后的消息進行解密,獲得消息。本發(fā)明實現(xiàn)了群組內(nèi)端到端的加密,提高了通信的靈活性和安全性。
【專利說明】一種群組內(nèi)消息的通信方法和系統(tǒng)

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信【技術(shù)領(lǐng)域】,特別是涉及一種群組內(nèi)消息的通信方法和系統(tǒng)。

【背景技術(shù)】
[0002] 即時通信(Instant messaging, IM)是一個終端服務(wù),允許兩人或多人使用網(wǎng)路即 時的傳遞文字信息、檔案、語音與視頻交流。即時通信按使用用途分為企業(yè)即時通信和網(wǎng)站 即時通信,根據(jù)裝載的對象又可分為手機即時通信和PC即時通信。
[0003] 即時通信系統(tǒng)中的端到端加密,是指信息在發(fā)送端進行加密,只有接收端可以解 密,通信鏈路中的任何其他節(jié)點,包括中心服務(wù)器,都無法進行解密,從而保證信息只有發(fā) 送端和接收端可以知曉。
[0004] 目前流行的即時通信系統(tǒng),比如蘋果公司的iMessage,實現(xiàn)了單用戶對單用戶的 端到端加密,但并不支持群組。騰訊公司的微信,雖然支持群組,但并不支持端到端加密,微 信服務(wù)器可以知曉所有通過微信傳輸?shù)男畔ⅰ?br>

【發(fā)明內(nèi)容】

[0005] 本發(fā)明提供一種群組內(nèi)消息的通信方法和系統(tǒng),以解決現(xiàn)有的即時通信系統(tǒng)不支 持群組內(nèi)的端到端加密的問題。
[0006] 為了解決上述問題,本發(fā)明公開了一種群組內(nèi)消息的通信方法,包括:
[0007] 主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述群組的私鑰;
[0008] 所述主客戶端邀請從客戶端加入所述群組時,將所述群組的私鑰加密后發(fā)送至所 述從客戶端,以使所述從客戶端獲得所述群組的私鑰;所述群組的公鑰在所述主客戶端和 從客戶端之間共享;
[0009] 所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述群組發(fā)送 加密后的消息;和/或,
[0010] 所述主客戶端從所述群組獲取使用所述群組的公鑰加密后的消息,并使用所述群 組的私鑰對所述加密后的消息進行解密,獲得消息。
[0011] 優(yōu)選地,所述方法還包括:
[0012] 所述從客戶端在向服務(wù)器注冊時,生成所述從客戶端的公鑰和所述從客戶端的私 鑰;所述從客戶端的公鑰在所述主客戶端和從客戶端之間共享。
[0013] 優(yōu)選地,所述主客戶端邀請從客戶端加入所述群組時,將所述群組的私鑰加密后 發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的私鑰,包括 :
[0014] 所述主客戶端使用所述從客戶端的公鑰對所述群組的私鑰進行非對稱加密,并發(fā) 送至服務(wù)器,以使所述從客戶端從所述服務(wù)器接收到進行了所述非對稱加密后的群組的私 鑰后,使用所述從客戶端的私鑰對所述加密后的群組的私鑰進行解密,獲得所述群組的私 鑰。
[0015] 優(yōu)選地,所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述 群組發(fā)送加密后的消息,包括:
[0016] 所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行非對稱加密,并向所述群 組發(fā)送所述非對稱加密后的消息。
[0017] 優(yōu)選地,所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述 群組發(fā)送加密后的消息,包括:
[0018] 所述主客戶端生成隨機密鑰;所述隨機密鑰本身使用所述群組的公鑰進行非對稱 加密;
[0019] 所述主客戶端使用所述隨機密鑰對待發(fā)送的消息進行對稱加密,并向所述群組發(fā) 送對稱加密后的消息,以使所述從客戶端使用所述群組的私鑰對加密后的隨機密鑰進行解 密,獲得所述隨機密鑰,并使用所述隨機密鑰對加密后的消息進行解密,獲得消息。
[0020] 本發(fā)明還公開了一種群組內(nèi)消息的通信系統(tǒng),包括:
[0021] 群組密鑰生成模塊,用于在主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述群 組的私鑰;
[0022] 群組私鑰加密模塊,用于在所述主客戶端邀請從客戶端加入所述群組時,將所述 群組的私鑰加密后發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的私鑰;所述群 組的公鑰在所述主客戶端和從客戶端之間共享;
[0023] 消息加密模塊,用于使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述群 組發(fā)送加密后的消息;和/或,
[0024] 消息解密模塊,用于從所述群組獲取使用所述群組的公鑰加密后的消息,并使用 所述群組的私鑰對所述加密后的消息進行解密,獲得消息。
[0025] 優(yōu)選地,所述系統(tǒng)還包括:
[0026] 從客戶端密鑰生成模塊,用于在所述從客戶端在向服務(wù)器注冊時,生成所述從客 戶端的公鑰和所述從客戶端的私鑰;所述從客戶端的公鑰在所述主客戶端和從客戶端之間 共享。
[0027] 優(yōu)選地,所述群組私鑰加密模塊使用所述從客戶端的公鑰對所述群組的私鑰進行 非對稱加密,并發(fā)送至服務(wù)器,以使所述從客戶端從所述服務(wù)器接收到進行了所述非對稱 加密后的群組的私鑰后,使用所述從客戶端的私鑰對所述加密后的群組的私鑰進行解密, 獲得所述群組的私鑰。
[0028] 優(yōu)選地,所述消息加密模塊使用所述群組的公鑰對待發(fā)送的消息進行非對稱加 密,并向所述群組發(fā)送所述非對稱加密后的消息。
[0029] 優(yōu)選地,所述消息加密模塊,包括:
[0030] 隨機密鑰生成子模塊,用于生成隨機密鑰;所述隨機密鑰本身使用所述群組的公 鑰進行非對稱加密;
[0031] 消息加密子模塊,用于使用所述隨機密鑰對待發(fā)送的消息進行對稱加密,并向所 述群組發(fā)送對稱加密后的消息,以使所述主客戶端和/或從客戶端使用所述群組的私鑰對 加密后的隨機密鑰進行解密,獲得所述隨機密鑰,并使用所述隨機密鑰對加密后的消息進 行解密,獲得消息。
[0032] 與【背景技術(shù)】相比,本發(fā)明包括以下優(yōu)點:
[0033] 在主客戶端創(chuàng)建群組時,生成群組的公鑰和私鑰,用群組的公鑰加密過的消息,只 有使用群組的私鑰才能解密。在主客戶端邀請從客戶端加入群組時,將群組的私鑰加密后 發(fā)送至從客戶端,以使從客戶端獲得群組的私鑰,同時,群組的公鑰在主客戶端和從客戶端 之間可以共享,即群組內(nèi)的主客戶端和從客戶端均可以使用群組的公鑰。
[0034] 主客戶端使用群組的公鑰對待發(fā)送的消息進行加密,并向群組發(fā)送加密后的消 息;主客戶端從群組獲取使用群組的公鑰加密后的消息,并使用群組的私鑰對加密后的消 息進行解密,獲得消息。
[0035] 本發(fā)明實現(xiàn)了群組內(nèi)主客戶端與從客戶端之間的端到端的消息加密傳輸,主要是 指消息在發(fā)送端加密后通過服務(wù)器發(fā)送給群組,由于只有群組內(nèi)的客戶端(包括主客戶端 和從客戶端)才可以使用群組的私鑰,所以只有群組中的客戶端可以對發(fā)送端加密后的消 息進行解密,群組外的客戶端,或者通信鏈路中的任何其他節(jié)點,包括中心服務(wù)器,均無法 對發(fā)送端加密后的消息進行解密,實現(xiàn)了群組內(nèi)端到端的加密,適用于某些對安全性要求 更高的場合,通信雙方可以確保不會被監(jiān)聽,提高了通信的靈活性和安全性。

【專利附圖】

【附圖說明】
[0036] 圖1是本發(fā)明實施例中一種群組內(nèi)消息的通信方法流程圖;
[0037] 圖2是本發(fā)明實施例中另一種群組內(nèi)消息的通信方法流程圖;
[0038] 圖3是本發(fā)明實施例中一種群組內(nèi)消息的通信方法示意圖;
[0039] 圖4是本發(fā)明實施例中一種群組內(nèi)消息的通信系統(tǒng)結(jié)構(gòu)圖;
[0040] 圖5是本發(fā)明實施例中另一種群組內(nèi)消息的通信系統(tǒng)結(jié)構(gòu)圖。

【具體實施方式】
[0041] 為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實 施方式對本發(fā)明作進一步詳細的說明。
[0042] 下面通過列舉幾個具體的實施例詳細介紹本發(fā)明提供的一種群組內(nèi)消息的通信 方法和系統(tǒng)。
[0043] 實施例一
[0044] 詳細介紹本發(fā)明實施例提供的一種群組內(nèi)消息的通信方法。
[0045] 參照圖1,示出了本發(fā)明實施例中一種群組內(nèi)消息的通信方法流程圖。
[0046] 步驟100,主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述群組的私鑰。
[0047] 所述主客戶端可以為創(chuàng)建群組的客戶端,即創(chuàng)建群組的客戶端被稱為主客戶端。 所述主客戶端在創(chuàng)建群組之前,已經(jīng)向服務(wù)器注冊,并且,在主客戶端項服務(wù)器注冊時,生 成主客戶端的公鑰和主客戶端的私鑰。
[0048] 所述群組的公鑰和私鑰僅限在該群組內(nèi)使用,無法應(yīng)用于其他群組。
[0049] 步驟102,所述主客戶端邀請從客戶端加入所述群組時,將所述群組的私鑰加密后 發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的私鑰。
[0050] 所述群組的公鑰可以在所述主客戶端和從客戶端之間共享。
[0051] 所述從客戶端在被邀請加入所述群組之前,已經(jīng)向服務(wù)器注冊。所述主客戶端將 群組的私鑰加密后發(fā)送至所述從客戶端,所述從客戶端可以對加密后的群組的私鑰進行解 密,獲得群組的私鑰。
[0052] 在所述步驟102中,所述主客戶端加密后的群組的私鑰只能使用從客戶端的私鑰 進行解密。從客戶端的私鑰由從客戶端保存,其他客戶端無法獲取,所以此步驟可以保證群 組的私鑰只能在群組內(nèi)的客戶端之間使用,群組外的客戶端無法獲取到群組的私鑰。
[0053] 步驟104,所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述 群組發(fā)送加密后的消息。
[0054] 使用所述群組的公鑰對待發(fā)送的消息進行加密,加密后的待發(fā)送的消息只能使用 群組的私鑰進行解密。由于群組的私鑰只有群組內(nèi)的客戶端才擁有,群組外的客戶端無群 組的私鑰,所以,使用群組的公鑰加密的待發(fā)送的消息,只有群組內(nèi)的客戶端才能解密。
[0055] 需要說明的是,所述步驟104還可以為:
[0056] 從客戶端使用群組的公鑰對待發(fā)送的消息進行加密,并向所述群組發(fā)送加密后的 消息。
[0057] 在群組內(nèi),主客戶端和從客戶端均可以向群組發(fā)送消息,無論是主客戶端還是從 客戶端,向群組發(fā)送消息的方式以及對消息進行加密的方式是相同的。
[0058] 步驟106,所述主客戶端從所述群組獲取使用所述群組的公鑰加密后的消息,并使 用所述群組的私鑰對所述加密后的消息進行解密,獲得消息。
[0059] 使用群組的公鑰進行加密的消息,只能使用群組的私鑰進行解密。只有群組內(nèi)的 客戶端才有群組的私鑰,所以,只有群組內(nèi)的客戶端才能對加密后的消息進行解密。
[0060] 需要說明的是,所述步驟106還可以為:
[0061] 從客戶端從所述群組獲取使用所述群組的公鑰加密后的消息,并使用所述群組的 私鑰對所述加密后的消息進行解密,獲得消息。
[0062] 在群組內(nèi),主客戶端和從客戶端均可以從群組獲取消息,無論是主客戶端還是從 客戶端,從群組獲取消息的方式以及對消息進行解密的方式是相同的。
[0063] 通常來講,如果群組內(nèi)只有一個主客戶端和一個從客戶端,主客戶端向群組發(fā)送 消息時,從客戶端從群組獲取主客戶端發(fā)送的消息;從客戶端向群組發(fā)送消息時,主客戶端 從群組獲取從客戶端發(fā)送的消息。如果群組內(nèi)有一個主客戶端和多個從客戶端,主客戶端 向群組發(fā)送消息時,多個從客戶端從群組獲取主客戶端發(fā)送的消息;從客戶端向群組發(fā)送 消息時,主客戶端和其他從客戶端從群組獲取該從客戶端發(fā)送的消息。
[0064] 需要說明的是,上述步驟104為加密消息,并向群組發(fā)送加密后消息的步驟,上述 步驟106為從群組獲取加密后消息,并對加密后的消息進行解密的步驟。在實際應(yīng)用中,上 述步驟104和步驟106可以同時出現(xiàn),也可以只出現(xiàn)其中任一步驟。即本實施例可以由步 驟100、步驟102、步驟104和步驟106共同組成,或者可以由步驟100、步驟102和步驟104 組成,或者可以由步驟100、步驟102和步驟106組成。
[0065] 綜上所述,在本發(fā)明實施例中,在主客戶端創(chuàng)建群組時,生成群組的公鑰和私鑰, 用群組的公鑰加密過的消息,只有使用群組的私鑰才能解密。在主客戶端邀請從客戶端加 入群組時,將群組的私鑰加密后發(fā)送至從客戶端,以使從客戶端獲得群組的私鑰,同時,群 組的公鑰在主客戶端和從客戶端之間可以共享,即群組內(nèi)的主客戶端和從客戶端均可以使 用群組的公鑰。
[0066] 主客戶端使用群組的公鑰對待發(fā)送的消息進行加密,并向群組發(fā)送加密后的消 息;主客戶端從群組獲取使用群組的公鑰加密后的消息,并使用群組的私鑰對加密后的消 息進行解密,獲得消息。
[0067] 本發(fā)明實施例實現(xiàn)了群組內(nèi)主客戶端與從客戶端之間的端到端的消息加密傳輸, 主要是指消息在發(fā)送端加密后通過服務(wù)器發(fā)送給群組,由于只有群組內(nèi)的客戶端(包括主 客戶端和從客戶端)才可以使用群組的私鑰,所以只有群組中的客戶端可以對發(fā)送端加密 后的消息進行解密,群組外的客戶端,或者通信鏈路中的任何其他節(jié)點,包括中心服務(wù)器, 均無法對發(fā)送端加密后的消息進行解密,實現(xiàn)了群組內(nèi)端到端的加密,適用于某些對安全 性要求更高的場合,通信雙方可以確保不會被監(jiān)聽,提高了通信的靈活性和安全性。
[0068] 實施例二
[0069] 詳細介紹本發(fā)明實施例提供的一種群組內(nèi)消息的通信方法。
[0070] 參照圖2,示出了本發(fā)明實施例中一種群組內(nèi)消息的通信方法流程圖。
[0071] 步驟200,主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述群組的私鑰。
[0072] 所述主客戶端可以為創(chuàng)建群組的客戶端,即創(chuàng)建群組的客戶端被稱為主客戶端。 所述主客戶端在創(chuàng)建群組之前,已經(jīng)向服務(wù)器注冊,并且,在主客戶端項服務(wù)器注冊時,生 成主客戶端的公鑰和主客戶端的私鑰。
[0073] 所述群組的公鑰和私鑰僅限在該群組內(nèi)使用,無法應(yīng)用于其他群組。
[0074] 步驟202,所述主客戶端邀請從客戶端加入所述群組時,將所述群組的私鑰加密后 發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的私鑰。
[0075] 所述群組的公鑰可以在所述主客戶端和從客戶端之間共享。
[0076] 優(yōu)選地,所述從客戶端在向服務(wù)器注冊時,生成所述從客戶端的公鑰和所述從客 戶端的私鑰。
[0077] 所述從客戶端的公鑰可以在所述主客戶端和從客戶端之間共享。
[0078] 優(yōu)選地,所述步驟202可以為:
[0079] 所述主客戶端邀請從客戶端加入所述群組時,所述主客戶端使用所述從客戶端的 公鑰對所述群組的私鑰進行非對稱加密,并發(fā)送至服務(wù)器,以使所述從客戶端從所述服務(wù) 器接收到進行了所述非對稱加密后的群組的私鑰后,使用所述從客戶端的私鑰對所述加密 后的群組的私鑰進行解密,獲得所述群組的私鑰。
[0080] 非對稱加密是一種密碼學(xué)算法類型,在這種密碼學(xué)方法中,需要一對密鑰,一是個 私人密鑰,另一個則是公開密鑰。這兩個密鑰是數(shù)學(xué)相關(guān),用某用戶密鑰加密后所得的信 息,只能用該用戶的解密密鑰才能解密。如果知道了其中一個,并不能計算出另外一個。因 此如果公開了一對密鑰中的一個,并不會危害到另外一個的秘密性質(zhì)。稱公開的密鑰為公 鑰;不公開的密鑰為私鑰。也就是說,使用從客戶端的公鑰進行非對稱加密,只有使用從客 戶端的私鑰才能進行解密。
[0081] 步驟204,所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述 群組發(fā)送加密后的消息。
[0082] 優(yōu)選地,所述步驟204可以為:
[0083] 所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行非對稱加密,并向所述群 組發(fā)送所述非對稱加密后的消息。
[0084] 優(yōu)選地,所述步驟204還可以包括下列子步驟:
[0085] 子步驟2041,所述主客戶端生成隨機密鑰。
[0086] 所述隨機密鑰本身使用所述群組的公鑰進行非對稱加密。
[0087] 使用群組的公鑰進行非對稱加密后的隨機密鑰,只有使用群組的私鑰才能解密。
[0088] 子步驟2042,所述主客戶端使用所述隨機密鑰對待發(fā)送的消息進行對稱加密,并 向所述群組發(fā)送對稱加密后的消息,以使所述從客戶端使用所述群組的私鑰對加密后的隨 機密鑰進行解密,獲得所述隨機密鑰,并使用所述隨機密鑰對加密后的消息進行解密,獲得 消息。
[0089] 對稱加密指加密和解密使用相同密鑰的加密算法。就是加密密鑰能夠從解密密鑰 中推算出來,同時解密密鑰也可以從加密密鑰中推算出來。而在大多數(shù)的對稱算法中,加密 密鑰和解密密鑰是相同的。它要求發(fā)送方和接收方在安全通信之前,商定一個密鑰。在對 稱加密算法中,數(shù)據(jù)發(fā)信方將明文(原始數(shù)據(jù))和加密密鑰一起經(jīng)過特殊加密算法處理后, 使其變成復(fù)雜的加密密文發(fā)送出去。收信方收到密文后,若想解讀原文,則需要使用加密用 過的密鑰及相同算法的逆算法對密文進行解密,才能使其恢復(fù)成可讀明文。在對稱加密算 法中,使用的密鑰只有一個,發(fā)收信雙方都使用這個密鑰對數(shù)據(jù)進行加密和解密,這就要求 解密方事先必須知道加密密鑰。
[0090] 由此可知,使用隨機密鑰對待發(fā)送的消息進行對稱加密,需要使用隨機密鑰進行 解密。隨機密鑰可以在群組內(nèi)的客戶端之間共享使用,群組外的客戶端無法使用隨機密鑰。
[0091] 在群組內(nèi),主客戶端和從客戶端均可以向群組發(fā)送消息,無論是主客戶端還是從 客戶端,向群組發(fā)送消息的方式以及對消息進行加密的方式是相同的。
[0092] 步驟206,所述從客戶端從所述群組獲取使用所述群組的公鑰加密后的消息,并使 用所述群組的私鑰對所述加密后的消息進行解密,獲得消息。
[0093] 在群組內(nèi),主客戶端和從客戶端均可以從群組獲取消息,無論是主客戶端還是從 客戶端,從群組獲取消息的方式以及對消息進行解密的方式是相同的。
[0094] 通常來講,如果群組內(nèi)只有一個主客戶端和一個從客戶端,主客戶端向群組發(fā)送 消息時,從客戶端從群組獲取主客戶端發(fā)送的消息;從客戶端向群組發(fā)送消息時,主客戶端 從群組獲取從客戶端發(fā)送的消息。如果群組內(nèi)有一個主客戶端和多個從客戶端,主客戶端 向群組發(fā)送消息時,多個從客戶端從群組獲取主客戶端發(fā)送的消息;從客戶端向群組發(fā)送 消息時,主客戶端和其他從客戶端從群組獲取該從客戶端發(fā)送的消息。
[0095] 綜上所述,在本發(fā)明實施例中,在主客戶端創(chuàng)建群組時,生成群組的公鑰和私鑰, 用群組的公鑰加密過的消息,只有使用群組的私鑰才能解密。在主客戶端邀請從客戶端加 入群組時,將群組的私鑰加密后發(fā)送至從客戶端,以使從客戶端獲得群組的私鑰,同時,群 組的公鑰在主客戶端和從客戶端之間可以共享,即群組內(nèi)的主客戶端和從客戶端均可以使 用群組的公鑰。
[0096] 主客戶端使用群組的公鑰對待發(fā)送的消息進行加密,并向群組發(fā)送加密后的消 息;述主客戶端從群組獲取使用群組的公鑰加密后的消息,并使用群組的私鑰對加密后的 消息進行解密,獲得消息。
[0097] 本發(fā)明實施例實現(xiàn)了群組內(nèi)主客戶端與從客戶端之間的端到端的消息加密傳輸, 主要是指消息在發(fā)送端加密后通過服務(wù)器發(fā)送給群組,由于只有群組內(nèi)的客戶端(包括主 客戶端和從客戶端)才可以使用群組的私鑰,所以只有群組中的客戶端可以對發(fā)送端加密 后的消息進行解密,群組外的客戶端,或者通信鏈路中的任何其他節(jié)點,包括中心服務(wù)器, 均無法對發(fā)送端加密后的消息進行解密,實現(xiàn)了群組內(nèi)端到端的加密,適用于某些對安全 性要求更高的場合,通信雙方可以確保不會被監(jiān)聽,提高了通信的靈活性和安全性。
[0098] 本發(fā)明實施例對于群組的私鑰的管理,可以進一步改進,以支持一個用戶擁有多 個設(shè)備的情況??梢栽谝粋€用戶的多個設(shè)備間安全的共享同一個公私鑰對,則在信息加密 時只需要加密一份,可以節(jié)省計算和存儲資源。
[0099] 實施例三
[0100] 詳細介紹本發(fā)明實施例提供的一種群組內(nèi)消息的通信方法。
[0101] 群組G1由客戶端A創(chuàng)建,客戶端A邀請客戶端B和客戶端C加入群組G1??蛻舳?A、客戶端B和客戶端C在向服務(wù)器注冊時,均已生成了各自的公鑰和私鑰,并把各自的公鑰 發(fā)送至服務(wù)器,使得各自的公鑰可以在所有客戶端設(shè)備之間共享,各自的私鑰在客戶端本 地保存,客戶端無法獲取其他客戶端的私鑰。
[0102] 參照圖3,示出了本發(fā)明實施例中一種群組內(nèi)消息的通信方法示意圖。
[0103] 步驟300,客戶端A向服務(wù)器申請創(chuàng)建群組G1,生成群組G1的公私鑰對。
[0104] 客戶端A創(chuàng)建一個群組G1,并為群組G1生成公私鑰對。群組G1的公鑰為G1_PUB_ KEY,群組G1的私鑰為G1_PRI_KEY,群組G1的私鑰此時由客戶端A保管,群組G1的公鑰可 以發(fā)送給服務(wù)器。
[0105] 步驟302,客戶端A向服務(wù)器邀請客戶端B加入群組G1。
[0106] 客戶端A邀請客戶端B加入群組G1時,把群組G1的私鑰加密后發(fā)送給客戶端B, 可以使用客戶端B的公鑰B_PUB_KEY通過非對稱加密算法進行加密,從而保證只有客戶端 B可以解密出群組G1的私鑰。
[0107] 步驟304,服務(wù)器向客戶端B發(fā)送非對稱加密后的群組G1的私鑰。
[0108] 非對稱加密后的群組G1的私鑰可以表示為AE(G1_PRI_KEY,B_PUB_KEY),代表用 客戶端B的公鑰B_PUB_KEY來對群組G1的私鑰G1_PRI_KEY進行非對稱加密,AE()代表非 對稱加密函數(shù),根據(jù)非對稱密碼學(xué)的理論,只有知道客戶端B的私鑰B_PRI_KEY才能完成解 密,所有此時只有客戶端B才能解密出G1_PRI_KEY。實際使用中可以在非對稱加密后的群 組G1的私鑰中增加簽名、時間戳、一次性隨機數(shù)等信息以提高安全性。
[0109] 步驟306,客戶端A向服務(wù)器邀請客戶端C加入群組G1。
[0110] 客戶端A邀請客戶端C加入群組G1時,把群組G1的私鑰加密后發(fā)送給客戶端C, 可以使用客戶端C的公鑰C_PUB_KEY通過非對稱加密算法進行加密,從而保證只有客戶端 C可以解密出群組G1的私鑰。
[0111] 步驟308,服務(wù)器向客戶端C發(fā)送非對稱加密后的群組G1的私鑰。
[0112] 非對稱加密后的群組G1的私鑰可以表示為AE(G1_PRI_KEY,C_PUB_KEY),代表用 客戶端C的公鑰C_PUB_KEY來對群組G1的私鑰G1_PRI_KEY進行非對稱加密,根據(jù)非對稱 密碼學(xué)的理論,只有知道客戶端C的私鑰C_PRI_KEY才能完成解密,所有此時只有客戶端C 才能解密出G1_PRI_KEY。實際使用中可以在非對稱加密后的群組G1的私鑰中增加簽名、時 間戳、一次性隨機數(shù)等信息以提高安全性。
[0113] 步驟310,客戶端A對待發(fā)送的消息Μ進行加密,并發(fā)送至群組G1。
[0114] 客戶端Α向群組G1發(fā)送消息時,使用群組G1的公鑰對消息進行加密,表示為 AE(M,G1_PUB_KEY),如果消息Μ包含比較多的信息,比如長文本、圖片、語音、視頻等,可以 先產(chǎn)生隨機密鑰RK,用RK通過對稱加密算法對消息Μ進行加密,而RK本身使用G1_PUB_ KEY通過非對稱加密算法進行加密,從而提高加解密的速度,因為對稱加密比非對稱加密的 效率更高。也就是說,客戶端A實際發(fā)送的內(nèi)容可以是SE (M,RK) +AE (RK,G1_PUB_KEY),SE 代表某種對稱加密算法。同理,實際發(fā)送的信息可能還包括時間戳、一次性隨機數(shù)、數(shù)字簽 名等信息以進一步提高安全性。從而保證只有群組成員客戶端B和C能夠解密。即使是服 務(wù)器,也不知道群組G1的私鑰,無法解密群組內(nèi)傳遞的消息,從而實現(xiàn)群組內(nèi)的端到端消 息傳遞的安全性。
[0115] 步驟312,服務(wù)器將加密后的消息Μ發(fā)送至客戶端B和C。
[0116] 由于客戶端Β和C知道群組G1的私鑰G1_PRI_KEY,所以使用群組G1的公鑰Gl_ PUB_KEY加密后的消息M,可以由客戶端B和C使用群組G1的私鑰G1_PRI_KEY進行解密。
[0117] 也就是說,最終只有群組G1的成員客戶端A、B和C知道群組G1的私鑰G1_PRI_ KEY,服務(wù)器并不知道G1_PRI_KEY,所以通過G1_PUB_KEY加密過的消息M,只有客戶端A、B 和C才能解密,從而實現(xiàn)了群組內(nèi)的端到端加密。
[0118] 綜上所述,在本發(fā)明實施例中,在主客戶端創(chuàng)建群組時,生成群組的公鑰和私鑰, 用群組的公鑰加密過的消息,只有使用群組的私鑰才能解密。在主客戶端邀請從客戶端加 入群組時,將群組的私鑰加密后發(fā)送至從客戶端,以使從客戶端獲得群組的私鑰,同時,群 組的公鑰在主客戶端和從客戶端之間可以共享,即群組內(nèi)的主客戶端和從客戶端均可以使 用群組的公鑰。
[0119] 主客戶端使用群組的公鑰對待發(fā)送的消息進行加密,并向群組發(fā)送加密后的消 息;述主客戶端從群組獲取使用群組的公鑰加密后的消息,并使用群組的私鑰對加密后的 消息進行解密,獲得消息。
[0120] 本發(fā)明實施例實現(xiàn)了群組內(nèi)主客戶端與從客戶端之間的端到端的消息加密傳輸, 主要是指消息在發(fā)送端加密后通過服務(wù)器發(fā)送給群組,由于只有群組內(nèi)的客戶端(包括主 客戶端和從客戶端)才可以使用群組的私鑰,所以只有群組中的客戶端可以對發(fā)送端加密 后的消息進行解密,群組外的客戶端,或者通信鏈路中的任何其他節(jié)點,包括中心服務(wù)器, 均無法對發(fā)送端加密后的消息進行解密,實現(xiàn)了群組內(nèi)端到端的加密,適用于某些對安全 性要求更高的場合,通信雙方可以確保不會被監(jiān)聽,提高了通信的靈活性和安全性。
[0121] 本發(fā)明實施例對于群組的私鑰的管理,可以進一步改進,以支持一個用戶擁有多 個設(shè)備的情況??梢栽谝粋€用戶的多個設(shè)備間安全的共享同一個公私鑰對,則在信息加密 時只需要加密一份,可以節(jié)省計算和存儲資源。
[0122] 實施例四
[0123] 詳細介紹本發(fā)明實施例提供的一種群組內(nèi)消息的通信系統(tǒng)。
[0124] 所述系統(tǒng)可以包括:群組密鑰生成模塊400,群組私鑰加密模塊402,消息加密模 塊404,和/或,消息解密模塊406。
[0125] 即所述系統(tǒng)可以包括:群組密鑰生成模塊400,群組私鑰加密模塊402,消息加密 模塊404,和消息解密模塊406。所述系統(tǒng)還可以包括:群組密鑰生成模塊400,群組私鑰加 密模塊402,消息加密模塊404?;蛘?,所述系統(tǒng)還可以包括:群組密鑰生成模塊400,群組 私鑰加密模塊402,消息解密模塊406。
[0126] 參照圖4,示出了本發(fā)明實施例中一種群組內(nèi)消息的通信系統(tǒng)結(jié)構(gòu)圖。
[0127] 下面分別詳細介紹各模塊的功能以及各模塊之間的關(guān)系。
[0128] 群組密鑰生成模塊400,用于在主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述 群組的私鑰。
[0129] 群組私鑰加密模塊402,用于在所述主客戶端邀請從客戶端加入所述群組時,將所 述群組的私鑰加密后發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的私鑰。
[0130] 所述群組的公鑰可以在所述主客戶端和從客戶端之間共享。
[0131] 消息加密模塊404,用于使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述 群組發(fā)送加密后的消息。
[0132] 消息解密模塊406,用于從所述群組獲取使用所述群組的公鑰加密后的消息,并使 用所述群組的私鑰對所述加密后的消息進行解密,獲得消息。
[0133] 綜上所述,在本發(fā)明實施例中,在主客戶端創(chuàng)建群組時,生成群組的公鑰和私鑰, 用群組的公鑰加密過的消息,只有使用群組的私鑰才能解密。在主客戶端邀請從客戶端加 入群組時,將群組的私鑰加密后發(fā)送至從客戶端,以使從客戶端獲得群組的私鑰,同時,群 組的公鑰在主客戶端和從客戶端之間可以共享,即群組內(nèi)的主客戶端和從客戶端均可以使 用群組的公鑰。
[0134] 主客戶端使用群組的公鑰對待發(fā)送的消息進行加密,并向群組發(fā)送加密后的消 息;述主客戶端從群組獲取使用群組的公鑰加密后的消息,并使用群組的私鑰對加密后的 消息進行解密,獲得消息。
[0135] 本發(fā)明實施例實現(xiàn)了群組內(nèi)主客戶端與從客戶端之間的端到端的消息加密傳輸, 主要是指消息在發(fā)送端加密后通過服務(wù)器發(fā)送給群組,由于只有群組內(nèi)的客戶端(包括主 客戶端和從客戶端)才可以使用群組的私鑰,所以只有群組中的客戶端可以對發(fā)送端加密 后的消息進行解密,群組外的客戶端,或者通信鏈路中的任何其他節(jié)點,包括中心服務(wù)器, 均無法對發(fā)送端加密后的消息進行解密,實現(xiàn)了群組內(nèi)端到端的加密,適用于某些對安全 性要求更高的場合,通信雙方可以確保不會被監(jiān)聽,提高了通信的靈活性和安全性。
[0136] 實施例五
[0137] 詳細介紹本發(fā)明實施例提供的一種群組內(nèi)消息的通信系統(tǒng)。
[0138] 所述系統(tǒng)可以包括:群組密鑰生成模塊500,群組私鑰加密模塊502,消息加密模 塊504,和/或,消息解密模塊506,從客戶端密鑰生成模塊508。
[0139] 即所述系統(tǒng)可以包括:群組密鑰生成模塊500,群組私鑰加密模塊502,消息加密 模塊504,消息解密模塊506和從客戶端密鑰生成模塊508。所述系統(tǒng)還可以包括:群組密 鑰生成模塊500,群組私鑰加密模塊502,消息加密模塊504和從客戶端密鑰生成模塊508。 或者,所述系統(tǒng)還可以包括:群組密鑰生成模塊500,群組私鑰加密模塊502,消息解密模塊 506和從客戶端密鑰生成模塊508。
[0140] 其中,所述消息加密模塊504可以包括:
[0141] 隨機密鑰生成子模塊5041,消息加密子模塊5042。
[0142] 參照圖5,示出了本發(fā)明實施例中一種群組內(nèi)消息的通信系統(tǒng)結(jié)構(gòu)圖。
[0143] 下面分別詳細介紹各模塊、各子模塊的功能以及各模塊、各子模塊之間的關(guān)系。
[0144] 群組密鑰生成模塊500,用于在主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述 群組的私鑰。
[0145] 從客戶端密鑰生成模塊508,用于在所述從客戶端在向服務(wù)器注冊時,生成所述從 客戶端的公鑰和所述從客戶端的私鑰;所述從客戶端的公鑰在所述主客戶端和從客戶端之 間共享。
[0146] 群組私鑰加密模塊502,用于在所述主客戶端邀請從客戶端加入所述群組時,將所 述群組的私鑰加密后發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的私鑰。
[0147] 所述群組的公鑰可以在所述主客戶端和從客戶端之間共享。
[0148] 優(yōu)選地,所述群組私鑰加密模塊502可以使用所述從客戶端的公鑰對所述群組的 私鑰進行非對稱加密,并發(fā)送至服務(wù)器,以使所述從客戶端從所述服務(wù)器接收到進行了所 述非對稱加密后的群組的私鑰后,使用所述從客戶端的私鑰對所述加密后的群組的私鑰進 行解密,獲得所述群組的私鑰。
[0149] 消息加密模塊504,用于使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述 群組發(fā)送加密后的消息。
[0150] 優(yōu)選地,所述消息加密模塊504可以使用所述群組的公鑰對待發(fā)送的消息進行非 對稱加密,并向所述群組發(fā)送所述非對稱加密后的消息。
[0151] 優(yōu)選地,所述消息加密模塊504,可以包括:
[0152] 隨機密鑰生成子模塊5041,用于生成隨機密鑰。
[0153] 所述隨機密鑰本身使用所述群組的公鑰進行非對稱加密。
[0154] 消息加密子模塊5042,用于使用所述隨機密鑰對待發(fā)送的消息進行對稱加密,并 向所述群組發(fā)送對稱加密后的消息,以使所述主客戶端和/或從客戶端使用所述群組的私 鑰對加密后的隨機密鑰進行解密,獲得所述隨機密鑰,并使用所述隨機密鑰對加密后的消 息進行解密,獲得消息。
[0155] 需要說明的是,所述消息加密子模塊5042可以位于主客戶端中,也可以位于從客 戶端中。
[0156] 當所述消息加密子模塊5042位于主客戶端中時,消息加密子模塊5042使用所述 隨機密鑰對待發(fā)送的消息進行對稱加密,并向所述群組發(fā)送對稱加密后的消息,以使所述 從客戶端使用所述群組的私鑰對加密后的隨機密鑰進行解密,獲得所述隨機密鑰,并使用 所述隨機密鑰對加密后的消息進行解密,獲得消息。
[0157] 當所述消息加密子模塊5042位于從客戶端中時,此時群組內(nèi)只有一個從客戶端, 消息加密子模塊5042使用所述隨機密鑰對待發(fā)送的消息進行對稱加密,并向所述群組發(fā) 送對稱加密后的消息,以使所述主客戶端使用所述群組的私鑰對加密后的隨機密鑰進行解 密,獲得所述隨機密鑰,并使用所述隨機密鑰對加密后的消息進行解密,獲得消息。
[0158] 當所述消息加密子模塊5042位于從客戶端中時,此時群組內(nèi)有多個從客戶端,消 息加密子模塊5042使用所述隨機密鑰對待發(fā)送的消息進行對稱加密,并向所述群組發(fā)送 對稱加密后的消息,以使所述主客戶端和從客戶端使用所述群組的私鑰對加密后的隨機密 鑰進行解密,獲得所述隨機密鑰,并使用所述隨機密鑰對加密后的消息進行解密,獲得消 肩、。
[0159] 消息解密模塊506,用于從所述群組獲取使用所述群組的公鑰加密后的消息,并使 用所述群組的私鑰對所述加密后的消息進行解密,獲得消息。
[0160] 綜上所述,在本發(fā)明實施例中,在主客戶端創(chuàng)建群組時,生成群組的公鑰和私鑰, 用群組的公鑰加密過的消息,只有使用群組的私鑰才能解密。在主客戶端邀請從客戶端加 入群組時,將群組的私鑰加密后發(fā)送至從客戶端,以使從客戶端獲得群組的私鑰,同時,群 組的公鑰在主客戶端和從客戶端之間可以共享,即群組內(nèi)的主客戶端和從客戶端均可以使 用群組的公鑰。
[0161] 主客戶端使用群組的公鑰對待發(fā)送的消息進行加密,并向群組發(fā)送加密后的消 息;述主客戶端從群組獲取使用群組的公鑰加密后的消息,并使用群組的私鑰對加密后的 消息進行解密,獲得消息。
[0162] 本發(fā)明實施例實現(xiàn)了群組內(nèi)主客戶端與從客戶端之間的端到端的消息加密傳輸, 主要是指消息在發(fā)送端加密后通過服務(wù)器發(fā)送給群組,由于只有群組內(nèi)的客戶端(包括主 客戶端和從客戶端)才可以使用群組的私鑰,所以只有群組中的客戶端可以對發(fā)送端加密 后的消息進行解密,群組外的客戶端,或者通信鏈路中的任何其他節(jié)點,包括中心服務(wù)器, 均無法對發(fā)送端加密后的消息進行解密,實現(xiàn)了群組內(nèi)端到端的加密,適用于某些對安全 性要求更高的場合,通信雙方可以確保不會被監(jiān)聽,提高了通信的靈活性和安全性。
[0163] 本發(fā)明實施例對于群組的私鑰的管理,可以進一步改進,以支持一個用戶擁有多 個設(shè)備的情況。可以在一個用戶的多個設(shè)備間安全的共享同一個公私鑰對,則在信息加密 時只需要加密一份,可以節(jié)省計算和存儲資源。
[0164] 對于系統(tǒng)實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān) 之處參見方法實施例的部分說明即可。
[0165] 本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與 其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
[0166] 以上對本發(fā)明實施例所提供的一種群組內(nèi)消息的通信方法和系統(tǒng),進行了詳細介 紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只 是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā) 明的思想,在【具體實施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理 解為對本發(fā)明的限制。
【權(quán)利要求】
1. 一種群組內(nèi)消息的通信方法,其特征在于,包括: 主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述群組的私鑰; 所述主客戶端邀請從客戶端加入所述群組時,將所述群組的私鑰加密后發(fā)送至所述從 客戶端,以使所述從客戶端獲得所述群組的私鑰;所述群組的公鑰在所述主客戶端和從客 戶端之間共享; 所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述群組發(fā)送加密 后的消息;和/或, 所述主客戶端從所述群組獲取使用所述群組的公鑰加密后的消息,并使用所述群組的 私鑰對所述加密后的消息進行解密,獲得消息。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 所述從客戶端在向服務(wù)器注冊時,生成所述從客戶端的公鑰和所述從客戶端的私鑰; 所述從客戶端的公鑰在所述主客戶端和從客戶端之間共享。
3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述主客戶端邀請從客戶端加入所述群 組時,將所述群組的私鑰加密后發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的 私鑰,包括: 所述主客戶端使用所述從客戶端的公鑰對所述群組的私鑰進行非對稱加密,并發(fā)送 至服務(wù)器,以使所述從客戶端從所述服務(wù)器接收到進行了所述非對稱加密后的群組的私鑰 后,使用所述從客戶端的私鑰對所述加密后的群組的私鑰進行解密,獲得所述群組的私鑰。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述主客戶端使用所述群組的公鑰對待 發(fā)送的消息進行加密,并向所述群組發(fā)送加密后的消息,包括: 所述主客戶端使用所述群組的公鑰對待發(fā)送的消息進行非對稱加密,并向所述群組發(fā) 送所述非對稱加密后的消息。
5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述主客戶端使用所述群組的公鑰對待 發(fā)送的消息進行加密,并向所述群組發(fā)送加密后的消息,包括: 所述主客戶端生成隨機密鑰;所述隨機密鑰本身使用所述群組的公鑰進行非對稱加 密; 所述主客戶端使用所述隨機密鑰對待發(fā)送的消息進行對稱加密,并向所述群組發(fā)送對 稱加密后的消息,以使所述從客戶端使用所述群組的私鑰對加密后的隨機密鑰進行解密, 獲得所述隨機密鑰,并使用所述隨機密鑰對加密后的消息進行解密,獲得消息。
6. -種群組內(nèi)消息的通信系統(tǒng),其特征在于,包括: 群組密鑰生成模塊,用于在主客戶端創(chuàng)建群組時,生成所述群組的公鑰和所述群組的 私鑰; 群組私鑰加密模塊,用于在所述主客戶端邀請從客戶端加入所述群組時,將所述群組 的私鑰加密后發(fā)送至所述從客戶端,以使所述從客戶端獲得所述群組的私鑰;所述群組的 公鑰在所述主客戶端和從客戶端之間共享; 消息加密模塊,用于使用所述群組的公鑰對待發(fā)送的消息進行加密,并向所述群組發(fā) 送加密后的消息;和/或, 消息解密模塊,用于從所述群組獲取使用所述群組的公鑰加密后的消息,并使用所述 群組的私鑰對所述加密后的消息進行解密,獲得消息。
7. 根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括: 從客戶端密鑰生成模塊,用于在所述從客戶端在向服務(wù)器注冊時,生成所述從客戶端 的公鑰和所述從客戶端的私鑰;所述從客戶端的公鑰在所述主客戶端和從客戶端之間共 享。
8. 根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述群組私鑰加密模塊使用所述從客戶 端的公鑰對所述群組的私鑰進行非對稱加密,并發(fā)送至服務(wù)器,以使所述從客戶端從所述 服務(wù)器接收到進行了所述非對稱加密后的群組的私鑰后,使用所述從客戶端的私鑰對所述 加密后的群組的私鑰進行解密,獲得所述群組的私鑰。
9. 根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述消息加密模塊使用所述群組的公鑰 對待發(fā)送的消息進行非對稱加密,并向所述群組發(fā)送所述非對稱加密后的消息。
10. 根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述消息加密模塊,包括: 隨機密鑰生成子模塊,用于生成隨機密鑰;所述隨機密鑰本身使用所述群組的公鑰進 行非對稱加密; 消息加密子模塊,用于使用所述隨機密鑰對待發(fā)送的消息進行對稱加密,并向所述群 組發(fā)送對稱加密后的消息,以使所述主客戶端和/或從客戶端使用所述群組的私鑰對加密 后的隨機密鑰進行解密,獲得所述隨機密鑰,并使用所述隨機密鑰對加密后的消息進行解 密,獲得消息。
【文檔編號】H04L9/08GK104219051SQ201410413046
【公開日】2014年12月17日 申請日期:2014年8月20日 優(yōu)先權(quán)日:2014年8月20日
【發(fā)明者】施幸東 申請人:北京奇藝世紀科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1