How to create a valid issuer?

@lemoustachiste @juaneltemible

i’m also facing the similar issue

In the console, I can see Didn’t recognize chain value.

I’m using ethereum_sepolia chain

hm it should be supported: explorer-lookup/blockchains.ts at master · blockchain-certificates/explorer-lookup · GitHub

Could you share your cert so I can investigate?

@lemoustachiste
Here is the certificate content

{“@context”: [“https://www.w3.org/2018/credentials/v1”, “https://w3id.org/blockcerts/v3”], “type”: [“VerifiableCredential”, “BlockcertsCredential”], “issuer”: “https://raw.githubusercontent.com/sreenumalae/DataStorage/main/testissuer.json”, “issuanceDate”: “2022-10-31T11:31:03Z”, “id”: “urn:uuid:af05c673-02f2-430f-aefc-5256f053c39a”, “credentialSubject”: {“id”: “ecdsa-koblitz-pubkey:mtr98kany9G1XYNU74pRnfBQmaCg2FZLmc”, “alumniOf”: {“id”: “https://www.human-logic.com/”}}, “proof”: {“type”: “MerkleProof2019”, “created”: “2022-10-31T12:05:00.478050”, “proofValue”: “znKD4YGVqA8textxikpfbsSQxuWguMznNeK95EspXveCLCWTH9xVEyuRBGUL1qrGrvRJDUDrSrdP5nxZWwZDWPFMru2xHaLJaEgX7QpL92giUyTYLviqxsU3snV2qrpGGtsGYp1CpMSdsWRYCqkbnBT5s9Yh6q4j8HkYCC5Tq9AAezkiaqcMBUcUDMTkrrou4zPY5nEoRqmZCR4aq5gexwCKPahJfpCVp7hG1q84JjoVjRybzWXANbCaQqJQN6VZ5bn1My9kUwYYP6g8EByfTK9nvjraWsyVwjT9eZDWgKVU6VxtpmmNAY8HbiM”, “proofPurpose”: “assertionMethod”, “verificationMethod”: “URL”}}

it looks like your proof is malformed:

{
      path: [],
      merkleRoot: '635a5828df1cbd886111e9ffee82c1c9072a12f5ae82fa6300115eb3de3d7f4c',
      targetHash: '635a5828df1cbd886111e9ffee82c1c9072a12f5ae82fa6300115eb3de3d7f4c',
      anchors: [
        'blink:eth:undefined:0x8b4db734457fe3c5d590dc38040a9573ae5a9f8201c5b3d0b75019d43450ada6'
      ]
    }

the anchor does not reference Sepolia but undefined.

So it could be an issue with cert-issuer maybe? How is your conf.ini defined?

My conf.ini in cert-issuer

issuing_address = 0x4d6919d34132C6963cfEe665309C6079822795BB

verification_method = URL

chain= ethereum_sepolia

usb_name = </Volumes/path-to-usb/>

key_file = /home/azureuser/blockchain_attempt2/cert-issuer/data/keyfile.txt

unsigned_certificates_dir=/home/azureuser/blockchain_attempt2/cert-tools/sample_data/unsigned_certificates

blockchain_certificates_dir=/home/azureuser/blockchain_attempt2/cert-tools/sample_data/signed

work_dir=/home/azureuser/blockchain_attempt2/cert-issuer/data/work

no_safe_mode

ok let me check then

so I’ve got an error and I cannot issue on sepolia anyway:

raise UnknownChainError(app_config.chain)
cert_core.UnknownChainError: Chain.ethereum_sepolia

How did you issue the certificate?

Ok I think I’m getting the above error due to some python shenanigans on my machine. Trying to sort it out

Ok so it looks like cert-issuer works ok, here is my anchor for an issuance on sepolia:

blink:eth:sepolia:0x1f615470024000c3ab532ed74c5a60b8f6c2feb6489a67be20f103831996f9ab

you should maybe try and issue again

@lemoustachiste

I tried to install it again and followed the whole process again from the fist.

Successfully I created both unsigned and signed certificates and the issue still remains same.

Here is my signed certificate:

{"@context": ["https://www.w3.org/2018/credentials/v1", "https://w3id.org/blockcerts/v3"], "type": ["VerifiableCredential", "BlockcertsCredential"], "issuer": "https://raw.githubusercontent.com/sreenumalae/DataStorage/main/testissuer.json", "issuanceDate": "2022-11-03T09:28:54Z", "id": "urn:uuid:004873c9-c21b-4f33-aae6-714eb964f626", "credentialSubject": {"id": "ecdsa-koblitz-pubkey:mkwntSiQmc14H65YxwckLenxY3DsEpvFbe", "alumniOf": {"id": "https://www.human-logic.com/"}}, "nonce": "1", "proof": {"type": "MerkleProof2019", "created": "2022-11-03T10:54:42.597456", "proofValue": "z9nmN4tsD8AYm9oa7cgcUrCN4Lqecj7HMdoAz1UbYbw8PLrmc2GoFJiV5bk9xXcWDbKsidjXSBoBsp7DqZX4WDfPS3sfTyt9vKrCE2NYjxS34TEmBhVW9uirAhM6uLq9QtxjLX8xu3wTaGSZrf8SHiHY9fUEVm9JufBjvD7axpkdGiEc48yQLynnVYEUtBZWTkVmwTkPg2XQWUNE6hPr9CcpmXBF5VBgxqaps9pyZmzaBBrGuiVJ7p3BD5c8d7C4AA2rbVPhPXTjK34ddVzDTy7W2XYfDrFE1jHmF87sYUzeVEWkwTzrNMQ5xWhwjvS9TwUo78272FgeW4TsKjZy7hyQ8tcAfeL5SH23uJetwMSn8qoQCJ9YngcWF3BqKrBGy6FZvjATvLHdGuCBjPcL5BhCPhP", "proofPurpose": "assertionMethod", "verificationMethod": "URL"}}

anchor for an issuance on sepolia

INFO - merkle_json: {‘path’: [{‘right’: ‘94b0236ef84cb4f5a32e5d66b47424d6d068908d3e6bc6eea13c35aaf4211c1b’}], ‘merkleRoot’: ‘a845bf3d74a5aa78b5ade32c44583640645b4459e651b4314830afb5b439dab0’, ‘targetHash’: ‘8885070fede3b20e463cc225436d604d9f312789fbbfe498270e1f130ade74d4’, ‘anchors’: [‘blink:eth:sepolia:0xe7a23bbb0150c8d0594f4241c29fb7da946daad7deac4a9644f1469d51351546’]}

INFO - merkle_json: {‘path’: [{‘left’: ‘8885070fede3b20e463cc225436d604d9f312789fbbfe498270e1f130ade74d4’}], ‘merkleRoot’: ‘a845bf3d74a5aa78b5ade32c44583640645b4459e651b4314830afb5b439dab0’, ‘targetHash’: ‘94b0236ef84cb4f5a32e5d66b47424d6d068908d3e6bc6eea13c35aaf4211c1b’, ‘anchors’: [‘blink:eth:sepolia:0xe7a23bbb0150c8d0594f4241c29fb7da946daad7deac4a9644f1469d51351546’]}

INFO - Broadcast transaction with txid 0xe7a23bbb0150c8d0594f4241c29fb7da946daad7deac4a9644f1469d51351546

@lemoustachiste
As i can see the issuance is also similar to the one you created.

Kindly help me out with this issue

Thanks in Advance

I’ve finally figured out the issue, I’m working on the fix

I’m still facing issues, I think I should be able to resolve by tomorrow

1 Like

ok Thanks @lemoustachiste

it’s in PR, but some tests on the master branch that were working 2 weeks ago are now failing and I need to investigate why.

So the code in this PR will verify a Sepolia or Goerli anchored cert: fix(Sepolia): ensure sepolia anchored verification by lemoustachiste · Pull Request #1447 · blockchain-certificates/cert-verifier-js · GitHub

If you feel bold enough you can use this branch, either directly locally with a copy of CVJS, or installing it to a local copy of blockcerts-verifier. At least that’s a way to have you unblocked while I figure out why those tests are suddenly failing.

Thank you @lemoustachiste

I will try to use the PR and install it in my local drive.

Blockcerts Verifier has been updated, and it’s live on blockcerts.org

Thanks @lemoustachiste for the update <3

@lemoustachiste

If you can see the previous sample certificates that I shared in the same thread.

They don’t have any data about student or certificate holder.

In version 2 the cert-tools create a template which also contains student data and also certificate description ect…

In version 3 even i mention the certificate values in conf.ini. the template doesn’t have any cetificate info.

Here is my template of version 3

{
    "@context": [
        "https://www.w3.org/2018/credentials/v1",
        "https://w3id.org/blockcerts/v3"
    ],
    "type": [
        "VerifiableCredential",
        "BlockcertsCredential"
    ],
    "issuer": "https://raw.githubusercontent.com/sreenumalae/DataStorage/main/issuer.json",
    "issuanceDate": "*|DATE|*",
    "id": "urn:uuid:*|CERTUID|*",
    "credentialSubject": {
        "id": "ecdsa-koblitz-pubkey:*|PUBKEY|*",
        "alumniOf": {
            "id": "https://www.human-logic.com/"
        }
    }
}

On creating the certificates on this template are validated in the cert-verifier but the certificate is blank as shown in the attachment.


Even Recipient name is not displaying.

Yeah, cert-tools hasn’t been getting much attention with the v3 release, also because we don’t extensively make use of it so it’s always been down in terms of priority. You might have to adapt the code and/or configure your cert manually.

Don’t hesitate to open a PR, I’m sure other members of the community would appreciate it.