All right.
Hello everybody.
Welcome to the CDS seminar.
My name is Aniket Katti.
I'm an assistant professor here.
I used to run this seminar last semester or last to last semester somewhere.
Okay, so today I'm here to introduce Pedro Moreno Sanchez.
And Pedro is going to talk about Ripple Network, basically, what kind of things that can go wrong in that space.
Pedro is a PhD student here at Purdue, who works with me, and I'm fortunate to have him as my student.
A little bit about Pedro.
Pedro is actually from Spain, but then he took one trip to Scotland, and then he realized that probably he should just wander around.
After that, he has been just country hopping.
He spent some time in Netherlands, I think two years, then three years in Germany, and now here for last three years in Indiana.
Now again, he's probably going back to Austria, so he has been going to all different countries.
But yeah, without further ado, Pedro, why don't you speak?
Okay, well, thank you very much for the introduction, and thank you everybody for attending my talk.
As Professor Katté said, today I'm here to talk about our project, which is called Mind Your Credit, and assessing the health of the Ripple credit network.
And this is a joint work with the students Naveed Modin, and Raghuveer Sangela, and the supervision of Professor Aniket Katté and Professor Sonia Fami.
So basically, as Aniket said, I'm here today to talk about the Ripple network.
The Ripple network is a blockchain technology that has separated from other blockchain technologies by offering new functionalities.
In particular, it offers the possibility of creating path-based transactions in which we can use different currencies.
And this new functionality has allowed us to have a new plethora of applications, and has interesting and key advantages for new industries, like remittance or cross-border transactions.
We will see that in detail during the talk.
But let me start from the basics.
Let me start trying to convince you why we need, actually, credit networks.
Now, if some of you know Bitcoin, the first question that might come to your mind is that, OK, we already have cryptocurrencies, we already have Bitcoin.
Why do we need another blockchain system?
Why do we need another payment system?
So imagine this simple scenario in which we have two users, Alice and Bob.
Alice has a bunch of coins, probably not five or six, because now she will be super rich with some amount of coins, and she wants to pay to Bob.
One situation that can happen is that Bob has never heard about Bitcoin, and Bob doesn't even know how it works, or just doesn't want to receive the payment in Bitcoin.
Then Alice cannot actually perform such a transaction.
And it's true, or probably you might agree with me, that not everybody in the world uses Bitcoin, and probably we are not going to reach a situation in which everybody in the world is going to use Bitcoin for their payments.
And here I have used the example of Bitcoin, but you can imagine a similar argument for any currency that we use in the world.
So I believe that we are going to have a situation that is going to be more usual in practice, is that Alice will have a bunch of Bitcoins and some dollars in a bank, Bob instead will have some other money, probably another currency in a bunch of banks,
probably he has 1,500 Canadian dollars and 200 US dollars, and of course we can have many more users and many more currencies.
And probably what we want actually is that all these users are allowed to exchange money with each other independently of the currency that they hold.
At this point it might seem like a really abstract concept, and why we should care this in our daily life actually.
The point I believe that we use this concept of credit not going out of daily life is that we might not realize it actually.
Let me put it in an example.
So imagine that one day Bob and Alice go to a coffee shop, let's say Starbucks for example, and Bob pays for the coffee of Alice.
At that moment Alice owes the money of the coffee to Bob, let's say $4 for the example.
That we can represent it actually as a directed edge from Alice to Bob, that represents that at that moment Alice owes $4 to Bob.
We reach another day and now Bob and Charles go for a meal, and Charles pays the meal for Bob.
So following a similar argument, now Bob owes $10 to Charles.
And as you can imagine we can extend this more and more, and we can create a more complex network.
The interesting part comes when, for example, imagine that now Alice and Charles go for a drink, and Alice pays the drink, which is $2 let's say, for Charles.
Now Charles owes these $2 back to Alice.
Here we have two options.
I guess that the trivial one that most of you are thinking is that we can create a directed edge from Charles to Alice with a value of 2.
That will represent that Charles owes $2 to Alice.
Instead, one of the new features that are introduced by creating networks is that this debt between Charles and Alice can be settled through the path.
So in this example that you are seeing on the screen, Charles can settle the $2 debt as follows.
So Charles first will say, OK, Bob, now you don't owe me $10, you owe me $8.
And Bob, in turn, will produce also the debt that Alice has with her.
And the interesting point in here is that for these intermediate nodes, there is no loss of credit or there is no loss of money.
And if you think of it as the net value, the difference between the money that one user is owed and how much money the user owes to others.
Before, Bob was owed $10, but he was owed $4, sorry, he owed $10.
So the net balance was $6.
After the transaction, the net balance of Bob didn't change.
So in that sense, for intermediary nodes, in principle, there is no problem for them to be participating in a path-based transaction.
At this point, you can imagine that we can use this credit network setting for a bit more complicated payments and just setting money for a coffee.
So in Marina, we have a bit more complex network like the one in the slide.
Here, what they mean, the users are nodes, or nodes are users, and the edges are all relationships.
One node owes credit to the other.
The number is the amount of credit that one node owes to the next.
And the number in parentheses is the upper bound.
It's how much credit more the user can owe to the other.
For example, the edge between Santander and Eve means that Santander owes already $250 to Eve, and this debt can grow up to $500.
And in such a network, imagine now that Alice wants to pay $100 to Bob.
So the first thing that we have to do is that we have to find a path between the sender and the receiver with enough credit and, in principle, with the currency that we want to pay to.
In this case, we are lucky because there is this path here from Alice to Bob that passes through Santander and Eve where everybody agreed to have some credit in dollars.
So now, in order to settle this debt, we have to look at the directions of the edge.
So the edges that are in the direction from the sender to the receiver are increased by the amount of credit that we want to settle, and the edges in the other direction are decreased by the amount of credit that you want to settle.
Seems like that seems a bit counterintuitive, but I think the example will be clear.
So obviously, if Alice wants to pay $100, the first thing is that the credit of Alice should be decreased.
So now she has only $900, and this has to be forwarded by Santander to Eve.
So Eve now has $350.
Obviously, because Eve has received more credit, she has to forward it.
So she will have less now, $100 less with the Cross River Bank.
And eventually, the Cross River Bank will forward it to Bob.
At this point, Alice has paid $100 credit, Bob has received $100 credit, and everybody in the middle has not lost nor won any credit.
Their net balance is the same.
As I said, such a transaction, we first have to define what is the validity of a transaction, what we mean that the transaction is valid.
And in such a system, we say that such a transaction is valid if none of the numbers decrease below zero.
So we never can have non-negative credit value.
And for the numbers that increase, they cannot go over the upper bound.
So as soon as we stay between these two bounds, then the transaction is correct.
And one term that we might hear later and I want to use now is this term of rippling.
So for example, the transaction that I have shown to you, Eve has performed rippling.
Basically means that she accepted to redistribute her credit, the credit that she had in the credit links, in order to allow the transaction from Alice to Bob.
Similarly, the Santander and Cross-Ribbon example did something similar.
Finally, just to show you the last example of the background information that we will need for the talk, is what we call a cross-currency transaction.
And it's one of the functionalities that are in the credit network that set them apart from other cryptocurrencies.
So imagine Alice wants to pay to Bob, and Bob says, I want to receive the payment in Canadian dollars.
The problem is that Alice doesn't really have Canadian dollars, so what she can do?
So first she has to decide which currencies she wants to spend.
Let's say that she wants to spend the bitcoins.
And let's say, for the second example, that 0.1 bitcoin corresponds to 20 Canadian dollars.
Probably not with the price today, but just for the second example.
These conditions are already determined, which is the path that we have to use.
In this case, it's the one on the top, which starts in bitcoins, and at some moment switches to Canadian dollars.
The problem is that we need somebody that allows this switch between bitcoins and Canadian dollars.
And this is a figure that is called Market Maker, and in this case it's ETH.
So basically this Market Maker is just another network that publicly announces an exchange offer, or a message of the type, I offer to exchange Canadian dollars by BTC, or vice versa, and it's also the exchange rate.
In this case, 1 bitcoin by 200 Canadian dollars.
In this manner, ETH actually allows to use her two links, and linked, which is the exchange rate between the two currencies.
So as before now, we can perform the path-based transaction, so Alice has her credit decreased, while ETH has now more bitcoin.
Now Alice will perform the exchange rate, so it will buy 20 Canadian dollars by the 0.1 bitcoin that she spent.
Now ETH will forward it, and eventually the 20 Canadian dollars arrive to both.
As before, we have to ensure that the transaction is valid by actually checking that we respect the bounds, the 0 and the upper bound.
And as I said, this is an example of exchange offer, like a user that offers the exchange between two currencies to, again, allow transactions between any two users in the network.
So at this point, we know everything that we need, at least at this point, for the concept of repo credit network.
So basically, it's a graph where the nodes are the users, the edges are the credit links, and nodes represent not only users, but also banks that are using this system all around the world.
So we have examples here in the US, this CBW and Cross River Bank.
So Canada, with the Royal Bank of Canada.
We also have examples in Europe with Santander.
Also, the repo network allows to have cryptocurrencies inside the network.
So we have Bitcoin, Ethereum, any other cryptocurrency that you want.
And this allows the repo network, as I said, to represent credit in any fiat currency, Canadian dollars, dollars, euros, pounds, also cryptocurrencies.
And even also, two users can define the credit between them in any user-defined currency.
So one example, for example, is this Godwill currency.
So people were paying Godwill to others in exchange for hours of service.
So if I help some friend by cleaning the house or going with a walk with the dog or something like that, this friend will pay me back using this Godwill currency.
The point is that these extra functionalities that are introduced for the first time by this technology has proposed several advantages for financial institutions and for cross-currency and remittance industries in comparison with the traditional banks that we have today.
So in particular, now it is possible to perform cross-currency transactions in a matter of seconds.
Ballpark 3.5, I think between 3 and 5 seconds.
It is possible to perform transactions worldwide, cross-currency transactions, while we pay still a small fee, at least way smaller than the one we pay with the banks.
Another property is that all these transactions are publicly available, so everybody can check the validity of them or verify actually that the transactions were correctly performed.
While in the case of the bank, the bank has its own records, but then we have to trust that the record is correctly done.
Yeah, as I said, it's an interesting approach for cross-currency and remittance.
So in this background, in this setting, the first thing that we were interested in is looking at this public available data and study the structure and the evolution of this report network.
So we first downloaded the whole, not the whole internet, but the whole report network.
And I promise that took less than 4,000 years, but close.
And once we downloaded everything, we downloaded the complete network from the beginning until the end of August 2017.
And we managed to get more than 8 million path-based transactions, more than 180,000 accounts or wallets, and a bit more than 350,000 credit links.
One interesting thing that we saw just from the data itself is that the activity of the network, by data I mean the number of accounts, number of credit links, and even the number of transactions, has grown way more in the years 2017 than in the rest of the period.
So this is in tune with the more widespread use of cryptocurrencies or blockchain technology in general in the last year.
So in the next few slides, I want to focus a little on this data and give you a couple of metrics that we have to characterize this data.
So we first look at the Ripple transactions.
As you can imagine, we can classify them using different metrics.
So one metric or one criteria that we have is to separate them by circular and non-circular transactions.
So we saw that around 2 million or around 30% of the transactions are circular, and by that we mean that the sender and the receiver are at the same node in the network.
And you can see that in the picture, for example, Alice could have a path that goes through the Bitcoin gateway, Bob and then her own bank and back.
And these type of transactions are basically or could be done for Alice to exchange credit between the two gateways, from Bitcoins to US dollars or vice versa.
And also because probably Bob is going to offer a really good exchange rate, so Alice will do such a thing in order to buy Canadian dollars or to buy Bitcoins, because the exchange rate might be better than the real world.
We will see an example of that later.
Another bunch of transactions that we found interesting are these transactions, which are still non-circular but are cross-currency transactions.
And they amount, again, for around 30%.
And these exemplify the use of Ripple as a cross-currency transaction technology.
Another criteria that we have to measure transactions or to characterize transactions is the number of intermediate users.
Like I said, there are intermediate users allowed to perform transactions.
But we saw that around 15% of them do not really use any intermediary.
So it's just the sender and the receiver of the transaction.
And we observed that these are basically direct interactions between the user and the bank or the gateway, basically to deposit or withdraw credit from them.
We saw that most of them, or 55% of the transactions, have actually one intermediary.
And these basically, in practice, exemplify the transaction between two users that use the same gateway.
Or an example like the one in the figure in which a gateway might have two wallets, which are connected between each other, and use one of the wallets to send credit towards its client to the other users that are connected to the wallet.
And finally, the last 35% use two or more transactions.
And we believe that they are examples of remittance and cross-currency transactions.
Apart from the transactions, as I said, we also denoted the complete set of credit links and wallets.
And we did some experiments also to characterize the structure of the graph of the network.
So first, we used what is called a motif to devise or to see which is the core structure of the network.
A motif, for those of you who don't know, is basically a subgraph of three nodes that represent a small structure between these three nodes.
And the technique, basically, is that you define several of those motifs and see which is the one that appears the most in the overall network.
That manner, you see which is the motif that represents a complete network.
And in this case, we saw that the motif represented in the figure is the most characteristic.
So we have a gateway and then connect it with two users, as shown there.
So we, as a consequence, we believe that gateways are actually still clip layers in the network.
We also look at the community structure, how nodes actually structure itself inside the network.
Basically, for that, we use a community extraction algorithm that give us the different communities inside the network.
And then we labeled every community with a node for which we knew the geographical location.
And once we have that, we labeled the whole community with the same geographical location.
So, basically, our conclusions here were that actually there are communities that form around the gateway or geographically close to the closest gateway.
And we also observed that communities are actually dynamic.
For example, if you see in the graph here, we show in the x-axis, we show the different snapshots of the network that we took.
In the y-axis, we show the number of wallets in each of the communities.
And the different colors depict the different communities.
So you can see, for example, that the red community in 2016, it was only one community that is split in three in 2017.
And that was because many gateways in Europe actually attracted more users and more activity and the community algorithm split them, actually.
And the contrary case happened with the community between Israel and China.
So in 2016, there were two different communities, but the operations and activities of Israel actually decreased, while the China community actually increased a lot and kind of overtook the one of Israel and the algorithm actually put them together.
So in a nutshell, actually, these communities are evolving and are dynamic in nature.
And the final element, or the final thing that we want to do, or we studied actually to characterize the graph, was the liquidity.
And liquidity, in a nutshell, means that the network should have enough credit to allow users to perform transactions between each other.
But we needed a more concrete definition in order to measure it in the network.
So what we did or what we said is that for us, liquidity means that given a pair of users, which is the sender and the receiver, the amount of credit that can be sent from the sender to the receiver must be bounded or must be limited by the amount of credit owned by the sender or by the receiver.
Let's see that through some examples.
Imagine the network that we have here.
We say that such a network has liquidity for the pair of users, Alice and Bob, if the amount of credit that Alice can send from Alice to Bob is limited by the credit of Alice, which in this case means the two credit lines that Alice has with the bank,
CBWW and Santander.
And in this case, it's actually liquid because obviously, I mean, Eve has way more credit than 150 that we need.
And Bob has only incoming credit lines, so the values will only increase and there is no upper bound.
So basically, Alice can perform the transaction for $150.
So we repeated this several times for around 10,000 pairs of sender and receiver.
And we observed that for more than 90% of those pairs of users, the network was actually liquid.
We believe or our conclusion here is that the core of the Ripple network actually provides liquidity to the Ripple users.
So up to here so far with our characterization of the Ripple network.
The second part of the project or the second main block of the project was about study the security of the credit of the users or how secure users use the credit that they have in the Ripple network.
For that, we studied different behaviors that they have and see what things can go wrong, what can go wrong the way they use the credit.
The first one, we called it the effect of unexpected balance shifts.
And the idea here is that if you remember at the beginning, we have seen that a Ripple transaction actually maintains the net balance of the intermediate users.
So everything in principle might be fine.
The problem is that a credit value in a link, so the actual credit, the actual value of the credit in the link and its value market or the market value, really depends on the issuer of that credit or the institution or the user actually that issued that credit to the other.
So then having the credit with one user might not be...
or having US dollars in credit with one gateway, with one user, might not have the same market value as having the same amount of dollars with another gateway or financial institution.
Let's see that in this example.
So imagine again that Alice wants to pay to Bob and exactly the same example as before, but this is 100 dollars.
As we saw before, all the links in the path are going to change by 100, decreasing or increasing depending on the direction.
And as you can see here, the value of Eve, she's going to have more dollars from Santander, while she will have now less dollars with Cross River Bank.
And now this change implies that if for some reason Santander disappears or the market value of Santander actually decreases, she actually loses real value out of this credit, even though the amount is exactly the same.
So probably Eve doesn't want to have that.
And extending this experiment to the whole network, we found that around a bit more than 11,000 users are prone to this problem that we call reaping.
And if we count actually the amount of money that is prone to this attack or to this security issue, it's around or a bit more than 13 million dollars.
So in this scenario, in this problem, we believe that less active users should probably opt to disable reaping at all and not take part of this process.
And for that, they can use what is called the reaping flag.
It's a configuration bit in each of the credit links that they can set in order to show that they don't want to take part of a transaction.
They don't want to be the intermediate node of a transaction.
However, other users which are more active and they have more credit maybe, they might want to dynamically adjust the amount of credit that they want to be part of this reaping.
One reason might be because they actually charge some fees for doing such a service, so they get actually some credit in the process.
A curious setting that we saw is that there were some links in which the actual credit value was zero, while the upper bound was really high.
And we believe those links are from users which actually wanted to nullify this credit link, but they nullified only the value, not the upper bound.
So an adversary or a user that sees this situation can still use this gap in order to perform reaping through that credit link.
And the user actually might lose credit in the process doing that.
So this is only one of the things that can go wrong, so there are others.
The next one that we studied is what happens with the gateways.
What happens if one of the gateways is faulty or doesn't operate as expected?
And as we saw before, gateways are actually still key players on the network, so it really might make sense to look at them and see what happens.
So one of the things that can happen if a gateway becomes faulty is that he can disable rippling in all its links.
So in the figure here, imagine that this landmark with this gateway over there disabled rippling all the links with the users they are connected with.
That moment, the corresponding users actually get their credit frozen.
What I mean by that is their credit cannot be used to send it anywhere else.
The only thing that they can do is send this credit to the gateway and expect that the gateway cash back or withdraw the actual credit in the real life.
The problem is that we have seen, and we will see later, that some of those gateways, if they become faulty, maybe they just don't answer also in the real world.
So this credit is basically lost or at least stuck in the network.
Also, another thing that might happen is that if this credit is frozen or actually cannot be used to even help other users to route through them, effectively, in the network, this means that these things are not actually part of the network.
We cannot use it for all the transactions.
So these users are effectively, or in practice, disconnected from the network.
And we saw, taking this example to the whole network, we saw that more than 100,000 users, around 60% of them, are prone to this problem if the 10 more connected gateways actually become faulty or disappear.
And also we counted the amount of credit that might get frozen if those gateways disappeared.
And we saw that these 112,000 users are prone to be disconnected, and yet they will have around $42 million frozen on those credit links with those gateways that disappeared.
So our conclusion from the experiment is that, yeah, the network still has those big gateways, the really well-connected gateways, which are really too big to fail.
It would be better that they don't.
And also that the user, in order to avoid these situations, users should improve their connectivity.
So they should create more credit links with other gateways, and split the credit that they have with other gateways, so that they don't get all the credits frozen at once.
At this point you might think, okay, but a gateway going bankrupt or a gateway going faulty is not really a realistic situation of mind.
How realistic is this case?
So we studied a use case that happened in reality.
So one of the gateways, which is called PayRoute, was flagged by a remote community as faulty, because users saw that the gateway stopped answering them whenever they had some deposit or withdrawal operation.
Actually, we contacted them by ourselves, and so far we didn't get any answer from them.
So what happens there is, as I said, the gateway actually put those links with the ribbon flag active, such that these three users, these three women, cannot actually use the credit anymore.
But there was also another situation that we didn't expect, but actually happened.
So imagine Bob here.
He has $300, okay?
His link is actually not frozen yet.
It can be used because it doesn't have the ribbon flag.
The problem is that the only way to take this money out, to skip this money, is going through Charles.
And Charles has already maxed out his link.
So in practice, he cannot actually use Bob as an intermediate user to take this credit out of the gateway.
So even if Bob doesn't have his credit frozen yet, in practice they are also stuck.
They cannot be used to perform transactions.
The only thing that he can do is contact the gateway, but as I said, the gateway is unresponsive.
It's not responding to the users.
So we studied what is the scale of this problem.
We saw that there are more than 600 users with a credit link with PayRoute, and such that they are jointly around a little less than $5 million, which are stuck.
By stuck I mean the users cannot actually perform a transaction with those credits.
Nevertheless, here we want to say that PayRoute, or the case of PayRoute, is one case that happened, but it's not the norm in the credit network.
There have been other gateways that also stopped the business, but they did it in a more defined manner.
What I mean by that is that, for example, DividendRippler, before they went out of business, they announced publicly that they were going to do so.
And they sent information to the clients saying, look, you have X months to come to us and withdraw your money before we go out of business and freeze your credit links.
Actually, from that behavior, we saw that at the end, when DividendRippler disappeared, there were around also 600 users with a link to them.
However, there was only around $1,000 frozen with this gateway.
We believe that these are users which are unattentive, or they had just a few dollars and didn't want to cash out.
You think that this might be all, but there are also more problems from the point of view of security in the Ripple network.
And we call this one the study of the effect of stale offers.
So, as we have seen, exchange offers are an important part of the Ripple network, because they are cryptocurrency transactions, and there must be users, actually, that offer the exchange between two currencies.
The problem is that the offer in the Ripple network must be similar to the offer in the real world.
Otherwise, if they are really different, one of the two parties is losing money, normally the market maker.
We saw that this situation is actually problematic with the cryptocurrencies, just because the real world value of the cryptocurrencies is really unstable.
Most of them, you have seen that the price of Bitcoin, for example, Ethereum, has spiked from time to time.
So, we studied the impact of this problem in the Ripple network, and for that we took a period in which one of the cryptocurrencies, the XRP, which is the cryptocurrency built inside the Ripple network, spiked in 10 days for about 380%.
What I mean by that is that the value of Ripple after 10 days was 380 times bigger than before the period.
And in order to study this effect, we went to the Ripple network, we extracted all the transactions in these 10 days that used the XRP-BTC exchange rates, and see how they compared to the actual value in the real world.
And this is what we tried to show in this graph.
So, in the x-axis, you have the transactions, where transactions use this XRP-BTC exchange rate.
And in the y-axis, you have the price, or how many Bitcoins somebody had to pay in order to get one XRP, both in the real world, marked with a green X, and in the Ripple network, marked with a purple X.
We did the same, but in the reverse exchange offers.
One would actually also get one Bitcoin by paying XRP.
And in order to make sense of this graph, let me tell you what we should get out of it.
The idea is that if the value of the Ripple offer is higher than the offer in the real world, the market maker actually gets money out of it.
Because somebody would use this offer in the Ripple market, or in the Ripple network, he could cash out, and the Ripple world would have gotten less than that.
So we believe that this is a normal situation, where the market maker actually should get some money, some fee, for offering the service of exchanging between the currencies.
However, there are many, many cases in which the purple price, or the price in the Ripple network, is way lower than the one in the real life.
So in this case, the market maker is actually losing credit in the process.
If there is a user that actually uses this exchange rate in the Ripple network, it would be way cheaper than using it in the real world.
So we took this information, this data, and we tried to see how much money market makers would lose by having this misconfiguration of the exchange offer.
So we saw that the market makers actually put at risk around $250,000 during this period of 10 days in 2013.
And users that saw that created circular transactions that used this favorable or better exchange rate to get around $7,000, $7,000.
But this is not a one-time thing.
As you can imagine, there are many of these spikes in the cryptocurrencies, and also in other currencies as well.
So we wanted to study if users have learned out of this problem, actually.
I think that the outcome of my answer would be no at this point, because in 2016, for example, there was another spike of the Bitcoin price.
And we did exactly the same experiment.
We studied if the market makers in the repo network were putting their exchanges at the same price as in the repo in their real life or not.
The point is that they didn't, and they put at risk around $500,000, and users got around $5 million.
So that means that users did not only take advantage of those exchange offers from the Bitcoin price, but also exchange offers which are not correct or stale in other cryptocurrencies or other currencies inside the network.
So the outcome from this would be that we believe that market makers actually should actively update their offers.
So they should actively look at the market value of the offers that they are producing, or the real value, and accordingly update the offers that they have in the repo network.
So let me conclude with a couple of remarks.
So basically we have seen here the repo network, and I have tried to give you an overview of how it works and which are the principles of it.
And also that it has gained momentum and was growing way more in 2017 according to the data that we extracted.
And in the characterization of that data, we have seen that actually gateways are still the key players in such a network, while users actually are grouped geographically around those gateways.
And in our liquidity experiment, we saw that the core of the network actually provides high liquidity.
On the other hand, from the security point of view, we have seen that the main two operations of the repo network, which is the rippling and exchange offers, possess still today security challenges.
But one of the things that we have seen is that a large number of users are actually prone to this rippling problem that we saw, or to the undesirable distribution of credit.
And for them, we believe that they should adjust their credit limits accordingly to only the amount that they are willing to put at risk by the fee that they want to charge for that.
We also saw that the users can actually be affected or can have their credit frozen by a handful of gateways or nodes in the network.
We saw a case that actually happened with the payroutes.
So we believe that users actually should add more credit links into a network, create more connectivity, and split their credit correspondingly, depending on the trust that they have on the gateway.
And finally, we saw that stale offers are still a big problem in the credit network and can undermine actually the overall credit of the market maker.
So we believe that they should actually more actively look at the stale offers or the differences between the price in the repo network and the real world, and try to match them as much as possible.
Finally, in the future, we believe that this work actually should prompt the repo community and try to educate the users.
What I mean is create more information to them, create better Wikipedias, better information so that they can look at the correct behaviors according to this problematic way of behaving.
We also believe that the results here that I have shown so far is only for the repo network, and other credit networks that follow similar patterns like the staler.
And most of the results that I have shown here might also apply to them.
And obviously, I think we believe that this work should motivate also further research from the scientific community in order to provide solutions and protocols that try to solve these problems in a more automatic manner.
And if you want to learn more, we have created a website for the project in which we have more information, also the scripts and the data that we have used for the experiments.
And the second link is the full version of the paper in which we have the full details of all the experiments and all the results that we have in this project.
And with that, I would like to thank my collaborators and thank you for your attention.
And if you have any questions, I will be here glad to answer.
So thank you very much.
Are there questions?
So while others are thinking, let me start.
So you mentioned that it's good for the users to make sure that they are not just connected to one gateway, but multiple gateways and distribute their credit across different gateways.
But because credit is so associated with their real money, then is it that their liquidity is lost in that process?
You mean by creating different...
Yes .
I don't think so, because as we saw, actually the core of the network is actually well connected.
So even if you split it among different gateways or different entry points, you are improving your number of entry points.
But still, what gives you liquidity, according to our definition at least, is the core of the network.
As we saw, this is actually highly, highly liquid.
So we believe that splitting these credit links is good not only for faulty gateways, but also because it adds a number of entry points.
So you might even have better liquidity.
That's what I mean.
All right, then I think we can thank the viewers.
Thank you.
Thank you very much.