> For the complete documentation index, see [llms.txt](https://secureum.gitbook.io/secureum-book/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://secureum.gitbook.io/secureum-book/learn.md).

# LEARN

- [Introduction](https://secureum.gitbook.io/secureum-book/learn/learn.md)
- [1. Ethereum Basics](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics.md)
- [1.1 Ethereum: Concept, Infrastructure & Purpose](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.1_ethereum_concept.md)
- [1.2 Properties of the Ethereum Infrastructure](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.2_properties_of_the_ethereum_infrastructure.md)
- [1.3 Ethereum vs. Bitcoin](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.3_ethereum_vs_bitcoin.md)
- [1.4 Ethereum Core Components](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.4_ethereum_core_components.md)
- [1.5 Gas Metering: Solving the Halting Problem](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.5_gas_metering_solving_the_halting_problem.md)
- [1.6 web2 vs. web3: The Paradigm Shift](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.6_web2_vs_web3_the_paradigm_shift.md)
- [1.7 Decentralization](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.7_decentralization.md)
- [1.8 Cryptography, Digital Signature & Keys](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.8_cryptography_digital_signature_and_keys.md)
- [1.9 Ethereum State & Account Types](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.9_ethereum_state_and_account_types.md)
- [1.10 Transactions: Properties & Components](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.10_transactions_properties_and_components.md)
- [1.11 Contract Creation](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.11_contract_creation.md)
- [1.12 Transactions, Messages & Blockchain](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.12_transactions_messages_and_blockchain.md)
- [1.13 EVM (Ethereum Virtual Machine) in Depth](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.13_evm_in_depth.md)
- [1.14 Transaction Reverts & Data](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.14_transaction_reverts_and_data.md)
- [1.15 Block Explorer](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.15_block_explorer.md)
- [1.16 Mainnet & Testnets](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.16_mainnet_and_testnets.md)
- [1.17 ERCs & EIPs](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.17_eips_and_ercs.md)
- [1.18 Legal Aspects in web3: Pseudonymity & DAOs](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.18_legal_aspects_in_web3.md)
- [1.19 Security in web3](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.19_security_in_web3.md)
- [1.20 web2 Timescales vs. web3 Timescales](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.20_web2_timescales_vs_web3_timescales.md)
- [1.21 Test-in-Prod. SSLDC vs. Audits](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/1.21_test_in_prod_ssldc_vs_audits.md)
- [Summary: 101 Keypoints](https://secureum.gitbook.io/secureum-book/learn/learn/1_ethereum_basics/summary_101_keypoints.md)
- [2. Solidity](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity.md)
- [2.1 Solidity: Influence, Features & Layout](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.1_solidity_influence_features_and_layout.md)
- [2.2 SPDX & Pragmas](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.2_spdx_and_pragmas.md)
- [2.3 Imports](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.3_imports.md)
- [2.4 Comments & NatSpec](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.4_comments_and_natspec.md)
- [2.5 Smart Contracts](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.5_smart_contracts.md)
- [2.6 State Variables: Definition, Visibility & Mutability](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.6_state_variables_definition_visibility_and_mutability.md)
- [2.7 Data Location](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.7_data_location.md)
- [2.8 Functions](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.8_functions.md)
- [2.9 Events](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.9_events.md)
- [2.10 Solidity Typing](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.10_solidity_typing.md)
- [2.11 Solidity Variables](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.11_solidity_variables.md)
- [2.12 Address Type](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.12_address_type.md)
- [2.13 Conversions](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.13_conversions.md)
- [2.14 Keywords & Shorthand Operators](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.14_keywords_and_shorthand_operators.md)
- [2.15 Solidity Units](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.15_solidity_units.md)
- [2.16 Block & Transaction Properties](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.16_block_and_transaction_properties.md)
- [2.17 ABI Encoding & Decoding](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.17_abi_encoding_and_decoding.md)
- [2.18 Error Handling](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.18_error_handling.md)
- [2.19 Mathematical & Cryptographic Functions](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.19_mathematical_and_cryptographic_functions.md)
- [2.20 Control Structures](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.20_control_structures.md)
- [2.21 Style & Conventions](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.21_style_and_conventions.md)
- [2.22 Inheritance](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.22_inheritance.md)
- [2.23 EVM Storage](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.23_evm_storage.md)
- [2.24 EVM Memory](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.24_evm_memory.md)
- [2.25 Inline Assembly](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.25_inline_assembly.md)
- [2.26 Solidity Version Changes](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.26_solidity_version_changes.md)
- [2.27 Security Checks](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.27_security_checks.md)
- [2.28 OpenZeppelin Libraries](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.28_open_zeppelin_libraries.md)
- [2.29 DAppSys Libraries](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.29_dappsys_libraries.md)
- [2.30 Important Protocols](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/2.30_important_protocols.md)
- [Summary: 201 Keypoints](https://secureum.gitbook.io/secureum-book/learn/learn/2_solidity/summary_201_keypoints.md)
- [3. Security Pitfalls & Best Practices](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices.md)
- [3.1 Solidity Versions](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.1_solidity_versions.md)
- [3.2 Access Control](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.2_access_control.md)
- [3.3 Modifiers](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.3_modifiers.md)
- [3.4 Constructor](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.4_constructor.md)
- [3.5 Delegatecall](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.5_delegatecall.md)
- [3.6 Reentrancy](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.6_reentrancy.md)
- [3.7 Private Data](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.7_private_data.md)
- [3.8 PRNG & Time](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.8_prng_and_time.md)
- [3.9 Math & Logic](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.9_math_and_logic.md)
- [3.10 Transaction Order Dependence](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.10_transaction_order_dependence.md)
- [3.11 ecrecover](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.11_ecrecover.md)
- [3.12 Unexpected Returns](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.12_unexpected_returns.md)
- [3.13 Ether Accounting](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.13_ether_accounting.md)
- [3.14 Transaction Checks](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.14_transaction_checks.md)
- [3.15 Delete Mappings](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.15_delete_mappings.md)
- [3.16 State Modification](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.16_state_modification.md)
- [3.17 Shadowing & Pre-declaration](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.17_shadowing_and_pre_declaration.md)
- [3.18 Gas & Costs](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.18_gas_and_costs.md)
- [3.19 Events](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.19_events.md)
- [3.20 Unary Expressions](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.20_typographical_errors.md)
- [3.21 Addresses](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.21_addresses.md)
- [3.22 Assertions](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.22_assertions.md)
- [3.23 Keywords](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.23_keywords.md)
- [3.24 Visibility](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.24_visibility.md)
- [3.25 Inheritance](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.25_inheritance.md)
- [3.26 Reference Parameters](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.26_reference_parameters.md)
- [3.27 Arbitrary Jumps](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.27_arbitrary_jumps.md)
- [3.28 Hash Collisions & Byte Level Issues](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.28_hash_collisions_and_byte_level_issues.md)
- [3.29 Unicode RTLO](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.29_unicode_rtlo.md)
- [3.30 Variables](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.30_variables.md)
- [3.31 Pointers](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.31_pointers.md)
- [3.32 Out-of-range Enum](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.32_out_of_range_enum.md)
- [3.33 Dead Code & Redundant Statements](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.33_dead_code_and_redundant_statements.md)
- [3.34 Compiler Bugs](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.34_compiler_bugs.md)
- [3.35 Proxy Pitfalls](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.35_proxy_pitfalls.md)
- [3.36 Token Pitfalls](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.36_token_pitfalls.md)
- [3.37 Special Token Pitfalls](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.37_special_tokens_pitfalls.md)
- [3.38 Guarded Launch Pitfalls](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.38_guarded_launch_pitfalls.md)
- [3.39 System Pitfalls](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.39_system_pitfalls.md)
- [3.40 Access Control Pitfalls](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.40_access_control_pitfalls.md)
- [3.41 Testing, Unused & Redundand Code](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.41_testing_unused_and_redundant_code.md)
- [3.42 Handling Ether](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.42_handling_ether.md)
- [3.43 Application Logic Pitfalls](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.43_application_logic_pitfalls.md)
- [3.44 Saltzer & Schroeder's Design Principles](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/3.44_saltzer_and_schroeders_design_principles.md)
- [Summary: 201 Keypoints](https://secureum.gitbook.io/secureum-book/learn/learn/3_security_pitfalls_and_best_practices/summary_201_keypoints.md)
- [4. Audit Techniques & Tools](https://secureum.gitbook.io/secureum-book/learn/learn/4_audit_techniques_and_tools.md)
- [4.1 Audit](https://secureum.gitbook.io/secureum-book/learn/learn/4_audit_techniques_and_tools/4.1_audit.md)
- [4.2 Analysis Techniques](https://secureum.gitbook.io/secureum-book/learn/learn/4_audit_techniques_and_tools/4.2_analysis_techniques.md)
- [4.3 Specification, Documentation & Testing](https://secureum.gitbook.io/secureum-book/learn/learn/4_audit_techniques_and_tools/4.3_specification_documentation_and_testing.md)
- [4.4 False Positives & Negatives](https://secureum.gitbook.io/secureum-book/learn/learn/4_audit_techniques_and_tools/4.4_false_positives_and_negatives.md)
- [4.5 Security Tools](https://secureum.gitbook.io/secureum-book/learn/learn/4_audit_techniques_and_tools/4.5_security_tools.md)
- [4.6 Audit Process](https://secureum.gitbook.io/secureum-book/learn/learn/4_audit_techniques_and_tools/4.6_audit_process.md)
- [Summary: 101 Keypoints](https://secureum.gitbook.io/secureum-book/learn/learn/4_audit_techniques_and_tools/summary_101_keypoints.md)
- [5. Audit Findings](https://secureum.gitbook.io/secureum-book/learn/learn/5_audit_findings.md)
- [5.1 Criticals](https://secureum.gitbook.io/secureum-book/learn/learn/5_audit_findings/5.1_criticals.md)
- [5.2 Highs](https://secureum.gitbook.io/secureum-book/learn/learn/5_audit_findings/5.2_highs.md)
- [5.3 Mediums](https://secureum.gitbook.io/secureum-book/learn/learn/5_audit_findings/5.3_mediums.md)
- [5.4 Lows](https://secureum.gitbook.io/secureum-book/learn/learn/5_audit_findings/5.4_lows.md)
- [5.5 Informationals](https://secureum.gitbook.io/secureum-book/learn/learn/5_audit_findings/5.5_informationals.md)
- [Summary: 201 Keypoints](https://secureum.gitbook.io/secureum-book/learn/learn/5_audit_findings/summary_201_keypoints.md)
