Git Product home page Git Product logo

khaos's Introduction

Build status

Important addresses

Khaos callback sender Address
Ethereum Mainnet 0x1c969CD76818769205F52BC25b93e2aFE05B386E
Ethereum Ropsten 0x7654a20D1502471230a6C454c908c73cF040e22C
Arbitrum One 0xc9f64eC1AADdD00ddf68fcDe85397d5C29197C95
Arbitrum Rinkeby 0x913404b5d02E9F685D793f23FD8774312668CE1B
Polygon Mainnet 0xBc3DeffcC9916EAd1585999697cBD2A3361165fC
Polygon Mumbai ใ€€ใ€€ใ€€ใ€€ 0x2A655dd352c98260639726E60a04Ed804A0B790A

Keep in mind that these addresses are subject to change in the future. If you use these addresses in your smart contract, you will also need to implement a mechanism to change their values.

What's Khaos?

Khaos is an oracle service designed to bring Internet data into blockchains while keeping secret information, such as secret tokens, under wraps. Initially, we will only support Dev Protocol, but we plan to open it up in the future.

How does it work?

Khaos has two interfaces, Authentication, and Oraclize. The authentication interface authenticates that the user is a credential holder and returns a unique public key. The oraclize interface brings data across the Internet to the blockchain while hiding secret information through public keys.

How Khaos's authentication interface works

When Khaos receives an authentication request from a user, it executes an authentication method. The authentication request contains secret information for authentication (usually a secret token) and a message (like a user ID) that expects to be authenticated by that secret information. If the authentication method is passed, Khaos returns the public signature paired with the secret information. By retrieving the message with its public signature, it guarantees the authenticity of the message while hiding the secret information. An authentication method executed by an authentication request is freely extendable by the user. To read more detail, check: Khaos Startar Kit and a guide article

How Khaos Stores Confidentials

Created by SequenceDiagram.org

How Khaos's oraclize interface works

Khaos monitors some contract events in batches. The target of the monitoring can be any address that a user deploys to. The user-deployed contract makes an oraclize request to Khaos by emitting a specified event (a user-defined name. i.g., Query) according to the interface; when Khaos receives the oraclize request, it fetches some data from the Internet according to the event messages. The data is fetched into blockchains by calling the contract's callback method according to the event messages. The data fetching method executed by the oraclize request is freely extendable by the user. An authentication method executed by an authentication request is freely extendable by the user. To read more detail, check: Khaos Startar Kit and a guide article

How Khaos Oraclizes

Created by SequenceDiagram.org

khaos's People

Contributors

0xkenta avatar aggre avatar akira-taniguchi avatar kazu80 avatar renovate-bot avatar renovate[bot] avatar vinzvinci avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

khaos's Issues

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Error type: undefined. Note: this is a nested preset so please contact the preset author if you are unable to fix it yourself.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • Update dependency @types/sinon to v10.0.20
  • Update dependency rimraf to v5.0.7
  • Update dependency web3 to v1.10.4
  • Update dependency @devprotocol/util-ts to v3.1.0
  • Update dependency dotenv to v16.4.5
  • Update dependency eslint to v8.57.0
  • Update dependency eslint-config-prettier to v8.10.0
  • Update actions/checkout action to v4
  • Update actions/setup-node action to v4
  • Update dependency @ava/typescript to v5
  • Update dependency @azure/cosmos to v4
  • Update dependency @azure/functions to v4
  • Update dependency @devprotocol/util-ts to v4
  • Update dependency @types/node to v20
  • Update dependency @types/sinon to v17
  • Update dependency ava to v6
  • Update dependency eslint to v9
  • Update dependency eslint-config-prettier to v9
  • Update dependency eslint-plugin-functional to v6
  • Update dependency husky to v9
  • Update dependency sinon to v18
  • Update typescript-eslint monorepo to v7 (major) (@typescript-eslint/eslint-plugin, @typescript-eslint/parser)
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/test.yml
  • actions/checkout v3
  • actions/setup-node v3
npm
package.json
  • @azure/cosmos 3.17.3
  • @azure/functions 3.5.1
  • @devprotocol/khaos-core 1.6.0
  • @devprotocol/khaos-functions 0.4.2
  • @devprotocol/util-ts 3.0.0
  • bent 7.3.12
  • discord-webhook-ts 5.0.0
  • ethers 5.7.2
  • jsonwebtoken 9.0.0
  • ramda 0.29.0
  • web3 1.10.0
  • @ava/typescript 4.0.0
  • @types/bent 7.3.3
  • @types/dotenv 8.2.0
  • @types/jsonwebtoken 9.0.2
  • @types/node 18.16.18
  • @types/ramda 0.29.2
  • @types/sinon 10.0.15
  • @typescript-eslint/eslint-plugin 5.60.1
  • @typescript-eslint/parser 5.60.1
  • ava 5.3.1
  • dotenv 16.3.1
  • eslint 8.43.0
  • eslint-config-prettier 8.8.0
  • eslint-plugin-functional 4.4.1
  • husky 8.0.3
  • prettier 2.8.8
  • rimraf 5.0.1
  • sinon 15.2.0
  • typescript 5.0.2

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.