Glossary

A summary of Cryptocurrency terminology

Glossary

A

Address

An address represents an account. For EOA, the address is derived as the last 20 bytes of the public key controlling the account, e.g., cd2a3d9f938e13cd947ec05abc7fe734df8dd826. This is a hexadecimal format (base 16 notation), which is often indicated explicitly by appending 0x to the address. Web3.js and console functions accept addresses with or without this prefix but for transparency we encourage their use. Since each byte of the address is represented by 2 hex characters, a prefixed address is 42 characters long.

A.S.I.C

Application-specific integrated circuit, in this case referring to an integrated circuit custom built for cryptocurrency mining.

B

Balance

The amount of cryptocurrency (in this case) belonging to an account.

Block

A block is a package of data that contains zero or more transactions, the hash of the previous block (“parent”), and optionally other data. The total set of blocks, with every block except for the initial “genesis block” containing the hash of its parent, is called the blockchain and contains the entire transaction history of a network. Note that some blockchain-based cryptocurrencies use the word “ledger” instead of blockchain; the two are roughly equivalent, although in systems that use the term “ledger” each block generally contains a full copy of the current state (e.g. currency balances, partially fulfilled contracts, registrations) of every account allowing users to discard outdated historical data.

Blockchain

An ever-extending series of data blocks that grows as new transactions are confirmed as part of a new block. Each new block is chained to the existing blockchain by a cryptographic proof-of-work.

Block Header

The data in a block which is unique to its content and the circumstances in which it was created. It includes the hash of the previous block’s header, the version of the software the block is mined with, the timestamp and the merkle root hash of the contents of the block.

Block Propagation

The process of transmitting a confirmed block to all other nodes in the network.

Blocktime

The average time interval between the mining of two blocks.

Block Validation

The checking of the coherence of the cryptographic signature of the block with the history stored in the entire blockchain.

C

C Language

C is a high-level and general-purpose programming language that is ideal for developing firmware or portable applications. Originally intended for writing system software, C was developed at Bell Labs by Dennis Ritchie for the Unix Operating System in the early 1970s.

Ranked among the most widely used languages, C has a compiler for most computer systems and has influenced many popular languages – notably C++.

C++

C++ is a general-purpose object-oriented programming (OOP) language, developed by Bjarne Stroustrup, and is an extension of the C language. It is therefore possible to code C++ in a "C style" or "object-oriented style." In certain scenarios, it can be coded in either way and is thus an effective example of a hybrid language.

Checksum

A count of the number of bits in a transmission that is included with the unit so that the receiving end can verify that the entirety of the message has been transmitted.

Collusion

In an incentivized protocol scenario, when a number of participants play together (conspire) to game the rules to their own benefit.

Compiler

A program that translates pieces of code written in high level languages into low level executable code.

Consortium Chain

A blockchain where the consensus process is controlled by a pre-selected set of nodes.

Consensus

The agreement among all nodes in the network about the state of the HALO Platform network.

Contract

A persistent piece of code on the HALO Platform blockchain that encompasses a set of data and executable functions. These functions execute when HALO Platform transactions are made to them with certain input parameters. Based on the input parameters, the functions will execute and interact with data within and outside of the contract.

Cryptocurrency

A cryptocurrency is a digital or virtual currency that uses cryptography for security. A cryptocurrency is difficult to counterfeit because of this security feature. A defining feature of a cryptocurrency, and arguably its most endearing allure, is its organic nature; it is not issued by any central authority, rendering it theoretically immune to government interference or manipulation.

Cryptoeconomics

The economics of cryptocurrencies.

Crypto-Fuel

Similar to ‘gas’, referring to the amount of cryptocurrency required to power a transaction.

Cryptography

Is the science of providing security for information. It has been used historically as a means of providing secure communication between individuals, government agencies, and military forces. Today, cryptography is a cornerstone of the modern security technologies used to protect information and resources on both open and closed networks.

D

Daemon

A computer program that runs as a background process instead of in direct control by an interactive user.

D.A.O

decentralized autonomous organization DAO is type of contract on the blockchain (or a suite of contracts) that is supposed to codify, enforce or automate the workings of an organization including governance, fund-raising, operations, spending and expansion.

Decentralization

The concept of moving the control and execution of computational processes away from a central entity.

Decentralized Application (DAPP)

Service that operates without a central trusted party. An application that enables direct interaction/agreements/communication between end users and/or resources without a middleman.

Deposit

Digital property placed into a contract involving another party such that if certain conditions are not satisfied that property is automatically forfeited and either credited to a counterparty as insurance against the conditions, or destroyed (= burnt = equally distributed) or donated to some charitable funds.

Difficulty

In very general terms, the amount of effort required to mine a new block.

Digital Identity

The set of cryptographically verifiable transactions signed by the same public key define the digital identity’s behavior. In many real world scenarios (voting) it is desireable that digital identities coincide with real world identities. Ensuring this without violence is an unsolved problem.

Digital Signature

A digital signing algorithm is a process by which a user can produce a short string of data called a "signature" of a document using a private key such that anyone with the corresponding public key, the signature and the document can verify that (1) the document was "signed" by the owner of that particular private key, and (2) the document was not changed after it was signed. Note that this differs from traditional signatures where you can scribble extra text onto a document after you sign it and there's no way to tell the difference; in a digital signature any change to the document will render the signature invalid.

Discovery (peer)

The process of ‘gossiping’ with other nodes in the network to find out the state of other nodes on the network.

Distributed Hash Table (DHT)

A distributed hash table (DHT) is a class of a decentralized distributed system that provides a lookup service similar to a hash table: (key, value) pairs are stored in a DHT, and any participating node can efficiently retrieve the value associated with a given key.

Double Spend

A deliberate blockchain fork, where a user with a large amount of mining power sends a transaction to purchase some produce, then after receiving the product creates another transaction sending the same coins to themselves. The attacker then creates a block, at the same level as the block containing the original transaction but containing the second transaction instead, and starts mining on the fork. If the attacker has more than 50% of all mining power, the double spend is guaranteed to succeed eventually at any block depth. Below 50%, there is some probability of success, but it is usually only substantial at a depth up to about 2-5; for this reason, most cryptocurrency exchanges, gambling sites and financial services wait until six blocks have been produced (“six confirmations”) before accepting a payment.

E

Elliptic curve (cryptography)

Refers to an approach to public-key cryptography based on the algebraic structure of elliptic curves over finite fields.

Encryption

Encryption is the conversion of electronic data into a form unreadable by anyone except the owner of the correct decryption key. It can further be described as a process by which a document (plaintext) is combined with a shorter string of data, called a key (e.g. c85ef7d79691fe79573b1a7064c19c1a9819ebdbd1faaab1a8ec92344438aaf4), to produce an output (ciphertext) which can be “decrypted” back into the original plaintext by someone else who has the key, but which is incomprehensible and computationally infeasible to decrypt for anyone who does not have the key.

Escrow

If two mutually-untrusting entities are engaged in commerce, they may wish to pass funds through a mutually trusted third party and instruct that party to send the funds to the payee only when evidence of product delivery has been shown. This reduces the risk of the payer or payee committing fraud. Both this construction and the third party is called escrow.

E.O.A

Externally Owned Account. An account controlled by a private key. If you own the private key associated with the EOA you have the ability to send ether and messages from it. Contract accounts also have an address, see Accounts. EOAs and contract accounts may be combined into a single account type.

Exchange

An online marketplace which facilitates the exchange of crypto or fiat currencies based on the market exchange rate.

F

Fast Sync

Instead of processing the entire block-chain one link at a time, and replay all transactions that ever happened in history, fast syncing downloads the transaction receipts along the blocks, and pulls an entire recent state database.

Faucet

A website that dispenses (normally testnet) cryptocurrencies for free.

Fibonacci Scale

In Agile software development, the Fibonacci scale consists of a sequence of numbers used for estimating the relative size of user stories in points. The Agile methodology is based on the concept of working iteratively in short sprints, typically two weeks long, where the requirements and development are continuously being improved. The Fibonacci sequence consists of numbers that are the summation of the two preceding numbers, starting with [0, 1]. Agile methodology uses the Fibonacci sequence to achieve better results by reducing complexity, effort, and doubt when determining the development time required for a task, which can range from few minutes to several weeks

G

Gas

Name for the cryptofuel that is consumed when code is executed by the EVM. The gas is paid for execution fee for every operation made on a HALO Platform blockchain.

Gas Limit

Gas limit can apply to both individual transactions, see transaction gas limit and to blocks, block-gas-limit. For individual transactions, the gas limit represents the maximum amount of gas you indicate you are willing to pay for a contract execution transaction. It is meant to protect users from getting their ether depleted when trying to execute buggy or malicious contracts. The block gas limit represents the maximum cumulative gas used for all the transactions in a block. With the launch of HALO Platform, the block gas limit floor will increase from 3,141,592 gas to 4,712,388 gas (~50% increase).

Gas Price

Price in HALO Coin of one unit of gas specified in a transaction.

Genesis Block

The first block in a blockchain.

G.H.O.S.T

Greedy Heaviest-Observed Sub-Tree is an alternative chain-selection method that is designed to incentivize stale blocks (uncles) as well, thus reducing the incentive for pool mining. In GHOST, even the confirmation given by stale blocks to previous blocks are considered valid, and the miners of the stale blocks are also rewarded with a mining reward.

H

HAPI

(pronounced "happy") is a web framework for building web applications, APIs and services. It's extremely simple to get started with, and extremely powerful at the same time.

Hard Forks

A hard fork term refers to a situation when a blockchain splits into two separate chains in consequence of the use of two distinct sets of rules trying to govern the system.

Hash

A cryptographic function which takes an input (or ‘message’) and returns a fixed-size alphanumeric string, which is called the hash value (sometimes called a message digest, a digital fingerprint, a digest or a checksum). A hash function (or hash algorithm) is a process by which a document (i.e. a piece of data or file) is processed into a small piece of data (usually 32 bytes) which looks completely random, and from which no meaningful data can be recovered about the document, but which has the important property that the result of hashing one particular document is always the same.

Additionally, it is crucially important that it is computationally infeasible to find two documents that have the same hash. Generally, changing even one letter in a document will completely randomize the hash; for example, the SHA3 hash of “Saturday” is c38bbc8e93c09f6ed3fe39b5135da91ad1a99d397ef16948606cdcbd14929f9d, whereas the SHA3 hash of “Caturday” is b4013c0eed56d5a0b448b02ec1d10dd18c1b3832068fbbdc65b98fa9b14b6dbf. Hashes are usually used as a way of creating a globally agreed-upon identifier for a particular document that cannot be forged.

Hashrate

The number of hash calculations made per second.

Hexadecimal

Common representation format for byte sequencing. Its advantage is that values are represented in a compact format using two characters per byte (the characters [0-9][a-f]).

## HLL (obsolete)

Acronym for Higher Level Language.

I

I.C.A.P

Interexchange Client Address Protocol, an IBAN-compatible system for referencing and transacting to client accounts aimed to streamline the process of transferring funds, worry-free between exchanges and, ultimately, making KYC and AML concerns a thing of the past.

I.C.A.P Format

The format of the IBANs defined using the Inter-exchange Client Address Protocol.

Incentive Compatibility

A protocol is incentive-compatible if everyone is better off “following the rules” than attempting to cheat, at least unless a very large number of people agree to cheat together at the same time (collusion).

Identity

A set of cryptographically verifiable interactions that have the property that they were all created by the same person.

IPC

Interprocess communication (IPC) is a set of programming interfaces that allow a programmer to coordinate activities among different program processes that can run concurrently in an operating system.

Issuance

The minting and granting of new cryptocurrency to a miner who has found a new block.

J

J.S

JavaScript

J.S.O.N

JavaScript Object Notation or JSON is an open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types (or any other serializable value). It is a very common data format used for asynchronous browser–server communication, including as a replacement for XML in some AJAX-style systems.

JSON is a language-independent data format. It was derived from JavaScript, but as of 2017 many programming languages include code to generate and parse JSON-format data. The official Internet media type for JSON is application/json. JSON filenames use the extension .json.

K

Keyfile

Every account’s private key/address pair exists as a single keyfile. These are JSON text files which contains the encrypted private key of the account, which can only be decrypted with the password entered during account creation.

L

Log Event

Contracts are triggered by transactions executed as part of the block verification. If conceived of as a function call, contract execution is asynchronous, and therefore they have no return value. Instead contracts communicate to the outside world with log events. The log events are part of the transaction receipt which is produced when the transaction is executed.

The receipts are stored in the receipt trie, the integrity of which is guaranteed by the fact that the current root of the receipt trie is part of the block header alongside the roots of state and state-trie. In a broad sense from the external perspective receipts are part of the Ethereum system state except that they are not readable contracts internally.

Light Client

A client that downloads only a small part of the blockchain, allowing users of low-power or low-storage hardware like smartphones and laptops to maintain almost the same guarantee of security by sometimes selectively downloading small parts of the state without needing to spend megabytes of bandwidth and gigabytes of storage on full blockchain validation and maintenance.

A client program that allows users in low-capacity environments to still be able to execute and check the execution of transactions without needing to run a full HALO Platform node.

M

Memory-Hard

Memory hard functions are processes that experience a drastic decrease in speed or feasibility when the amount of available memory even slightly decreases.

Merkle Patricia Tree

Merkle Patricia trees provide a cryptographically authenticated data structure that can be used to store all (key, value) bindings. They are fully deterministic, meaning that a Patricia tree with the same (key,value) bindings is guaranteed to be exactly the same down to the last byte and therefore have the same root hash, provide O(log(n)) efficiency for inserts, lookups and deletes, and are much easier to understand and code than more complex comparison-based alternatives like red-black trees.

Message

A data transfer mechanism contracts use to communicate with other contracts. Messages can also be described as virtual objects that are never serialized and exist only in the HALO Platform execution environment.

Micropayment

A micropayment is a financial transaction involving a very small sum of money usually occurs online. A fraction of a crypto coin. (.00001 Halo Coin)

N

N.A.T

Network address translation (NAT) is a methodology of remapping one IP address space into another by modifying network address information in Internet Protocol (IP) datagram packet headers while they are in transit across a traffic routing device.

Net Neutrality

Is the principle that Internet service providers must treat all data on the Internet the same, and not discriminate or charge differently by user, content, website, platform, application, type of attached equipment, or method of communication.[4] For instance, under these principles, internet service providers are unable to intentionally block, slow down or charge money for specific websites and online content

Network Hashrate

The number of hash calculations the network can make per second collectively.

Network I.D.

Network identity (network ID) is a portion of the TCP/IP address that is used to identify individuals or devices on a network such as a local area network or the Internet. Network ID is designed to ensure the security of a network and related resources.

Nonce

Number Used Once or Number Once. A nonce, in information technology, is a number generated for a specific use, such as session authentication. Typically, a nonce is some value that varies with time, although a very large random number is sometimes used. In general usage, nonce means “for the immediate occasion” or “for now.” In the case of Blockchain Proof of Work scenarios, the hash value, found by a Miner, matching the network’s Difficulty thus proving the Block Validity is called Nonce as well.

P

Peer

Other computers on the network also running a HALO Platform masternode with an exact copy of the blockchain that you have.

Peer to Peer Network

A network of computers that are collectively able to perform functionalities normally only possible with centralized, server-based services.

Pegging

Locking down the exchange rate of the coins/tokens in two chains (usually a main and a side chain) in a certain direction.

2-Way Pegging

Locking down the exchange rate of the coins/tokens in two chains (usually a main and a side chain) in both directions.

Pending Transaction

A transaction that is not yet confirmed by the HALO Platform network.

Port

A network port is a communication endpoint used by a one of the existing standards of establishing a network conversation (e.g. TCP, UDP).

Proof-Of-Stake

An alternative method of mining blocks that require miners to demonstrate their possession of a certain amount of the currency of the network in question. This works on the principle that miners will be disincentivized to try to undermine a network in which they have a stake. PoS is less wasteful than PoW, but is still often used together with it to provide added security to the network.

Proof-Of-Work (P.O.W)

Often seen in its abbreviated form “PoW”, it refers to a mathematical value that can act as the proof of having solved a resource and time consuming computational problem.

Protocol

A standard used to define a method of exchanging data over a computer network.

Presale

Sale of cryptocurrency before the actual launch of the network.

Private Chain

A fully private blockchain is a blockchain where write permissions are kept centralized to one organization.

Public key encryption

A special kind of encryption where there is a process for generating two keys at the same time (typically called a private key and a public key), such that documents encrypted using one key can be decrypted with the other. Generally, as suggested by the name, individuals publish their public keys and keep their private keys to themselves.

Private Key

A private key is a string of characters known only to the owner, that is paired with a public key to set off algorithms for text encryption and decryption.

Public Key

A string of characters derived from a private key that can be made public. The public key can be used to verify the authenticity of any signature created using the private key.

R

Reputation

The property of an identity that other entities believe that identity to be either (1) competent at some specific task, or (2) trustworthy in some context, i.e., not likely to betray others even if short-term profitable.

R.P.C

Remote Procedure Call, a protocol that a program uses to request a service from a program located in another computer in a network without having to understand the network details.

S

Serialization

The process of converting a data structure into a sequence of bytes. HALO Platform internally uses an encoding format called recursive-length prefix encoding (RLP)

Sharding

The splitting of the space of possible accounts (contracts are accounts too) into subspaces, for example, based on first digits of their numerical addresses. This allows for contract executions to be executed within ‘shards’ instead of network wide, allowing for faster transactions and greater scalability.

Signing

Producing a piece of data from the data to be signed using your private key, to prove that the data originates from you.

Sidechain

A blockchain that branches off a main blockchain and checks in periodically with the main blockchain. Besides that it runs independently from the main chain, and any security compromises in the sidechain will not affect the main chain.

Solidity

Solidity is a high-level language whose syntax is similar to that of JavaScript and it is designed to compile to code for the blockchain.

S.P.V Client

A client that downloads only a small part of the blockchain, allowing users of low-power or low-storage hardware like smartphones and laptops to maintain almost the same guarantee of security by sometimes selectively downloading small parts of the state without needing to spend megabytes of bandwidth and gigabytes of storage on full blockchain validation and maintenance. See light client.

Stale

A stale is a block that is created when there is already another block with the same parent out there; stales typically get discarded and are wasted effort.

State

Refers to a snapshot of all balances and data at a particular point in time on the blockchain, normally referring to the condition at a particular block.

Syncing

The process of downloading the entire blockchain.

T

A Token

In general, a token is an object that represents something else, such as another object (either physical or virtual), or an abstract concept as, for example, a gift is sometimes referred to as a token of the giver's esteem for the recipient. In computers, there are a number of types of tokens.

  1. In a token ring network, the presence of a token (which is simply a particular bit setting) in a continually circulating transmission stream allows a device to change the bit setting (thus taking the token) and put a message in its place. The receiver of the message elsewhere in the token ring network removes the message and resets the bit setting (thus putting the token back) so that someone else in the ring of devices will be able to have a turn at using that message space.

  2. A programming token is the basic component of source code . Character s are categorized as one of five classes of tokens that describe their functions (constants, identifiers, operators, reserved words, and separators) in accordance with the rules of the programming language.

  3. A security token is a physical device, such as a special smart card , that together with something that a user knows, such as a PIN , will enable authorized access to a computer system or network.

Token System

A fungible virtual good that can be traded. More formally, a token system is a database mapping addresses to numbers with the property that the primary allowed operation is a transfer of N tokens from A to B, with the conditions that N is non-negative, N is not greater than A’s current balance, and a document authorizing the transfer is digitally signed by A. Secondary “issuance” and “consumption” operations may also exist, transaction fees may also be collected, and simultaneous multi-transfers with many parties may be possible. Typical use cases include currencies, cryptographic tokens inside of networks, company shares and digital gift cards.

Transaction

The signed data package that stores a message to be sent from an externally owned account. Simply put, a transaction describes a transfer of information from an EOA to another EOA or a contract account.

Transaction Fee

Also known as gas cost, it is the amount of HALO Coin that the miners will charge for the execution of your transaction. Other contract options will generate transaction fees as well. I.E. private, secure, and instant.

Trustless

Refers to the ability of a network to trustworthily mediate transactions without any of the involved parties needing to trust anyone else.

U

Uncle

Uncles are blockchain blocks found by a miner, when a different miner has already found another block for the corresponding place in the blockchain. They are called “stale blocks”. The parent of an Uncle is an ancestor of the inserting block, located at the tip of the blockchain. In contrast to the Bitcoin network.

Uncle Rate

The number of uncles produced per block.

Unique Identity

A set of cryptographically verifiable interactions that have the property that they were all created by the same person, with the added constraint that one person cannot have multiple unique identities.

V

Virtual Machine

In computing, it refers to an emulation of a particular computer system.

W

Wallet

A wallet, in the most generic sense, refers to anything that can store ether or any other crypto token. In the crypto space in general, the term wallet is used to mean anything from a single private/public key pair (like a single paper wallet) all the way to applications that manage multiple key pairs, like the HALO Platform wallet.
contract

A persistent piece of code on the HALO Platform blockchain that encompasses a set of data and executable functions. These functions execute when HALO Platform transactions are made to them with certain input parameters. Based on the input parameters, the functions will execute and interact with data within and outside of the contract.

Web3

The exact definition of the Web3 paradigm is still taking form, but it generally refers to the phenomenon of increased connectedness between all kinds of devices, decentralization of services and applications, semantic storage of information online and application of artificial intelligence to the web.

Web Of Trust

The idea that if A highly rates B, and B highly rates C, then A is likely to trust C. Complicated and powerful mechanisms for determining the reliability of specific individuals in specific concepts can theoretically be gathered from this principle.