第2讲-对称密码分析课件_第1页
第2讲-对称密码分析课件_第2页
第2讲-对称密码分析课件_第3页
第2讲-对称密码分析课件_第4页
第2讲-对称密码分析课件_第5页
已阅读5页,还剩127页未读 继续免费阅读

下载本文档

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

文档简介

网络与信息安全技术

第二讲

对称密码华中科技大学软件工程硕士课程网络与信息安全技术

第二讲

对称密码华中科技大学软件工程主要内容对称分组密码DESAES流密码随机数主要内容对称分组密码1.分组密码定义:将一个明文分组作为整体加密,通常得到与之等长的密文分组;除加密外的用途:构造伪随机数生成器、流密码系统、消息认证码(MAC)

1.分组密码定义:分组密码的设计原理代换结构

分组密码的设计原理代换结构扩散定义:将明文的统计特性散布到密文中去,使得明文的每一位影响密文中多位的值,使明文和密文之间的统计关系变得尽可能复杂,以挫败推导出密钥的企图;结果:明文的统计特性将被散布到密文中,单字母、双字母、多字母在密文中出现的频率比在明文中出现的频率更接近于相等;方式:在分组密码中,对数据重复执行某个置换,可获得扩散;

扩散定义:将明文的统计特性散布到密文中去,使得明文的每一

定义:使密文和密钥之间的统计关系变得尽可能复杂,以阻止攻击者发现密钥。

方式:使用复杂的非线性代换算法可以混淆的效果。

扩散和混淆成功地实现了分组密码的本质属性,因而成为设计现代分组密码的基础.混淆

定义:使密文和密钥之间的统计关系变得尽可能复杂,以阻止攻

Feistel密码结构第2讲--对称密码分析课件Feistel解密结构Feistel解密过程本质上和加密过程是一样的,

算法使用密文作为输入,但使用子密钥Ki的次序与加密过程相反,即第1轮使用Kn,第2轮使用Kn-1,……,最后一轮使用K1.这一特性保证了解密和加密可采用同一算法和硬件结构.

Feistel解密结构Feistel解密过程本质上和加密过程2数据加密标准DES数据加密标准(dataencryptionstandard,DES),最为广泛使用和流行,美国IBM公司研制,Lucifer密码(128位密钥)的一种发展和修改(56位密钥);设计目标用于加密保护静态存储和传输信道中的数据,安全使用10~15年.

2数据加密标准DES数据加密标准(dataencryptDES的参数密钥:56比特,明文:64位,密文:64位

DES的参数密钥:56比特,明文:64位,密文:64位DES加密算法框图DES加密算法框图初始置换IP和IP-1

初始置换IP和IP-1DES加密算法的轮结构DES加密算法的轮结构扩展置换-32位扩展到48位基本方法:32位输入被4位4位地分成8组,然后每组从相邻地两组中取得位置最远地一位而变成6位.目的:使S盒的输出在下一轮中尽可能影响更多的数据位扩展置换-32位扩展到48位基本方法:32位输入被4位4位地F中的代换由8个S盒组成,每个S盒的输入长为6比特、输出长为4比特,每个S盒给出了4个代换(由一个表的4行给出)第2讲--对称密码分析课件S-Box-iS-Box-iS-盒的构造S-盒的构造P-盒置换P-盒置换子密钥的产生子密钥的产生DES的解密DES的解密算法和加密算法完全相同,只是各子密钥的使用顺序相反,即为

k16,k15,k14,…,k2,k1.算法也是循环右移产生每一圈的子密钥,每次右移动的位数为弱密钥,半弱密钥,互补密钥,总共64个

DES的解密DES的解密算法和加密算法完全相同,只是各子密钥

DES的4种运行模式,这些模式也可用于其他分组密码;ECB,CBC,OFB,CFBDES的运行模式

DES的4种运行模式,这些模式也可用于其他分组密码;DE电码本(ECB)模式相同明文相同密文密文块损坏仅对应明文块损坏适合于传输短信息

电码本(ECB)模式相同明文相同密文密码分组链接(CBC)模式相同明文不同密文密文块损坏两明文块损坏加密长消息非常合适;保密性和认证

密码分组链接(CBC)模式相同明文不同密文密码反馈(CFB)模式

分组密码

流密码一个单元损坏影响多个单元

密码反馈(CFB)模式分组密码流密码第2讲--对称密码分析课件

分组密码

流密码

一个单元损坏只影响对应单元输出反馈(OFB)模式

分组密码流密码输出反馈(OFB)模式第2讲--对称密码分析课件计数器(CTR)模式

计数器(CTR)模式计数器模式的主要特点可以并行实现,适用于高速网络可以随机访问加密的数据分组

计数器模式的主要特点可以并行实现,适用于高速网络

为了提高DES的安全性,并利用现有DES的软硬件资源,可将DES算法在多密钥下多重使用.

最简单的形式是二重DES二重DES算法二重DES所用密钥长度为112比特,强度极大地增加

为了提高DES的安全性,并利用现有DES的软硬件资源,可将二重DES的中间相遇攻击

如果已知一个明文密文对(P,C),攻击的实施可如下进行:1.用256个所有可能的K1对P加密,将加密结果存入一表并对表按X排序;2.用256个所有可能的K2对C解密,在上述表中查找与C解密结果相匹配的项,如果找到,则记下相应的K1和K2。3.再用一新的明文密文对(P’,C’)检验上面找到的K1和K2,用K1和K2对P’两次加密,若结果等于C’,就可确定K1和K2是所要找的密钥。如果有那么

二重DES的中间相遇攻击如果已知一个明文密文对(P两个密钥的三重DES三个密钥的三重DES两个密钥的三重DES三个密钥的三重DESAES的历史1997年NIST宣布征集AES算法要求:与三重DES比,要快且至少一样安全,分组128位,密钥128/192/256位1998年确定第一轮15个候选者1999年确定第二轮五个候选者:MARS,RC6,Rijndael,Serpent,Twofish2000年底Rijndael胜出

AES的历史1997年NIST宣布征集AES算法AES算法-Rijndael简介•不属于Feistel结构•加密、解密相似但不对称•支持128数据块大小•支持128/192/256密钥长度•有较好的数学理论作为基础•结构简单、速度快

AES算法-Rijndael简介•不属于Feistel结AES算法结构•主要有四个基本运算:字节代换行移位列混淆轮密钥加

AES算法结构•主要有四个基本运算:Rijndael加解密结构AddRoundKey()For(i=1;i<Nr;++i){ByteSub();ShiftRow();MixColumn();AddRoundKey()}ByteSub();ShiftRow();AddRoundKey()I_AddRoundKey()I_ShiftRow();I_ByteSub();For(i=1;i<Nr;++i){I_AddRoundKey()I_MixColumn();I_ShiftRow();I_ByteSub();}I_AddRoundKey()I_AddRoundKey()For(i=1;i<Nr;++i){I_ShiftRow();I_ByteSub();I_AddRoundKey()I_MixColumn();}I_ShiftRow();I_ByteSub();I_AddRoundKey()

Rijndael加解密结构AddRoundKey()I_AdAES算法过程的动画演示AES算法过程的动画演示其他的分组密码IDEA算法Blowfish算法RC5算法……..

其他的分组密码IDEA算法流密码将明文划分为bit或byte的编码单位,分别与密钥流作用进行加密,解密时以同步产生的同样的密钥流实现。

流密码将明文划分为bit或byte的编码单位,分别与密钥流作流密码安全强度完全依赖于密钥流生成器生成序列的随机性和不可预测性。加密关键:密钥流生成器的设计解密关键:保持收发两端密钥流的精确同步

流密码安全强度完全依赖于密钥流生成器生成序列的随机性和不可预流密码的特点优点:速度更快,需要编写的代码更少缺点:不能重复使用密钥使用场合流密码:需要对数据流进行加解密的应用,如数据通信或网页浏览器/Web链接分组密码:处理成块的数据,如文件传输、电子邮件、数据库

流密码的特点优点:速度更快,需要编写的代码更少设计流密码需要考虑的因素加密序列的周期要足够长密钥流应该尽可能接近于一个真正的随机数流的特征

设计流密码需要考虑的因素加密序列的周期要足够长流密码的实现方式LSFR方式DES方式RC4……量子密码,混沌密码

流密码的实现方式LSFR方式LSFR流密码

LSFR流密码常见的两种密钥流产生器常见的两种密钥流产生器移位寄存器是流密码产生密钥流的一个主要组成部分.GF(2)上一个n级反馈移位寄存器由n个二元存储器与一个反馈函数f(a1,a2,…,an)组成,如图所示.

线性反馈移位寄存器GF(2)上的n级反馈移位寄存器

移位寄存器是流密码产生密钥流的一个主要组成部分.GF(2)图是一个3级反馈移位寄存器,其初始状态为(a1,a2,a3)=(1,0,1),输出见表.一个3级反馈移位寄存器图是一个3级反馈移位寄存器,其初始状态为(a1,a2,a表一个3级反馈移位寄存器的状态和输出状态(a3,a2,a1)输出101110111011101110

101110即输出序列为101110111011…,周期为4表一个3级反馈移位寄存器的状态和输出状态(a3,a2,a1Geffe序列生成器由3个LFSR组成,其中LFSR2作为控制生成器使用,当LFSR2输出1时,LFSR2与LFSR1相连接;当LFSR2输出0时,LFSR2与LFSR3相连接Geffe序列生成器Geffe序列生成器图

Geffe序列生成器由3个LFSR组成,其中LFSR2作为多路复合器表示的Geffe序列生成器Geffe序列的周期实现了极大化,且0与1之间的分布大体上是平衡的。第2讲--对称密码分析课件J-K触发器如图所示,两个输入端分别用J和K表示,其输出ck不仅依赖于输入,还依赖于前一个输出位ck-1,即其中x1和x2分别是J和K端的输入。J-K触发器J-K触发器如图所示,两个输入端分别用J和K表示,其输出ck利用J-K触发器的非线性序列生成器见图利用J-K触发器的非线性序列生成器利用J-K触发器的非线性序列生成器见图利用J-K触发器的非线Pless生成器由8个LFSR、4个J-K触发器和1个循环计数器构成,由循环计数器进行选通控制。Pless生成器Pless生成器由8个LFSR、4个J-K触发器和1个循环计钟控序列最基本的模型是用一个LFSR控制另外一个LFSR的移位时钟脉冲,如图所示。钟控序列生成器最简单的钟控序列生成器钟控序列最基本的模型是用一个LFSR控制另外一个LFSR的移RC4流密码RonRivest,RSA公司,1987可变密钥长度,面向字节操作的流密码该密码的周期大于10100,每输出一字节的结果仅需要8到16条机器周期SSL/TLS,WEP1994年公开RC4流密码RonRivest,RSA公司,1987RC4流密码RC4流密码RC4算法描述使用28=256个字节构成的S表和两个指针(I和J),总共需要258个字节的存储空间;S表的值S0,S1,…,S255是0,1,…,255的一个排列,I和J的初值为0;把S表和I,J指针的具体取值称为RC4的一个状态:T=<S0,S1,…,S255,I,J>对状态T进行非线性变换,产生出新的状态,并输出密钥序列中的一个字节k

RC4算法描述使用28=256个字节构成的S表和两个指针(IRC4算法描述(con.)RC4的下一状态函数定义为:(1)I=0,J=0;(2)I=I+1mod256;(3)J=J+SImod256;(4)交换SI和SJRC4的输出函数定义为:(1)h=SI+SJmod256(2)k=Sh

RC4算法描述(con.)RC4的下一状态函数定义为:随机数随机数的用途–会话密钥产生–RSA公钥算法中密钥的产生–认证过程中的临时交互号,作为握手信息避免重放攻击•随机数的基本特点–随机性•均匀分布:随机数的分布是一致的•独立性:序列中任何数不能由其它数推导出来–不可预测性认证或会话密钥之类的应用

随机数随机数的用途随机数的源真随机数难以获得物理噪声发生器:离子辐射事件,闸流管,但随机性和精确度有问题,这些设备又很难连接到网络系统中已经公布好的随机数:数目太少,敌手也可搞到伪随机数(相对随机)使用算法来生成随机数,算法是确定的,所以产生的序列并非统计随机的但可以经受住随机性检测

随机数的源真随机数难以获得伪随机数的产生•线性同余法

Xn+1=(aXn+c)modmm模数m>0231a乘数0≤a<ma=75=16807c增量0≤c<mX0

种子0≤X0<m

伪随机数的产生•线性同余法基于密码的随机数产生循环加密

DES输出反馈方式ANSIX.917伪随机数产生器BlumBlumShub(BBS)产生器

基于密码的随机数产生循环加密循环加密

循环加密DES输出反馈模型

DES输出反馈模型ANSIX9.17伪随机数发生器Ri=EDEK1,K2(Vi⊕EDEK1,K2(DTi))Vi+1=EDEK1,K2(Ri⊕EDEK1,K2(DTi))

ANSIX9.17伪随机数发生器Ri=EDEK1,K2(VBBS伪随机数产生器(1)首先选择两个大素数p,q

p≡q≡3(mod4)(2)选择s与n互素通过了“下一位”测试(next-bittest)–不存在多项式时间的算法使得在已知前k位的情况下预测出第k+1位的概率大于0.5•BBS的安全性同样基于分解n的难度

BBS伪随机数产生器(1)首先选择两个大素数p,qp≡q网络与信息安全技术

第二讲

对称密码华中科技大学软件工程硕士课程网络与信息安全技术

第二讲

对称密码华中科技大学软件工程主要内容对称分组密码DESAES流密码随机数主要内容对称分组密码1.分组密码定义:将一个明文分组作为整体加密,通常得到与之等长的密文分组;除加密外的用途:构造伪随机数生成器、流密码系统、消息认证码(MAC)

1.分组密码定义:分组密码的设计原理代换结构

分组密码的设计原理代换结构扩散定义:将明文的统计特性散布到密文中去,使得明文的每一位影响密文中多位的值,使明文和密文之间的统计关系变得尽可能复杂,以挫败推导出密钥的企图;结果:明文的统计特性将被散布到密文中,单字母、双字母、多字母在密文中出现的频率比在明文中出现的频率更接近于相等;方式:在分组密码中,对数据重复执行某个置换,可获得扩散;

扩散定义:将明文的统计特性散布到密文中去,使得明文的每一

定义:使密文和密钥之间的统计关系变得尽可能复杂,以阻止攻击者发现密钥。

方式:使用复杂的非线性代换算法可以混淆的效果。

扩散和混淆成功地实现了分组密码的本质属性,因而成为设计现代分组密码的基础.混淆

定义:使密文和密钥之间的统计关系变得尽可能复杂,以阻止攻

Feistel密码结构第2讲--对称密码分析课件Feistel解密结构Feistel解密过程本质上和加密过程是一样的,

算法使用密文作为输入,但使用子密钥Ki的次序与加密过程相反,即第1轮使用Kn,第2轮使用Kn-1,……,最后一轮使用K1.这一特性保证了解密和加密可采用同一算法和硬件结构.

Feistel解密结构Feistel解密过程本质上和加密过程2数据加密标准DES数据加密标准(dataencryptionstandard,DES),最为广泛使用和流行,美国IBM公司研制,Lucifer密码(128位密钥)的一种发展和修改(56位密钥);设计目标用于加密保护静态存储和传输信道中的数据,安全使用10~15年.

2数据加密标准DES数据加密标准(dataencryptDES的参数密钥:56比特,明文:64位,密文:64位

DES的参数密钥:56比特,明文:64位,密文:64位DES加密算法框图DES加密算法框图初始置换IP和IP-1

初始置换IP和IP-1DES加密算法的轮结构DES加密算法的轮结构扩展置换-32位扩展到48位基本方法:32位输入被4位4位地分成8组,然后每组从相邻地两组中取得位置最远地一位而变成6位.目的:使S盒的输出在下一轮中尽可能影响更多的数据位扩展置换-32位扩展到48位基本方法:32位输入被4位4位地F中的代换由8个S盒组成,每个S盒的输入长为6比特、输出长为4比特,每个S盒给出了4个代换(由一个表的4行给出)第2讲--对称密码分析课件S-Box-iS-Box-iS-盒的构造S-盒的构造P-盒置换P-盒置换子密钥的产生子密钥的产生DES的解密DES的解密算法和加密算法完全相同,只是各子密钥的使用顺序相反,即为

k16,k15,k14,…,k2,k1.算法也是循环右移产生每一圈的子密钥,每次右移动的位数为弱密钥,半弱密钥,互补密钥,总共64个

DES的解密DES的解密算法和加密算法完全相同,只是各子密钥

DES的4种运行模式,这些模式也可用于其他分组密码;ECB,CBC,OFB,CFBDES的运行模式

DES的4种运行模式,这些模式也可用于其他分组密码;DE电码本(ECB)模式相同明文相同密文密文块损坏仅对应明文块损坏适合于传输短信息

电码本(ECB)模式相同明文相同密文密码分组链接(CBC)模式相同明文不同密文密文块损坏两明文块损坏加密长消息非常合适;保密性和认证

密码分组链接(CBC)模式相同明文不同密文密码反馈(CFB)模式

分组密码

流密码一个单元损坏影响多个单元

密码反馈(CFB)模式分组密码流密码第2讲--对称密码分析课件

分组密码

流密码

一个单元损坏只影响对应单元输出反馈(OFB)模式

分组密码流密码输出反馈(OFB)模式第2讲--对称密码分析课件计数器(CTR)模式

计数器(CTR)模式计数器模式的主要特点可以并行实现,适用于高速网络可以随机访问加密的数据分组

计数器模式的主要特点可以并行实现,适用于高速网络

为了提高DES的安全性,并利用现有DES的软硬件资源,可将DES算法在多密钥下多重使用.

最简单的形式是二重DES二重DES算法二重DES所用密钥长度为112比特,强度极大地增加

为了提高DES的安全性,并利用现有DES的软硬件资源,可将二重DES的中间相遇攻击

如果已知一个明文密文对(P,C),攻击的实施可如下进行:1.用256个所有可能的K1对P加密,将加密结果存入一表并对表按X排序;2.用256个所有可能的K2对C解密,在上述表中查找与C解密结果相匹配的项,如果找到,则记下相应的K1和K2。3.再用一新的明文密文对(P’,C’)检验上面找到的K1和K2,用K1和K2对P’两次加密,若结果等于C’,就可确定K1和K2是所要找的密钥。如果有那么

二重DES的中间相遇攻击如果已知一个明文密文对(P两个密钥的三重DES三个密钥的三重DES两个密钥的三重DES三个密钥的三重DESAES的历史1997年NIST宣布征集AES算法要求:与三重DES比,要快且至少一样安全,分组128位,密钥128/192/256位1998年确定第一轮15个候选者1999年确定第二轮五个候选者:MARS,RC6,Rijndael,Serpent,Twofish2000年底Rijndael胜出

AES的历史1997年NIST宣布征集AES算法AES算法-Rijndael简介•不属于Feistel结构•加密、解密相似但不对称•支持128数据块大小•支持128/192/256密钥长度•有较好的数学理论作为基础•结构简单、速度快

AES算法-Rijndael简介•不属于Feistel结AES算法结构•主要有四个基本运算:字节代换行移位列混淆轮密钥加

AES算法结构•主要有四个基本运算:Rijndael加解密结构AddRoundKey()For(i=1;i<Nr;++i){ByteSub();ShiftRow();MixColumn();AddRoundKey()}ByteSub();ShiftRow();AddRoundKey()I_AddRoundKey()I_ShiftRow();I_ByteSub();For(i=1;i<Nr;++i){I_AddRoundKey()I_MixColumn();I_ShiftRow();I_ByteSub();}I_AddRoundKey()I_AddRoundKey()For(i=1;i<Nr;++i){I_ShiftRow();I_ByteSub();I_AddRoundKey()I_MixColumn();}I_ShiftRow();I_ByteSub();I_AddRoundKey()

Rijndael加解密结构AddRoundKey()I_AdAES算法过程的动画演示AES算法过程的动画演示其他的分组密码IDEA算法Blowfish算法RC5算法……..

其他的分组密码IDEA算法流密码将明文划分为bit或byte的编码单位,分别与密钥流作用进行加密,解密时以同步产生的同样的密钥流实现。

流密码将明文划分为bit或byte的编码单位,分别与密钥流作流密码安全强度完全依赖于密钥流生成器生成序列的随机性和不可预测性。加密关键:密钥流生成器的设计解密关键:保持收发两端密钥流的精确同步

流密码安全强度完全依赖于密钥流生成器生成序列的随机性和不可预流密码的特点优点:速度更快,需要编写的代码更少缺点:不能重复使用密钥使用场合流密码:需要对数据流进行加解密的应用,如数据通信或网页浏览器/Web链接分组密码:处理成块的数据,如文件传输、电子邮件、数据库

流密码的特点优点:速度更快,需要编写的代码更少设计流密码需要考虑的因素加密序列的周期要足够长密钥流应该尽可能接近于一个真正的随机数流的特征

设计流密码需要考虑的因素加密序列的周期要足够长流密码的实现方式LSFR方式DES方式RC4……量子密码,混沌密码

流密码的实现方式LSFR方式LSFR流密码

LSFR流密码常见的两种密钥流产生器常见的两种密钥流产生器移位寄存器是流密码产生密钥流的一个主要组成部分.GF(2)上一个n级反馈移位寄存器由n个二元存储器与一个反馈函数f(a1,a2,…,an)组成,如图所示.

线性反馈移位寄存器GF(2)上的n级反馈移位寄存器

移位寄存器是流密码产生密钥流的一个主要组成部分.GF(2)图是一个3级反馈移位寄存器,其初始状态为(a1,a2,a3)=(1,0,1),输出见表.一个3级反馈移位寄存器图是一个3级反馈移位寄存器,其初始状态为(a1,a2,a表一个3级反馈移位寄存器的状态和输出状态(a3,a2,a1)输出101110111011101110

101110即输出序列为101110111011…,周期为4表一个3级反馈移位寄存器的状态和输出状态(a3,a2,a1Geffe序列生成器由3个LFSR组成,其中LFSR2作为控制生成器使用,当LFSR2输出1时,LFSR2与LFSR1相连接;当LFSR2输出0时,LFSR2与LFSR3相连接Geffe序列生成器Geffe序列生成器图

Geffe序列生成器由3个LFSR组成,其中LFSR2作为多路复合器表示的Geffe序列生成器Geffe序列的周期实现了极大化,且0与1之间的分布大体上是平衡的。第2讲--对称密码分析课件J-K触发器如图所示,两个输入端分别用J和K表示,其输出ck不仅依赖于输入,还依赖于前一个输出位ck-1,即其中x1和x2分别是J和K端的输入。J-K触发器J-K触发器如图所示,两个输入端分别用J和K表示,其输出ck利用J-K触发器的非线性序列生成器见图利用J-K触发器的非线性序列生成器利用J-K触发器的非线性序列生成器见图利用J-K触发器的非线Pless生成器由8个LFSR、4个J-K触发器和1个循环计数器构成,由循环计数器进行选通控制。Pless生成器Pless生成器由8个LFSR、4个J-K触发器和1个循环计钟控序列最基本的模型是用一个LFSR控制另外一个LFSR的移位时钟脉冲,如图所示。钟控序列生成器最简单的钟控序列生成器钟控序列最基本的模型是用一个LFSR控制另外一个LFSR的移RC4流密码RonRivest,RSA公司,1987可变密钥长度,面向字节操作的流密码该密码的周期大于10100,每输出一字节的结果仅需要8到16条机器周期SSL/TLS,WEP1994年公开RC4流密码RonRivest,RSA公司,1987RC4流密码RC4流密码RC4算法描述使用28=256个字节构成的S表和两个指针(I和J),总共需要258个字节的存储空间;S表的值S0,S1,…,S255是0,1,…,255的一个排列,I和J的初值为0;把S表和I,J指针

温馨提示

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

评论

0/150

提交评论