Mohammad Sadoghi
Description: Today we talk with Mohammad Sadoghi, Professor of Computer Science and principal investigator of the Exploratory Systems Lab at UC Davis. His research is aimed to pioneer a resilient and sustainable data platform at scale, named ResilientDB, a distributed ledger centered around a democratic and decentralized computational model. In this episode we explain the fundamentals of blockchain systems such as reaching consensus through agreement protocols and explore various applications including cryptocurrency. We also touch on the issues of blockchain in the context of centralization and mining power, and how collaborative mining poses a solution to many of these issues. Professor Sadoghi shares his thoughts on the philosophical aspects of decentralization and potential impacts on society.
Websites:
Publications:
News:
Show Notes:
[0:00:02] Introduction and Background of Professor Mohammad Sadoghi
[0:03:14] Predecessor technology before blockchain
[0:06:29] The flexibility and control in university research
[0:08:22] Introduction to Blockchain and Data Models
[0:14:38] Agreement in Blockchain Transactions
[0:17:11] The Importance of Agreement in Clock Synchronization
[0:19:12] Bitcoin's Impact on the Problem of Consensus
[0:20:23] Bitcoin's Consensus Protocol: Decentralized Mining
[0:23:56] Pooling Resources: Distribution in Bitcoin Mining
[0:28:58] Weighted Voting in Electoral Systems
[0:35:35] The Future of Blockchain: Centralization vs. Collective Mining Power
[0:36:56] Issue with popular blockchain models: Decentralization and proof of work
[0:40:59] The Birth of Resilient DB
[0:44:38] Building a Democratic Computation Model with Blockchain
[0:50:17] The Importance of Harmony in Society
[0:53:31] The Difference Between Digital Currency and Blockchain Technology
[0:56:28] Blockchain as a solution to voting corruption?
[0:59:34] Opportunities for students to get involved in self-development.
Unedited AI Generated Transcript
Introduction and Background of Professor Mohammad Sadoghi
Brent:
[0:02] Welcome, Professor Mohammad Sadoghi. Thank you for coming on.
Mohammad:
[0:05] Thank you for having me.
Keller:
[0:07] We'd love to start off by hearing a little bit more about your story.
How'd you get to Davis? What got you interested in blockchain and secure data management?
Mohammad:
[0:15] So I finished my PhD, University of Toronto in 2013 and after that I joined IBM Research and that was an exciting time during that time.
We started looking at a basic problem of how do we make analytics real-time?
And so about 10, 15 years ago, this was becoming a very interesting problem.
On the one hand, in order to run an enterprise, like a retail, you need to be able to do your daily transaction, buying and selling stuff.
And so you try to do this at potentially thousands, if not million transaction per second.
And then on the other hand, in order to really run an enterprise, what you really need is analytics.
[1:00] And I'm sure you all kind of, especially with the recent trend of AIs and so forth, but analytics is the engine behind how do you run successfully in terms of prediction, in terms ofprojection of running an enterprise.
So then, however, if you look at sort of traditional solution in databases, we often had a system that just focused on transaction, and then periodically data was shipped into warehousingsolution where you've done analytics.
So there's always a lag, there was a delay. So the problem that we looked at is that, is it a way to unify these?
[1:36] And what we want to try to leverage in order to make this unification was modern hardware, from memory, from processor, from SSDs, new storage devices.
And so we'll look at this problem, how do we get this unification, hybrid transactional analytical platforms In one engine, you can do both.
Transaction analysis. So that's what then I looked at when I was at IBM Research.
And then at that time, as I sort of made progress, a progression on this, I started thinking about how do we now look into more larger scale transaction?
How are you looking into secure transaction?
And then I joined Purdue. I was the faculty there for a year and then I came into Davis.
And once I arrived with Davis, first week was also a student came to me.
He was interested in blockchain. And so I've been thinking in the back of my mind, so I want to look at in this sort of secure transaction.
I said, well, maybe now is the time.
[2:32] And there wasn't much activity in the research community at that point.
It was like, in fact, even today, there's a lot of sort of resistance to the idea or the area of the blockchain.
But that was in 2017 and said, well, let's take that into the next level.
And let's look at secure transaction and let's look at it in the context of blockchain.
Brent:
[2:53] Okay. So when you were doing the research at IBM, what was that predecessor technology?
Because I'm assuming blockchain wasn't either invented or like dominating that area of secure transaction at that point. So what was that predecessor technology that you were doingresearch on before blockchain?
Predecessor technology before blockchain
Mohammad:
[3:14] So the predecessor, yes, you're right, at least IBM also got involved into blockchain And that was one of the sort of their sort of a hot area around the time that I was leaving IBM.
So around 2015, I think that's when they really got interested.
2014, 2015, they really got interested into blockchain. But I was looking sort of traditional relational database system. And believe it or not.
Almost every single enterprise runs on data, and they all use relational data.
So database technology is one of the most successful software stack in the entire computer science, because you cannot have any organization without relying on databases.
And so your small businesses, all the way to your major top 500 companies, they're all going to rely. So this is legacy technology which exists today and it runs basically every enterprise.
Brent:
[4:11] Yeah.
Keller:
[4:12] And does the way in which you conduct research, does that differ at IBM versus at Davis or at a university at large?
Mohammad:
[4:19] So that's a very interesting question. Historically, IBM research is known to be one of the sort of the best research institute.
[4:29] And in terms of best research institute, what I mean is you have the freedom to be able to explore.
And so you're not so much bounded by the numbers and the revenues and so forth.
Of course, as we unfortunately we see this in the industry as a whole, many of the research lab have not been able to successfully focus on these long-term research.
And so they're becoming more and more short-term research. And probably one of the reason is the Google, Facebook, and some of these companies, they don't even really have dedicatedresearch lab, or if they do, it's very small in size.
And so, they've kind of unfortunately have changed the trajectory of long-term research, turning it into a short-term research.
And the moment you do shorter-term research, that means the flexibility and the freedom of the researcher goes down. So I think when I joined IBM, it still was really good.
And depending on the area that you're IBM research, I think you could still have a very nice long-term research looking at a problem for three to five years, but in many areas you may nothave that luxury.
So I think the flexibility that you get at the university is the key distinction.
It doesn't mean that you cannot do great, impactful work at IBM or other Microsoft research.
In fact, what's interesting is that the foundation of database systems and theory, all is from IBM research.
[5:58] So all the, you could look at every, almost every major distinguished senior researcher today in databases, there was a time that they went through IBM research.
So it is still, I think, carries a lot of weight and carries a lot of expertise and knowledge. I learned a lot. definitely it was, a very fulfilling experience for me being at IBM Research. Yeah.
Brent:
[6:23] And then when you made that jump, you were just looking for that long-term flexibility? Precisely. Yeah.
The flexibility and control in university research
Mohammad:
[6:29] So that's long-term flexibility. And also you, not only you have the long-term flexibility, you also have more control on the direction of that long-term flexibility.
Brent:
[6:39] Yeah.
Keller:
[6:39] So.
Brent:
[6:40] That makes a lot of sense. And then starting to jump in a little bit more into some of the research, could you quickly define what relational data is and then use that to define thedifferences with blockchain technologies?
Mohammad:
[6:55] Excellent. So relational data spreadsheet, you can think of it most simple from rows and columns. That's just relational data.
And so that's the data model is just row and columns.
And why is it called relation? Because you kind of say, well, I have objects.
And so I have courses and I have students. I can describe a course by a set of attribute, rows and columns, set of courses, set of rows, each have multiple columns, the name of the course,the maximum enrollment and so forth.
And then I have student, again, students, I have set of student records, each have a set of attributes, their age, their majors, their GPAs and so forth.
And now the relation part is that the student taking which course.
So that's where it's kind of some one aspect of the name relationship comes into play. But again, the relationship is still itself and other rows and columns.
So at the end of the day, it's just basically rows and columns.
And interestingly, most of the new recent development in databases, whether maybe graph databases, JSON and RDF, and you may or may not be familiar with these different kind of datatypes, but at the end of it, a lot of them can still be mapped into relational models.
So the relational model can be used as sort of the foundation of many of the new exciting data types that appears.
Introduction to Blockchain and Data Models
[8:22] In today's society, for example. And now in terms of blockchain, blockchain is, it kind of could be fairly agnostic to the kind of the data model.
And in fact, you could kind of think of a database as a set of rows and columns to allow me to kind of quickly look up a particular object or particular individual.
But a more raw format of a database is just basically every action that is taken on the data. Any changes that are taken on the data, you just log it, you just journal it.
So the journal is what you use for kind of the correctness and the recovery and the reliability.
These rows and columns is just a representation to allow you to give you faster access.
So if you take a book, the book itself, the pages of the book, that's the log, and you have a table of a context, and you have an index at the end.
So there are chances kind of you can think of it as a way of faster retrieval, can faster access a particular content.
And so as far as the blockchain is concerned, not only could be any data type, but in fact is nothing but just that log. It's just simply a journal.
[9:38] And the difference, the fundamental difference is that in your traditional databases, it depends, it's the way it's deployed, it's managed, is that for example, you give it to a singlebank.
A single bank just have a notebook, have a ledger, and just a journal says, Alex paid $5 to Alice, and Bob paid Jonathan, or any other kind of exchange of money, or any kind ofinformation that is being contractually exchanged among multiple parties.
Doesn't even have to be individual, it could be entities.
So the bank just simply keeps that journal. And now that bank, it's not going to be able to access that journal every time, go open up every single page to figure out who has what.
They load that data into more efficient representation like rows and columns or other form of database to allow it to more efficiently access it.
But as far as the correctness of the data is concerned, it's just that log.
Now what the blockchain says is that instead of you all kind of trust the bank to make sure that that basic ledger is maintained consistently and accurately, well, what if everybody insociety just pulled their notebook?
[10:54] All three of us sitting here, instead of just kind of relying on a ledger that the bank maintains, we all pull our own ledger.
Anything that happens, we write it down on our ledger.
And if majority of us agrees on what happened, then that's considered factual.
And so that's kind of the transition of sort of your normal databases into this blockchain.
A more secure form of transaction. Yeah.
Keller:
[11:23] So is that the same thing as a consensus model or a consensus algorithm?
Mohammad:
[11:28] Exactly, so that's, because for the three of us, at least the majority of us agree on something, that's consensus. Yeah. So that's the agreement.
So the core problem of blockchain is the problem of agreement, is the problem of consensus.
And is to agree upon what's the next transaction that goes to the ledger.
So we all agree on it. And often we save the majority of us because maybe not everybody's available. And maybe some people are unable to respond in time, or maybe some people are nolonger behaving as expected.
They behave, for example, maliciously. So you often rely on the majority.
As long as the majority agrees on what's the next entry into the ledger, then we can always rely on the majority to be able to retrieve it and fetch it.
Brent:
[12:21] That makes a lot of sense. I think that's a great analogy too of the idea of books and tables of contents.
And then when we start to look at scaling up the use of blockchain, one of the concerns I've heard about is the fact that if everyone had to keep the entire ledger, the system would beslowed down a lot.
How is the technology evolving to facilitate mass adoption? So.
Mohammad:
[12:47] It's like if everybody's maintaining the encyclopedia of day one, that more and more volume is added.
So now I have to hold all these volumes of encyclopedia because I keep tracking of everything that is happening. So it's potentially become a burden of each individual if they were toneed to hold everything.
But of course, adding, deciding, or agreeing upon of what's the next thing to be put into our notebook doesn't necessarily require I know the whole history.
Okay. So there is lots of interesting sort of direction, optimization that one can do.
[13:31] And the problem, although the problem of the storage is often cited as just for example, a new node wants to join the network is now have to kind of download and kind of get allthe, everything that has happened.
It needs to get all the books in order before it can start participating in the problem of the consensus.
And that's not necessarily to be able to help you to decide what to put next.
The reason you need to know the history partly is because, is to be able to validate the accuracy of what's going added to the ledger next.
Because for example, if I'm saying that you want to pay $5 to person X, I got to make sure you have $5 in your balance.
And a naive way, at least, is for me to be able to go in through every single transaction that has happened so far to be able to detect you actually have $5.
So that's why you may need the history. But in order to reach the problem of agreement, in order to decide agreeing upon the next thing to put in the ledger, you don't actually need toknow the entire history.
Agreement in Blockchain Transactions
Keller:
[14:38] And do when you're agreeing on a certain transaction, is it everyone in the ledger must agree on one transaction or a given minority has to agree in multiple or a given majority orother has to agree in multiple groups could be a computing different transactions at the same time.
Mohammad:
[14:55] So in a basic case is the majority agreeing on what goes next into the ledger.
Of course, if you are able to partition your data, essentially charge your data, saying that well, the three of us are going to focus the data in Davis and maybe three other people are goingto focus on the data in Irvine, and periodically there might be sort of a transaction that takes money from Davis and put it into Irvine.
So until that transaction doesn't show up, we can kind of work independently.
So it does provide a level of sort of a parallelism.
But the problem of a consensus as a global problem is about deciding the clock tick, advancement of time.
So the way we define time, if there's no event happening, the time stops.
If everything freezes, even the clock itself stops.
So the way we kind of maybe think about time is the clock tick.
So an event happens, clock advances.
[16:00] Now, if you wanted to maintain a global clock, a synchronized global clock, then they all need to tick together.
And that's a problem of agreement. That's a problem of consensus. And now, so if you could maintain local clocks and you only need to sync up your local clock periodically, then thelocal clock and the Davis local clock can kind of work and it may drift off.
So maybe if you look at the time is four o'clock in Davis, and if you haven't synchronized, it's four o'clock in Irvine.
I mean, your watch is constantly just drift off. And so they have like atomic clock, highly precision clock, otherwise just maintain, it's maintaining a problem of a clock.
Blockchain is really maintaining a time synchrony.
So it's a synchronization problem of a time.
Keller:
[16:57] Yeah. And you would synchronize by having a transaction go from one local group to the other.
Mohammad:
[17:01] So they would agree on one transaction. They see an occurrence of an event that is observed by multiple parties.
The Importance of Agreement in Clock Synchronization
[17:11] Whichever party observes an event, the clock ticks.
And in order to make sure your clock is not drifted away, because you may be the only one who saw the event, that's why you run an agreement protocol to make sure that the majorityhave seen it.
So when you move your clock in advance, you don't want to be going in a future where everybody's behind.
So that's the problem of agreement. Again, to make sure every step we take, we take it in synchrony, we take it with the majority.
Brent:
[17:45] And then what are some examples of that agreement protocol? Is that where proof of work or proof of stake come in?
Mohammad:
[17:53] So that's excellent question. So before we transition to that, let me also introduce another topic. So far, we haven't talked about cryptocurrency, had nothing to do with it. Theproblem of blockchain agreement has nothing to do with cryptocurrency.
So how the cryptocurrency comes into the play, I could have just said that every time we agree on something in the example that I gave, We also agree on.
Writing something on our notebook, filling up a page in our notebook, it's like signing a new dollar bill.
So every time a transaction is added, a page is flipped, it's like printing money.
So it's just every time we flip pages of our notebook, it's like adding, you can think of it, that's also generation of money. Each of those pages, it's minting a paper bill almost.
Paper bill, almost. So that's basically just writing down in our notebook that money was generated and we all agree on it too, and that's it, that's cryptocurrency.
So the cryptocurrency actually has nothing to do with the consensus and nothing to do with the agreement.
Cryptocurrency is entirely an orthogonal aspect.
Bitcoin's Impact on the Problem of Consensus
[19:12] However, when we talk about the problem of, so the way sort of Bitcoin kind of changed the way thinking about this problem is that Problem of consensus, problem of agreement isnot a new problem.
It's a problem that in computer science had been studied for 40 years at least.
And physics has been, I mean, it's a problem of time.
So whether, it's still a question, how can you say two simultaneous events ever happened without an observer? If there's nobody observing two simultaneous events, how can you say thatthey were simultaneous?
So there are some very sort of even general relativities, a question of relativity as well too. So there's a lot of studies that's been in physics as well too and even today.
But now the question is that the three of us are pulling out of a notebook and writing us this down. So maybe we are just wanna help the society, we're just altruism.
But the other one is that what if we wanna get some monetary benefit from it?
So one monetary thing is that as long as we participate in this, every time we flip our page, we all kind of maybe get some reward, for example.
Bitcoin's Consensus Protocol: Decentralized Mining
[20:23] But the way the Bitcoin commons solved it, it said, every time that we want to kind of flip our page and we need to decide what's the next transaction to be, your traditionalconsensus protocol, often they would kind of assign somebody as a leader.
This leader would say, the next transaction is this.
And if enough people vote for it, essentially ran an election, and if that election was successful, then something would be written into everybody's ledger.
The Bitcoin said something different. It says.
[20:56] Each and each person, they call it instead of a voter, they call it a miner.
Each person writes something on the new page or a set of transactions.
And as soon as they write it, imagine a puzzle appears on that page.
Now, what I wrote on my page could be very different from what you wrote and what you wrote, because you kind of may be hearing, seeing, observing different events, observingdifferent transactions. So we kind of decentralize.
So what you, each of us may write our notebook could be entirely different.
So there's a problem, agreement. So, but whoever writes it and is able to solve that puzzle, which is that proof of work, whoever is able to solve that puzzle, it will announce the solution.
And whoever announces it first, then whatever that that person wrote to the notebook, to his or her notebook, everybody else write to their notebook as well.
So the consensus is reached. So the consensus is reached by the person who first proposed it.
[21:58] And so this is, again, we're solving a problem with consensus in a different way, and it's solving it without voting.
It's solving it by solving this compute-intensive problem.
And it's compute-intensive, so that means I have to put a lot of resources, so unless there is some monetary reward, it wouldn't make much, whole lot of sense that I spent thousands ofdollars trying to solve a puzzle.
So let me pause. Does that make sense?
Brent:
[22:26] Yeah.
Mohammad:
[22:28] So now the old problem was the problem of voting.
How can you vote? You need to have a social security, otherwise the vote is meaningless, it's diluted.
In Bitcoin, there's no social security. You just solved a puzzle.
So you can actually enter into the Bitcoin, you could say, you can argue it's more decentralized in a sense, that anybody can come in and participate in a consensus, and it doesn't requirean identity.
Because often, having an identity joining a system, you can say, oh, it's still decentralized because we're all all kind of three independent individual.
However, the identity generation's coming from a central entity.
We all went and got a social security. So there's centralization at the identity generation.
But it's still decentralized because we all came into it with our own identity and we're all maintaining our own ledger.
So it's decentralized as far as that is concerned, but, and it's also democratic because we are voting, but it's less decentralized and as the sort of the Bitcoin, because as long as you have thecompute and you can solve the puzzle, then you can add something to your ledger.
And as soon as you added something to the ledger, that page that was added has your name on it. So the Bitcoin goes to the person who solved it.
Keller:
[23:45] Yeah. How does that work with pooling? Cause I know a lot of the computation is very intensive and can cost a lot of money.
And so oftentimes people will try to pool together to run the computation.
Pooling Resources: Distribution in Bitcoin Mining
[23:56] How does that distribution among, you said, if you complete the computation, you write your name down, that is your reward. How does that work when it's done with a pool?
Mohammad:
[24:04] You write the name of the pool. Okay. And then the pool decides how it's distributed among the miners participating in the pool.
Keller:
[24:12] Okay.
Mohammad:
[24:13] So the name is, it would be the name of the pool.
Keller:
[24:15] Okay.
Brent:
[24:16] And then does that ever open up security risks if the person to solve the puzzle first or fastest is the one certifying the data?
If someone had the fastest, best computer, does that leave the possibility on the table that they could kind of fudge whatever number they want and then that gets certified by the majority.
Mohammad:
[24:36] So yeah, that's an excellent question as well. So, you can have compute power to do things faster.
But if the data that you're presenting is invalid, for example, it says that you're paying $5 to somebody when you don't have any money.
So the honest actor into the system, the honest actor who are maintaining the ledger, they will discard that as invalid.
So as long as the majority is still behaving honestly, then those invalid transactions are thrown away. However, so now why is the problem difficult?
Why do we bother making the problem difficult? So we make the problem difficult for two reasons.
One is that if the problem is too easy, then multiple people at the same time gonna solve it.
And if multiple people at the same time gonna solve it, if you remember, we may have written different thing in our notebook.
We haven't solved the problem of a consensus. now we have to figure out which of these possible solution.
So we haven't really solved the original problem of consensus, we're still having a problem.
So if you make the problem difficult, then the likelihood of two people potentially solve it at the same time is reduced substantially.
So it really helps to reduce the problem of fork, they kind of mentioned it, or the problem of, yeah, I think that fork is probably the best term, that reduces the problem of the fork. So that'sone reason.
[26:05] The other reason that we want to make the problem difficult is that if it took us one year of all the miner, took them one year to produce this ledger up to today, it took one year ofcompute of all these miners.
So if you were to present an alternative history, you need to go back and put that one year of resource.
So it becomes prohibitively expensive to go back and rewrite history.
So those are the two dimension of why the proof of work is heavy lifting, so it requires intense computation, is to reduce fork, and it also to make sure that rewriting history is not thateasy.
Brent:
[26:50] So it becomes more secure over time.
Mohammad:
[26:53] It becomes more secure over time, and it also, it avoids rewriting the history.
And the moment you go in digital today, Most of the books are, everybody's doing it on Kindle. And in fact, if you look at the license agreement of most digital reading, you don't actuallyown it. You get a license to view it.
Tomorrow, that vendor could take it off.
And you will lose it. And you don't have, it's not that you go copy your book.
You just rely it on whatever device that you're using. And tomorrow they could pull everything off could potentially change it too.
Brent:
[27:25] One concern about proof-of-work is the amount of energy being inputted into the system to run these computations.
What other verification systems are out there to reduce the energy costs?
Mohammad:
[27:39] Another excellent question. The classical consensus problem was based on election and voting.
The main problem is that if you have thousands of participation, now there's a lot of messages being exchanged.
And so in order to scale it up, you need to be able to reduce the number of messages being exchanged.
In the proof of work, as you said, the main cost is solving this puzzle.
And if you make the puzzle too easy, you're gonna hit those problem that I mentioned.
And also if you make the problem too easy, another potential arguable side effect is that you're gonna generate money too quickly. So you could also hit inflation.
And so the economy that it creates, also there's some ramification there as well too.
So the other protocol that you guys mentioned was the proof of stake.
So the proof of stake is kind of closer to the original election.
And the idea is that you do voting, but your voting is backed up or weighted by your stake. So it's like, if you have $500 put into the system and then your vote may carry more weight.
And so it's become sort of a weighted vote.
Brent:
[28:56] Is it similar to like the Electoral College in a way?
Weighted Voting in Electoral Systems
Mohammad:
[28:58] It is electoral, yeah, it is, but it is more weighted. Yeah. So there it's...
It's weighted by the size of the area. So if I'm living in somewhere that I have, I don't know, 50 acres of land, potentially my vote weight more than somebody who lives in a smallapartment in Manhattan or in San Francisco.
So it is based on the, it's a weighted vote, but it's still a voting system.
So it doesn't have this additional cost of mining.
Keller:
[29:30] And is it less democratic as a result of that weight?
Mohammad:
[29:34] Yes, so kind of the old saying, as the richer gets richer, kind of a thing applies into this model.
Of course, if you actually look at, so there's two things, it's supposed to be decentralized and democratic.
Democratic is the sort of the election, decentralized, everybody has his own copy.
But in fact, what you end up happening because of the pool that you mentioned earlier, a lot of mining have gathered into pools.
So if you now look at sort of the top hashing power of the mining power, you can find that seven, about maybe seven entity holds 50, 60% of the mining power.
So your decentralization is seven, or maybe even less.
They may, some of those may be owned by the same people. So the actual entity on it or individual, we're talking about handful of all this energy and everything that has been sort of putinto it, decentralization is five.
I mean, even in US you have more than five banks. If you look at international exchange, every country has their own central bank.
So you could have easily 170, 200 central bank that are communicating on SWIFT on a regular basis. So you have a lot more decentralization in today's banking system than the presumedblockchain run by Bitcoin.
Keller:
[30:53] The appeal is that there's more potential for decentralization longer term, right?
Mohammad:
[30:58] The longer term, it's gone the other way. So the longer term is more centralization.
It's just because of at least the redistribution of the mining power.
And that's sort of almost the mentality and the philosophy. So in fact, in the last year or so, one new area that we've kind of been looking into is that just asking a basic question, whycompetition?
So there's two things that is run on is on competing and also.
[31:29] Rewarding for good behavior, or penalizing for bad behavior, mostly rewarding for good behavior.
And it's, I would say it's a kind of a sad society if that's the only way that we can game people to behave well.
What are all the educational institute doing? Why don't we educate people to behave well as opposed to game them? Because that's what it is, game theory.
And so we've been looking into collaborative model and in a proof of work, a collaborative mining in a sense that somewhat actually resembles kind of a poll is that if the three of us areminor and joining the system as opposed to we all compete on something, we're kind of rely on a sort of a first chain that like an election.
So the election chain produce the next block, produce the next transaction.
And we as a miner, we know now what the next thing is going to be, and we sort of divide up the space of the possible solution.
So a puzzle's like a lock, a lock of, have three digits, so it goes from one to 99. So I check the first 300, you check the second 300, and you check the last 300. So we at the same time inparallel are gonna check all the combination, that's what the miner do.
Brute force, just a brute force checking everything.
And then, so now we can solve the puzzle faster, and we are collaborating.
[32:56] And so, once we solve the puzzle, whoever solves it, doesn't matter, we all get rewarded equally.
[33:02] And then so, we use a collaborative mining to notarize a transaction.
So you can think of a Bitcoin and blockchain as a way of notarization.
You notarize something because you know that's going to go into history and it's hard to rewrite it.
So it's essentially, you can think of a, blockchain is nothing but a notary service. It's a global, decentralized notary service. So we can do collaborative mining and everybody equally getrewarded.
And if, for example, let's say I'm malicious and I was supposed to look at the first 300 and I didn't.
I didn't say what the solution was. So we kind of shift.
Now you look at the first 300, you look at the second 300 and I look at the last 300.
So we kind of shift. And eventually, now you are honest, you figure out the solution and you know that I failed to announce it, then I could be slashed, I could be penalized formisbehaving.
So everybody will get rewarded equally or proportional to your amount of work you do.
And unless you've proven guilty, nobody gets ever penalized.
Keller:
[34:11] Yeah, sorry. And so in regards to like being malicious, Would that be an intentional...
Reprogramming of the software on your end to then neglect that certain computation.
And what I mean with that is, if you were just to run the proof of work without touching it, you'd always be good, right?
Mohammad:
[34:34] You'd have to be- But assuming without touching it, so you're assuming honest behavior there.
Keller:
[34:39] Yeah, I guess what I mean is like, good behavior would be just not messing with it directly, but to be malicious, you would have to be directly interfering.
Mohammad:
[34:45] Or just don't even run it. Okay.
Keller:
[34:47] Yeah.
Mohammad:
[34:49] That's even as simple as that. Because you're a miner, you kind of presumably downloading the mining software on your machine, and you're presumably producing some result orproducing, sending some messages.
You could run that, you could run something else, you could do whatever you want. Nobody has any control of what you're doing.
So your behavior, so if you are an honest actor, you follow the protocol, meaning get the software, run the software, put it on the the hardware that is needed, produce the result and sendthe result.
So that's an actor that follows a protocol. And if you skip any of these steps for any reason, well, you would consider as a faulty actor. Yeah.
The Future of Blockchain: Centralization vs. Collective Mining Power
Brent:
[35:35] And that collective mining power, is that where you see the future of blockchain going, especially in light of the centralization of blockchain?
And before I guess you answer that, I also had a question too.
Is the centralization of blockchain, especially that of Bitcoin, predominantly in China and their mining capabilities?
Because I think I've heard about people having worries about blockchain being dominated by China specifically.
And then let that lead into the next, the first question.
Mohammad:
[36:09] So there's two things is that where the factories are, who owns it behind the scene and how many in direction is an offshore account there.
So it's, it gets a little bit more, it's not as I think it's a simple, I think China definitely is, is a big player in terms of the mining, although they do have a lot of restriction of internal usage ofblockchain itself of the cryptocurrency internally.
Sure, they have major actor, major sort of powerhouse in terms of the mining capability as well.
But again, if you're centralized into 5, 6, 7.
You're not decentralized. So then, yeah, you're not decentralized.
Issue with popular blockchain models: Decentralization and proof of work
Brent:
[36:56] And then do you think that's the biggest issue right now with a lot of the most popular models of blockchain?
Mohammad:
[37:01] So I think a lot of proof of work model, that's the problem, is that you're no longer decentralized.
And a lot of one, like a proof of stake, for example, because in the proof of stake, we don't have the luxury of protecting the history the way that the Bitcoin can, because there's no proofof work.
All the sort of election-based mechanism, the way that they certify and authorize something is that it basically works on a public-private key.
So what's a public-private key? Is that I can sign something, encrypt something with my private key, and using my public key, which is available as public, you can verify who the signerwas.
So all of those, the way that the voting works, the sort of the validator or the miner are just simply signing their vote.
[37:49] And so the only thing to rewrite the history is to compromise the private key of the people who signed it and you can do that very quickly if you can rewrite it.
So if the keys are compromised, I mean, you assume the keys are safe.
The key compromise is done. So that's why in this kind of new line of work that we're looking at blockchain is that we say, let's use the collaborative mining for notarizing.
So even to prevent these, what they call long range attack, is that even if the keys are compromised, that we can still be protected by the notary that the service provides.
Today, a lot of systems have like layer one, layer two.
Layer one is sort of the Bitcoin. So they kind of send their transaction periodically to Bitcoin to get a notary. But Bitcoin is competitive and we already talked about the challenges.
But if we now sort of flip the problem around using this sort of collaborative mining, we can solve a lot of those computation and also be, because I think it's proof of work isfundamentally more resilient.
It's a raw brute force power, it's more resilient. So, and I think if you do it collaboratively, not only you create a more fair economy, more collaborative economy, which also eliminatessort of selfish mining and sort of a whole array of attack, but it also provides that level of notarization and long-term security without worrying about compromisation of the private keys.
Keller:
[39:13] And with regards to the keys, is that where the conversation of wallets comes in, if it's like a hot and a cold wallet and the safety issues of if you're working with like Blockify or acertain larger.
Apps that they're assigning you your private key, whereas if you're doing a cold wallet, you're the only one that has that directly.
Mohammad:
[39:31] So yes, so there is related. However, those keys are for signing the accounts, the bank account.
So every bank account that you have is known by your public key.
And the way that you can and present ownership is by signing with your private key. For example, I want to use this balance.
So now the wallet is essentially as a way of, you could potentially have hundreds or thousands of bank accounts. And that's why there's anonymous.
It's not, the way they bring anonymity is not that they, it's not about just masking the identity, is that each person have so many bank accounts and they're just moving money all overaround in order to just create a just complete chaos in order to hide things.
So those wallets are the private keys of the users of the system.
So these are the private keys of the account holder versus the private key that I was referring to is the private keys, the concept is the same, but these are the private keys of the miners orthe private key of the validator.
These are sort of the backbone of the system. If your private key is compromised, you lose your money in your bank account. But if the private key of the miners or the validator arecompromised, they can essentially rewrite the entire chain.
So it would have much more catastrophic kind of a scenario that it could lead to.
The Birth of Resilient DB
Keller:
[40:59] And then transitioning a little bit, can we talk about resilient DB and how that differs? Is that where that more community focused blockchain comes in?
Mohammad:
[41:09] So resilient DB, and so again, as I said, when we started doing this in 2017, there's been so much resistance and we had dozens and dozens of paper rejections.
And I think if I were to actually go account probably easily in the order of hundreds compared to all the kind of aggregating all the papers, grants, and all of it, hundreds of papers andstuff being rejected.
And so at some point, I think it was in 2019, we usually, because it's my expo lab, exploratory system lab, and then we kind of had exploratory database. So we had an expo DB.
[41:45] And then as part of this building resilient system, And as part of getting so many rejection, not only myself, but the student has become so resilient himself.
And so it's becoming this story of resilience. And then at some point, so why are we calling it Resilient DB?
It's more fitting and that's where the name came from.
And it really, I mean, I think, especially as a new graduate student, it's very difficult if you kind of, 10 rejections in a row, and these are not just come right after one.
It's not that they all come on the same day. You work on it, you submit, Reject it two months later, then you work on it another three months, it rejects it. So you can go on for two yearsand at least from a publication, you don't really have anything to show for.
So it's really putting anxiety, stress, and so it really builds this resiliency within you because if you believe in what you're doing and if you're anchored within, that doesn't matter withother things.
As long as you believe in something and you are centered and anchored, and you make the decision based on that inner strength.
That brings that resiliency. And so, I think that, so that kind of propagated into the name as well, too.
Keller:
[43:00] Mm-hmm. Why do you think there were so many paper rejections, or may continue to be so many paper rejections with this type of technology and type of research?
Mohammad:
[43:09] It's oftentimes when you kind of, you get these type of disruptive technology, people say, well, it's a waste of resources, it's nothing new.
And so there's always a difficult to change people's perspective.
And but if you believe in something, you stay with it. And this is, if you look at history, most major scientists, they were probably killed.
So because of the, I'm not comparing myself on the same level as them.
By no means, but they were often, they were killed.
And often their work only became known and prominent after they died.
So I'm talking about few rejection in the past five years.
You went 70 years, you couldn't even publish your stuff in a public and you had to use a pseudoname and you went throughout your life without even being recognized. and look at that,that's resiliency.
You know that you will be killed. Nobody's giving you an office and money to work on. You still continue that research, what you believe in.
50 years after you die, now people say, wow, what that individual did.
Brent:
[44:27] Yeah. And so. For you personally, what makes your belief in this model so strong?
Mohammad:
[44:35] In terms of like blockchain, for example?
Building a Democratic Computation Model with Blockchain
Brent:
[44:38] Blockchain, especially the community-based, with collective mining. So.
Mohammad:
[44:44] We're kind of looked at this as, just look out for the problem of consensus.
I think it's an interesting problem. I think if you look at society, a democratic society, it appears to be has fundamental advantages.
That's kind of a longer conversation, what democratic really means.
But at least taking it at surface level, you can see today's society runs on a democratic base.
And so I think it's an interesting question is asking, can you make our computation more democratic?
Can we make our computation more decentralized?
Especially in the age of the cloud, because before we all had our own computers and everybody had managed their own data centers.
Everything is pushed to, over 80% is pushed to Amazon.
Basically Amazon controls everything.
Brent:
[45:35] The AWS.
Mohammad:
[45:36] AWS, that controls everything. That decentralization is completely, is being evaporated over time.
So now the question is, how do you now, given that you're unified and made your compute homogeneous almost as a utility, like a grid, you're using Amazon as a electricity grid.
So, so much homogeneity in that is happening. Can you...
Create a democratic software layer on top that despite not having much controlled reliability on the underlying hardware, can you still ensure that you have a democratic voice anddemocratic computational model built on somewhat unreliable hardware?
So I think that's an interesting, it's an interesting broad research direction, and it also kind of goes hand in hand with understanding how we should run or can run a modern society.
It's not something that we've not reached in either case. We don't have a perfect solution for our political and social structure. And of course, same thing on the computational model aswell, too.
Keller:
[46:52] Yeah, and has that, I guess, mindset always been the standard within blockchain research? it seems like oftentimes when I first started looking into it, the people that are talkingabout it or the papers that are written about it are also tied in with a philosophic edge.
Do you think there's a way in which it grows without people also adopting a philosophy around decentralization?
Mohammad:
[47:14] I think as kind of was mentioning, you cannot gain people. I think the way to do it is to educate.
I don't think a blockchain is a silver bullet solution for anything.
And you could have your software and hardware decentralized, somebody put a gun behind your head, you just do as you do.
You just listen to whatever they say. So it's not going to, if there is malicious actor into the society using military or any kind of a force, dictatorship blockchain is not really going to helpyou.
Maybe it may kind of, there's some use cases that they may kind of help, but at the end of the day, it's not going to change that. And that's, I think, so sort of society to behave well, I thinkyou need, I think education.
I think that's the education democracy goes through hand in hand, and I think that's a fundamental thing to kind of really explore it. Yeah.
Keller:
[48:12] Yeah.
Brent:
[48:13] I think that was a good point you brought up. I think some people view a lot of the new technologies as we're gonna cure so many different problems in the world, But at the end ofthe day, we're still fundamentally human.
And like you said, if there is a real threat, you're gonna address that real threat before any of these technologies could ever help you.
Mohammad:
[48:34] And the next time that somebody says that blockchain is nothing but time synchrony, how is time synchrony going to solve any of those problems?
Brent:
[48:42] Yeah.
Mohammad:
[48:44] So, I mean, that's what it is.
Brent:
[48:46] Yeah.
Mohammad:
[48:48] So, short, you can now make informed decision among society, past laws, as opposed to arguing, at least at the surface level, over nothing, over social media, over tweets, and thewhole political system look completely in chaos.
Instead, if everybody was working and making informed decision, informed votes on two important issues, then we will have a much better society.
Brent:
[49:17] Yeah, and then do you see blockchain as being able to facilitate a lot of that?
Because in a way it seems adjacent to being open-sourced?
Mohammad:
[49:25] So I think blockchain is a tool, like any other tool can be used in a positive or a negative way. And.
If a book is also a tool, if I give you a book on physics and you hold it, and you never open it and study it, does it do anything?
At the end of the day, it's about education. At the end of the day, it's about the individual and the society understanding that you need to learn.
And also, I say another thing, what is another problem? What's the problem, the agreement? Can you think of what is the key problem of agreement that brings into society, a positiveattribute that brings to society.
What is another side of agreement? Disagreement?
Keller:
[50:10] Yeah. Positive.
Brent:
[50:11] Oh, positive. Do, you think we're too negative right now?
The Importance of Harmony in Society
Mohammad:
[50:17] No, no, no. I'm just asking for a positive attributes. Harmony. Okay.
The problem of agreement is the problem of harmony. You cannot reach agreement without having harmony in society.
Do you want to have a harmonious society? That's the question.
And that's, so democracy is not about collecting votes. It's about harmony.
That's entirely different way of looking at democracy from a philosophical standpoint.
Brent:
[50:47] Do you think governments right now would want a harmonious populace?
Mohammad:
[50:57] I'm not sure, it doesn't look like it. You have a split 50-50.
So it is so well optimized, a split 50, that requires engineering work to get a split 50-50. That's not easy. To get a 50 split, that's engineering.
It's not that easy to get such a perfect split. And unfortunately, I think there are different motives, that are different.
Ask you another philosophical question. Why do you vote? What's the purpose of voting?
Self-interest makes you happy, brings you peace. What is the purpose of voting?
Because the blockchain is about voting.
So the fundamental problem of the blockchain, you look at as an example to help us to understand the society is about voting.
What do I vote on? Why do I vote? why do I vote based on? Is that an informed vote?
So, all of it comes back to education. All of it comes back to education and I think the result is harmony instead of hate, resentment, division, split.
So, those are disagreement.
Those are, I think, the opposite side of the spectrum. Yeah.
Keller:
[52:16] And do you have trepidations about governments adopting some of these blockchain currencies or more cryptocurrencies that would become a countrywide digital currency?
Because like we talked about, a lot of the model is built on trying to build up a decentralized power to individuals, power to communities.
Would governments coming in assist that transition or do you think it would only make what we currently have worse?
Mohammad:
[52:40] So as far as the dollar, dollar is digital currency.
Brent:
[52:43] Yeah.
Mohammad:
[52:44] I don't know if you know any individual who has the amount of money to their name in paper copy.
I'm not even sure if you have enough paper copy to actually, if everybody tomorrow wants to just hold their money in their hands, I don't think there is enough paper copy going around.So it's digital money.
And in fact, United States no longer have the money backed by gold.
There's nothing tangible about Bitcoin either. It's perception.
So both digital dollar and Bitcoin, or dollar, which is I think digital currency, is cryptocurrency too.
In a sense, it's based on the perception. and there's nothing really backing it up.
The Difference Between Digital Currency and Blockchain Technology
[53:31] So they're the same. So I'm not sure. So it's a competition to the dollar.
I'm not sure what it doesn't, it may not necessarily bring anything new as far as the digital currency, although overseeing what is written into the ledger, which is the other side of theblockchain, is to kind of maintaining the trust, creating some form of a computational trust or accountable.
That's, I think the technology is there, but as far as the crypto itself, it's not a whole lot of difference.
Although I'll leave you with this thought on it. The one difference between the bank ledger and a Bitcoin ledger is one kind of, I would say, cool difference.
The difference is that the bank has a ledger and traditionally a safe where they kept their money.
[54:20] In the blockchain, the ledger itself is the money because it's the safe too because you don't need an extra thing to keep anything. It's written in the ledger.
The print or the creation of the money is part of the ledger.
So it's kind of, at least conceptually, it's a little bit different.
You don't have a safe and a ledger. Everything is embedded into one.
So that's kind of one difference.
But other than that, I'm not sure it's a whole lot of difference.
I think a lot of Bitcoins is sort of gambling and that's my personal view.
It's a lot of gambling involved. I don't have any stake in any coins or any NFTs.
[55:03] But I think I'm still interested in the technology underneath and the computational model underneath even though I'm not really, I haven't found that, what they call a killerapplication. Yeah.
Brent:
[55:15] And that was perfectly leading to my next question of, do you feel like the FTX scandal and the fact that cryptocurrency kind of right now isn't really a currency, it's more of a formof investment.
Do you view that perception by probably the majority of the populace right now as hindering the adoption of blockchain technologies in other areas?
Mohammad:
[55:45] Sure, and it's an unregulated investment and I think there's a lot of money laundering is probably happening in the blockchain and I think it's been cited that a lot of dark money hasbeen exchanged because it's a way of masking your identity, going through so many layers of indirection, basically.
So yes, it's unregulated, but then you kind of, you game the system in order to make people behave well, or you try to regulate them, force them by law to at least behave in a way that isbeneficial to some segment of the society.
Both of them are a step away from education.
Brent:
[56:24] Yeah, so.
Blockchain as a solution to voting corruption?
Keller:
[56:28] And do you see applications with blockchain in voting?
Because a huge issue with voting is people thinking there's false identities or corruption involved.
Could blockchain be a solution to that?
In terms of, sorry, voting in a political sense?
Mohammad:
[56:43] No, no, no, I understood.
Voting is a simple problem. So, blockchain is about voting, but I don't really think you need a blockchain to fix the voting problem if there is a problem in the United States.
So, I mean, it's, if a government cannot even maintain, presumably cannot even maintain the integrity of few voting machine, or the society does not trust the government can evenmaintain couple of electoral machine, how are you gonna trust anything else?
So I think that's a political problem. I don't think that's, that's not a technological problem.
A voting problem today is a perception problem, is a political problem.
And if in fact the voting today was...
Problematic to a degree that could have changed the outcome of the election, then it's a very sad state for the United States. So I'll leave it at that. Yeah.
Brent:
[57:47] And then kind of pulling back a bit out of some more grim conversations, you talked a lot about harmony and trying to educate as many people as possible.
And I want to ask you how should I become an extraordinary human?
Mohammad:
[58:06] So we do have a course, a first year seminar called Becoming an Extraordinary Human, and it's about individual.
It's about tapping into that individual. It's about to be able to unfold, foster, cultivate the capability that is already within each of us.
If we are able to live in a harmonious society, we must have the ability to live in harmony.
And if we do have the ability, where is that?
Could it be anything outside where we are?
If you learned anything in your studies, whether it's chemistry, biology, playing tennis, is it coming from outside or was it already within you?
You gathered, you focused on it, you paid attention to it, you developed it, and then one day you presented it.
One day you know that you understood that chemical formula or that biological concept, or one day you were able to play tennis, everything was already there.
The potential is there, the capability is there, and the only way to do it, and you can look at your own experience, is by that gathering, by that focusing on your own capability.
And sort of instead of your thoughts and energy be all dispersed, you gather them, and it just happens, just like, almost like a magic.
But it's within. relying on yourself.
And presenting what each person already has within them.
Opportunities for students to get involved in self-development.
Keller:
[59:34] It's a powerful message. Do you have any other advice to students or opportunities for students to get involved?
Mohammad:
[59:44] So opportunity, I think, especially the difficult time that we all go with all the social media and sort of the anxiety and stress, I think really every individual kind of gather within,gather all their energy, the word meditation for example, it's just that gathering, is that I'm not constantly pulled in so many different direction.
Today this is trendy, not that there's anything wrong with trendy stuff, it's great, but I don't be constantly pulled from one side to another, so then I lose my own identity. How do I developmy own identity?
How do I strengthen that? So I think it's important for every person to go within and try to do that self-development.
And I think the point of the university is not about creating a workforce that's secondary. It's to develop human being that they can really tap into their full potential.
[1:00:44] And it's all within, and ability is there.
You go within and you present it.
And I think it's very important, and the research I think is in a good example, allows us to really tap into our creativity.
So that curiosity, that playfulness, I think they all go together, curiosity, playfulness, creativity, I think get involved in research.
So don't just try to memorize things that we learn in our classes, is that really we, how is it that I'm going to make a change?
What is, take everything as a first step, Now how do I show what the next step is going to be? And that will be a fulfilling, I think, university journey in any topic that you find yourself bepassionate about.
Keller:
[1:01:31] Yeah.
Brent:
[1:01:32] Certainly, that's a beautiful message.
Keller:
[1:01:33] Yeah, thank you very much, Professor Sadoghi.
Mohammad:
[1:01:35] Thank you.
Brent:
[1:01:36] Thank you.