TFTC: A Bitcoin Podcast - #700: Preparing Bitcoin for the Quantum Era with Jonas Nick & Mikhail Kudinov
Episode Date: December 31, 2025Marty 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)
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
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
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
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,
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
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
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
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
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
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
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
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
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
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
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
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
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.
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
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
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
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,
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?
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
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
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
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,
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
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
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
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
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
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
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
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
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
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
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
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,
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
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.
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
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
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
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
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
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
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
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
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
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
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,
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
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
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.
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
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.
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
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
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
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
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
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,
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
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
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
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
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
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?
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
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
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
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
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
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
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
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.
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.
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
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
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?
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
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
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
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
