Introducing Sovereign
Sovereign
0xd974
January 30th, 2023

Sovereign is an open, interconnected rollup ecosystem. Our goal is to enable all developers to deploy seamlessly interoperable and scalable rollups that can run on any blockchain. That’s why we’re building the Sovereign SDK, the simplest framework for creating secure and interoperable sovereign zk-rollups.

The Problem: Blockchain Apps Don’t Scale

Monolithic L1s Don’t Scale

In the quest to scale blockchain apps, three dominant paradigms have emerged: application-specific layer 1s, optimistic rollups, and zk-rollups. App-specific layer 1s are the simplest to design and implement - but they come with a significant drawback. Every layer 1 has to recruit its own validators and convince them to stake enough capital to defend the chain against attacks. Costs of capital being what they are, this approach is only viable for a few well-funded apps.

Optimistic Rollups Break Composability

Rollups try to solve this problem by allowing developers to extend existing blockchains with new logic, rather than starting new ones. This drastically decreases the barrier to entry for app-chain development.

But optimistic rollups (the rollups that dominate the market today) are not a panacea. In order to minimize the burden on the shared validator set, optimistic rollups rely on fraud proofs to prevent misbehavior. During an attack, these fraud proofs might be censored - so optimistic rollups have long “finality delays” during which transactions could be rolled back by the appearance of a fraud proof. This makes bridging out of optimistic rollups slow and costly.

So, optimistic rollup developers have to make a tough choice: do they build narrow, special-purpose rollups and expect users to bridge frequently between chains? Or do they build general-purpose rollups that try to satisfy all of a user’s needs in one place? Neither choice is good. Bridging between optimistic chains is too slow, too expensive, and too risky to be an everyday operation. But general-purpose optimistic rollups suffer from many of the drawbacks of monolithic L1s: not only do they suffer from scalability issues of their own, but they also fail to support the full diversity of functionality that app-chains can create.

Zk-Rollups are the Future

For all of these reasons, we expect zk-rollups to emerge as the dominant scaling paradigm. They share the advantages of optimistic rollups, but without the long finality delay. Instead of waiting days to see if a fraud proof appears, users can be confident that their transaction is final as soon as a validity proof is created - a process which can take mere seconds.

But if zk-rollups are the superior scaling solution, why isn’t everyone using them? Because until now, actually building zk-rollups has been a huge undertaking - requiring years of effort from expert cryptography engineers.

Enter Sovereign: The Internet Of Rollups

What is the Sovereign SDK?

The Sovereign SDK aims to do for zk-rollups what the Cosmos SDK did for layer 1 chains.

It will provide all of the boilerplate that would usually go into a blockchain - a p2p network, a database, and an RPC node - letting builders focus on the business logic of their chain. In addition, it will provide a set of default modules that operate efficiently in a zero-knowledge environment: a token implementation, an authenticated data store, and a bridging module. Developers will be able to combine these primitives into app-chains, or build their own state-transition functions completely from scratch by implementing a standard set of APIs.

Even better, the Sovereign SDK will be the first rollup framework to abstract away the details of zero-knowledge. To take advantage of its power, developers won’t need to become experts in cryptography. Instead, developers will be able to write their apps in idiomatic Rust (or eventually C++), and the SDK will automatically compile it to an efficient zk virtual machine.

Proof aggregation based bridging
Proof aggregation based bridging

What properties will the Sovereign SDK provide?

  1. Sovereign SDK rollups will be seamlessly interoperable. We use a novel bridging technique based on proof aggregation to allow Sovereign SDK rollups on a shared L1 to bridge back and forth without a trusted third party. Since zk-proofs can be aggregated, rollups will be able to maintain as many bridges as they want at minimal cost. Off-chain relayers can aggregate the proofs of all the peer rollups into a single proof, and just that single proof can be verified on chain. And since state transitions are proven to be valid, there will be no need to pay fees to a liquidity provider or wait a week for transactions to finalize. Bridge right away, with no drawbacks.

  2. Sovereign SDK rollups will be securely scalable. By purpose-building every component especially for use in zk-rollups, the Sovereign SDK will provide excellent performance by default. Thanks to advances in parallelism, our proving will have latencies measured in seconds. And with the magic of zero-knowledge proofs, chains will be able to scale without sacrificing end-user verifiability.

  3. Sovereign SDK Rollups can run on any blockchain. Sovereign SDK chains delegate the responsibility for checking proofs to the end user, not the underlying L1. This is what makes them “sovereign” rollups as opposed to smart-contract rollups. Since the data availability layer doesn’t need the capability to verify proofs, Sovereign SDK rollups are automatically portable across any L1. Write once, run anywhere.

Where are we now?

We’re currently hard at work developing the Sovereign SDK. Our current roadmap is split into three phases.

Phase 1: Research (In Progress)

The Sovereign SDK is currently undergoing R&D. We’re in the process of designing the default storage module, cryptoeconomics, and core APIs. (If you’re interested in working on these problems, check out our jobs board!). We’re also working on a research prototype. Although the SDK will support a wide range of data availability layers and proving systems, our current prototype integrates Celestia for data availability and Risc0 for proving. We expect this phase to be complete around Q2 2023.

Phase 2: Initial Implementation

The initial implementation of the Sovereign SDK will begin in parallel with the remaining research. During this time, we’ll implement a peer-to-peer network, an RPC node, the core APIs, and default storage and sequencing modules.

Phase 3: Hardening

Once the SDK is feature complete, we’ll need plenty of time for code cleanup, testing, fuzzing, and audits. We’ll also begin developing our first use cases of the SDK during this time (more details on these to be announced!). We expect to see mainnet chains using the SDK after about six months of hardening the initial implementation.

Make scaling simple

At Sovereign Labs, we want to see blockchains support billions of users. That will only happen if zero-knowledge technology is accessible to developers without a PhD in cryptography - and if building rollups is accessible to developers who aren’t expert protocol engineers.

But limitless scalability is worthless if it comes at the expense of the end-user verifiability. If building, running, or viewing the state of your blockchain requires the cooperation of some centralized entity, then we have failed. That’s why the Sovereign SDK will always be completely free and open source - and why we’re committed to engineering every component of the stack for maximum resilience. But don’t just take our word for it. We’re building in public - come see for yourself.

Scaling should be simple. With the Sovereign SDK, it finally will be.

Resources

  • Join our team

  • Follow us on Twitter

  • Join our Discord

  • Check out our Github

Acknowledgments

We really appreciate our supporters, especially Tim Beiko, James Prestwich, Mustafa Al-Bassam, Chris Ahn, and Ekram Ahmed, for reviewing drafts of this post, and their guidance along our journey.

Subscribe to Sovereign
Receive the latest updates directly to your inbox.
Nft graphic
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.
Arweave Transaction
8fASj-ZYbZLGs7g…VtfpQbV2h5fe1YQ
Author Address
0xd97411ad31113FD…b3fB684799aeC67
Nft Address
0x86dbDb88cD5cebA…6B20bCb9D5ae095
Content Digest
V-nUycehpu-cwCR…pRGMyC-tTDaQIsk
More from Sovereign
View All

Skeleton

Skeleton

Skeleton

500 Collectors
LOADING TEXT
#1
LOADING TEXT
#2
LOADING TEXT
#3
LOADING TEXT
#4
LOADING TEXT
#5
LOADING TEXT
#6
LOADING TEXT
#7
LOADING TEXT
#8
LOADING TEXT
#9
LOADING TEXT
#10
LOADING TEXT
#11
LOADING TEXT
#12
LOADING TEXT
#13
LOADING TEXT
#14
LOADING TEXT
#15
LOADING TEXT
#16
LOADING TEXT
#17
LOADING TEXT
#18
LOADING TEXT
#19
LOADING TEXT
#20
LOADING TEXT
#21
LOADING TEXT
#22
LOADING TEXT
#23
LOADING TEXT
#24
LOADING TEXT
#25
LOADING TEXT
#26
LOADING TEXT
#27
LOADING TEXT
#28
LOADING TEXT
#29
LOADING TEXT
#30
LOADING TEXT
#31
LOADING TEXT
#32
LOADING TEXT
#33
LOADING TEXT
#34
LOADING TEXT
#35
LOADING TEXT
#36
LOADING TEXT
#37
LOADING TEXT
#38
LOADING TEXT
#39
LOADING TEXT
#40
LOADING TEXT
#41
LOADING TEXT
#42
LOADING TEXT
#43
LOADING TEXT
#44
LOADING TEXT
#45
LOADING TEXT
#46
LOADING TEXT
#47
LOADING TEXT
#48
LOADING TEXT
#49
LOADING TEXT
#50
LOADING TEXT
#51
LOADING TEXT
#52
LOADING TEXT
#53
LOADING TEXT
#54
LOADING TEXT
#55
LOADING TEXT
#56
LOADING TEXT
#57
LOADING TEXT
#58
LOADING TEXT
#59
LOADING TEXT
#60
LOADING TEXT
#61
LOADING TEXT
#62
LOADING TEXT
#63
LOADING TEXT
#64
LOADING TEXT
#65
LOADING TEXT
#66
LOADING TEXT
#67
LOADING TEXT
#68
LOADING TEXT
#69
LOADING TEXT
#70
LOADING TEXT
#71
LOADING TEXT
#72
LOADING TEXT
#73
LOADING TEXT
#74
LOADING TEXT
#75
LOADING TEXT
#76
LOADING TEXT
#77
LOADING TEXT
#78
LOADING TEXT
#79
LOADING TEXT
#80
LOADING TEXT
#81
LOADING TEXT
#82
LOADING TEXT
#83
LOADING TEXT
#84
LOADING TEXT
#85
LOADING TEXT
#86
LOADING TEXT
#87
LOADING TEXT
#88
LOADING TEXT
#89
LOADING TEXT
#90
LOADING TEXT
#91
LOADING TEXT
#92
LOADING TEXT
#93
LOADING TEXT
#94
LOADING TEXT
#95
LOADING TEXT
#96
LOADING TEXT
#97
LOADING TEXT
#98
LOADING TEXT
#99
LOADING TEXT
#100
LOADING TEXT
#101
LOADING TEXT
#102
LOADING TEXT
#103
LOADING TEXT
#104
LOADING TEXT
#105
LOADING TEXT
#106
LOADING TEXT
#107
LOADING TEXT
#108
LOADING TEXT
#109
LOADING TEXT
#110
LOADING TEXT
#111
LOADING TEXT
#112
LOADING TEXT
#113
LOADING TEXT
#114
LOADING TEXT
#115
LOADING TEXT
#116
LOADING TEXT
#117
LOADING TEXT
#118
LOADING TEXT
#119
LOADING TEXT
#120
LOADING TEXT
#121
LOADING TEXT
#122
LOADING TEXT
#123
LOADING TEXT
#124
LOADING TEXT
#125
LOADING TEXT
#126
LOADING TEXT
#127
LOADING TEXT
#128
LOADING TEXT
#129
LOADING TEXT
#130
LOADING TEXT
#131
LOADING TEXT
#132
LOADING TEXT
#133
LOADING TEXT
#134
LOADING TEXT
#135
LOADING TEXT
#136
LOADING TEXT
#137
LOADING TEXT
#138
LOADING TEXT
#139
LOADING TEXT
#140
LOADING TEXT
#141
LOADING TEXT
#142
LOADING TEXT
#143
LOADING TEXT
#144
LOADING TEXT
#145
LOADING TEXT
#146
LOADING TEXT
#147
LOADING TEXT
#148
LOADING TEXT
#149
LOADING TEXT
#150
LOADING TEXT
#151
LOADING TEXT
#152
LOADING TEXT
#153
LOADING TEXT
#154
LOADING TEXT
#155
LOADING TEXT
#156
LOADING TEXT
#157
LOADING TEXT
#158
LOADING TEXT
#159
LOADING TEXT
#160
LOADING TEXT
#161
LOADING TEXT
#162
LOADING TEXT
#163
LOADING TEXT
#164
LOADING TEXT
#165
LOADING TEXT
#166
LOADING TEXT
#167
LOADING TEXT
#168
LOADING TEXT
#169
LOADING TEXT
#170
LOADING TEXT
#171
LOADING TEXT
#172
LOADING TEXT
#173
LOADING TEXT
#174
LOADING TEXT
#175
LOADING TEXT
#176
LOADING TEXT
#177
LOADING TEXT
#178
LOADING TEXT
#179
LOADING TEXT
#180
LOADING TEXT
#181
LOADING TEXT
#182
LOADING TEXT
#183
LOADING TEXT
#184
LOADING TEXT
#185
LOADING TEXT
#186
LOADING TEXT
#187
LOADING TEXT
#188
LOADING TEXT
#189
LOADING TEXT
#190
LOADING TEXT
#191
LOADING TEXT
#192
LOADING TEXT
#193
LOADING TEXT
#194
LOADING TEXT
#195
LOADING TEXT
#196
LOADING TEXT
#197
LOADING TEXT
#198
LOADING TEXT
#199
LOADING TEXT
#200
LOADING TEXT
#201
LOADING TEXT
#202
LOADING TEXT
#203
LOADING TEXT
#204
LOADING TEXT
#205
LOADING TEXT
#206
LOADING TEXT
#207
LOADING TEXT
#208
LOADING TEXT
#209
LOADING TEXT
#210
LOADING TEXT
#211
LOADING TEXT
#212
LOADING TEXT
#213
LOADING TEXT
#214
LOADING TEXT
#215
LOADING TEXT
#216
LOADING TEXT
#217
LOADING TEXT
#218
LOADING TEXT
#219
LOADING TEXT
#220
LOADING TEXT
#221
LOADING TEXT
#222
LOADING TEXT
#223
LOADING TEXT
#224
LOADING TEXT
#225
LOADING TEXT
#226
LOADING TEXT
#227
LOADING TEXT
#228
LOADING TEXT
#229
LOADING TEXT
#230
LOADING TEXT
#231
LOADING TEXT
#232
LOADING TEXT
#233
LOADING TEXT
#234
LOADING TEXT
#235
LOADING TEXT
#236
LOADING TEXT
#237
LOADING TEXT
#238
LOADING TEXT
#239
LOADING TEXT
#240
LOADING TEXT
#241
LOADING TEXT
#242
LOADING TEXT
#243
LOADING TEXT
#244
LOADING TEXT
#245
LOADING TEXT
#246
LOADING TEXT
#247
LOADING TEXT
#248
LOADING TEXT
#249
LOADING TEXT
#250
LOADING TEXT
#251
LOADING TEXT
#252
LOADING TEXT
#253
LOADING TEXT
#254
LOADING TEXT
#255
LOADING TEXT
#256
LOADING TEXT
#257
LOADING TEXT
#258
LOADING TEXT
#259
LOADING TEXT
#260
LOADING TEXT
#261
LOADING TEXT
#262
LOADING TEXT
#263
LOADING TEXT
#264
LOADING TEXT
#265
LOADING TEXT
#266
LOADING TEXT
#267
LOADING TEXT
#268
LOADING TEXT
#269
LOADING TEXT
#270
LOADING TEXT
#271
LOADING TEXT
#272
LOADING TEXT
#273
LOADING TEXT
#274
LOADING TEXT
#275
LOADING TEXT
#276
LOADING TEXT
#277
LOADING TEXT
#278
LOADING TEXT
#279
LOADING TEXT
#280
LOADING TEXT
#281
LOADING TEXT
#282
LOADING TEXT
#283
LOADING TEXT
#284
LOADING TEXT
#285
LOADING TEXT
#286
LOADING TEXT
#287
LOADING TEXT
#288
LOADING TEXT
#289
LOADING TEXT
#290
LOADING TEXT
#291
LOADING TEXT
#292
LOADING TEXT
#293
LOADING TEXT
#294
LOADING TEXT
#295
LOADING TEXT
#296
LOADING TEXT
#297
LOADING TEXT
#298
LOADING TEXT
#299
LOADING TEXT
#300
LOADING TEXT
#301
LOADING TEXT
#302
LOADING TEXT
#303
LOADING TEXT
#304
LOADING TEXT
#305
LOADING TEXT
#306
LOADING TEXT
#307
LOADING TEXT
#308
LOADING TEXT
#309
LOADING TEXT
#310
LOADING TEXT
#311
LOADING TEXT
#312
LOADING TEXT
#313
LOADING TEXT
#314
LOADING TEXT
#315
LOADING TEXT
#316
LOADING TEXT
#317
LOADING TEXT
#318
LOADING TEXT
#319
LOADING TEXT
#320
LOADING TEXT
#321
LOADING TEXT
#322
LOADING TEXT
#323
LOADING TEXT
#324
LOADING TEXT
#325
LOADING TEXT
#326
LOADING TEXT
#327
LOADING TEXT
#328
LOADING TEXT
#329
LOADING TEXT
#330
LOADING TEXT
#331
LOADING TEXT
#332
LOADING TEXT
#333
LOADING TEXT
#334
LOADING TEXT
#335
LOADING TEXT
#336
LOADING TEXT
#337
LOADING TEXT
#338
LOADING TEXT
#339
LOADING TEXT
#340
LOADING TEXT
#341
LOADING TEXT
#342
LOADING TEXT
#343
LOADING TEXT
#344
LOADING TEXT
#345
LOADING TEXT
#346
LOADING TEXT
#347
LOADING TEXT
#348
LOADING TEXT
#349
LOADING TEXT
#350
LOADING TEXT
#351
LOADING TEXT
#352
LOADING TEXT
#353
LOADING TEXT
#354
LOADING TEXT
#355
LOADING TEXT
#356
LOADING TEXT
#357
LOADING TEXT
#358
LOADING TEXT
#359
LOADING TEXT
#360
LOADING TEXT
#361
LOADING TEXT
#362
LOADING TEXT
#363
LOADING TEXT
#364
LOADING TEXT
#365
LOADING TEXT
#366
LOADING TEXT
#367
LOADING TEXT
#368
LOADING TEXT
#369
LOADING TEXT
#370
LOADING TEXT
#371
LOADING TEXT
#372
LOADING TEXT
#373
LOADING TEXT
#374
LOADING TEXT
#375
LOADING TEXT
#376
LOADING TEXT
#377
LOADING TEXT
#378
LOADING TEXT
#379
LOADING TEXT
#380
LOADING TEXT
#381
LOADING TEXT
#382
LOADING TEXT
#383
LOADING TEXT
#384
LOADING TEXT
#385
LOADING TEXT
#386
LOADING TEXT
#387
LOADING TEXT
#388
LOADING TEXT
#389
LOADING TEXT
#390
LOADING TEXT
#391
LOADING TEXT
#392
LOADING TEXT
#393
LOADING TEXT
#394
LOADING TEXT
#395
LOADING TEXT
#396
LOADING TEXT
#397
LOADING TEXT
#398
LOADING TEXT
#399
LOADING TEXT
#400
LOADING TEXT
#401
LOADING TEXT
#402
LOADING TEXT
#403
LOADING TEXT
#404
LOADING TEXT
#405
LOADING TEXT
#406
LOADING TEXT
#407
LOADING TEXT
#408
LOADING TEXT
#409
LOADING TEXT
#410
LOADING TEXT
#411
LOADING TEXT
#412
LOADING TEXT
#413
LOADING TEXT
#414
LOADING TEXT
#415
LOADING TEXT
#416
LOADING TEXT
#417
LOADING TEXT
#418
LOADING TEXT
#419
LOADING TEXT
#420
LOADING TEXT
#421
LOADING TEXT
#422
LOADING TEXT
#423
LOADING TEXT
#424
LOADING TEXT
#425
LOADING TEXT
#426
LOADING TEXT
#427
LOADING TEXT
#428
LOADING TEXT
#429
LOADING TEXT
#430
LOADING TEXT
#431
LOADING TEXT
#432
LOADING TEXT
#433
LOADING TEXT
#434
LOADING TEXT
#435
LOADING TEXT
#436
LOADING TEXT
#437
LOADING TEXT
#438
LOADING TEXT
#439
LOADING TEXT
#440
LOADING TEXT
#441
LOADING TEXT
#442
LOADING TEXT
#443
LOADING TEXT
#444
LOADING TEXT
#445
LOADING TEXT
#446
LOADING TEXT
#447
LOADING TEXT
#448
LOADING TEXT
#449
LOADING TEXT
#450
LOADING TEXT
#451
LOADING TEXT
#452
LOADING TEXT
#453
LOADING TEXT
#454
LOADING TEXT
#455
LOADING TEXT
#456
LOADING TEXT
#457
LOADING TEXT
#458
LOADING TEXT
#459
LOADING TEXT
#460
LOADING TEXT
#461
LOADING TEXT
#462
LOADING TEXT
#463
LOADING TEXT
#464
LOADING TEXT
#465
LOADING TEXT
#466
LOADING TEXT
#467
LOADING TEXT
#468
LOADING TEXT
#469
LOADING TEXT
#470
LOADING TEXT
#471
LOADING TEXT
#472
LOADING TEXT
#473
LOADING TEXT
#474
LOADING TEXT
#475
LOADING TEXT
#476
LOADING TEXT
#477
LOADING TEXT
#478
LOADING TEXT
#479
LOADING TEXT
#480
LOADING TEXT
#481
LOADING TEXT
#482
LOADING TEXT
#483
LOADING TEXT
#484
LOADING TEXT
#485
LOADING TEXT
#486
LOADING TEXT
#487
LOADING TEXT
#488
LOADING TEXT
#489
LOADING TEXT
#490
LOADING TEXT
#491
LOADING TEXT
#492
LOADING TEXT
#493
LOADING TEXT
#494
LOADING TEXT
#495
LOADING TEXT
#496
LOADING TEXT
#497
LOADING TEXT
#498
LOADING TEXT
#499
LOADING TEXT
#500