From fc84b3f32669215b6d3556e8bc7d1e1ba5deeb45 Mon Sep 17 00:00:00 2001 From: d0x471b <0x471@protonmail.com> Date: Wed, 11 Sep 2024 03:22:49 +0300 Subject: [PATCH] update readme --- README.md | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 51a0462..d87df16 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,16 @@ -# Mina zkApp: O1js Ecdh Secp256k1 +# ECDH secp256k1 - o1js + +## Overview +This project provides an implementation of the Elliptic Curve Diffie-Hellman (ECDH) key exchange protocol using the secp256k1 curve, built on top of the o1js library. ECDH allows two parties to securely exchange cryptographic keys over a public channel. + +## What is ECDH? +Elliptic Curve Diffie-Hellman (ECDH) is a key exchange mechanism based on elliptic curve cryptography (ECC). It allows two parties, each with a public and private key pair, to establish a shared secret over an insecure channel. This shared secret can then be used to securely encrypt further communication. + +The secp256k1 curve is a widely-used elliptic curve, particularly in blockchain and cryptocurrency applications such as Bitcoin & Ethereum. + +There are interesting use cases such as: +- [Balance hiding for DAO treasuries.](https://github.com/lyronctk/treasure-house?tab=readme-ov-file) ([Based on work done by Griffin Dunaif & Dan Boneh](https://hackmd.io/nCASdhqVQNWwMhpTmKpnKQ)). -This template uses TypeScript. ## How to build @@ -21,6 +31,11 @@ npm run testw # watch mode npm run coverage ``` +## How to run the example (run.ts) +```sh +npm run example +``` + ## License [Apache-2.0](LICENSE)