Code Monkey home page Code Monkey logo

halo's People

Contributors

daira avatar ebfull avatar str4d avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

halo's Issues

Long runtime for main() in examples/paper.rs

Hi everyone,
I cloned the repository and compiled the code using cargo build --release.
Then I executed the main() function in paper.rs, but parameters and recursive proofs generation takes quite a long time to execute:

Making parameters
done, took 565.443144333s
creating proof1
done, took 1334.410390658s
verifying proof1
done, took 59.727668915s
creating proof2
done, took 1343.427346562s
verifying proof2
done, took 128.97836519s
creating proof3
done, took 1392.430266872s
verifying proof3
done, took 125.734783976s
creating proof4
done, took 1372.966353744s
verifying proof4
done, took 128.639343493s
...

I'm using an Ubuntu 18.04.2 (64bit) VM running on Oracle VM Virtualbox, to which I allocated 4 cores of an Intel Core i7-8750H CPU @ 2.20GHz and 8GB RAM. I also set the cargo profile in cargo.toml in this way:

opt-level = 3
lto = true
codegen-units = 1

Is this expected or am I doing something wrong ?
Thanks in advance !

Implement variable-bound range proofs

The Bitcoin example recursive circuit needs to enforce:

  • hash <= target (to ensure the block header satisfies the required work)
  • remainder <= target (as part of constraining the integer division 2^256 / (target + 1) = work)

target is expanded from the header's nBits field, and thus is almost never a power of two, requiring a variable-bound range proof.

About the Amortized Polynomial Commitments

I am quite confused about the introduction about the Amortized Polynomial Commitments when reading the Halo paper in section 3.1. What's is the concrete algorithm about the polynomial commitments, there is no precise reference about this in the paper?

Difference from STARKs

My understanding is that zk-STARKs also require no trusted setup.

How is Halo different from STARKs? How is it better?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.