•   Client
    MultiChain Verification Client for IOT

Why?

Securely Connecting to a Peer2Peer-Network means you need to choose a client...

Verification DB-Size Setup Bandwidth MultiChain Used in
FullNode all Blockheaders and each transaction and all full state ~400GB days all devp2p-messages sync with only one chain on servers, where full access is needed
Pruned Node all Blockheaders and each transaction, but keeps the most recent state ~40GB hours all devp2p-messages sync with only one chain on servers
Light Client only Blockheaders ~50MB minutes all blockheader and status-messages + asking for proof and state when needed sync with only one chain on any pc, laptop or at stringer IOT-Devices
Remote Client none - just trusted 0 instant only when asked one chain per url browser and apps on mobile devices
Slock.it Client verification of single result (Merkle-Proof) based on deposit backed signed blockhash 0 instant only when asked connect to multiple chains browser and apps on mobile devices and even small IOT-Devices

Features

The Client uses the IN3-Network (Trustless Incentivized Remote Client Network) to connect to any chain. This Network of Remote Client offer the features needed in order to run on small iot-devices.

Stateless

The client does no need to sync, which means you can turn on the device and start using it.

Verified

Each Request to the network can be verified with a cryptographic proof, which includes a signature of the nodes, that would lead to losing its deposit of a node, if this is wrong.

No Single Point of Failure

Based on a Decentralized Network means zero down time.

No login

No central server. All permissions are managed by cryptographic keys.

MultiChain

One client can connect to any chain, where registered nodes exist. This includes any EVM-based, even private chains, but eventually also Bitcoin and more.

Easy Integration

The JS-Client can be used as HTTP-Provider in Web. No changes in the dapp needed.

How does it work?

The IOT Layer connects devices to the Blockchain in order to control Access.

  • Nodes
  • Client
  • Proof
  • Watchdogs
The IN3-Network is a decentralized permissionless Network, where anybody can setup a node and register this node in a smart contract, called the registry. Nodes should also store a deposit, which they would lose, if they are signing wrong blockhashes. This will lead to more trust and more request will lead to more payment.

Each node may register for multiple chains. The client then can simply define per request which chain should be asked.
The client acts stateless. The only information it needs to store and update is the list of nodes in the network. This list is taken from the registry-contract on the blockchain.
Depending on the stored deposit of the nodes and a random seed the client will choose one or more nodes from the list and send the json-rpc-requests.

The client itself is a very small library easily included in a IOT-device, even if this runs on very low specs. This is possible since the device only need to be able to send HTTP-Request if needed and not synchronize each blockheader.
There are 2 version available:
  • JS-Library, which can be fetched using npm and included in any browser app.
  • A bare metal version written, ready to be included in even microcontroller
The Client is sending a JSON-RPC-Request to a randomly choosen node including a optional list of validator-nodes. The Node will execute the Request, and prepare all needed data needed in order to verify the result. In most cases this means
  • the full Blockheader
  • in case of eth_call, the call is analysed and all needed values from the state will be added including the complete Merkele-Proof.
  • the signatures of all validators signing the same blocknumber and blockhash. By doing so, these validatores would risk their previously stored deposit in case they would give a wrong hash, because these signed Blockchashes can be used to convict the signer directly in the registry-contract.
The client can then verify the response by replaying this transaction in a local evm and validate all values by using the Merkele-Proofs.
Watchdogs are nodes constantly testing other nodes with requests and asking for the blockhash. if they would give a false hash, they would lose their deposit.

Contact Us

Send us a message, so we can get in contact with you!

Please enter your name.
Please enter your valid E-mail ID.
Please enter the subject.
Please enter your message.
Your message has been sent successfully.
Sorry, error occured this time sending your message.

Markt 16, 09648 Mittweida, Germany (+49) 3727 6596470 [email protected] iot.slock.it