Business Tech Exam 2 Study Guide
security and ownership: wallets
- A cryptocurrency wallet act as a digital counterpart to a physical wallet. - Just as physical wallets store and manage cash, credit cards, and IDs, a cryptocurrency wallet is a digital tool that stores, manages, and interacts with your digital assets. ✓ Software Wallets (Hot Wallets) ✓ Hardware Wallets (Cold Wallets) ✓ Paper Wallets
decentralized finance - decentralized exchanges (DExes)
- A decentralized exchange (DEX) is a cryptocurrency exchange that operates without a central authority or intermediary. - Unlike traditional centralized exchanges (CEXs), where a third party (the exchange) facilitates trading and holds users' funds, DEXs allow users to trade directly using smart contracts on a blockchain
example of NFT: axie infinity
- A decentralized exchange (DEX) is a cryptocurrency exchange that operates without a central authority or intermediary. - Unlike traditional centralized exchanges (CEXs), where a third party (the exchange) facilitates trading and holds users' funds, DEXs allow users to trade directly using smart contracts on a blockchain.
the cypherpunks
- A group of computer scientists, cryptographers, and privacy advocates who emerged in the late 1980s and early 1990s. - They were passionate about using cryptography and computer technology to protect individual privacy, secure communication, and promote personal freedom in the digital age. - alternative payment system, not controlled by central bodies
51% Attack
- A situation in a blockchain network where a group of miners controls more than 50% of the network's total computing power or hash rate. - This level of control allows the attacker to manipulate the blockchain's consensus mechanism and potentially disrupt the network's normal operation.
blockchain vs. bitcoin
- Blockchain is the technology that enables secure, transparent, and decentralized record-keeping. - Bitcoin (or other cryptocurrencies, like Ethereum) is a specific application of blockchain technology - it's a digital currency operating through blockchain.
transparency
- Decentralization means transparency. - All transactions are recorded in a public ledger that anyone can see. - This openness makes it harder for anyone to commit fraud because their actions are visible to everyone.
decentralized vs centralized exchanges
- decentralized: peer to peer, automated market maker (users provide liquidity, audomated) - centralized: custodial - third party (custodial provides liquidity, human driven)
VPL - scratch
Developed by MIT. Scratch is a high-level block-based visual programming language and website aimed primarily at children as an educational tool, with a target audience of ages 8 to 16. Users on the site, called Scratchers, can create projects on the website using a block-like interface.
ethereum
Ethereum is a decentralized, open-source blockchain platform that enables the creation of smart contracts and decentralized applications (DApps). - proposed by Vitalik Buterin in late 2013
boolean (bool)
Explain that booleans can have only two values, True or False. In business, you might use booleans to represent conditions like "In stock" or "Out of stock," "Paid" or "Unpaid." (ex: product_in_stock = True)
float (float)
Floats are numbers with decimal points. In business, you might deal with decimal values like product prices, sales revenue, or interest rates, which can be represented as floats. (1.05, 3.0, 12.001...) (ex: product_price = 29.99)
string (str)
Text. ("hello", "bye", "one thing", "2") (ex: customer_name = "John Smith)
software wallets (hot wallets)
- mobile wallets - desktop wallets - online wallets (web wallets)
proof of work (bitcoin) example
- winning the lottery
ethereum gas
✓ Fuel for Transactions: Gas in Ethereum is like the fuel required to execute transactions and smart contracts on the Ethereum network. Every operation that writes in the blockchain (sending Ether, creating and executing smart contracts) consumes gas. ✓ Miner Compensation: Miners who validate transactions and secure the network receive gas fees as rewards for their work. These fees incentivize miners to prioritize and include transactions in blocks
What is blockchain?
✓ It is a distributed database leveraging distributed processing ✓ Multiple parties (peer) share it by keeping an identical copy ✓ Transactions are recorded (write) in the database ✓ Each new record (write) to the database is a Block ✓ Transactions/Blocks are processed one at a time, no new transaction/ block is committed until the prior one is approved
paper wallet
✓ a physical document (usually a piece of paper) that contains your cryptocurrency's public and private keys. ✓ It's a physical representation of your digital assets.
smart contracts - solidity
✓ is a high-level, statically typed programming language for writing smart contracts on the Ethereum blockchain. ✓ It is designed specifically for Ethereum and is the most commonly used language for developing decentralized applications (DApps) that run on Ethereum.
decentralized finance (DeFi)
- Financial services and applications built on blockchain technology that operate without traditional financial intermediaries like banks, brokers, exchanges. - Defi is an open and permissionless financial system accessible to anyone with an internet connection, providing greater financial inclusion - most DeFi are open source (widely available), can move data easily without intermediaries, involves creation of digital tokens
comments
- In Python and most programming languages, comments are lines of text that are not executed as code. - They are used to provide explanations or notes within the code for humans to understand the program better. (what pops up above code to tell you what to do)
proof of work (bitcoin)
- Participants (miners) compete to solve complex mathematical puzzles. - The first one to solve it gets the right to validate a block of transactions and add it to the blockchain. - PoW is energy-intensive and is used by Bitcoin.
multiple mechanisms to ensure consensus
- Proof of Work (PoW) - Proof of Stake (PoS) - Delegated Proof of Stake (DPoS) - Proof of Authority (PoA) - Proof of Space and Time (PoST) - Proof of History (PoH)
example of smart contracts
- Subject A deposits an amount of Ethereum in a specific wallet. - After a particular amount of time (stated in the smart contract), those funds will be available to withdraw from Subject B.
Proof of Stake (Ethereum 2.0) - crypto term
- The term "crypto" in cryptocurrency comes from the word "cryptography," which refers to the science of securing communication and information through codes and encryption techniques. - Cryptocurrencies use cryptographic techniques to secure transactions.
Proof of Stake (Ethereum 2.0)
- With PoS (Ethereum 2.0 for example), those who hold more tokens (stake) have a more significant say in validating transactions and securing the network. - They are incentivized to act honestly because they have something valuable (their stake) at risk.
example of NFT: artblocks
- an NFT platform that enables generative art. Artists create algorithms that generate unique pieces of art as NFTs. - Buyers can purchase these algorithmically generated artworks, each with its own distinctive style.
What is Bitcoin?
- bitcoin is not just a database - it works as a spreadsheet to keep accounting up to date - every time there is a transaction it gets registered - it is decentralized - it is almost impossible to hack
three pillars of blockchain technology
- decentralization - transparency - immutability
immutability
- ensures that the data on a blockchain is reliable, tamper-proof, and can be trusted. - In business, this is crucial because it eliminates the need for intermediaries or third parties to verify transactions or records. - It's especially important in scenarios where trust is essential, such as financial transactions, legal contracts, and supply chain management.
Swift
- essential for iOS and macOS app development - primary language for building applications on apple platforms
javascript
- essential for web development - used to create interactive and dynamic web pages, making it indispensable for e-commerce, social media, and modern online applications
C#
- favored for windows app development and game development using unity - known for its integration with microsoft technologies
variables - common data types
- integers (int) - float (float) - string (str) - boolean (bool)
what is crypto trying to solve?
- it is a decentralized asset - it is not controlled by a single authority - it can be freely tradable (as long as you own and have access to internet)
C++
- known for its high performance and is used in areas where speed and efficiency are critical - widely used in game development, real-time simulations, operating systems, and system software
python
- known for its simplicity and versatility - widely used in data analysis, machine learning, web development, and automation - businesses love that it is easy to use and its readability
the problems of a centralized financial system
- money printing: inflation - you are not in control of your own money - potential lack of protection for the individual
example of NFT: cryptopunks
- one of the earliest and most iconic NFT projects. They consist of 10,000 unique 24x24 pixel art characters generated algorithmically. - Each CryptoPunk is distinct, and some have become highly sought-after collectibles.
choosing a programming langage
- problem solving - ecosystem - scalability - community and support - integration - performance
problem solving and algorithm
- programing is a process of problem solving - an algorithm is a step-by step problem-solving process (a solution is achieved in a finite amount of time)
smart contracts
- self-executing contracts with the terms of the agreement between buyer and seller being directly written into code - It is a computer program that automatically executes and enforces the terms of a contract when predefined conditions are met. - Smart contracts run on blockchain technology, ensuring transparency, security, and immutability. - bitcoin acts as a ledger to keep accounting up to date (transactions) - ethereum: blockchain can sore code (smart contracts) as well as transactions
ethereum key features
- smart contracts - decentralized applications (DApps) - decentralized finance (DeFi) - ether (ETH) - upgrades and improvement proposals
programming in python - conditional statements pt 2
- two-way selection syntax - IF expression is true, statement1 is executed; otherwise (else), statement2 is executed (statement1 and statement2 are any C++ statements)
SQL (Structured Query Language)
- used to manage and manipulate databases - vital for data-driven decision-making in businesses and plays a significant role in business intelligence
java
- valued for its portability; it can run on various platforms - used in developing android apps, enterprise applications, and large-scale systems
example of NFT: decentraland
- virtual world built on the Ethereum blockchain. Users can buy, sell, and build on parcels of virtual land represented as NFTs. - This demonstrates how NFTs can represent ownership of virtual real estate.
what is an IDE?
1. An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. 2. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. 3. It is used to write code
proof of work (bitcoin) - process (mining)
1. Several transactions start. 2. The Block: Miners (computers in the network) gather these transactions into a group called a "block." This block acts like a page in a digital ledger. 3. The Puzzle: Miners compete to solve a complex mathematical puzzle related to the transactions in the block. 4. The Winner: The miner who finds the correct answer first gets to add the block of transactions to the blockchain. This is like winning a lottery. It's a race, and the fastest computer usually wins. 5. The Validation: Other computers in the network quickly check the winning miner's work to make sure it's correct. 6. The Reward: The winning miner is rewarded with cryptocurrency tokens if everything checks out. This reward is their incentive for doing all the hard work and using their computer's power. 7. Once a block is added to the blockchain, a new puzzle starts for the next set of transactions. This keeps the system running smoothly and the ledger up to date.
Proof of Stake (Ethereum 2.0) - process
1. Staking: Participants in a PoS blockchain network are required to "stake" cryptocurrency as collateral. 2. Block Creation: Instead of miners competing to solve complex puzzles, as in PoW, PoS networks select validators to create new blocks. The probability of being chosen as a validator is directly proportional to the cryptocurrency they have staked. Validators are responsible for validating transactions and creating new blocks. 3. Transaction Validation: When a transaction starts on the network, validators are chosen to validate and confirm the transaction's accuracy. 4. Block Addition: Once a validator successfully validates a block of transactions, it is added to the blockchain. Validators are rewarded with transaction fees (crypto). 5. Security and Consensus: Validators who attempt to validate fraudulent transactions or manipulate the system risk losing their staked coins as collateral. 6. Energy Efficiency: PoS is more environmentally friendly than PoW, as it doesn't require the massive computational power and energy consumption associated with mining in PoW systems.
steps of solving a problem with programming
1. analyze the problem (outline and understand problem requirements, design algorithm to solve problem) 2. implement the algorithm (code and verify that it works) 3. maintain the program
private and public keys
A cryptocurrency wallet generates a pair of keys: a public key (like your account number) and a private key (like your PIN).
decentralized finance stable coins
A stablecoin is a type of cryptocurrency designed to have a stable value, typically by being pegged to a reserve asset or following a predefined algorithmic mechanism. - Unlike other cryptocurrencies like Bitcoin and Ethereum, which can experience significant price volatility, stablecoins aim to provide a more reliable and stable store of value, making them suitable for various financial applications
blockchain business transactions
A transaction always happens between, at least, two organizations ▪ Buyer and seller, no business operates in isolation
blockchain use cases (supply chain)
Blockchain enhances transparency by maintaining an immutable ledger of every product's journey, from production to delivery. Ensuring that all participants in the supply chain have access to real-time, trustworthy information, reducing fraud and errors.
Examples of programming languages
C, C++, Java, Python
programming in python (variables)
In programming, a variable is like a labeled container that can hold different types of information, such as numbers, text, or true/false values. Python uses variables to store and manipulate data.
integer (int)
Integers are whole numbers. For instance, the number of products in stock or the count of customer orders would be represented as integers in a business context. (1, 2, 3, 4...) (ex: order_count = 50)
programming in python - print
These statements are used to display information or results on the screen. In Python, you can use the print() function to create print statements: print ("Hello, world!") # display "Hello, world!" on the screen
consensus mechanisms ensuring agreement
They enable all network participants to reach a common understanding of the state of the blockchain, including the order of transactions
consensus mechanisms decentralization
They maintain the decentralized nature of blockchain networks by preventing any single entity from controlling the validation process
consensus mechanisms security
They protect the blockchain against various attacks, including double-spending, where someone tries to spend the same digital asset more than once
NFT fungible vs non fungible
Unlike cryptocurrencies like Bitcoin or Ethereum, which are fungible and can be exchanged on a one-to-one basis (1 BTC is always equal to 1 BTC, same as 1 USD is always equal to 1 USD), NFTs are non-fungible, meaning each NFT has distinct properties that make it different and irreplaceable.
variable names
Variables need labels or identifiers. They should be descriptive and meaningful so anyone reading the code can understand the variable (area = 1000) name is area
variables (changing values)
You can assign a new value to an existing variable, and it will replace the previous value (change area from 1000 to 2000)
what is a programming language?
a computer language engineered to create a standard form of commands (a set of rules, symbols, and special words). programs are created through programming languages to control the behavior and output of a machine through accurate algoriths, similar to the human communication process
what is Non Fungible Tokens (NFTs)?
a digital asset representing ownership or proof of authenticity of a unique item or piece of content using blockchain technology ✓ Uniqueness: They represent ownership of a specific digital or physical item, such as digital art, collectibles, virtual real estate, music, videos, in-game items, or real-world assets like real estate. ✓ Indivisibility: NFTs cannot be divided into smaller units like cryptocurrencies. You either own the entire NFT or none of it. ✓ Ownership and Provenance: NFTs are recorded on a blockchain, providing a transparent and immutable ownership and transaction history ledger.
metamask (web wallet)
a software cryptocurrency wallet used to interact with the Ethereum blockchain. It allows users to access their Ethereum wallet through a browser extension or mobile app, which can then be used to interact with decentralized applications
overall tokens are
a versatile tool that businesses can leverage to create new value propositions, engage with customers, and access funding in innovative ways
basic mathematical expressions
addition, subtraction, multiplication, division
programming in python - loops
allow you to automate repetitive tasks, saving time and reducing errors. For instance, you can use loops to process large datasets or perform calculations on multiple items
businesses agree on...
contracts, which set conditions of transactions
Consensus Mechanism
ensures all participants in a decentralized network agree on the validity of transactions and the ledger's state without needing a central authority. I - t's a set of rules or protocols governing how new transactions are added to the blockchain and resolving conflicts.
Ether (ETH)
ether is ethereum's native cryptocurrency used to power the network
upgrades and improvement proposals
ethereum is an evolving platform with regular upgrades to improve scalability, security, and functionality
bitcoin (BTC) block size
limited to 1 MB
Decentralization
not having a central authority or middleman. In traditional systems, like banks or online platforms, there's usually a central authority, that keeps records, manages transactions, makes decisions. ✓ Trust: Everyone in the network has a copy of the same information. ✓ Security: Your data and transactions are protected by strong cryptographic techniques. Hacking one computer on the network won't compromise the entire system. ✓ Ownership and Control: You have ownership and control over your data and assets. You don't have to rely on a middleman like a bank to manage your money or personal information.
hardware wallets (cold wallets)
physical devices that resemble USB drives. They are considered one of the most secure options for long-term storage. Think of them as vaults for your cryptocurrencies
private key
the address to access to your funds
public key
the address to receive crypto
Blockchain makes what possible
the technology that makes bitcoin possible (as well asa other cryptocurrencies)
mobile wallets
these are smartphone apps that provide convenient access to your cryptocurrencies. They're similar to mobile banking apps
desktop wallets
these are software applications you can install on your computer. They offer control and security, like desktop banking software
online wallets (web wallets)
these are web-based wallets accessible through a browser. they're convenient but may have security trade-offs, similar to online banking
programming in python - conditional statements
these statements are used to make decisions in the program. they include if, else, and elif statements. (if x > 5: print ("x is greater than 5") else: print("x is not greater than 5")
visual programming languages - print
type of programming language that uses graphical elements, symbols, and visual representations to create, edit, and manipulate code. (Unlike traditional text-based programming languages, where code is written using text characters and syntax, visual programming languages allow users to design and develop software by arranging and connecting visual components or blocks on a graphical canvas)
multiplication
use the * operator to multiply two numbers (result = 4 * 6 # result will be 24)
addition
use the + operator to add two numbers (result = 7 + 2 # result will be 9)
subtraction
use the - operator to subtract on number from another (result = 7 - 2 # result will be 5)
division
use the / operator to divide one number by another. This operation returns a floating-point result (result = 10/2 # result will be 5.0)
variable values
variables need to have values (area = 1000) 1000 is value
blockchain transactions could happen in
▪ open market (auction) ▪ closed market (supply chain)
blockchain assets could be
▪Tangible - house, products, cash ▪ Intangible - mortgage, services, online music/video
blockchain ledger
✓ A Ledger is a system of records for a business ▪ transactions are always recorded in the ledger ▪ in the selling organization, a transaction removes assets from the ledger ▪ in the buying organization, a transaction adds assets onto the ledger ▪ every organization keeps their own respective Ledgers
what is a block?
✓ A block contains several transactions, just like a page in a ledger contains multiple entries. ✓ Each transaction includes information about what was exchanged, who initiated it, and a unique identifier. ✓ Once a block is full of transactions, it undergoes a verification process by network participants (nodes) to ensure its accuracy. ✓ Once verified, a new block is linked to the previous one, creating a chain.
decentralized applications (DApps)
✓ A decentralized application, often abbreviated as "DApp," is a software application that operates using blockchain technology as its underlying infrastructure. ✓ DApps are open-source, transparent, and autonomous. ✓ DApps often rely on smart contracts to automate various application functionality aspects. ✓ Some DApps have native tokens or cryptocurrencies used to incentivize users and provide access to specific features or services within the application
Proof of Work (Bitcoin) - Halving
✓ Bitcoin halving, often called the "halvening," is an important and preprogrammed event in the Bitcoin network. ✓ It occurs approximately every four years, or after every 210,000 blocks have been mined. ✓ The primary purpose of a Bitcoin halving is to control the rate at which new Bitcoins are created and introduced into circulation.
decentralized finance examples
✓ Decentralized Exchanges ✓ Lending and borrowing protocol that algorithmically sets interest rates based on the activity in its liquidity pools ✓ Decentralized exchange (DEX) that focuses on stablecoin trading. ✓ Protocols that allows for issuing synthetic assets mirroring other assets, like Bitcoin, Gold, Stocks or the Euro.
Tokens
✓ Digital Representation of Value: digital tokens represent value in the digital realm. ✓ Customizable Assets: Tokens can be customized to represent a wide range of assets, from digital currencies to ownership shares in a company, loyalty points, or even physical assets like real estate. ✓ Smart Contracts: Tokens on Ethereum are often created and managed through smart contracts. ✓ Use Cases: Utility (provide access to specific products, services, or features within a DApp or ecosystem), Security Tokens (ownership in a real-world asset, like shares in a company) and Governance Tokens (decision-making within a decentralized organization)
Proof of work (# of bitcoin)
✓ Every time a new block of transactions gets confirmed: new BTC its produced ✓ The total supply of Bitcoin is capped at 21 million coins ✓ There are currently 19,484,462.5 bitcoins in circulation