书签 分享 收藏 举报 版权申诉 / 81
上传文档赚钱

类型《信息安全导论》课件2第9章.ppt

  • 上传人(卖家):momomo
  • 文档编号:7924399
  • 上传时间:2024-09-04
  • 格式:PPT
  • 页数:81
  • 大小:498KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《《信息安全导论》课件2第9章.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    信息安全导论 信息 安全 导论 课件
    资源描述:

    1、第第9章章 密码学与信息安全密码学与信息安全 第第9章章 密码学与信息安全密码学与信息安全 9.1 密码学的基本概念9.2 对称密码体制9.3 公钥密码体制思考题实验9 简单加解密算法的实现第第9章章 密码学与信息安全密码学与信息安全 内容导读密码学在信息安全领域作用巨大,其相关技术能够直接用来实现保密性、数据完整性、可认证性和不可否认性服务。加密不仅可以保护存储中的数据,也可以用来保护通信。敌手对加密体制的攻击就是在不知道密钥的情况下想法找出密文对应的明文或密钥。密码体制可分为对称体制和公钥体制,公钥体制能很容易实现不可否认性服务。典型的对称密码算法有RC4、DES和AES等,公钥密码算法有

    2、RSA、ElGamal和ECC等。第第9章章 密码学与信息安全密码学与信息安全 9.1 密码学的基本概念密码学的基本概念经典的密码学主要研究加密和解密理论,随着密码学研究领域的扩展,要精确定义现代密码学的研究范围是非常困难的。目前人们一般认为密码学是研究基于困难问题存在性的技术和应用的科学,而一般教科书中讨论的密码学框架如图9-1所示。第第9章章 密码学与信息安全密码学与信息安全 图9-1 密码学框架示意图 分组密码流密码对称密码可认证性保密性加密Hash函数挑战应答IVs消息认证码消息摘要消息摘要Nonces伪随机数随机源密钥智能卡DHRSA.公钥密码椭圆曲线数字签名数据完整性安全网络协议不

    3、可否认性第第9章章 密码学与信息安全密码学与信息安全 自从人类有了战争,就有了加密通信,因而也就有了密码学。两千多年前,恺撒大帝在战争中使用了字母变换密码来传递信息,在第二次世界大战中,中国专家池步洲(19082003)成功破译日军密码,促使山本五十六被截杀。第第9章章 密码学与信息安全密码学与信息安全 1949年Shannon发表的论文“保密系统的通信原理”奠定了密码学的数学理论基础,1976年Diffie和Hellman的论文“密码学的新方向”奠定了公钥密码学的基础,1977年美国颁布了数据加密标准DES,2001年美国正式颁布AES为新的国家加密标准,近年来,量子密码和DNA密码的研究又

    4、把我们带入了一个新的密码时代。第第9章章 密码学与信息安全密码学与信息安全 现代密码学在信息安全中占有非常重要的地位,原因在于它能够直接实现保密性、数据完整性、可认证性和不可否认性服务,如图9-1所示。第第9章章 密码学与信息安全密码学与信息安全 密码学中最基本的概念是加密与解密。假如Alice要把消息m通过不安全的信道保密地传给Bob,那么可按照图9-2方式进行。第第9章章 密码学与信息安全密码学与信息安全 图9-2 保密通信示意图 mE(k1,m)AliceCD(k2,c)mBob第第9章章 密码学与信息安全密码学与信息安全 在图9-2中,Alice要发送的消息m叫明文,明文被变换E转化成

    5、的看似无意义的随机消息C称为密文,而这个变换E就叫加密。Bob通过变换D把C转化为m的过程称为解密。加密和解密都需要有Key的支持,这个Key称为密钥。如果加密方和解密方使用的是同样的密钥,相应的变换称为对称密钥加(解)密算法;否则称为非对称密钥加(解)密算法或公开密钥加(解)密算法。所谓破解,即是敌手在不知道密钥的情况下,把密文C还原成m或推导出解密密钥。第第9章章 密码学与信息安全密码学与信息安全 理想的安全密码算法应该能公开其算法流程,不管敌手采用何种攻击办法,只要不告诉其密钥,敌手就无法通过密文找出对应明文或密钥。也就是说,敌手针对安全密码算法的最好攻击方式就是暴力攻击(即搜索全部密钥

    6、空间)。表9-1是敌手攻击密码系统时可能拥有资源的情况。第第9章章 密码学与信息安全密码学与信息安全 表表9-1 攻击类型与攻击者拥护的资源情况攻击类型与攻击者拥护的资源情况第第9章章 密码学与信息安全密码学与信息安全 理论上,只有一次一密(每个密码只使用一次)的密码系统才是不可破解的,没有绝对安全的密码算法。在实际应用中,如果一个密码算法用实际可得到的资源,在相对有限的时间内不能破解,则称该算法是计算上安全的。第第9章章 密码学与信息安全密码学与信息安全 9.2 对称密码体制对称密码体制9.2.1 对称密码体制概述对称密码体制概述在对称加密体制中,加密算法E和解密算法D使用相同的密钥k如图9

    7、-3所示。发送方Alice利用加密算法E和密钥k将明文m加密成密文c,即c=E(k,m)。接收方Bob利用解密算法D和密钥k将密文c解密成明文m,即m=D(k,c)。因此,在对称加密体制中,对于明文m,有 mmkEkD),(,(第第9章章 密码学与信息安全密码学与信息安全 为了使用对称加密体制,通信双方应提前商定一个会话密钥和使用的具体算法,而后进行秘密通信。图9-3 对称密码体制 mE(k,m)AlicecD(k,c)mBob第第9章章 密码学与信息安全密码学与信息安全 对称密码又分为流密码和分组密码两大类。流密码是按比特进行加密,分组密码是若干比特(定长)同时加密,其示意图分别如图9-4和

    8、图9-5所示。第第9章章 密码学与信息安全密码学与信息安全 图9-4 流密码示意图 Pseudo-RandomSequence GeneratorPlaintext BitstreamCiphertext BitstreamKey1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 0 1 1 0 1 0 1 1 0 1 0 0 0 1 1 0 0 1 0 1 1 1 0 1 0 0 Plaintext StreamPseudo-Random StreamCiphertext Stream第第9章章 密码学与信息安全密码学与信息安全 图9-5 分组密码示意图 n bitn bit单个

    9、分组加密明文分组k bit密钥Kn bitn bit密文分组第第9章章 密码学与信息安全密码学与信息安全 9.2.2 典型算法介绍典型算法介绍1维基尼亚密码维基尼亚密码维基尼亚密码是古典密码的典型代表,这是一个多表替换密码,其基本原理如图9-6所示。图中明文是“MESSAGE FROM”,密钥是“WHITE”,对应的密码文是“ILALECL NKS.”。有关该算法的具体实现可参见本章实验部分的有关内容,请同学们写出加解密算法的具体数学表达式。第第9章章 密码学与信息安全密码学与信息安全 图9-6 维基尼亚密码示意图第第9章章 密码学与信息安全密码学与信息安全 古典密码在历史上发挥了巨大作用,香

    10、农曾把古典密码的编制思想概括为“混淆”和“扩散”,这种思想对于现代密码编制仍具有非常重要的指导意义。第第9章章 密码学与信息安全密码学与信息安全 2RC4RC4是美国麻省理工学院Ron Rivest于1987年设计的密钥长度可变的流密码算法。Microsoft Windows系统、安全套接层协议SSL和无线局域网通信协议WEP中均使用了该密码算法。有关RC4算法的详细内容见本章实验。其他流密码算法还有A5、Salsa20等。第第9章章 密码学与信息安全密码学与信息安全 3数据加密标准数据加密标准DES数据加密标准(Data Encryption Standard,DES)是最著名的分组加密算法

    11、之一。1977年的FIPS PUB 46中给出了DES的完整描述。第第9章章 密码学与信息安全密码学与信息安全 DES的明文分组长度n为64 bit,密钥为56 bit,加密后产生64 bit的密文分组。加密分为三个阶段,首先是一个初始置换IP,用于重排64 bit的明文分组;然后进行相同功能的16轮变换,第16轮变换的输出分左右两半,并被交换次序;最后经过一个逆置换,产生最终的64 bit密文。DES加密算法的框图如图9-7所示。第第9章章 密码学与信息安全密码学与信息安全 图9-7 DES加密算法框图第第9章章 密码学与信息安全密码学与信息安全 DES的16轮加密变换中每一轮变换的结构如图

    12、9-8所示。第第9章章 密码学与信息安全密码学与信息安全 图9-8 DES加密算法的轮结构第第9章章 密码学与信息安全密码学与信息安全 每一轮加密过程可用数学表达式表述为:Li=Ri-1,Ri=Li-1F(Ri-1,Ki)。图9-7和图9-8中用到的初始置换IP、逆初始置换IP-1、扩展运算表E和置换运算P分别见表9-2至表9-5,函数F(R,K)的计算过程如图9-9所示。第第9章章 密码学与信息安全密码学与信息安全 表9-2 初始置换IP第第9章章 密码学与信息安全密码学与信息安全 表9-3 逆初始置换IP-1第第9章章 密码学与信息安全密码学与信息安全 表9-4 轮结构中扩展置换E 第第9

    13、章章 密码学与信息安全密码学与信息安全 表9-5 轮结构中置换运算 第第9章章 密码学与信息安全密码学与信息安全 图9-9 函数F(R,K)的计算过程第第9章章 密码学与信息安全密码学与信息安全 在计算F(R,K)的过程中,要用到8个S盒。这8个S盒的具体定义见表9-6。第第9章章 密码学与信息安全密码学与信息安全 表表9-6 DES的的S盒盒第第9章章 密码学与信息安全密码学与信息安全 对每个盒Si,其6 bit输入中,第1个和第6个比特形成一个2位二进制数,用来选择Si的4个代换中的一个。6 bit输入中,中间4位用来选择列。行和列选定后,得到其交叉位置的十进制数,将这个数表示为4位二进制

    14、数即得这一S盒的输出。例如,S1的输入为011001,行选为01(即第1行),列选为1100(即第12列),行列交叉位置的数为9,其4位二进制表示为1001,所以S1的输出为1001。第第9章章 密码学与信息安全密码学与信息安全 DES16轮迭代中,每一轮子密钥Ki的长度都是48 bit。输入的56 bit密钥首先经过一个置换PC-1,然后将置换后的56 bit分为各为28 bit的左、右两半,分别记为C0和D0。在第i轮分别对Ci-1和Di-1进行左循环移位,所移位数由表给出。移位后的结果作为求下一轮子密钥的输入,同时也作为置换选择PC-2的输入。通过置换选择2产生的48 bit的Ki,即为

    15、本轮的子密钥,作为函数F(Ri-1,Ki)的输入。两个置换PC-1和PC-2分别见表9-7和9-8,每一轮左循环移位数见表9-9。第第9章章 密码学与信息安全密码学与信息安全 表9-7PC-1第第9章章 密码学与信息安全密码学与信息安全 表9-8PC-2第第9章章 密码学与信息安全密码学与信息安全 表9-9 左循环移位数第第9章章 密码学与信息安全密码学与信息安全 DES的解密和加密使用同一算法,但子密钥使用的顺序相反。DES已走到了它生命的尽头,其56 bit密钥实在太小。2000年10月,美国国家标准技术研究所(NIST)选择Rijndael密码作为高级加密标准AES。Rijndael密码

    16、是一种迭代型分第第9章章 密码学与信息安全密码学与信息安全 组密码,由比利时密码学家Joan Daemon和Vincent Rijmen设计,使用了有限域GF(28)上的算术运算。数据分组长度和密钥长度都可变,并可独立指定为128 bit、192 bit或256 bit比特,随着分组长度不同迭代次数也不同。Rijndael密码可在很多处理器和专用硬件上高效地实现。第第9章章 密码学与信息安全密码学与信息安全 对称密码具有加密速度快、密钥短、易于硬件或其他机械装置实现等优点,但这种算法初始化比较困难,系统需要的密钥量也很大。表9-10给出了一些历史上著名的分组密码算法,著名的电子邮件安全软件PG

    17、P(Pretty Good Privacy)就采用了IDEA算法进行数据加密。第第9章章 密码学与信息安全密码学与信息安全 表9-10 一些著名的分组密码算法第第9章章 密码学与信息安全密码学与信息安全 9.3 公钥密码体制公钥密码体制9.3.1 公钥密码体制概述公钥密码体制概述在公钥密码体制中,每一个用户都拥有一对个人密钥k=(pk,sk),其中pk是公开的,任何用户都可以知道,sk是保密的,只有拥有者本人知道。假如Alice要把消息m保密地发送给Bob,则Alice利用Bob的公钥pk加密明文m,得到密文c:=E(pk,m),并把密文传送给Bob。Bob得到Alice传过来的c后,利用自己

    18、的私钥sk解密密文c得到明文m=D(sk,c),如图9-10所示。第第9章章 密码学与信息安全密码学与信息安全 图9-10 公钥密码工作原理图 E(pk,m)pkmcD(sk,c)skm第第9章章 密码学与信息安全密码学与信息安全 公钥密码体制与对称密码体制的主要区别是前者的加密密钥和解密密钥是不同的。这个不同导致了:在公钥密码系统中,密钥维护总量大大减少;在公钥密码系统中可以很容易实现抗否认性。第第9章章 密码学与信息安全密码学与信息安全 在公钥体制中,用户的公钥pk和私钥sk是紧密关联的,否则加密后的数据是不可能解密的。但在安全的体制中,这种关联也是敌手无法利用的,即想通过公钥获取私钥或部

    19、分私钥在计算上是不可行的。公钥和私钥的关联性设计一般是建立在诸如大整数分解、离散对数求解、椭圆曲线上的离散对数求解等困难问题上的,假如敌手能通过公钥想办法获取私钥信息,则敌手应该能解决数千年没解决的数学难题。第第9章章 密码学与信息安全密码学与信息安全 9.3.2 RSA公钥密码体制公钥密码体制RSA密码体制是世界上应用最为广泛的公钥密码体制。RSA体制的安全性基于大整数分解的困难性,即已知两个大素数p和q,求n=pq是容易的,而由n求p和q则是困难的。第第9章章 密码学与信息安全密码学与信息安全 RSA算法包括密钥生成算法和加解密算法两部分。密钥生成算法如下:(1)选择不同的大素数p和q,计

    20、算,。(2)选择e,满足1e,且,(n,e)作为公钥。(3)通过计算d,且,(n,d)作为私钥。第第9章章 密码学与信息安全密码学与信息安全 RSA加解密算法如下:RSA加密:RSA解密:加密时首先对明文比特串分组,使得每个分组对应的十进制数小于n,即分组长度小于。第第9章章 密码学与信息安全密码学与信息安全 第第9章章 密码学与信息安全密码学与信息安全 第第9章章 密码学与信息安全密码学与信息安全 基于安全考虑,目前RSA密码体制使用的大素数至少要在512 bit以上。由于要进行大数的计算,RSA运算速度较慢,其软件实现大概要比DES慢100倍。读者可以对有关RSA算法的安全性作进一步分析,

    21、也可参阅其他文献。第第9章章 密码学与信息安全密码学与信息安全 除了RSA以外,著名的公钥密码算法还有Rabin算法(1979)、ElGamal算法(1985)、椭圆曲线算法ECC(1985)、基于格的NTRU算法(1996)和基于6次扩域上的离散对数XTR算法(2000)等。第第9章章 密码学与信息安全密码学与信息安全 思思 考考 题题(1)密码学主要包含哪些内容,密码技术能提供哪些安全服务?(2)古典密码体制的主要思想是什么,如何理解密码算法的安全性?(3)简述DES加解密算法流程。第第9章章 密码学与信息安全密码学与信息安全(4)对称密码体制和公钥密码体制的主要区别是什么?(5)简述公钥

    22、密码算法的基本原理。(6)简述RSA算法及其安全性。第第9章章 密码学与信息安全密码学与信息安全 实验实验9 简单加解密算法的实现简单加解密算法的实现一、实验目的一、实验目的(1)掌握对称加密算法的基本思想。(2)深入理解Vigenere 算法和RC4算法的算法流程。(3)了解DES、AES等算法的加解密过程。第第9章章 密码学与信息安全密码学与信息安全 二、实验准备二、实验准备(1)查阅有关资料,熟悉古典加密算法中单表代换与多表代换算法,掌握Vigenere算法。(2)查阅有关资料,熟悉流密码的基本思想,掌握RC4算法。(3)查阅有关资料,熟悉DES和AES加解密程。第第9章章 密码学与信息

    23、安全密码学与信息安全 三、实验内容三、实验内容(1)分析、调试运行下面代码,并写出代码的算法流程图。#include#includevoid main()第第9章章 密码学与信息安全密码学与信息安全 int i,j,m,n,cmd;int length_keyword,length_plaintext;char keyword21,plain_text401;char vigenere_table2626;memset(keyword,0,21);memset(plain_text,0,401);printf(Vigenere Table:n);printf(n );第第9章章 密码学与信息安

    24、全密码学与信息安全 for(i=0;i=25;i+)printf(%c,a+i);printf(nn);for(i=0;i=25;i+)printf(%c,a+i);for(j=0;j=25;j+)第第9章章 密码学与信息安全密码学与信息安全 vigenere_tableij=a+(i+j)%26;printf(%c,vigenere_tableij);printf(n);printf(n );for(i=0;i=25;i+)printf(%c,a+i);第第9章章 密码学与信息安全密码学与信息安全 while(1)printf(nn *n);printf(cmd 1 to enter enc

    25、rypt process.n);printf(cmd 2 to enter decrypt process.n);printf(cmd 0 to quit.n);printf(*n);scanf(%d,&cmd);getchar();switch(cmd)第第9章章 密码学与信息安全密码学与信息安全 case 1:printf(Please enter you keyword(*only lowercase&=20 acceptable*):n);gets(keyword);length_keyword=strlen(keyword);printf(Keyword:n);puts(keywor

    26、d);printf(n);printf(Num:n);第第9章章 密码学与信息安全密码学与信息安全 printf(%dn,length_keyword);printf(Please enter you plain text(*only lowercase&=400 acceptable*):n);gets(plain_text);length_plaintext=strlen(plain_text);printf(Cryptograph is:n);/*加密算法*/for(j=0;jlength_plaintext;j+)第第9章章 密码学与信息安全密码学与信息安全 m=keywordj%le

    27、ngth_keyword-a;n=plain_textj-a;printf(%c,vigenere_tablemn);printf(n);break;case 2:printf(Please enter you key(*only lowercase&=20 acceptable*):n);gets(keyword);length_keyword=strlen(keyword);printf(Key:n);第第9章章 密码学与信息安全密码学与信息安全 puts(keyword);printf(n);printf(nNum:n);printf(%dn,length_keyword);printf

    28、(Please enter you cryptograph(*only lowercase&=400 acceptable*):n);gets(plain_text);/这里plain_text数组保存的是密文 length_plaintext=strlen(plain_text);printf(Plaintext is:n);/*解密算法*/第第9章章 密码学与信息安全密码学与信息安全 for(i=0;ilength_plaintext;i+)int cryptograph_index=plain_texti-a;int row_index=keywordi%length_keyword-a

    29、;int index=(cryptograph_index-row_index+26)%26;printf(%c,vigenere_table0index);printf(n);break;第第9章章 密码学与信息安全密码学与信息安全 case 0:exit(0);default:printf(命令无效,请重新输入!);break;第第9章章 密码学与信息安全密码学与信息安全(2)分析、调试运行下面代码,并写出代码的算法流程图。#include#includevoid decrypt(char cipher);/解密过程函数,根据输入密钥再一次生成密钥流 void main()printf(*

    30、RC4加解密程*n);char choose1,choose2;do第第9章章 密码学与信息安全密码学与信息安全 int s256,t256;char k256;/用户输入的密钥/char plaintext1024,ciphertext1024;printf(輸入密钥:n);gets(k);for(int i=0;i256;i+)/给字节状态矢量和可变长的密钥数组赋值/si=i;ti=ki%strlen(k);第第9章章 密码学与信息安全密码学与信息安全 int j=0;for(i=0;i256;i+)/使用可变长的密钥数组初始化字节状态矢量数组s/int temp;j=(j+si+ti)%

    31、256;temp=si;si=sj;sj=temp;printf(n输入要加密的字符串:n);gets(plaintext);int m,n,key256,q;第第9章章 密码学与信息安全密码学与信息安全 m=n=0;printf(n得到密文:n);for(i=0;istrlen(plaintext);i+)/由字节状态矢量数组变换生成密钥流并对明/文字符进行加密 int temp;m=(m+1)%256;n=(n+sn)%256;temp=sm;sm=sn;sn=temp;q=(sm+sn)%256;keyi=sq;ciphertexti=plaintextikeyi;第第9章章 密码学与信

    32、息安全密码学与信息安全 printf(%c,ciphertexti);ciphertexti=0;/解密printf(n是否对上面的密文进行解密?(y/n)n);scanf(%c,&choose2);getchar();while(choose2=y|choose2=Y)decrypt(ciphertext);/解密过程函数choose2=n;printf(n是否希望继续使用程序?(y/n)n);scanf(%c,&choose1);getchar();第第9章章 密码学与信息安全密码学与信息安全 while(choose1=y|choose1=Y);printf(n*程序结束*);syste

    33、m(pause);/解密函数,密钥流的生成与加密相同 void decrypt(char cipher)int s256,t256;int i;第第9章章 密码学与信息安全密码学与信息安全 char k256;/用户输入的密钥char plaintext1024;printf(n輸入密钥:n);gets(k);for(i=0;i256;i+)/给字节状态矢量和可变长的密钥数组赋值 si=i;ti=ki%strlen(k);第第9章章 密码学与信息安全密码学与信息安全 int j=0;for(i=0;i256;i+)/使用可变长的密钥数组初始化字节状态矢量数组s int temp;j=(j+si

    34、+ti)%256;temp=si;si=sj;sj=temp;第第9章章 密码学与信息安全密码学与信息安全 int m,n,key256,q;m=n=0;printf(n解密后所得到明文是:n);for(i=0;istrlen(cipher);i+)/由字节状态矢量数组变换生成密钥流并对密文字符进行解密 int temp;m=(m+1)%256;n=(n+sn)%256;第第9章章 密码学与信息安全密码学与信息安全 temp=sm;sm=sn;sn=temp;q=(sm+sn)%256;keyi=sq;plaintexti=cipherikeyi;printf(%c,plaintexti);printf(n);第第9章章 密码学与信息安全密码学与信息安全 四、实验报告四、实验报告1通过实验回答下列问题通过实验回答下列问题(1)对Vigenere算法进行加密,请给出明文“information security”在密钥“white”下的密文。(2)对RC4算法,请给出明文“information security”在密钥“white”下的密文。(3)编写程序演示DES的轮密钥产生算法,给出相关代码。2简答题简答题(1)常用的对称加密算法有哪些?(2)从安全服务的角度讲,对称密码算法与公开密码算法的区别体现在什么地方?(3)描述AES算法的加、解密过程。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:《信息安全导论》课件2第9章.ppt
    链接地址:https://www.163wenku.com/p-7924399.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库