楊義先,鈕心忻
(北京郵電大學(xué) 信息安全中心,北京 100876)
?
安全通論(3)
——攻防篇之“非盲對抗”之“石頭剪刀布”
楊義先,鈕心忻
(北京郵電大學(xué) 信息安全中心,北京 100876)
編者按:“石頭剪刀布”是一種發(fā)源于中國的猜拳游戲,是用來產(chǎn)生隨機(jī)結(jié)果以作決策。但有時(shí)它并不隨機(jī),因?yàn)橛螒蛘呖梢愿鶕?jù)經(jīng)驗(yàn),判斷對手的手法。本文給出了“石頭剪刀布”的一種“白富美”新玩法。所謂“白”,即思路清清楚楚、明明白白;所謂“富”,即理論內(nèi)涵非常豐富;所謂“美”,即結(jié)論絕對數(shù)學(xué)美?!栋踩ㄕ摗返镊攘σ苍谶@里得到了幽默體現(xiàn)。本文轉(zhuǎn)自《科學(xué)網(wǎng)》楊義先教授與鈕心忻教授撰寫的博文,為與本刊風(fēng)格一致,我們對文字略作了一些微調(diào)。閱讀原文可登錄以下網(wǎng)址:http://blog.sciencenet.cn/blog-453322-948089.html。
楊義先教授,博士生導(dǎo)師,災(zāi)備技術(shù)國家工程實(shí)驗(yàn)室主任,北京郵電大學(xué)信息安全中心主任,教育部網(wǎng)絡(luò)攻防重點(diǎn)實(shí)驗(yàn)室主任,《微型機(jī)與應(yīng)用》編委,主要研究方向:網(wǎng)絡(luò)空間安全、現(xiàn)代密碼學(xué)和糾錯(cuò)編碼等。
鈕心忻博士,教授,博士生導(dǎo)師。北京郵電大學(xué)學(xué)士和碩士學(xué)位,香港中文大學(xué)電子工程系博士學(xué)位。1997年起在北京郵電大學(xué)信息工程學(xué)院(現(xiàn)計(jì)算機(jī)學(xué)院)從事教學(xué)與科研工作。主要研究方向:網(wǎng)絡(luò)與信息安全、信號與信息處理等。
全人類,數(shù)千年來,都在玩“石頭剪刀布”,而且,玩出了無盡幸福!
由浙江大學(xué)、浙江工商大學(xué)、中國科學(xué)院等單位組成的跨學(xué)科團(tuán)隊(duì),在300多名志愿者的配合下,歷時(shí)4年,終于把“石頭剪刀布”玩成了“高大上”,其成果被評為“麻省理工學(xué)院科技評論2014年度最優(yōu)”,這也是我國社科成果首次入選該頂級國際科技評論。
本文利用《安全通論》,只需一張紙、一支筆,就把“石頭剪刀布”玩成“白富美”。所謂“白”,即思路清清楚楚、明明白白;所謂“富”,即理論內(nèi)涵非常豐富;所謂“美”,即結(jié)論絕對數(shù)學(xué)美。
設(shè)甲與乙玩“石頭剪刀布”。他們可分別用隨機(jī)變量X和Y來表示:
當(dāng)甲出拳為剪刀、石頭、布時(shí),分別記為X=0、X=1、X=2;
當(dāng)乙出拳為剪刀、石頭、布時(shí),分別記為Y=0、Y=1、Y=2。
根據(jù)概率論中的“大數(shù)定律”,頻率的極限趨于概率,所以甲乙雙方的出拳習(xí)慣,可以用隨機(jī)變量X和Y的概率分布表示為:
Pr(X=0)=p,即甲出“剪刀”的概率;
Pr(X=1)=q,即甲出“石頭”的概率;
Pr(X=2)=1-p-q,即甲出“布”的概率。這里0
Pr(Y=0)=r,即乙出“剪刀”的概率;
Pr(Y=1)=s,即乙出“石頭”的概率;
Pr(Y=2)=1-r-s,即乙出“布”的概率。這里0 同樣,還可以統(tǒng)計(jì)出二維隨機(jī)變量(X,Y)的聯(lián)合分布概率: Pr(X=0,Y=0)=a,即甲、乙均出“剪刀”的概率; Pr(X=0,Y=1)=b,即甲出“剪刀”、乙出“石頭”的概率; Pr(X=0,Y=2)=1-a-b,即甲出“剪刀”,乙出“布”的概率。這里0 Pr(X=1,Y=0)=e,即甲出“石頭”,乙出“剪刀”的概率; Pr(X=1,Y=1)=f,即甲、乙均出“石頭”的概率; Pr(X=1,Y=2)=1-e-f,即甲出“石頭”,乙出“布”的概率。這里0 Pr(X=2,Y=0)=g,即甲出“布”,乙出“剪刀”的概率; Pr(X=2,Y=1)=h,即甲出“布”,乙出“石頭”的概率; Pr(X=2,Y=2)=1-g-h,即甲、乙均出“布”的概率。這里0 由隨機(jī)變量X和Y,構(gòu)造另一個(gè)隨機(jī)變量Z=[2(1+X+Y)]mod3。由于任意兩個(gè)隨機(jī)變量都可構(gòu)成一個(gè)通信信道,所以,以X為輸入,以Z為輸出,可以得到一個(gè)通信信道(X;Z),稱為“甲方信道”。 如果在某次游戲中甲方贏,那么,就只可能有三種情況: 情況1:“甲出剪刀,乙出布”,即,“X=0,Y=2”,這也等價(jià)于“X=0,Z=0”,即“甲方信道”的輸入等于輸出; 情況2:“甲出石頭,乙出剪刀”,即,“X=1,Y=0”,這也等價(jià)于“X=1,Z=1”,即“甲方信道”的輸入等于輸出; 情況3:“甲出布,乙出石頭”,即,“X=2,Y=1”,這也等價(jià)于“X=2,Z=2”,即“甲方信道”的輸入等于輸出。 反過來,如果“甲方信道”將1比特信息成功地從發(fā)端送到了收端,那么,也只有三種可能的情況: 情況1:輸入和輸出都等于0,即,“X=0,Z=0”,這也等價(jià)于“X=0,Y=2”,即,“甲出剪刀,乙出布”,即,甲贏; 情況2:輸入和輸出都等于1,即,“X=1,Z=1”,這也等價(jià)于“X=1,Y=0”,即,“甲出石頭,乙出剪刀”,即,甲贏; 情況3:輸入和輸出都等于2,即,“X=2,Z=2”,這也等價(jià)于“X=2,Y=1”,即,“甲出布,乙出石頭”,即,甲贏。 綜合以上正反兩方面,共6種情況,可得到一個(gè)重要引理: 引理1:甲贏一次,就意味著“甲方信道”成功地把1比特信息從發(fā)端送到了收端;反之亦然。 再利用隨機(jī)變量Y和Z構(gòu)造一個(gè)信道(Y;Z),稱之為“乙方信道”,它以Y為輸入,以Z為輸出。那么,仿照前面的論述,可得如下引理: 引理2:乙方贏一次,就意味著“乙方信道”成功地把1比特信息,從發(fā)端送到了收端;反之亦然。 由此可見,甲乙雙方玩“石頭剪刀布”的輸贏問題,就轉(zhuǎn)化成了“甲方信道”和“乙方信道”能否成功地傳輸信息比特的問題。根據(jù)仙農(nóng)第二定理[3]可知:信道容量就等于該信道能夠成功傳輸?shù)男畔⒈忍財(cái)?shù)。所以,“石頭剪刀布”的游戲問題就轉(zhuǎn)化成了信道容量問題。更準(zhǔn)確地說,本文有如下定理: 定理1(“石頭剪刀布”定理):如果剔除“平局”不考慮(即忽略甲乙雙方都出相同手勢的情況),那么, (1)針對甲方來說,對任意k/n≤C,都一定有某種技巧(對應(yīng)于仙農(nóng)編碼)使得在nC次游戲中,甲方能夠勝乙方k次;如果在某m次游戲中,甲方已經(jīng)勝出乙方u次,那么,一定有u≤mC。這里C是“甲方信道”的容量。 (2)針對乙方來說,對任意k/n≤D,都一定有某種技巧(對應(yīng)于仙農(nóng)編碼)使得在nD次游戲中,乙方能夠勝甲方k次;如果在某m次游戲中,乙方已經(jīng)勝出甲方u次,那么,一定有u≤mD。這里D是“乙方信道”的容量。 (3)如果C 由于“甲方信道”和“乙方信道”的信道容量都有現(xiàn)成的計(jì)算公式,這里略去C和D的計(jì)算細(xì)節(jié)(有特殊興趣的讀者,可閱讀原文網(wǎng)址附件中的Word版本)。 由定理1可知,甲乙雙方在“石頭剪刀布”游戲中的勝負(fù),其實(shí)事先就已經(jīng)“天定”了,某方若想爭取更大的勝利,那他就必須努力“改變命運(yùn)”。下面分幾種情況來考慮: (1)兩個(gè)傻瓜之間的游戲 所謂“兩個(gè)傻瓜”,意指甲乙雙方都固守自己的習(xí)慣,無論過去的輸贏情況怎樣,他們都按既定習(xí)慣“出牌”。這時(shí),由定理1已經(jīng)知道:如果C (2)一個(gè)傻瓜與一個(gè)智者之間的游戲 如果甲是傻瓜,他仍然堅(jiān)持其固有的習(xí)慣“出牌”,那么,雙方對抗足夠多的次數(shù)后,乙方就可以計(jì)算出對應(yīng)于甲方的,隨機(jī)變量X的分布概率p和q,以及相關(guān)的條件概率分布,并最終計(jì)算出“甲方信道”的信道容量,然后,再通過調(diào)整自己的習(xí)慣(即隨機(jī)變量Y的概率分布和相應(yīng)的條件概率分布等),最終增大自己的“乙方信道”的信道容量,從而使得后續(xù)的游戲?qū)ψ约焊欣?;甚至使“乙方信道”的信道容量大于“甲方信道”的信道容量,最終使得自己穩(wěn)操勝券。 (3)兩個(gè)智者之間的游戲 如果甲乙雙方都隨時(shí)在總結(jié)對方的習(xí)慣,并對自己的“出牌”習(xí)慣做調(diào)整,即增大自己的信道容量。那么,最終甲乙雙方的“信道容量”值將趨于相等,即他們之間的游戲競爭將趨于平衡,達(dá)到動態(tài)穩(wěn)定的狀態(tài)。 雖然上面幾節(jié)完美地解決了“石頭剪刀布”游戲問題,但是,它們在保持“直觀形象”的優(yōu)勢下,付出了“復(fù)雜”的代價(jià)。下面,給出一個(gè)更抽象、更簡捷的解決辦法。 設(shè)甲與乙玩“石頭剪刀布”,他們可分別用隨機(jī)變量X和Y來表示: 當(dāng)甲出拳為剪刀、石頭、布時(shí),分別記為X=0、X=1、X=2; 當(dāng)乙出拳為剪刀、石頭、布時(shí),分別記為Y=0、Y=1、Y=2。 根據(jù)概率論中的“大數(shù)定律”,頻率的極限趨于概率,所以甲乙雙方的出拳習(xí)慣可以用隨機(jī)變量X和Y的概率分布表示為: 0 0 0 ∑0≤x,y≤2txy=1; px=∑0≤y≤2txy,x=0,1,2; qy=∑0≤x≤2txy,y=0,1,2。 “石頭剪刀布”游戲的輸贏規(guī)則是:若X=x,Y=y,那么,甲(X)贏的充分必要條件是:(y-x)mod3=2。 現(xiàn)在構(gòu)造另一個(gè)隨機(jī)變量F=(Y-2)mod3??紤]由X和F構(gòu)成的信道(X;F),即,以X為輸入,以F為輸出的信道。那么,就有如下事件等式: 若在某個(gè)回合中,甲(X)贏了,那么就有(Y-X)mod3=2,從而,F(xiàn)=(Y-2)mod3=[(2+X)-X]mod3=X,也就是說:信道(X;F)的輸入(X)始終等于它的輸出(F)。換句話說,1個(gè)比特就被成功地在該信道中從發(fā)端傳輸?shù)搅耸斩恕?/p> 反過來,如果“1個(gè)比特被成功地在該信道中從發(fā)端傳輸?shù)搅耸斩恕?,那么就意味著“信?X;F)的輸入(X)始終等于它的輸出(F)”,也就是說:F=(Y-2)mod3=X,這剛好就是X贏的充分必要條件。 結(jié)合上述正反兩個(gè)方面的論述,有:甲(X)贏一次,就意味著信道(X;F)成功地把1比特信息從發(fā)端送到了收端;反之亦然。因此,信道(X;F)也可以扮演第2節(jié)中“甲方信道”的功能。 類似地,若記隨機(jī)變量G=(X-2)mod3,那么,信道(Y;G)就可以扮演前面“乙方信道”的角色。 而信道(X;F)和(Y;G)的信道容量的形式會更簡捷,它們分別是: (X;F)的信道容量=MaxX[I(X,F)]=MaxX[I(X,(Y-2)mod3)]=MaxX[I(X,Y)]=MaxX[∑txylog(txy/(pxqy))],這里的最大值是針對所有可能的txy和px而取的,所以,它實(shí)際上是q0,q1,q2的函數(shù)。 同理,(Y;G)的信道容量=MaxY[I(Y,G)]=MaxY[I(Y,(X-2)mod3)]=MaxY[I(X,Y)]=MaxY[∑txylog(txy/(pxqy))],這里的最大值是針對所有可能的txy和qy而取的,所以,它實(shí)際上是p0,p1,p2的函數(shù)。 其他討論與前面幾節(jié)相同,不再重復(fù)。 “攻防”是安全的核心,所以,在建立“安全通論”的過程中,多花一些精力去深入研究“攻防”也是值得的。 [2]中,研究了“安全通論”的盲對抗問題,本文研究的“石頭剪刀布”游戲則是一種“非盲對抗”,但由于它的普及率極高(幾千年來,全世界每個(gè)人在童年時(shí)代幾乎都玩過),所以,我們單獨(dú)以一篇論文的形式來研究它。有關(guān)其他一些有代表性的“非盲對抗”,將在后續(xù)文章中研究。 當(dāng)然,換一個(gè)角度來看,也可以說,我們的“安全通論”雖然剛剛誕生,但它已大顯身手,成功地掃清了古老“石頭剪刀布”游戲中的若干迷霧。所以,“安全通論”確定大有前途。 參考文獻(xiàn) [1] 楊義先,鈕心忻.安全通論(1)——經(jīng)絡(luò)篇[J].微型機(jī)與應(yīng)用,2016,35(15):1-4. [2] 楊義先,鈕心忻.安全通論(2)——攻防篇之“盲對抗”[J].微型機(jī)與應(yīng)用,2016,35(16):1-5. [3] COVER T M, THOMAS J A著.信息論基礎(chǔ)[M],阮吉壽,張華,譯.北京:機(jī)械工業(yè)出版社,2007. [4] Lin Shu, COSTELLO JR D J著.差錯(cuò)控制碼[M].晏堅(jiān),何元智,潘亞漢,等,譯.北京:機(jī)械工業(yè)出版社,2007. (未完待續(xù),系列之四《安全通論(4)——攻防篇之“非盲對抗”之“童趣游戲”》見下期)2 巧勝策略
3 簡化版本
4 結(jié)束語