为什么节点在初始注册时需要network-root-truststore.jks文件?这个文件和nodekeystore.jks之间有什么冲突?
编辑:实际上,我的意思是我没有看到CSR与network-root-truststore.jks文件之间的冲突。没有此文件是否无法生成证书签名请求?
答案 0 :(得分:2)
network-root-truststore.jks
->这是网络运营商的根CA。
nodekeystore.jks
->其中包含节点身份密钥对和证书。
正如您在图中所看到的。门卫的根CA和网络映射相同。如上图所示,该节点采用3级层次结构。 (此问题在版本3.3中已得到修复,因此您可以拥有n级证书层次结构)
要向门卫进行初始注册,您需要创建一个CSR请求并将其发送给门卫,然后门卫将向您返回requestId。使用提供的requestId,您将询问门卫CSR是否已由他签名或未签名,Doorman会像下面将您交给节点证书
一旦您有由门卫签名的节点证书,您就想要对其进行验证(为此,您需要network-root-truststore.jks
内的RootCA证书,现在您不需要它来创建CSR。 ,但是必须对收到的证书进行验证,因此,您需要这样做。这也可以防止中间人攻击。)并生成TLS密钥对和证书。
在使用此命令启动节点时,corda节点会在初始注册时自动为您完成上述过程-> java -jar corda.jar --initial-registration --network-root-truststore-password <trust store password>
重要的一点是,完成注册后,您应该删除或删除network-root-truststore.jks
文件。