Статус документа
Статус документа

Р 50.1.110-2016 Информационная технология. Криптографическая защита информации. Контейнер хранения ключей

     5.3 Объект открытого ключа

В 6.4.1 [1] определены открытые ключи:

PublicKeyType ::= CHOICE {

publicRSAKey PublicKeyObject {PublicRSAKeyAttributes},

publicECKey [0] PublicKeyObject {PublicECKeyAttributes},

publicDHKey [1] PublicKeyObject {PublicDHKeyAttributes},

publicDSAKey [2] PublicKeyObject {PublicDSAKeyAttributes},

publicKEAKey [3] PublicKeyObject {PublicKEAKeyAttributes},

… -- For future extensions

}

PublicKeyObject {KeyAttributes} ::= PKCS15Object {

CommonKeyAttributes, CommonPublicKeyAttributes, KeyAttributes}

Для хранения открытого ключа, выработанного по алгоритму ГОСТ Р 34.10, в структуру PublicKeyType введен следующий тип:

publicGostR3410-2012Key [27] PublicKeyObject {

PublicGostR3410-2012KeyAttributes}


PublicGostR3410-2012KeyAttributes ::= SEQUENCE {

value ObjectValue {GostR3410-2012PublicKeyChoice},

keyInfo KeyInfo {GostPrivateKeyParameters, PublicKeyOperations}

OPTIONAL,

... -- For future extensions

}

GostR3410-2012PublicKeyChoice ::= CHOICE {

raw GostR3410-2012Point,

spki SubjectPublicKeyInfo,

...

}

При использовании SubjectPublicKeyInfo открытый ключ и его параметры должны быть представлены в соответствии с 4.3 [3]. Поле SubjectPublicKeyInfo.algorithm.parameters не должно быть NULL.

При использовании GostR3410-2012Point открытый ключ должен иметь представление, описанное в Р 50.1.112-2016.

GostR3410-2012Point ::= GostR3410-2012-PublicKey.

Если структура keyInfo отсутствует, то предполагается значение параметров по умолчанию:

KeyInfo.paramsAndOps.parameters = id-tc26-gost-3410-12-512-paramSetA