注册成员请求失败并带有签名验证

时间:2016-09-26 11:06:57

标签: go hyperledger hyperledger-fabric

当我尝试注册“admin”用户时,对CreateCertificatePair的第二次调用失败,并显示“签名验证失败”消息。顺便说一下,我复制了eca_test.go中的enrollUser函数。并且可以传递membersrvc / ca包下的那些测试。

ViewBag.UserRoles = db.UserRoles.Select(
                            x => new SelectListItem
                            {
                                Selected = true,
                                Text = x.UserRoleName,
                                Value = x.UserRoleID.ToString()
                            }

2 个答案:

答案 0 :(得分:1)

正如谢尔盖所​​说,CreateCertificatePair要求创建一个新的证书对,
并根据文件,

在注册期间,应用程序向证书颁发机构发送请求以验证用户注册,如果成功,CA将使用用户证书和密钥进行响应。

成功进行用户身份验证后,应用程序将仅向CA执行一次用户注册。如果同一用户再次尝试注册,则会产生错误。 这就是为什么第二次调用CreateCertificatePair失败的原因。 如果您确实要注册之前已注册的用户,则需要删除CA服务器进程创建的临时文件(客户端注册证书,注册密钥,事务证书链等),并执行此操作,运行以下命令,

rm -rf /var/hyperledger/production

/var/hyperledger/production是存储从CA收到证书的目录。

Souce:Note on security functionality

答案 1 :(得分:0)

CreateCertificatePair请求ECA创建新的注册证书对。 "登记"证书是唯一的,ECA每个用户只需创建一次

对同一用户再次致电CreateCertificatePair会导致错误。