Git Product home page Git Product logo

ons's Introduction

Ontology Name Service

๐Ÿ“–๐Ÿ” Documents of the Ontology Name Service.

Overview

What is Ontology?

Ontology is a public chain which dedicated to letting projects of all shapes and sizes. The Ontology network combines a distributed identity system, distributed data exchange, distributed data collaboration, distributed procedure protocols, distributed communities, distributed attestation, and various industry-specific modules. Via integrating all the infrastructures together, Ontology becomes a trust network which is cross-chain, cross-system, cross-industry, cross-application, and cross-device.

๐Ÿ’ก What is BNS?

BNS โ€“ or blockchain name system โ€“ is the protocol on the internet that turns human-comprehensible decentralized website names such as 'website.neo' or 'mywebsite.ont' into addresses understandable by decentralized network machines.

๐Ÿ“ Description

ONS is the Ontology Name Service, a distributed, open, and extensible naming system based on the Ontology blockchain.

๐Ÿ“š Documents

Table of Contents

๐Ÿ“ Ontology in Web3.0

Ontology plays an connecting and entry layer in Web3.0 services. It connects with Ontology wallet, ONT ID, blockchain server and decentralized resources.

web3

๐Ÿ—‚๏ธ Ontology Technical Stack

Along down with the y-axis, the following picture shows the Web3 technical stacks of Ontology ecosystem. Each of the layers is based on the modules of the previous one and the fundamental base of all layers is the state layer which is Ontology protocol. The rapidly evolving development on each layer brings the infrastructure more mature, and that is crucial to give the robustness of Web3. Technical Stack

State Layer

Ontology protocol provides a robust trust network system to allow many business cases can be implemented on top of it. This layer is a crucial part for the Web3, because each of the layer stores related state information in this network, users can now own and control their identities and operations towards the decentralized web services. State Layer

Computation Layer

There are three systems that provide the functionalities allowing humans to instruct the state layer to do what rules are been made. Ontology core has native support some of the smart contract features, NEO-VM / WasmVM for compiling different smart contracts programmed by various dynamic languages. Computation Layer

Component Layer

The component layer is built on top of the computation layer. The components are set of standardized smart contract templates or with specific patterns. Such as OEP-4 described what the standard token interface should have. The designs of a new type of digital value components and much more experimentation expands more business possibilities. Component Layer

Scalability / Transfer Layer

There are multiple scalability enhancement solutions on layer1 and layer2. The solutions allow the decentralized network to increase the transaction processing capacity. Ontology will take the sub-chains, side-chains, and storage sharding as the higher priority in researching and developing. Transfer Layer

Protocol Layer

Ontology Name Service contains three main components, registrar, registry, and resolver smart contract components, these contracts are in charge of the registering ownership of the domain, storing the ownership of the domain, and the mapping information for the domain. BNS protocol can facilitate the Ontology Name Service to enhance the usability, reduce the complexity, and keep the flexibility. Protocol Layer

User Control Layer

The main part of the user control layer is how users manage their accounts. If there is no wallet application supporting the blockchain protocol, the user will have to interact via the command line interface to manage their private keys, transactions, and any operations on-chain. The user experience of this layer has a great impact on the blockchain adoption. User Control Layer User Control Layer

Application Layer

By utilizing the technologies provided by different layers above, there comes out various real use cases and opportunities. If a blogger or any content creator wants to accept crypto assets as the payment, they can utilize the Ontology domain names governs by the smart contract for their receiving wallet address. For example, send any tokens on Ontology via simply typing 'yourfriend.ont' and that's it. Application Layer

Introduction

Install Ontology

Clone the source code and install dependency

$ go get github.com/ontio/ontology
$ cd $GOPATH/src/github.com/ontio/ontology
$ glide install

Make source code

$ make all

Create wallet

./ontology account add -d

Will create an ontology wallet

Use default setting '-t ecdsa -b 256 -s SHA256withECDSA'
	signature algorithm: ecdsa
	curve: P-256
	signature scheme: SHA256withECDSA
Password:
Re-enter Password:
Index:2
Label:
Address:AbfNqEyvZJuNzguXTSP6sbioySZpsdYfeY
Public key:03ed07576c4d745edc6dd8938fc7cd24301523d6f95f71c4fc6b283c7184bffcfd
Signature scheme:SHA256withECDSA
Create account successfully.

wallet

Start testnet

./ontology --networkid 2

start

Smart Contract

Using smartx

Smart Contract Language

  • C#
  • Python
  • JavaScript (Coming soon)

Choosing smartx language

language

Choosing a smartx template, using "Domain"

smartx-1

Source code

smartx-2

Compile smartx

smartx-3

๐Ÿ“ฃ Contributing

See CONTRIBUTING.md for how to help out.

๐Ÿ—’ Licence

See LICENSE for details.

ons's People

Contributors

goodvincenttu avatar phyrextsai avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

ons's Issues

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.