《信息安全技術(shù) SM2密碼算法加密簽名消息語(yǔ)法規(guī)范》_第1頁(yè)
《信息安全技術(shù) SM2密碼算法加密簽名消息語(yǔ)法規(guī)范》_第2頁(yè)
《信息安全技術(shù) SM2密碼算法加密簽名消息語(yǔ)法規(guī)范》_第3頁(yè)
《信息安全技術(shù) SM2密碼算法加密簽名消息語(yǔ)法規(guī)范》_第4頁(yè)
《信息安全技術(shù) SM2密碼算法加密簽名消息語(yǔ)法規(guī)范》_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

ICS35.040.

L80

中華人民共和國(guó)國(guó)家標(biāo)準(zhǔn)

GB/TXXXX—XXXX

SM2密碼算法加密簽名消息語(yǔ)法規(guī)范

SM2cryptographymessagesyntaxspecification

(征求意見稿)

2016-06

XXXX-XX-XX發(fā)布XXXX-XX-XX實(shí)施

GB/TXXXX-XXXX

II

GB/TXXXX-201X

SM2密碼算法加密簽名消息語(yǔ)法規(guī)范

1范圍

本標(biāo)準(zhǔn)定義了使用SM2密碼算法的加密簽名消息語(yǔ)法。

本標(biāo)準(zhǔn)適用于使用SM2密碼算法進(jìn)行加密和簽名操作時(shí)對(duì)操作結(jié)果的標(biāo)準(zhǔn)化封裝。

2規(guī)范性引用文件

下列文件對(duì)于本文件的應(yīng)用是必不可少的。凡是注日期的引用文件,僅注日期的版本適

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

GB/T16262.1-2006信息技術(shù)抽象語(yǔ)法記法一(ASN.1):基本記法規(guī)范(ISO/IEC

8824-1:2002,IDT)

GM/T0006密碼應(yīng)用標(biāo)識(shí)規(guī)范

GM/TAAAASM2密碼算法使用規(guī)范

PKCS#6Extended-CertificateSyntax

3術(shù)語(yǔ)和定義

下列術(shù)語(yǔ)適用于本標(biāo)準(zhǔn)。

3.1

算法標(biāo)識(shí)algorithmidentifier

用于標(biāo)明算法機(jī)制的數(shù)字化信息。

3.2

SM2算法SM2algorithm

一種橢圓曲線密碼算法,密鑰長(zhǎng)度為256比特。

3.3

SM3算法SM3algorithm

一種雜湊算法,輸出長(zhǎng)度為256比特。

4縮略語(yǔ)

下列縮略語(yǔ)適用于本文件:

ECC橢圓曲線密碼算法(EllipticCurveCryptography)

ID用戶標(biāo)識(shí)(Identity)

OID對(duì)象標(biāo)識(shí)符(ObjectIdentity)

1

GB/TXXXX-XXXX

5OID定義

本標(biāo)準(zhǔn)對(duì)6個(gè)對(duì)象data,signedData,envelopedData,signedAndEnvelopedData,

encryptedData和keyAgreementInfo的標(biāo)識(shí)符進(jìn)行了定義,詳見表1。

表1對(duì)象標(biāo)識(shí)符

對(duì)象標(biāo)識(shí)符OID對(duì)象標(biāo)識(shí)符定義

1.2.156.10197.6.1.4.2SM2密碼算法加密簽名消息語(yǔ)法規(guī)范

1.2.156.10197.6.1.4.2.1數(shù)據(jù)類型data

1.2.156.10197.6.1.4.2.2簽名數(shù)據(jù)類型signedData

1.2.156.10197.6.1.4.2.3數(shù)字信封數(shù)據(jù)類型envelopedData

1.2.156.10197.6.1.4.2.4簽名及數(shù)字信封數(shù)據(jù)類型

signedAndEnvelopedData

1.2.156.10197.6.1.4.2.5加密數(shù)據(jù)類型encryptedData

1.2.156.10197.6.1.4.2.6密鑰協(xié)商類型keyAgreementInfo

6基本類型定義

6.1CertificateRevocationLists

CertificateRevocationLists類型標(biāo)明一個(gè)證書撤銷列表的集合。

CertificateRevocationLists::=SETOFCertificateRevocationList

6.2ContentEncryptionAlgorithmIdentifier

ContentEncryptionAlgorithmIdentifier類型標(biāo)明一個(gè)數(shù)據(jù)加密算法。其OID見GM/T

0006。

ContentEncryptionAlgorithmIdentifier::=AlgorithmIdentifier

6.3DigestAlgorithmIdentifier

DigestAlgorithmIdentifier類型標(biāo)明一個(gè)消息摘要算法,本規(guī)范為SM3算法,其OID

見GM/T0006。

DigestAlgorithmIdentifier::=AlgorithmIdentifier

6.4DigestEncryptionAlgorithmIdentifier

DigestEncryptionAlgorithmIdentifier類型標(biāo)明一個(gè)簽名算法,本規(guī)范為SM2密碼算

法,其OID見GM/T0006。

DigestEncryptionAlgorithmIdentifier::=AlgorithmIdentifier

6.5ExtendedCertificateOrCertificate

ExtendedCertificateOrCertificate類型指定一個(gè)PKCS#6擴(kuò)展證書或者一個(gè)X.509證

書。這一類型見PKCS#6第6節(jié)推薦的語(yǔ)法:

ExtendedCertificateOrCertificate::=CHOICE{

certificateCertificate,--X.509

extendedCertificate[0]IMPLICITExtendedCertificate

2

GB/TXXXX-201X

}

6.6ExtendedCertificatesAndCertificates

ExtendedCertificatesAndCertificates類型指定一個(gè)擴(kuò)展證書和X.509證書的集合。

它表示集合足以包含從可識(shí)別的“根”或“頂級(jí)CA”到所有簽名者的證書鏈。

ExtendedCertificatesAndCertificates::=SETOF

ExtendedCertificateOrCertificate

6.7IssuerAndSerialNumber

IssuerAndSerialNumber類型標(biāo)明一個(gè)證書頒發(fā)者可識(shí)別名和頒發(fā)者確定的證書序列

號(hào),可據(jù)此確定一份證書和與此證書對(duì)應(yīng)的實(shí)體及公鑰。

IssuerAndSerialNumber::=SEQUENCE{

issuerName,

serialNumberCertificateSerialNumber

}

6.8KeyEncryptionAlgorithmIdentifier

KeyEncryptionAlgorithmIdentifier類型標(biāo)明加密對(duì)稱密鑰的加密算法。

KeyEncryptionAlgorithmIdentifier::=AlgorithmIdentifier

6.9Version

Version類型標(biāo)明語(yǔ)法版本號(hào)。

Version::=INTEGER(1)

6.10ContentInfo

ContentInfo類型標(biāo)明內(nèi)容交換通用語(yǔ)法結(jié)構(gòu),內(nèi)容交換的通用語(yǔ)法結(jié)構(gòu)定義如下:

ContentInfo::=SEQUENCE{

contentTypeContentType,

content[0]EXPLICITANYDEFINEDBYcontentTypeOPTIONAL

}

ContentType::=OBJECTIDENTIFIER

其中:

ContentType內(nèi)容類型是一個(gè)對(duì)象標(biāo)識(shí)符,其定義見本規(guī)范第5章。

content內(nèi)容,可選。

7數(shù)據(jù)類型

data數(shù)據(jù)類型結(jié)構(gòu)定義如下:

Data::=OCTETSTRING

data數(shù)據(jù)類型表示任意的字節(jié)串,比如ASCII文本文件。

3

GB/TXXXX-XXXX

8簽名數(shù)據(jù)類型signedData

8.1signedData類型

signedData數(shù)據(jù)類型由任意類型的數(shù)據(jù)和至少一個(gè)簽名者的簽名值組成。任意類型的

數(shù)據(jù)能夠同時(shí)被任意數(shù)量的簽名者簽名。

signedData數(shù)據(jù)類型結(jié)構(gòu)定義如下:

SignedData::=SEQUENCE{

versionVersion,

digestAlgorithmsDigestAlgorithmIdentifiers,

contentInfoSM2Signature,

certificates[0]IMPLICITExtendedCertificatesAndCertificatesOPTIONAL,

crls[1]IMPLICITCertificateRevocationListsOPTIONAL,

signerInfosSignerInfos

}

DigestAlgorithmIdentifiers::=SETOFDigestAlgorithmIdentifier

SignerInfos::=SETOFSignerInfo

結(jié)構(gòu)中各項(xiàng)含義見表2:

表2signedData數(shù)據(jù)類型

字段名稱數(shù)據(jù)類型含義

version(1)Version語(yǔ)法的版本號(hào)

digestAlgorithmsDigestAlgorithmIden消息摘要算法標(biāo)識(shí)符的集合

tifiers

contentInfoSM2Signature被簽名的數(shù)據(jù)內(nèi)容

certificatesExtendedCertificatePKCS#6擴(kuò)展證書和X.509證書的集合

sAndCertificates

crlsCertificateRevocati證書撤銷列表的集合

onLists

signInfosSignerInfos每個(gè)簽名者信息的集合

8.2signerInfo類型

signerInfo類型結(jié)構(gòu)定義如下:

SignerInfo::=SEQUENCE{

versionVersion,

issuerAndSerialNumberIssuerAndSerialNumber,

digestAlgorithmDigestAlgorithmIdentifier,

authenticatedAttributes[0]IMPLICITAttributesOPTIONAL,

digestEncryptionAlgorithmDigestEncryptionAlgorithmIdentifier,

encryptedDigestEncryptedDigest,

unauthenticatedAttributes[1]IMPLICITAttributesOPTIONAL

}

EncryptedDigest::=OCTETSTRING

結(jié)構(gòu)中各項(xiàng)含義見表3:

表3SignerInfo數(shù)據(jù)類型

4

GB/TXXXX-201X

字段名稱數(shù)據(jù)類型含義

version(1)Version語(yǔ)法的版本號(hào)

issuerAndSerialNumberIssuerAndSerial一個(gè)證書頒發(fā)者可識(shí)別名和頒發(fā)者確定的證書

Number序列號(hào),可據(jù)此確定一份證書和與此證書對(duì)應(yīng)

的實(shí)體及公鑰

表3SignerInfo數(shù)據(jù)類型(續(xù))

digestAlgorithmDigestAlgorithm對(duì)內(nèi)容進(jìn)行摘要計(jì)算的消息摘要算法,本規(guī)范

Identifier采用SM3算法

authenticatedAttributesAttributes是經(jīng)由簽名者簽名的屬性的集合,該域可選。

如果該域存在,該域中摘要的計(jì)算方法是對(duì)原

文進(jìn)行摘要計(jì)算結(jié)果

digestEncryptionAlgorithDigestEncryptioSM2橢圓曲線數(shù)字簽名算法標(biāo)識(shí)符

mnAlgorithmIdent

ifier

encryptedDigestOCTETSTRING值是SM2Signature,用簽名者私鑰進(jìn)行簽名的

結(jié)果,其定義見GM/TAAAA。

9數(shù)字信封數(shù)據(jù)類型envelopedData

9.1envelopedData類型

數(shù)字信封envelopedData數(shù)據(jù)類型由加密數(shù)據(jù)和至少一個(gè)接收者的數(shù)據(jù)加密密鑰的密

文組成。其中,加密數(shù)據(jù)是用數(shù)據(jù)加密密鑰加密的,數(shù)據(jù)加密密鑰是用接收者的公鑰加密的。

該類型用于為接收者的data、digestedData或signedData三種類型的數(shù)據(jù)做數(shù)字信封。

envelopedData數(shù)據(jù)類型結(jié)構(gòu)定義如下:

EnvelopedData::=SEQUENCE{

versionVersion,

recipientInfosRecipientInfos,

encryptedContentInfoEncryptedContentInfo

}

RecipientInfos::=SETOFRecipientInfo

結(jié)構(gòu)中各項(xiàng)含義見表4:

表4EnvelopedData數(shù)據(jù)類型

字段名稱數(shù)據(jù)類型含義

version(1)Version語(yǔ)法的版本號(hào)

recipientInfosRecipientInfos每個(gè)接收者信息的集合,至少要有一個(gè)接收

encryptedContentInfoEncryptedContent加了密的內(nèi)容信息

Info

EncryptedContentInfo::=SEQUENCE{

5

GB/TXXXX-XXXX

contentTypeContentType,

contentEncryptionAlgorithmContentEncryptionAlgorithmIdentifier,

encryptedContent[0]IMPLICITEncryptedContentOPTIONAL,

sharedInfo1[1]IMPLICITOCTETSTRINGOPTIONAL,

sharedInfo2[2]IMPLICITOCTETSTRINGOPTIONAL

}

EncryptedContent::=OCTETSTRING

結(jié)構(gòu)中各項(xiàng)含義見表5:

表5EncryptedContentInfo數(shù)據(jù)類型

字段名稱數(shù)據(jù)長(zhǎng)度含義

contenTypeContentType內(nèi)容的類型

contentEncryptionAlgorithmContentEncrypti內(nèi)容加密算法(和相應(yīng)的參數(shù))

onAlgorithmIden

tifier

encryptedContentEncryptedConten內(nèi)容加密的結(jié)果,可選

t

sharedInfo1[1]OCTETSTRING協(xié)商好的共享信息,可選

sharedInfo2[2]OCTETSTRING協(xié)商好的共享信息,可選

9.2recipientInfo類型

每個(gè)接收者信息用recipientInfo類型表示,

recipientInfo類型結(jié)構(gòu)定義如下:

RecipientInfo::=SEQUENCE{

versionVersion,

issuerAndSerialNumberIssuerAndSerialNumber,

keyEncryptionAlgorithmKeyEncryptionAlgorithmIdentifier,

encryptedKeyOCTETSTRING

}

結(jié)構(gòu)中各項(xiàng)含義見表6:

表6RecipientInfo數(shù)據(jù)類型

字段名稱數(shù)據(jù)類型含義

version(1)Version語(yǔ)法的版本號(hào)

issuerAndSerialNumberIssuerAndSerial頒發(fā)者可辨別名和頒發(fā)序列號(hào)

Number

keyEncryptionAlgorithmKeyEncryptionAl用接收者公鑰加密數(shù)據(jù)加密密鑰的算

gorithmIdentifi法,為SM2橢圓曲線加密算法

er

encryptedKeyOCTETSTRING數(shù)據(jù)加密密鑰密文SM2cipher,其定義見

GM/TAAAA

6

GB/TXXXX-201X

10簽名及數(shù)字信封數(shù)據(jù)類型signedAndEnvelopedData

signedAndEnvelopedData數(shù)據(jù)類型由任意類型的加密數(shù)據(jù)、至少一個(gè)接收者的數(shù)據(jù)加

密密鑰和至少一個(gè)簽名者的簽名組成。

signedAndEnvelopedData數(shù)據(jù)類型結(jié)構(gòu)定義如下:

SignedAndEnvelopedData::=SEQUENCE{

versionVersion,

recipientInfosRecipientInfos,

digestAlgorithmsDigestAlgorithmIdentifiers,

encryptedContentInfoEncryptedContentInfo,

certificates[0]IMPLICITExtendedCertificatesAndCertificatesOPTIONAL,

crls[1]IMPLICITCertificateRevocationListsOPTIONAL,

signerInfosSignerInfos

}

結(jié)構(gòu)中各項(xiàng)含義見表7:

表7signedAndEnvelopedData數(shù)據(jù)類型

字段名稱數(shù)據(jù)類型含義

version(1)Version語(yǔ)法的版本號(hào)

recipientInfosRecipientInfos每個(gè)接受者信息的集合,至少一個(gè)元素

digestAlgorithmsDigestAlgorithm消息摘要算法標(biāo)識(shí)符的集合

Identifiers

encryptedContentInfoEncryptedConten加了密的內(nèi)容,可以是任何定義的數(shù)據(jù)

tInfo類型

certificatesExtendedCertifiPKCS#6擴(kuò)展證書和X.509證書的集合,

catesAndCertifi是可選的

cates

crlsCertificateRevo證書撤銷列表的集合

cationLists

signerInfosSignerInfos每個(gè)簽名者的集合,至少要有一個(gè)元素

11加密數(shù)據(jù)類型encryptedData

encryptedData數(shù)據(jù)類型由任意類型的加了密的數(shù)據(jù)組成,數(shù)據(jù)類型既沒(méi)有接收者也沒(méi)

有加密的數(shù)據(jù)加密密鑰。

encryptedData數(shù)據(jù)類型定義如下:

EncryptedData::=SEQUENCE{

versionVersion,

encryptedContentInfoEncryptedContentInfo

}

結(jié)構(gòu)中各項(xiàng)含義見表8:

表8encryptedData數(shù)據(jù)類型

字段名稱數(shù)據(jù)類型含義

7

GB/TXXXX-XXXX

version(1)Version語(yǔ)法的版本號(hào)

encryptedContenInfoEncryptedConten加了密的內(nèi)容信息

tInfo

12密鑰協(xié)商類型keyAgreementInfo

密鑰協(xié)商keyAgreementInfo數(shù)據(jù)類型標(biāo)明兩個(gè)用戶之間建立一個(gè)共享秘密密鑰的結(jié)

構(gòu),通過(guò)這種方式能夠確定一個(gè)共享秘密密鑰的值。

該類型用于兩個(gè)用戶為產(chǎn)生共享秘密密鑰進(jìn)行的公共參數(shù)交換。

KeyAgreementInfo::=SEQUENCE{

versionVersion(1),

tempPublicKeyRSM2PublicKey,

userCertificateCertificate,

userIDOCTETSTRING

}

結(jié)構(gòu)中各項(xiàng)含義見表9:

表9keyAgreementInfo數(shù)據(jù)類型

字段名稱數(shù)據(jù)類型含義

versionVersion語(yǔ)法的版本號(hào)

tempPublicKeyRSM2PublicKey臨時(shí)公鑰

userCertificateCertificate用戶證書

userIDOCTETSTR

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論