-
m-relay
<basses:matrix.org> does this need to change?
-
m-relay
-
m-relay
-
plowsof
can't pander to maxis trying to 1 up someone on twitter. monero is renowned for being open about its strengths/flaws
-
plowsof
if there is an error in bulletproofs security audits / proofs then monero can be printed from thin air, so you have to trust that this is not the case (Rucknium knows more about that). the entire context of selectively highlighted screenshot is just telling people that there is more involved than looking at a pile of coins on a table and saying
-
plowsof
look, there's 10 coins on this table , i proved the supply
-
m-relay
<dave.jp:matrix.org> We don’t need to appease them by having such a text on getmonero
-
m-relay
<ofrnxmr:monero.social> That was written by sarang.
-
m-relay
<ofrnxmr:monero.social> bitcoin can (and was) printed from thin air
-
m-relay
<ofrnxmr:monero.social> Its just easier to notice on a transparent chain
-
m-relay
<dave.jp:matrix.org> Yes and if we are not confident about monero math, we should just outright shutdown monero project 😂
-
m-relay
<ofrnxmr:monero.social> Ringct has been implemented improperly by other chains, like haven or shadowcash, that both suffered inflation bugs
-
m-relay
<ofrnxmr:monero.social> Cryptography != monero math
-
m-relay
<dave.jp:matrix.org> Just get more audits done ? Instead of hoping there are no bugs or saying hey don’t use it there might be bugs
-
m-relay
<ofrnxmr:monero.social> Bitcoin relies on cryptography as well. both rely on complex math to ensure the creation of supply is limited to consensus rules
-
m-relay
<ofrnxmr:monero.social> bp has been exploited, but monero's implementation was not
-
m-relay
<ofrnxmr:monero.social> A few big companies and other blockchains learned the hard way what happens when you dont listen to the neothers
-
m-relay
<ofrnxmr:monero.social> Noethers
-
plowsof
the only problem i see would be making people think transparent do not also "rely on complex math to ensure the creation of supply" ^ but i still see no issue with monero being based as usual
-
plowsof
we are getting more audits done.. on bp++ .. fcmp++ and such lol
-
plowsof
we cant control how other people interoperate the same text either, relax
-
plowsof
i came out of my death bed because of the ctrl+f "the the" pull request editing chat logs
-
m-relay
<ofrnxmr:monero.social> :D lololol
-
nioCat
stating "then you need a transparent asset" is not correct
-
m-relay
<ofrnxmr:xmr.mx> I think that text is a transcript of sarang speaking 🧐
-
plowsof
yeah we're saying that transparent assets are physical coins on a table
-
nioCat
does btc actually have a 100 guarantee of supply?
-
nioCat
*100%
-
m-relay
<ofrnxmr:xmr.mx> no
-
nioCat
then the statement is wrong
-
nioCat
that's what it is predicated on
-
m-relay
<ofrnxmr:xmr.mx> Especially since they dont hard fork.
-
m-relay
-
plowsof
-
m-relay
<ofrnxmr:xmr.mx> "In trying to fix the problem, the next released update, 0.15.0, included features that inadvertently allowed a malicious attacker to double spend the same UTXO in one transaction. Instead of causing a system crash, this new bug caused older software clients to recognize such double-spend transactions as valid."
-
nioCat
was that btc or montero? ( ͡° ͜ʖ ͡°)
-
plowsof
the preceding paragraphs leading into the incorrect statement "You can choose to represent amounts in the clear, like Bitcoin does; you can be sure that the supply is what you expect it to be"
-
m-relay
<321bob321:monero.social> I have cement…
-
m-relay
<ofrnxmr:monero.social> Btx
-
m-relay
<ofrnxmr:monero.social> Btc
-
plowsof
i can look at btc blockchain and add up to/from amounts and see the amount being created/moved around , but monero not
-
nioCat
dangerous freedom has a website. I believe he recently said it is still not completely finished
-
plowsof
-
nioCat
if we are stating things about supply on the site, should we link to that?
-
nioCat
thx plowsof, I just woke up from my afternoon nap lol
-
plowsof
probably in misc. on this page
moneroinflation.com (and maybe also in that blog, depends what the proposed changes are)
-
plowsof
-
m-relay
<ofrnxmr:monero.social> Hey, the website also says to take everything with a grain of salt
-
plowsof
opened an issue about it, thanks for sharing rando
monero-project/monero-site #2339
-
m-relay
<basses:matrix.org> anytime!
-
m-relay
<jeffro256:monero.social> This bug made me look into the Monero codebase to see if the consensus code checked that key images were unique within a transaction
-
m-relay
<jeffro256:monero.social> Maybe I'm not looking in the right place, but it seems like there wasn't a check for key image duplicates until fork v7
-
m-relay
<ofrnxmr:monero.social> Do dangerousfreedoms investigations cover that period adequately?
-
m-relay
<ofrnxmr:monero.social> and do you know off-hand the date of v7 hardfork
-
m-relay
<jeffro256:monero.social> Approx April 6th 2018
-
m-relay
<jeffro256:monero.social> Literally just sent him a PM lol
-
m-relay
<jeffro256:monero.social> I could write a Python script for this too
-
m-relay
<ofrnxmr:xmr.mx> Looks like btc might have found it because of us, or vice versa
-
m-relay
-
m-relay
<jeffro256:monero.social> Oh that's right, I forgot about that function
-
m-relay
<jeffro256:monero.social> I was looking at the other key image checks in `check_tx_input`
-
m-relay
<boog900:monero.social> Our DB will also throw an error for duplicate KIs
-
m-relay
<boog900:monero.social> when adding to the chain. That other check covers the txpool
-
m-relay
<boog900:monero.social> Well not just the txpool but it means txpool txs are also checked
-
m-relay
<jeffro256:monero.social> Right, since they get added one-by-one and checked in between
-
m-relay
<jeffro256:monero.social> Technically, we could prob skip the `check_tx_inputs_keyimages_diff` check for txs of hf >= 7 because of the strictly ordered check in `check_tx_input` later and save ourselves a small set population/allocation per tx
-
m-relay
<jeffro256:monero.social> Not worth the effort though IMO
-
m-relay
<boog900:monero.social> Yeah, it would probably be a good idea to try consolidate as much of the consensus rules as we can into a single location, right now they are all over the place, but it would be a lot of effort and probably not worth the risk.
-
m-relay
<boog900:monero.social> as IIRC there are quite a few checks which are duplicated like this
-
m-relay
<rucknium:monero.social> boog900: Maybe we can start with documenting them. Then we would have more info about expected resource consumption under load, what shortcuts are safe and which unsafe, etc.
-
m-relay
<boog900:monero.social>
monero-book.cuprate.org
-
m-relay
-
m-relay
<boog900:monero.social> Like that :)
-
m-relay
<rucknium:monero.social> Thanks. Does it document what happens in the txpool?
-
m-relay
<rucknium:monero.social> For example, what checking does monerod do when it gets a tx from a peer that it allegedly has already seen before. Does it just do a couple of Kekkack (sp?) hashes to check the txid or does it do verification of the cryptography again?
-
m-relay
<boog900:monero.social> It documents the consensus checks, not the exact verification process
-
m-relay
<rucknium:monero.social> And do nodes check tx validity before relaying them to peers, etc
-
m-relay
<rucknium:monero.social> Keccak is the correct spelling :D
-
m-relay
<jeffro256:monero.social> boog900: A small note: In the "definitions" section, it defines the "Block Hash" as "the keccak hash of the block". This isn't *quite* true, if you're referring to the block ID or the PoW hash. The Block ID is the keccak hash of the "block hashing blob", which is the block header concatenated with the "tx tree hash" and a varint of the number of txs. And the PoW hash is the Rando<clipped message>
-
m-relay
-
m-relay
-
m-relay
<rucknium:monero.social> FCMP is going to put a lot more load on the nodes. It would be good to know where the efficiency improvements may be.
-
m-relay
<boog900:monero.social> I did have Block PoW Hash in the definitions at some point, I don't know why I removed it, I'll add it back.
-
m-relay
<boog900:monero.social> I used Block Hash for what you would call Block ID.
-
m-relay
<boog900:monero.social> I don't really want to describe the exact process to arrive at a block hash in the definitions, I do want to expand the book with type formats, tx, blocks etc. I think it will be better suited there.
-
m-relay
<boog900:monero.social> FWIW the block ID is calculated using a different blob to the PoW hash
-
m-relay
<boog900:monero.social> I'll change the definition to include block hashing blob
-
m-relay
<boog900:monero.social> and leave the processes for getting the block hashing blob out for now
-
m-relay
<jeffro256:monero.social> > FWIW the block ID is calculated using a different blob to the PoW hash
-
m-relay
<jeffro256:monero.social> Well, it's the same block hashing blob (IIUC), but the RandomX cache is initialized with the "seed" block hash, so it's not *just* a function of the block hashing blob. Is that correct?
-
m-relay
<jeffro256:monero.social> I think that's a good idea
-
m-relay
-
m-relay
<boog900:monero.social> this was the definition I had before:
-
m-relay
<boog900:monero.social> `POW Hash: the hash calculated by using the active proof of work function.`
-
m-relay
<boog900:monero.social> I'll change it to this and add it back:
-
m-relay
<boog900:monero.social> `Block PoW Hash: the hash calculated from the block hashing blob by using the active proof of work function.`
-
m-relay
<jeffro256:monero.social> Oh you're right ! TIL
-
m-relay
<jeffro256:monero.social> The `t_serializable_object_to_blob` call in `get_object_hash` in `calculate_block_hash` causes an extra varint to get prepended
-
m-relay
<jeffro256:monero.social> Doesn't seem intentional ......
-
m-relay
<jeffro256:monero.social> Too late now though lol. That's interesting !
-
m-relay
<boog900:monero.social> I spent quite a long time debugging that ngl
-
m-relay
<boog900:monero.social> I agree it's defiantly not intentional, we are stuck with it now though :P
-
m-relay
<jeffro256:monero.social> That sounds good. Only thing is "Block PoW Hash" vs just "PoW Hash" seems a little redundant IMHO
-
m-relay
<0xfffc:monero.social> Very interesting discussion imho 🙏🏻
-
m-relay
<boog900:monero.social> Rucknium to answer your questions:
-
m-relay
<boog900:monero.social> > what checking does monerod do when it gets a tx from a peer that it allegedly has already seen before. Does it just do a couple of Kekkack (sp?) hashes to check the txid or does it do verification of the cryptography again
-
m-relay
<boog900:monero.social> When receiving a tx-pool we check if we have it before doing the cryptography checks, although we do do some smaller checks first, like version and tx size.
-
m-relay
<boog900:monero.social> > And do nodes check tx validity before relaying them to peers
-
m-relay
<boog900:monero.social> yes
-
m-relay
<boog900:monero.social> *When receiving a tx-pool transaction
-
m-relay
<boog900:monero.social> Ah `POW Hash` is still there, the formatting is just messed up.