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

目录

[1. CryptoDriver里KeyElement格式](#1. CryptoDriver里KeyElement格式)

[2. 挖掘RFC标准](#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

相关推荐
梦想blog2 天前
使用 Acme.sh 获取和管理免费 SSL 证书
证书·ssl·acme
Evaporator Core2 天前
信息安全工程师软考进阶:第二章密码学与应用深度习题解析
密码学
長琹3 天前
AES加密算法详细加密步骤代码实现--身份证号码加解密系统
网络·数据库·人工智能·python·密码学
有点不太正常4 天前
《A Study of Probabilistic Password Models》(IEEE S&P 2014)——论文阅读
论文阅读·密码学·口令猜测·马尔可夫链
Blockchain Learning5 天前
椭圆曲线的数学基础
golang·密码学
yjx233326 天前
《应用密码学》——基础知识及协议结构模块(笔记)
笔记·密码学
默辨7 天前
密码学基础
密码学·非对称加密·数字签名·对称加密·摘要加密
浩浩测试一下9 天前
Windows驱动开发与双机调试环境[驱动开发环境配置高阶]
安全·web安全·网络安全·密码学·网络攻击模型·安全架构
东皇太星11 天前
模运算(密码学/数论/算法)
数据结构·算法·密码学
蒋星熠12 天前
区块链技术探索与应用:从密码学奇迹到产业变革引擎
python·语言模型·web3·去中心化·区块链·密码学·智能合约