ππ Documents of the TomoChain Name Service.
TomoChain is a public blockchain for dApps. The mission is to be a leading force in building the Internet of Value, designing its infrastructure and working to create an alternative financial system which is more secure, transparent, efficient, inclusive and equitable for everyone.
BNS β or blockchain name system β is the protocol on the internet that turns human-comprehensible decentralized website names such as βwebsite.perlβ or βmywebsite.ethβ into addresses understandable by decentralized network machines.
TNS is the TomoChain Name Service, a distributed, open, and extensible naming system based on the TomoChain blockchain.
TomoChain Name Service (TNS) is governed by three smart contract components, registrar, registry, and resolver. The three smart contracts contain the core logic for the TomoChain Name Service implementation, from the ownership managment for a domain, to the global resolving layer that is reposible for connecting different tech stacks and enhances the usability for different infrastructures.
State layer is where userβs βstateβ, or userβs information and behavior, is stored. TomoChain is where these data are stored, and gives users the ability to control their own state.
TomoChain uses EVM (Ethereum Virtual Machine) in its computation layer, which is responsible for executing complicated calculations. It is in charge of managing, checking the code of smart contract on TomoChain. When a transaction occurs on TomoChain, the logic designed in EVM will determine its path that cannot be altered. Portal Network will be deploying TNS (Smart Contract Standard) on this layer that consists 3 major components.
The design of digital assets can have more functions through combing the State Layer and Computation Layer, such as : crypto assets, and identities. Those programmable assets has many more potential usages and sub-economies within. TNS includes three major component:
A registry component stores all the information relative to a domain, and can operate the set of logics to map between the TomoChain domains and its owners. A registrar component governs the domain purchase through the customized auction or trading rules. A resolver component processes the corresponding resources from wallet address to decentralized application or website on TomoChain.
On the Protocol Layer, we will be presenting our BNS (Blockchain Name Service) standards that can make the TNS more efficient and applicable. With the state, computation and component layers behind the scene, protocol layer serve as a gateway for users and developers to interact with our TNS standard.
User control layer is in charge of managing private keys to communicate with the state layer. TNS empowers users to control, set up and manage their digital asset with an easier and readable text, which could be further utilized in the next application layer.
TNS can be implemented into many other applications on TomoChain, such as wallet that can resolve TNS, dApp that utilize TNS for users identity and many more. We believe that it is an essential components to provide a better environment for both technical and non-technical users.
Continuous updating
Launched testrpc on port 8555
Running: truffle test
(this can take a few seconds)...
Using network 'development'.
Contract: TNS
β should allow registration of names (103ms)
β should register a domain (125ms)
β should check resolver interfaces (99ms)
β should not support a random interface
β should set resolver for node (138ms)
β should set text (207ms)
β should set address (185ms)
β should set multihash (200ms)
8 passing (3s)
-------------------|----------|----------|----------|----------|----------------|
File | % Stmts | % Branch | % Funcs | % Lines |Uncovered Lines |
-------------------|----------|----------|----------|----------|----------------|
contracts/ | 75 | 50 | 76 | 77.5 | |
TNS.sol | 100 | 100 | 100 | 100 | |
TNSRegistrar.sol | 100 | 50 | 100 | 100 | |
TNSRegistry.sol | 78.57 | 50 | 77.78 | 80 | 68,69,96 |
TNSResolver.sol | 66.67 | 50 | 69.23 | 68.42 |... ,99,130,141 |
-------------------|----------|----------|----------|----------|----------------|
All files | 75 | 50 | 76 | 77.5 | |
-------------------|----------|----------|----------|----------|----------------|
Istanbul coverage reports generated
Cleaning up...
Shutting down testrpc-sc (pid 83549)
Done.
TNS Contract | Network | Contract Address | Transaction Hash |
---|---|---|---|
Registry | Testnet | 0xdf9e5ce912412ab6af0dd46acff0ffc112bbe36e | 0x971c1ae1ccc10bf97bdebf24deb455362d847011d3cccb6fd517dd0e974ec490 |
Registrar | Testnet | 0xb4cc8deec867c8352ec8f86afc945590629ae260 | 0xdf41eb54713ba8c931ef9c64a677b55759ee874606f3bb51e9b0f52434e68014 |
Resolver | Testnet | 0x89e77b691c8e3718b808015dbca094d35d7c37cc | 0xd66e858bbde4f95e30886c1d4d9dbaa76ea14d85628db4dcb50d087a8a86de22 |
Link: https://faucet.testnet.tomochain.com/
Paste the bytecode from Remix of the smart contract
TNS Registry TNS Registrar TNS Resolver
See CHANGELOG.md.
See CONTRIBUTING.md for how to help out.
See LICENSE for details.