# <span style="color:red">Example</span> deck. --- ### Agenda - A little of Theory<!-- .element: class="fragment" data-fragment-index="1" --> - Hash function<!-- .element: class="fragment" data-fragment-index="2" --> - Explore private key - public key relationship<!-- .element: class="fragment" data-fragment-index="3" --> - Digital signature<!-- .element: class="fragment" data-fragment-index="4" --> - Encryption<!-- .element: class="fragment" data-fragment-index="5" --> - POAP<!-- .element: class="fragment" data-fragment-index="6" --> --- ### A little of Theory ---- #### Why we need Cryptography? - To transfer private data over the public environment.<!-- .element: class="fragment" data-fragment-index="1" --> ---- #### Caesar cipher <img src="https://i.imgur.com/HnxEJ1Y.png" width="400"/> ---- #### Symmetric vs Asymmetric Encryption ---- ![](https://i.imgur.com/nDvt0Cc.png) ---- ![](https://i.imgur.com/Yb1UtLA.png) ---- | Feature | Symmetric | Asymmetric | | -------- | -------- | -------- | | Data size | big data | small data | | Resource Utilization | low | high | | Key Lengths | 128 or 256-bit| RSA 2048-bit or higher key size| | Speed | fast| slower| | Algorithms | RC4, AES, DES, 3DES, and QUAD | RSA, Diffie-Hellman, ECC algorithms. | --- #### Hash function exploration ---- #### Hash function summary - Deterministic<!-- .element: class="fragment" data-fragment-index="1" --> - One Direction<!-- .element: class="fragment" data-fragment-index="2" --> - Total values 10^77 (comparable with total atoms in the universe 10^82)<!-- .element: class="fragment" data-fragment-index="3" --> Note: - display as a color. - File as a source. - Send hash and ask to guess input. ---- #### Keccak256: <span style="color:red">fun fact</span> Note: Ethereum uses the Keccak-256 cryptographic hash function in many places. Keccak-256 was designed as a candidate for the SHA-3 Cryptographic Hash Function Competition held in 2007 by the National Institute of Standards and Technology. Keccak was the winning algorithm, which became standardized as Federal Information Processing Standard (FIPS) 202 in 2015. However, during the period when Ethereum was developed, the NIST standardization was not yet finalized. NIST adjusted some of the parameters of Keccak after the completion of the standards process, allegedly to improve its efficiency. This was occurring at the same time as heroic whistleblower Edward Snowden revealed documents that imply that NIST may have been improperly influenced by the National Security Agency to intentionally weaken the Dual_EC_DRBG random-number generator standard, effectively placing a backdoor in the standard random number generator. The result of this controversy was a backlash against the proposed changes and a significant delay in the standardization of SHA-3. At the time, the Ethereum Foundation decided to implement the original Keccak algorithm, as proposed by its inventors, rather than the SHA-3 standard as modified by NIST. --- #### Key pair exploration - How to create?<!-- .element: class="fragment" data-fragment-index="1" --> - Digital signatures.<!-- .element: class="fragment" data-fragment-index="2" --> - Ethereum example. <!-- .element: class="fragment" data-fragment-index="3" --> ---- #### Elliptic curve ![](https://i.imgur.com/c2dsJ9K.png) ---- #### Key pair summary - The public key is derived from the private key<!-- .element: class="fragment" data-fragment-index="1" --> - Digital signatures<!-- .element: class="fragment" data-fragment-index="2" --> Note: - Public key and address relationship. - Endless shelve of bank cells analogy. --- #### Encription/Decription exploration ---- #### Encription/Decription summary - Message can be encrypted using the Public key of the recipient.<!-- .element: class="fragment" data-fragment-index="1" --> - The encrypted message can be decrypted using the private key.<!-- .element: class="fragment" data-fragment-index="2" --> - Encrypted messages are almost impossible to break with existing computing power.<!-- .element: class="fragment" data-fragment-index="3" --> - No encryption is used in Ethereum right now.<!-- .element: class="fragment" data-fragment-index="4" --> --- ### Nest steps ---- #### Mastering Ethereum: Building Smart Contracts and DApps <img src="https://i.imgur.com/VHjbjZl.png" width="200"/> [Amazon](https://www.amazon.com/Mastering-Ethereum-Building-Smart-Contracts/dp/1491971940) [github](https://github.com/ethereumbook/ethereumbook) ---- #### Follow Twitter accounts - [@VitalikButerin](https://twitter.com/VitalikButerin) - co-founder of Ethereum. Researcher. - [@SalomonCrypto](https://twitter.com/SalomonCrypto) - threads about cryptography, blockcahin internals. - [@sandeepnailwal](https://twitter.com/sandeepnailwal) - polygon blockchain co-founder. - [@dabit3](https://twitter.com/dabit3) - devrel @aave. - [@superphiz](https://twitter.com/superphiz) - ethereum foundation. - [@VittoStack](https://twitter.com/VittoStack) - devrel @alhcemy. - [@OpenZeppelin](https://twitter.com/OpenZeppelin) - library of smart contract. Industry standard. ---- #### Learn online - https://speedrunethereum.com - https://cryptozombies.io - https://university.alchemy.com - [Road to web3](https://docs.alchemy.com/docs/welcome-to-the-road-to-web3) --- ### Thank you!
{"metaMigratedAt":"2023-06-17T12:05:57.905Z","metaMigratedFrom":"YAML","title":"<span style=\"color:red\">Example</span> deck.","breaks":true,"slideOptions":"{\"transition\":\"slide\",\"parallaxBackgroundImage\":\"https://i.imgur.com/bG8ubhq.png\",\"parallaxBackgroundSize\":\"2048px 1536px\",\"parallaxBackgroundHorizontal\":0,\"parallaxBackgroundVertical\":0}","contributors":"[{\"id\":\"a11f5a91-6322-4799-a3a3-92edbfb1b82f\",\"add\":7765,\"del\":2130}]"}
    230 views