Skip to content

Kogarashi is a Dapp platform that gives centralization convenience and decentralization transparency to Dapp via trustless and low-cost access to the Internet

License

Notifications You must be signed in to change notification settings

sbp-parity/Kogarashi

 
 

Repository files navigation

Kogarashi Network Discord

Merged Check crates.io badge GitHub license codecov dependency status

image

Our mission is to ralize a virtual nation providing economic inclusion. Bringing Internet and IoT data to blockchain allows Dapp to issue legally bound NFT by e-sign, manage physical assets, and trade digital infra. Just a smartphone will be citizenship for this virtual nation.

We supports following functionalities.

  1. Auditable Privacy Preserving Transfers
  2. Zk Rollups Transfer Scaling
  3. Trustless Single Node Off-Chain Oracle
  4. IoT TEE Device Remote Attestation

Library

All users balances are encrypted by the homomorphic encryption by default and all transactions executions are proved by the non-interactive zero knowledge proof. The blockchain runtime is optimized its structure and execution environment for improving encryption scheme. This blockchain supports the privacy and simplicity of use at the same time. Users balances are encrypted as default and transactions are verified by zero knowledge proof on chain.

Crypto Primitives

Name Crates.io Documentation Description
zkstd crates.io Documentation The zkstd crate is in charge of basic cryptographic primitive. This includes Field, Curve, ExtensionField and so on, and allows us to easily setup cryptocraphy implementation without implementing actual algorithms and test automatically.
zero-jubjub crates.io Documentation The zero-jubjub crate is in charge of Jubjub curve arithmetic. This supports Jubjub rational point additive and scalar by finite field.
zero-bls12-381 crates.io Documentation The zero-bls12-381 crate is in charge of Bls12 381 arithmetic. This supports Bls12 381 G_1 and G_2 rational point additive and multiplicative, and scalar by finite field, and also supports F_q^2, F_q^6 and F_q^{12} extension field arithmetic.
zero-elgamal crates.io Documentation The zero-elgamal crate is in charge of additive homomorphic ElGamal arithmetic. This supports ElGamal encryption and decription.
zero-pairing crates.io badge Documentation The zero-pairing crate is in charge of Tate Pairing arithmetic. This supports miller loop algorithm and final exponentiation.

Pallet Functionalities

Name Documentation Description
pallet-plonk Plonk Tutorial $gen(d) \rightarrow srs,\ com(f, srs) \rightarrow commitment,\ V_{PC} \rightarrow acc\ or\ rej$
pallet-encrypted-balance - $get(address) \rightarrow (g^{r + r'}, g^{a + c} * b^{r + r'})$
confidential_transfer Confidential Transfer Tutorial $C = g^{b^\star}y^r \land \hat C = g^{b^\star} \hat y^r \land D = g^r \land C_L/C = g^{b'}(C_R/D)^{sk} \land y = g^{sk} \land b^\star \in [0, MAX] \land b' \in [0,MAX] $

Setup Node

$ rustup override set nightly-2022-11-14
$ rustup target add wasm32-unknown-unknown
$ cd node
$ cargo build
$ ./target/debug/node-template --dev

or

$ docker-compose up

Test

$ git submodule update --init --recursive
$ cargo test --all --release

Documentation

We describe technical stuff and how to use libraries in here.

Dev

$ mkdocs serve

Build

$ mkdocs build

Status

We are in research and development phase and this is alpha quality software. Please use at your own risk.

License

Copyright 2023-2024 The Invers INC.

This software is under the Apache License. You can check more detail here.

Follow Us

Website | Twitter | Discord | Github | Documentation

About

Kogarashi is a Dapp platform that gives centralization convenience and decentralization transparency to Dapp via trustless and low-cost access to the Internet

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 96.6%
  • HTML 3.3%
  • Dockerfile 0.1%