170 likes | 265 Views
安全廣播. 廣播安全之要旨 安全廣播系統簡介 我們的研議. 廣播安全之要旨. 在機密可確保之前提下設計下列各項目 點對多點之資訊傳播方式 明文一份、密文一份 利用簽章技術確認送方身分 只有合法收受方可以解得明文. 2. 安全廣播系統簡介. U 5. U 1. U 4. U 3. U 2. 若將接受方那些合法接受資訊者看成 一個節點 ,則送方需製作 (e, d , m ) 值,且將 d 及 m ( 用於 mod m) 值送達接受方。. X. C. m. SID. CKD. SG. 確定送方簽章值. d. M. ID.
E N D
安全廣播 • 廣播安全之要旨 • 安全廣播系統簡介 • 我們的研議
廣播安全之要旨 在機密可確保之前提下設計下列各項目 點對多點之資訊傳播方式 明文一份、密文一份 利用簽章技術確認送方身分 只有合法收受方可以解得明文
2. 安全廣播系統簡介 U 5 U 1 U 4 U 3 U 2 • 若將接受方那些合法接受資訊者看成一個節點,則送方需製作 (e, d , m ) 值,且將 d 及 m (用於mod m)值送達接受方。
X C m SID CKD SG 確定送方簽章值 d M ID d • 任何收方之解得明文步驟 Cd mod m = (Me)d mod m = M
由於 d 值不能明送,且 d 之密文僅對合法收方有 用,所以送方之 d 值加密處理如下 : (1) 依序用 ei 及 mi 將 d 加密 : dei mod mi = Xi (2) 非收方之 Xi設定為 0 (3) 轉換 ( X1, X2, … , Xn) X 然後再將 X 經網路廣播出去。 • 任何合法收方之解開 d 值根據下述 : (1) 從 X 值中計算出 Xi值。 (2) Xidi mod mi = (dei mod mi)di mod mi = d
如何確定送方身分 ? (1) 送方之 SG 值計算方法 : signature = SUM( message blocks) + sender’s 簽章值 SG = ((signature)d送方mod m送方)e mod m (2) 收方之送方身分確認 : signature’ = SUM( message blocks ) + sender’s 簽章值 若 signature’ = ( SGd mod m )e送方mod m送方 則證明送方身分
如何檢驗 d 值之正確性 ? 因 CKD = de mod m 故 CKDd mod m = ( de )d mod m = d • 如何計算送方之 ID# 因 SID = ( ID# )e mod m 故 SIDd mod m = ( ( ID#)e)d mod m 以上觀念之實例一則如後 :
假如送方U5要將明文“BACK” 及 秘密金匙d = 5送給U1及U2 d = 5 “BACK” U5 U4 U1 “BACK” d = 5 U2 U3
X C m SID CKD SG X=38275669575 C=32 01 61 72 SID =66 CKD =31 m = 91 40 5 d=5 BACK SG=79 • 內層括號之值表示最後欲求之目的值。
(0) 由於送方用 ei 及 mi將 d 加密 : dei mod mi = xi 且將非收方之 xi值設定為 0 故(3, 2, 0, 0, 0)經中國餘數定理轉換成某一定值 X, X = 38275669575 • 收方如何算出 d ? X xi [38275669575 / 14] mod 5 = 3 對 U1 而言。 d = xi d收方mod m收方 = 37 mod 14 = 5
SID vs. ID • SID = E(送方之ID#) = (送方之ID#)e mod m • = (40)29 mod 91 = 66 • ID = (SID)d mod m = (66)5 mod 91 = 40 • (2) CKD VS. d • CKD = E(公用之秘密金匙) = (公用之秘密金匙)e mod m • = 529 mod 91 = 31 • d = (CKD)d mod m = 315 mod 91 =5 • (3) M C (based on RSA) • C = E(M) = Me mod m = (‘B’)29 mod 91 • = (02)29 mod 91 = 32 32:01:61:72
(4) C M M = D(C) = Cd mod m = 325 mod 91 = 02 = ‘B’ 32:01:61:72 (5) SG值之應用 signature = SUM( message blocks) + sender’s signature = ( 02 + 01 + 03 + 11) + 270 = 17 + 270 = 287 SG = ((signature)ds mod ms)e mod m = ((287)173 mod 323)29 mod 91 = (53)29 mod 91 = 79 signature’ = … = 287 signature’ = (SGd mod m )es5 mod ms = (795 mod 91)5 mod 323 = 535 mod 323 = 287 (以上由收方計算而印證之)
我們的研議( partially) Based on Single Key Concept (JIP, Vol.15, NO.1, ‘92) X B PB m SID CKD C SG X = 1048701 B = 151 PB = 69169464 753 104 673 673 268 817 753 121 672
加密方法 : 假設網路上有7個使用者,其金匙鍵值如上頁之表所示。 U1要送訊息 “HELLO”給 U3及 U6 “A” = 01, …, “Z” = 26 1. 利用 RSA 法計算公用金匙 (e, d, m) = (275, 11, 817) 。 2. 利用 Single Key Concept 計算 B 及 X 值 (A) 若是合法收方,則計算ai = (dei mod mi) + 1 否則 ai = 0 如今(a1,…,a7) = (0, 0, 150, 0, 0, 45, 0) (B) B = max( ai ) + 1 for all i = 151
(C) 選定非收方之 Ri 值為 0,而真收方不為0,且 1≦Ri,Rj≦|收方總人數|,Ri ≠Rj 故得R3 = 1,R6 =2,其餘均為 0。 (D) X = ni=1 ai BRi = 1048701 3. 利用 CRT 計算 PB 值 PB ≡Ri ( mod idi ) = 69169464 4. 計算SID, CKD, C, 及 SG SID = (id送方) mod m = 753 CKD = de mod m = 121 C = Me mod m = 753 104 673 673 268 SG = ( dds mod m送方) mod m = 672
解密方法 1. R收方= PB mod id收方 若其值為 0, 則非合法收方。 2. a收方= mod B 若其值為0, 則是非合法收方。 3. d = ( a收方– 1 )d收方mod m收方 若 d ≠ (( CKD )d mod m), 則 stop。 4. M = Cd mod m 5. SG’ = (( SG )d mod m )e送方mod m送方== d X R收方 B ? 若相等, 則印證M是Us所送
討論與結論 • 一般而言,我們的方案可以減輕傳輸的訊息量。 • 大幅度減小 X 之值,是我們繼續研究的目標,最近之專注焦點在於 PKDS 之有效應用。 • 資料壓縮或許亦可考慮。