Yan Luiz
    • Create new note
    • Create a note from template
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Write
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Save as template
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Versions and GitHub Sync Note Insights Sharing URL Create Help
Create Create new note Create a note from template
Menu
Options
Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       owned this note    owned this note      
    Published Linked with GitHub
    Subscribed
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    Subscribe
    # 🛡️ Cryptography [![hackmd-github-sync-badge](https://hackmd.io/aQ2YRnXCRDuzrXdfMJvvrw/badge)](https://hackmd.io/aQ2YRnXCRDuzrXdfMJvvrw) ## Contents [TOC] ## 📚 Introduction **An Introduction to the Basics of Cryptography**: A primer on the importance, history, and fundamental concepts of cryptography. ## 🔑 Addresses in Cryptography **Explanation**: Cryptographic addresses are essential for secure communication and transactions in various applications. ## 🔒 Hash Functions **Discussion**: The role of hash functions in cryptography, including applications like data integrity verification. ## 🛡️ Encryption **Overview**: Techniques used to protect data confidentiality and security. ## ✍️ Basic Signatures **Introduction**: Basic signature schemes and their importance in ensuring the authenticity and integrity of messages or data. ## 🚀 Advanced Signatures **Exploration**: Advanced signature schemes that offer enhanced security and features. ## 🗂 Hash-Based Data Structures **Explanation**: The use of hash functions in building data structures, their applications, and advantages. ## 🌌 Exotic Primitives **Introduction**: Exotic cryptographic primitives, including unconventional cryptographic algorithms or techniques. ## 🤫 Zero-Knowledge Proofs **Discussion**: The significance of zero-knowledge proofs in ensuring data privacy without revealing sensitive information. ## 🌍 Cryptography in Context **Presentation**: The broader context of cryptography and its relevance in real-world scenarios. ### 📖 Additional Cryptographic Topics - Many-time pad encryption - Exotic primitives and VRF activity - Zero-knowledge factorization example - Subkey demonstration - Rust REPL demo for hashing - Generating proofs for a cryptographic circuit # 📈 Economics ## 🏛 Fundamental Concepts **Exploration**: Core concepts such as supply, demand, market equilibrium, and economic principles. ## 🕹 Game Theory **Discussion**: The application of game theory in economic strategy analysis. ## 💸 Price Finding Mechanisms **Examination**: Methods and mechanisms for price determination in markets. ## 🤝 Collective Decision Making **Exploration**: The impact of collective decisions on economic outcomes. ## 🌐 Economics of Polkadot **Introduction**: Economic aspects of Polkadot, including incentives and governance. # 🔗 Blockchains ## 🧱 Introduction to Blockchains **Introduction**: Fundamental concepts, importance, and structures of blockchains. ## 🕸 P2P Networking **Explanation**: How peer-to-peer networking functions in blockchain systems and facilitates node communication. ## 📊 Blockchain Structure **Detailed Examination**: The architecture of blockchain systems, including blocks, transactions, and how data is organized. ## ✅ Consensus and Authoring **Discussion**: Mechanisms for consensus and the process of block authoring within blockchains. ## 🎮 Economics and Game Theory in Blockchain **Exploration**: Application of economic and game theory principles in the blockchain ecosystem. ## 💳 Accounts and UTXOs **Overview**: The role of accounts and unspent transaction outputs (UTXOs) in blockchain transactions. ## 🍴 Forks in Blockchains **Explanation**: The nature of forks, including hard forks and their impacts on blockchain networks. ## 🌉 Light Clients and Bridges **Introduction**: Lightweight clients and bridges for interacting with and between blockchain networks. ## 🚦 Consensus Finality **Discussion**: Achieving consensus finality and immutability in blockchain transactions. ## 🔀 Designing DAG-Based Consensus **Explanation**: Directed acyclic graph (DAG) based consensus algorithms and their implementation in blockchain. ## 📈 Resource Allocation, Fees, and Ordering **Examination**: How blockchain networks manage resource allocation, transaction fees, and the ordering of transactions. ## 🚀 Starting a Blockchain Activity **Information**: Steps to initiate and set up a blockchain project or activity. ## 🤝 Manual Consensus Activity **Guidance**: Conducting manual consensus activities as part of blockchain development. ## 🌿 Sassafras **Innovation**: A next-generation consensus protocol within the Polkadot network, Sassafras extends the BABE mechanism to introduce constant-time block production. # 📜 Smart Contracts ## 🤖 Coordination and Trust in Web3 **Discussion**: The crucial role of smart contracts in ensuring coordination and trust within Web3 environments. ## 🖥 Digital Services and State Machines **Overview**: The foundation of digital services and state machines in developing decentralized applications. ## 🔄 Platform-Agnostic Bytecode **Explanation**: The importance of platform-agnostic bytecode for cross-platform smart contract compatibility. ## 🛠 Quest for Infrastructure **Insights**: The necessary infrastructure for smart contract development, including tools and resources. ## 💾 EVM, Solidity, and Vyper **Discussion**: The use of the Ethereum Virtual Machine (EVM), Solidity, and Vyper in smart contract programming. ## 🕸 Wasm ink! **Exploration**: WebAssembly (Wasm) and its application in the ink! framework for smart contract development. ## 🔍 Testing ink! Contracts **Information**: Strategies and best practices for testing ink! contracts to ensure their reliability and security. ## 🌐 Interacting with the Environment from ink! Contracts **Explanation**: How ink! contracts interact with their surrounding environment and external data or contracts. ## 🏆 Contracts Competition **Overview**: A competition or project focus related to the development and application of smart contracts. # ⚙ Substrate **Overview**: Substrate is a comprehensive framework for constructing blockchains, offering a rich set of features and capabilities. It enables developers to create customized blockchains tailored to specific needs, with flexibility in consensus mechanisms, governance structures, and runtime modules. ## 🕸 Wasm Meta-Protocol **Discussion**: The WebAssembly (Wasm) meta-protocol plays a crucial role in the Substrate ecosystem, enhancing the adaptability and efficiency of blockchain development. It allows for the execution of smart contracts and runtime logic in a secure and interoperable manner across different platforms. ## 🗃 Merklized Storage **Explanation**: Merklized storage is a method used in Substrate to optimize data storage through the use of Merkle trees. This technique enhances data integrity and security, making it easier to verify blockchain states without the need to process the entire chain. ## 🏊 Transaction Pool **Exploration**: The transaction pool in Substrate is a vital component that manages pending transactions before they are included in a block. It ensures the efficient processing of transactions and maintains network throughput. ## ⚙ SCALE **Introduction**: SCALE (Simple Concatenated Aggregate Little-Endian) is a serialization format used by Substrate. It is designed for high performance and efficiency in data processing and communication within and across blockchain networks. ## 🔗 Substrate Interactions **Information**: Substrate's design allows for seamless interactions with external systems and components, facilitating interoperability and enabling a wide range of integrations with other blockchains and external services. ## 💻 Substrate in the Code **Insights**: A closer look into the Substrate codebase reveals best practices and development techniques for working with the framework. It provides developers with guidance on leveraging Substrate's capabilities to build robust blockchains. # ⚙ FRAME ## 🚀 Intro to FRAME **Introductory Session**: FRAME is a pivotal part of the Substrate ecosystem, providing a robust framework for building blockchain systems. It lays the foundation for developers to craft custom blockchains by offering key components and functionalities, emphasizing modularity and extensibility. ## 📦 Pallets and Traits **Discussion**: At the core of FRAME's architecture are pallets and traits, the modular pieces that allow for the flexible construction of blockchain logic. This section delves into how these building blocks can be utilized to develop bespoke blockchain functionalities. ## 🤝 Pallet Coupling **Exploration**: Pallet coupling in FRAME highlights the framework's capacity for interoperability between different pallets, facilitating complex blockchain operations and interactions. This topic explores strategies for integrating pallets to achieve cohesive blockchain ecosystems. ## 🛠 FRAME Basics ### 🗂 FRAME Storage **Explanation**: FRAME storage plays a critical role in the data architecture of Substrate-based blockchains. This section explains its importance and how it's leveraged to store state and manage data efficiently. ### 🪝 Pallet Hooks **Insights**: Pallet hooks offer a powerful mechanism for extending blockchain logic and customizing the behavior of pallets within the FRAME framework. Insights into their functionality and application are provided here. ### 📢 Events and Errors **Discussion**: Events and errors are essential for a robust blockchain, providing mechanisms for logging and error handling. This discussion covers their implementation within FRAME and their role in blockchain operations. ### 📞 Calls **Overview**: Calls are the primary method for executing transactions and operations in a Substrate-based blockchain. This overview showcases their functionality and how they're used within the FRAME framework. ## 🌐 FRAME Runtime ### 🛡 Origins **Explanation**: Origins within the FRAME runtime are key to managing permissions and access control. This explanation covers the concept of origins and their significance in the execution of transactions and calls. ### 🏗 Constructing the Runtime **Insights**: Constructing the runtime is a vital step in developing a Substrate-based blockchain. This section provides insights into the process, including configuration and setup considerations. ## 🏭 FRAME Production ### 📈 Benchmarking **Information**: Benchmarking is crucial for optimizing the performance of a blockchain. Information on how FRAME supports benchmarking efforts to ensure efficient and scalable blockchain solutions is presented here. ### 🔄 Migrations and Try Runtime **Discussion**: The ability to migrate and test runtime changes is essential for blockchain maintenance and upgrades. This discussion focuses on FRAME's capabilities for facilitating migrations and runtime testing. ## 🎁 FRAME Extras **Overview**: Beyond its foundational features, FRAME offers additional functionalities that enhance blockchain development. This overview highlights these extras, such as signed extensions and outer enums, providing developers with more tools and flexibility. **Deep Dive**: For those looking to gain a comprehensive understanding of FRAME, this section offers a deep dive into its advanced aspects and inner workings. It's designed for developers seeking to master FRAME for sophisticated blockchain solutions. # 🌐 Polkadot ## 🚀 Introduction to Polkadot **Introductory Session**: Polkadot offers a multi-chain framework that enables various blockchains to interoperate seamlessly, aiming to enhance scalability, governance, and interoperability in the blockchain space. It outlines the fundamentals, goals, and unique role of Polkadot in advancing the decentralized web. ## 🔧 Polkadot Decisions and Governance ### 🗳 Polkadot Decisions **Discussion**: This section delves into the governance mechanisms and decision-making processes within the Polkadot ecosystem, highlighting the roles of consensus and community engagement in steering the network. ### 📢 Open Governance **Insights**: Open governance in Polkadot emphasizes the critical role of community participation in the decision-making process, ensuring a decentralized and inclusive governance model. ### 🎓 Fellowship **Information**: The Polkadot Fellowship program is designed to engage contributors and developers, providing them with opportunities to play a pivotal role in the ecosystem's development and governance. ## 🛡 Polkadot Security and Scaling ### 📈 Blockchain Scaling (Parts 1 and 2) **Exploration**: Addresses the innovative approaches to blockchain scaling within Polkadot, focusing on the network's strategies to overcome scalability challenges. ### 🔗 Shared Security **Discussion**: Shared security is a cornerstone of the Polkadot network, offering enhanced protection through the collective security model of interconnected parachains. ### 🌐 Data Availability and Sharding **Deep Dive**: A comprehensive examination of data availability and sharding mechanisms in Polkadot, explaining their importance in achieving scalability and efficiency. ### ✉️ XCMP and Blockspace **Overview**: The Cross-Chain Message Passing (XCMP) protocol and blockspace optimization techniques within Polkadot are explored, showcasing the network's approach to interoperability and efficient data transmission. ### ⏱ Asynchronous Backing **Deep Dive**: An in-depth look at the asynchronous backing mechanisms employed by Polkadot, including insights into both its shallow and deep dive aspects for ensuring # 🔄 XCM - Cross-Chain Messaging ## 🌟 Core Concepts of XCM **Core Concepts**: An introductory exploration of the foundational concepts of Cross-Chain Messaging (XCM) within the Polkadot ecosystem, detailing how XCM enables seamless communication and interoperability between different blockchains. ## 💻 XCVM (Cross-Chain Virtual Machine) **XCVM Insights**: Dive into the Cross-Chain Virtual Machine (XCVM), highlighting its crucial role in facilitating and executing cross-chain interactions, making it a cornerstone for interoperable blockchain operations. ## 📦 Pallet XCM **Pallet XCM Discussion**: An overview of Pallet XCM, a vital component within the Polkadot network that implements the mechanics of XCM, enabling diverse messaging capabilities across chains. ## 🌉 Cross-Chain Scenarios **Exploration**: Examination of various cross-chain scenarios and use cases, showcasing the expansive practical applications of XCM in bridging disparate blockchain networks and facilitating a new era of interoperable blockchain functionality. ## 🔗 XCM in Polkadot **XCM Integration**: Explanation of XCM's integration into the Polkadot ecosystem, underscoring its pivotal role in enhancing the network's interoperability, scalability, and overall functionality. ## 🚀 Beyond Asset Transfers **Advanced Use Cases**: Discussion on the extensive capabilities of XCM that transcend simple asset transfers, illuminating its potential in powering complex cross-chain interactions, smart contracts, and more sophisticated blockchain applications. ## 🛠 XCM in Use **Practical Lessons**: A collection of practical lessons and real-world applications of XCM within Polkadot-based projects, illustrating how developers can leverage this powerful protocol to build versatile and interconnected blockchain solutions.

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully