Personally, I really appreciate the great efforts of the team to openly discuss technical issue they are/may face along the roadmap with everyone of us really interested in the project. The AMA sessions focus on these technical questions and some of our questions might even have already been answered there.
1:06 Other projects like Near , Elgorand are taking cautious steps about their sharding deployments on their mainnet. Eg: Near currently is single sharded and they plan to enable 4 shards in the coming days before proceeding further. Though radix doesn’t follow dynamic adaptive state sharding, do you anticipate that there will be a minor milestone release before Xian which followsstrong text a similar approach that was followed by other projects?
5:03 Lots of discussion recently about what defines atomic composability. It could be argued that asynchronous cross-shard approaches like Elrond could be defined as atomic as they are still 'all or nothing. Is Radix able to achieve fully synchronous cross-shard composability, and if it is not, what is the biggest differentiator Radix has with regard to composability? Part 2 On state provisioning vs state yanking Is Cerberus state provisioning like state yanking? Is the crucial difference that it is part of the same consensus operation instead of spread over multiple ones?
30:40 Cassandra is being used to prove/demonstrate Dan’s research work, but that will have a very different codebase to what we have on mainnet right now. Does Dan oversee mainnet development to ensure implementation decisions made now won’t impede his vision of where he wants the network to be 5years+ down the line?
37:20 On the spectrum of centralized vs decentralized: development of the network protocol How do you see the development of the network protocol progress? Currently, it is centralized with Radix DLT ltd. being the sole protocol manufacturer. This is fine to in the early phase of a protocol. But will that change over time? Will it become more a community effort, not solely in the hands of a single team? I know it’s open-source and can be forked but will the team at some point open the door for external contributions?
44:25 I have a further question on the subject of royalties. Are all royalties recorded? Are they available publicly, partially public or not at all? That is entirely private? If they are available publicly how fast and efficiently is this metric updated?
48:09 Are there plans to introduce time constraint component invocations/executions without writing client-side code for timeouts? ( Eg: let’s say define a timeout behavior on execution of component at runtime to either commit / revert / timeout tx based on dynamic nature of parameters by dapp)
54:55 the current iteration of mainnet requires, as i understand it, validators with a total of 67% of delegated stake to agree in order to reach consensus. Is there some quorum of actual individual nodes that is required? If, for example, 5 nodes had 67% of stake, could they reach consensus even if no other nodes were online?
02:54 Many-to-one transactions. Suppose you run a popular global coffee shop. Suppose it does 10 thousand sales per hour to 10 thousand different people buying coffee. Suppose you want to run your transactions through a single coffee shop wallet on the Radix network. These transactions are related because of the central wallet and coming in sequentially so it looks like Cerberus won’t process them in parallel. But if they have to be done one-by-one, then a finality of ~10 seconds (~360 transactions/hour for related transactions) will not be enough… How would you be able to get 10 thousand sequentially related transactions through a central wallet in Radix? In a blockchain transactions would be accumulated into block and then processed as a batch. Could something this be done by a to-be-build blueprint/component in the catalog that does some accumulating and batching for intense-throughput wallets?
13:07 One-to-many transactions. For instance on a DEX (Decentralized Exchange): suppose I set a limit buy order for buying 100 thousand XRD at USD 1.0$. My order may hit multiple sell orders, but perhaps there are not enough sell orders in there to completely fill the limit buy order. Or perhaps one of the sell orders is canceled while processing the transaction so that there is not a complete match. In such cases, I would like a partial fill of the buy order, rather than no fill at all. But since Cerberus is aiming for all-or-none (atomicity) will this mean that the limit buy-order will be filled entirely or not at all? If so how can this be solved in a smooth way by the DEX developer?
16:56 Taking this on a more general level: can you think of some other use cases where atomicity might be a burden for practical purposes?
27:09 It has been stated that Scrypto compiles down to Finite State Machines. Is the road open for developers and auditors to eventually be able to generate diagrams that visualize the behaviour of code and are expressed as possible states and valid state transitions between them for Radix components? Predictability of code behaviour would be boosted by its visibility. PS. Question is inspired by a lecture recommended by @ITProfligate about the computer scientist ‘Edsger Dijkstra’.
28:55 Whats your take on the modular vs monolithic chains debate? (See for example https://twitter.com/epolynya/status/1…). Is it just a change of narrative/perception (L2s were being braodly considered patches that broke composability and now are the “ultimate solution”)?
36:46 I am curious to hear about the ways bad actors might compromise or exploit the network or other users, and how the radix has been designed to prevent or disincentivize that
00:35 Q by phwaa: Hey dan hughes. I’ve come across a project called cell that’s looking to solve the challenges presented by the shift to quantum computing. Is this something that’s on the teams radar? And if so, what amount of work would be involved to update the radix network to support these new cryptography methods?
16:18 Q by Don Logan: Is Radix based on Chainspace? What % of Cerberus code, if any, is from Chainspace?
18:35 Q by Chris: Have smart contracts on a sharded cerberus been demonstrated or is it still purely theoretical?
21:50 Q by AS: The Quadrilemma has been solved. Dezentralized Twitter has been presented. What is left that takes so long for Xi’an or even Babylon to be released? I understand that Scrypto is one big point, but it will be released EOY. So, what’s the (technical) problem with releasing Xi’an in let’s say 06/2022? Or is it more a strategic than a technical challenge?
35:41 Q by Blind5ight: On-demand scaling ~ economics Node incentives are decoupled as far as I can see from network traffic since tx fees are not used to reward node runners How will the network incentivize additional nodes?
39:31 Q by charrrrrlie: Regarding finality - are there any ways that it can be reduced to ~1 second levels? For “financial” applications i think 10s is fine. But on the morning commute i just don’t know if it is fast enough. Waiting 10 seconds for a payment for a coffee is a decently long time, same for buying a packet of crisps. For tapping into public transport it’s completely inadequate. Though, for public transport, dedicated cards can be used, but being forced to use them feels like a step backwards. Some musings on the topic: I know consensus is deterministic, but is there any probabilistic portion of a transaction (eg within 2s you know that the transaction is almost certainly going to go through)? Layer 2s have also crossed my mind, as i think the transactions you want very fast finality for you generally don’t really care about AC.
54:09 Q by Mr_TMA: Can the royalties be adjusted along way to then, to adapt to demand? And if so: it would be quite annoying if royalties can be adjusted upwards, since there are probably high switching costs / big lock-in effect. How will this work?
55:44 Q by ahsimon: Could you explain the execution model for Xi’an. Suppose there is a DEX on Xi’an, and 100 different users “simultaneously” invoke the DEX to perform a Scrypto transaction that has the intent “swap 10 of my XRD for some USDC”. It is my understanding that, just before execution by Cerberus, a specific 10 XRD will be assigned for each of the 100 user requests. For maximum execution parallelism, I expect that a single shard will perform the transaction execution for each user and that the single shard used will be pseudo-randomly chosen from the 2^256 shards, so that the execution of each user request occurs on a different shard. (1) Is this correct, and if not, why? (2) What happens if 100 is enough of these simultaneous user requests so that the DEX’s liquidity pool of USDC is completely consumed. This is admittedly an edge case. Can I assume that Cerberus fails safely? That is, some random (dependent on message latencies) subset of the 100 users will get their USDC, and the others will get a failed transaction and keep their XRD. (3) The creator of such a DEX might want to make sure that a user can specify such things as “fail the transaction if the amount of USDC received is less than a minimal amount or price the user specifies”. Can I assume such rules can be expressed in the DEX’s Scrypto code?
6:25 - 16:20 by SelectivePrime Hello Radix Team. I ask myself how ‘elastic’ Cerberus actually is. Elasticity means a sudden increase in throughput (TPS) need. As an analogy imagine eBay, during an auction most concurrent bids happen at the last 3 seconds, but many at the same time. So my Q is: can Cerberus deal with spikes like that. If yes, what are the limits?
26:00 - 34:10 Q by n00bomb Can we get an AMA on distributed crypto-safe random number generator? there are a whole class of applications that requires such functionality – games for example and technically, this won’t ever be safe from off-chain or from a smart contract and must be done on chain. Is radix going to have an on chain random number generator?
24:24 - 38:33 Y. Q by Maximum Is it possible a heavily targeted spam attack (pointing at 1 address) could potentially cause problems? Target validator set tps is around 1000tps iirc, which would need $10/second to spam into submission. Not unfeasible if enough is at stake.
02:36 - 8:40 From Sourena (Two Questions) So as the Cerberus infographics reads ‘the membership of each validator set shuffles periodically…called an “epoch”.’ Considering that in the future huge amount of data will be stored in each shard, and that data is not shared between different shards, does it mean that after each epoch all of that data in the network has to be reshuffled?
8:43 - 14:02 -Which algorithm takes care of the minimum number of nodes per each shard, so enough data redundancy and decentralisation will always be guaranteed?
14:04 - 19:21 If I hold 10 percent stake thereabouts and have lots of validators and simply wait until I get grouped into a shard with a few of them where I have control; it’s not targeted per se I just wait until I control a majority vote in one shard group by simple sorting; say there are 10,000 shard groups and I have 10 percent stake; I would expect to be in control of the shard group at least once in a reasonable amount of time. Is there a concept of challenging, e.g. fishermen or hidden validators, or is there another guarantee that I wouldn’t be able to do a lot of damage, or is my assumption incorrect, that I couldn’t control a shard group?
19:45 - 29:57 Dan expands on theoretical long-range attacks.
30:06 - 35:57 From Mojito Finance Is the team prepared for regulations similar to the ones in Estonia that seem to ban non-custodial wallets?
36:08 - 41:31 Any thoughts on the feds Open CBDC pilot that claims 1.7 million transactions per second? 42:32 Conclusion
01:52 Q by cryptocactus 1) What are your thoughts on using the Radix way of sharding in the non-crypto space for regular centralized databases? Might the design of many small shards with unique shard-ids provided by the SHA256 hash function have usecases there?
11:52 2) How crucial is the near-uniquess property of the SHA256 hash function for the Radix ledger? Is it a necessity to make the combination of shardiång + consensus work, or is it there because it gives good performance (e.g. in parallellization)? Would it be possible to use a simpler hash-function that maps substates into buckets, or would that break the whole design?
15:59 Q by FR05T8YTE On Xi’an will there be a minimum stake? If no, how will the network resist a sybil like attack where the network is flooded with malicious validators? If yes, how will the minimum be set so it is high enough that a sybil like attack would not work, but low enough that enough validators can join to provide scalability? Could a dynamic minimum stake based on average TPS be used? On Xi’an, if low stake validators are grouped with other low stake validators and high stake validators grouped with other high stake validators, would this not lead to the value of stake to network security being diluted? If this is a problem, would it be possible to split validators into multiple equally sized virtual validators which would have the side effect of forcing larger stakers to provide more scalability?
25:40 Q by Che.Stuart I am ultimately wondering if Radix would allow individual clients, such as a smartphone, to interact with the blockchain as a node itself, but obviously I don’t understand enough to know how that affects staking. Nevertheless, if Radix’s approach to POS (again, assuming I have understood all these terms well enough) balances the ratio of clients/servers, I think I would be permanently sold.
28:48 Q by Che.Stuart Writing a novel but I have a second question, much more general? Is there something about Radix that makes it specifically oriented to DeFi? If not, why market as the ultimate DeFi solution? Why not just market as the ultimate blockchain solution?
42:08 Q by Ciprian 1. What happens with substates when Alice transfers 25 XRD to BOB. Will Bob’s new substate be linked to both Alice and his previous substate, or is this a single link (like a chain)? In this line of thought, getting the history of all the transaction made by Alice for example you would first search for the active transaction made by her and then go backwards through all the shut down nodes since they are all connected through the logical clock mechanism? 2. How do you search for the active transaction inside a shard? Are the active transactions inside a hashmap so that you can search for them faster, on in a tree-like structure? 3. What is the maximum amount of data that can be contained in a ledger entry (substate)? 4. Is there a pruning mechanism so that shards don’t become too large? From what I understand shards only operate on active transactions (brought up), those that are “shut down” are only there for history. Are the old transactions somehow pruned from a shard so that it can operate faster on the active ones? 5. Based on what metric do you decide that a transaction should go to a different shard? 6. What happens if you want to move a transaction to a new shard but you don’t have enough nodes to validate it?
0:31 - 11:02 AMA: What exactly is the difference between the block notion that is used in most crypto technologies and the states in radix?
11:06 - 15:55 AMA: Cerberus seems to be referred as an additional layer over the radix engine, does this mean that emergent cerberus logic will run on a different node that braids the qc results obtained from the validator node leaders of each shard?
16:07 - 20:08 AMA: Any ideas on if and how we would have to pick validators, say… 5 years into a future where we have (tens of) thousands of validators? No one’s going to look properly for validators then if they sometimes already resort to the easy top 10 now. Where would one even start?
20:12 - 21:40 Piers and Dan talk about the existential implications of services that select validators for you vs doing the research yourself as it relates to how Radix might look in the future
21:46 - 23:42 Dan talks about what goes into the decision of either choosing a validator or becoming a node runner
23:45 - 26:21 Piers and Dan talk about their philosophical differences as it relates to validator selection
26:22 - 27:43 Piers talks about a conversation he had in 2017 about running nodes on TVs.
27:44 - 31:44 AMA: Does the team figure out the sweet spot that can satisfy nodes and still have unlimit tps and makes people whose stake XRD get enough reward? (the video missed a “Q by XYZ” tag used by the first couple questions)
31:45 - 33:27 Piers expands upon the current fee model of Olympia
33:33 - 34:45 Dan talks about additional considerations for validators
34:46 - 37:03 Piers and Dan talk about ledger bloat prevention
37:06 - 39:02 Piers and Dan discuss emergent behaviour of the network from an economic standpoint and optimal validator behaviour
39:03 - 39:15 Piers mentions the question with regards to metrics will be saved for the next roundtable discussion.
39:16 - 48:23 AMA: Chen and Eden, young couple with a child, both successful careers want to buy a house. They have some savings and want to use their jobs/wages as collateral for a mortgage. How will defi help them? (Also missed a question indicator tag)
0:29 - 24:20 Right now there are talks of Russia “shutting down the internet”, and erecting a great firewall of sorts. On a sharded Cerberus network, what would happen in this scenario? Could we see liveness breaks, or even loss of data from the network? I’d be interested in what it looks like on both sides of the wall.
24:21 - 31:16 With the Xi’an release, what would be the maximum amount of validators running over the same internet connection without reducing network performance?
31:17 - 37:47 Would it be possible to compose a transaction in xi’an that touches every shard/validator group and thus slow down the network? Whilst other unrelated transactions can still be processed, that transaction can be spammed to slow down the overall network. Is such a ddos style attack possible?
37:48 - 38:38 Piers gives Dan a quick-fire of questions from r/Radix
38:39 - 40:11 UTXO Based architecture, similar to cardano, currently this is unsharded and won’t be sharded in Xi’an in 2023. What are the potential issues in going from theory to actual engineering the system architecture?
40:12 - 42:29 Radix boasts 1.4 M TPS in simulation using Tempo consensus; Radix’s website states that it’s currently 50 TPS, but a recent Jepsen report states that it is closer to around 16 TPS.
42:30 - 44:34 Does Radix also look at throughput, not TPS, being a UTXO chain, does it allow multiple tokens being sent as a single transaction, and what is the size of this in kilobytes, what is the maximum size of this that can be sent, and is there an adjustable parameter?
44:35 - 46:39 DEX being developed on Radix: Will they be able to handle order book style dexes as well as AMMs, and is there any [active] development?
46:40 - 47:15 Does Radix have probabilistic finality currently at 20 seconds but 5 seconds in the future?
47:16 - 50:15 What is Radix’s storage solution for archiving? How big is the current blockchain? I can’t seem to find current data on this; What is the long term plan for storage so the blockchain doesn’t become too bloated?
50:16 - 51:28 Validators and nodes (I think I counted around 100 active nodes from this explorer website) - what is the current total number distribution of these based on stake; how decentralised is it compared to other chains?
00:00 Intro 00:55 Can Dan do a GT Academy #AMA or stream? It’d be great to hear him talk about the team and the dream!
07:20 What do Piers and Dan think of the current UST/Luna saga and what do they take from it in regards to the (potential) Radix stablecoin?
23:16 Question about Ledger updating Radix App for Babylon.
27:19 I was just reading about the reason for the unstaking delay for another member’s question and it came to my attention again (forgot) that the delay period may be temporary. My questions are: 1. When will the “more automated mechanisms become available and/or are they being worked on right now”? (please read https://learn.radixdlt.com/article/ho… under unstaking to understand my question) 2. If there are no plans to change the delay period, what are the reasons for this? 3. After these mechanism have been implemented when will the community be able to vote on the unstaking delay length they deem acceptable? (This question is void if there is no plan to change the delay period)
35:57 Vitalik once criticized Bitcoin for having fees as high as several cents. How do we know gas fees on Radix will remain low in the future?
43:45 Are there any ideas on the instapass service for dApps already? Will there be identity NFTs, how is the timelines and will this service comply to other counties in the World/EU other than GB?
45:54 Can we speed up private transactions? it seems a bigger request from businesses than anticipated, and therefore for adoption. I’d say it’s more important to have even with 50 TPS before Xi’An. We can’t build ecommerce for example with full transparency, not to mention more sensitive transactions for businesses that need to keep their flow of money private. Can we build faster some workarounds maybe on Babylon? like deposit pools to mix transactions? or use ZKSnarks? We were chatting in community about scrypto components that might do just this, private transactions.