🔲DECENTRALIZED STORAGE thread

Many of us have an idea of ​​what a database is, but how do we behave when dealing with Ethereum?

We can use something called Decentralized Storage (dStorage for frens)

The good news is that Ethereum itself can be used as a DB.

but ...
Table of Contents

· Definition
· The Problem
· The solution
· Blockchain-based persistence
· Incentive structure
· Contract-based persistence
· Challenge mechanism
· Decentrality
· Consensus
· Tools

Definition

dStorage systems are p2p network of user-operators who hold just a portion of the overall data.

By doing so, they create a resilient file storage sharing system.

Two options.

dStorages can be:
- in a blockchain-based app.
- in a p2p network.
The Problem

Ethereum itself can be used as a dStorage.

But it's not to be designed to store a large amount of data.

Currently, every node has to store ~1TB: if it grows so fast it will be soon too much for all the nodes.

The gas cost to deploy this data would be too much.
The solution

We need a different chain or methodology to store large amounts of data in a decentralized way.

Concepts:
- Persistence mechanism (Blockchain-based or Contract-based)
- Incentive structure
- Challenge mechanism
- Decentrality
- Consensus
Blockchain-based persistence

When running a node on Ethereum, the whole chain needs to be accounted for.

Every node needs to replicate all the data, that get tacked onto the end of the chain.

if the chain grows too much, putting it all on the same node becomes a problem!
Incentive Structure

The blockchain must also have some type of incentive structure.

For blockchain-based persistence, there is a payment for the miner.

When the data is added to the chain, the nodes are paid to add the data.
Contract-based persistence

💡Idea: data not replicated by every node, but upkept with contract agreements.

Instead of storing all data, we store the HASH where the data is located, so we don't need to scale the whole chain.

Examples:
- Filecoin
- Skynet
- Storj
- 0Chain
Challenge mechanism

A cryptographic challenge is issued to a node to check if it has the data.

e.g.: Arweave's proof-of-access:

A challenge is issued to a node to check if they have the most recent and of a random block's data.

The node is penalized if it hasn't the answer.
Decentrality

We need to use tools that don't have some form of KYC (Know Your Customer) to provide evidence they are not centralized.

Decentralized tools without KYC:
- Ethereum
- Arweave
- Filecoin
- 0Chain
- Skynet
- IPFS
Consensus

Generally, these tools are based on proof-of-work (PoW) or proof-of-stake (PoS).

PoW based:
- Skynet
- Arweave
- Ethereum

PoS based:
- The Beacon Chain
- Filecoin
- 0Chain
Tools 1/2

dStorage Tools:

- IPFS: dStorage + file referencing system.
- Storj DCS: S3-compatible dStorage.
- Skynet: decentralized PoW chain.
- Filecoin: incentive layer on top of the IPFS ideals.
- Arweave: dStorage platform for storing data.
- 0chain: PoS dStorage platform.
Tools 1/2

- Swarm: dStorage platform + content distribution service.
- OrbitDB: A decentralized p2p DB on top of IPFS.
- Aleph: Decentralized IPFS compatible cloud project.
- Ceramic: IPFS DB storage for data-rich and engaging applications.

source: Ethereum docs
If you liked this thread, you can follow @FrancescoCiull4 and share this tweet below. Thank you

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Francesco Ciulla

Francesco Ciulla Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @FrancescoCiull4

Jan 17
I've dealt with a lot of negative comments in my life.

When I was a coach I had people yelling at me who didn't agree with my choices.

That's why IDGAF on a comment written by an anonymous user who hides behind a keyboard.

But someone does.

So I wrote 6 things FOR YOU.

1- Never take it personally:

Think they:

- had a bad day,
- just broke up.
- lost their job.
- had their car stolen
- had their house burned down

But don't take this as a direct attack on YOU. it's not about what you have done.
2- Responding is usually more harmful than ignoring.

This does not mean that we must passively accept any accusation, but probably answering it will only fuel discussions.

Also, there are people who like to argue all day long.
That's their hobby.
Read 8 tweets
Jan 17
🔲Block Explorers thread.

What is a Block Explorer?

TLDR:
an online tool that helps us to search for data about a blockchain. think it like Google for blockchain.

IN-DEPTH:
If you want to go more in detail, here is a thread based on Ethereum docs and other online sources

Table of Contents

· Definition
· Block Explorer Examples
· Why
· How to use Block Explorers
· Ethereum transparency
· Blocks Standard data
· Blocks Advanced data
· Uncle blocks
· Gas
· Txn Standard Data
· Txn Advanced Data
· User Accounts
· Smart Contracts
· Tokens
· Network

Definition

Block explorers are like a search engine for a blockchain.

They provide insight into every blockchain's aspect, by enabling to search for real-time and historical information about a blockchain, for example:
- transactions.
- addresses.
- data related to blocks.
Read 20 tweets
Jan 16
🔲NFT Use cases thread.

NFT are not just jpegs...

12 more use cases:
🏀Sport
🎵Music
🗳️Voting
🎮 Games
🎫 Tickets
🏡 Real Estate
🚛 Supply Chain
🎨 Artwork Tracking
💡 Intellectual Property
🎓 School and Degrees
🏥 Patient's Health History
🍕 Authenticity of food/medicines

🏀Sport

Highlights of some particular moments can be sold as NFTs, and they can be invaluable to a fan.

The NBA is already using this mechanism extensively.
🎵Music

Some artists have already started interacting with their fans, finding new ways to monetize using NFTs, associating them with some particular activities or unique moments.
Read 14 tweets
Jan 15
Path to Learn Docker.

One of the questions I get most often is:
"What are the steps to learn the basics of Docker?"

In this thread, I list the 10 steps that I think are optimal for a beginner.

There are no links or promotions here, just concepts.

/thread
1) Understanding WHAT Docker is and what it isn't, what are the building blocks of it

2) Understanding what containerization is and why it is so important. Differences Containers/Virtual Machines

3) Install Docker on your operating system and make sure it works (`docker info`)
4) Take a look at "Docker Hub" and make a bit of practice using one image there (eg Nginx) and understand the basic commands: start/stop/list containers.

5) Understand how the components are made and their configuration: commands inspect/exec/logs.
Read 8 tweets
Jan 15
🔲Ethereum Contract ABI Specification thread

What is ABI?

Good morning.

Today spent a few hours reading the Ethereum contract ABI specification and I summarized the main parts in this thread.

For further reading, refer to the official docs.

Table of contents

Basic Design
Assumptions
Function Encoding
Types
Tuples
Mapping Solidity to ABI types
Encoding design criteria
Static and Dynamic types
Contract Application Binary Interface (ABI)

It's the standard way to interact with contracts in the Ethereum ecosystem:
- from outside the blockchain
- for contract-to-contract interaction

Data is encoded according to its type

The encoding requires a schema in order to decode
Read 14 tweets
Jan 14
🔲Blockchain Oracles

What is a Blockchain Oracle?

In a nutshell, a bridge between the blockchain and the outside world.

in this thread, based on the Chainlink documentation, I summarize the main parts to get an idea in 5 minutes.

Table of Contents:

· definition
· decentralized oracle networks
· smart-contract problem
· oracles are bridges
· oracles + smart contracts
· critical point
· decentralized oracles
· oracle types
· oracle reputation
· reputation frameworks
· oracle use cases
· conclusion
Definition

Oracles are entities that connect blockchains to external systems.

Based on the real-world input/output, oracles enable smart contract execution.

Oracles provide a way for the Web3 ecosystem to access:
- existing data sources
- legacy systems
- advanced computations
Read 15 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(