密码学基础--搞清RFC和PKCS(1)

目录

1. CryptoDriver里KeyElement格式

2. 挖掘RFC标准

3.小结


昨天从生成密钥对开始逐步了解了公钥、证书等各种编码方式,今天继续趁热打,做一个理论知识汇总。

Ps:我只是标准的翻译搬运工。

1. CryptoDriver里KeyElement格式

在 CryptoKeyElement 配置项里,我们会发现有format这类格式,如下图:

根据规范解释如下:

CRYPTO_KE_FORMAT_BIN_OCTET
以BIN形式提供八位字节值的Key
CRYPTO_KE_FORMAT_BIN_SHEKEYS
用于SHE key更新的组合Key
CRYPTO_KE_FORMAT_BIN_IDENT_PRIVATEKEY_ PKCS8
ASN.1定义的带ID的私钥格式(BER编码),以BIN形式提供
CRYPTO_KE_FORMAT_BIN_IDENT_PUBLICKEY
ASN.1定义的带ID的公钥格式(BER编码),以BIN形式提供
CRYPTO_KE_FORMAT_BIN _RSA_PRIVATEKEY
ASN.1定义的私钥格式(BER编码),以二进制提供
CRYPTO_KE_FORMAT_BIN _RSA_PUBLICKEY
ASN.1定义的公钥格式(BER编码),以二进制提供

可以看到,针对非对称密钥对的格式,是可以选择是否带ID的,而这所有的一切都源于ASN.1。

回顾一下:

  • ASN.1(Abstract Syntax Notation One)是一种用于描述数据结构的标记语言,最初由国际电信联盟(ITU-T)定义,用于在计算机网络和通信协议中描述数据格式。ASN.1提供了一种独立于具体编程语言的方式来描述数据结构,使得不同系统之间可以共享和理解数据。
  • ASN.1的编码规则有多种,其中最常见的是BER(Basic Encoding Rules)、DER(Distinguished Encoding Rules)和PER(Packed Encoding Rules)。这些编码规则定义了如何将ASN.1中定义的数据类型编码为二进制格式,并在需要时进行压缩以减少数据传输的大小。

 2. 挖掘RFC标准

那么上述KeyElement的格式应该长什么样?是否有关联标准?

参考【SWS_Crypto_00184-00188】,汇总如下:

CRYPTO_KE_FORMAT_BIN_IDENT_PRIVATEKEY_ PKCS8
RFC5958
CRYPTO_KE_FORMAT_BIN_IDENT_PUBLICKEY
RFC5280
CRYPTO_KE_FORMAT_BIN _RSA_PRIVATEKEY
RFC8017
CRYPTO_KE_FORMAT_BIN _RSA_PUBLICKEY
RFC5280

3.小结

 老规矩,先从RFC是什么开始说起,但是限于篇幅放到下一篇文章了,下篇文章我们将深挖RFC和PKCS

相关推荐

  1. 密码基础--RFCPKCS(2)

    2024-04-20 11:26:02       37 阅读
  2. CISSP 第7章:PKI密码应用

    2024-04-20 11:26:02       51 阅读
  3. 密码及其应用——安全邮件、公钥密码PKI

    2024-04-20 11:26:02       40 阅读
  4. 密码基础古典密码

    2024-04-20 11:26:02       37 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-20 11:26:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-20 11:26:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-20 11:26:02       87 阅读
  4. Python语言-面向对象

    2024-04-20 11:26:02       96 阅读

热门阅读

  1. 【数据挖掘】课程大纲

    2024-04-20 11:26:02       37 阅读
  2. docker commit镜像时报错

    2024-04-20 11:26:02       39 阅读
  3. 阅读llama源码笔记_1

    2024-04-20 11:26:02       34 阅读
  4. 用Python代码实现数据集的批量处理(一)

    2024-04-20 11:26:02       41 阅读
  5. 安卓接收后台数据转模型int默认为double

    2024-04-20 11:26:02       35 阅读