Hands-on tutorial on installation IPFS node and creation of smart contracts that use IPFS for data storage. As an example of IPFS usage in smart contracts, we create ERC-721 NFT that reference file in IPFS.
Tools and technologies used in this tutorial:
GCP https://console.cloud.google.com/home
ApiDapp https://apidapp.com/
Etherscan https://kovan.etherscan.io/
Solidity https://solidity.readthedocs.io/en/v0.6.1/
Open Zeppelin https://openzeppelin.com/contracts/
IPFS is a distribution protocol that enables the creation of completely distributed applications through content addressing. A very ambitious open source project in Go, IPFS adopts a peer-to-peer hypermedia protocol to protect against a single point of failure. This presentation aims to highlight the design and ideas of IPFS and also touches upon a real world use case.
ArcBlock Technical Learning Series Presents IPFS.
If there's a missing piece in current blockchain stack, that'll be a decentralized, public verifiable file system. Ideally before decentralizing computing, we shall decentralize the data. IPFS filled in this area, and it has a great potential to push web to the true web3 - decentralized web. This talk will talk about what problem IPFS is trying to solve, how it solves the problem, and how to use IPFS in our applications.
https://www.arcblock.io
https://hack.arcblock.io/learning
Protocol Labs, David Dias, TADSummit 2018Alan Quayle
Protocol Labs
David Dias, P2P Software Engineer at Protocol Labs. Making IPFS and filecoin.
Secure and robust access to information, to communication, and to computing has become a critical part of what it means to be a human. The internet has become the main vehicle for human interactions worldwide, and it will only become more so as our devices and interfaces improve. Protocol Labs is focused on the evolution of the internet through decentralize web projects.
At the heart of computing progress lies a simple process: the research, development, and deployment cycle. Protocol Labs accelerates the ideas-to-superpowers pipeline through its projects, which is closely aligned to the approach of TADHack and TADSummit in moving ideas to reality.
We’ll focus on two of the Protocol Labs projects, the InterPlanetary File System (IPFS) that enables the creation of completely decentralized and distributed applications. And Filecoin a cryptocurrency powered storage network. Sharing the latest results and its impact for Programmable Telecoms.
A brief overview of caching mechanisms in a web application. Taking a look at the different layers of caching and how to utilize them in a PHP code base. We also compare Redis and MemCached discussing their advantages and disadvantages.
IPFS is a distribution protocol that enables the creation of completely distributed applications through content addressing. A very ambitious open source project in Go, IPFS adopts a peer-to-peer hypermedia protocol to protect against a single point of failure. This presentation aims to highlight the design and ideas of IPFS and also touches upon a real world use case.
ArcBlock Technical Learning Series Presents IPFS.
If there's a missing piece in current blockchain stack, that'll be a decentralized, public verifiable file system. Ideally before decentralizing computing, we shall decentralize the data. IPFS filled in this area, and it has a great potential to push web to the true web3 - decentralized web. This talk will talk about what problem IPFS is trying to solve, how it solves the problem, and how to use IPFS in our applications.
https://www.arcblock.io
https://hack.arcblock.io/learning
Protocol Labs, David Dias, TADSummit 2018Alan Quayle
Protocol Labs
David Dias, P2P Software Engineer at Protocol Labs. Making IPFS and filecoin.
Secure and robust access to information, to communication, and to computing has become a critical part of what it means to be a human. The internet has become the main vehicle for human interactions worldwide, and it will only become more so as our devices and interfaces improve. Protocol Labs is focused on the evolution of the internet through decentralize web projects.
At the heart of computing progress lies a simple process: the research, development, and deployment cycle. Protocol Labs accelerates the ideas-to-superpowers pipeline through its projects, which is closely aligned to the approach of TADHack and TADSummit in moving ideas to reality.
We’ll focus on two of the Protocol Labs projects, the InterPlanetary File System (IPFS) that enables the creation of completely decentralized and distributed applications. And Filecoin a cryptocurrency powered storage network. Sharing the latest results and its impact for Programmable Telecoms.
A brief overview of caching mechanisms in a web application. Taking a look at the different layers of caching and how to utilize them in a PHP code base. We also compare Redis and MemCached discussing their advantages and disadvantages.
Multi-Clusters Made Easy with Liqo: Getting Rid of Your Clusters Keeping Them...KCDItaly
Many companies are experiencing a dramatic increase in the number of their Kubernetes clusters, for
reasons such as geographical/legislative constraints, data/service replication, etc.
However, when the number of clusters increases, the complexity of deploying apps, managing the entire
multi-cluster infrastructure, and keeping its state under control, becomes rapidly an unmanageable
problem.
A possible solution is Liqo, an open-source project that simplifies the creation of multi-cluster topologies
by replicating the Kubernetes “cattle” model also to clusters.
Liqo creates a virtual cluster that spans multiple real clusters, either on-prem or managed (AKS, EKS,
GKE), and instantiates the desired applications seamlessly in the appropriate cluster.
This talk will discuss the potentials and roadblocks of this vision and highlight how Liqo brings multi-
cluster transparency to the users.
Designed by Sanjay Ghemawat , Howard Gobioff and Shun-Tak Leung of Google in 2002-03.
Provides fault tolerance, serving large number of clients with high aggregate performance.
The field of Google is beyond the searching.
Google store the data in more than 15 thousands commodity hardware.
Handles the exceptions of Google and other Google specific challenges in their distributed file system.
IP tables-the linux firewall. This link shows the pdf document that you can download.This is a useful document for the beginners, lays the attention to know more about the topic.
Peer-to-peer Systems – Introduction – Napster and its legacy – Peer-to-peer – Middleware – Routing overlays. Overlay case studies: Pastry, Tapestry- Distributed File Systems –Introduction – File service architecture – Andrew File system. File System: Features-File model -File accessing models – File sharing semantics Naming: Identifiers, Addresses, Name Resolution – Name Space Implementation – Name Caches – LDAP.
This presentation features a walk through the Linux kernel networking stack covering the essentials and recent developments a developer needs to know. Our starting point is the network card driver as it feeds a packet into the stack. We will follow the packet as it traverses through various subsystems such as packet filtering, routing, protocol stacks, and the socket layer. We will pause here and there to look into concepts such as segmentation offloading, TCP small queues, and low latency polling. We will cover APIs exposed by the kernel that go beyond use of write()/read() on sockets and will look into how they are implemented on the kernel side.
InterPlanetary File System 소개 자료입니다.
풀 한글로 작성하고 싶었으나
시간관계 상 중반부 이상은 영문 번역을 손을 못댔네요.
(이후 시간이 된다면 수정해보겠습니다.
그림 및 도표의 출처는 모두 링크로 기재되어있습니다.
본자료는 흐름을 이해하는데 사용하시고
원문 링크를 한번씩 더 읽어보시길 추천드립니다.
The content routing system of IPFS is the part of the architecture that discovers content in the network. It is considered by many as the most important part of the architecture, as well as the one with the most open research questions. Through this module, you will learn:
- IPFS's Content Routing Architecture,
- the protocol settings and algorithmics of IPFS’s mighty DHT,
- IPFS's gossip-based content routing approaches.
Smart contracts and NFTs call for a revised approach to store data. In these slides, 3 options for distributed and fault-tolerant data storage are presented:
IPFS
Filecoin
Arweave
Multi-Clusters Made Easy with Liqo: Getting Rid of Your Clusters Keeping Them...KCDItaly
Many companies are experiencing a dramatic increase in the number of their Kubernetes clusters, for
reasons such as geographical/legislative constraints, data/service replication, etc.
However, when the number of clusters increases, the complexity of deploying apps, managing the entire
multi-cluster infrastructure, and keeping its state under control, becomes rapidly an unmanageable
problem.
A possible solution is Liqo, an open-source project that simplifies the creation of multi-cluster topologies
by replicating the Kubernetes “cattle” model also to clusters.
Liqo creates a virtual cluster that spans multiple real clusters, either on-prem or managed (AKS, EKS,
GKE), and instantiates the desired applications seamlessly in the appropriate cluster.
This talk will discuss the potentials and roadblocks of this vision and highlight how Liqo brings multi-
cluster transparency to the users.
Designed by Sanjay Ghemawat , Howard Gobioff and Shun-Tak Leung of Google in 2002-03.
Provides fault tolerance, serving large number of clients with high aggregate performance.
The field of Google is beyond the searching.
Google store the data in more than 15 thousands commodity hardware.
Handles the exceptions of Google and other Google specific challenges in their distributed file system.
IP tables-the linux firewall. This link shows the pdf document that you can download.This is a useful document for the beginners, lays the attention to know more about the topic.
Peer-to-peer Systems – Introduction – Napster and its legacy – Peer-to-peer – Middleware – Routing overlays. Overlay case studies: Pastry, Tapestry- Distributed File Systems –Introduction – File service architecture – Andrew File system. File System: Features-File model -File accessing models – File sharing semantics Naming: Identifiers, Addresses, Name Resolution – Name Space Implementation – Name Caches – LDAP.
This presentation features a walk through the Linux kernel networking stack covering the essentials and recent developments a developer needs to know. Our starting point is the network card driver as it feeds a packet into the stack. We will follow the packet as it traverses through various subsystems such as packet filtering, routing, protocol stacks, and the socket layer. We will pause here and there to look into concepts such as segmentation offloading, TCP small queues, and low latency polling. We will cover APIs exposed by the kernel that go beyond use of write()/read() on sockets and will look into how they are implemented on the kernel side.
InterPlanetary File System 소개 자료입니다.
풀 한글로 작성하고 싶었으나
시간관계 상 중반부 이상은 영문 번역을 손을 못댔네요.
(이후 시간이 된다면 수정해보겠습니다.
그림 및 도표의 출처는 모두 링크로 기재되어있습니다.
본자료는 흐름을 이해하는데 사용하시고
원문 링크를 한번씩 더 읽어보시길 추천드립니다.
The content routing system of IPFS is the part of the architecture that discovers content in the network. It is considered by many as the most important part of the architecture, as well as the one with the most open research questions. Through this module, you will learn:
- IPFS's Content Routing Architecture,
- the protocol settings and algorithmics of IPFS’s mighty DHT,
- IPFS's gossip-based content routing approaches.
Smart contracts and NFTs call for a revised approach to store data. In these slides, 3 options for distributed and fault-tolerant data storage are presented:
IPFS
Filecoin
Arweave
Effective Building your Platform with Kubernetes == Keep it Simple Wojciech Barczyński
Effective Kubernetes is a continuous deployment process that the team understands. Keep it Simple. Think twice before going for more complex solutions.
Source: https://github.com/wojciech12/talk_effective_kubernetes
Presented at Cloud Native Talks #2 (Online Meetup) - https://www.meetup.com/Cloud-Native-Kubernetes-Warsaw/events/257125529/
Linux Security and How Web Browser Sandboxes Really Work (Security Researcher...Patricia Aas
The Linux Security and Isolation APIs have become the basis of some of the most useful features server-side, providing the isolation required for efficient containers. However, these APIs also form the basis of the Chromium Sandbox on Linux, and we will study them in that context.
This presentation goes more in depth on some key points from the NDC (2017) presentation.
Choosing a right cloud provider to host your mission-critical application on the cloud is a multi-dimensional challenge faced by most of the companies. This presentation provides you information on the various benefits, challenges, and insights while evaluating a cloud provider and helps you quickly make a decision to choose a right cloud partner for your business to host your application.
View IT operations as a flow of data (Sources of Truth) thru work-cells (automation processes) to deliver value to the customer.
There should be only one source of truth for every piece of configuration data.
Device configurations are poor source of truth.
Learn how to build decentralized and serverless html5 applications with embar...Alessandro Confetti
Codemotion, Amsterdam 09/05/2018
Do you have an idea for a startup and don't want to pay for scaling it up? Forget about bandwidth problems, servers to install and pay for, with the power of IPFS, DAT and the blockchain.
In this talk, we will explore how to build an HTML5 DAPP (distributed application) with EmbarkJS, and figure out how to rethink servers, storage, messaging, data and payments in a distributed and decentralised way with the help of Ethereum's smart contracts, IPFS and DAT distributed storage.
Discover more at http://blog.zigolab.it
Learn how to build decentralized and serverless html5 applications with Embar...Codemotion
Do you have an idea for a startup and don't want to pay for scaling it up? Forget about bandwidth problems, servers to install and pay for, with the power of IPFS, DAT and the blockchain. In this talk, we will explore how to build an HTML5 DAPP (distributed application) with EmbarkJS, and figure out how to rethink servers, storage, messaging, data and payments in a distributed and decentralised way with the help of Ethereum's smart contracts, IPFS and DAT distributed storage.
Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)Patricia Aas
The Linux Security and Isolation APIs have become the basis of some of the most useful features server-side, providing the isolation required for efficient containers. However, these APIs also form the basis of the Chromium Sandbox on Linux, and we will study them in that context.
This presentation goes more in depth on some key points from the NDC (2017) presentation.
Make stateful apps in Kubernetes a no brainer with Pure Storage and GitOpsWeaveworks
The need for scale and acceleration of code to production are the main drivers behind the rapid adoption of Kubernetes in modern enterprises. Organizations are aiming to deploy thousands of cloud native applications, including stateful applications on premise, in a single cloud or across multiple clouds. Managing these workloads are complex and can often be a challenging task when it comes to automating operational tasks, rolling updates or migrations.
In this webinar Weaveworks and Pure will show you how integrated solutions such as the Weave Kubernetes Platform and Pure Service Orchestrator can save you valuable time through efficient, predictable and reliable operations.
By Patrick Griffis.
Sandboxing is an important part of modern security and as of WebKitGTK 2.26 it is able to sandbox its web processes. This talk will cover how WebKitGTK using applications can enable it as well as go into the technical details of how the sandbox is implemented.
(c) GUADEC 2019
August 23rd — 28th
Thessaloniki, Greece
https://2019.guadec.org/
Scaleable PHP Applications in KubernetesRobert Lemke
Kubernetes is also called the "distributed Linux of the cloud" – which implies that it provides fundamental infrastructure, which can solve a lot of challenges. Let’s see how PHP applications fit into this picture. In this presentation, we are going to explore when Kubernetes is a good fit for operating your PHP application and how it can be done in practice. We’ll look at the whole lifecycle: how to build your application, create or choose the right Docker images, deploy and scale, and how to deal with performance and monitoring. At the end you will have a good understanding about all the different stages and building blocks for running a PHP application with Kubernetes in production.
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...Jian-Hong Pan
Flatpak is a framework for distributing desktop applications and supported by most of Linux distributions. This talk shares how to package a HTTP server written in Python as a Flatpak app. And, runs it like a desktop application by launching a browser connecting to the server automatically.
https://hackmd.io/@starnight/Have_an_HTTP_Server_in_Flatpak
Software is changing the world. CGC is a Common Gateway Coding as the name says, it is a "common" language approach for almost everything. I want to show how a multi-language approach to infrastructure as code using general purpose programming languages lets cloud engineers and code producers unlocking the same software engineering techniques commonly used for applications.
Presented by: Jason Mimick
Technical Director, MongoDB
MongoDB Ops Manager is an enterprise-grade end-to-end database management, monitoring, and backup solution. Kubernetes has clearly won the orchestration-platform "wars". In this session we'll take a deep dive on how you can leverage both these technologies to host your MongoDB deployments within your Kubernetes infrastructure whether that's OpenShift, PKS, Azure AKS, or just upstream. This talk will review the core technologies, such as containers, Kubernetes, and MongoDB Ops Manager. You'll also have a chance to see real-live demos of MongoDB running on Kubernetes and managed with MongoDB Ops Manager with the MongoDB Enterprise Kubernetes Operator.
🚀 What Are GPTs?
GPTs are tailor-made ChatGPT versions that you can craft to suit your specific needs. Whether it's for learning new skills, aiding in education, or assisting in unique work tasks, these custom GPTs are designed to be versatile and incredibly user-friendly.
✨ Create Your Own AI Assistant - No Coding Required! The best part? You don't need to be a tech wizard to create your GPT. The process is as simple as starting a conversation - guiding the AI, feeding it extra knowledge, and choosing its capabilities, like web searching, crafting images, or data analysis.
Generative AI Use-cases for Enterprise - First SessionGene Leybzon
In this presentation, we will delve into the exciting applications of Generative AI across various business domains. Leveraging the capabilities of artificial intelligence and machine learning, Generative AI allows for dynamic, context-aware user interfaces that adapt in real-time to provide personalized user experiences. We will explore how this transformative technology can streamline design processes, facilitate user engagement, and open the doors to new forms of interactivity.
Non-fungible tokens (NFTs) are unique digital assets that are verified on a blockchain network, allowing for the creation and ownership of one-of-a-kind digital items, such as artwork, music, videos, and other types of digital content. They are important because they provide a way for digital creators to monetize their work and establish ownership, scarcity, and authenticity of their creations. NFTs have also gained popularity as a form of investment and collectible item, with some NFTs selling for millions of dollars.
This slide deck includes the following sections:
Introduction: Provide a brief overview of what NFTs are and their significance in the digital world.
How NFTs work: Explain the process of creating and verifying NFTs on a blockchain network, including the use of smart contracts and cryptographic hashing.
Types of NFTs: Describe the various types of NFTs that can be created, such as digital artwork, music, videos, and other types of digital content.
Benefits of NFTs: Highlight the benefits of NFTs, including the ability to establish ownership, scarcity, and authenticity of digital assets, as well as their potential as a new source of revenue for creators.
Market trends: Provide an overview of the current state of the NFT market, including recent sales and trends in various industries, such as art, sports, and gaming.
Potential use cases: Discuss potential use cases for NFTs beyond the current market, such as in the areas of identity verification, supply chain management, and digital voting.
Challenges and risks: Acknowledge the challenges and risks associated with NFTs, such as environmental concerns related to blockchain networks and the potential for fraudulent activity.
Conclusion: Summarize the key takeaways of the presentation and emphasize the growing importance of NFTs in the digital world.
Introduction to Solidity and Smart Contract Development (9).pptxGene Leybzon
Blockchain is a revolutionary technology that is changing the way we handle digital transactions. It is a technology that can be applied in many different fields, from logistics and supply chain management to real estate and voting systems.
In order to help our clients to plan and execute digital transformation, we need to understand foundational elements, including smart contracts and languages that are popular in developing smart contracts.
In this presentation, we share an overview of what a smart contract is and how it functions, look into the real-world examples of smart contracts, and tools that are used to develop smart contracts. We look into Solidity, a powerful programming language that enables developers to create complex and sophisticated smart contract applications on Ethereum-compatible blockchains.
There is no expectation of prior knowledge of blockchain technology or smart contracts development and we are expecting to have a lively and engaging session.
Ethereum and other blockchains are finding their way into the enterprise world. We look into common use cases, blockchains, and standard approaches to deploy and access enterprise blockchains
Demonstrating how to create an end-to-end Web-based application that uses blockchain for user authentication, read, and write access to the data stored on the blockchain
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
2. THERE ARE SOME SMART CONTRACT
USE CASES WHERE STORAGE OF
LARGE AMOUNT OF DATA IS NEEDED
Gov Records Trade Finance
Title Recording Supply Chain
3. HOW EXPENSIVE IS IT TO STORE
DATA ON BOCKCHIN? LET’S CHECK:
pragma solidity ^0.5.0;
contract WriteRandomData {
bytes32[] randomArray;
constructor() public {
bytes32 rand32 = keccak256(abi.encodePacked(block.timestamp));
for(uint i; i<32; i++) {
rand32 = keccak256(abi.encodePacked(rand32));
randomArray.push(rand32);
}
}
}
7. LET’S CONVERT IT TO DOLLARS
AND CENTS
1 KB of data storage on Etherium: 788,268-73,032 = 715,236
Gas Units
715,236 Gas Units = 715,236 Gwei (assuming that we set
1Gwei for gas price)
1Gwei = 0.00001908 USD (as of 1/11/2020)
1KB Of storage: $0.00001908* 715,236 = $ 13.64670288
11. MERKLE TREE
• Every leaf node is labelled with the
hash of a data block.
• Every non-leaf node is labelled with
the cryptographic hash of the labels
of its child nodes
12. MERKLE DIERECT ACCYCLIC
GRAPH (DAG)
DAG data structure similar to a Merkle tree but
not so strict:
1. DAG does not need to be balanced
2. Non-leaf nodes are allowed to contain data
Merkle DAG enables uniquely identified,
tamper-resistant and permanently stored
data shared by network nodes.
DAG creates a foundation for Distributed
Hash Table
13. IPFS PROPERTIES
With the Distributed Hash Table, nodes can store & share data
without central coordination
IPFS is Persistent Data Structure (nothing can be deleted)
Uploaded content is not guaranteed to persist on the network (all
participating nodes should consider participation a voluntary service)
14. HOW TO STORE AND ACCESS FILES
ON IPFS?
Command line interface https://dist.ipfs.io/#go-ipfs
API https://docs.ipfs.io/reference/api/http/
Libraries for different languages, for example NPM module for
JavaScript: https://www.npmjs.com/package/ipfs-api
22. PUBLISHING TO IPFS
• How to publish files to
the IPFS node
• How to read objects
from IPFS node
23. PUBLISH A FILE
leybzon@instance-1:~/go/bin$ cd ~
leybzon@instance-1:~$ vi test.html
leybzon@instance-1:~$ ./go/bin/ipfs add -w test.html
added QmTBJ2SCD5Jpkqu3eM6utx4yfviwHBNKGqFgfbP5CcT1zk
test.html
added QmeoBZA3ywRT5wEa6RBuHxF4qaKAK8qSxuxWCr4BpPzT2r 7 B
/ 7 B
[=========================================]
100.00%
24. CHECK THAT THE FILE WAS
PUBLISHED LOCALLY
leybzon@instance-1:~/go/bin$ ./go/bin/ipfs object get
QmTBJ2SCD5Jpkqu3eM6utx4yfviwHBNKGqFgfbP5CcT1
zk{"Links":[],"Data":"u0008u0002u0012u0007testnnnu0018u0007"}u0
012u0007testnnnu0018u0007"}
25. START IPFS DAEMON
leybzon@instance-2:~/go/bin$ ~/go/bin/ipfs daemon
Initializing daemon...go-ipfs version: 0.5.0-dev-049d3b0Repo version: 7
System version: amd64/linuxGolang version: go1.13.4
Swarm listening on /ip4/10.128.0.5/tcp/4001
Swarm listening on /ip4/127.0.0.1/tcp/4001
Swarm listening on /ip6/::1/tcp/4001
Swarm listening on /p2p-circuit
Swarm announcing /ip4/10.128.0.5/tcp/4001
Swarm announcing /ip4/127.0.0.1/tcp/4001
Swarm announcing /ip6/::1/tcp/4001
API server listening on /ip4/127.0.0.1/tcp/5001
WebUI: http://127.0.0.1:5001/webui
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080
Daemon is ready
26. USE INFURA GATEWAY TO GET THE
OBJECT
leybzon@instance-1:~/go/bin$ curl
“https://ipfs.infura.io:5001/api/v0/cat?arg=QmTBJ2SCD5Jpkqu3eM6utx4yfviwHBNKGqFgfbP
5CcT1zk”
test
27. SMART CONTRACT +
IPFS
• How to use IPFS objects in
Smart Contracts
• Creating ERC721 Smart
Contract
• Minting tokens connected
to IPFS objects
28. ERC-721 NFT CONNECTED TO DATA
IPFS
NFT Tokens are
Unique
Irreplaceable
Non-
interchngable
ERC721Full ERC721Mintable
ERC721
ERC721Enumerabl
e
ERC721Metadata
MyNFT
mint1()
mintUniqueTokenT
https://en.wikipedia.org/wiki/Merkle_tree
every leaf node is labelled with the hash of a data block, and every non-leaf node is labelled with the cryptographic hash of the labels of its child nodes
https://en.wikipedia.org/wiki/Merkle_tree
every leaf node is labelled with the hash of a data block, and every non-leaf node is labelled with the cryptographic hash of the labels of its child nodes
Image from https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSG4yZSyyw91ZphCLwGfIu2cyP3bD2GEu8uy2FQXX1vvFEvkQqn&s
https://console.cloud.google.com/
https://console.cloud.google.com/compute/instances?project=pbs-network-test&instancessize=50
“Create Instance”
Select Ubuntu as boot disk