Giter Site home page Giter Site logo

zksync-crypto-c's People

Contributors

dvush avatar maximfischuk avatar popzxc avatar stanislavbreadless 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

Watchers

 avatar  avatar

zksync-crypto-c's Issues

signer v3 killing python kernel

I am testing the Python SDK of zksync on my laptop, i have been following the guide as shown Here

when i try to initialize the signer v3 as shown;

# Initialization from zksync private key
signer_v3 = ZkSyncSigner(library, b"private_key")

the jupyter notebook kernel dies ( the aforementioned code execution kills it ) and i have to restart the kernel

i have tried to do this multiple times without any success , so i skipped this step and chose to create the wallet as shown in the subsequent instructions

please note that in place of ' b"private_key" ' , i use my ethereum wallet private key

hope this will prove helpful in any possible patches !

zks-crypto-x86_64-unknown-linux-gnu.a can not work

zks-crypto-x86_64-unknown-linux-gnu.a can not use for linux

/usr/local/go/pkg/tool/linux_amd64/link: running gcc failed: exit status 1
./libs/libzks-crypto.a(std-8d61b92a0a02f53a.std.28dff6de-cgu.0.rcgu.o): In function `std::sys::unix::weak::fetch':
/rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c//library/std/src/sys/unix/weak.rs:150: undefined reference to `dlsym'
./libs/libzks-crypto.a(franklin_crypto-2e86df57e8eea714.franklin_crypto.168b6bed-cgu.9.rcgu.o): In function `std::f64::<impl f64>::log_wrapper':
franklin_crypto.168b6bed-cgu.9:(.text._ZN3std3f6421_$LT$impl$u20$f64$GT$11log_wrapper17h623b28ab73650d53E+0x2): undefined reference to `log'
./libs/libzks-crypto.a(num_bigint-5a4d7b699b41e4e2.num_bigint.882dae50-cgu.0.rcgu.o): In function `num_bigint::biguint::convert::<impl num_traits::cast::FromPrimitive for num_bigint::biguint::BigUint>::from_f64':
num_bigint.882dae50-cgu.0:(.text._ZN10num_bigint7biguint7convert90_$LT$impl$u20$num_traits..cast..FromPrimitive$u20$for$u20$num_bigint..biguint..BigUint$GT$8from_f6417h0fcf571f415a3fa1E+0x28): undefined reference to `trunc'
./libs/libzks-crypto.a(num_bigint-5a4d7b699b41e4e2.num_bigint.882dae50-cgu.0.rcgu.o): In function `<num_bigint::biguint::BigUint as num_integer::roots::Roots>::nth_root':
num_bigint.882dae50-cgu.0:(.text._ZN74_$LT$num_bigint..biguint..BigUint$u20$as$u20$num_integer..roots..Roots$GT$8nth_root17hdbd59797c4f40445E+0x1d7): undefined reference to `log'
num_bigint.882dae50-cgu.0:(.text._ZN74_$LT$num_bigint..biguint..BigUint$u20$as$u20$num_integer..roots..Roots$GT$8nth_root17hdbd59797c4f40445E+0x1e9): undefined reference to `exp'
./libs/libzks-crypto.a(num_bigint-5a4d7b699b41e4e2.num_bigint.882dae50-cgu.0.rcgu.o): In function `<num_bigint::biguint::BigUint as num_integer::roots::Roots>::cbrt':
num_bigint.882dae50-cgu.0:(.text._ZN74_$LT$num_bigint..biguint..BigUint$u20$as$u20$num_integer..roots..Roots$GT$4cbrt17hff75565f7b2ba276E+0x221): undefined reference to `cbrt'
./libs/libzks-crypto.a(num_bigint-5a4d7b699b41e4e2.num_bigint.882dae50-cgu.12.rcgu.o): In function `std::f64::<impl f64>::log_wrapper':
num_bigint.882dae50-cgu.12:(.text._ZN3std3f6421_$LT$impl$u20$f64$GT$11log_wrapper17h36312df2e35fc6b6E+0x2): undefined reference to `log'
./libs/libzks-crypto.a(num_bigint-5a4d7b699b41e4e2.num_bigint.882dae50-cgu.12.rcgu.o): In function `std::f64::<impl f64>::log_wrapper':
num_bigint.882dae50-cgu.12:(.text._ZN3std3f6421_$LT$impl$u20$f64$GT$11log_wrapper17hef18bb030d3e646eE+0x2): undefined reference to `log2'
./libs/libzks-crypto.a(num_bigint-5a4d7b699b41e4e2.num_bigint.882dae50-cgu.3.rcgu.o): In function `num_bigint::biguint::convert::from_radix_digits_be':
num_bigint.882dae50-cgu.3:(.text._ZN10num_bigint7biguint7convert20from_radix_digits_be17ha60840d754857fceE+0x24): undefined reference to `log2'
num_bigint.882dae50-cgu.3:(.text._ZN10num_bigint7biguint7convert20from_radix_digits_be17ha60840d754857fceE+0x57): undefined reference to `ceil'
./libs/libzks-crypto.a(num_bigint-5a4d7b699b41e4e2.num_bigint.882dae50-cgu.3.rcgu.o): In function `num_bigint::biguint::convert::to_radix_le':
num_bigint.882dae50-cgu.3:(.text._ZN10num_bigint7biguint7convert11to_radix_le17hc7341fa6dfc09871E+0x123): undefined reference to `log2'
num_bigint.882dae50-cgu.3:(.text._ZN10num_bigint7biguint7convert11to_radix_le17hc7341fa6dfc09871E+0x36c): undefined reference to `ceil'
num_bigint.882dae50-cgu.3:(.text._ZN10num_bigint7biguint7convert11to_radix_le17hc7341fa6dfc09871E+0x409): undefined reference to `ceil'
./libs/libzks-crypto.a(num_integer-d8866f714f867faa.num_integer.7e7be96a-cgu.0.rcgu.o): In function `<u64 as num_integer::roots::Roots>::nth_root::go':
num_integer.7e7be96a-cgu.0:(.text._ZN49_$LT$u64$u20$as$u20$num_integer..roots..Roots$GT$8nth_root2go17he503e5792c675311E+0x169): undefined reference to `log'
num_integer.7e7be96a-cgu.0:(.text._ZN49_$LT$u64$u20$as$u20$num_integer..roots..Roots$GT$8nth_root2go17he503e5792c675311E+0x17b): undefined reference to `exp'
./libs/libzks-crypto.a(num_integer-d8866f714f867faa.num_integer.7e7be96a-cgu.0.rcgu.o): In function `<u64 as num_integer::roots::Roots>::cbrt::go':
num_integer.7e7be96a-cgu.0:(.text._ZN49_$LT$u64$u20$as$u20$num_integer..roots..Roots$GT$4cbrt2go17hb73f506a2eb5a810E+0x1e8): undefined reference to `cbrt'
./libs/libzks-crypto.a(num_integer-d8866f714f867faa.num_integer.7e7be96a-cgu.0.rcgu.o): In function `<usize as num_integer::roots::Roots>::nth_root::go':
num_integer.7e7be96a-cgu.0:(.text._ZN51_$LT$usize$u20$as$u20$num_integer..roots..Roots$GT$8nth_root2go17h25f390539c816617E+0x169): undefined reference to `log'
num_integer.7e7be96a-cgu.0:(.text._ZN51_$LT$usize$u20$as$u20$num_integer..roots..Roots$GT$8nth_root2go17h25f390539c816617E+0x17b): undefined reference to `exp'
./libs/libzks-crypto.a(num_integer-d8866f714f867faa.num_integer.7e7be96a-cgu.0.rcgu.o): In function `<usize as num_integer::roots::Roots>::cbrt::go':
num_integer.7e7be96a-cgu.0:(.text._ZN51_$LT$usize$u20$as$u20$num_integer..roots..Roots$GT$4cbrt2go17hdb9d59a56e06bc31E+0x1e8): undefined reference to `cbrt'
collect2: error: ld returned 1 exit status

Could the sdk use catch_unwind to catch panic instead of throwing it to caller program directly?

Hi,I develop a Java app that call the sdk to verify signature.However,the app will crash when calling the sdk with some wrong inputs.
The error looks like:

thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: Custom { kind: InvalidInput, error: "y is not in field" }', zks-crypto-c/src/[utils.rs:228](http://utils.rs:228/):75
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
fatal runtime error: failed to initiate panic, error 5 
...

And I found that the sdk will unwrap the result and panic if the signature is wrong.

fn into_signature(signature: &[u8], params: &AltJubjubBn256) -> Signature<Engine> {
    let r: Point<Engine, Unknown> = Point::read(&signature[..32], params).unwrap(); //  the wrong signature will panic and crash the caller program
    let mut s_repr = <Fs as PrimeField>::Repr::default();
    s_repr.read_le(&signature[32..]).unwrap();
    let s = Fs::from_repr(s_repr).unwrap();

    Signature { r, s }
}

Could the sdk return an false instead of panic when calling the function 'verify_musig_rescue'?

Dumb installation problem

I know my questions is a little bit dumb, sorry about that.

Which files from release should I download for macOS?
There are three and I can't make it work.
I'm testing Python SDK and it requires to create env variable with the path to this library.
Can you please provide example steps of the correct installation?
Thanks!

Android cannot find so problem

When we use zks-crypto-android-arm64-v8a.so, we got this error for some android 11+ devices:
java.lang.UnsatisfiedLinkError: dlopen failed: library "/data/app/~~TsHhh26DVMK5lw4qzLXpWA==/com.example.app-t9FFUW9E0pjX9tRed1Wnag==/split_config.arm64_v8a.apk!/lib/arm64-v8a/libzks-crypto.so" not found
how to fix it?

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.