TFTC: A Bitcoin Podcast - #700: Preparing Bitcoin for the Quantum Era with Jonas Nick & Mikhail Kudinov

Episode Date: December 31, 2025

Marty sits down with Jonas Nick and Mikhail Komarov to discuss their research on hash-based signature schemes for Bitcoin, exploring how these quantum-resistant cryptographic solutions could protect t...he network from future quantum computer threats while navigating trade-offs in signature size, verification time, and compatibility with existing wallet infrastructure. Jonas on Twitter: https://x.com/n1ckler Mikhail on Twitter: https://x.com/kudinov_mikhail The paper: https://eprint.iacr.org/2025/2203.pdf STACK SATS hat: https://tftcmerch.io/ Our newsletter: https://www.tftc.io/bitcoin-brief/ TFTC Elite (Ad-free & Discord): https://www.tftc.io/#/portal/signup/ Discord: https://discord.gg/VJ2dABShBz Opportunity Cost Extension: https://www.opportunitycost.app/ Shoutout to our sponsors: Bitkey https://bit.ly/4pOv2L4 Unchained https://unchained.com/tftc/ Obscura https://obscura.net/ SLNT https://slnt.com/tftc CrowdHealth https://www.joincrowdhealth.com/tftc Salt of the Earth: [https://drinksote.com/tftc](https://drinksote.com/) Join the TFTC Movement: Main YT Channel https://www.youtube.com/c/TFTC21/videos Clips YT Channel https://www.youtube.com/channel/UCUQcW3jxfQfEUS8kqR5pJtQ Website https://tftc.io/ Newsletter [tftc.io/bitcoin-brief/](http://tftc.io/bitcoin-brief/) Twitter https://twitter.com/tftc21 Instagram https://www.instagram.com/tftc.io/ Nostr https://primal.net/tftc Follow Marty Bent: Twitter https://twitter.com/martybent Nostr https://primal.net/martybent Newsletter https://tftc.io/martys-bent/ Podcast https://www.tftc.io/tag/podcasts/

Transcript
Discussion (0)
Starting point is 00:00:00 you've had a dynamic where money's become freer than free if you talk about a fed just gone nuts all all the central banks going nuts so it's all acting like safe haven i believe that in a world where central bankers are tripping over themselves to devalue their currency bitcoin wins in the world of fiat currencies bitcoin is the victor i mean that's part of the bull case for bitcoin if you're not paying attention you probably should be jonas mccall welcome to the show thank you for joining me thank you for having us been uh been a big week you guys you guys wrote a paper there's a lot of uh discussion on it on x and other platforms the paper is uh hash based signature schemes for bitcoin and you guys
Starting point is 00:00:55 are in this paper trying to tackle the question of okay if quantum computers do manifest and people need to protect their bitcoin what is the optimal sort of solution to that problem to make sure that bitcoin or bitcoiners are storing their bitcoin and addresses that can't be attacked by quantum computers among other things um but first i think we should start thinking of someone who doesn't have a cryptography background can you just explain what hash base signatures are why they might be important for bitcoin's futures and why hash base um signatures in the first place i i think i can start and then mike can fill in the the details that i'm i'm missing so um that where do we use signatures in bitcoin we use it to authorize transactions and um the
Starting point is 00:01:51 The current signatures that we use, they are based on the security of an elliptic curve that's called Secp256k1 in Bitcoin, it was chosen by Satoshi. There are alternative signature schemes that depend on different assumptions and one of those alternatives are hash-based signature schemes. all these alternatives they have different trade-offs we started looking at hash-based signature schemes because the assumptions that they use they are relatively conservative compared to other signature schemes and hash-based signature schemes that just means that the signature scheme is the security of the signature scheme is based on the security of the hash function
Starting point is 00:02:51 why is that attractive for bitcoin specifically well we already are relying on the security of sha256 for example this is how we refer to previous blocks in the blockchain this is how transactions get committed to a block in the merkle tree and from that perspective we started at looking at these hash-based signatures first. Essentially, it's also important to say for most of the other approaches that one can consider, whether there is one popular or lattice-based schemes that require some other assumptions,
Starting point is 00:03:36 most of them still rely on hash functions. So this is essentially as minimal as you can get in terms of security assumptions and requirements from a scheme is requiring just a hash function to be secure. This is a very conservative approach, and I guess arguably the most secure way, the possibilities this has the least amount
Starting point is 00:04:08 of attack vectors in that regard. So, Janice, you've referenced it. So Bitcoin already relies on SHA-256 for mining and transaction ID. So this is just sort of a doubling down on what's already worked to date and what we know to be pretty secure. Right, right. So hash-based means we can use any hash. There are also different hash functions we could choose, also with different trade-offs with respect to performance or even proving in zero-knowledge snarks. but the natural choice for the hash function would just be SHA-256 because if SHA-256 is broken then
Starting point is 00:04:46 arguably we have even bigger problems than just transaction authorization not working the blockchain doesn't really work anymore we don't know what the truth is we don't have consensus on the blockchain anymore so yeah from that perspective makes sense to look at these signature schemes but they have a reputation uh for being quite large in terms of size so that is that is a consideration that um that one needs to look into when uh when considering hashbase interests and before we get to that because i think that's exactly what your paper focused on like okay if we want to be quantum resistant we're going to use hashbase how do we basically weigh the trade-offs and make sure that bitcoin is still usable and scalable at the end of the day
Starting point is 00:05:38 but before we get to that even like we've all heard the term post-quantum thrown around what does that actually mean like what is the quantum we're supposed to be afraid of and supposed to be preparing for yeah so i think so from my perspective if we if we as cryptographers do security proofs so for example for schnorr signatures or music or frost or signature aggregation dahlias etc we have these little theorems they are a paragraph or two contain some numbers and they very precisely state what the assumptions are under which these signatures are secure and in the case of schnorr signatures it tells you directly when you read it or write it down it relies on the security of this curve that you're choosing secp256k1 in the case of
Starting point is 00:06:36 bitcoin and we know that this assumption that secp256k1 is not broken is actually wrong uh it is broken you just the challenge is just to build a machine that exploits quantum mechanics enough to break it but um this is different from other types of cryptography we can also do cryptography where we don't have assumptions like that so just writing this down this statement personally makes uh makes me a little bit uneasy as well um so um a quantum computer would be able to break our curve and therefore we'll be able to break short signatures now the challenge of post-quantum cryptography is to find cryptographic schemes that are secure even in the presence of quantum computers and that requires also some sort of guesswork or some research as to
Starting point is 00:07:42 what problems quantum computers are actually good at we know that they are very good at breaking our elliptic curve and they are it's very unlikely that they are good at breaking hash hashes let's say they are better than classical computer but they won't be able to break it in a way that they can break elliptic curves and essentially what i can add here is that we even sure that the quantum computers cannot do certain tasks uh good enough to break the security of that for example uh if we have a database a random database and we ask quantum computers to search for a specific input in that database we don't know where it is we know that is a hard problem for quantum computer and you cannot do better than a certain complexity and
Starting point is 00:08:40 and the hash function is essentially is this random database because we take an input we hash it we get a arguably random looking output and our assumption here is that we will not find an algorithm that can exploit the actual description of the hash function but one can view this very similar to how classical analysis of hash functions works because classically we also rely on that we cannot find an algorithm that can exploit the actual description of the hash function the actual algorithm that does the hashing and so far shadow 156 was not under good attacks there it proved its security and there was no significant improvement in terms of exploiting the structure so for any quantum advances there there must be a structure
Starting point is 00:09:46 in the hash function that Y can exploit. And so far, we couldn't find anything like that. Okay. And so let's dive back into the paper and run with the assumption that quantum computers could exploit that hash function at some point in the future and talk about the trade-offs in the paper. It seems like you guys settled on Sphinx Plus
Starting point is 00:10:07 as a standardized solution because it already exists. It's already standardized by NIST. Why do we need this research? what's the gap that you guys are trying to fill um by applying this to bitcoin specifically yeah so nist has looked at um which post-quantum signature schemes to standardize and they picked uh so they picked uh multiple one of them was sphinx plus that they standardized but um so Sphinx Plus exists we could use it there exists in Bitcoin I mean there exists high quality implementations with formal verification and proof etc so we could just use it but the kind
Starting point is 00:10:56 of research question that we had when we started the the paper was the kind of goal of signatures usually outside of bitcoin or blockchains is to sign software and to sign certificates for for the web and this is a very different application to what we're doing in bitcoin with signatures so what what we were asking was can we adapt this standardized scheme or also other schemes that exist in the literature that have not been standardized and see how, in what way we could change them to better fit to this Bitcoin application. And again, one of the trade-offs
Starting point is 00:11:48 that we're trying to solve for here is the size of the signatures. In the paper, you mentioned going from about 7,800 bytes down to around 3,400 to 4,000 bytes with optimizations. i think for the listeners out there getting them to understand like why does the size of these signatures matter what's the trade-off that you're making yeah i think mike can speak best to that yeah so first of all the size determines how many signatures can fit in the block and then the bigger the signatures the fewer transactions you can you can fit and that
Starting point is 00:12:25 determines so in a current block that is right we have these maximum four megabyte blocks and then if your signatures are suddenly huge then you can of course fit fewer transactions in the block unless you increase the block size as well so which is another topic yeah has its own ups and downs uh but yeah if if we consider that for now that the block stays the same uh the the size matters on on the bend uh this is one thing another thing is that the sphinx plus was designed to support a lot of signing operations so the requirement for the was for the people to be able to sign two to the 64 different messages so that's just to add to that's a number with 19 digits so it's a huge number it's practically infinite that that was
Starting point is 00:13:27 exactly the idea is like okay we set up this bar that will be never reached you don't have to worry about it it's 2 to the 64 is huge for all practical applications you just don't need to think about it SNAP program. And this requirement for hatch-based signatures actually determines a lot in terms of the size. And the first observation that we can make is that if we set this bar lower and we actually can have a limit on less number of signing operations, we can significantly decrease the signature size. Moreover, with the signature size, the verification time can also be decreased. And verification determines how fast can we validate the block, how fast we then can propagate it, and so on and so on. So this is one of the core observations here.
Starting point is 00:14:33 if we speak of another improvements is that Sphinx Plus there was a process of standardization and the ideas were coming and certain improvements were made but they had their own timeline
Starting point is 00:14:50 and so they had to decide at a certain point what we accept and what we standardize but the research didn't stop there and there were different modifications and different improvements also suggested and uh we can use those as well in uh in the bitcoin so environment yeah when this sets these standards do they ever change like can you
Starting point is 00:15:18 have updates to the specific standards on sphinx plus or if you're going to go use the other ideas that were um that were suggested but not included in the standard is it obvious if you include those are you out of this standard and is that frowned upon or just considered experimental so if we deviate from the standard now then yeah we're we're using a different one theoretically modifications can be done to the standard and there can be an update there can be a different standard or just just a new version of that there are different also like modifications that we can do one can just use different parameters and for example this way it will be easy to reuse some other implementation but
Starting point is 00:16:14 the some modifications that we discuss in the paper also affect some of the structure of the signature scheme that will have to adjust the implementation as well so this there are various options that we can use that give us a certain performance boosts or sizes boosts or other trade-offs and they come also in the cost of like varying further from the standard or staking more with it. And so we already talked about one trade-off, which is the size of the signatures. I think the other one,
Starting point is 00:16:54 one of the other ones that you discussed in the paper is if you have heavier signature sizes in bytes, in terms of bytes, you could sort of limit the amount of signatures that any public key can be associated with any public key? What's the trade-off there? I think this is a strange technical thing that one needs to get his head around, right?
Starting point is 00:17:22 If right now in our world of signatures, we don't care how many signatures we do. It's just a technicality of these hash-based signatures that when you design such a scheme, there is a limit of signatures you can make her public key and to be clear it's not our i we were not the first to come up with reducing the number of supported signatures this is a pretty obvious idea when you when you look at those schemes how they are structured um but one of the insights that you might have when trying to apply
Starting point is 00:18:00 this to bitcoin is just that in bitcoin specifically in bitcoin we don't need that many signatures right we create an address usually we only want to use it once we don't want to dress reuse and then we sign produce a transaction that's it then you might have to do rbf to bump fees then you have to sign again how often does that happen maybe it happens more often and if there's more a more competitive block space market doesn't happen often right now and it certainly doesn't happen two to the 64 times um there are other things where you need to sign more often for example in in layer twos so lightning so that payment shows that's that's sort of a different discussion perhaps but you still won't sign that many times it's still going to be an upper bound
Starting point is 00:18:53 that is below two to the 64 and um yeah using those ideas we can get down uh this the signature size um and yeah as i said this is quite quite a technical quite a technical thing very peculiar to these to these hash based signatures lower number of supported signatures means uh you can get a smaller signature and um what happens if you sign more often i think that's important to explain so if you have a signature scheme hash based signature scheme that supports let's say a thousand signatures and you do more then the security sort of degrades so it will make it easier and easier for an attacker to actually forge a signature which in bitcoin would mean that they could be able to steal your coins make a malicious transaction to steal your coins
Starting point is 00:19:48 so you should really if you have that limit of supported signatures you should not exceed it you must not exceed it so freaks this rip at tftc was brought to you by our good friends at BitKey. BitKey makes Bitcoin easy to use and hard to lose. It is a hardware wallet that natively embeds into a two or three multi-sig. You have one key on the hardware wallet, one key on your mobile device and Block stores a key in the cloud for you. This is an incredible hardware device for your friends and family, or maybe yourself who have Bitcoin on exchanges and have for a long time, but haven't taken a step to self-custody because they're worried about the complications of setting up a private public key pair,
Starting point is 00:20:27 securing that seed phrase, setting up a PIN, setting up a passphrase. Again, BitKey makes it easy to use, hard to lose. It's the easiest zero to one step, your first step to self-custody. If you have friends and family on the exchanges
Starting point is 00:20:38 who haven't moved it off, tell them to pick up a BitKey. Go to bitkey.world, use the key TFTC20 at checkout for 20% off your order. That's bitkey.world, code TFTC20. What's up, freaks? Have you noticed that governments
Starting point is 00:20:51 have become more despotic? They want to surveil more. They want to take more of your data. They want to follow you around the internet as much as possible so they can control your speech, control what you do. It's imperative in times like this to make sure that you're running a VPN as you're surfing the web, as we used to say back in the 90s. And it's more imperative that you use the right VPN, a VPN that cannot log because of
Starting point is 00:21:13 the way that it's designed. And that's why we have partnered with Obscura. That is our official VPN here at TFTC, built by a Bitcoiner, Carl Dung, for Bitcoiners focused on privacy. you can pay in bitcoin over the lightning so not only are you private while you're perusing the web with obscura but when you actually set up an account you can acquire that account privately by paying in bitcoin over the lightning network do not be complacent when it comes to protecting your privacy on the internet go to obscura.net set up an obscura account use the code tftc
Starting point is 00:21:45 for 25 off when i say account you just get a token it's a string of token it's not connected to your identity at all token sign up pay with bitcoin completely private turn on obscura surf the web privately obscura.net use the code tftc for 25 off yeah it's it's funny we're getting again i thought i say this a lot especially when i talk to developers and cryptographers like yourself it's like so many people take for granted that the system just works and not understanding these these deep cryptographic primitives that exist but it is always infinitely fascinating um diving into these details because i think it's important even if you're not technical to have a rough understanding of what's happening under the hood um but obviously we talked about
Starting point is 00:22:35 sphinx plus some of the optimizations there we also talk about watts plus c fours plus c pores plus fp with potential optimizations uh i guess without getting too far into the weeds what are the ideas with these optimizations i think i can i can give some some already here so the core idea is here is um we can make the signer to work a little bit more on finding certain inputs so except we don't only include the message but some extra seed or an extra random number or a counter and that allows us to search for better values that we can then sign and this requires some extra work from the signer but because we have this extra properties from what we are signing this can reduce the signature size and this also helps
Starting point is 00:23:42 the verifier so by doing extra work on the on the signer part we reduce the size and we reduce the verification time sometimes this extra work also comes in the cost kind of yes we we search for for this nice value to sign afterwards. But because this value is nice, this also eases the further work for the signer. So we had these different parameters choices in the paper. And for most of them, we make the signing time a little bit more
Starting point is 00:24:22 than the original Sphinx Plus, because we want more effort from the signer, but really smaller signatures. And on the other hand, we can still balance this out while keeping the signature size small. And so this would affect wallet software, right? Because I'm thinking of playing around with some DLC apps, Atomic Finance, and when you go
Starting point is 00:24:46 and you're doing like a rollover transaction with DLCs that take a lot of signatures, it sometimes takes like a minute or two to actually sign and then broadcast the transaction. So this wouldn't necessarily affect the nodes, right? and bandwidth proper propagation and things like that it's just literally on the setup to sign and then broadcast correct yes i think i think this is a very uh interesting point that that you're making right now that i hadn't really considered before so um i think this kind of trade-off
Starting point is 00:25:20 between increasing the signing time while reducing signature size and verification time makes a lot of sense in bitcoin because at least on the bitcoin blockchain we have a natural limit of the number of transactions that are supported per second right we can at most like whatever 10 transactions per second and a few more signatures than that whatever but it's not thousands of signatures per second that you need to make on the other hand we also have hardware wallets that are of course lower powered and that might take longer and i think what you're pointing out is an interesting thing you might have situation where you are pre-signing a lot of transactions and this is what is happening naturally in dlcs right now and this this would
Starting point is 00:26:13 be affected by a change like this by a change to to hash based signatures because producing these signatures depending on which parameters you you pick which is i think the biggest part of our work trying to figure out what are reasonable parameters it might take much longer to sign them than they it takes currently yeah and that's the trade-off you have to weigh are you willing to wait more to broadcast the transaction right more generally perhaps important to say that in this post-quantum world we always have to deal with downsides there's no this is also something that i feel like people on twitter sometimes misunderstand because they are asking why haven't you done anything right now already perhaps we would have we would have changed to
Starting point is 00:27:06 more conservative assumptions in terms of signatures if it was for free but that's not the case whenever we want to add post-quantum security to bitcoin we get very significant downsides be it new assumptions uh signature sizes verification time signing time statefulness so there's no we can't just we there's a big risk i think to just try to switch something which we later figured out wasn't the right choice because it picks the wrong trade-offs. So what we're doing mainly in this paper is to explore the trade-off space,
Starting point is 00:27:50 particularly with respect to hash-based signatures, to inform the community as to what are reasonable parameters to pick. Yeah, that makes a lot of sense. I mean, you mentioned statefulness. You guys touched on it on the paper, stateful versus stateless signature schemes. why is being stateless so important to bitcoin specifically
Starting point is 00:28:12 so yes stateful versus statefulness is a good topic as well here what does what does a stateless versus stateful mean is that again now we don't have to think about it ecdsa is essentially stateless and what does mean is that when you sign you don't have to touch your secret key in terms of changes and updated. It stays the same, and you can kind of, in more or less implementations, you can separate it, you can back up it as it is, there is no problem. Everything, again, stays the same.
Starting point is 00:28:52 When we say stateful hash-based scheme, it means every signing operation must update the secret key. And if there is a misuse of this secret key or the update didn't go through or you lost some key and you run a backup that has an older state of the key that will compromise the security of the skin but it comes from the other side with benefits of having again better performance and better sizes with a stateful scheme if you if you're happy with this secret key manipulations you can have better performance but it's important to mention
Starting point is 00:29:36 this can be very tricky for example if you have just two separate devices and you want to run them with the same key pair if they don't communicate with each other maybe you can separate the states but that will limit
Starting point is 00:29:52 the number of signatures that they can provide but there is much involved there in that regard with managing your key pair yeah so the state management thing i think is another very technical thing but that is kind of important when trying to pick these schemes i think state fullness is pretty fragile
Starting point is 00:30:16 and it's one of those things that won't work for every signer so another example is so you run bitcoin core on your node um let's say you produce a backup you back up your wallet dot that you make a few transactions perhaps and your machine crashes whatever it break your machine breaks you need to restore the backup that you've created including the wallet.dat and if you do that and the state would be stored in the wallet.dat which of course no one would do but if you did that then essentially you would allow an attacker to produce forgery steal steal your bitcoin so that is why it's very fragile and it won't work for everyone so for example it won't probably won't easily work for fair clear okay i guess another thing that this
Starting point is 00:31:12 affects too though is like hd wallets hierarchical deterministic wallets then you mentioned the backup system that we rely on again they don't work the same way with hash based signatures either so what uh what do we do with hd yeah i think this is one of the the other uh sort of downsides of hash based signatures is that they don't have this nice mathematical structure that we currently enjoy on our elliptic curve which means that we cannot use any of the tricks that we've developed over the past years in bitcoin and that includes hd wallets it includes multi-signatures threshold signatures silent payments aggregate signatures and taproot i guess taproot commitments so that was one of the other research questions that we also had when we started this entire
Starting point is 00:32:13 project is um is there anything we can do with hash based signatures uh in the past it was sort of um um it was intuitive that it wouldn't work but i thought maybe we could do something here or there and improve uh improve on at least the trivial things um uh i think the answer is mostly we can't really do anything fancy there we describe some methods in in the paper that would reduce the size of multi signatures by a little bit but it makes the signing protocol very complicated and there are other techniques like that that you could use especially for multi and threshold signatures it's not maybe there are some scenarios where you could use them but right now it doesn't seem uh it doesn't seem to make a lot of sense to base the entire
Starting point is 00:33:12 standardization effort and picking specific schemes just to make it work a little bit bit better with these multi-signature schemes because they don't really work that well yeah they don't give much there and for hd wallets um there we have so hd right is is multiple things one is uh private um derivation and public derivation so what you can have still with hash base signatures that works very straightforwardly you have um a seed that you can generate many addresses from it perfectly fine works well what you can't have is this kind of xpub where some other person would or some other entity would derive new public keys from some given xpub that does not work and this like this xpub system the xpub setup is particularly
Starting point is 00:34:14 important today in hardware software wallet setups if your hardware wallet export export your x pub from the hardware wallet to the software wallet software wallet is that able to to derive new addresses and scan scan the chain in in that way and that wouldn't be possible anymore with hashbase signatures what you need to do instead so the only thing we know of is you have your x pub is not a short public key but rather a list of a long list of public keys that you give to the software wallet and once this list is exceeded the software wallet needs to talk to the hardware wallet and ask for more public keys again so it's not impossible but it doesn't work as well with the infrastructure that we've created with descriptors uh in the past and um there is also
Starting point is 00:35:13 this kind of um worry that because it's a little bit harder to make this work that people would or wallet developers might decide to just reuse addresses for example instead of building the building this system that would work a lot of things there yep yeah so anyway is like if you're a listener i think one of the examples that jonas just walked through like say you have a cold card and you want to set up the private public e-payer offline using the wallet and then you want to put it in a safe or something but you want to be able to receive bitcoin to it so you download sparrow you export the xpub to sparrow and then from there you can get these addresses this would be made harder you'd have to do it a different way with these hash based and similarly with multisig
Starting point is 00:36:06 you share xpubs with your quorum partners to make the multisig xpub and that would be made impossible to hash based signatures right right this is another another kind of scenario that sort of wouldn't work as well anymore that seems like a pretty big change maybe something uh we should talk through at this at this well it might be i mean there are other uh we said it's not only hash base signatures there are other uh um assumptions we can base they support they might support these kind of scenarios better but they have other downsides sub freaks have you noticed that governments have become more despotic. They want to surveil more. They want to take more of your data. They want to follow you around the internet as much as possible so they can control
Starting point is 00:36:56 your speech, control what you do. It's imperative in times like this to make sure that you're running a VPN as you're surfing the web, as we used to say back in the 90s. And it's more imperative that you use the right VPN, a VPN that cannot log because of the way that it's designed. And that's why we have partnered with Obscura. That is our official VPN here at TFTC built by a Bitcoiner, Carl Dong, for Bitcoiners focused on privacy. You can pay in Bitcoin over the lightning. So not only are you private while you're perusing the web with Obscura, but when you actually set up an account, you can acquire that account privately by paying in Bitcoin over the lightning network. Do not be complacent when it comes to protecting your privacy on the internet. Go to Obscura.net,
Starting point is 00:37:38 set up an Obscura account, use the code TFTC for 25% off. When I say account, you just get a token. It's a string of token. It's not connected to your identity at all. Token sign up, pay with Bitcoin, completely private, turn on Obscura, surf the web privately. Obscura.net, use the code TFTC for 25% off. What's up, freaks? Been seeing a lot of YouTube comments. Marty, your skin looks so good you're looking fit these days how are you doing it well number one i'm going to the gym more trying to get my swell on trying to be a good example for my young son to fit healthy dad but part of that is having a good regimen particularly staying hydrated making sure i have the right electrolytes and salts in my body that is why i use salt of the earth i drink probably three of
Starting point is 00:38:28 these a day with one packet of salt the earth i'm liking the pink lemonade right now it's my flavor of choice uh this is their creatine i've added this to my regimen they have it in these packets as well uh makes it extremely convenient if you're traveling you want to work out while you're traveling but you don't want to be carrying a white bag of powder going through tsa it's very very uh nerve-wracking at times you have to explain hates it's not what you think it is it's creatine i'm trying to get my swell on um make sure you're staying hydrated i have become addicted to these it's made my life a lot better i can supplement this for coffee in the morning and be energized right away i can supplement i can bring the creatine wherever i need to just
Starting point is 00:39:10 put a couple packets in here before i head to the gym bring this to the gym drinking out of a glass bottle make sure i'm not injecting any microplastics into my body go to drinksote.com use the code tftc and you'll get 15 off anything in the store that's drinksote.com code tftc Well, that's going to be my next question. Obviously, this research paper was focused on hash-based signature schemes. Do you guys plan on doing more research on different signature schemes moving forward? Yes. So our current plan is also to look at lattice-based schemes, as exactly Jonas mentioned.
Starting point is 00:39:49 Although the lattice-based, they introduce extra assumptions. This is called lattice-based. so they're based on lettuces and the firm structure and then certain with certain hat problems, but they can potentially offer these upsets in terms of hardware, what is public key derivation, multi signatures and stuff like this. So for now, I think it's a little bit early
Starting point is 00:40:19 to talk in details about that, but this is just a pull-out that we're currently working on. Yeah. And I also think it's important to note that this entire post-quantum story for Bitcoin is a spectrum from what do we do in an emergency if it happens now, let's say. It might not even be a quantum computer. It could be just our curve is broken classically.
Starting point is 00:40:48 That's a scenario that some people bring up. and how can bitcoin really work in a post-quantum future and those are are different questions i think because when we want bitcoin to work in a post-quantum future we need to make sure that people can just can still make transactions and they are not just uh like a few transactions that can make it into the chain because the blocks are are so uh small compared uh compared to the signature sizes so those are different questions and then there's a spectrum in between where we look at okay maybe this won't be the perfect solution but at least it doesn't rely on these crazy assumptions and i think this hash based signature schemes is more on the sort of emergency
Starting point is 00:41:34 something we could get consensus on relatively easily whereas the lattice based stuff is a little bit further away on that spectrum yeah there'd be a lot of reshuffling if we had to do if and potentially when we have to do this transition so being prepared for it also there's it's also possible to add multiple signature schemes to bitcoin and even the hash based hash even just looking at hash based signatures this might be a viable path forward because there are just so many different types of signers there are these i don't know pleb hardware wallets and there are Cleb Lightning nodes and there are also big exchanges
Starting point is 00:42:26 and they have different requirements. And even just for hash-based signature schemes, this might mean that it makes sense to add hash-based signature schemes with different parameters. This has downsides as well, of course. It increases the complexity of the Bitcoin protocol, which we want to keep relatively small because this might result in chain splits or other
Starting point is 00:42:53 vulnerabilities in bugs if we have if if if if there actually is something that that goes wrong And so another downside would be that it reduces privacy. One of the big advantages of introducing Taproot was that every transaction should look like every other transaction, even at least in the best case, to improve privacy. And if we introduce these many different signature schemes now, this might be a problem because now you can look at the blockchain and just follow a certain path of transactions and maybe certain wallets, they have identifiable fingerprints and so on. So these are the downsides if you add multiple signature schemes, but it's certainly possible. So you get degradation and privacy via process of elimination of different people using different signature schemes. yes yeah that makes sense well i guess this all comes back to like how how real is this threat how imminent is it or far away is it how much time do we have to prepare obviously jonas you
Starting point is 00:44:11 mentioned like there is a potential for classical means so you don't even need a quantum computer just to break the curve but i think a lot of the discussion is on quantum specifically and obviously early this year you had google's willow chip uh made a lot of headlines i think the um the sort of advancement there was 105 qubits uh computations that would take supercomputers 10 septillion years to to perform um and is that advancement enough to to make bitcoin bitcoiners wary and then another thing which is i'm trying to wrap my head around reading people's reactions to the um the quantum discussion this week is like how how much signal is in these advancements whether it's willow or other quantum advancements that
Starting point is 00:45:02 have been made recently i've i've read people explaining that some of these advancements have sort of hard-coded um variables or assumptions in them which are sort of cheating in a way um and even if willow got to 105 qubits and it was legitimate i think it's a very good case to be made that it was bitcoin's cryptography would require around 13 million qubits working in parallel to to break the curve and so like how how viable is that how realistic is that in a timeline of 5 10 15 years so i i'm i'm not a quantum engineer and i think there is no consensus at least among the experts um when this will happen my angle on this is that i told you we we write these theorems they rely on the elliptic curve we know the elliptic curve is broken this
Starting point is 00:46:02 makes me uneasy uh i want bitcoin to be secure and that includes my own little stash i want it to be secure against very very powerful adversaries and i don't want it to only remain secure some random guy on twitter turns out to be right so i think the bitcoin community should certainly look at this problem and this is why we we are working on it uh i right now i wouldn't lose my sleep over it for sure as well but on the other hand um uh 10 years in bitcoin even is not such a long time if we need to prepare for for an upgrade like like that uh you said it yourself the hd wallet stuff for example that would completely be broken so we need would need to have an ecosystem update for that maybe that doesn't take 10 years but people migrating their
Starting point is 00:46:58 coins uh the more time they have um uh the better yeah yeah i mean it's very hard to just say okay this will be five years ten years or whatever years because the advancement goes from every possible direction as you said for example accounting the number of cubics there is a very interesting point in terms of it's a little bit different from how the classical computers work in terms of we need several physical qubits to encode one logical qubit. One logical is that it actually
Starting point is 00:47:42 performs like we expected it to perform because there is a lot of noise in the quantum computations and one needs to eliminated noise to actually do proper computations one can increase the number of those qubits one can improve the this noise cancellation algorithms then it's also very important in terms of the quantum algorithms that actually solving the problem and for example there was a recent advancement that reduced i think by 20 times the number of uh qubits that require the algorithms there so the advancement go from different directions i would agree with jonas in terms of i wouldn't lose sleep today but we have to work towards the solutions to be ready
Starting point is 00:48:35 if we just delay delay delay and we never come there but now we have to work and uh progress and see what what possible uh solutions we have and prepare for for the downsides uh and changes that that these solutions bring how would uh how would you two describe your your, what's the word I'm looking for? Are you happy with the amount of focus on this? Obviously, BIP360 has been talked about for the last, I mean, before it was BIP360 even, people have been talking about this hunter and his work.
Starting point is 00:49:19 People have been looking at that and discussing it for what seems like over a year now. at this point obviously you two have done a ton of research we had the the quantum meeting at presidio bitcoin in july is there enough discussion in your opinion on this topic right now are p enough people focused on it and taking it seriously and of course it would always be better if there was more quality discussions but i think the type of discussions that we have right now is is pretty good and has also increased quite a bit especially over uh over the last year so like you you like on twitter there there was not only noise i think there was also a bunch of
Starting point is 00:50:03 signal and it was good that even the wider bitcoin community also talked about this and talked this through and um on the bitcoin mailing list there's always a bunch of discussions of course there's always this kind of bitcoin thing that might happen where just there is some discussion and then there's there's no follow-up nothing ever happens right this is pretty standard thing that happens in bitcoin uh but i'm also not too worried about that to be honest because i think if it really if it was really uh if if the quantum computer was imminent then i think the the bitcoin community would find consensus on some sort of upgrade what is of course going to be really really painful and there's no way to sugarcoat it is what happens with the coins
Starting point is 00:51:00 that don't migrate and i think this will be extremely painful but that's not something that that cryptography can solve unfortunately what's your take there i'm uh i'm uh don't do anything with them let them let the treasure hunts begin that's i think that's my stance because you always have to think of the man in the coma right which is if you were to change or make their coins unspendable and the guy wakes up and he's like hey i have five bitcoin here that i can't move anymore because you did something and quant computers haven't stolen it yet um you're sort of screwing that guy over i think there are reasonable uh arguments for or both for both positions that's what makes it painful and um i don't know i guess my opinion right now is that
Starting point is 00:51:55 if i look at it extremely selfishly what code would i run on my node then i think it would be the one that uh that freezes the coins because that at least i think in the mid to long term it would probably result in a better outcome for the for the bitcoin network but yeah you could find counter arguments to that i'm sure yeah i thought um i followed the uh the discussion on the mailing list i've been following it i thought earlier this year I think there's still a lot of assumptions baked into this, but I thought Ethan Haleman's post on this was interesting. He could essentially throttle the transition
Starting point is 00:52:36 and only make a certain amount of transactions from quantum-exposed signatures possible per block. Is this this hourglass idea? I think so. I'm pretty sure. uh let me see it goes all the way up i think it is he also said it was a way to solve the uh the jpeg spam as well but this idea that and that's the other thing maybe we should just dive into the trade-offs that exist
Starting point is 00:53:12 um with what you do with the coins that that haven't haven't transitioned what are the solutions that are being thrown out there right now are the trade-offs that exist i mean i i personally haven't too looked too much uh into this i know that there is a discussion on the mailing list and there probably should be more more discussion i i don't know but as i said there's no no easy answer to this i wouldn't be able to reproduce all the pros and cons there all right well then taking a different direction like how like obviously you guys are doing research there's a lot of discussion about this in terms of like a first step beyond research and having the discussions what would a transition to a post-quantum signature scheme
Starting point is 00:54:06 look like like how do you prep the market how do you begin moving how do you set up the node software to make this stuff viable as for the next steps that we envision after this paper so one thing that is a contribution of this paper is that we have this script a python script where you can explore the parameter space or you can say okay i want to support that many signatures and tree to look like this and then it spits out the signature size verification time etc and we also have tables in in the paper that do show some of these values already for the parameters that we that we pick so like explore the parameter space and then next what um what is the next step there is implementations and benchmarking yes implementations and actual benchmarks we just
Starting point is 00:55:10 estimate through some crude proxy what the performance would be but we haven't really measured actual performance and at least from my experience implementations usually they inform specifications quite a bit because you find things that you wouldn't notice just going from the from the research direction and it's nice that actually there are people actively participating in that regard and also on the mailing list there were several posts of people trying to implement hash based schemes either sphinx plus or sphinx plus with lower number of signatures now they're also looking at possible modifications that we also discussed in this paper and i think this will significantly help with the decision
Starting point is 00:56:03 that we will have to make. So, yeah, I think that's very good to point out because they have really... So specifically, I want to give a shout out to Conduition. He wrote this awesome blog post where he optimized hashback signatures like crazy. It's certainly worth a read. But for the bigger discussion,
Starting point is 00:56:27 how do we actually migrate now that this this research exists or even before that just with the standardized NIST schemes so one thing that could happen that is I think a relatively reasonable upgrade path that unfortunately does not have a catchy name I think so Matt he was the first one to uh popularize it on the on the mailing list but uh others i think have discussed it before which is um let's say we just introduce a uh a hash based signature opcode like check sick verify that we have for uh for um our curve elliptic curve based signatures we just introduce one for hash based signatures doesn't matter how it how it looks like something like that and what people could do today already um wallets wallets could do generate a post quantum
Starting point is 00:57:34 public key a hash based public key and then add this public key along with this new opcode in a taproot uh merkle tree that already exists um so this would be a soft fork so we add this opcode and there's no cost for a wallet except implementation complexity to add this additional spending path if they already use taproot to the uh the taproot tree and um so they do that and of course taproot itself is not secure so the full taproot not secure against a break of the elliptic curve because we have these key spends as well which just require a an elliptic curve shore signature for the public key that is directly in the output so that's a keypad but there's also the the taproot tree now what our colleague tim roofing at blockstream
Starting point is 00:58:39 proved is that taproot the taproot script spends so the the merkle trees inside the taproot they are still secure even if a quantum computer arrives a cryptographically relevant quantum computer so what you can do is at a certain point you disable the key spends from taproot and then you still hopefully many wallets have done that they have um these additional post-quantum public keys in the tree so they will be able to spend those coins with a hash based signature and the advantage of this is you can use taproot as you do right now you have these very official key spans you have the taproot path you have music frost whatever only once the bitcoin community does this upgrade to disable key spans hypothetically then you need to use
Starting point is 00:59:45 these new scripts pass in the merkle tree in the taproot tree and this will be one variant actually a very important benefit of a bitcoin system in that regard is that for example other systems that were looking like i don't know cls or whatever a lot of time we want encryption and people that are also scared of quantum computers today they're also worried about this attack called store now decrypt later so they also urge in the migrating in terms of encryption so for example now the post-quantum it's called encapsulation mechanism that help you to actually encrypt your messages and encrypt your communications are already getting deployed while the signatures can wait a little bit later because for most use cases you are scared of your
Starting point is 01:00:46 signatures broken now you don't care if they i don't know they see your public key that you don't use anymore 10 years later and so this uh scripting pass that you have described exactly we can migrate closer when we see the actual thread while the solution is already there you just want to use the solution when we're actually needed and this may be a dumb question but Jonas you
Starting point is 01:01:18 mentioned like Mucig and Frost is there a way to just leverage those on top of like your private public key pair to harden that private key even more from a quantum attack does that make sense?
Starting point is 01:01:33 you mean like the spending conditions like make it harder without introducing uh hash based signatures or any post-quantum assumption just yes no no the problem is that in the whenever the adversary sees a public key they can run their quantum computer and compute the the private key that's uh corresponding to it so music or frost or any obfuscation attempts like this will will fail okay that's good to know fascinating stuff so what are the dangers if we move too fast on this i mean you mentioned them earlier with like if we because that's what i worry about that was the uh the most disheartening thing about the conversation last week i think it's good the conversation's happening but the idea that the
Starting point is 01:02:29 community of developers working on bitcoin haven't been thinking about this obviously you two spend a lot of time on your research blockstream does a ton of research and there's plenty of others outside of your organization working on this stuff what i worry about most as i agree i think we should want bitcoin to be as secure as possible and if the threat of quantum computing or even classical elliptic curve breaking computers are to manifest. We should prepare for this, but what could be
Starting point is 01:03:02 just as dangerous as moving too fast, right? So trying to have a level-headed discussion about what to do. And obviously you can't use the fear of moving too fast forever because then you're complacent, but there's this sort of trade-off between urgency and complacency. how do you view it i think it's i mean first of all yeah there is a lot of value in the bitcoin protocol being as simple as possible um because yeah we we want bitcoin to be secure and that
Starting point is 01:03:37 requires a relatively simple protocol whenever we add something to bitcoin there is a risk uh i think adding a hash based signature scheme to bitcoin i think that risk is manageable but still it will require resources to maintain it to make sure that it's uh that the versions are all compatible with each other and there are no consensus relevant issues which are the specific that a problem that is specific to bitcoin it doesn't exist in a non-blockchain or non-consensus systems so there's a risk in that and then if you add something and no one uses it i think that's just a lot of wasted effort but i also don't think right now looking at the discussion on the mailing list and people i had in person even on twitter i don't really think
Starting point is 01:04:34 that it is realistic that we will have a uh a post-quantum upgrade very soon in in bitcoin is at least my impression uh and as you said yeah we want to explore yeah in full what are our options and as we said before uh the next topic would be to to look at that is based uh how they affect what are the assumptions what are the benefits and doing a proper comparison of what what are the options gives us uh i guess the best the best outcome yes so crushing it uh also like this with the fear in the eyes is also not the best way to go no and again who knows that's that's the thing about this quantum uh risk is it's hard to know it's like a big unknown it's like climate change almost where it's like it's just around the corner
Starting point is 01:05:33 but it's been said for some time and obviously there are some advancements but again as a layman it's not easy to understand where the signal in these advancements are you can talk to some quantum physicists they say to your point like this doesn't scale literally you need more physical qubits to create logical qubits and if you need thousands of logical qubits to attack bitcoin that's an exponential amount of physical qubits this is the way i understand it i'm speaking out of my ass but yeah i mean if i may uh if i if i'm allowed to to uh um tell a personal anecdote i actually i studied cognitive science for my bachelor which is right at the intersection of ai and human intelligence and for my master's i studied computer science with a focus on
Starting point is 01:06:24 artificial intelligence if i had told anyone that i believe we would have chpd3 by 2022 they would have ridiculed me forever at that time people uh they not not only that they thought maybe i think one of or a lot of people thought that something like gpt3 would never be possible it's just so much intelligence coming from a machine and look at where where we where we are and now i actually sort of thought when i studied this i thought this ai stuff is going nowhere it's not not going to be a breakthrough i'm i'm focusing all my time on bitcoin back when i was was a student right so i am just very skeptical of people oh first of all i want to say of course this analogy fails in many ways quantum computing very different to ai of course
Starting point is 01:07:23 but uh i am skeptical of people saying or confidently claiming there's no clear path towards a cryptographically relevant quantum computer maybe there is not one right now but i think there could be one any any time and yeah and you have to prepare if you don't prepare and then suddenly you find out you were wrong yep yeah no that's it goes back to like measuring and uh balancing complacency versus urgency um because again to my point like i think This is a discussion that's been taken seriously for many years now. And it's like, brush to fix it right now.
Starting point is 01:08:11 It's like, whoa, hey, there's good conversations going on. There's good research being done. Let's make sure we get this right because it's critically important. And on that note, I want to thank you gentlemen, not only for joining me, but for doing the research on the subject and coming to explain it to everybody.
Starting point is 01:08:29 it's been incredibly illuminating for me uh and again like i said earlier a lot of people take for granted um the technical details for the bitcoin protocol it just works for them at the end of the day due to the work research that individuals like yourself and other developers have done and it's pretty insane sci-fi tech once you look under the hood and trying to upgrade that tech is uh it's not an easy feat especially when you have a distributed protocol and you need coordination uh between all those individual actors within the system yes but one one thing i want to add there um is that what we're doing is also not rocket science in the sense that it's impossible to understand or anything like that um because there's also this
Starting point is 01:09:23 impression that i see sometimes on bitcoin that there is this closed group of perhaps bitcoin core people high priests or whatever um if that is the case then that is very bad and i think everyone in the bitcoin community agrees that will be very bad well we want to have a system based on merit and there's no secret knowledge that needs to be obtained to be part of any sort of group at least this is the the the system uh uh we we want to have and we want to have the best people working on on bitcoin and this was also our intention writing this paper we tried to give a good introduction into this hash based solution right and slowly building up from very basic from lemper signatures which probably we will not use but just to build the intuition
Starting point is 01:10:17 so go take a look at the at the paper we're trying to introduce the stuff slowly there and moving on and on and showing what are the solutions what are the trade-offs what can be done and yeah let's have a discussion and uh if i could read your research have a conversation with you and know enough to like understand what's happening in the background like verification and signature verification, its effect on the protocol. Anybody can do it. That's to say the least. But gentlemen, any parting notes?
Starting point is 01:10:56 Anything that you want to leave the audience with right before we wrap up here? I think I would encourage further discussions, more technical discussions, uh reading into what we've done doing your own stuff suggest and yeah this is let's have it with a good pace not rushing but also not not putting it away and saying like yeah this will never happen yeah i i agree i mean there's uh there's still a lot of uh feedback that would be interesting for us in particular from from wallet developers um that that is sort
Starting point is 01:11:45 of an open question how um if maybe there are wallet developers for example that can deal with a state issue and we have a we have a scheme that we describe which is very efficient if you can hold state securely so that will be interesting feedback then there is this this benchmarking question um especially with respect to signing on on low-powered devices and uh yeah i think those those were the the the main open questions and the big question is like what is the most interesting parameter set to choose from the set that we provide and um uh then there's also the question i think some people would also argue that just using the standard versus our optimized thing would um would would be preferable because then it would be supported by
Starting point is 01:12:46 the secure element on your iphone or whatever um so so that is i think also one of one of the big open questions with respect to hash based signatures specifically could you propose a new standard and get it i mean i would propose but would it be accepted as the uh yeah the bigger question i we make our own standards right we have the bips process and maybe we can get apple to adopt our standards that would of course be uh the most preferable path yeah well gentlemen thank you this was uh again incredibly illuminating thank you for your work and uh hopefully we can do this again maybe uh when you finish your research on lattice base signatures we can uh we can catch up then or maybe not maybe we won't have to wait that long but
Starting point is 01:13:44 thank you and um i hope you guys enjoy uh the end of the year here thank you for for joining me so close uh to christmas and the holidays so uh this was awesome yeah thank you very much it was fun all right peace and love freaks

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.