软考信息安全工程师笔记_第1页
软考信息安全工程师笔记_第2页
软考信息安全工程师笔记_第3页
软考信息安全工程师笔记_第4页
软考信息安全工程师笔记_第5页
已阅读5页,还剩132页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.信息安全基本知识

1.1信息安全概念

*了解网络空间的概念、网络空间安全学科的内涵、网络空间安全学科的主要研究方向与研

究内容

1.信息安全概念

定火:国电环41aA个全除域由及立且亘—[也窥知网络理戌,包括互

网率至网联网,聿僖网.计・叭球.以ML入式处如身和控物a.

是研究咽以我取..信息得看和使W处理融加值W安全便喻理的T/兴

内用字典

王要研究方向月"究内昌•

网"属安全事科

理论.配•

方法论■础理论分析.逆向分行,安蛤看证,校本实现

/史也k物T住慎重息—R8未援反•知疏的.住.—

可用性劣且可g时壬束使用的屋性

&•安金I•建性.E,性.W当性

»«住加住可用性

京嘉安全

即是传透的停■安至,■。安全

信星系疏安全层次

戏沿「表名,119

为854

广*±2丽R电内&痴空,知旧产改岷.僧基信■如管虹口妒等

处生性越性«拄住

行为安全

网络安全主要研究方向

密码学:密码,密码协议,密码管理

网络安全:安全威胁,安全防护,入侵检测,

信息系统安全:信息系统软硬件防护,访问控制,等级保护,安全测评

信息内容安全:内容获取,分析,管理,安全法律法规

信息对抗:削弱对方电子干扰,是自己通信正常

网络空间安全学科具体概括为理论分析,逆向分析,实验验证,技术实现四个核心内容。

信息系统安全可以划分为以下四个层次★:设备安全,数据安全,内容安全,行为安全。其

中数据安全即是传统的信息安全。

信息系统设备的安全是信息系统安全的首要问题

信息安全金三角保密性,完整性和可用性

保密性:保密性是确保信息仅被合法用户访问,而不被地露给非授权的用户、实体或过程,

或供其利用的特性。即防止信息泄漏给非授权个人或实体,信息只为授权用户使用的特性。

完整性:完整性是指所有资源只能由授权方或以授权的方式进行修改,即信息未经授权不

能进行改变的特性。信息在存储或传输过程中保持不被偶然或蓄意地删除、修改、伪造、乱

序、重放、插入等破坏和丢失的特性。

可用性:可用性是指所有资源在适当的时候可以由授权方访问,即信息可被授权实体访问

并按需求使用的特性。信息服务在需要时,允许授权用户或实体使用的特性,或者是网络部

分受损或需要降级使用时,仍能为授权用户提供有效服务的特性。

保护,检测,响应(RDP)策略是确保信息系统和网络系统安全的基本策略。

笛卡尔方法分为4步支

永不接受任何我自己不清楚的真理。

将要研究的复杂问题,尽量分解为多个比较简单的小问题,一个一个地解决。

将这些小问题从简单到复杂排序,先从容易解决的问题入手

将所有问题解决后,再综合起来检验,看是否安全,是否将问题彻底解决了。

笛卡尔的方法论强调了把复杂问题分解成一些细小的问题分别解决,是一种分而治之的思想,

是一种行之有效的方法.

用整体的思想和方法来处理,由传统的方法论发展到系统性的方法论。

1.2信息安全法律法规

1.2.1我国立法与司法现状

*了解中华人民共和国国家安全法、保密法、网络安全法

*熟悉中华人民共和国计算机信息系统安全保护条例

1.2.2计算机和网络安全的法规规章

*熟悉我国《刑法》对计算机犯罪的规定

*熟悉我国网络与信息安全相关的法律责任

1994年2月18日颁布《中华人民共和国计算机信息系统安全保护条例)),这是一个标

志性的、基础性的法规.

我国刑法关于计算机犯罪的规定主要体现在以下三条中:

第二百八十五条(非法侵入计算机信息系统罪〉违反国家规定,侵入国家事务、胃防建设、尖端科学技术领

域的计算机信息系统的,处三年以下有期徒刑或者拘役,

第二百八十六条(破坏计算机信息系统罪)违反国家规定,对计算机信息系统功能进行删除、修改、增加、

干扰,造成计算机信息系统不能正常运行,后果严重的,处五年以下有期徒刑或者拘役:后果特别严重的,

处五年以上有期徒刑。违反国家规定,对计算机信息系统中存储、处理或者传输的数据和应用程序进行删

除、修改、增加的操作,后果严重的,依照前款的规定处罚。故意制作、传播计算机病毒等破坏性程序,

影响计算机系统正常运行,后果严重的,依照第一款的规定处罚。

第二百八十七条(利用计算机实施的各类犯罪)利用计算机实施金融诈骗、盗窃、贪污、挪用公款、窃取国

家秘密或者其他犯罪的,依照本法有关兢定定罪处罚。在禁止非法接触计算机信患方菌,中国刑法除在第

285条非法侵入计算机信息系统罪中规定之外,第二百八十四条非法使用窃昕、窃照专用器材罪之中,

2005年旗布的《中华人民共和国治安管理处罚法》中,对未构成犯罪的破坏计算就信息系统的行为也作了

处罚规定,可被处十日以下拘留,

获取支付结算、证券交易等网络金融服务身份证信息10组以上被刑法认为是非法获取计算

机系统情节严重情况

保密法对国家机关人行违反国际秘密,情节严重处三年以下徒刑,特别严重的处三年以上七

年以下徒刑。

2002年,国务院《计算机软件保护条例》正式施行.该条例称软件是指计算机程序及其有

关文档。同一计算机程序的源程序和目标程序为同一作品。对软件著作权的保护不延及开发

软件所用的思想,处理过程,操作方法或者数学概念等。★

.2003年7月国家信息化领导小组第三次会议发布的27号文件,是指导我国信息安全保障工

作和加快推进信息化的纲领性文献。

计算机软件受保护的条件有三个:原创性,可感知性,可再现性。

计算机软件著作权人享有人身权和财产权。

网络运营者应履行下列安全保护义务:★

制定内部安全管理制度和操作规程,确定网络安全负责人,落实网络安全保护责任。

采取防范计算机病毒和网络攻击,网络入侵等危害网络安全行为的技术措施。

采取记录,跟踪网络运行状态,监测,记录网络安全事件的技术措施,并按照规定留存网络

日志。

采取数据分类,重要数据备份和加密等措施。

法律,行政法规规定的其他义务。

对关键信息基础设施,实行重点保护。

1.3信息安全管理基础

1.3.1信息安全管理制度与政策

*熟悉我国计算机信息系统等级保护制度

*了解我国涉及国家秘密的信息系统分级保护制度

*了解我国密码管理政策

*了解我国信息安全产品管理政策

*了解我国互联网信息服务管理政策

1.3.2信息安全风险评估与管理

*了解风险分析、评估和风险管理的基本知识

07年《信息安全等级保护管理办法》将信息安全分为5级

一级:损坏个人,但不强害国家安全、社会秩序和公共利益

二级:严重损害个人,或者对社会秩序和公共利益造成摄害,但不损害国家安全。国家指导

三级:会对社会秩序和公共利益造成严重损害,或者对国家安全造成损害。国家监督检查

四级:会对社会秩序和公共利益造成特别严重摸害,或者对国家安全造成严重损害。国家强制检查

五级:会对国家安全造成特别严重损害。专门监督、检杳。

GB17859-1999标准规定了计算机系统安全保护能力的五个等级,即:

1.用户自主保护级;通过隔离用户与数据

2.系统审计保护级;通过登录规程、审计安全性相关事件和隔离资源,使用户对自己的行为负责。

3.安全标记保护级:系统审计保护级所有功能。还提供有关安全策略模型、数据标记以及主体对客体强

制访问控制的非形式化描述:具有准确地标记输出信息的能力:消除通过测试发现的任何错误。

4.结构化保护级:将第三级系统中的自主和强制访问控制犷展到所有主体与客体。此外,还要考虑隐蔽

通道。

5.访问验证保护级。本级的计算机信息系统可信计算基满足访问监控器需求。

一般可通过以下途径达到降低风险的目的:避免风险、转移风险、减少威胁、减少脆弱性、

减少威胁可能的影响、检测以外事件,并做出响应和恢复。

当今IT的发展与安全投入,安全意识和安全手段之间形成安全风险缺口。

信息安全管理最关注的是内部恶意攻击

信息分类是信息安全管理工作的重要环节,其分类需重点考虑信息的存储方式

1.4信息安全标准化知识

1.4.1熟悉信息安全技术标准的基本知识

1.4.2了解标准化组织

1.4.3信息安全系列标准

*了解信息安全管理体系标准

*了解信息安全技术与工程标准

1、国家标准化指导性技术文件,其代号为“GB/Z”;推荐性国家标准代号为“GB〃”

2、目前国际上两个重要的标准化组织,即国际标准化组织ISO和国际电工委员会IEC。ISO

和IEC成立了第一联合技术委员会JTC1制定信息技术领域国际标准;SC27是JTC1中专门从

事信息安全通用方法及技术标准化工作的分技术委员会。

3、信息安全标准体系与协调工作组(WG1),主要负责研究信息安全标准体系、跟踪国际信

息安全标准发展态势,研究、分析国内信息安全标准的应用需求,研究并提出了新工作项目

及设立新工作组的建议、协调各工作组项目。

涉密信息系统安全保密工作组(WG2)、密码工作组(WG3)和鉴别与授权工作组

(WG4)。

信息安全测评工作组(WG5),负责调研国内外测评标准现状与发展趋势,研究提

出了我国统一测评标准体系的思路和框架,研究提出了系统和网络的安全测评标准思路和框

架,研究提出了急需的测评标准项目和制定计划。

国家标准化管理委员会是统一管理全国标准化工作的主管机构

国家标准化技术委员会承担国家标准的指定和修改工作

全国信息安全标准化委员会负责统一协调信息安全国家标准年度技术项目

一个公司在指定信息安全体系框架时,首要考虑和指定的是安全策略。

橘皮书值可信计算机系统评估标准(TCSEC)

安全基线达标管理办法规定:BSS系统口令设置应遵循的内控要求是:数字字母和字

母大小写

中国电信各级省级争取1-3年内实现CTG-MBOSS系统安全基线达标C级

2、目前正在执行的两个分级保护的国家保密标准是BMB17《涉及国家秘密的信息系统

分级保护技术要求》和BMB20《涉及国家秘密的信息系统分析保护管理规范》。

1.5信息安全专业英语

*阅读信息安全有关英文资料

*掌握本领域的基本英语词汇

1、cryptography:密码;plaintet明文;ciphertet密文;concealment隐藏;cryptology密码学;

2、symmetriokey对称密钥;

Symmetric-keycryptographyreferstoencryptionmethodsinwhichboththesenderand

receiversharethesamekey(orjesscommonlyjnwhichtheirkeysaredifferent,butrelatedinan

easilycomputableway).

对称密钥加密是指加密方法,在该方法中,发送者和接收者共享相同的密钥

3^asymmetrickey非对称密钥;Digitalsignatures数字签名

RSAandDSAaretwoofthemostpopulardigitalsignatureschemes

4、ellipticcurvecryptography椭圆曲线密码

5、Cryptanalysis密码分析;quantumcomputer量子计算机;

6、Antivirussoftware杀毒软件

Network-attachedstorage(NAS,网络附力口存储):isfile-levelcomputerdatastorage

connectedtoacomputernetworkprovidingdataaccesstoheterogeneousnetworkclients.

7、PenetrationTestingTools渗透测试工具

2.密码学

2.1.密码学的基本概念

2.1.1.密码学定义

*掌握密码的安全目标

密码学的安全目标包括三个重要方面:保密性、完整性和可用性

密码分析者攻击密码的方法主要有三种:穷举攻击、数学分析攻击、基于物理的攻击;

3.1.2密码体制

*掌握密码技术的基本思想

*掌握基本的密码体制

密码技术的基本思想是伪装信息,使未授权者不能理解它的真实含义。所谓伪装就是对数据

进行一组可逆的数学变换。

1、一个密码系统,通常简称为密码体制,由五部分组成。

明文空间M,它是全体明文的集合。

密文空间C,它是全体密文的集合。

密钥空间K,它是全体密钥的集合。其中每一个密钥K均由加密密钥Ke和解密密钥Kd

组成,即K=<Ke,Kd>.

加密算法E,它是一族由M到C的加密交换。

解密算法D,它是一族由C到M的解密交换。

对于明文空间M中的每一个明文M,加密算法E在密钥Ke的控制下将明文M加密成

密文CC=E(M,Ke).

而解密算法D在密钥Kd的控制下将密文C解密出同一明文M:M=D(C,Kd)=D(E(M,Ke),Kd)

如果一个密码体制的Kd=Ke,或由其中一个很容易推出另一个,则称为单密钥密码体制或对称

密码体制或传统密码体制。否则称为双密钥密码体制。进而,如果在计算上Kd不能由Ke

推出,这样将Ke公开也不会损害Kd的安全,于是便可将Ke公开。这种密码体制称为公开

密钥密码体制,简称为公钥密码体制。

各算法比较

DES3DES

摘要算法:MD2、MD4、MD5、SHA1(160位)、HMAC

对称算法:DES、3DES、AES、RC2、RC4、RC5、IDEA

非对称算法:RSA、ElgamaL椭圆曲线、ECC(椭圆曲线加密算法)、DSA(只用于签名)、DH

(只用于密钥交换)、背包算法、Rabin。

算法分组长度生成长度(密钥)备注

DES64密钥长度56位子密钥48

分3DES64112位、168位是56的倍数

对IDEA64128位密钥使用在PGP中

称RC264变长密钥是DES替代算法

算AES128128位,192位192=128+64

法或256位。

SM4128128位

序列密码RC4密钥长度可变

zuc

非RSA1024变长密钥

称EIGamal分组快不同数字签名(DSS)和

S/MIME电子邮件

DSA只用于数字签名

ECC160256

散列算MD5512位128位

法SHA1512位160位的摘要

SM3512256

标识算SM9256

只有DES算法输出密钥是非2的倍数,其他都是2的倍数。

SM9标识算法,可以把用户的身份标识用以生产用户的公钥、私钥对,主要用于数字签名,

数据加密,密钥交换以及身份认证。

RC系列算法:包括RC2、RC4、RC5、RC6算法,其中RC4是序列密码算法,其他三种是

分组密码算法。

SMI,SM2,SM3,SM4«密钥长度和分组长度均为128位。

SM1为对称加密。其加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密

芯片的接口进行调用。

SM2为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥

生成速度都快于RSA。ECC256位(SM2采用的就是ECC256位的一种)安全强度比RSA2048

位高,但运算速度快于RSA。

SM3消息摘要。可以用MD5作为对比理解。该算法已公开。校验结果为256位。

SM4无线局域网标准的分组数据算法。对称加密,密钥长度和分组长度均为128位。

由于SMI、SM4加解密的分组大小为128bit,故对消息进行加解密时,若消息长度过长,需

要进行分组,要消息长度不足,则要进行填充。

国家密码管理局于2006年1月6日发布公告,公布了“无线局域网产品须使用的系列密

码算法”包括:

•对称密码算法:SMS4;

•签名算法:ECDSA;

•密钥协商算法:ECDH;

.杂凑算法:SHA-256;

•随机数生成算法:自行选择。

其中,ECDSA和ECDH密码算法须采用国家密码管理局指定的椭圆曲线和参

2.1.2.古典密码

*熟悉古典密码的主要编制方法

置换密码:把明文中的字母重新排列,字母本身不变,但其位置改变了。例如以前为横排,现在改

成5个一组的竖排

代替密码:首先构造一个或多个密文字母表,然后用密文字母表中的字母或字母组来代替明文字

母或字母组,各字母或字母组的相对位置不变,但其本身改变了。加法每个都移动固定的位数。乘法,仿

射密码(多表代替密码)。

代数密码:典型的是Vemam,Vemam密码的明文、密钥和密文均用二元数字序列表示。要编制Vemam密

码,只需要把明文和密钥表示成二元序列,再把它们按位模2相加便可;要解密Vemam密码,只需要把

密文和密钥的二元序列对位模2相加便可。

Vemam密码属于序列密码。它的一个突出优点是其加密运算与解密运算相同,都是

模2加运算,即异或运算

古典密码破译方法:穷举攻击、统计分析。

2.1.3.mod运算基础

快速指数算法:要计算的e次方对m取余的值,如果直接计算会数值会比较大,可

以利用上面的模的性质进行降塞计算。

要计算e%m的值如6265%133可以用如下的方法:

6265%133=62*6264%133=62*此处重复上面的操作,

(622)32%133=62*384432%133=(1202)32%133

62*(3844%133产%133=62*=(14400%133)32%133

12032%133=12032%133

=62*3616%133=62*998%133

=62*924%133=62*852%133=62*43%133=2666%133

=6

(a+b)%n=(a%n+b%n)%n

(a-b)%n=(a%n-b%n)%n(a

*b)%n=(a%n*b%n)%nab%

n=((a%n)b)%n

例:求21的模73逆

做辗转相除法,求得整数b,k使得216+73^=1,则b是21的模73逆.

计算如下:

73=21*3+1010=73-21*31=21-10*2

21=10*2+11=21-10*2=21-(73-21*3)*2

出现加1就停止=21-73*2+6*21

舍弃本身73的=7*21-73*2

故得214三7(mod73).

例:求7的模96逆

做辗转相除法,求得整数b,k使得7b+96k=1,则b是7的模96逆.

计算如下:

96=7*13+5

7=5*1+2

5=2*2+1

回代1=5-2*2

1=5-(7-5*1)*2

=5*3-7*2

=(96-7*13)*3-7*2

=96*3-41*7

-41mod96=55所以55就是7关于96的逆元。

得7-1三55(mod96).

Icm(a,b)表示a和b的最小公倍数

求963和657的最大公约数(963,657),并表示成963,657的线性组合。

解:运用广义欧几里得除法,有

963=1*657+306

657=2*306+45

306=6*45+36

45=1*36+9

36=4*9+0

(根据给出的最后一个定理)则(963,657)=9

从广义欧几里得除法逐次消去r(n-l),r(n-2),…,r(3),r(2),即

9=45-1*36

=45-(306-6*45)

=7*45-306

=7*(657-2*306)-306

=7*657-15*306

=7*657-15*(963-657)

=22*657-15*963

所以此线性组合为9=22*657-15*963

乘法逆知识点,会求逆元:P97*

例:Cd=l(mod20)的意思是cd=20n+l,可以看2016年真题第69题。

整数713的一个因子为31,则欧拉函数值为【660]。(31-1)(713/31-1)=30*22

分数求mod

对于分数a/b,模m,求a/b(modm)(b,m互素)

设k=a/b(modm)0<k<m

则kb=a(modm)

a的模反(模m)即满足下列等式的x

a-1=x(modm).

或写成

ax=aa~l=1(modtn).

3-1=x(mod11)

3T=1(mod11)

当x=4时上式成立,所以4是3的模反,

注意:4并不是唯一的解,在4的基础上加上模(11)的倍数依然满足上式,例如15,26,37,48等

但是寻找这样的x并不是一目了然,可以用下面的扩展欧几里得算法。

取模同余

a=17,b=2,则满足a与b取模同余的是(B)

A4B5C6D7

因17和2互质,故他两个的同余只能是2,计算方法是将这四个都代入,看是否是同余2

CRC校验

氽用C"曲搓销核战,幺物照切

计嚼上,尺c袅明城急是,)

夕…/。

q㈤。行XW目Ioo11

”川卓1。〃/。。"

I/O-

09校股高相〃刖

2.2.分组密码

2.2.1.分组密码的概念

根据明密文的划分和密钥的使用不同,可将密码体制分为分组密码和序列密码体制。

2.2.2.DES

*熟悉DES和3DES密码算法

*了解DES和3DES的应用

DES是分组密码的典型代表。明文、密文和密钥的分组长度都是64位。

DES是面向二进制的密码算法。因而能够加解密任何形式的计算机数据。

DES是对合运算,因而能加密和解密共用自同一算法,允许使用同样的密钥来完成解密过

程,而且解密是加密的逆过程。从而使工程实现的工作量减半。

DES的基本加密过程总共有19个步骤。

(1)子密钥产生:64位密钥经过置换选择1、循环左移、置换选择2等变换,产生出16个48位长的

子密钥KI,K2,K16,分别供第一次,第二次,…,第十六次加密迭代使用。

(2)IP置换。通过置换表,将数据分成左边32位构成L。,左边32位构成R。

(3)E扩展置换:右半部分R0,将32位输入扩展为48位(分为4位X8组)输出。扩展也依据表

(4)S盒代替:每个S盒有6位输入4位输出,共八个

注:S盒每行都有1到15这16个数字。

(5)P盒置换:经P盒置换

(6)IP-1置换第十六次加密迭代结束后,产生一个64位的数据组。以其左边32位作为R16,以其右

边32位作为L16,两者合并再经过逆初始置换IP-1,将数据重新排列,便得到64位密文。

至此加密过程全部结束。

Si为例,设输入为101011,第1位和第6位数字组成的二进制数为11=(3),0,表示选

中$的行号为3的那一行,其余4位数字所组成的二进制数为0101=(5)io)表示选中

S的列号为5的那一列。交点处的数字是9,则&的输出为1001。S盒的选择矩阵S到

国由表2-4给出。

表2Y代替函数组

01234f3-l6789101112131415

1441312151183106125907

0157414213110612119538

4114813621115129731050

1512824[9]17511314100613

DES的缺点P93151★

密钥较短:

存在弱密码:

3、3DES密钥长度是168位(56*3)。3DES的根本缺点在于用软件实现该算法的速度比较慢。

(a)3DES加密

(b)3DES解密

IDEA(InternationalDataEncryptionAlgorithm)国际数据加密算法,使用128位密钥提供

非常强的安全性。这种算法是在法的基础上发展出来的,类似于三重DES。

2.2.3.AES

*熟悉AES密码算法

*了解AES密码的应用

RIJNDAEL算法是一个数据块长度和密钥长度都可变的分组加密算法,其数据块长度和密钥长度都可独立

地选定为大于等于128位且小于等于256位的32位的任意倍数。美国颁布AES时却规定数据块的长

度为128位、密钥的长度可分别选择为128位,192位或256位。

RIJNDAEL算法迭代圈数计算,已知Nk和Nb,求Nr,P96★

表2-7算法迭代圈数Nr

NrNb=4Nb=6Nb=8

Nk=4101214

Nk=6121214

Nk=8141414

Nb为数据块大小,也为除32.

密钥也可表示为二维字节数组(每个元素为一个字节),它有四行,Nk歹U。Nk等于密钥块长

度除32

128位明文被分成16个字节,按顺序复制到一个4*4的矩阵中,称为状态,AES的所有变

化都是基于状态矩阵的变化。是按照竖排的方式排列的

AES算法的四部分

•S盒变换:字节代替(SubBytes):用一个S盒完成分组的字节到字节的代替。AES唯一

的非线性变换,是安全关键

安装{行,列}从s盒中将其替换。

16个相同的S盒,8位输入8位输出(DES有8个7T相同的S盒,6位输入4位输出)

把该字节的高4位作为行值,低4位作为列值,以这些行列值作为索引从S盒中对应位置

取出元素作为输出。例如,十六进制数{95}所对应的S盒的行值是9,列值是5,S盒中在

此位置的值是{2A},相应的{95}被映射为{2A}。

,行移位(ShiftRows):

线性变换,作用是置换,把数据打乱重排

正向和逆向变换。正向行移位,state的第一行保持不变。把state的第二行循环左移一个

字节,state的第三行循环左移两个字节,state的第四行循环左移三个字节。

•列混淆(MiColumns):利用域GFQ8)上的算术特性的一个代替。行乘列

列相加,

•轮密钥加(AddRoundKey):当前分组和扩展密钥的一部分进行按位OR(异或)。

用密钥矩阵相乘

AES算法是宽轨迹策略(WideTrailStrategy),能有效针对差分攻击和线性攻击,目前还未发

现其缺点。

2.2.4.SM4

*熟悉SM4密码算法

*了解SM4密码的应用

1.SM4算法是一个分组算法,数据分组长度128比特,密钥长度128比特。

2.加密算法与密钥扩展算法都采用32轮迭代结构,SM4密码算法以字节(8位)和字32

位)为单位进行数据处理。

3.SM4密码算法是对合运算,因此解密算法与加密算法的结构相同,只是轮密钥的使用I

顺序相反,解密轮密钥是加密轮密钥的逆序。

4.基本运算:SM4密码算法使用模2加和循环移位作为基本运算。

基本密码部件:SM4密码算法使用了S盒、非线性变换T、线性变换部件L、合成变换

T基本密码部件。

轮函数:SM4密码算法采用对基本轮函数进行迭代的结构。利用上述基本密码部件,

便可构成轮函数。SM4密码算法的轮函数是一种以字为处理单位的密码函数。

加密算法:SM4密码算法是一个分组算法•数据分组长度为128比特,密钥长度为128

比特。加密算法采用32轮迭代结构,每轮使用一个轮密钥。

解密算法:SM4密码算法是对合运算,因此解密算法与加密算法的结构相同,只是轮

密铝的使用顺序相反,解密轮密钥是加密轮密钥的逆序。

密钥扩展算法:SM4密码算法使用128位的加密密钥,并采用32轮法代加密结构,每

一轮加密使用一个32位的轮密钥,共使用32个轮密钥。因此需要使用密钥扩展算法,从加

密密钥产生出32个轮密钥。

SM4的安全性:SM4密码算法经过我国专业密码机构的充分分析测试,可以抵抗差分

攻击、线性攻击等现有攻击,因此是安全的。

2.2.5.分组密码工作模式

*熟悉分组密码工作的ECB/CBC/CFB/OFB/CTR模式

记忆规则:ICBC(工行)爱存不存密码分组连接;。输出,F反馈,C密码故输出反馈OFB,

密码反馈CFB;E电子,BbookECB就是电码本

分组密码不能隐藏数据模式,即相同的明文组成对应着相同的密文组:分组加密不能抵抗组

的重放、嵌入式存放切入和删除等攻击,即使有了安全的分组密码算法,也需要采取适当的

工作模式来隐藏密文的统计特性数据的格式的。

ECB电码本分块并行加密,相同密钥分别对明文分组独立加密,短数据的加密

eleectirccodebook

CBC密码分组链接每个平文块先与前一个密文块进行异或后,再进行认证和普通目的面向分

加密。组的传输

CFB密码反馈模式模式类似于CBC,可以将块密码变为自同步的流密认证和普通目的面向分

码组的传输

OFB输出反馈分块串行加密,每次结果左移动n,加密算法输入是单个加密出错不会影响

上次加密的输出,其他位

CTR模式每个明文分组都与一个经过加密的计数器相异或。面向分组的通用传输、用

CounterModeEncryption于高速需求

表6.1分组密码的工作模式

模式描述典型应用

电码本(ECB)用相同的密钥分别对明文分组独立加密•单个数据的安全传输(如一个加由席钥)

密文分组链接(CBC)加密算法的输入是h一个密文组和下一个明文•面向分组的通用传输

组的异或•认证

密文反馈(CFB)一次处理s位,上一块密文作为加法算法的输•面向数据流的通用传输

人,产生的伪随机数输出与明文界或作为下•单•认证

元的密文

输出反馈(OFB)与CFB类似,只是加密算法的输入是上•次加密•噪声信道上的数据流的传输(如卫星通信)

的输出,旦使用整个分组

计数器(CTR)每个明文分组都与一个经过加密的计数器相异•面向分组的通用传输

或。对每个后续分组计数器递增•用于高速需求

电码本模式ECB

(1)ECB的一个缺点是要求数据的长度是密码分组长度的整数倍,否则最后一个数据块将是短块,这时需

要特殊处理。

(2)ECB方式的另一缺点是容易暴露明文的数据模式。

密码分组链接模式CBC

优点:

1.不容易主动攻击,安全性好于ECB,适合传输长度长的报文,是SSL.IPSec的标准。

缺点:

1.不利于并行计算;

2.误差传递;

3.需要初始化向量IV

缺点:当Mi或Ci中发生一位错误时,自此以后的密文全都发生错误,即具有错误传播无界

的特性,不利于磁盘文件加密。并且要求数据的长度是密码分组长度的整数倍,否则最后一

个数据块将是短块,这时需要特殊处理。

输出反馈模式OFB

密码反馈和输出反馈图形是一样的,至少调用的算法不一样。

CTR模式的缺点是没有错误传播,因此不适合用于数据完整性认证。

ECBCBC密文分组链接OFBCFB密文反馈C7TR

分组分组不分组不分组不分组分组,

counter不断

密文先处理密文先处理寄存先处理寄存

器器

图形一样的就不会考

缺点加解密时候,

错误传播无

2.3.序列密码

2.3.1.序列密码的概念

序列密码方式仿效"一次一密"密码,从而促进了序列密码的研究和发展

为了安全,序列密码应使用尽可能长的密钥,而长的密钥的存储、分配都很困难。于是人们

采用一个短的种子密钥来控制某种算法产生出长的密钥序列,供加解密使用,而短的种子密

钥的存储、分配部较容易。

依据明文可以连续不断的产生伪随机密钥,以次达到''一次一密”的目的。

2.3.2.线性移位寄存器序列

*熟悉线性移位寄存器序列的概念

*了解线性移位寄存器序列的应用

移位寄存器能将所储存的数据逐位向左或向右移动,以达到计算机运行过程中所需的功能。

如果反馈函数是输入函数的线性函数,则称移位寄存器为线性移位寄存器(LSR),否则称为非线性移位寄

存器。

2.3.3.RC4

*熟悉RC4密码算法

*了解RC4密码的应用

RC4密码与基于移位寄存器的序列密码不同,它是一种基于非线性数据表变换的序列密码。它

以一个足够大的数据表为基础,对表进行非线性变换,产生非线性的密钥序列。

包括初始化算法(KSA)根据用户输入的秘钥key生成S盒和伪随机子密码生成算法(PRGA)

生成秘钥流用于加密数据。

KSA算法初始化长度为256的S盒。第一个for循环将0到255的互不重复的元素装入

S盒;第二个for循环根据密钥打乱S盒。

forifrom0to255

S[i]:=i

endfor

j:=o

forifrom0to255

j:=(j+S[i]+key[imodkeylength])mod256

swapvaluesofS[i]andS[j]

endfor

由于RC4密码算法简单,软件实现容易,加密速度快,得到了广泛的应用。

2.3.4.ZUC

*熟悉ZUC密码

*了解ZUC密码的应用

ZUC算法采用哪三层结构设计

ZUC算法在逻辑上采用三层结构设计,如图2-24所示。上层为定义在素域GF(231-1)

上的线性反馈移位寄存器(LFSR),这是ZUC算法设计的一大创新。

zuc算法中间层为比特重组。比特重组采用取半合并技术,实现LFSR数据单元到非线性函

数F和密钥输出的数据转换,其主要目的是破坏LFSR在素域GF(231_1)上的线性结构。

zuc算法下层为非线性函数F。在非线性函数F的设计上,zuc算法设计充分借鉴了分组

密码的设计技巧,采用S盒和高扩散特性的线性变换L,非线性函数F具有高的抵抗区

分析、快速相关攻击和猜测确定攻击等方法的能力。

zuc算法具有非常高的安全强度,能够抵抗目前常见的各种流密码攻击方法。

2.4.Hash函数

2.4.1.Hash函数的概念

*掌握Hash函数的概念

*熟悉Hash函数的应用

HASH函数应满足哪些性质?P119*

单向性:对任何给定的hash函数值h,找到满足H(x)=h的x在计算上是不可行的

抗弱碰撞性:不能找到与给定报文具有相同Hash值的另一报文。对任何给定的分组x,找

到满足州x且H(x)=H(y)的y在计算上是不可行的。

抗强碰撞性:找到任何满足H(x)=H(y)的偶对(x,y)在计算上是不可行的。

Hash函数的基本设计结构

它将输入报文分为L-I个大小为b位的分组。若第L-I个分组不足b位,则将其填充为b

位。然后再附加上一个表示输入的总长度分组。

2.4.2.SHA算法

*了解SHA算法系列

*了解SHA算法的安全性

SHA算法步骤?4步P122*

步骤1:填充报文。填充报文的目的是使报文长度与448模512同余(即长度=448mod512)«

填充方法是在报文后附加一个1和若干个Oo即分组长度【512】位

步骤2:初始化缓冲区。最终结果保存于160位的缓冲区中,缓冲区由5个32位的寄存器(A,

B,C,D,E)组成

步骤3:执行算法主循环。每次循环处理一个512位的分组,故循环次数为填充后报文的分组

数,

步骤4:输出。所有的L个512位的分组处理完后,第L个分组的输出即是160位的报

文摘要。

王小云教授在2005年给出了SHA-0的完全碰撞和58轮SHA-I的碰撞,并且对于整个

SHA-I的碰撞的复杂度仅为2"69,SHA-I的安全性由此也被否定。

2.4.3.SM3算法

*熟悉SM3算法

*了解SM3算法的应用

1、填充

SM3对消息长度小于为2八64位进行运算,其填充方法与SHA256的相同,假设消息

m的长度为I比特。首先将比特“1”添加到消息的末尾,再添加k个“0”,k是满足1+1

+k=448mod512的最小的非负整数。然后再添加一个64位比特串,该比特串是长度I的二

进制表示。填充后的消息m'的比特长度为512的倍数。

2、迭代压缩

这个过程与其他HASH算法类似,先进行消息扩展,之后迭代与压缩,其详细过程可参

考标准文档。其扩展与压缩计算以循环移位为主,并有异或计算。

填充的消息经扩展后在进行64轮迭代,最后就算出杂凑结果。

2.4.4.HMAC

*熟悉消息认证码的概念及应用

*熟悉使用HMAC的消息认证码

*熟悉基于SM3的HMAC

HMAC(HashedMessageAulhenticationCode)散列消息身份验证码。它不是散列函数,而是采用散列函数

(MD5or或SHA)与共享密钥一起使用的消息身份验证机制。是密钥相关的哈希运算消息认证码

消息认证码MAC(MessageAuthenticationCode)是消息内容和秘密钥的公开函数,其输出是固定长度的短

数据块:

接收方收到报文后用相同的秘密钥K进行相同的计算得出新的MAC,并将其与接收到的MAC进行比

较,若二者相等,则

(1)接收方可以相信报文未被修改

(2)接收方可以相信报文来自意定的发送方

MAC并不能实现保密性

为了防止黑客通过彩虹表根据哈希值反推原始口令,在计算哈希的时候,不能仅针对原始输

入计算,需要增加一个salt来使得相同的输入也能得到不同的哈希,这样,大大增加了黑客

破解的难度。

(1)先由客户端向服务器发出一个验证请求。

(2)服务器接到此请求后生成一个随机数并通过网络传输给客户端(此为质疑)。

(3)客户端将收到的随机数提供给ePass,由ePass使用该随机数与存储在ePass中的密钥进

行HMAC-MD5运算并得到一个结果作为认证证据传给服务器(此为响应)。

(4)与此同时,服务器也使用该随机数与存储在服务器数据库中的该客户密钥进行

HMAC-MD5运算,如果服务器的运算结果与客户端传回的响应结果相同,则认为客户端是

一个合法用

2.5.公钥密码体制

2.5.1.公钥密码的概念

公钥密码的概念

公钥密码的核心是使用一种特殊的函数一一单向陷门函数,从一个方向求值是容易的,但逆

向计算很困难

什么是单向陷门函数?P131

设函数y=f(x),如果满足以下两个条件,则称为单向函数:

⑴如果对于给定的x,要计算出y很容易;

⑵而对于给定的y,要计算出x很难。

目前世界公认的比较安全的公开密钥密码有基于大合数因子分解困难性的RAS密码类和基于离

散对数问题困难性的ELGamal密码类(包括椭圆曲线密码》。

公开密钥密码的基本思想是将传统密码的密钥K一分为二,分为加密钥Ke和解密钥Ka,用密钥Ke控

制加密,用解密钥Ka控制解密,使其由计算复杂性确保由加密钥Ke在计算上不能推出解密钥品。

2.5.2.RSA密码

*熟悉RSA密码算法

*了解RSA密码的特点与应用

其安全性建立在“大数分解和素性检测”这一数论难题基础上,将两个大素数相乘是容易计算

的,将该乘积分解成两个大素数因子是困难的(计算上不可行)

例2-2令p=47,q=71,"=47x71=3337,<p(n)=P(3337)=46x70=3220。选取e=79,

计算d=e-imod3220=1019mod3220。公开e=79和”=3337,保密p=47,q=71,J=1019

和p(")=3220。

设明文环=6882326879666683,进行分组,必=688,跖=232,跖=687,跖=966,

%=668,106=003。Mi的密文CI=688‘9mod3337=1570,继续进行类似计算,可得最终

密文

C=15702756209122762423158.

如若解密,计算Mi=1570m9mod3337=688,类似地可解密还原出其他明文。

1.随机选择两个不相等的质数p和q«

这里我们选择p=3,q=llo(实际应用中,这两个质数越大,就越难破解。)

2.计算p和q的乘积n»

n=p*q=3*11=33

3.计算n的欧拉函数<l>(n)。

(n)=(p-1)*(q-1)=2*10=20

4.随机选择一个整数e,条件是l<e<<l>(n),且e与4>(n)互质。

我们选择与20互质的数,e-7(随机选择)。ed=lmode4>(n)

5.计算e对于<1)(n)的模反元素d。

这里要求7对于20的模反元素,可以有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论