ton-society / grants-and-bounties

TON Foundation invites talent to imagine and realize projects that have the potential to integrate with the daily lives of users.

Home Page:https://ton.org/grants

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Verifier Registry smart contract

shaharyakir opened this issue · comments

Summary

Write a smart contract ("Verifier Registry") for forwarding signed messages to other contracts

Context

We run computations on off-chain nodes that produce data which needs to be stored on chain in various contracts.
In order for these contracts to accept the data, they require it to be signed by the off-chain nodes, each of which has a public/private keypair.
The verifier registry holds the list of keypairs and verifies signatures of arbitrary data passed on to the contracts downstream.

Flow

  • An entity stakes a certain amount (10K TON) in the verifier registry contract, for which it receives the ability to store its verify configuration (node addresses, public keys for verification, multi-sig threshold)
  • Once the configuration is in place, the entity can send a signed message and an address to forward the message to.
  • The verifier contracts checks the signatures and forwards the message

Detailed spec can be found in this gist

Goals

Develop a smart contract ("Verifier Registry") for forwarding signed messages to other contracts

Deliverables

  • Github repo with contract (func 0.2.0 using latest syntax)
  • Full tests (typescript, tvm-contract-executor)
  • Code for deploying the contract (typescript)

Definition of Done

The contract can be integrated to the Ton Source project (a smart contract that accepts messages only from the verifier registry)

Reward

  • 2.000 TON

This grant is funded by Orbs as part of its ecosystem grant program.

Total: $2600

Im ready to implement

@Hiyorimi can we assign to @xssnick please?

@Hiyorimi can we assign to @xssnick please?

Sure, done!

@xssnick how are we doing on this?

It is done already, waiting for reward :)

It is done already, waiting for reward :)

Have you opened a PR ?

Thank you, investigating

@Hiyorimi, it seems to me that this issue can be closed