Address or bitcoin addresses are unique identifiers that are composed from 26 to 35 alphanumeric characters. They are used in blockchain transactions and they are responsible for denoting senders and recipients. For every transaction, users can use a new address, but they can reuse old ones if they wish. Reusing the same addresses can lead to easier identification of the user that created it. Addresses can also be case sensitive and created offline. it is also possible to create multi-signature addresses that require more than one private key.
Transactions are the main units of blockchain technology. They are used for transferring values from one address to another
Miners that choose to include a transaction in a block collect a transaction fee. The fee is calculated differently for every transaction based on variables like the size of the transaction and amount of resources (electricity and hardware) required to process it. Generally, the bigger the transaction, the larger the fee. Miners choose transactions from memory pools by checking their priority. Those with a higher priority for the block that is being built should be picked up first.
Anyone wanting faster processing of a transaction would need to offer a higher incentive (more money) in order to make a miner want to pick it up sooner.
Turing complete is a computability theory that is used for abstract machines. Computability theory says that any system of data manipulation rules that can simulate a Turing machine is called Turing Complete. Turing complete programming language is in a high demand when it comes to blockchain technology but security issues are still a problem. Virtual machines are used to run Turing complete code on blockchain
A block hash, timestamp , nonce and at least several transactions make a block. once a block is completed, the records about transactions can not be modified or deleted. Multiple blocks added together form a blockchain network. block contains information about past, present and future transactions.
Block explorer is a web tool used for viewing information about addresses, transactions, transaction histories, and individual blocks in a blockchain network.
Block Height represents the number of blocks that are ahead of the given block in the blockchain network. Every block contains a header containing the current block height.
Block rewards are rewards for the miners which solve some type of mining puzzles. When Bitcoin was started, for example, the reward for successfully mining a block was 50 Bitcoins. The reward is contained in Coinbase transactions that miners receive after solving a puzzle.
The central ledger represents records about all financial transactions of an organization. Centralized ledger means that there is a main ledger which contains all information in. one place.
A P2P is a type of network where each peer can contact other peers and exchange information. In this network topology, there is no need for a central server. The peers need only to join a peer-to-peer network before they can send and receive messages.
A smart contract is a computer program or protocol that is used to set the rules of a contract between two parties. Smart contracts are also called crypto-contracts. They can also, apart from setting rules, take control to enforce those rules and transfer the digital currencies between parties if conditions of the contract are met. The main advantage is that smart contracts don’t require a third party.
an Oracle is a third party information source and is a part of the smart contract system. Smart contracts are unable to access external data which might be needed for a rule to be executed. Oracles can deliver that external data to smart contracts. They use a secure channel when transferring data and they are considered secure.
Consensus is a type of agreement and means that multiple parties have agreed on the same value or goal. When talking about blockchain technology, Consensus means that nodes have agreed on the same state of a blockchain.
Confirmation happens when a network has successfully processed a transaction. It also means that the transaction can not be reversed. When talking about trade life cycle, Confirmation means that both opposing parties have agreed to the details of trade. For a transaction to be finalized multiple confirmations are often needed.
Cryptocurrency is considered to be a digital form of money. It uses high-end encryption techniques to create funds and to verify their transfer. Without blockchain, cryptocurrency would not exist. They use a decentralized control system which works through distributed ledger technology, like a blockchain. The most famous cryptocurrency is Bitcoin.
Cryptographic Hash Function
Hash functions are functions that take an input value of some length, and extracts from it another value of a fixed length. No matter how many characters are fed into the hash function, the output will always be of the fixed defined output length. even if 2 input values differ by only one character, their output hashes will be totally different.
Characteristics of a cryptographic hash functions:
- Computationally Efficient
- Deterministic: For some input, output should always be same
- Collision Resistant: no 2 inputs could have same output
- Pre-image resistant: input can not be revealed by looking at the output
DAPP stands for Decentralized Application. This is an application whose backend runs on multiple computers that are part of a decentralized network. This differs from a standard app, whose backend runs on centralized servers.
DAO stands for Decentralized Autonomous Organization. A DAO is computer software that runs on top of a blockchain.
Distributed Ledger are identical databases that are distributed to each of the participants. They are often confused with blockchain but they are not the same thing.
The records of these ledgers are not placed in blocks like in a. blockchain, but rather stored contiguously. Each participant node is first updated individually. After that, they all collectively vote on the update and prove it or not. When all participants reach an agreement, the ledger then gets updates to the latest change and all participants’ nodes save the same version.
A distributed network is a kind of network that expands across several networks. This way, these networks can function and operate together as a coherent unit, or separately as individual units.
Difficulty represents how hard it is (how long it takes) to find the hash needed to add a new block to a blockchain.
A digital signature is used for identifying an entity which is sending a message. Every electronic document contains a digital signature. They are also used for nonrepudiation because they are authentic, non-forgeable and non-reusable.
A multi-signature is a a digital signature type used for situations where a group of entities need to sign a document. One combined signature composed by using a multi-signature scheme from more entities is considered more secure and compact than a collection of signatures from entities.
Double spending is an attack where an entity tries to spend the same crypto coins in more than one transaction at the same time. blockchain tries to prevent double spending attacks by using timestamps on transactions, and then by broadcasting them to the nodes that are in the network. Various cryptocurrencies have developed ways for their networks to be immune to double spending attacks.
Ethereum is a blockchain technology product that is based on the Turing complete programming language called Solidity. The difference between Ethereum and other cryptocurrencies is that there is no limited scripting. Ethereum is not only a platform and cryptocurrency, but also a programming language.
It uses smart contract technology, and it has smaller blocks then Bitcoin and other better known cryptocurrencies. The average size of an Ethereum block is under 2KB.
Ethereum virtual Machine is a network of machines that run the same software and are public nodes.
Solidity is a high-level programming language that is based on contracts. Smart contracts can be implemented with it.
TestNet is a software that is used for testing out new features and changes to the blockchain, without disrupting the primary blockchain software. TestNets are identical to the original blockchain being tested. Ethereum and bitcoin both use testnets.
A fork represents an update to a blockchain, and in essence they are a change to a cryptocurrency protocol.
soft forks are backward compatible protocol changes. This means that any nodes running an older version of the protocol are allowed to add new blocks to the blockchain as long as they respect the new protocol. If a node tries to process a transaction that does not fall into the new protocol, it will not be successful. This kind of principle makes nodes running an older protocol version to update to the new version.
Hard forks are protocol changes that are not backward compatible. this means that nodes which are running an older protocol version will not be able to process new transactions even though the transactions might fall into all protocol requirements
A genesis block represents the first block inside of a blockchain
A hash rate is the speed of computing hashes per second. Hash rates were much slower when bitcoin miners mined with CPUs. Later, hash rates increased when ASICs replaced CPUs.
Mining is the process of inserting a transaction into a blockchain’s ledger where all previous transactions are also recorded. Mining ensures the security of a blockchain and it is a method of achieving blockchain decentralization.
Wallet is a digital wallet software that holds essential information related to users’ cryptocurrency. These are things like private and public keys and bitcoin addresses. They can perform different functions that are important for manipulating cryptocurrency, such as sending and receiving bitcoins.
CPU mining is the action of executing computations with a computer’s CPU for the purpose of mining an asset of value. In most cases, these are cryptocurrencies like bitcoin. CPU mining was the first way bitcoins could be mined. But this technique isn’t as profitable now, so more advanced methods are used.
GPU mining is the action of executing computations with a computer’s GPU for the purpose of mining an asset of values, usually cryptocurrencies.
In the context of blockchains, nodes are parts of the blockchain network that carry out different functions (such as transaction validation, mining or other tasks), depending on the kind of blockchain and its purpose.
ASIC Application Specific Integrated Circuit
ASIC are a type of ICs created significantly for some application or other specific intent, instead of being built for general use.
A ledger is a digital record of all transactions that an organization has performed.