随着气象网络系统的不断发展,简单的数据文件加密、数字签名和身份认证等方法已不能满足气象信息传输的安全性的要求。为此我们将信息加密理论和气象科学两个彼此独立的学科联系起来。把信息加密理论有效地应用于气象信息传输中,使得信息加密理论和气象科学两个彼此独立的学科相互交叉,相互渗透,互补互享。
1、气象在国家安全中的重要性
国家安全是国家生存的保障,各国政府对此都极为关注。随着国际形势的变化和世界科技的不断进步,气象事业服务于国家安全的领域越来越广泛和深入。由于气象在国家安全中占有重要位置,因此气象为国家安全服务的领域与范围也有了很大的发展,灾害性天气气候事件的预报预测、高技术尖端战略武器的制导、航天器的发射和生物化学武器的防范等现代国防问题都与气象服务水平紧密相关。
因此,加强战时我方气象数据(情报)保密,与反封锁工作。战争情况下,气象数据作为重要军事机密,敌我双方将会互相封锁。建立地方气象数据战时保密机制与保密系统,实现我方数据的保密,并利用卫星、雷达等方式收集覆盖对方的气象参数;建立军地气象数据、信息共享系统,实现双向共享,并在共享过程中进行保密处理。有利于我军时刻掌握战争的主动权。
2、气象信息文件加密的重要性
气象信息是指那些可以被与天气有关的行业用户所能利用的数据资料及其他以各种形式的媒体储存与传播的、与大气状况和天气气候现象有关的事实。气象信息按其对大气现象描述的时间可划分为三类:即各类历史记录(气候信息)、当前的气象信息(当前的天气信息)和未来的气象信息(各种时间尺度上的预报信息)。历史记录是指对过去大气状况的记录;当前的天气信息是对大气状况当前的监测,是我们所熟悉的,如每天有气象部门提供的天气实况和大气环境质量情况等;未来情况是指气象和
环境服务部门,根据研究所掌握的大气变化规律,通过计算机模式,所预报的未来大气可能的状况。气象信息作为一个国家的重要资料,在社会中的地位和作用越来越重要,已成为社会发展的重要战略资源,气象信息影响着人们的生活和工作环境,与此同时,气象信息的安全问题也已成为世人关注的社会问题,气象信息的安全所面临的威胁来自很多方面,并且随着时间的变化而变化,这种威胁可以宏观地分为自然威胁和人为威胁:自然威胁可能来自于各种自然灾害,恶劣的场地环境,电磁辐射和电磁干扰等,这些事件有时会直接威胁气象信息的安全,影响气象信息的存储媒质;人为威胁也就是对气象信息的人为攻击,这些攻击手段都是通过寻找系统的弱点,以便达到破坏、欺骗、窃取气象信息的目的,造成经济上和政治上不可估量的损失。气象信息文件加密在网络时代显得越来越重要。
随着信息技术突飞猛进的发展和计算机技术的广泛应用,计算机网络得到了迅猛发展。而气象网络的发展也使气象信息在各单位之间得以及时的传递,大量及时有效的气象资料对作准天气预报,提高气象保障能力提供巨大的技术支持。目前,我国气象网络自成体系,尚未同地方气象网络相连,这就无法共享地方气象资源,今后,气象网与地方气象网互连,网络安全就显得非常重要,就目前来看,气象网内的资料保密传输是非常重要的。随着我国立足打赢高科技局部战争和解决台湾危机的需要,气象情
报网的保密传输已成为重要研究课题。以气象网的数据传输的信息安全问题为例,提出一种加密算法,将信息安全技术应用于气象网中,保证了气象资料在传输中的安全,使得气象资料在各应用单位之间及时、有效、安全的传输。
气象网络系统安全保障大致可归纳为三个方面:一是在气象信息在传递过程中保证所传信息安全、准确;二是对保存的气象信息要防止被非法修改、损毁;三是防止气象信息在使用过程中被非法传递、散播。
3、信息文件加密的重要性
21世纪是信息的社会,是知识经济的时代。因为信息是一种重要的战略资源,所以国际上围绕信息的获取、使用和控制的斗争日趋激烈。在今天的信息社会里,数据安全保密问题已不仅仅出于军事、政治和外交上的需要,科学技术的研究和发展及商业等方面,无一不与信息息息相关。在“不设防”的计算机系统中存储信息、在脆弱的公共信道上传输信息、在未加认证的领域上使用信息时,如何保护信息的安全使之不被窃取、不被篡改和破坏,已成为当今被普遍关注的重大问题。由于信息是共享的、信
息的扩散会产生社会影响,所以保护信息的安全是信息时代的迫切需要。
加密算法是信息文件加密的数学变换,自从人类有了加密技术,这一技术就源远流长,它最早起源于古代的密写术或隐秘书写。虽然密码有着久远的历史,但在20世纪60年代之前,密码还仅仅在政府机关和军事部门研究和使用。70年代,随着计算机科学和技术的发展,密码学从外交和军事领域走向公开,在网络深入普及的今天,无论是机要、军事、政府、金融还是私人通信,都不希望将机密泄露,加密技术是保护信息机密性最有效的技术。
数据加密技术是对信息进行重新编码,从而达到隐藏信息内容,使非法用户无法获得信息真实内容的一种技术手段。网络中的数据文件加密则是通过对网络中传输的信息进行数据加密,满足网络安全中数据文件加密、数据完整性等要求,而基于数据加密技术的数字签名技术则可满足防抵赖等安全要求。可见数据加密技术是实现网络安全的关键技术。
二、信息安全技术
1、密码学的基本概念
通信双方采用保密通信系统可以隐藏和保护需要发送的消息,使未授权者不能提取信息。发送方将要发送的消息称为明文,明文被变换成看似无意义的随机消息,称为密文,这种变换称为加密;其逆过程,即由密文恢复出明文的过程称为解密。对明文进行加密操作的人员称为加密员或密码员。密码员对明文进行加密时所采用的一组规则称为加密算法。传送消息的预定对象称为接收者,接收者对密文进行解密时所采用的一组规则称为解密算法。加密和解密算法的操作通常都是通过一组密钥控制下进行的,分别称为加密密钥和解密密钥。密钥是密码体制安全保密的关键。
为了保护信息的保密性,抗击密码分析,保密系统应当满足以下要求:
1)系统即使达不到理论上是不可破的,也应当为实际上不可破的。就是说,从截获的密文或某些已知的明文密文对,要决定密钥和任意明文在计算上是不可行的。
2)系统的保密性不依赖于对加密体制或算法的保密,而依赖于密钥。
3)加密和解密算法适用于所有密钥空间中的元素。
数据加密技术已随着计算机技术的迅猛发展,从早期的军事和外交领域,逐步伸展到交通、工业经济、科学技术、社会安全和公共生活的各个领域,成为现代社会中保护信息的重要手段和工具。信息保护的现实需要,使得数据加密算法和技术迅速发展。在进入现代社会,了解并有效使用数据加密技术已成为计算机技术和通信领域的专业技术人员和广大用户的迫切需要,这是信息化社会发展阶段的重要标志。
2、信息安全的模型
通信双方欲传递某个消息,需通过以下方式建立一个逻辑上的信息通道,首先在网络中定义从发送方到接收方的一个路由,然后在该路由上共同执行通信协议。如果需要保护所传信息以防敌手对其保密性,认证性构成的威胁,则需要考虑通信的安全性。安全传输技术有以下两个基本成分:
1)消息的安全传输,包括对消息的加密和认证。加密的目的是将消息搞乱以使敌手无法读懂,认证的目的是检查发送者的身份;
2)通信双方共享的某些秘密信息。为获得消息的安全传输,可能还需要一个可信的第三方,其作用可能是负责向通信双方发布秘密信息或者在通信双方发生争执时进行仲裁的机构,如图1所示。
3、消息认证
信息安全所面临的基本攻击类型,包括被动攻击(获取消息的内容、业务流分析)和主动攻击(假冒、重放、消息的篡改、业务拒绝)。抗击被动攻击的方法是加密技术,抗击主动攻击的方法是消息认证技术和数字签字技术。
消息认证是一个过程,用以验证接收消息的真实性(的确是由它所声称的实体发出的)和完整性(未被篡改、插入、删除),同时还用于验证消息的顺序性和时间性(未重排、未重放、延迟)。除此之外,在考虑信息安全时还需考虑业务的不可否认性,即防止通信双方中的某一方对所传输消息的否认。实现消息的不可否认性可通过数字签字,数字签字也是一种认证技术。
消息认证机制和数字签字机制都需有产生认证符的基本功能,这一基本功能又作为认证协议的一个组成部分。认证符是用于认证消息的数值,它的产生方法又分为消息认证码MAC( message authenti.cation code)和杂凑函数(hash function)两大类。
消息认证码是指消息被一密钥控制的公开函数作用后产生的、用作认证符的、固定长度的数值,也称为密码检验码。此时需要通信双方A和B共享一密钥K。设A欲发送给B的消息是M,A首先计算MAC -CK(.)是密钥控制的公开函数,然后向B发送MIIMAC,B收到后做与A相同的计算,求得一新MAC,并与收到的MAC做比较,如果仅收发双方知道K,且B计算得到的MAC与接收到的MAC一致,则这个系统就实现了以下功能:
1)接收方相信发送方发来的消息未被篡改,这是因为攻击者不知道密钥,所以不能够在篡改消息后相应的篡改MAC,而如果仅篡改消息,则接收方计算的新MAC将与接收到的MAC不同。
2)接收方相信发送方不是冒充的,这是因为除收发双方在无其他人知道密钥,因此其他人不可能对自己发送的消息计算出正确的MAC。
4、数字签字
消息认证的作用是保护通信双方以防第三方的攻击,然而却不能保护通信双方中的一方防止另一方的欺骗和伪造。在收发双方未建立起安全的信任关系且存在厉害冲突的情况下,由于存在传输过程中数据被通信双方之外的第三方伪造或篡改的可能,通信双方无法验证数据来源,就很可能出现一方抵赖的情况,单纯的消息认证就显得不够,此时就要求传送信息的不可否认性数字签字技术则可有效解决这一问题。数字签字是对现实生活中笔迹签字的模拟。数字签字具有的基本特性是:它必须能够用
来证实签字的作者和签字的时间;在对消息进行签字时,必须能够对消息的内容进行鉴别;同时,数字签字应具有法律效力,必须能被第三方证实用以解决争端。数字签字具有认证功能。
三、加密算法及实例
1、加密算法
(1) 密钥的产生(用离散对数法产生密钥)
选择大素数P,g是有限域ZP上的一个本原根,对每个气象信息的发送者Vi随机选取ai(1<ai<p-1);计算bi-gamod P则Vi的公钥为(bi,g,P),私钥为ai。
(2)加密运算
假设气象信息发送者Vj向气象信息接收者Y2发送气象信息m,则执行以下操作进行加密:
1)随机选择整数r,1<r<p-1;
2)计算C1=gr mod p;
3)计算T= H(b2,t),其中H是hash函数,t是发送气象信息的当前时间;
4)合并m,T为M,即M=(m ||T);
5)计算C2 =M.b2rmod p,其中b2为v2的公钥;
发送(C1,C2,t)给Vz。
(3)解密运算
气象信息接收者V2在收到C1,C2,t后进行以下运算:
1)计算△t=t2-t,t2是气象信息接收者接收消息的时间,若△t大于规定时间,则拒绝解密,否则进行如下。
2),其中a2是气象信息接收者V2的私钥;
3)从M=(m ||T)中分离出m,T 5气象信息的接收者bz重新计算H(b2,t),比较计算结果是否和收到的T相等。
2、加密算法的安全性分析
(1)密钥的产生
密钥的产生是通过离散对数生成的,如果知道ai,g,P则由快速指数算法可以比较容易的求出bi,但是如果知道bi,g,P,求ai则非常困难,目前已知的最快的求离散对数算法其时间复杂度为0,所以当P很大时,该加密算法是不可行的。离散对效公钥加密算法是目前最为热门的公钥加密算法,其安全性要远远高于基于大数分解的RSA算法。一般的,如果仔细选择p。则认为该算法是没有解的,且目前还没有找到计算离散对数问题的多项式时间算法。为了抵抗巳知的攻击,p至少应该是150位的十迸制整数,且p-1至少有一个大的素数因子。
本元根的求法:设整数m>0,(g,m)=1,如果整数g对m的指数为q,则g叫做m的一个本原根。
例:3是模7的本原根因为3q(7)=36=1(mod 7)
一般说来,当p为素数时,模p本原根是一个数,它的幂构成模p的同余类,比如3(mod7)的幂运算:
31 mod 7=3,32 mod 7 =2,33 mod 716*34 mod 7 14,3s mod 7=5,36 mod 7=1。所以:3是7的一个本元根。
存在q(p -1)个模p的本原根。
快速指数算法:由于一个整数的指数结果很大,可能远远超出计算机处理范围,故必须简化计算方式,这里采用快速取模方法,原理为:在4的5次方运算中,5能够化作2 x2+1,这是因为5的2进制数为101。所以4的5次方运算便能写作(42 xl)z×4,其中l表示的是4的0次方,乞表平方。再运用模的性质:
axb mod m=(a mod mxb mod m)mod m,
所以4s mod m可先化为(42 x1)2 x4 mod m,
再化为( (42 mod mxl)z modmx4)mod m。
求am可如下进行,其中a,m是整数;
c =0;d=1;
for i=k downto 0 do {
c-2.c;
d= (d.d)mod n
if bi =lthen{
c=c+1;
d=(d.a) mod n
}
}
retum d.
(2) hash函数H
Hash函数H是一个公开函数,用于将任意长的消息M映射为较短的、固定长度的一个值H(M),作为认证符,称函数值H(M)为哈希值、杂凑码或消息摘要。哈希函数的目的是为需要认证的数据产生一个“指纹”,为了能够实现对数据的认证,哈希函数应满足以下条件:
1)函数的输入可以是任意长;
2)函数的输出是固定长;
3)已知x求H(x)较容易,可用硬件或软件实现;
4)已知h,求使得H(x)=h的x在计算上是不可行的;
5)已知x,找出y(y≠x)使得H(y)=H(x)在计算上是不可行的;
6)找出任意两个不同的输入x,y,使得H(y)=H(x)在计算上是不可行的;
以上6个条件中,前3个是哈希函数能用于认证的基本要求。第4个条件(即单向性)对使用秘密值的认证技术极为重要,假如杂凑函数不具有第4条,则攻击者截获M和C =H(S||M)后,求C的逆S||M,就可求出秘密值S。第5个条件使得敌手无法在已知的某个消息时,找到与该消息具有相同哈希值的另一个消息。这一性质用于哈希值被加密情况时防止敌手的伪造,由于敌手不知道用于加密哈希值的密钥,他就不可能既伪造一个消息M,又伪造这个消息的哈希值加密后的密文。第6个条件用于抵抗生日攻击,如图2所示。
小知识之消息认证
消息认证是指通过对消息或者消息有关的信息进行加密或签名变换进行的认证,目的是为了防止传输和存储的消息被有意无意的篡改,包括消息内容认证(即消息完整性认证)、消息的源和宿认证(即身份认证0)、及消息的序号和操作时间认证等。它在票据防伪中具有重要应用(如税务的金税系统和银行的支付密码器)。