《信息安全技术 公钥基础设施 电子签名卡应用接口测试规范》_第1页
《信息安全技术 公钥基础设施 电子签名卡应用接口测试规范》_第2页
《信息安全技术 公钥基础设施 电子签名卡应用接口测试规范》_第3页
《信息安全技术 公钥基础设施 电子签名卡应用接口测试规范》_第4页
《信息安全技术 公钥基础设施 电子签名卡应用接口测试规范》_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

ICS35.040

L80

中华人民共和国国家标准

GB/T15852.2—XXXX

信息技术安全技术消息鉴别码

第2部分:采用专用杂凑函数的机制

Informationtechnology–Securitytechniques–MessageAuthentication

Codes(MACs)–Part2:Mechanismsusingadedicatedhash-function

MOD

(报批稿)

(本稿完成日期:2011年1月19日)

XXXX-XX-XX发布XXXX-XX-XX实施

GB/T15852.2—XXXX

引  言

本部分规定的第一个MAC算法通常被称作MDx-MAC。它调用一次完整的杂凑函数,但是对其中

的轮函数做了细微的修改,把一个密钥加到了轮函数的附加常数上。第二个MAC算法通常被称作

HMAC,它调用两次完整的杂凑函数。第三个MAC算法是MDx-MAC的一个变种,它限制输入长度不

大于256比特。在只处理较短输入的情况下,它有更好的性能。

本部分规定的三种MAC算法采用四种专用杂凑函数;其中,专用杂凑函数1、2、3分别是GB/T

18238.3-2002中规定的专用杂凑函数1、2、3,专用杂凑函数4是ISO/IEC10118-3:2004中规定的专用

杂凑函数7。使用的专用杂凑函数也可以为国家密码管理部门批准的相应专用杂凑函数。

I

GB/T15852.2—XXXX

信息技术安全技术消息鉴别码

第2部分:采用专用杂凑函数的机制

1范围

GB/T15852的本部分规定了三种采用专用杂凑函数的消息鉴别码算法。这些消息鉴别码算法可用作

数据完整性检验,检验数据是否被非授权地改变。同样这些消息鉴别码算法也可用作消息鉴别,保证消

息源的合法性。数据完整性和消息鉴别的强度依赖于密钥的长度及其保密性、杂凑函数的算法强度及其

输出长度、消息鉴别码的长度和具体的消息鉴别码算法。

本部分适用于任何安全体系结构、进程或应用的安全服务。

2规范性引用文件

下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文

件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

GB/T18238.3-2002信息技术安全技术散列函数第3部分:专用散列函数(idtISO/IEC10118-3:

1998)

GB/T1988-1998信息技术信息交换用七位编码字符集(eqvISO/IEC646:1991)

ISO/IEC10118-3:2004信息技术安全技术杂凑函数第3部分:专用杂凑函数

3术语和定义

下列术语和定义适用于本部分。

3.1

消息鉴别码messageauthenticationcodeMAC

利用对称密码技术,以密钥为参数,由消息导出的数据项。任何持有这一密钥的实体,都可利用消

息鉴别码检查消息的完整性和始发者。

3.2

消息鉴别码(MAC)算法密钥MACalgorithmkey

一种用于控制消息鉴别码算法运算的密钥。

3.3

消息鉴别码算法MessageAuthenticationCodealgorithm

消息鉴别码算法简称MAC算法,其输入为密钥和消息,输出为一个固定长度的比特串,满足下面两

个性质:

1

GB/T15852.2—XXXX

-对于任何密钥和消息,MAC算法都能够快速地计算。

-对于任何固定的密钥,攻击者在没有获得密钥信息的情况下,即使获得了一些(消息,MAC)对,

对任何新的消息预测其MAC在计算上是不可行的。

注:一个MAC算法有时被称作一个密码校验函数。计算不可行性依赖于使用者具体的安全要求及其环境。

3.4

输出变换outputtransformation

应用在算法中,对迭代操作的输出所进行的变换。

3.5

抗碰撞杂凑函数collision-resistanthash-function

满足如下性质的杂凑函数:

-寻找两个不同的输入,使得它们的输出相同,在计算上是不可行的。

3.6

消息比特串(数据)datastring(data)

杂凑函数的输入比特串。

3.7

杂凑值hash-code

杂凑函数的输出比特串。

3.8

杂凑函数hash-function

将任意长消息比特串映射到定长比特串的函数,并且满足如下两个性质:

-对于任何输出,找到它所对应的输入在计算上是不可行的。

-对于任何输入,找到区别于它且和它具有相同输出的输入在计算上是不可行的。

3.9

初始值initializingvalue

杂凑函数开始工作时用到的值。

3.10

填充padding

在消息比特串后面附加额外比特串的操作。

3.11

分组block

一种定义了长度的比特串。

2

GB/T15852.2—XXXX

3.12

轮函数round-function

将两个长度为和的比特串映射到一个长度为的比特串的函数。

L1L2L2(.,.)

注:它被反复地用在杂凑函数中,将长度为的比特串和前面长度为的输出值相合并。

L1L2

3.13

字word

长度为32位的比特串。

4符号和记法

下列符号和记法适用于本部分。

D、D'将要被输入到MAC算法的消息比特串;

mMAC值的比特长度;

q经过填充和分割操作后,消息比特串D的分组个数;

比特串最左边的比特;

MSBj(X)Xj

XY比特串X和Y的异或值;

X||Y按顺序将比特串X和Y连接所构成的比特串;

:MAC算法定义中使用的赋值符号;

D经过填充的消息比特串;

h杂凑函数;

h'被修改了常数和初始值的杂凑函数h;

h简化的杂凑函数h,没有数据填充和长度附加;

'''长度为比特串,在MAC算法计算中被用来存储临时结果;

H、HL2

'初始值;

IV、IV、IV1、IV2

kMAC算法密钥的比特长度;

KMAC算法的密钥;

'MAC算法1和3中的导出密钥;

K、K0、K1、K2

、、MAC算法2中的导出密钥;

KK1K2

LMAC算法3中表示消息长度的比特串;

3

GB/T15852.2—XXXX

OPAD、IPADMAC算法2中使用的常数比特串;

R、S0、S1、S2MAC算法1和3中,用来导出一系列常数的常数比特串;

、、MAC算法1和3中,用来导出子密钥的128比特常数;

T0T1T2

、、MAC算法1和3中,用来导出子密钥的768比特常数;

U0U1U2

'使用修改后常数的轮函数;

128比特串的第个字,即:;

K1[i]K1iK1K1[0]||K1[1]||K1[2]||K1[3]

H杂凑值;

LX比特串X的比特长度;

、'轮函数中用到的常数字;

CiCi

专用杂凑函数4中用到的常数矩阵;

CCi

输入到轮函数的两个比特串中,第一个比特串的比特长度;

L1

输入到轮函数的两个比特串中,第二个比特串的比特长度;

L2

轮函数输出值的比特长度;初始值IV的比特长度。

轮函数,即:若和分别表示长度为和的比特串,则

XYL1L2

(X,Y)表示将作用到X和Y所得到的比特串。

模232加法操作,即:若A和B是字,那么把A和B看作是整

32

数的2进制表示,计算它们的和再模232,所得到的结果在0和

32之间,把它看作为字,记作。

21A32B

注:只能被用来处理长度为整数倍的输入比特串。

hL1

5要求

采用本部分MAC算法的使用者应当选择:

1)从章节6、7、8中选取一种MAC算法;

2)从GB/T18238.3-2002中的专用杂凑函数1、2、3或ISO/IEC10118-3:2004中的专用杂凑函数7中

选取一个杂凑函数;

3)MAC的长度m。

对于MAC算法1和2,MAC的长度应该是一个正整数并且不大于杂凑值长度。对于MAC算法3,MAC

mLH

的长度m应该是一个正整数并且不大于杂凑值长度的二分之一,即。

mLH/2

对于MAC算法1和2,消息比特串D的比特长度不大于2641;对于MAC算法3,消息比特串D的比特

长度不大于256。

对一个具体MAC算法、专用杂凑函数、m值的选择超出了本部分所规定的范围。

注:上述选择将影响MAC算法的安全强度,具体请参考附录B。

4

GB/T15852.2—XXXX

生成MAC和验证MAC应当使用同样的密钥。

6MAC算法1

MAC算法1计算MAC值要求调用一次杂凑函数,而且要求修改其中的轮函数常数。

杂凑函数应当从GB/T18238.3-2002中的专用杂凑函数1、2、3或ISO/IEC10118-3:2004中的专用

杂凑函数7中选取。

密钥长度k不大于128比特。

注:本条款包括MDx-MAC的描述【5】。具体来讲,若采用专用杂凑函数1,MAC算法1也被称作RIPEMD-160-MAC;

若采用专用杂凑函数2,MAC算法1也被称作RIPEMD-128-MAC;若采用专用杂凑函数3,MAC算法1也被称作

SHA-1-MAC;若采用专用杂凑函数4(即ISO/IEC10118-3:2004中的专用杂凑函数7),MAC算法1也被称作

WHIRLPOOL-MAC。

6.1MAC算法1的描述

MAC算法1要求如下五步操作:密钥扩展、修改常数和初始值、杂凑操作、输出变换和截断操作。

6.1.1密钥扩展

若K长度小于128比特,那么将K重复足够多次数,从连接起来的比特串中选取最左边128比特作

为128比特密钥K'(若K的长度恰好为128比特,则K':K),即:

'

K:MSB128(K||K||||K)

按照如下操作计算子密钥、和:

K0K1K2

''

K0:h(K||U0||K)

''

K1:MSB128(h(K||U1||K))

''

K2:MSB128(h(K||U2||K))

其中,、和是768比特的常数,在条款9中有定义。表示简化的杂凑函数,即没有数据

U0U1U2hh

填充和长度附加。

注:数据填充和长度附加可以被省略,是因为在这里输入比特串的长度总是比特。

2L1

导出的密钥被分割成四个字,表示为,即:。

K1K1[i]iK1K1[0]||K1[1]||K1[2]||K1[3]

从比特串到字的转换,需要规定字节的排列顺序。在这里的转换中,采用GB/T18238.3-2002中对

所有专用杂凑函数规定的字节排列顺序。

6.1.2修改常数和初始值

轮函数中采用的附加常数,被修改为它与四个字中的一个进行模32加的结果,比如说:

K12

C0:C032K1[0]

5

GB/T15852.2—XXXX

在条款9中具体规定了中的哪个字与哪个常数相加。用'取代杂凑函数的初始值,所

K1IV:K0IV

得的杂凑函数记作h',其中的轮函数记作'。

6.1.3杂凑操作

用D表示输入到被修改的杂凑函数h'中的比特串,即:

H':h'(D)

6.1.4输出变换

'

再一次应用被修改的轮函数,其中输入的第一个参数为K2||(K2T0)||(K2T1)||(K2T2),第

二个参数为H'(杂凑操作的结果),即:

'''',

H:(K2||(K2T0)||(K2T1)||(K2T2),H)

这里、和都是长度为128的比特串,在条款9中对所有专用杂凑函数均有定义。

T0T1T2

注:输出变换对应于处理一个额外的数据分组,这个额外的数据分组是在数据填充和长度附加操作之后,由导

K2

出。

6.1.5截断操作

取比特串H''最左边m比特,作为MAC值,即:

''

MAC:MSBm(H)

6.2MAC算法1的效率

假定填充后的消息比特串包括q个分组(这里填充方法由具体的杂凑函数决定),那么MAC算法1

调用轮函数q7次。

'

通过预计算K0、K1和K2,并且在杂凑函数的应用中用IV取代IV,MAC算法1调用轮函数的次数

可以降低到q1次。

处理长的消息比特串时,MAC算法1和相应杂凑函数的性能相当。

7MAC算法2

MAC算法2计算MAC值要求调用两次杂凑函数。

杂凑函数应当从GB/T18238.3-2002中的专用杂凑函数1、2、3或ISO/IEC10118-3:2004中的专用杂

凑函数7中选取,并且要求是8的正整数倍,。

L1L2L1

注:GB/T18238.3-2002中的杂凑函数1、2、3和ISO/IEC10118-3:2004中的杂凑函数7满足这些条件。

6

GB/T15852.2—XXXX

密钥长度不小于比特(是杂凑值的比特长度),不大于比特(为输入到轮函数的比特

kL2L2L1L1

串的比特长度),即:。

L2kL1

7.1MAC算法2的描述

MAC算法2要求如下四步操作:密钥扩展、杂凑操作、输出变换和截断操作。

7.1.1密钥扩展

在密钥的右侧填充个0,所得的长度为的比特串记作。

KL1kL1K

按照如下的方法,将扩展为两个子密钥和:

KK1K2

·将16进制的值“36”(二进制表示为“00110110”)重复次连接起来,所得比特串记作。

L1/8IPAD

然后将和比特串相异或,记作。即:

KIPADK1

K1:KIPAD

·将16进制的值“5C”(二进制表示为“01011100”)重复次连接起来,所得比特串记作。

L1/8OPAD

然后将和比特串相异或,记作。即:

KOPADK2

K2:KOPAD

7.1.2杂凑操作

将和相连接,作为输入到杂凑函数的比特串,即:

K1D

'。

H:h(K1||D)

7.1.3输出变换

将和'相连接,作为输入到杂凑函数的比特串,即:

K2H

'''。

H:h(K2||H)

7.1.4截断操作

取比特串H''最左边m比特,作为MAC值,即:

''。

MAC:MSBm(H)

7

GB/T15852.2—XXXX

7.2MAC算法2的效率

假定填充后的消息比特串包括q个分组(这里填充方法由具体的杂凑函数决定),那么采用专用杂

凑函数1、2和3时,MAC算法2调用轮函数q3次;采用专用杂凑函数4时,MAC算法2调用轮函数q4

次。

通过修改杂凑函数代码,MAC算法2调用轮函数的次数可以降低2次。

使用者可以预计算和,并且在第一次调用杂凑函数时用取代,

IV1:(K1,IV)IV2:(K2,IV)IV1IV

在输出变换中(第二次调用杂凑函数)用取代。同时,这也要求对填充方法进行修改。事实上,

IV2IV

对杂凑函数实际输入的比特长度少了,这样必须把的值加到上。

L1L1LD

处理长的消息比特串时,MAC算法2和相应杂凑函数的性能相当。

8MAC算法3

注:本条款包括MAC算法1的一个变种,对短的输入(不大于256比特)做了优化。

MAC算法3计算MAC值,要求调用7次简化的轮函数;但是通过预计算,可以降低到调用一次简化的

轮函数。

杂凑函数应当从GB/T18238.3-2002中的专用杂凑函数1、2、3或ISO/IEC10118-3:2004中的专用杂

凑函数7中选取。

密钥长度不大于128比特,MAC值长度不大于比特。

kmLH/2

8.1MAC算法3的描述

MAC算法3要求如下五步操作:密钥扩展、修改轮函数的常数、数据填充、应用轮函数和截断操作。

8.1.1密钥扩展

若K长度小于128比特,那么将K重复足够多次数,从连接起来的比特串中选取最左边128比特作

为128比特密钥K'(若K的长度恰好为128比特,则K':K),即:

'

K:MSB128(K||K||||K)

按照如下操作计算子密钥、和:

K0K1K2

''

K0:h(K||U0||K)

''

K1:MSB128(h(K||U1||K))

''

K2:MSB128(h(K||U2||K))

其中,、和是768比特的常数,在条款9中有定义。表示简化的杂凑函数,即没有数据

U0U1U2hh

填充和长度附加。

注:数据填充和长度附加可以被省略,是因为在这里输入比特串的长度总是比特。

2L1

8

GB/T15852.2—XXXX

导出的密钥被分割成四个字,表示为,即:。

K1K1[i]iK1K1[0]||K1[1]||K1[2]||K1[3]

从比特串到字的转换,需要规定字节的排列顺序。在这里的转换中,采用GB/T18238.3-2002中对

所有专用杂凑函数规定的字节排列顺序。

8.1.2修改轮函数的常数

轮函数中采用的附加常数,被修改为它与四个字中的一个进行模32加的结果,比如说:

K12

C0:C032K1[0]

在条款9中具体规定了中的哪个字与哪个常数相加。用'取代杂凑函数的初始值,所

K1IV:K0IV

得的轮函数记作'。

8.1.3数据填充

对原始消息填充的比特串只用来计算MAC,所以这些填充比特串(如果有)不必随原始消息存储或

发送。MAC的验证者应当知道填充比特串是否已经被存储或发送。

对要输入到MAC算法的消息比特串D,在其右侧填充尽可能少(可能没有)的“0”以使得填充后

比特串D的长度是256比特。

注:如果消息比特串D是空串,那么规定填充后的比特串D为256个“0”。

8.1.4应用轮函数

消息比特串的长度记作,其二进制表示记作。在最左边填充足够少的“0”使得的长度

DLDLLL

为128比特,最右边的比特和最低位相对应。

LLD

将、和与的异或值相连接,作为轮函数'(使用修改过的常数)的输入,即:

K2DK2L

'''。

H:(K2||D||(K2L),IV)

8.1.5截断操作

取比特串H'最左边m比特,作为MAC值,即:

'。

MAC:MSBm(H)

8.2MAC算法3的效率

MAC算法3需要调用7次轮函数,通过预计算、和,可以降低到一次。

K0K1K2

9

GB/T15852.2—XXXX

9常数的计算

本条款中规定的常数,将被用在MAC算法1和条款8的MAC算法3中。

比特串和是MAC算法中固定的元素,它们通过杂凑函数计算得到(只计算一次),并且在四个

TiUi

专用杂凑函数中各不相同。

128比特的和768比特的按照如下的方法定义:

TiUi

Ti:MSB128(h(Si||R)),i0,1,2

Ui:Ti||Ti1||Ti2||Ti||Ti1||Ti2,i0,1,2

其中下标的加法是模3加。是496比特的常数,、和都是16比特

R"abyzABYZ0189"S0S1S2

的常数,其中通过重复两次数字的16进制ASCII编码得到(比如说,的表示为3131)。和都

SiiS1RSi

采用ASCII编码,ASCII编码等同于GB/T1988-1998所使用的编码。

对于所有的常数、'和所有的字,最高位和最左边的比特相对应。常数和'用16进制

CiCiK1[i]CiCi

表示。

9.1专用杂凑函数1

专用杂凑函数1中的128比特常数定义如下:(用16进制表示)

Ti

T01CC7086A046AFA22353AE88F3D3DACEB

T1E3FA02710E491D851151CC34E4718D41

T293987557C07B8102BA592949EB638F37

专用杂凑函数1的轮函数中用到两个常数字序列和''',它们定义如下:

C0,C1,,C79C0C1,,C79

CiK1[0]3200000000,(0i15),

CiK1[1]325A827999,(16i31),

CiK1[2]326ED9EBA1,(32i47),

CiK1[3]328F1BBCDC,(48i63),

CiK1[0]32A953FD4E,(64i79),

'

CiK1[1]3250A28BE6,(0i15),

'

CiK1[2]325C4DD124,(16i31),

'

CiK1[3]326D703EF3,(32i47),

'

CiK1[0]327A6D76E9,(48i63),

'

CiK1[1]3200000000,(64i79)

10

GB/T15852.2—XXXX

9.2专用杂凑函数2

专用杂凑函数2中的128比特常数定义如下:(用16进制表示)

Ti

T0FD7EC18964C36D53FC18C31B72112AAC

T12538B78EC0E273949EE4C4457A77525C

T2F5C93ED85BD65F609A7EB182A85BA181

专用杂凑函数2的轮函数中用到两个常数字序列和''',它们定义如下:

C0,C1,,C63C0C1,,C63

CiK1[0]3200000000,(0i15),

CiK1[1]325A827999,(16i31),

CiK1[2]326ED9EBA1,(32i47),

CiK1[3]328F1BBCDC,(48i63),

'

CiK1[0]3250A28BE6,(0i15),

'

CiK1[1]325C4DD124,(16i31),

'

CiK1[2]326D703EF3,(32i47),

'

CiK1[3]3200000000,(48i63)

9.3专用杂凑函数3

专用杂凑函数3中的128比特常数定义如下:(用16进制表示)

Ti

T01D4CA39FA40417E2AE5A77B49067BBCC

T19318AFEF5D5A5B46EFCA6BEC0E138940

T24544209656E14F97005DAC76868E97A3

专用杂凑函数3的轮函数中用到一个常数字序列,它定义如下:

C0,C1,,C79

CiK1[0]325A827999,(0i19),

CiK1[1]326ED9EBA1,(20i39),

CiK1[2]328F1BBCDC,(40i59),

CiK1[3]32CA62C1D6,(60i79)

9.4专用杂凑函数4

专用杂凑函数4中的128比特常数定义如下:(用16进制表示)

Ti

T036129D71469F205824E118E1F922295A

T119A934B16952C37951C31AA9699FD5A4

T2313D9B56799988C1A3639FB2BDFEF274

11

GB/T15852.2—XXXX

专用杂凑函数4的轮函数中用到一个常数矩阵序列,它们定义如下:

CC1,CC2,,CC10

1823C6E887B8014F36A6D2F5796F9152

K[0]0000000000000000

100000000

00000000000000000000000000000000

00000000000000000000000000000000

CC=,CC=,

1000000000000000020000000000000000

0000000000000000K1[1]00000000

00000000000000000000000000000000

00000000000000000000000000000000

60BC9B8EA30C7B351DE0D7C22E4BFE57

K[2]0000000000000000

100000000

00000000000000000000000000000000

00000000000000000000000000000000

CC=,CC=,

3000000000000000040000000000000000

0000000000000000K1[3]00000000

00000000000000000000000000000000

00000000000000000000000000000000

157737E59FF04ADA58C9290AB1A06B85

K[0]0000000000000000

100000000

00000000000000000000000000000000

00000000000000000000000000000000

CC=,CC=,

5000000000000000060000000000000000

0000000000000000K1[1]00000000

00000000000000000000000000000000

00000000000000000000000000000000

BD5D10F4CB3E0567E427418BA77D95D8

K[2]0000000000000000

100000000

00000000000000000000000000000000

00000000000000000000000000000000

CC=,CC=,

7000000000000000080000000000000000

0000000000000000K1[3]00000000

00000000000000000000000000000000

00000000000000000000000000000000

12

GB/T15852.2—XXXX

FBEE7C66DD17479ECA2DBF07AD5A8333

K[0]0000000000000000

100000000

00000000000000000000000000000000

00000000000000000000000000000000

CC=,CC=。

90000000000000000100000000000000000

0000000000000000K1[1]00000000

00000000000000000000000000000000

00000000000000000000000000000000

13

GB/T15852.2—XXXX

AA

附录A

(资料性附录)

使用MAC算法生成MAC的示例

A.1概述

本附录提供了使用MAC算法1、2和3生成MAC的过程示例,采用四种专用杂凑函数;其中,专用杂凑

函数1、2、3分别是GB/T18238.3-2002中规定的专用杂凑函数1、2、3,专用杂凑函数4是ISO/IEC10118-3:

2004中规定的专用杂凑函数7。每个杂凑函数值的计算有九个示例。表1包含了序号为1至9的输入比特串。

在整个附录中,我们对消息比特串采用ASCII编码,ASCII编码等同于GB/T1988-1998所使用的编码。

两个128比特的密钥如下:

密钥1=00112233445566778899AABBCCDDEEFF

密钥2=0123456789ABCDEFFEDCBA9876543210

表1用于测试的输入数据

序号:输入比特串

1“”(空比特串)

2“a”

3“abc”

4“messagedigest”

5“abcdefghijklmnopqrstuvwxyz”

6“abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq”

7“ABCDEFGHIJKLMNOPQRSTUVWXYZ

abcdefghijklmnopqrstuvwxyz0123456789”

8“1234567890”重复8次所得的长为80的字符串

9“a”重复1,000,000次得到1兆长的字符串

A.2MAC算法1

在这一部分的示例中,选取mL2/2。具体来讲,在专用杂凑函数1和3中,m80;在专用杂凑

函数2中,m64;在专用杂凑函数4中,m256。

A.2.1专用杂凑函数1

密钥1:00112233445566778899

温馨提示

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

评论

0/150

提交评论