- Banks used to use illegal methods to make money, leading to bankruptcy.
- Government used to bail them out.
- In 2008, government did not bail out a bank, fearing this can lead to economic repercussions, government saved other banks.
- Dilemma arises on which banks to save or which to let go.
- Banks engage in shady practices and are still saved by government.
- This leads to question on why government has control over currency.
- Mathematicians begin thinking of solutions, leading to the creation of bitcoin.
- Gold was originally used for transactions, but was replaced by currency due to convenience.
- Currency was pegged to gold initially.
- As the dollar grew stronger, it was no longer pegged to gold, leading to inflation.
- Government now has full control over printing money, leading to increased inflation.
- Cryptocurrency is introduced as a solution not controlled by a single entity.
- Cryptocurrency uses "Proof of Work" algorithm.
- Proof of Work algorithm shares work between machines (mines).
- These machines keep a global state of data, which invalidates any changes made by one machine.
- Changes to the data would require 50% of machines to collude, making it improbable.
- Miners are willing to expend resources to mine data in cryptocurrency, as they receive incentives in bitcoin. While it is resource-intensive to mine data, the reward of receiving bitcoin motivates miners to continue the process.
- Bitcoin can be considered a type of digital gold because it has a limited supply and can be mined at a set rate.
- Additionally, one advantage of Bitcoin over physical gold is that it is easier to carry due to its digital nature.
- Bitcoin is a decentralized digital currency facing scalability issues.
- As Bitcoin's popularity grows, so does the number of transactions on its network.
- The current infrastructure is unable to handle the volume of transactions, leading to slow transaction times and high fees.
- This raises concerns about Bitcoin's viability as a currency for everyday transactions compared to traditional payment systems.
- Efforts are being made to address these issues through solutions such as Lightning Network and Segregated Witness, but they are still in development and not widely adopted.
- While Bitcoin is a useful store of value and popular investment asset, it faces challenges in becoming a mainstream payment system.
- Hence, we need new algorithms(better and faster) .
- Ethereum is a blockchain similar to Bitcoin. In Ethereum, machines hold a long database containing who owns Ethereum.
- Ethereum allows programming on the blockchain, which is not possible with Bitcoin.
- This programming feature allows developers to create decentralized applications (DApps) on the Ethereum blockchain.
- DApps can range from financial contracts to games and other applications.
- This programming feature is enabled by Ethereum's native programming language, Solidity.
- Overall, Ethereum's blockchain allows for more flexibility and functionality than Bitcoin's.
- Ethereum solves the problem of creating decentralized applications (DApps) that run on a blockchain network.
- Traditional programming involves applications running on a centralized server or cloud, which can be vulnerable to attacks and censorship.
- Ethereum's blockchain technology enables developers to create DApps that run on a decentralized network of computers, making them more secure and resistant to censorship or downtime.
- Ethereum's programming language, Solidity, allows for the creation of smart contracts, which are self-executing contracts with terms written into lines of code.
- Smart contracts on Ethereum are executed automatically when certain conditions are met, streamlining and automating business processes like supply chain management, financial agreements, and legal contracts.
- Ethereum's blockchain technology and programming language offer a new way of creating applications that are more secure, transparent, and efficient than traditional centralized systems.
- Etherium is also slow as of now Because it use "proof of work".
- Some L1 blockchains eg Solana are faster as they introduced new consensus algorithm(similar to Proof of work)
- In Solana. You need a user Wallet(end user, consumer), Bank Wallet(Authority, govt.) and smart Contract.
- First step is you create user wallet(BackPack.app).
- It will have empty address initially.
- Using the bank Wallet you can interact with smart contract and create a money printer(mint).
- Effectively, Whenever you call a function on a smart contracts, SmartContract returns you a address just like public address which is a mint.
- Mint is also a unique way to identify the token.
- When we create a mint, initial supply of mint token is 0.
- Then bank wallet can call another function on contract, which will hit another account called "Associated token account" or "Bank Account".
- Every bank account can only contain similar type of currency. increase in type of currency will increase the number of bank accounts
- If bank wallet creates a new currency then a bank account will be created.
- And even user wallet will also have a bank account called "Associated token account"
- Then bank wallet can distribute the token to user wallet from bank "Associated token account" to user "Associated token account".
- Install Solana cli
- create a bank wallet private key by "Solana-keygen new --force"
- it gives public key and 12 word phrase which can be used to access private key.
- solana has testnet were we can get free solana(without monetery value) for dev purpose.
- chose devnet in solana explorer
- run command solana config set --url https://api.debnet.solana.com
- It will connect all three of connection to devnet blockchain
- to access private key we can use ~/.config/solana/id.json
- then call the contract by spl-token create
- use solana airdrop
- While creating a token we will get token and program
- Then create a bank account "spl-token create account"
- then we can mint a amount of token by a command "spl-token "
- Then distribute to user wallet
- User command spl-token transfer --some security commands
blockchain-theory's Introduction
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.