From 29e083ecab02634beea6e9500ea4d86be3fa21a5 Mon Sep 17 00:00:00 2001 From: Angelo De Caro Date: Mon, 20 Jun 2022 13:24:57 +0200 Subject: [PATCH] fixup! Idemix MSP Folder Structure incompatible with what Fabric expects #303 Signed-off-by: Angelo De Caro --- lib/client.go | 14 +++++++++++++- lib/client/credential/idemix/credential.go | 2 ++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/client.go b/lib/client.go index e0bcc6472..d4e744dd9 100644 --- a/lib/client.go +++ b/lib/client.go @@ -12,6 +12,7 @@ import ( "encoding/hex" "encoding/json" "fmt" + "github.com/hyperledger/fabric-protos-go/msp" "io/ioutil" "net" "net/http" @@ -944,7 +945,18 @@ func (c *Client) verifyIdemixCredential() error { signerConfig := &idemixcred.SignerConfig{} err = json.Unmarshal(credfileBytes, signerConfig) if err != nil { - return errors.Wrapf(err, "Failed to unmarshal signer config from %s", c.idemixCredFile) + // try proto + idemixSignerConfig := &msp.IdemixMSPSignerConfig{} + err = proto.Unmarshal(credfileBytes, idemixSignerConfig) + if err != nil { + return errors.Wrapf(err, "Failed to unmarshal signer config from %s", c.idemixCredFile) + } + signerConfig.Cred = idemixSignerConfig.Cred + signerConfig.Sk = idemixSignerConfig.Sk + signerConfig.CredentialRevocationInformation = idemixSignerConfig.CredentialRevocationInformation + signerConfig.EnrollmentID = idemixSignerConfig.EnrollmentId + signerConfig.Role = int(idemixSignerConfig.Role) + signerConfig.OrganizationalUnitIdentifier = idemixSignerConfig.OrganizationalUnitIdentifier } cred := new(idemix.Credential) diff --git a/lib/client/credential/idemix/credential.go b/lib/client/credential/idemix/credential.go index db8fded83..851272685 100644 --- a/lib/client/credential/idemix/credential.go +++ b/lib/client/credential/idemix/credential.go @@ -90,6 +90,8 @@ func (cred *Credential) Store() error { return err } caSignerConfig := val.(*SignerConfig) + + // Store the MSP signer config as Fabric expects mspSignerConfig := &m.IdemixMSPSignerConfig{ Cred: caSignerConfig.Cred, Sk: caSignerConfig.Sk,