密钥库证书对 SAML SSO 的重要性



我是证书和密钥库的新手。

密钥库和证书对于 SAML SSO(在 Spring boot SAML SSO 上下文中)的重要性和工作原理是什么?

我看到.jks.pem.cer.der等正在使用。这些是什么?

KeyStore 的重要性和工作原理是什么,以及 SAML SSO 的证书(在 Spring boot SAML SSO 的上下文中)?

  • 这些用于对 SAML 断言进行签名的安全影响, SAML 协议请求和响应。
  • SAML SSO 中的证书将用于对 SAML 进行数字签名 断言/请求/响应和密钥存储是持久存储 存储密钥/证书。
  • 由断言
  • 方签署的断言支持断言 完整性,断言方对 SAML 依赖的身份验证 方,并且,如果签名基于 SAML 机构的 公钥-私钥对,不可否认的来源。

  • 由消息签名的 SAML 协议请求或响应消息 发起方支持消息完整性,消息身份验证 始发地到目的地,并且,如果签名基于 发起方的公钥-私钥对,不可否认来源。

  • 证书也用于安全通道建立 (SSL/TLS)。

什么是.jks,.pem,.cer,.der等?

  • .jks是JAVA专有密钥库(JKS)格式的扩展。JKS 是 私钥和关联的数据库格式 证书或证书链。直到 JAVA 8,默认情况下,作为 在java.security文件中指定,keytool使用JKS作为格式 密钥和证书数据库(密钥库和信任库)。 从 JAVA 9 开始,默认密钥库格式已更改为 PKCS12(扩展名 .pkcs).

.pem、.cer、.der 是证书/密钥类型/扩展名:

  • .PEM:PEM扩展名用于不同类型的X.509v3文件 包含以"—– BEGIN 前缀的 ASCII (Base64) 装甲数据 ..."线。
  • .DER:DER扩展用于二进制DER编码证书。 这些文件也可能带有 CER 或 CRT 扩展名。  适当 英语用法是"我有一个DER编码证书"而不是"我有" DER证书"。
  • .CRT :CRT 扩展名用于证书。证书 可以编码为二进制 DER 或 ASCII PEM。CER和CRT 扩展几乎是同义词。 在 *nix 系统中最常见。
  • CER : .crt 的替代形式(Microsoft约定) 您可以使用 MS 来 将 .crt 转换为 .cer(.two DER 编码.cer,或 base64[PEM] 编码 .cer).cer文件扩展名也被IE识别为命令 运行 MS cryptoAPI 命令(特别是 rundll32.exe cryptext.dll,CryptExtOpenCER),显示导入对话框 和/或查看证书内容。
  • .KEY : KEY 扩展用于公共和私有 PKCS#8 钥匙。密钥可以编码为二进制 DER 或 ASCII PEM。

最新更新