arnaucube 4648850e0c | 4 years ago | |
---|---|---|
.github/workflows | 4 years ago | |
circuits | 4 years ago | |
contracts | 4 years ago | |
dist | 4 years ago | |
migrations | 4 years ago | |
src | 4 years ago | |
test | 4 years ago | |
.gitattributes | 4 years ago | |
.gitignore | 4 years ago | |
LICENSE | 4 years ago | |
README.md | 4 years ago | |
compile-circuits.sh | 4 years ago | |
miksi-logo00-small.png | 4 years ago | |
package-lock.json | 4 years ago | |
package.json | 4 years ago | |
truffle-config.js | 4 years ago | |
tsconfig.json | 4 years ago | |
tslint.json | 4 years ago |
From Esperanto, miksi (miks·i): to mingle, to blend, to mix, to shuffle
Warning: This repository is in a very early stage.
WebApp to use miksi-core can be found at https://github.com/arnaucube/miksi-app
npm run test-circuits
npm run test-sc
./compile-circuits.sh
secret
& nullifier
commitment
, which is the Poseidon hash: commitment = H(coinCode, amount, secret, nullifier)
, where:
coinCode
: code that specifies which currency is being used (0
==ETH)amount
: the amount to be depositedsecret
: random, privatenullifier
: randomcommitment
into the MerkleTreesecret
& nullifier
for the commitment
RootOld
(the current one in the Smart Contract) to RootNew
has been done following the rules (only one addition, no deletion)deposit
call, together with the zkProof dataDeposit circuit can be found here.
commitment
of which the user knows the secret
& nullifier
secret
for a public nullifier
- which commitment
is in the MerkleTree
- which MerkleTree root
is the one that knows the SmartContractWithdraw circuit can be found here.