-
ArticMine
I updated
monero-project/research-lab #70 with may recommendations to address this issue
-
geonic
thanks h4sh3d[m], grateful for your contribution and looking forward to the review process :)
-
sarang
Hello all
-
sarang
Finally online today... had to rebuild a Linux environment after it broke :/
-
sgp_
ArticMine: really great stuff
-
sgp_
you too UkoeHB_
-
sethsimmons
Really cool to see such detailed, low-level discussion happening to make sure we're prepared well in advance of potential network events
-
sethsimmons
Awesome work to all involved, the fee market + block size in Monero is one of the lesser recognized, but extremely important developments spearheaded by Monero.
-
sethsimmons
*along with tail emission to make both work
-
sarang
Meeting here starts at 17:00 UTC (about 10 minutes from now)
-
sarang
.time
-
monerobux
2020-08-05 - 16:48:40
-
sarang
OK, let's get started with the meeting
-
sarang
GREETINGS
-
sarang
hello
-
ArticMine
Hi
-
» needmoney90 realizes a meeting is happening
-
needmoney90
Is this thing on?
-
» needmoney90 taps mic
-
n3ptune
Hello
-
sarang
Let's move to ROUNDTABLE, where anyone can share research of interest with the channel
-
ArticMine
Well I will start
-
» Isthmus waves
-
ArticMine
-
sarang
Yes, it looks like some recommendations for fees and block growth
-
sarang
UkoeHB_ also responded to it with questions
-
ArticMine
It deals with ah issue that is actually very serious once the block growth grows significantly
-
Isthmus
I haven't yet read in depth enough to comment, but can tell that this is very detailed/thoughtful work - thanks for contributing this pretty hefty analysis
-
sgp_
hello
-
ArticMine
I will be talking about this also at Defcon on Friday
-
sgp_
I second Isthmus's comment
-
sgp_
ArticMine: awesome
-
ArticMine
At this point what I need of course is review and feedback
-
sarang
right
-
ArticMine
thanks sgp_
-
sarang
I assume that it is not your intent to get this into the October upgrade ArticMine?
-
sarang
The code freeze for that is August 17
-
sgp_
speaking of that, did the janus mitigation stuff make it?
-
sarang
nope
-
sgp_
darn
-
ArticMine
It is very tight for the October 17 upgrade
-
sarang
There are a few approaches, and not enough broad agreement about choosing one
-
sarang
ArticMine: I would not go for it
-
sarang
Next upgrade could include fee/block update, transaction structure if desired, etc.
-
ArticMine
The best alternative is to do nothing with respect to fees / scaling at this fork and keep the current reference transaction size etc.
-
sarang
Even with the CLSAG transaction size change?
-
ArticMine
There is no problem leaving things as they are
-
sarang
Which drops the transaction size by 32*(N-1) bytes per spent input, at ring size N
-
ArticMine
The other option can be a partial implementation
-
ArticMine
The drop is from ~2600 to ~2000 bytes over all for a 2 in 2 out tx
-
sarang
2.5 kB to 1.9 kB for 2-2
-
ArticMine
So the fees will still drop.
-
sarang
I noticed you also commented on sgp_'s coinbase idea ArticMine
-
sgp_
is it okay if the fees drop? honesty fees seem super low already
-
ArticMine
Yes this is where it gats a bit interesting
-
ArticMine
If the response is to increase the ring size to mitigate this
-
sgp_
"If the selection is algorithm is weighted towards current transactions then one would expect at most about 5% of compromised coinbase outputs in a ring" I don't think this is correct
-
sgp_
it's closer to 20%
-
Isthmus
"If the response is to increase the ring size to mitigate this" :- D
-
ArticMine
It is also the reason I provided a second option where the reference tx is basically the same
-
ArticMine
SO it can accommodate a ring size increase
-
Isthmus
"Sorry everybody Monero got too efficient, so we had to add some extra privacy to round things out" 😅
-
sgp_
Isthmus: lmao hilarious
-
sgp_
transactions were so tiny we just HAD to improve privacy, sorry all
-
ArticMine
My 5% figure came from using current tx data. If one takes tx data from a year ago the results are very different
-
UkoeHB_
the fee stuff is not time sensitive (we need a lot more tx volume for it to be serious) so I feel it's safe to hold off one hardfork
-
sgp_
ArticMine: I don't agree with your assessment, but it's probably not worth discussing before my Defcon talk
-
sarang
FWIW increasing ringsize 12-13 would put verification where it is right now
-
ArticMine
The best place is to comment on the issue in response
-
sgp_
ArticMine: I get that, but I have nothing to add now before the talk
-
sarang
OK, anything else to discuss presently ArticMine?
-
ArticMine
No that is a good summary. Thanks
-
sarang
Thanks ArticMine
-
ArticMine
You are welcome
-
sarang
Isthmus: you had something on the agenda issue
-
Isthmus
Ah yea, just some quick notes
-
sgp_
just to be clear: we are deciding we do not need to make a decision on ringsize and transaction size/fees for this month?
-
» Isthmus pauses
-
sarang
Unless there is a compelling reason, I do not think increasing the ring size for October should be done
-
sarang
and big changes to fee/size so quickly seems unwise
-
ArticMine
I am neutral on the ring size question. I will wait for sgp_ 's talk first
-
ArticMine
... but I do agree it is getting very close for the October fork
-
sarang
Note that it was repeatedly stated that transaction size _will_ go down
-
sgp_
my vote is no unless it's critical
-
sarang
OK, Isthmus?
-
Isthmus
We drew up a rough schematic of how an outside observer with a quantum computer could might approach systematic deanonymization of the blockchain without participating in any transactions:
-
Isthmus
-
sarang
What assumes a candidate destination address suspected by the attacker?
-
sgp_
Isthmus: ooooooh can we share?
-
Isthmus
sgp_: where
-
sarang
sgp_: without a ton of context, people might freak out unnecessarily...
-
needmoney90
I'm behind raising ring sizes. I would eventually hope we can hit three digits.
-
Isthmus
sarang: what was your question?
-
Isthmus
This assumes a noninteractive attacker just analyzing the blockchain
-
sgp_
idk, twatter
-
sarang
Payment IDs and amounts are encrypted using the DH shared secret, which involves recipient address and transaction key
-
sarang
So are you assuming the attacker has a list of addresses they suspect could be recipients?
-
sarang
If so, they could use these to check
-
moneromooo
Am I reading it right above "I have relevant info but I'll send it to the media, not you" ?
-
sarang
?
-
sgp_
?
-
UkoeHB_
nicely presented figure Isthmus
-
moneromooo
< sgp_> ArticMine: I get that, but I have nothing to add now before the talk
-
moneromooo
I have no background on this so I might be misinterpreting (I hope).
-
Isthmus
Ah @sarang I see what you mean. I have a meeting with Adam later today, and will unpack the assumptions under the hood to clarify
-
Isthmus
Given that, let's not share yet sgp_
-
sarang
Isthmus: yeah, same with the stealth address stuff
-
sarang
I think it's important to clarify what requires candidate addresses
-
sarang
It doesn't make everything magically ok, but it's important IMO
-
sgp_
okay I'll not share that image
-
sarang
I read what you have now as "you need the chain and no other information"
-
Isthmus
Maybe the rows should be reordered (3,1,2,4)
-
sarang
but I don't think that's the case
-
sgp_
but re: moo: yes I'll share all the researhc I've done on coinbase rings at Defcon after discussing them here for years
-
sarang
also: "key signature" -> "key image"?
-
sgp_
will be good to have a talk
-
moneromooo
Ah, so this is just stuff already discussed, fine then.
-
Isthmus
In other words, step 1 would be using Shor's + Grover's to extract real address from stealth address, then use that moving forward for the other decryptions
-
Isthmus
But yea, lemme have some offline conversations and clarify next week
-
Isthmus
ahhahaa "key signature"
-
Isthmus
that was my bad, brain fart
-
sarang
Can you briefly explain pulling addresses from stealth?
-
sarang
If you pull addresses successfully, then sure, you can derive the shared secret and use it to get pID/amount
-
Isthmus
Grover's algorithm kind of lets us brute force the address space in O(sqrt(N)) whereas classical computers are limited to O(N)
-
Isthmus
Maybe O(N^(1/3)) but not committing to that yet
-
Isthmus
I'll try to get a better diagram/explanation for next week
-
sarang
OK
-
Isthmus
Will have thorough public writeups in the next few weeks anyways
-
sarang
Thanks for the update Isthmus
-
Isthmus
Completely unrelated, Neptune engineered some great systems for parsing and analyzing tx_extra
-
sarang
ah sorry, go ahead
-
Isthmus
-
Isthmus
Nah, that's all
-
sarang
Another data point for stricter tx structure...
-
Isthmus
Thought y'all might get a chuckle out of those on-chain easter eggs
-
sarang
You misspelled "fingerprints" :/
-
moneromooo
If something is found just once, it's not really a fingerprint. Are there duplicates ?
-
sgp_
haha cool stuff
-
Isthmus
Boatloads of duplicates
-
moneromooo
If boatloads, that points more to malice.
-
sgp_
I don't think it's that magnitude of "boatloads"
-
sgp_
well, intent is whatever, but not enough to impact network privacy for other users
-
Isthmus
"fluffypony is the best pony ever" alone was used 85 times
-
sgp_
lol
-
Isthmus
Dates also often repeated
-
Isthmus
-
Isthmus
101 txns that had the uPID `EYEixhEvFzEcyJapqxJsoEwmeNULJYFV`
-
Isthmus
(to give some context for 'boatloads of duplicates')
-
sgp_
cool treasure hunt
-
sarang
Any other questions/comments for Isthmus on his update?
-
sarang
If not, I'll provide an update
-
Isthmus
Shoutout to n3ptune who built the whole framework that made the treasure hunt possible
-
sarang
Pleased to announce that the CLSAG audit is complete:
web.getmonero.org/2020/07/31/clsag-audit.html
-
Isthmus
Nice!
-
sgp_
great post
-
sarang
Note that the audit report reflects the _original_ version of the preprint, not its update
-
sgp_
cool logo too
-
sarang
The update contains many updates to address the reviewers' concerns and improve the security model and proofs
-
sarang
The code did not require any changes
-
sarang
Ledger and Trezor support is continuing nicely, and I'm in contact with their teams
-
sarang
I updated some branches/PRs for things like wallet signing, key encryption, transaction proofs
-
sarang
Some minor things for `monero-site`
-
sarang
Work related to BP+
-
sarang
There's been a fair amount of discussion since the BP+ CCS was posted
-
fluffypony
Isthmus: and that wasn't even me
-
sarang
As I'd brought up recently, the original numbers proposed for moving from BP to BP+ would not be nearly as good as the table suggests
-
iDunk
Various people did that, IIRC.
-
sarang
since the authors didn't account for some optimizations consistently
-
sarang
The short version of this is that we'd drop 96 bytes from each transaction, with a marginal speedup (very marginal)
-
sarang
I'm of the opinion that BP+ is worth continuing to research and investigate, but I don't think the benefits are significant enough to rush into it
-
sarang
However, the CCS proposers did say they were open to the idea of auditing a hypothetical future implementation, since they have expertise relating to the BP+ construction
-
sarang
Any other thoughts on this?
-
ArticMine
What kind of timeline would be reasonable for BP+?
-
sarang
Certainly not the October upgrade
-
ArticMine
That is out of the question
-
sarang
But I think it could be within a few weeks to code and get initial tests up and running
-
sarang
Auditing would be a separate timeline, of course
-
ArticMine
Six months?
-
sarang
Absolutely, provided the auditors have availability
-
needmoney90
Six months between hard forks isn't manageable
-
» Isthmus has to hop into another meeting, will be back in a later
-
needmoney90
At this point it's 9m min
-
» Isthmus takes off lab coat and goggles
-
needmoney90
Just want to pipe in and mention that, because the coordination is hell and a lot of people not involved don't realize how bad it got
-
sarang
Again, I don't think there's a particular rush for BP+ since the benefits, while present, are marginal
-
sarang
needmoney90: I'm not necessarily advocating for any particular upgrade timeline, to be clear
-
sgp_
if it happens, then it happens, whenever the next update would happen anyway :p
-
needmoney90
I'm just trying to express that if it's not this update, we're nine months out min
-
sarang
It will not be this update
-
sarang
No way
-
needmoney90
No advocacy either, just statement of fact
-
sarang
And given how new the construction is, I would prefer that it receive additional scrutiny
-
sarang
It's straightforward, but still very new
-
ArticMine
Then lets us make it nine months for the next HF
-
sarang
I do agree with needmoney90 that a longer time would be very beneficial for coordination and ecosystem communication
-
sarang
Getting hardware device support for this update was a bit of an ordeal, for example
-
sarang
to say nothing of software wallets, exchanges, etc.
-
sgp_
ping dEBRUYNE to remind them about the relevant post on upgrades ^
-
needmoney90
Plus code freezes, followed by translations team and wallet code
-
needmoney90
Lots of stuff has to be done in serial for a release
-
sarang
right
-
needmoney90
And only after code freeze
-
needmoney90
Which makes it a total nightmare
-
sarang
Well, it sounds like there isn't any major opposition here to a longer time
-
ArticMine
Lead time is a very valid issue
-
needmoney90
Fixing an airplane while it's in the air and all
-
sarang
and at any rate BP+ wouldn't make it for October
-
sarang
I do think the CCS proposers would produce a quality code review
-
sarang
And having additional researchers participating in the ecosystem is very positive
-
needmoney90
How would you suggest we go hunting
-
sarang
The proposers could write the code, but then they shouldn't audit it of course
-
sarang
needmoney90: ?
-
needmoney90
For additional researchers
-
needmoney90
What can we do to entice more people onboard?
-
needmoney90
Oh, I see you were referring to the CCS proposes as the researchers, I misread.
-
needmoney90
Still, relevant question
-
needmoney90
Proposers*
-
sarang
Yes, sorry for any confusion
-
sarang
That's also a good question, and not one I have a good answer to... researchers seem to find the project if/when they have aligned research interests
-
needmoney90
Link to the CCS for the record?
-
sarang
e.g. the DLSAG team, Isthmus and friends, the BP+ CCS researchers
-
sarang
one sec
-
needmoney90
Since we're talking about it.
-
sarang
-
needmoney90
Thanks.
-
sarang
For clarity, I am claiming that the improvements shown in Table 1 at that link are not representative of what we'd see in an implementation
-
sarang
at least not for verification
-
sarang
All right, in the interest of time, does anyone else wish to share research of general interest?
-
sarang
OK, in that case, let's adjourn!
-
sarang
Thanks to everyone for joining
-
needmoney90
I had a discussion with articmine about the potential for dynamic block times, in addition to block sizes (such that the block time can adjust in response to size increases to keep orphan rates low)
-
sarang
Logs will be posted shortly to the agenda issue on github
-
needmoney90
oh
-
needmoney90
nbm
-
needmoney90
we can talk about it later :D
-
sarang
No, feel free to continue discussion!
-
sarang
Adjourning is just for log purposes
-
sarang
So I know what to post
-
needmoney90
The general feeling I got from articmine was interest but infeasibility, but im still stuck on it.
-
sarang
You mean in terms of the difficulty adjustment?
-
ArticMine
It comes down to the network being able to measure the number of orphan blocks
-
needmoney90
yeah, letting it drift with some sort of multiplier as block sizes go up
-
needmoney90
I mean, does it?
-
needmoney90
thats the question. If it requires recording orphans its a nightmare
-
sarang
So what's the metric for this?
-
ArticMine
That was my point
-
sarang
Well, and the network needs to know it for verification
-
moneromooo
A miner becoming aware of orphans for recent block could include them in a subsequent block, for some reward.
-
needmoney90
that actually fixes my main concern
-
moneromooo
(small, to avoid encourating mining on not-the-tip)
-
needmoney90
ofc
-
needmoney90
my main concern was the inability to determine if an orphan from a block in the past was generated then or now
-
dEBRUYNE
sgp_: Yes, still on my list
-
needmoney90
Only the hash is needed for that, too
-
needmoney90
to prove it passed the diff check
-
dEBRUYNE
With respect to BP+, I am kind of hesitant about touching sensitive code in case of mere size optimizations
-
dEBRUYNE
Seems not worth the trade-off
-
moneromooo
You need the block, or you could put some random hash with the high bits zeroed.
-
needmoney90
do we not use some sort of double hash?
-
needmoney90
hash(Blockhash)?
-
needmoney90
Because if you have the end hash passing the diff check, I dont think the block would be necessary then
-
sarang
dEBRUYNE: would you have felt similarly if CLSAG had no verification benefits?
-
needmoney90
only proof the work was done
-
dEBRUYNE
sarang: yes
-
dEBRUYNE
I would have objected against implementing it
-
sarang
interesting
-
sarang
I would have disagreed
-
moneromooo
So you'd want to supply preimages of hashes passing diff check ?
-
ArticMine
sarang> dEBRUYNE: would you have felt similarly if CLSAG had no verification benefits? <---- or BP causing the drop from 13.5 kB to 2.5 Kb?
-
needmoney90
sounds about right, yes. You wouldnt need the block by any means, just proof the work was done for it (and therefore its orphan)
-
dEBRUYNE
ArticMine: That drop is significantly larger though
-
needmoney90
which dramatically cuts the storage requirements
-
moneromooo
I don't know if randomx does that eacxt thing at the end, but it'd seem possible to just pass the preimages if it does.
-
ArticMine
There is a risk / reward issue here so it come down to how comfortable we are with the change vs the reward
-
moneromooo
13.5 -> 2.5 was definitely worth it.
-
moneromooo
CLSAG is simple enough that it is worth it even if the verificatoin performance was unchanged IMHO.
-
needmoney90
So, now I'm wondering how to prove that the orphan presented came from the current tip
-
needmoney90
you could probably just not prove it, because you have proof its not a duplicate
-
moneromooo
Blocks have a previous block hash field :)
-
needmoney90
yes, but if we use preimages the block isnt being passed
-
needmoney90
And passing the block is out of the question for this
-
needmoney90
(onto the chain that is)
-
needmoney90
A scheme that allows people to 'redeem' orphans (any orphans) if their difficulty is below the target and previously unredeemed could work, but could possibly also be abuseable
-
needmoney90
because you could store a bunch and release them later to...I guess jump the block time?
-
gingeropolous
isn't that what ethereum does? uncles?
-
needmoney90
something like that, but its for different reasons
-
needmoney90
this is intended to allow the network to raise its own block times in the event that orphan rates spike
-
sarang
Ethereums uncle block reward construction has been studied with respect to incentives for bad miner behavior
-
needmoney90
Could you use orphans as a way to lower your own difficulty?
-
needmoney90
That could be interesting.
-
needmoney90
Temporarily. For one block.
-
needmoney90
Doesn't create new coins, and gets balanced out by rising block times (possibly. I need to think more)
-
needmoney90
And also seems relatively less abuseable