Ontology Developer Center
DISCOVERCOMMUNITYSUPPORT
  • Introduction
  • Discover Ontology
  • Getting Started
  • Glossary
  • Decentralized Identity and Data
    • ONT ID
      • Decentralized Identifiers
        • Method Specification for Ontology
        • Method Specification for Ethereum
        • Method Specification for BSC
      • Verifiable Credentials
        • Anonymous Credentials
      • ONT Login
        • Scenarios
        • Protocol Specification
        • Front-end JavaScript SDK
          • Integration and Usage
          • API Reference
        • Front-end UI SDK
          • Integration and Usage
          • API Reference
        • Back-end Go SDK
          • Integration and Usage
          • API Reference
        • Back-end Java SDK
          • Integration and Usage
          • API Reference
      • ONT TAG
        • Workflow
        • API Reference
      • Mercury
      • OScore
    • DDXF
      • Components and Interfaces
      • GREP
      • Overall Scheme
      • Solutions
        • Marketplace
          • Deployment
          • Scenarios
          • SaaS Tenant
          • Java SDK
        • Data Storage
          • Deployment
          • Java SDK
        • Resource Auditor
        • Offline Judge
      • Use Cases
        • E-Shops
  • ONTOLOGY ELEMENTS
    • Smart Contracts
      • Types of smart contracts
    • Token Protocols
    • Consensus Mechanism
    • Ontology Oracle
      • Oracle Process Flow
  • GUIDES & TUTORIALS
    • Development Guides
      • dApp Development
        • Using the dAPI
        • Data Synchronization
      • Smart Contract Development
        • EVM Contract
          • Development Environment and Tools
          • Wallet Setup
          • Contract Development
          • How to Deploy a Smart Contract with GetBlock
        • NeoVM Contract
          • Development tools and environment
          • Launching the IDE
          • Writing and editing program logic
          • Deploying and testing on private net
        • WASM Contract
          • Development Environment
          • Project Initiation - Hello World
          • Creating your own project
          • Development using SmartX
          • Runtime API
          • Contract Fundamentals
          • Inter-contract Interaction
          • Developing Contracts in C++
        • Publish Contract Source Code
    • Integration Guides
      • dApp Integration
        • dAPI Integration
          • Chrome Plugin
          • Mobile wallet dApp
          • QR code mechanism
          • Wake call mechanism
        • Cocos 2D-x
        • Unity 3D applications
      • Mobile Wallet Integration
        • SDK integration
        • dAPI Integration
          • In-wallet applications
          • QR code mechanism
          • Wake call mechanism
        • Stake
      • Using ONT ID
      • Exchange Integration
        • Exchange Docking Guide
        • Exchange API
      • Ontology for dApp Stores
    • EVM & Token Decimals Upgrade
  • ONTOLOGY NODE
    • Abstract
    • Node Deployment
      • Standard Node
      • Rosetta Node
    • Interacting with a Public Node
  • DEVELOPER TOOLS
    • dApp Development Framework
      • Punica CLI
      • Punica boxes
      • Solo Chain
    • IDE
    • APIs
      • HTTP API
        • Restful
        • WebSocket
        • Remote Procedure Call (RPC)
      • Explorer v2 API
        • Block
        • Address
        • Contract
        • Token
        • Transactions
        • ONT ID
        • Summary
        • Node
      • Native Token API
        • ONT Contract API
        • ONG Contract API
      • ONT ID Contract API
      • Web3 API
      • OScore Open API
      • Rosetta Node API
        • Data API
        • Construction API
      • DToken Contract API
      • DDXF
        • Marketplace Contract API
        • Storage API
      • Governance API
    • Digital Wallet
      • Chrome Plugin provider
      • Chrome Plugin dAPI
      • Mobile version provider
      • Mobile version dAPI
    • SDKs
    • Signing Server
      • Installation
      • API reference
  • COMMUNITY
    • Ecosystem Programs
    • Community Libraries
    • Community Events
    • Community Channels
    • Core Contributors
  • SUPPORT
    • FAQ
      • Basic blockchain concepts
      • Ontology Nodes
      • Ontology token protocols
      • Smart contracts
      • SDKs and APIs
    • Contact Us
Powered by GitBook
On this page
  • What is a mnemonic phrase?
  • What is keystore?
  • What is a plaintext and WIF private key?
  • What does the rollback mechanism refer to?

Was this helpful?

  1. SUPPORT
  2. FAQ

Basic blockchain concepts

Queries regarding concepts related to blockchain technology

What is a mnemonic phrase?

A mnemonic phrase is an alternative form of representation for a private key. It was first proposed in the BIP39 mnemonic phrase scheme. Its purpose is to allow users to remember complex private key strings. Mnemonic phrases usually consist of 12, 15, 18, or 21 words. These words are selected from a fixed database of 2049 words, and the sequence of the words is also determined using an algorithm.

The mnemonic phrase mechanism has been put in place to make the process of memorizing the private key a little easier, but it is crucial to save the mnemonic phrase at a secure location, since anyone with access to this mnemonic phrase can gain complete control of the wallet and all of its assets.

It is also important to understand that their is only one chance to save the mnemonic phrase, i.e, at the time of registration. Please ensure that it is saved in a secured location.

What is keystore?

Keystore allows the user to store the private key in an encrypted form. The custom set password in tandem with the ONT ID puts in place a safeguard to the encrypted private key and the wallet.

It is extremely important to take note of this password. In case the password is lost, there is no way for ONTO to retrieve or change it, and access to the wallet account will be lost completely.

What is a plaintext and WIF private key?

Plaintext private key is the randomly generated private key in the form of a string that is corresponds to a particular wallet account. It is used to carry out authentication and the signature process necessary for any transaction.

The Wallet Import Format (WIF) private key is a format that is used to represent the private key using Base58 checksum encoding.

Anybody with access to WIF or the private key to an account can assume full control of that account and carry out transactions or even change the login password of the said account without knowing the original password.

What does the rollback mechanism refer to?

The rollback mechanism is a safeguard that has been put in place to insure consistency and integrity of the blockchain data. A transaction always depends on a set of conditions such that only in the case that all the conditions are fulfilled does the transaction proceed. In case any one of the conditions fails, the transaction as a whole fails, and thus all the changes that have occurred as a consequence of the said transaction should be rolled back, so to speak, to their original state before the transaction was carried out.

The respective functions involved in the transaction return an error or throw exceptions when this occurs, and that is how the rollback is initiated.

With respect to Ontology, Compiler v1.0 can use raise Exception("error msg"), and compiler v2.0 can use both raise Exception("error msg") or assert(condition).

It is recommended that developers use compiler v2.0's assert() method, as it has a special property that ensures no transaction fees are levied if the function returns an error.

PreviousFAQNextOntology Nodes

Last updated 5 years ago

Was this helpful?