我有一些关于证书的基础问题。让我先解释一下我对SSL身份验证的理解。
SSL/TLS基本上有两件事,
1.认证-确保我们在双方之间与正确的一方通信。 2.加密-加密双方之间传输的实际数据。
证书具有公钥和一些附加信息。客户端(称为'C')和服务器(称为'S')之间的SSL通信如下:
1.C发起请求S。 2.S将其公钥发送给C。 3.C验证S的身份。(服务器身份验证或服务器身份验证) 4.C将其公钥发送到S。 5.S验证C的身份。(客户端身份验证或客户端身份验证) 6.C生成对称或会话密钥(称为'K'),并使用S公钥对其进行加密,然后将其发送到服务器。 7.现在,C和S都拥有共享的对称密钥,该密钥将用于加密数据。
在这里,我相信客户端身份验证的步骤4和5是可选的。如果我错了,请纠正我。
步骤1到5涉及非对称加密模式,即仅用于“身份验证”,之后涉及对称加密模式,用于它们之间的实际数据传输。
我的问题如下:
1.我从这个link(与IIS服务器相关)中了解到有两种类型的证书。一种是客户端证书,另一种是服务器证书。我认为发起请求的客户端侧是客户端证书,另一个是服务器证书。在OpenSSL方面,客户端证书和服务器证书有什么区别?这些证书的CN名称在OpenSSL方面有什么区别吗?
2.要求我使用客户端证书进行身份验证。这是否意味着我们绕过服务器身份验证,仅使用客户端证书进行身份验证?我不这样认为。据我所知,客户端身份验证应该是在服务器身份验证之外进行的。如果我理解有误,请纠正我。
SSL/TLS基本上有两件事,
1.认证-确保我们在双方之间与正确的一方通信。 2.加密-加密双方之间传输的实际数据。
证书具有公钥和一些附加信息。客户端(称为'C')和服务器(称为'S')之间的SSL通信如下:
1.C发起请求S。 2.S将其公钥发送给C。 3.C验证S的身份。(服务器身份验证或服务器身份验证) 4.C将其公钥发送到S。 5.S验证C的身份。(客户端身份验证或客户端身份验证) 6.C生成对称或会话密钥(称为'K'),并使用S公钥对其进行加密,然后将其发送到服务器。 7.现在,C和S都拥有共享的对称密钥,该密钥将用于加密数据。
在这里,我相信客户端身份验证的步骤4和5是可选的。如果我错了,请纠正我。
步骤1到5涉及非对称加密模式,即仅用于“身份验证”,之后涉及对称加密模式,用于它们之间的实际数据传输。
我的问题如下:
1.我从这个link(与IIS服务器相关)中了解到有两种类型的证书。一种是客户端证书,另一种是服务器证书。我认为发起请求的客户端侧是客户端证书,另一个是服务器证书。在OpenSSL方面,客户端证书和服务器证书有什么区别?这些证书的CN名称在OpenSSL方面有什么区别吗?
2.要求我使用客户端证书进行身份验证。这是否意味着我们绕过服务器身份验证,仅使用客户端证书进行身份验证?我不这样认为。据我所知,客户端身份验证应该是在服务器身份验证之外进行的。如果我理解有误,请纠正我。