# 2024 BlockHeader Cairo Bootcamp
## Session 1 Summary
### Important Terminologies
- Starknet: decentralized permissionless open-source validity rollup
- Starkex: centralized permissioned validium rollup
- Starkware: software development company developing Stark technologies
- Starkex: Sorare, dydx, Immutable
- Starknet: Argent, Braavos, Aave, Myswap, Jediswap, Avnu
- Starknet Foundation: non-profit foundation promoting Starknet ecosystem and research
- Starknet OS: a Cairo program run by SHARP - Shared Prover - to prove Starknet’s state transitions
- Cairo VM: the virtual machine for the Cairo language;
- responsible for creating validity proofs for general computational programs;
- for every computation,it’s crucial to construct an Algebraic Intermediate Representation (AIR), which comprises a set of polynomial constraints that accurately represent the given computation.
- CASM (Cairo Assembly): the machine code that the Cairo VM runs
- Sierra - serves as an intermediate representation between Cairo and CASM. This additional layer ensures that user code remains provable in all cases
---
<br>
---
### Why Cairo
CPU - Algebraic Intermediate Representation- OH (CAIRO)
- To generate validity proofs for any program
- Following the verification of the generated validity proof for the executed program
- if valid = the authencity of the result/output of the program that was executed
- this guarantees that the execution process did not fail
- Given that most of the hard work have been done by the prover, there's less work for the verifier thus making it easy to verify multiple times
### Starknet:
- complex computations, reduced complexity of on-chain verification
- No trusted setup
- Quantum secure: STARK uses collision-resistant cryptography in their zk proofs to improve security. Collision resistance means it should be difficult for an attacker to find 2 inputs that produce the same hash, even if the attacker knows the algorithm that is being used.
### Ethereum L1 Scaling Problem
- when a new state is proposed by a block producer, all the validators reexecute all the txns within the block till they get to validate that the new state is true/valid