-
Notifications
You must be signed in to change notification settings - Fork 707
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Idemix Update #363
Idemix Update #363
Conversation
@adecaro Sorry for the delay, just getting back this week. It looks like the issue is that an updated cobra got vendored in which adds a new
This results in the new The error indicates that the generated docs don't match the existing docs. To fix the issue, you would need to do one of two things:
In my opinion, the completion feature is decent enough to keep. See description of it at https://blog.devgenius.io/shell-completion-with-cobra-and-go-c8368074d8f7. |
I've also opened a PR to clarify the confusing CI error message - #365 |
cool, thanks @denyeart. I'll run |
Hi @denyeart , anything missing that I need to address to get the PR merged? Thanks much :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't completely understand the revocation handle changes, but I'll take your word for it.
So I've just added some nits from Go perspective.
Also, we typically prefer the PR author to squash their own commits into a single commit for a cleaner history upon merge.
// RevocationHandle is the handle used to single out this credential and determine its revocation status | ||
RevocationHandle string `protobuf:"bytes,7,opt,name=revocation_handle,json=revocationHandle,proto3" json:"revocation_handle,omitempty"` | ||
// CurveID specifies the name of the Idemix curve to use, defaults to 'amcl.Fp256bn' | ||
CurveID string `protobuf:"bytes,7,opt,name=curve_id,json=curveID" json:"curveID,omitempty"` | ||
CurveID string `protobuf:"bytes,8,opt,name=curve_id,json=curveID" json:"curveID,omitempty"` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
New properties should always be added at the end to ensure compatibility (even if you expect there will be no functional impact I still think it is good practice for clean change history).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
makes sense
lib/client.go
Outdated
@@ -33,13 +23,23 @@ import ( | |||
idemixcred "github.com/hyperledger/fabric-ca/lib/client/credential/idemix" | |||
x509cred "github.com/hyperledger/fabric-ca/lib/client/credential/x509" | |||
cidemix "github.com/hyperledger/fabric-ca/lib/common/idemix" | |||
idemix2 "github.com/hyperledger/fabric-ca/lib/server/idemix" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Might be good to have more expressive names than idemix
and idemix2
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sidemix
should do the job
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comments addressed
- prepare the revocation handle as expected by the idemix lib - idemix: export revocation handle in SignerConfig - update idemix and mathlib dep - add logs to idemix issuer - doc update Signed-off-by: Angelo De Caro <angelo.decaro@gmail.com>
Hi @denyeart , thanks for the review. I have addressed your comments :) |
Type of change
Description
This PR update the Idemix dependency to its latest version that is used by the Fabric Token SDK too.
Now, the SignerConfig struct also exports the RevocationHandle that is used by the Fabric Token SDK for audit purpose.
The way the revocation handle is encoded has changed to align to what the Idemix library expects.
The unit-tests have been updated.
Release Note
The changes to the encoding of the revocation handle shouldn't impact anyway given that Fabric is not currently using it.