ever-node icon indicating copy to clipboard operation
ever-node copied to clipboard

Add BLS12-381 support

Open pavlovdog opened this issue 1 year ago • 0 comments

Abstract

The document describes the changes necessary to make in the virtual machine to support BLS12-381

Motivation

Support for BLS12-381 will allow the implementation of new mechanics in the everscale network. It can be used by ZK-protocols.

Specifications

Implement in VM all the necessary primitives for working with BLS12-381

  • Checks BLS signature
  • Aggregates signatures.
  • Addition\Subtraction\Negation on G1
  • Addition\Subtraction\Negation on G2
  • others

Rationale

Why BLS12-381?

At this point, BLS12-381 seems to be the rational choice due to the multiple reasons

  • Growing support in the industry. Different projects are using this curve to make use of aggregatable signatures (validator's signatures in Ethereum Beacon chain/Account Abstraction multi-signature wallets/etc)
  • Keeping compatibility with the TON network

pavlovdog avatar Feb 14 '24 10:02 pavlovdog