Today we're going to talk a little bit about cryptography.
This applies to Monero but also to Zcash, although in a slightly different way, but I'll stick to Monero.
I am not saying that Monero is not private; in fact, it is very private. I am not going to deny the obvious, but I am going to explain why, in my opinion, Monero is not a good place to keep your savings for decades.
I will try not to get too technical so that it is easy to understand.
In Monero, two different things must be separated when auditing its supply:
1- Auditing how much XMR has been issued through mining (coinbase):
This can be verified with a node (and is reproducible), because the protocol defines how much each block can pay, and the node can add up the coinbase rewards. This gives you a verifiable number of emissions per block.
Adding coinbase is useful for mining issuance, but on its own it does not prove that coins have never been created due to a failure in private transactions.
2- Auditing that there was never hidden inflation in transactions
Here, the honest answer is that it cannot be done with absolute certainty in the sense of being 100% mathematically provable by looking at the chain as public accounting, because Monero hides the amounts.
In Monero's official post on supply auditability, they say it as it is: in opaque assets such as Monero or Zcash shielded, it is not possible to simply count the available supply, and therefore there is a risk of implementation flaws leading to undetectable inflation, flaws that could allow inflation undetectable by simple public accounting.
They even conclude with the key idea: if you need absolute assurance of supply, that pushes you towards a transparent asset; if you hide amounts, you are shifting the assurance to the correctness of the proof/signature system.
So how does Monero prevent inflation on a day-to-day basis?
The nodes do verify that each transaction adds up, but they do so with cryptography:
- In RingCT, the consensus verifies a balance equation in commitments (Pedersen commitments).
- And it also uses range proofs (today Bulletproofs/Bulletproofs+) to ensure that the committed amounts are positive/in range and that you cannot sneak in negative or out-of-range values to fabricate money.
In other words, if we assume that these proofs are correct and that the cryptographic assumptions hold, you should not be able to inflate the supply without the nodes rejecting it.
Why is it still not absolute certainty?
Because, as in Zcash Sprout, the hard problem is that if there were a soundness flaw or an implementation bug that allowed invalid but accepted proofs to be generated, the inflation could be undetectable to an outside observer who is just trying to add up coins, precisely because the amounts are hidden.
So if there really was undetected inflation, then it is plausible that the cryptographic checks/tests as implemented at the time would not have detected it either. And, depending on the type of flaw, there is no guarantee that you can detect it retroactively today either.
For this reason, Bitcoin did not and will not adopt these privacy methods because they would destroy one of its main features, the 100% verifiable supply.
Thread
Login to reply
Replies (51)
nocoiners think that digital money is ridiculous. how can a chain of signatures be money?
Bitcoiners have learned to trust cryptographic primitives and understand that no one can steal your Bitcoin.
Monero people have learned to trust more cryptographic primitives. They understand you can verify more than just basic ownership.
The number of people willing to trust cryptographic primitives over time will only increase.
Bitcoiners are the Nocoiners of 10 years ago.
I get the argument here, but it's a huge lift to get up to speed on monero's extra primitives, not to mention it's history as things have changed numerous times along the way (from my limited understanding).
There's also the simple argument that I can't fully shake, that digital scarcity can only be created one time. Not trying to rely on religious-style maximalism, but it's kinda hard to ignore the underlying message on that one, for me anyway.
Things haven't changed. All privacy coins that hide amounts, including the Liquid sidechain, are vulnerable to hidden inflation problems.
I'm surprised that Monero's own followers deny this when it's clearly stated on their own website.
And I'm not basing my opinion on what the website says, I'm basing it on the technology.
I also see that many people are expressing opinions about computer science when they're not even professionals in the field.
I think they'll reluctantly admit it if pressed, but not early in exchanges as it's easy to see why they would think the surface-level reader (like me) would quickly dismiss their arguments without a deeper understanding. So they tend to see it as FUD that less researched people fire off at them without really knowing what they're talking about.
My take, anyway.
I've found several of them to be pretty good faith arguers if you get a bit further into the weeds with them, and I always learn something new from the exchanges.
show me who denied it and where please.
as I understand it, the maxi thesis is "for supply audibility purposes, transaction amounts on a blockchain cannot be hidden. they must be transparent."
I think for Bitcoin, which is the first to mover in a new technology space, this is necessary. it is so different and understanding it is so challenging that nobody would ever use it if amounts were not transparent.
but. I reject that thesis as axiomatic.
as technology ages and we begin to understand it better, the attack surface becomes better known.
A blockchain is not a complicated data structure.
people will trust MORE and DIFFERENT cryptographic primitives then Bitcoin has implemented as time goes on.
this includes cryptographic primitives that verify supply.
fun fact, both Monero and Bitcoin have had inflation bugs. monero's was detected (a "hidden" bug) and provably not exploited.
Bitcoin fixed the bug and reorged out the chain with the created coins.
On Bitcoin, how do you trust the cryptographic primitives that create a wallet and the addresses to be unique and guarantee that only you can spend your coins? how do you trust that when you send a transaction it is properly assigned to the destination?
probably you know a little bit about the general theory and you trust the community to do the rest. after all it's mathematics. if there was an implementation flaw, the community would fix it and recover.
it isn't any different with Monero vis a vis supply. The attack surface is finite and, if the implementation is correct, the supply is guaranteed by mathematics.
now, maybe we don't trust the community to correctly implement it.
maybe we don't trust that it's been an existence for long enough to be battle tested.
these are reasonable objections.
but I'm not seeing these reasonable objections.
and simply saying " a blockchain should ONLY have transparent amounts because we can never trust the supply" is only a luddite view.
the problems we will encounter and the errors we will make are finite and knowable things.
#bitcoin #monero
Some fair points. But I don't see why everything must be done on a single. And I don't see how you can have it all that way. There are tradeoffs with any implementation. I'm still more in favor of Bitcoin adjacent solutions than using an entirely separate thing. I'm also in favor of having options for people to use, including Monero. I don't see why this is such a big issue for people. Use the things that best suit your needs and desired tradeoffs. There will never be one perfect option that serves every need.
Good points. Ones we've covered here and there in our interactions I think.
You have to concede that the attack surface is larger with monero, for inclusion of extra/newer primitives that are less battle tested, as well as the fact that IF someone found a txn bug they could exploit they could get away with it more easily due to the private nature of txns (kinda picked this up more concretely from OP, and stuff I'd seen Todd post which we talked about in past). Yes?
Add to this the fact there are far fewer eyes on this stuff than bitcoin and I get a little nervous, as a somewhat nontechnical person. You're no crypto pro or developer either, iirc, so aren't you the one doing the extra trusting? Sorry, that is slightly rude way to make my point, but I'm typing in between work stuff and a barking dog, so don't feel like editing.
Then there's the non-technical side of things, that's pretty convincing to me. First mover, shelling point, one-time digital scarcity discovery, no inflation (after 2140 if you wanna be annoyingly pedantic), bitcoin at "layer zero" is an idea... that sort of stuff, which gives me further confidence.
obviously the attack surface is larger.
but when we get into the specifics (which you'll note @Cyph3rp9nk will never do) we find that they aren't THAT new and theres ARE a lot of audits and eyes on them.
and monero has been running for 12 years now.
which isn't to guarantee of anything, but it sets the floor for *deciding where to place trust.*
it's the sort of thing we all have our own journey with, as with Bitcoin.
we've looked around and thought about it enough so that we are confident no other wallet is going to steal our UTXOs. not because we've personally audited the code but because we trust the community to do it.
I've been hanging out in the Monero community for 8 or 9 years now. I feel confident trusting them.
if there's an implementation failure or a design flaw, there could be an exploitable supply inflation bug.
this is where I remind you that it isn't any different on Bitcoin either, if there's a implementation failure or design flaw somebody might be able to steal your sats.
Yes the attack services greater, but that doesn't mean we're just going to stick with the minimum viable product for the rest of existence. eventually we're going to move past that and start trusting more complicated things.
That's really all this boils down to trust in the end. homeboy is saying " I don't trust the Monero community and the additional complexity ".
That's fine. nobody should trust it if they're not comfortable.
JUST like nocoiners with Bitcoin.
but to just say " there shouldn't be hidden amounts on a blockchain " as an axiomatic statement isn't thinking very clearly.
A f a i c t it's an issue because he doesn't think people should trust a chain with hidden amounts.
"Homeboy" seems pretty clever to me, though may be doing a bit of messaging/engagement-posting, rather than looking for a protracted discussion (no offense, homeboy). I'm happy to get into it with you in the comments though. even though I'm not quite on the level of others in terms of what I understand, I appreciate the back and forth. And fwiw, I find a lot of your points pretty compelling, and since I wasn't around that early, I haven't had the "everything but bitcoin is a shitcoin scam" debates all that much, so it helps me better appreciate some things I kinda just took on faith previously.
I approach it all with a huge amount of caution for two reason; Bitcoin blind maximalism has historically proven quite to be a solid North Star, and the greed factor of small market cap alts like xmr tends to blind one to careful reasoning/vetting. And thirdly (lol) I don't wanna seem like a shitcoiner in front of all my maxi role models :)
🥂
Might make sense for some people. Still, there will never be a single stack that has it all. I only chimed in because I watch these debates as they cross my feed and I'm always left wondering what the aim is. Like we have Bitcoin. We have Monero. Some people use one, the other, both, or neither. I just wonder what the point is of having Bitcoin if you just want to turn it into something else with different tradeoffs that already exists anyway (Monero). Same for the people who think Monero should be Bitcoin. The two separate things exist because neither of them can have every element in one package (as far as I can tell anyway). So what's the goal? Like I'm not mad that Ford isn't Toyota. I just don't buy Ford or whatever. I love Toyota but I also love my Nissan truck so I use that too.
I'm curious what your aim is. Do you want Bitcoin to become Monero? Do you want people to just not use it at all and switch to Monero? Do you just like arguing? Educating?
What should I take away as a spectator?
it's because he's not really a technical person, He's a based lifestyle engagement guy. but he's come a long way to understanding it, to his credit, although it obviously hurts his pride that he's had to adjust his position.
I appreciate going over it too. it really helps me understand it to talk about it.
I'm saying "you" a lot, but I mean this as an open question to anyone arguing the various sides of this issue.
Sigh, I feel the need to mention I don't agree with the insults, was just having fun in my style of reply. Don't know the OP that well.
Until next time 🥂
I have these conversations so that the people who are lurking learn about the topic.
also because I want to move the overton window in the Bitcoin space away from NGU and towards private self-soverin usage.
I don't think there's any realistic possibility it will implement substantial change.
mostly I just dislike tribal affiliation and discussions that aren't fact-based.
I hope you don't forget to include to the last Bitcoin as well.
I didn't mean it as an insult 🫡
Possible options:
1. He's a fed trying to lure people into his xmr honeypot
2. Pump his bags
3. Is autistically into defending xmr
I'm starting to lean toward 3
Sorry, been a long day and I'm feeling cheeky
because encouraging people to educate themselves about the tradeoffs and think about where they place trust is "autistically defending" 👍
ok maybe saying "engagement" isnt fair
he shares good stuff, it's just not technical and he avoids thise convos
Meant your classification of OP as nontechnical lifestyle such and such. I don't wanna be a dick to someone I don't know much about by seemingly siding with you in his thread. No biggie, just noticing lately that I've gotten a bit rude and trying to scale it down a bit
*those convos
My New Year's resolution is to be nicer on nostr 😊
I was told I was too nice, and over corrected a bit 😅
you are very reasonable, I appreciate that about you 👍
but a little "edge" is good too
Thanks 😊
Appreciate you sir
Seems reasonable.
This is what I mean when I talk about unproductive exchanges. I just don't understand the vitriolic attitudes between Bitcoin and Monero users. They both have tradeoffs. The technical aspects of Monero is not within my lane, but I could see it as a user back when I was. Bitcoin has some too, which is why I'm a proponent of other "layers" for lack of a better term. Tools, whatever. I'd feel dirty if I used Ethereum. I wouldn't if I used Monero. That's all I need to know as far as what's a shit coin and what isn't. And honestly, as tools get better, I can see myself using both side by side to some extent if the conditions make sense.
Jic you're referring to me, seems so, there's more context you may have missed. Was purely a joke
same reason there are fights at football tournaments. dudes are retarded. 🤓
I think part of the problem is that this stuff is a religious/ego issue for some people. They conflate who they are with a computer software and that can lead to these sorts of interactions, I think. Ad homs in place of reasoned positions.
Alas, I'm as guilty as anyone of poorly communicating at times. I just hate to see it and wonder where it all comes from when we seem so closely aligned otherwise.
I'm speaking in general terms mostly. But joke or not, that is a real attitude I've seen.
Of course, you probably are a fed if you haven't been accused of being a fed at some point. Especially in this space 😂
Fair enough.
im on the grey retard team. all the magenta retards must be crushed. i mean who likes magenta but criminals and soyboys?
Gotcha. I was playing into it a bit for that reason. And it's also a bit truer of my actual thoughts than I care to admit. I've never been a huge fan of the "toxic maximalist" shouting down everything culture, though I think it only became that in later stages with wider adoption.
I think it's mostly a cover for not having technical or economic etc chops to debate, mixed with personal economic incentive blinders. It's complicated I guess. The usual cover is "I don't want newbs to get rekt" but it's become a way for idiots to get attention and feel like they win arguments (on Twitter), imo.
💯
it's all of our jobs to recognize where we might be wrong.
it's like the most important part.
Agreed
See also religion, vehicle brands, operating systems, text editors, or anything else you can dream of really. People love tribing up. It's in our nature.
Then the Internet ramps it way up. Lack of clues like body language lead to misinterpreted text comms. Removing the fear of being punched in the face also lets people talk in ways they never would in person. Maybe the Internet was a mistake 🤣
i use emacs and vim. sometimes on the same day. come at me bro.
notepad.exe for life. Thank God for wine.


shIT, should i quIT build/\/ BattleBOT, smh 😜
Oof.
Haha fair.
Thank you for the explanation very helpful 🔥
Great summary, thanks!
One small question: were the privacy options even discovered at the time Bitcoin was created? I'm very hazy on the dates for various crypto innovations, but seem to remember zkp stuff coming from gmax AFTER bitcoin's invention, though I could be wildly off here
There are things like Ring Signatures that already existed, other things came up later but had certainly never been implemented. At the time, there was also a conversation in Bitcoin about why all this wasn't being implemented, and the answer is the same as I explained above: if we implement this, then we can no longer guarantee that there will be a maximum of 21 million Bitcoins.
The problem with hidden inflation is that it can occur without you realizing it, no matter how many cryptographic proofs you have in place to prevent it.
It is a risk, hence the privacy-verifiability duality.
Thanks. Glad to learn the conversations were had in the early days. Understand the whole issue a bit better now too 🔥