ChainSafe / blst-ts

Typescript wrapper for https://github.com/supranational/blst native bindings, a highly performant BLS12-381 signature library
Other
18 stars 13 forks source link

Wasm version #18

Closed paulmillr closed 6 months ago

paulmillr commented 3 years ago

Would be great to be able to run the lib in browser

dapplion commented 3 years ago

I know! There's an effort to get WASM working but requires quite a lot of work and it's not a priority at the moment

nazarhussain commented 3 years ago

@paulmillr You can try using this for the browsers https://github.com/ChainSafe/bls

paulmillr commented 3 years ago

@nazarhussain blst is reference bls implementation that was thoroughly audited

You're suggesting to use herumi/bls, which does not have these properties & much slower

nazarhussain commented 3 years ago

I suggested for browser use. And any browser compatible implementation will be slower than BLS which is most of assembly language implementation.

paulmillr commented 3 years ago

I have developed pure-javascript bls library one year ago. The goal here is not to use "something" in browser, it is to use blst in browser.

dapplion commented 3 years ago

I suggested for browser use. And any browser compatible implementation will be slower than BLS which is most of assembly language implementation.

BLST should be compilable to WASM, but we have no bandwidth to make that happen now

bryanchriswhite commented 2 years ago

I've been working on this for a bit and thought I would share: https://github.com/fetchai/blst-ts/pull/1. It's not my top priority but I'm anxious to be done and I've been grinding on it in-between other tasks. My first goal was to get the bindings tests passing in the browser.

matthewkeil commented 6 months ago

Browser support is provided via https://github.com/supranational/blst/tree/master/bindings/emscripten and also via https://github.com/ChainSafe/bls . This repos now hosts napi async bindings for multi-threaded verification and is node specific. There is some discussion about building multi-threaded wasm or emscripten bindings but that is still a future "wish list" thing. Closing this issue

z496090280 commented 1 week ago

I have developed pure-javascript bls library one year ago. The goal here is not to use "something" in browser, it is to use blst in browser.

why pure-javascript bls library sign verify result false,This library results in true

z496090280 commented 1 week ago

image