1、早在200多年前,亚当斯密就在其国富论中指出,当自由市场经济充分竞争时,总有一只“看不见的手”,牵引着竞争各方,最终达成互利。在网络空间中,黑客与红客的竞争对抗非常激烈,而且,还会越来越激烈。但是,在网络空间的黑客和红客对抗中,也有一只“看不见的手”,让他们心平气和地休战(当然,也可以说是为下一场、更惨烈的对抗战做准备)。本章将在攻防一体的情况下,描绘这只“看不见的手”的数学本质,以及这只手到底是怎么安抚黑客和红客的,此外,还再一次从另一角度证实了网络安全的“三状态”观念;即,黑客与红客的对抗,除了“你死”和“我活”之外,还有“均衡”状态。1.充分竞争的共性2.攻防一体的“经济学”模型3.寻找
2、“看不见的手”4.小结与邀请只有在充分竞争的“市场经济”中,才会出现这只“看不见的手”,而在缺乏竞争的“计划经济”中,这只“手”就永远也不会出现,当然也就更看不见了。哪里有充分竞争,哪里就会出现那只“看不见的手”!在网络空间安全中,红客和黑客处于激烈的竞争状态,因此,猜测其中也存在“看不见的手”。关键是要把这只“手”画出来。因此,就需要借助经济学的“一般均衡理论”成果,来探索那只“看不见的手”的数学实质。为此,首先在攻防一体的假设下,建立红客和黑客竞争对抗的“经济学”模型。建立“经济学”模型的原因经济可数字化(比如,政治、军事等就很难数字化),从而,为后续的量化研究奠定基础。红客与黑客攻防竞争
3、的真正的、相同的最终目的:经济利益。可以借用经济学数百年来的众多成果,特别是微观经济学的“一般均衡理论”。攻防一体每一个人(用户)都既是红客,又是黑客;他既要保护自己的信息系统,又要想攻击别人的系统。于是,就没必要刻意区分谁是红客,谁是黑客了,而统一都把他们看成用户。H:所有可能用户的集合(有限集)对每个用户hH来说,可能拥有多个规模不同、价值不同、安全度不同的信息系统,比如网银帐号、社交帐号、电子邮件系统、个人电脑、办公自动化系统、甚至还有大型的网络应用信息系统等。(“系统”采用了贝塔朗菲(一般系统论创始人)的定义,即,系统是相互联系、相互作用的诸元素的综合体;更形象地说,系统是能够完成一种
4、或者几种功能的多个部分按照一定的秩序组合在一起的结构。)假设:每个用户都不亲自动手从事攻防活动,而是雇佣一批能力完全相同的、不带感情色彩的机器黑客(红客)来帮忙,保障其公平性。机器黑客得根据被攻击系统的安全程度,来公平地向用户收取雇佣费;机器黑客允许用户毁约,即,当它受雇将某个信息系统攻破后,在向雇主收取佣金时,如果雇主觉得要价太高了,那么,它可以降价,甚至雇主想给多少就给多少,绝不讨价还价;但是,如果雇主出价低于攻击成本,那么机器黑客将把该系统原样归还给原来的主人;如果雇主出价高于攻击成本,那么机器黑客交付给雇主的也只是一个“装有被攻破系统的、且定时才能打开的信封”。如果雇主甲给钱较少,若另
5、一雇主乙却想以高一点的价来购买“甲刚刚获得的信封”时,机器黑客会重新攻破雇主甲,把这个信息系统装入另一个“定时才能打开的信封中”,卖给雇主乙;如此往复,直到所有用户不再有攻击意愿为止。机器黑客只有受雇后,它才对目标系统发动攻击,而且自己从不主动攻击,更不会获取除佣金之外的其它收入。网上资金分类建设费,用于建设自己的信息系统,包括购买防火墙等和支付给红客的安全保护费等攻击费,用于雇佣机器黑客,攻破自己想要的、别人的目标信息系统业务费,用于自己的各信息系统中网络业务的正常开销,比如,存放在网络帐户中的散银、存放在微信红包中的钢镚儿等网上资金分配专业红客:大部分网上资金,都分配给了建设费,意在构筑牢
6、不可破的安全防线。专业黑客:大部分网上资金,都分配给了攻击费,意在攻破别人更多的系统,获取更多的黑产收入。没有攻击意愿的普通用户:其攻击费预算可能为零,只雇佣红客来保护自己的信息系统。一般人:纯粹根据个人意愿而定。此外,业务费是分散存放的,不参与攻防活动,但是,一旦某个信息系统被攻破了,那么,在“定时打开的信封”被启封后,该系统中存放的所有经费,就归其新主人了。攻防一体的模型场景每个用户都从机器红客那里买得一批钱袋子,然后,将自己的业务费分装在这些钱袋子里;接着,在身上挂着自己的钱袋子,同时冲入竞技场中;然后,彼此(雇佣黑客)抢夺其它人身上的钱袋子,当然,自己身上的钱袋子也会被别人抢走;等到大
7、家都再也没有抢夺意愿了,这便是那只“看不见的手”的神奇功效,它能安抚大家,停止对抗后,同时打开自己(抢来或守住)的钱袋子,于是,本轮攻防就结束了。当大家清理完本轮战果后,还将进入下一轮类似的、可能更惨烈的抢夺战。用户集H中,所有用户的钱袋子总数:N(分别编号为1,2,N),N为有限整数。用 户 h 身 上 的 钱 袋 子 状 况:一 个 N 维 2 进 制 向 量x=(x1,x2,xN),其中,若xi=1,则表示此刻第i个钱袋子仍然挂在用户h的身上;否则,若xi=0,则表示第i个钱袋子在别人身上。用户hH给自己预留的攻击费为rh:一个N维向量 其第i个分量的值,表示预算给第i个钱袋子的攻击费(
8、如果该分量小于别人身上某个钱袋子的攻击成本价,那么,就不能得到别人的这个钱袋子,因此,这笔预算就白花了)。rh各分量之和,不该小于该用户h冲入竞技场之前,其身上悬挂的所有钱袋子的攻破成本价之和。由于用户很多,又由于机器黑客并不讨价还价(只是低于攻破系统的成本价时,就罢工而已),所以,任何用户都没有实力来确定攻破每个钱袋子的佣金价格,而只能被动地接受竞争佣金价格某 个 时 刻,攻 破 第 i 个 钱 袋 子 的 佣 金 价 格:pi,i=1,2,N;此 刻 所 有 钱 袋 子 的 攻 破 佣 金 价 格:N 维 向 量p=(p1,p2,pN),这个价格是会随着各用户给机器黑客出价的变化而变化。假
9、设每个用户hH都是理性的在佣金向量为p时,用户h想争取抢到的钱袋子向量x,一定会满足不等式p.x=i=1Npixirh即,他的攻击费用预算rh永远不会被突破(如果x和y是两个N维向量,那么,记号xy就表示x的每个足标,都不超过向量y的相应足标)。今后称满足这个预算限制的钱袋子向量x为可行向量。形象地说,对交不起佣金的“抢劫计划”,用户是不会奢望的。用户h的所有可行向量的集合记为Xh,它显然是空间R+N中的一个子空间,这里R+N表示足标全为非负的N维向量的集合。每个用户h都有自己的“抢钱袋子”偏好h:“h”是N维实数空间RN上的一个弱序关系(即,对任何的N维向量x,y,z都成立如下两条性质:1)
10、自反性,xhx;2)传递性,若yhx同时zhy,那么就有zhx)。用户要合理地追求自己的利益最大化。如果同时满足yhx和xhy(即,从用户h的偏好角度看,y和x并没有哪个占优势,此时也称“x与y无差异”,记为xhy),那么,用户就不会用现有的x去换取y,因为,他没能从中获得额外的利益嘛。如果yhx成立,但是不成立xhy(即,从偏好角度看,x严格优于y,记为xhy),那么,用户就一定不会用x去换取y。关于用户的偏好,我们还可以做如下几个合理的假设假设1(弱单调性T1):总有某个可行向量(比如,冲进竞技场之前,h自己身上的钱袋子向量)是自己看重的,并且,所有钱袋子(无论是自己的还是别人的)都是无害
11、的。准确地说,如果x和y是用户h的两个可行向量,而且xhy(即,在N维实向量x和y中,x的每个足标,都严格大于y的对应足标),那么,就有xhy,即,用户h严格偏好于x。假设2(连续性T2):对每个用户h的任意给定的可行向量x0,由所有偏好优于x0的可行向量的集合 Ah(x0)=x:x是h的可行向量,并且x0hx 是闭集;同时,由所有偏好劣于x0的可行向量的集合 Gh(x0)=x:x是h的可行向量,并且xhx0 也是闭集。这里“闭集”是集合论的基本术语,意指包 含自身边界的集合。具体说来,从任何一个可行向量x出发,考虑用户h的可行向量集内的一个线段,从优于x的一端开始,最终行进到劣于x的点(可行
12、向量);该线段必定也包含了与x无差异的某点。也就是说,当从优于x的点,行进到劣于x的点时,必然要触及到无差异点。假设3(严格凸性T3):令yhx(当然,也包含了xhy的可能性),且xy,0ahy,即ax+(1-a)y严格优于y。该假设的数学含义表明“可行向量集内,无差异曲线是严格弯曲的,其内部不存在平坦段”;其经济学含义是:不存在完全可替代的“钱袋子向量”,这也是日常生活常识。定义10.1(阻碍):一个联盟,其实就是用户集H的任何一个子集。因此,每个用户自己,也可以构成一个单成员联盟。若存在某个联盟S,及其可行向量集yh:hS(以下称为“配置”)满足如下三个条件,则称某配置xh:hH的建立将会
13、受到阻碍:条件1,hSyhhSrh(这里的不等式意指在向量的各个坐标分量上都成立。提醒:rh表示用户h的预算攻击费);条件2,对所有的hS,有xhhyh;条件3,对某些gS,有yggxg,即,按照用户g的偏好,他的钱袋子向量yg严格优于钱袋子向量xg。该定义10.1中,“阻碍”的基本思想是:若仅利用联盟S内的可得钱袋子资源,则S中的某成员(比如那个g)就能够获得一个新的“钱袋子向量”(yg),其偏好程度严格优于他原来的“钱袋子向量”(xg)(经济学上,称为g取得了一个“帕累托改进”),那么,联盟S将阻碍配置xh:hH的建立。当联盟S考虑实施阻碍时,它只根据自己的资源和偏好来做出决策,而不关心联
14、盟外用户(HS)的境况。定义10.2(核):配置核,简称“核”,是指任何联盟S都无法阻碍的可行配置所构成的集合。根据该定义,与核相对应的配置具有如下性质:核中的所有配置都必须满足个人理性原则,即,若xh:hH是一个核配置,则对所有的hH,都必有:xh优于他冲进竞技场之前的钱袋子向量。若没有此性质,则该核将被一个单成员联盟所阻碍,因为他的当前“钱袋子向量”比初始状态还差,此时的核配置违背了个人理性。核中的任何配置都不可能再取得“帕累托改进”,也称为是帕累托有效的。若xh:hH不是帕累托有效的,则由所有用户构成的联盟H仅需对配置进行再分配,就可增进其成员的偏好满意水平。也就是说,若xh:hH是一个
15、核配置,则对所有其他的可行配置yh来说,对所有的hH,有yhhxh或者对某些hH,有xhhyh。所有其他的可行配置yh都必须满足这一性质,否则,核配置将被由所有用户构成的联盟SH所阻碍。该性质的等价解读是:如果用户的“钱袋子向量”处于核配置状态,那么,所有用户就都达到了自己的最理想状况(因为,其偏好不可能再获得改进,即,达到了帕累托有效状况),因此,理性将提醒大家:可以休战了。但是,核配置状态能否达到呢?因此,下面就来证明:核配置状态是能够达到的。为此,引入如下竞争性均衡定义。定义10.3:若以下条件得到满足,则对每个hH,pR+N,xhR+N,就构成了一个竞争性均衡(这里p=(p1,p2,p
16、N),其中pi是机器黑客攻破第i个钱袋子的佣金价格;而R+N是各分量都非负的N维向量集合):(1)对每个hH,均有p.xhp.rh;(2)对所有的yR+N,有yhxh,且满足条件p.yp.rh;(3)hHxhhHrh(不等式在各个坐标分量上均成立),若存在满足不等式严格成立的坐标分量k=1,2,N,则有pk=0。定理10.1(竞争性均衡含在核中):若用户偏好满足弱单调性(T1)和连续性(T2),并令p,xh,hH是一个竞争性均衡,则配置xh,hH包含在核中。证明:反正法 假设定理的命题是错的,则存在一个阻碍原始配置建立的联盟S和某个更优配置yh,hS。于是由联盟的可行性,我们有:hSyhhSr
17、h;而且,对所有的hS,有xhhyh;对某些gS,有yggxg。但是,由于xh是一个竞争性均衡配置。也就是说,对所有的hH,p.xhp.rh,且对所有使得p.yp.rh满足的yR+N,都成立yhxh。注意到 hSp.xh=hSp.rh,因而,对所有的hS,有 p.yhp.rh。这就是说,xh代表了用户h在佣金预算约束下,最希望得到的“钱袋子向量”。在满足单调性假定(T1)的偏好h下,yh至少与xh一样好,因此,yh所需的佣金成本不低于xh。更进一步地,对g,我们必定有p.ygp.rg。因而有:hSp.yh hSp.rh(注意,这是一个严格不等式)。然而,由联盟的可行性得知,我们必定还有:hSy
18、h hSrh因为p0,p0,故有hSp.yhhSp.rh。配置yh,hS在资源总量上小于或等于初始资源禀赋,但与此同时,以佣金价格p衡量时,又比初始资源禀赋的价值高,这就出现了矛盾。该矛盾使定理的原命题得证。在微观经济学中,已经证明了竞争性均衡的存在性,因此,由此处的定理10.1就知,核配置集是非空的,换句话说,H中的所有用户都能获得自己偏好度最高的钱袋子向量。即,正是那只“看不见的手”,将用户们一步步地牵引到各自最偏好的钱袋子向量。其实,如果对偏好再加一些限制,那么,上述定理10.1的逆也是成立的,即,核中的配置,也达到竞争性均衡。为此,虽然用户集H已经很大了,但是,我们还要通过复制手段,将
19、其变得更大,从而挖掘出更深刻的结果。用户集H(后面称为原始用户集),复制Q倍后所得到的更大型的用户集为QH。这里Q是一个正整数(Q1,2)。原始用户集里,用户hH的初始攻击费禀赋为rh,偏好为h。用户集被复制Q倍后,用户数也增加为原来的Q倍;并且,其中有Q个用户的偏好和初始攻击费禀赋分别为1和r1,有Q个用户的偏好和初始攻击费禀赋分别为i和ri,i=1,2,#H(初始用户集H中的元素个数,或初始用户数)。于是,原来的每个用户hH,被扩展成了一类用户。在复制用户集QH中,有Q个h类的用户。请注意,H的竞争性均衡佣金价格,仍然是复制用户集QH中的均衡佣金价格。在原来H中,用户h的竞争性均衡配置xh
20、,则是复制用户集QH中,处于竞争性均衡时,所有h类用户的均衡配置。复制用户集QH中,以类型和序号来标记各用户。这样,对所有的hH,q1,2,Q,标记为h,q的用户,表示h类用户中的第q个用户。定理10.2(核中成员的平等性):若偏好满足T1,T2,T3,令xh,q,hH,q=1,2,Q是复制用户集QH中的核,则对每个h,xh,q,对所有的q都是相同的,也就是说,对每个hH,qg,有xh,q=xh,g。证明:由于核配置必须是可行的,所以有:hHq=1Q xh,q hHq=1Q rh或等价地说,有hHq=1Q xh,q QhH rh。下面用反证法。假若该定理是错的。考虑h类用户,则有xh,qxh,
21、g。注意到,对h类用户来说,他们的偏好是各不相同的,即,要么xh,qh xh,g,要么相反xh,gh xh,q。由核配置的帕累托有效性与T3即可获得这一性质。若从偏好角度来看,xh,q和xh,g无差异,由T3可知有:(xh,q+xh,g)/2hxh,qhxh,g。这意味着配置xh,q,hH,q=1,2,Q不是帕累托有效的,因而不在核内。该矛盾说明:必定成立xh,qh xh,g,或者相反xh,gh xh,q。因此,对h类用户中的每个用户,都可以根据所持有钱袋数量的偏好h来排序。对每一类h用户,令xh*表示h类核配置xh,q,q=1,2,Q中,偏好优先程度最低的那个。对某h类用户,其中每个用户的钱
22、袋子向量都是相同的,此时xh*就表示偏好的平均水平。对钱袋子向量不同的类别,xh*则表示偏好排序水平最低的配置。现在来构造由每类用户中的这样一些用户组成的联盟:该用户的钱袋子向量配置xh*在该类用户中的偏好排序最低。我们的证明策略是,这一联盟将阻碍原来的核配置,从而证明了这样的配置不可能真的在核配置集合中。考虑h类用户的核配置偏好排序平均水平,并标记为bh,其中,bh=(q=1Q xh,q)/Q。由偏好的严格凸性(T3)有:对那些xh,q不同的h类用户,有bh=(q=1Q xh,q)/Q h xh*;对那些xh,q相同的h类用户,有xh,q=bh=(q=1Q xh,q)/Q hxh*。根据核配
23、置的可行性,我们有:hHbh=hHq=1Q xh,q/Q=hHq=1Q xh,q/Q hHrh换句话说,由每用户中(偏好排序水平最低)的那个用户组成的联盟,便可达到配置bh。对联盟中的每个用户而言,对所有的h,有xh*hbh,而对某些h,有bhhxh*。因而,每类用户偏好排序水平最低的用户组成的联盟,便阻碍了原来的配置xh,q。这便出现了矛盾,从而证明了定理成立。为了证明定理10.1的可逆性,我们还要对用户冲进竞技场之前的钱袋子向量,做如下合理假设。假设T4:每个用户hH的初始禀赋rh,都是他的所有可行钱袋子向量集合Xh的一个内点(即,不是集合Xh的边界点)。如果 Xh=R+N,则rh0,即,
24、对所有k=1,2,N,都有rkh0。该假设的合理性:如果用户在冲进竞技场前,已经对自己身上的钱袋子向量有最高偏好了(即,rh是边界点了),那么,他的最佳策略就应该是:拒绝进入竞技场。换句话说,将他的所有攻击费都转变为建设费,全力以赴保护已有的钱袋子;当然,也可能由于自己力量不够(比如,另有人出价高于他的建设费,来雇佣机器黑客攻击他),那么,他也只丢掉自己的钱袋子。如果用户对别人的所有钱袋子都感兴趣(即,Xh=R+N),那么,他当然应该对每个钱袋子都分配一定的攻击费(即,第k个钱袋子的攻击费rkh0),否则,机器黑客是不会无偿提供服务的。引理10.1(闵科瓦斯基超平面定理):令K是一个凸集,它也
25、是RN的一个子集。若z不是K的内点,则必存在一个约束K的边界穿过z的超平面H。也就是说,存在pRN,p0,对所有的xK,满足p.xp.z。由于该引理是一个现成的数学结论,该引理将应用于定理10.3的证明过程。定理10.3(德布鲁-斯卡夫定理):若有假定T1,T2,T3,T4,并且对所有的Q=1,2,,令bh,hH核(Q),则对所有的Q,bh,hH都是复制用户集QH的竞争性均衡配置。证明:我们将证明存在一个机器黑客的佣金价格向量p,对每一类用户h,均满足p.bhp.rh,并且bh在攻击费的预算约束下,依据偏好h获得最大化的偏好排序。我们的证明策略是,构造一个配置集,它优于bh,hH。接下来,证明
26、后者是一个有超平面支撑的凸集,取该超平面的法向量为p,再证明p就是支撑bh,hH的竞争均衡价格向量。对每个iH,令i=z:zRN,z+riibi。向量集i是i类用户的一个配置集,对该类用户,其配置的偏好,严格好于bi-ri。根据配置bi-ri,用户可以达到核配置状态。现在定义一族i集,iH的凸结合集(凸壳)。令=iH aizi:zii,ai0,ai=1表示更优的配置集i凸结合而得的集合。集合是集合i的并集的凸壳。现在再证明:由集合i构成的集类严格排列在穿过原点的超平面上方。该超平面的法向量就是要寻找的均衡佣金价格向量。首先证明0不属于。其证明方法是,将0的概率与构造一个阻碍核配置bi的联盟的概
27、率相对应,而后者是一个矛盾,概率为0。假设0,由假定T3(偏好的连续性)可知,对每个i,i总是开集,因而,也是开的(为方便计,此处忽略了i与由Xi导引的边界相重合的那一部分区域。更准确地说:在假定T1和T3下,i与具有非空内部域,并且,0不属于内部域()。若0,则在0附近存在一个含于中的邻域(0)。中的典型元素可表示为aizi,其中zii。令R-N表示RN的非正象限,取交集R-N,也就是说,取的非正部分。选择zR-N,满足z=aizi,其中,对所有的i,ai都是有理数。这是可能的,因为0,我们可以用有理数序列来任意逼近所有真实的ai。接着,找ai的公分母。考虑取ai的公分母为Q(大倍数Q复制的
28、用户集可克服单个用户的不可分问题),我们有aizi0(在各坐标分量上成立)。还须证明的是,由前述结论可知:存在一个联盟,它阻碍配置bi在复制用户集QH中的建立,其中,Q为ai的公分母。构造一个联盟S,它由Qai(整数)个i(iH)类用户集合中的用户组成。考虑S中用户的配置为di=ri+zi。根据i的定义,有diibi。由aizi0,有(Qai)zi0,从而,得到(Qai)(di-ri)0,或等价地,(Qai)di(Qai)ri,这意味着di在S中是可行的。根据用户iS的偏好,di是bi的一个增进。从而,S阻碍bi,这就出现了矛盾。因此,只能有:0不属于。在证明了0不属于后,还需要证明0不是非常
29、靠近。的确,当0=hH(bh-rh)时,0的边界,其中等式右边是的闭包。因而,0正好表示了这样一个边界点,穿过该边界点,就可得到引理10.1中的支撑超平面。集合是一个凸集,所以,由引理10.1,存在pRN,p0,对所有v,满足p.vp.0=0。根据弱单调性假设T1,有p0。现在,由于对每个用户h都有(bh-rh)属于的闭包,所以有,p.(bh-rh)0。但是,由于同时还有hH(bh-rh)=0,进而有 p.hH(bh-rh)=0。因此,对每个用户h,有p.(bh-rh)=0,等价地,p.bh=p.rh。这实际上就是说,p.0=p.hHbh-rh/#H=infx(p.x)=hHinf(p.zh)
30、/#H这里的#H,表示用户集H中用户的个数;而最后一个等式中inf()是对满足zhh的所有可能zh而言的(主要是为了减少足标的层次)。所以,p.(bh-rh)=inf(p.zh)。这样,对每个用户h和yh,有p.(bh-rh)=inf(p.y)。等价地,bh依据偏好程度bhhx最小化p.(x-rh)。此外,p.bh=p.rh。进一步地,根据假设T4可知,bh附近存在一个邻域包含于Xh中。根据假设T1,T2和T4可知,“偏好约束下的佣金最小化”等价于“佣金约束下的偏好排序最大化”,从而,bh,hH就是一个竞争性均衡配置。利用经济学的“一般均衡理论”来研究网络空间安全对抗时,最大的难点是建立合适的
31、数学模型,而这一点并不容易。比如,经济学中有一个由“供应厂商、家庭消费方、股份分配返还”构成的完美的资金流动闭环,而在红客、黑客和用户所构成的体系中,却没有此类闭环。而经济学中的整体优化基础,刚好就是由总供给、总需求(含初始禀赋)相减而获得的“超额需求函数”。可惜在网络空间安全对抗中,完全就找不到此类“超额需求函数”的影子。过去,人们一直咬定:安全对抗就是“水涨船高”、“鱼死网破”或“魔高一尺道高一丈”等。但是,本章的结论再一次表明,其实安全对抗应该更像“潮汐”:来潮时,惊天动地;退潮后,风平浪静。或者说,安全对抗像“间隙式喷泉”:喷时轰轰烈烈,歇时安安静静。也可以说安全对抗像“拳击摆台赛”:轮中打斗,你死我活;轮间休息,却和平相处。总之,无论用什么现象来形容网络空间安全对抗,关键是要明白:有一只“看不见的手”能够安抚各方,最终达到共赢。因此,红客方应该调整自己的战略,使得:和平期尽可能长一些,并且为下一轮的对抗做足准备。