Book - Securing Digital Rights for Communities | Chapter 18. Off-chain Data Availability Layer for
Game Theory and Governance of Scalable Blockchains for Use in Digital Network States
Chapter 18. Off-chain Data Availability Layer for (Non Text Data)
- Off-chain Storage
- SPK Network
- Incentivising Peer to Peer Offchain Media and file storage
▶️ 3Speak
book
networkstate
gametheory
digitalrights
digitalhumanrights
community
leofinance
video
ctp
threespeak
0
0
0.000
Transcript ⏬
1
00:00:00,000 --> 00:00:08,480
So, off-chain data availability layer.
2
00:00:08,700 --> 00:00:12,320
So, when there's off-chain data availability problems,
3
00:00:12,440 --> 00:00:15,400
what it means is that, basically, you've talked about,
4
00:00:15,680 --> 00:00:16,520
you know, the whole way through this book,
5
00:00:16,580 --> 00:00:18,760
we've talked about a text storage layer on the foundational layer,
6
00:00:19,600 --> 00:00:24,280
which is fantastic because it's like a constant fundamental element
7
00:00:24,280 --> 00:00:25,460
is text storage.
8
00:00:26,360 --> 00:00:28,620
But then the problem is, is if you want to store anything else
9
00:00:28,620 --> 00:00:30,520
than text on the base layer of the blockchain,
10
00:00:30,660 --> 00:00:33,900
you can't because it's too intense, the data's too dense,
11
00:00:34,680 --> 00:00:36,880
and the blockchain bloats and you can't handle it.
12
00:00:37,760 --> 00:00:40,020
So, you've got to have alternative storage mechanisms
13
00:00:40,020 --> 00:00:42,280
because that's the key, that's the key to all this.
14
00:00:42,580 --> 00:00:44,440
It's how do you store the information?
15
00:00:44,860 --> 00:00:45,500
That's the key.
16
00:00:45,500 --> 00:00:49,520
Is it a public database distributed stored information system
17
00:00:49,520 --> 00:00:52,580
with incentives, or is it a centralized thing
18
00:00:52,580 --> 00:00:54,400
that you rely on Google and their servers for,
19
00:00:54,540 --> 00:00:55,440
or some other company?
20
00:00:56,500 --> 00:00:58,280
So, when you get to things like video,
21
00:00:58,620 --> 00:01:03,440
and software, it's really hard to store them on the blockchain
22
00:01:03,440 --> 00:01:05,280
because it just won't compute.
23
00:01:05,500 --> 00:01:07,360
It's just too dense, especially if you store them
24
00:01:07,360 --> 00:01:11,700
on a very lightweight text-based layer.
25
00:01:12,800 --> 00:01:14,940
So, you have to have alternative mechanisms to store.
26
00:01:16,740 --> 00:01:19,340
I don't know if you want to pick up from that.
27
00:01:20,820 --> 00:01:22,900
Yeah, you need incentives for it.
28
00:01:22,900 --> 00:01:27,960
So, that accounts the algo stablecoin, the transaction layer,
29
00:01:27,960 --> 00:01:30,780
the data availability layer, the text layer.
30
00:01:30,920 --> 00:01:32,180
All three of those are needed.
31
00:01:33,120 --> 00:01:36,360
It's going to be utilized to where you can prove
32
00:01:36,360 --> 00:01:38,140
that you've done something off-chain
33
00:01:38,140 --> 00:01:40,860
and be incentivized for it, be paid for it.
34
00:01:42,300 --> 00:01:45,320
Only text should be stored on its own layer.
35
00:01:46,220 --> 00:01:48,060
It's too important, it's too fundamental
36
00:01:48,060 --> 00:01:50,260
to mix anything, especially computation.
37
00:01:51,500 --> 00:01:53,040
From there, you can add parameters,
38
00:01:53,380 --> 00:01:56,340
but you have a basic text layer.
39
00:01:56,340 --> 00:01:56,420
You have a basic text layer.
40
00:01:57,960 --> 00:01:59,260
You have the transaction layer.
41
00:01:59,260 --> 00:02:00,560
You have the algo coin.
42
00:02:00,560 --> 00:02:05,620
Now, you can incentivize anything from heavy infrastructure videos
43
00:02:05,820 --> 00:02:10,180
to even computation layers to heavy storage
44
00:02:10,180 --> 00:02:14,640
of whatever data that it may be, even text for the, you know,
45
00:02:14,640 --> 00:02:17,360
if you don't want, you know, not everybody wants immutable text.
46
00:02:19,120 --> 00:02:20,920
So, it's a hat trick.
47
00:02:20,980 --> 00:02:23,880
It's creating censorship resistance without immutability,
48
00:02:24,040 --> 00:02:27,600
which is actually difficult because you need an immutable source first
49
00:02:27,600 --> 00:02:27,920
for that to happen.
50
00:02:27,920 --> 00:02:33,200
So, this is more of a phase two when it comes
51
00:02:33,200 --> 00:02:36,560
to utilizing the base layer.
52
00:02:37,300 --> 00:02:39,260
So, we have something like Hive.
53
00:02:39,260 --> 00:02:43,540
Now, we are able to create something for off-chain data.
54
00:02:43,740 --> 00:02:45,800
You know, video comes to mind immediately.
55
00:02:45,800 --> 00:02:47,940
Anything heavy that shouldn't be on the base layer.
56
00:02:49,540 --> 00:02:52,120
But you can also incentivize pretty much anything
57
00:02:52,120 --> 00:02:54,440
at this point, you know, some off-chain data,
58
00:02:54,440 --> 00:02:56,980
but really off-chain activities in general.
59
00:02:57,920 --> 00:03:00,820
People who are proving that they're doing something usually
60
00:03:00,820 --> 00:03:04,540
infrastructure-based and get rewarded for it.
61
00:03:06,420 --> 00:03:10,880
Yeah. The other thing here as well is you don't necessarily want all
62
00:03:10,880 --> 00:03:13,520
of your LOL comments on the base layer chain.
63
00:03:13,900 --> 00:03:16,040
You want to be able to have them off-chain
64
00:03:16,420 --> 00:03:17,980
on a layer two storage system.
65
00:03:18,900 --> 00:03:21,600
It may just be bring your own nodes where it's voluntary nodes
66
00:03:21,600 --> 00:03:25,940
or it might be incentivized nodes or it might be full blockchain nodes.
67
00:03:26,300 --> 00:03:27,900
But you can imagine the cost scales,
68
00:03:27,920 --> 00:03:29,220
it's going to go like this, right?
69
00:03:29,640 --> 00:03:34,000
The worst type of node is a centrally run open source node
70
00:03:34,520 --> 00:03:37,300
where you can, well, I would say the worst acceptable node
71
00:03:38,020 --> 00:03:41,100
where you can have various user accounts on there that post
72
00:03:41,340 --> 00:03:44,540
to the indexes of these systems, these content systems,
73
00:03:45,220 --> 00:03:48,780
but they don't store to chain and it's not immutable.
74
00:03:48,780 --> 00:03:51,260
So, that's going to be basically free storage.
75
00:03:51,500 --> 00:03:53,600
It's very unlikely you're going to get charge for storage on there.
76
00:03:54,760 --> 00:03:57,900
The next layer up is a bunch
77
00:03:57,920 --> 00:04:03,240
of nodes that are voluntarily run by the community that are incentivized
78
00:04:03,240 --> 00:04:06,260
by a separate layer two protocol with a tokenomic system.
79
00:04:06,880 --> 00:04:09,000
That's going to provide you excellent security,
80
00:04:09,000 --> 00:04:11,900
excellent long-term storage, but it's not quite as good
81
00:04:11,900 --> 00:04:13,500
as having it fully on-chain.
82
00:04:14,420 --> 00:04:16,400
So, it should be cheaper than on-chain.
83
00:04:16,860 --> 00:04:19,240
And then the final one is the on-chain storage where it's
84
00:04:19,240 --> 00:04:21,720
like you get full security, full long-term storage.
85
00:04:22,520 --> 00:04:25,640
And so, then you start to think about, well, you want the,
86
00:04:25,640 --> 00:04:27,640
if blockchains get, you know, you know, you know, you know, you know,
87
00:04:27,640 --> 00:04:32,120
mass adoption, it's going to be, even if there's zero fees,
88
00:04:32,120 --> 00:04:34,860
it's going to be resource-intensive to store stuff on the base layer chain.
89
00:04:34,860 --> 00:04:36,820
So, you're going to be more sparing about what you store on the chain.
90
00:04:36,820 --> 00:04:39,700
You're going to be more choosy and you're going to store only the most important things
91
00:04:39,700 --> 00:04:42,060
on-chain even if it's just text.
92
00:04:42,740 --> 00:04:48,320
And then the next layer is you're going to store everything else on some kind
93
00:04:48,320 --> 00:04:51,920
of incentivized base layer that's a bit cheaper than a blockchain.
94
00:04:51,920 --> 00:04:55,800
It's not quite a blockchain because it's not every node
95
00:04:55,800 --> 00:04:57,200
in the network isn't updating the same.
96
00:04:57,200 --> 00:05:01,620
But there is an incentive structure there that a token can be distributed
97
00:05:01,620 --> 00:05:04,400
to people for providing storage.
98
00:05:04,400 --> 00:05:08,400
An example of this is the SPK Network, SPK network,
99
00:05:08,400 --> 00:05:13,800
which is a layer two storage system without any pre-miner ICO or company behind it
100
00:05:13,800 --> 00:05:15,880
or founder or anything like that.
101
00:05:15,880 --> 00:05:20,400
Just a bunch of community members came together, self-funded by the community
102
00:05:20,400 --> 00:05:26,640
to build a system whereby you can store video on an IPFS storage node.
103
00:05:26,640 --> 00:05:32,840
And then people can write contracts to say, hey, I want this video stored.
104
00:05:32,840 --> 00:05:35,800
And other people from the community can run their app by storage nodes
105
00:05:35,800 --> 00:05:39,740
and then grab that node, grab that video,
106
00:05:39,740 --> 00:05:43,720
and then store on their own nodes and then cruise to the network
107
00:05:43,720 --> 00:05:46,080
at random times that they're storing what they say they're storing
108
00:05:46,080 --> 00:05:49,680
and the network will incentivize them for doing that.
109
00:05:49,680 --> 00:05:55,020
The other thing is as well, you want to be able to run multiple other types
110
00:05:55,020 --> 00:05:56,520
of infrastructure.
111
00:05:56,520 --> 00:06:00,580
platform like 3Speak, for example, not only do you want the storage to be decentralized,
112
00:06:00,580 --> 00:06:06,140
but you want the encoder infrastructure to be decentralized and run and incentivized
113
00:06:06,140 --> 00:06:07,600
by the SPK Network.
114
00:06:07,600 --> 00:06:11,980
You want the content delivery network to be incentivized and run by the SPK Network.
115
00:06:11,980 --> 00:06:17,740
There's currently work ongoing to move live streaming capabilities to that network.
116
00:06:17,740 --> 00:06:21,240
So you want to basically take as much of the centralized infrastructure as possible on
117
00:06:21,240 --> 00:06:25,700
these content platforms and incentivize them from a Layer 2 system where you can do storage
118
00:06:25,700 --> 00:06:30,140
and other infrastructure operation on a Layer 2 that's too heavy-duty to do on a blockchain
119
00:06:30,140 --> 00:06:35,760
and doesn't necessarily come under either proof of work or proof of stake, but there
120
00:06:35,760 --> 00:06:43,940
is some kind of provable work involved there that you can incentivize on a Layer 2 from.
121
00:06:43,940 --> 00:06:52,760
I mean, the SPK Network is quite a large, separate subject, and we could probably write
122
00:06:52,760 --> 00:06:55,680
a whole book on that on itself, you know, with the intro.
123
00:06:55,680 --> 00:06:58,240
But we're going to do a lot of work on that.
124
00:06:58,240 --> 00:07:04,600
The idea, though, is that you can get community members using their spare hard drive space
125
00:07:04,600 --> 00:07:09,460
to provide that to the network so that other people, other content platforms can back up
126
00:07:09,460 --> 00:07:12,740
their content on those servers.
127
00:07:12,740 --> 00:07:16,420
And it should be way cheaper than anything else because this is spare hard drive space
128
00:07:16,420 --> 00:07:19,920
of community members who are keen to volunteer their hard drive space.
129
00:07:19,920 --> 00:07:25,120
And then there's a mechanism in there called proof of access where the network is going
130
00:07:25,120 --> 00:07:31,500
to randomly ping the nodes that are saying they're storing content, and if they present
131
00:07:31,500 --> 00:07:38,520
that content quick enough back to the network, then the network will reward them.
132
00:07:38,520 --> 00:07:42,660
And it rewards them from the contract that the person that wants the storage doing creates.
133
00:07:42,660 --> 00:07:46,720
So if I'm running a video platform like 3Speak, I might create a contract with 50 videos on
134
00:07:46,720 --> 00:07:51,680
it, say I want these backing up three times on the network so we're not relying on our
135
00:07:51,680 --> 00:07:52,680
servers alone.
136
00:07:52,680 --> 00:07:54,680
And then those, you know, we'll put a certain amount of data in there.
137
00:07:54,680 --> 00:07:59,440
It's called bracket token on the SPK Network, but whatever type of gas token you've got
138
00:07:59,440 --> 00:08:03,740
on the SPK Network or any type of layer 2 storage system.
139
00:08:03,740 --> 00:08:07,400
And then the contracts will automatically distribute that money to people who are proving
140
00:08:07,400 --> 00:08:11,140
that they're storing what they say they're storing when they're pinged by the proof of
141
00:08:11,140 --> 00:08:12,140
access algorithm.
142
00:08:12,140 --> 00:08:16,760
So, yeah, that's currently in test net.
143
00:08:16,760 --> 00:08:19,180
Should be out live in the next few months.
144
00:08:19,180 --> 00:08:23,820
So that's a very interesting use case of this, but there definitely needs to be a distinction
145
00:08:23,820 --> 00:08:24,680
between textbook and test net.
146
00:08:24,680 --> 00:08:34,240
I mean, you want to make a separation of that because you want to keep the layer one
147
00:08:34,240 --> 00:08:39,240
as lightweight and non-fat node as possible so you can move all this other stuff to other
148
00:08:39,240 --> 00:08:42,140
nodes on layer twos and have separate incentive systems for it.