Publishes random numbers to Pontis
clone this repo
# Copy environment file
cp secrets.env .secrets.env
# Populate secrets
vim secrets.env
# Publish to Pontis
docker build . --tag publish-to-pontis --file ./publish-to-pontis.Dockerfile
docker run --env-file .secrets.env -t publish-to-pontis
# Publish to verifier (work in progress)
docker build . --tag publish-to-verifier --file ./publish-to-verifier.Dockerfile
docker run --env-file .secrets.env -t publish-to-verifier
- Navigate to https://goerli.voyager.online/contract/0x039d1bb4904cef28755c59f081cc88a576ecdf42240fb73dd44ddd003848ce33#readContract
- Use
get_value
withkey=491260896305
- V0: Publish a constant number
- V1: Publish a random number
- V2: Use https://drand.love/
- V3: Make script run continuously
- V4: Write verifier for drand (skipped because https://github.com/0xNonCents/cairo-bls12-381 isn't usable yet. bls12-381 tests take 35 mins to run in native cairo so we attempted to run in oriac but fails here)
- V5: Write a Cairo proxy contract that accepts drand and proxies it to Pontis
- V6: Add a method
setPublicKey(publicKey: felt)
to contract (put this in contract storage) - V7: Add a method
setAlpha(alpha: felt)
andgetAlpha()
to contract - V8: Add a method to accept a proof and random number (random number = 1)(assume "verification" of proof is always true)
- V8: Accept
setAlpha(alpha: felt)
from drand relayer