Byzantine Faults 101

Distributed systems are becoming increasingly important in various applications, such as cloud computing, , and peer-to-peer networks. One of the challenges in designing robust distributed systems is dealing with Byzantine faults, a type of fault that can be particularly difficult to detect and handle. Byzantine faults, named after the Byzantine Generals’ Problem, involve components of…

WebDAV 101

WebDAV (Web Distributed Authoring and Versioning) is an extension of the HTTP/1.1 protocol, which enables users to create, modify, and delete files on remote web servers. This protocol provides a standardized way for users to collaboratively edit and manage files on the web, much like a remote file system. WebDAV Features WebDAV introduces several features…

Consensus Algorithm 101

Consensus algorithms play a crucial role in the functioning of decentralized networks, such as blockchain-based systems. They help maintain the integrity, security, and reliability of these networks by ensuring that all participants agree on the state of the system. In this post, we will explore the concept of consensus algorithms, their importance, and some of…

Double-Spending 101

Double-spending is a critical issue that any digital currency must address to ensure its viability and security. In this post, we’ll explore the concept of double-spending, the problems it poses, and how blockchain technology overcomes these challenges. What is Double-Spending? Double-spending occurs when a user spends the same digital currency unit more than once. In…

51% Attack 101

One of the most significant threats to public blockchain networks is a 51% attack, where a single entity gains control over the majority of the network’s mining power. In this blog post, we will discuss the concept of a 51% attack, its potential consequences, and measures to prevent it. What is a 51% Attack? A…

Proof of Work (PoW) 101

Blockchain technology is based on the idea of decentralization, transparency, and security. One of the key challenges in blockchain technology is reaching consensus on the state of the ledger. Consensus mechanisms ensure that all nodes in the network agree on the current state of the blockchain. Proof of Work (PoW) is a consensus mechanism that…

Proof of Stake (PoS) 101

Blockchain technology is based on the idea of decentralization, transparency, and security. One of the key challenges in blockchain technology is reaching consensus on the state of the ledger. Consensus mechanisms ensure that all nodes in the network agree on the current state of the blockchain. Proof of Stake (PoS) is a consensus mechanism that…

Uniswap 101

Uniswap is a decentralized exchange (DEX) that was launched in 2018. It is built on the . Uniswap is a fully decentralized platform, which means that it is not controlled by any central authority or organization. The key feature of Uniswap is its , which allow users to trade cryptocurrencies without the need for a…

Ethereum 101

Ethereum is a decentralized blockchain platform that enables developers to build and deploy decentralized applications (dApps) on the blockchain. Ethereum was created in 2014 by Vitalik Buterin and has since become one of the most popular blockchain platforms in the world. In this article, we’ll provide a development history of Ethereum, an overview of its…

CalDAV and CardDAV 101

CalDAV and CardDAV are application layer computer network protocols that enable users to synchronize and manage their calendar (CalDAV) and contact (CardDAV) data across multiple devices and platforms. These open standards protocols leverage the (World Wide Web Distributed Authoring and Versioning) protocol, which provides a framework for users to create, change, and move documents on…

Decentralization 101

Decentralization is a concept about control and management. It refers to that the control and decision-making in a distributed network are transferred away from a centralized entity (individual, organization, or group thereof). The resources in a decentralized network are owned and shared by network members. This concept is particularly significant in the world of blockchain…

Cryptographic token 101

Cryptographic tokens, or crypto tokens, are tradable digital units of assets that reside on blockchains. These tokens have become increasingly popular in recent years due to the rise of cryptocurrencies and the growing interest in non-fungible tokens (NFTs). Both fungible and non-fungible tokens play a significant role in the world of blockchain technology and digital…

NFT 101

What is NFT? Non-Fungible Token (NFT) is a kind of blockchains. What distinguishes NFTs from fungible , and ownership of the NFT is often associated with a license to use the underlying asset. There are standards or convensions for NFTs on blockchain. For example, ERC-721 is a standard for representing non-fungible digital assets on the…

Cryptographic Hash 101

A cryptographic hash function is a hash function that satisfies the properties of pre-image resistance, second pre-image resistance and collision resistance. Here, a hash function is a mathematical algorithm that maps data of an arbitrary size (or “message”) to a bit array of a fixed size (the “hash value”, “hash”, or “message digest”), that is,…

Cryptocurrency 101

A cryptocurrency (or Blockchain networks for secure and transparent transactions. Blockchains play a crucial role in maintaining the integrity and immutability of transactional data for cryptocurrencies, making them a reliable and efficient medium of exchange. Decentralized blockchain networks form the backbone of many cryptocurrencies, ensuring a high level of security and preventing fraudulent activities such…

Bitcoin 101

Bitcoin is the world’s first cryptocurrency on the Bitcoin blockchain network. BTC has gained significant popularity since its inception in 2009. It functions as a decentralized, peer-to-peer electronic cash system, allowing users to make transactions without the need for a central authority. Bitcoin History Bitcoin’s story begins with the release of a whitepaper by an…

Blockchain 101

What is blockchain? Blockchain is a specific type of database with special data organization and properties. Blockchains store data in blocks that are then cryptographically chained together in the chronological order one by one, with the block chained onto the previous block. Data commonly stored in blockchains are transactions for Distributed Ledgers. The transactions are…

|

Understanding the Use of std::any in C++ with an Example

C++ std::any is a type-safe container for single values of any type. It is useful to put multiple types into a single container such as std::vector which requires all elements stored have the same “type”. It is a part of the C++17 standard library. This blog post will take a close look at a certain…

|

Resource Acquisition Is Initialization (RAII) in C++ with Detailed Examples

In this post, we will discuss Resource Acquisition Is Initialization (RAII), a programming idiom in C++ that helps manage resources such as memory, file handles, and network connections. By leveraging constructors, destructors, and scope-bound resource management, RAII enables the creation of more reliable and maintainable C++ code. RAII can not only achieve mostly what a…

|

Run-Time Type Identification (RTTI) in C++ with Detailed Examples

In this post, we will discuss Run-Time Type Identification (RTTI) in C++, a feature that allows us to obtain type information for objects at runtime. We will explore how RTTI works, its applications, and provide detailed examples to demonstrate its usage using snake_case naming convention. What is Run-Time Type Identification (RTTI)? Run-Time Type Identification (RTTI)…