Trustless Smart Account Recovery: Beyond Custodians and Social Circles
EthCC[9] · 2 Apr 2026 · 19:06
Andres Junge proposes smart-account recovery through decentralized dispute resolution. Instead of relying on a centralized custodian or a preselected group of guardians, the design uses randomly selected jurors to support recovery without requiring users to establish trusted relationships in advance.
Speakers
Topics
From EthCC[9], hosted by Ethereum France.
Transcript
Okay. Okay. Uh hello everybody. Uh I'm Andres Jung I'm a Chilean, so forgive me for my uh Latin American English. But uh >> [laughter] >> I can see other Latin Americans as well. Uh and I'm going to talk today about the research we've been doing in Anjike about um trustless account recovery. So there's a way to recover your funds in case uh you lost them you lost access to them uh in a way that it's slightly different than they used to be.
Okay. Uh smart about me. I'm a computer science engineer. I'm called OG by some people because I started on this blockchain development since uh the beginning where Bitcoin was less than a dollar I guess. Uh I started an exchange called Yakuin Chile then we I work at Uport and a self-sovereign identity platform at ConsenSys the very early ConsenSys. And then I founded a company called Notabene where we do uh regulatory um compliance for crypto companies. And then now I'm working on Anjike which is the latest company I'm building which uh we basically do or trying to bring the benefits of web 3 to um Latin American companies.
Uh so first time I'm working for a normal uh people not not crypto nerds like us. Uh and well right now the only first focus we're doing is doing uh cross-border payments. Uh Swift it's terrible for them for Latin American companies for exporters and importers every time they need to do something they charge a lot. So we uh providing of course stable coins for do that and on off-ramps in different uh on different countries. But we need to provide them a wallet that it's uh connect all the stuff. So we decided to choose and to use a a non-custodial wallet a smart contract non-custodial wallet. I've been using for myself a safe go I not to safe for a long time. So we thought okay non-custodial wallets make sense and um
of course there's new standards for it and there's a lot of different ones that we can use. Um but still our customers say okay great. Custodial non-custodial wallet makes sense because well you know in case something disappeared or or your company disappear we need to get access to our funds anyway. So uh they value non-custodial but the obvious questions for them is like okay in get I have the keys in get in in case I lost the keys what do I do? Right? So um that's a big problem because if you have a smart contract and you lost the keys uh basically the smart contract lies there with with your funds and there's
no way you can sign something around, right? Um Um well of course um the main problem it's I guess more than a technical problem it's a UX problem. People in general normal people I I would say are used to have a centralized um provider or someone that you can go and ask them hey uh it's this guy I don't have access to my funds what can I do? Can you provide me access back and so on. So this whole crypto world is very complicated to understand to people like I always get in conversations with with companies and they say but if I if I lost sign our access I am really losing all my funds there's no
way you can recover? Yes it's like not your keys not your coins it's it's a it's a maximum here. So it means you need to be or uh be your own bank also means like okay you need to control your own data all your own security and all that stuff. So recovery needs to be at the center of this there's there's it's it's not there's no really use for this kind of a wallets in in real use cases right? So there's two kind of uh current uh recovery solutions.
One is centralized custodians um there's a lot of companies that are providing uh what we call MPC um which is uh multi-party computing uh which means like they have this kind of different uh servers and each server has a part of the keys or recover a part of a recovery key. So in case uh people lost their um their funds or access to their accounts they have a a key or a third key that they can use to to recover that. They claim in some cases this is decentralized because the keys uh split in different accounts or in different um servers. So
but in general if if uh those servers you don't have access to them then you lost your keys, right? So this is good in terms of um provides a common use or a common um the the people are used to this like I go to someone ask him okay recover my funds and they recover funds. Right? Um but of course if that third party or if that centralized solution gets down and it's not always because they get hacked most of the time is is because uh the regulation or the authority says okay you cannot work shut down your servers.
Right? So um there's another way it's called social recovery. Um when I was in Uport I self-sovereign identity with we had um research about this problem and solution on how do we recover my identity if my identity is a smart contract or based on a smart contract how do I recover like you don't want to lose that, right? So we pilot a lot of and build a lot of tools for doing what is called social recovery which means basically you have your smart contract and then you have a another way to recover or change the ownership of the contract by making a couple of your friends go and agree that you need to change or that
this identity needs to change the signer key of this contract needs to change to another one, right? Because you lost it. Um that has it worked we built that and and try a lot and worked then Facebook implemented for a reason. So it's I mean it's it's validated. Uh the thing is that it's your friends that's that is your problem. You need to first choose a a certain amount of friends like three four five give them a couple couple of pieces to them and then uh if they gather three out of five for example they can recover your identity or your smart contract or your funds in in our case.
Uh but those friends you need to manage them in terms of like make sure they store the key the things make sure you still keep contact them in case uh they they go like uh I don't know you're not friends anymore. Uh you need to recover those keys you need to make sure they don't collude so they don't need to be friends from your same circle like not my old school friends or whatever or my family I don't know if you trust them so much. So you need to keep them different kinds of uh uh relationships managed. So it's um it's a little uh complicated uh in the long run. Like at the beginning it works you manage three friends okay sign stuff great. But I tried this for example to my own funds uh and it's really uh
not good to manage all all that relationship. It's really hard and strong. So um these two issues require basically pre-established trust. You need to either trust the centralized custodian won't disappear or the social um network you build to to actually uh recover your your funds, right? Um So well it's it's it's not really um easy on that side. Um and it it there's we think this a a third uh way.
So the third way is called we call this decentralized dispute resolution. Um So the whole idea is uh based on okay my friends or or the third party or the the central custodian when I want to recover they need you need to go there and say okay I'm the actual owner of this thing that is unrecoverable can you please recover it for me or change it to me. And they need to check if you're okay if you're really the one that uh was the owner before and you lost it and now you're the the the new owner with or the same owner but with a new key so you need to change that key. So they need to do this kind of uh check, right?
Or verification. Your friends also right if if I if I have a couple of friends or a a friends network um and then I send them a WhatsApp message to tell them hey can you recover uh this uh or or trigger the recovery process we already discussed uh they will try to check first if I'm not if I I don't know my WhatsApp wasn't being hacked or anything like that. So they need to actually verify me, right? So this can be done in a decentralized way not neither a central trust trustable uh custodial neither a decentral or a distributed I guess or split kind of uh recoverers which are my friends but by
random people or people that I don't know and and I don't have a trustable process before. So I don't know uh how many here knows uh what Kleros is? Okay how many have used Kleros? Uh how many Kleros jurors here? Okay besides me. Okay great. So this is based on on on that idea, right? Kleros basically allows you to um resolute disputes. So, it works very short how for people that doesn't know how Kleros work. Basically, it's a decentralized justice system. You apply to be a juror by buying a coin and then there's they have these smart contract based
courts where you can post dispute and and some money to to raise the dispute and then the system selects random jurors and the jurors are incentivized to rule properly or honestly, right? It's based on whole this theories of the shelling points that people will try to choose the best outcome. And also, they have an economic incentive. If if they vote as the majority and majority wins, well, of course, after majority the one, they will get the parts of the money I put as to raise the the court to raise the the trial, right? And if they don't, they will either get a penalty and they juror
token like the they get they lose some, right? Which means they are incentivized to rule properly, right? So, this really works in terms of um recovery. So, if you somehow have your your smart contract with certain amount of funds and somehow you have proved that you own that contract, right? There's a I can talk a little bit more about that later, but there's a lot of ways to prove your attach your identity to a to a contract. And you say, "Okay, this this is my identity." It's even off chain.
So, when then Okay. When then the contract fails or or or or I lost access to the funds, then I can go to a court and say, "Okay, please I need you to execute a way to transfer the ownership to my new account. This is what I was This is I can prove here that my the the smart contract account is mine in the past and now that this new key is mine also, so please execute that." And people vote and decide if if I choose if if their smart contract ownership should be changed to my new address, right?
So, what's a good theory and then we want to implement it, of course, because we want to try to see if if this works. And and on that and so, basically, you have a the smart account can be any kind of smart accounts. There's standards for this, of course, the for the the 4337 and and and the 7579, which basically standardize how you can transfer ownership or how smart contract can can be used to us as wallet with different ways of validate this the transactions, right? So, it goes this way. The smart account has an AB
signers. Both need to sign for for to operate whatever. Then you need to first go to our contract that we wrote, the the dispute recovery validate validator, which basically you say, "Okay, please, I want to uh in case I lost access to this contract, I want to have a recovery, right?" So, to somehow it's a way for the wallet to sign up to the to the system, right? Great. That's it. And then, in case you lost recovery, you become C and you want to have access to the to the smart account again, right? So, you go to the dispute recovery validator and start to initiate a new recovery, which basically
it triggers, of course, and you need to put some some ETH, right? And you say, "I'm this is this is my I'm the new owner." And provide all the off chain data. That means, "Okay, I'm the owner of the previous key or for for some reason I was the owner of the smart the previous smart account." And then also, I this is my new key, so I need that this new key to have control of of the smart contract, right? Um So, that creates a dispute in the in the arbitrator. It's good to mention that Kleros is the only one that does this so far as far as I read. So, but there's a standard. This is the ERC 792, which basically allows any other
smart contract to become an arbitrator. So, this can be connected to any kind of arbitrator system, right? Either even social recovery one if if you if you need right? So, creates a dispute with ETH and then the question is asked to the jurors, "Okay, is this claimant the legitimate owner of this smart account?" So, they review the evidence, they vote and they um cast their vote in in in the in the smart contract in the Kleros smart contract and basically that triggers when the case is solved, that triggers a rule which basically tells the dispute recovery validator, "Okay,
the court has says yes, we need to transfer ownership." And then you can execute the recovery, which basically means the smart account the sorry, the dispute recovery validator can trigger the transfer ownership to the smart account and transfer the ownership to the to the new one. Um Basically, that's it, right? It's just as one smart contract that implements the dispute recovery validator, the ones that implements a way to run dispute in in Kleros when needed and trigger a transfer ownership on the smart wallet. The smart wallet the smart account wallet needs to have some sort of transfer ownership mechanism. It's that is not super standardized. In some
cases, you need to add an extra like a plugin or something to allow that. But in general, most of the smart contract accounts support that kind of of thing as far as we have tried. Um So, where are we? We have implemented this. There's a repo there if you want to take a look. We have deployed those things in in in in Ethereum and in other pools to test in base in other blockchains in base, for example. And um we we are trying to to do we have done some tests. We have tested with with the current Kleros jurors and it works.
Um but still we have no real test like there's no one that has lost their their funds or access to their accounts and needs to trigger this. So, I think we're still missing some real validation. Maybe I will lost my key somewhere and try to to test it locally. Um We still need to define the identity proof. Um What we have done for the for the trial test is with we sign message with the one of the signer keys of the original or the original signer keys of the contract and we sign a message that says, "Okay, my name is Andreas. Here's a picture or or a hash of picture of my
identity card." And that's it, right? And then we say, "Okay, this is my new key. Do the same thing." And post both things to Kleros and say, "Okay, this proves that I was the owner of this key. This proves I'm I'm the owner of this new key, so please do the transfer, right?" Um Yeah, so far worked, but I definitely I guess we need to build something more useful. Maybe even something that can be consumed some evidence that can be consumed by agents, right? Because I know Kleros is is testing a lot with the different agents um jurors right?
And also on the other side, the smart contract account wallets need to have this kind of transfer ownership function or things like that that not all of them support them. So, we need to try to support different wallets, so this will work with any kind of wallet that has the kind of support. And of course, adding to our own platform because of so we can provide and tell our customers, "Okay, your accounts are non-custodial, but in case it get lost or you lost access to it, you can have a a way to recover it that it's decentralized and and you basically just need to start the the recovery process."
Um that's it, I guess. Yeah. I think I can have one or no questions. Good. Thanks a lot, Andreas. Any question for Andreas? If not yet, you can ask other questions. Yes, for sure. That's my email in case you want to write me something. Also, for sure, happy to answer. Thanks a lot. Okay.