πŸ“ŽChangelog

October 3, 2024

ZK-Certificates -> 0.11.0

  • The guardian registry smart contract now links to a metadata URL with information and it allows guardians to use multiple accounts for issuing zkCerts (#61arrow-up-right)

  • New sybil-resistant airdrop smart contract based on zkKYC registrations with humanID (#64arrow-up-right)

  • New sybil-resistant faucet smart contract based on zkKYC (#66arrow-up-right)

  • Added a salt to the humanID for more privacy and tracking resistance (#67arrow-up-right)

  • Fixed non-deterministic poseidon hash of β€œβ€ (#69arrow-up-right)

  • New script for debugging encrypted zkCerts (#70arrow-up-right)

  • New Zk circuit for country sanction list (#72arrow-up-right)

  • New Compliant ERC20 demo and smart contracts (#72arrow-up-right)

  • Added a multicall smart contract (#74arrow-up-right)

  • New smart contracts and ZK circuits for Twitter related proofs and how they are stored and managed in VerificationSBTs (#74arrow-up-right)

  • New smart contracts for basic zkKYC proofs in new Galactica passport front-end (#75arrow-up-right)

  • ZkCert hashes of key-value records are now alphabetically ordered. This ensures consistency, with future zkCerts and new content types. This changes the hashes of existing zkCerts and therefore requires updating the zkCert generation and ZK prover accordingly. To separate zkCerts with the hashing approach, we also created new zkCert registry instances on-chain. (#76arrow-up-right)

  • Script for whitelisting guardians based on compressed EdDSA public keys (#78arrow-up-right)

Galactica ZK Vault Snap -> 0.8.1

Snap-API -> 0.3.0

Galactica-Types -> 0.4.0

Example and Test Front-Ends -> 0.4.0

Full Changelog: monorepo_v0.5.0...monorepo_v0.6.0arrow-up-right

July 15, 2024

ZK-Certificates -> 0.10.2

Galactica ZK Vault Snap -> 0.7.3

  • Handling ZkCert salt as decimal string fixing JSON compatibility issues between TypeScript (using number) and Go (using uint64) (#58arrow-up-right)

Snap-API -> 0.2.1

Golang SDK for KYC Guardians -> 1.5.0

May 15, 2024

ZK-Certificates -> 0.10.0

Galactica ZK Vault Snap -> 0.7.0

Snap-API -> 0.2.0

Galactica-Types -> 0.3.0

Example DApp Front-Ends -> 0.3.0

December 1, 2023

Repository infrastructure -> 0.3.0

Galactica ZK Vault Snap -> 0.6.1

  • Version auditedarrow-up-right by Sayfer for integration in the stable version of Metamask. Audit fixes (PR#33arrow-up-right) including:

    • Simplified installation of test setup, improved notifications and error messages

    • Removed unused functions

    • Resolved and cleaned up TODO comments in the code

    • URL validation for custom Merkle proof sources

  • Option to renew zkCerts when a new one is imported with the same registry address and Merkle tree position (PR#12arrow-up-right)

  • Improved security and privacy of ZKP disclosures by giving the user a complete and transparent list of disclosed statements in the confirmation question (PR#13arrow-up-right)

  • Better structured and typed API interface using definitions from the new snap-api package. Check the docsarrow-up-right for details. It simplifies sending calls from the front-end and changes parameter, return and error types. (PR#14arrow-up-right, PR#20arrow-up-right)

    • `getHolderCommitment`

      • Also returns an encryption

      • Together with the holder commitment in an object

    • `genZkKycProof`

      • Wasm, zkHeader and zkSections now in one prover object

      • Requires descriptions of fields disclosed in public input of resulting ZKP

      • Requires registry address field relevant for the zkCert that can be used

      • Renamed general description field of ZKP

    • `importZkCert`

      • Now takes encrypted zkCert as input

    • `exportZkCert`

      • Result is an encrypted zkCert

      • Optional expiration date and provider pubkey parameters to simplify selection

    • `updateMerkleProofURL`

      • New method to change the URL to query Merkle proofs from

    • All return values are objects

    • Throwing typed errors

  • ZkCerts are now encrypted outside the Snap storage with a public/private key pair generated in the Snap. Therefore the holderCommitment is returned with the public key for encryption to send it to the provider. (PR#17arrow-up-right)

  • Possibility to update Merkle Proofs via function or node service to support revocable zkCert registries (PR#19arrow-up-right)

  • Outsourced general type definitions to galactica-types and snap-api

  • Various small fixes and improvements

ZK-Certificates -> 0.9.5

Snap-API -> 0.1.10

  • Introducing a new package holding a simple front-end API for interaction with the Galactica ZK Vault Snap

Galactica-Types -> 0.2.4

  • New package for general typescript types of Galactica including zkCerts, EdDSA, Merkle Trees and zkCerts standards, such as zkKYC

Golang SDK for KYC Guardians

Galactica Node -> 0.2.1

  • Bump Cosmos SDK from v0.46.7 to v0.47.3

  • Switched from Tendermint to CometBFT consensus engine

  • Ethermint has been integrated into the Galactica Node, ensuring interoperability with the Ethereum Virtual Machine (EVM)

  • Added the Epochs module. This addition facilitates the periodic execution of specific code segments, ensuring timely operations and updates

Last updated