In the blockchain industry, any entity that is capable of participating in an action or a network.
APPLICATION-SPECIFIC INTEGRATED CIRCUIT (ASIC)
A type of computer processing chip that performs a singular function.
Due to its specialization, an ASIC is much more efficient and cost-effective than a generalized computer processor that can perform many functions. In the blockchain industry, ASIC boards have been used to perform the SHA256 hashing required for Proof-of-Work (PoW), greatly outstripping the hashrate of even the most powerful GPU miners.
Bitcoin’s base unit token is the satoshi, named after Satoshi Nakamoto, the original developer of the Bitcoin protocol.
A single section of discrete data. Blocks typically comprise a list of transactions or actions to be performed when processing the data in the block.
A block that has been included in the primary blockchain and is directly or indirectly referenced by future blocks. Blocks that are not canonical may have been valid but were discarded in favor of the canonical block.
A method of storing data in discrete sections (blocks) that are linked together. Blockchains specify criteria for what data can be stored in a block and reject invalid data.
The generation of blockchain technology that focused on performing simple token transactions. Blockchain 1.0 chains have limited scope and ability, but served to prove the fundamental technologies of blockchains and show that a market existed for those technologies.
Bitcoin was the first of the Blockchain 1.0 generation.
The generation of blockchain technology that enabled smart contracts and generalized processing on chain. Blockchain 2.0 chains are typically built on Turing-complete programming languages and provide expanded capabilities beyond simple peer-to-peer (P2P) value exchange.
Ethereum was the first of the Blockchain 2.0 generation.
A block‘s position index in the blockchain relative to the latest (most recently added) block. A block that is five blocks before the latest block will have a block depth of 5.
A software, generally with a graphical user interface (GUI), that allows users to read and analyze the data contained on a blockchain.
For blockchains with a native cryptocurrency, miners that produce a block are allowed to allocate a designated number of tokens to be spontaneously generated and sent to an address of their choosing. This reward serves as compensation for the miner’s support of the network and incentivizes additional miners to join.
BANKING SECRECY ACT (BSA)
Legislation passed in the United States in 1970 that requires financial institutions to assist government agencies in detecting and preventing money laundering. BSA requirements include mandatory reporting of certain activities, record keeping for all customers, and limitations on what kind of monetary instruments may be purchased or exchanged.
BYZANTINE FAULT TOLERANCE
CERTIFICATE AUTHORITY (CA)
Closed source software is proprietary software with source code that cannot be accessed by the public. The compiled binaries may be available in the form of an executable program (files that end in .exe, .dpkg, etc.) but are not human-readable or available for modification by anyone but the original software developer.
See Token, Stable
Coinbase is a U.S.-based cryptocurrency brokerage. In terms of customer base and transaction volume, Coinbase is the largest exchange in the United States and one of the largest in the world. However, compared to other exchanges, it maintains a small number of cryptocurrency offerings, with only a couple dozen tradable cryptocurrencies out of the thousands available in the ecosystem.
COMMAND-LINE INTERFACE (CLI)
A text-based user interface.
CLIs can provide more core functionality and access to system resources than a graphical user interface (GUI), but at the cost of usability. Because of this, CLIs are generally directed toward developers over the average user. They can be used to demonstrate the functionality underlying a program without expending development time building a more robust user interface.
The determination of how immutable the information in a blockchain is.
For many consensus protocols, chain reorganizations occur (and are expected) during the confirmation process. Different blockchains have different metrics for what blocks can be considered immutable and therefore confirmed.
If two valid blocks are submitted for the same block height, one of them will eventually be discarded, while the other one will become the canonical block from which future blocks are built. The highest blocks in a chain are more likely to be reordered or discarded, with a probability that is inversely correlated to their block depth.
In some contexts, confirmations refer to the number of nodes that have accepted a transaction, the number of transactions that reference it, or the number of blocks that are above it. In Bitcoin, a transaction has five confirmations when five blocks have been produced after the block containing the transaction.
In the blockchain industry, the process by which distinct sections of a network determine a single truth. Blockchain networks use consensus algorithms to establish agreement regarding which blocks are to be added to the chain and which nodes are valid.
A private blockchain network run by a company or a group of companies. Consortium chains deal with information that would not be appropriate for public release but still needs to be immutably communicated between two parties.
Digitally distributed and traded currencies for which proof of ownership is established via cryptographic methods. For example, Ether cannot be transferred from an account without having control of the private key that is associated with that account.
The use of math and logical problem solving to encipher or decipher encoded messages. Computer cryptography is heavily reliant upon mathematical proofs and the computational difficulty of specific mathematical problems
A system of abstract representations of the ability to reconcile debts that is generally accepted or in use. Money is a currency. In the United States of America, the U.S. Dollar is the national currency.
A decentralized application.
DApps operate similarly to regular web applications; however, they retrieve their state and data from a blockchain network (or multiple blockchain networks). DApps do not require a central web server to function and can communicate to each other over the messaging protocol of the blockchain network(s) to which they’re connected.
The movement of data, actions, and other interests away from a single actor in favor of distribution amongst all actors.
In a decentralized system, no actor or group of actors can control the system without the consent of the rest of the actors.
DECENTRALIZED AUTONOMOUS ORGANIZATION (DAO)
A company or group of like-minded entities that operate based on the rules set forth in a smart contract. DAOs are used to transform business logic into software logic recorded on a blockchain.
In that same example, board of directors decisions might be voted on, recorded, and effected through a smart contract rather than by holding physical board meetings.
DIRECTED ACYCLIC GRAPH (DAG)
A directed graph structure (e.g., flow chart) that has no recursive routes (i.e., traversing the graph will never go twice through the same route or branch).
DOUBLE SPEND ATTACK
A malicious attempt to convince two separate parties that one of two conflicting transactions is valid. In such a situation, both transactions appear individually valid, but their combination is not. Thus, only one is included in the blockchain.
ETHEREUM ENTERPRISE ALLIANCE (EEA)
A collection of medium- to large-sized companies that have publicly committed to supporting the development of Ethereum and the creation of applications for the protocol.
Notable EEA partners include Intel, AMD, Microsoft, JP Morgan Chase Bank, and Microsoft.
ETHEREUM VIRTUAL MACHINE (EVM)
A simulated state machine that uses eWASM bytecode to process transactions and perform state transitions for the Ethereum blockchain. Its operation is guaranteed; that is, for any given block, the state of the EVM will be exactly the same on each node in the network, and it is impossible to generate a different state using the same inputs.
Exchanges are highly regulated in the European Union, eastern Asia, and the United States of America; thus, many exchanges are located in countries with less oversight.
Exchanges are one of the only ways to change cryptocurrencies into fiat and transfer that value into a bank account.
A nationally adopted currency with government support, such as U.S. Dollars or Euros. Fiat currencies are desirable due to their legal status and traditional use.
FINANCIAL CRIMES ENFORCEMENT NETWORK (FINCEN)
The U.S. federal agency responsible for investigating and prosecuting financial crimes, such as money laundering.
In the blockchain industry, a unique network created using the same protocol or consensus as a previously existing network. Forks can contain the original network’s state or instantiate their own state.
Forks happen naturally when a blockchain network is not at 100% consensus and resolve when the network reaches consensus.
Forks can also be forced by refusing to adhere to the consensus of the network.
A fork that is compatible with the data on the original chain.
Blocks created on the original chain after a soft fork would be valid on the forked chain; however the reverse does not have to be true.
In the blockchain industry, a measure of the computational difficulty required to process a smart contract function. More complex functions use more gas.
Gas prices allow a network to dynamically respond to changes in bandwidth demand based on market forces.
When an actor receives new information, it relays it to every other actor it’s connected to that does not already have that information. Since all actors are cumulatively connected, eventually they all receive the information.
The output of a cryptographic function that maps inputs to specific, but seemingly arbitrary, outputs. Hashes are used to efficiently identify data.
Two inputs that map to the same output hash.
While hash collisions are possible, providing two sets of meaningful data whose hashes collide is nearly impossible. Hashes are one-way streets; they can be constructed from data, but data cannot be reconstructed from hashes.
The rate at which a particular machine can perform a specific hashing function.
Hashrate is similar to general CPU speed, but where processor speed is measured based on the number of arbitrary instructions a machine can carry out per second, hashrate is measured based on the number of times a machine can perform that specific function per second, allowing application-specific integrated circuits (ASIC) to have a much higher hashrate than a processor with the same clock speed.
A cryptographic function that maps inputs to specific, but seemingly arbitrary, outputs.
Hash functions and their qualitative differences are an incredibly important field of research in cryptography.
The expression of raw data in base 16 (hexadecimal; 0-f), rather than base 2 (binary) or base 10 (counting; 0-9).
A suite of tools offered by IBM and hosted by The Linux Foundation to create enterprise-level consortium chains.
INITIAL COIN OFFERING (ICO)
Much like an initial public offering of stock, an initial coin offering is a way for a tokenized business to generate investment from the public.
ICOs are regulated by the Securities and Exchange Commission (SEC), even if the tokens are not specifically securities because the language used in promoting a sale can serve to classify tokens as a security offering.
The property of data to be resistant to alterations. Immutable data is considered ‘set in stone’ and can be relied upon to remain unchanged for the remainder of time.
Data can be functionally immutable, meaning that it is possible to change it, but it would require prohibitively excessive resources to do so.
Java is a programming language that was developed by Oracle. It can be compiled before runtime or interpreted by the Java Virtual Machine (JVM). Java is a popular programming language for server-side applications.
The largest blockchain network a specific protocol runs, or the most valuable chain as decided by the community.
Mainnets are typically where real value is derived and represent the truest intent of the core developers.
Providing the final hash allows other actors to determine if the data in a Merkle tree is the same as their own.
A data tree where the end of every branch (the leaves) is labelled with a unique identifier (a cryptographic hash) for the branch it is on, and every branch is labeled with all of the leaves and sub-branches on it. This redundancy ensures that anyone who has the tree can reliably prove that the data in it is complete and the same as another actor’s tree by simply observing the leaves. In a typical blockchain, the Merkle tree’s leaves are transactions and the branches are blocks.
A miner is an actor in a blockchain network that has the ability to create and submit new blocks to the chain. Which miner is allowed to produce a specific block may be predetermined, or miners may simultaneously compete to add the next block to the chain.
A miner that utilizes its central processor to perform block validation and production. CPU miners are used for mining algorithms that require more generalized processing and cannot be done in parallel (i.e., each operation depends upon the result of the previous one).
A miner that utilizes its graphics processor to perform block validation and production. GPU miners excel at mining algorithms that can be performed in parallel and have a limited number of unique operations (such as Proof-of-Work).
ASIC miners excel at mining algorithms that can be performed in parallel, have a limited number of unique operations, and have low hard disk input/output rates. Algorithms that fail to meet those criteria are known as “ASIC Resistant.”
In the blockchain industry, mining is the process of creating a new block and submitting it to the blockchain.
Proof-of-Work (PoW) mining pools can increase miner efficiency because the work is distributed, and any invalid work is not repeated by other miners in the pool.
A Blockchain 1.0 chain that uses ring signatures to provide a level of anonymity beyond public key addresses. Only the parties to a transaction are able to determine the data in the transaction, including the amount, sender, and recipient.
The movement of value from one person to another through an intermediary.
Money transmitting and money transmitters are highly regulated due to their ability to easily launder money.
A set of actors that are collectively interconnected for a common purpose.
A node that has the complete state of the blockchain available.
In cryptography, a nonce is an arbitrary number that can be used only once in a cryptographic communication. It is often a random or pseudo-random number issued in an authentication protocol to ensure that old communications cannot be reused in replay attacks. Wikipedia.
A nonce is a number used to protect private communications by preventing replay attacks. Nonces are random or pseudo-random numbers that authentication protocols attach to communications. Sometimes these numbers include a timestamp to intensify the fleeting nature of these communications.
A machine-level instruction for a processor.
Opcodes are extremely basic commands, such as addition, multiplication, and bit shifting. Higher-level programs are compiled from human-readable instructions into opcodes before being sent to the processor.
Open source software is software for which the source code is available to the public.
One of the benefits of open source software is that people from outside the core development team can support it, collaboratively creating new features or fixing bugs. Open source licenses typically include language that prevents anyone from reselling the core code without significant changes.
A company based in California that produces enterprise-level software systems. It is notable for having created the Java programming language.
Services that connect real-world data with blockchain applications.
Oracles are necessary to provide input that cannot be independently verified, such as temperature measurements.
Interactions between actors without a central intermediary.
Cash payments are an example of P2P transactions.
One part of a public/private key pair used for asymmetric encryption and decryption.
A private key can be used to decrypt a message that is symmetrically encrypted using the corresponding public key. Private keys are kept secret from anyone that isn’t the owner. Once a private key is made public, it is useless as a point of authentication.
PRIVATE KEY INFRASTRUCTURE (PKI)
Typically, a certificate authority is also involved to certify that a specific private key corresponds to a specific user or domain. Private keys are typically stored in secure, unique files just for that key, while public keys are broadcast to everyone.
Public/private key pairs are a stronger form of authentication than username/password combinations because the owner of a private key never needs to reveal the private key in order to prove that he or she holds it. A private key can be used to sign messages using symmetric cryptography and probably assert that they came from a specific user.
The principles underlying private key infrastructures are also applied for many zero-knowledge proof applications.
A cryptographically signed assertion by a trusted third-party auditor that an actor holds the declared number of resources. Proof-of-Liquidity is used for cryptocurrencies that are pegged to a real-world security or commodity.
A consensus mechanism in which the ability to produce a block is proportional to the amount of the blockchain’s native cryptocurrency an actor holds. The more cryptocurrency the actor holds, the more likely it becomes that he or she will be assigned as a block producer.
PROOF-OF-STAKE, DELEGATED (DPOS)
DPoS is useful for pooling stakes, allowing many small-value accounts to meaningfully participate by collectively appointing the same block producer.
Generally, the process involves a degree of randomness that makes it impossible to find a solution based upon previous inputs; the only information obtained from a solution is that the particular solution is valid. Multiple solutions may be valid for solving the problem, although the odds of finding two unique solutions is incredibly small.
While finding the solution to these problems requires significant processing time, proving that a solution is correct is trivial in nature. Whoever solves the problem in the context of a specific block’s data is allowed to submit that block to the blockchain. The network must then start the race over with the updated data.
Proof-of-Work’s security is rooted in the computational difficulty of the algorithm. Because it is an essentially random process to find a solution, the probability of solving the problem is related to the actor’s processing speed and the acceptance criteria for the solution (the difficulty). Stricter acceptance criteria reduce the speed at which the network finds a solution, and varying the acceptance criteria can allow a network to control the solution rate.
If a network is producing solved proofs every 10 seconds at 100 attempts per second, and it wants to reduce the time to five seconds, the acceptance criteria can be changed to allow twice as many possible solutions, or the network can double its processing speed.
Let’s say there are 10 good actors with machines running 10 attempts per second, making the total network rate 100 attempts per second.
For a bad actor to replace a previous solution with his or her own, he or she would need to have enough machines to make an additional 100 attempts per second. To take over all production of blocks requires only half of that though; the bad actor only needs to solve the problem faster on average than the rest of the network.
Because this threshold is ⅓ of the total network processing rate, the system is considered byzantine fault tolerant.
PROOF-OF-WORK, DELEGATED (DPOW)
A cryptographic equation or set of parameters that corresponds to a paired private key. A public key can be used to decrypt a message that is symmetrically encrypted using the corresponding private key.
A Blockchain 1.0 chain that seeks to connect payment providers and banks.
Ripple is backed by a number of large players in the industry, including American Express and Santander.
Non-scalable networks slow down and degrade as more actors enter the system.
Scalability can be defined in terms of required hard drive space, computational requirements, messaging throughput, bandwidth, and other factors.
SECURE HASH ALGORITHM (SHA)
The specific implementation of the algorithm is denoted by its numeric suffix. For example, SHA256 creates a 256-bit hash digest.
SECURITIES AND EXCHANGE COMMISSION (SEC)
A federal government body in the United States of America that is responsible for the oversight and regulation of investments. The nature of some cryptocurrencies designates them as a security under current laws, and they must be registered with the SEC to be legally used in the United States.
SECURITY TOKEN OFFERING (STO)
STOs are registered with the SEC.
SIMPLE AGREEMENT FOR FUTURE TOKENS (SAFT)
An investment mechanism for investors to obtain tokens from a project that has not yet launched. These agreements are similar to a Simple Agreement for Future Equity (SAFE) but are denominated in a percentage of tokens rather than a percentage of company equity.
Code that is executable within the environment of a virtual machine.
Blockchains use smart contracts in the context of the chain’s state to extend the functionality of the chain and provide trustless program execution.
Smart contracts in blockchains are particularly useful because their outputs are deterministic, meaning anyone who processes a function in a smart contract will get the same output as anyone else performing the same function.
A model of computation.
At any moment, a state machine has precisely one of a finite set of states. Changing to a new state requires transforming it through a state transition function. Blockchains are state machines because each block represents a change to the state, and transactions represent state transition functions.
State machines are less powerful than abstract Turing machines due to the requirement of a finite number of states rather than infinite.
The more specific a transaction is, the more immutable it becomes. The immutability of a transaction depends on how many transactions refer back to it and how immutable the references are
Testnets can be used to prove out new features before they are deployed to the main chain.
In the blockchain industry, tokens are the generalized base unit of a cryptocurrency. A token is the lowest unit possible; it cannot be divided further.
TOKEN, NON-FUNGIBLE (NFT)
Single token units that cannot be combined with others, even if they are the same type. NFTs can be used to represent distinct goods, such as a land deed or a particular piece of artwork.
Tokens that represent a share of a company or other security.
Security tokens have specific mechanisms in place for transferring ownership in compliance with regulations. Similar to preferred shares in a company, security tokens may grant additional rights to their owners, such as voting rights in a decentralized autonomous organization (DAO).
Some stable tokens rely on market forces and arbitrage to maintain a consistent value, while others rely on a ratio of stored value.
Stable tokens reduce the risk associated with the traditional market volatility of cryptocurrencies.
A cryptocurrency that is used in conjunction with a DApp to perform actions is an example of a utility token.
The concept of translating business strategies, goods, or services into discrete, tradable units that are recorded on a blockchain or other system.
Physical goods can be tokenized by associating their unique identifiers with on-chain references.
A functional programming language that is less universal than a Turing-complete language but may have more desirable characteristics due to the lack of non-deterministic functions.
Total-complete languages cannot perform infinite loops. They can therefore be optimized by the compiler, since it always knows the number of iterations a loop will perform. Total-complete functions are guaranteed to terminate.
A singular input into a blockchain that affects some change in the blockchain’s data.
Transaction fees are generally variable and heavily dependent upon market conditions.
Transaction pools may vary from node to node based on which transactions they have been made aware of.
The quality of not requiring trust.
In trustless systems, bad actors are unable to negatively impact the system without the coordination of the rest of the network. Trustless systems use verifiable information or actions to operate and validate the quality of other actors.
Turing completeness refers to the ability of a programming language to simulate a Turing machine.
A machine that’s capable of performing any algorithm or task that can be accomplished by a computer.
UNSPENT TRANSACTION OUTPUT (UTXO)
In blockchains that use UTXOs, each transaction references a previous transaction’s output and consumes 100% of the output’s tokens. The desired payment amount is assigned to the recipient’s address, and ‘unspent’ tokens are assigned back to the owner’s address. This reinforces the immutability of the blockchain, as no transaction may reference a UTXO that has already been consumed.
VIRTUAL MACHINE (VM)
A computer operating system that is running within another operating system.
Virtual machines can simulate a unique computer on a subset of the resources of a larger machine.
Cloud architectures use VMs to allocate the processing power of large servers to smaller applications.
A programming language similar to Serpent that is used to build smart contracts.
Multiple actors may share a multisignature wallet, but they may not all have to participate in each transaction.
A group of eight managers may be authorized to use a multisignature wallet for company expenditures, but the wallet may be set up so that a transaction can be completed with approval of any two of those managers.
WEB ASSEMBLY (WASM)
A binary instruction format for a virtual machine implemented by all major web browsers.
Many high-level programming languages can be compiled to WASM, including C++ and Rust.
ZERO-KNOWLEDGE (ZK) PROOF
A mathematical representation of an assertion whose output value can be determined without the input information.
Zero-knowledge proofs are used to prove that an actor is in possession of certain information without actually revealing that information. They are especially useful in cryptocurrencies because they can be used to show that a transaction is valid without revealing the sender, recipient, or amount of the transaction.