Qt Crypto - 如何验证 RSA 密钥?

问题描述 投票:0回答:1

我正在尝试使用 Qt 加密架构 为节点生成公钥/私钥对,并希望有一个协议,其中节点通过向确保他们是相应私钥的所有者。不过,我对 QCA 的实际语法有点困惑......

这应该给我一个私钥,我也可以从中获取公钥:

QCA::KeyGenerator generator;
QCA::PrivateKey privateKey = generator.createRSA(1024);

QCA 是否已经内置了某种质询协议?如果是这样,我该如何使用它?如果没有,我如何使用这些密钥应用一些标准加密质询协议? 我真的只是想演示一个简单的安全概念 - 我并不是在寻找任何复杂的甚至特别强大的东西。

另外,这是一个附带问题,但由于我不需要加密,我应该选择 DSA 而不是 RSA 吗?

qt authentication rsa
1个回答
0
投票

这样做的人不止一个。但由于所有客户端都已经拥有非对称密钥对,因此您可以在建立连接时部署双向 TLS。 在此方案中,客户端和服务器仅在信任彼此的证书(公钥)的情况下才允许建立连接。这保证了客户端身份验证和不可否认性。

从您这边,您需要向所有客户端提供服务器证书,并向服务器提供所有客户端证书。为了避免与证书颁发机构打交道,证书可以是自签名的。

QCA 有 TLS clientserver 的示例。

© www.soinside.com 2019 - 2024. All rights reserved.