-
Inge-
-
Inge-
Halo - old news probably
-
real_or_random
for those of you who are writing research papers, please consider submitting to the IEEE Security & Privacy on the Blockchain Workshop. Deadline is March 5, 2020, see
ieeesb.org
-
moneromooo
-
koe
ah, testing the coinbase limit? nice; also, that nonce is pretty high, is next release (or current release) starting from a random nonce?
-
moneromooo
Yes.
-
sarang
Hello all; reminder that there is a research meeting here today at 18:00 UTC (about two hours from now)
-
sarang
Agenda, with some additions from Isthmus:
monero-project/meta #430
-
koe
btw sarang the Janus attack also works on the normal address - subaddress intersection, so checking the shared secret should also be done with outputs owned by normal addresses
-
koe
but the extra pub key is only required for tx with at least 1 subaddress recipients; only 1 extra pub key for such transactions
-
sarang
yup
-
sarang
Given the space savings already possible with CLSAG signatures, it's minimal
-
koe
I find it unfortunate that a tx with subaddress is distinct from without, but don't see an alternative that doesn't cost additional 32 bytes per output
-
koe
Not to mention scope creep, since subaddresses are already two levels outside the protocol (one time addresses are one level outside the protocol)
-
sarang
Yeah, there has been discussion about forcing uniformity in that way
-
sarang
To some extent I like that addressing is outside the tx protocl
-
sarang
It helps to simplify signature/proof constructions a lot
-
sarang
for modularity purposes
-
sarang
koe: will you be available at the research meeting to give a brief update on the status of Zero to Monero updates since the first release?
-
koe
yeah
-
sarang
Great
-
koe
I also have a list of future developments, some new others more recently discussed
-
koe
monero developments (e.g. clsag)
-
sarang
I was going to ask about that, in fact :)
-
suraeNoether
Good morning everybody
-
kinghat
good morrow
-
suraeNoether
I'm available this morning, but I've been recovering from a sickness, and I've been thinking deeply about the security models for CLSAG. I've made a couple of pushes to my get hub this week also... I'm just giving everybody a brief update in case I get sick during the meeting again :-(
-
suraeNoether
GitHub* my gawd
-
sarang
Try new GetHub! We bet you can't taste the difference
-
suraeNoether
Sarang I am fairly sure that just our analysis of backes' linkability and unforgeability is already an important contribution to the cryptography community
-
sarang
Yeah, it's more subtle than I had previously appreciated
-
sarang
Fortunately I think that even though it's limiting, it's an improvement on the existing Liu/MLSAG proofs (which make a lot of restrictions on the adversarial players)
-
sarang
Notably that Liu/MLSAG assumed linkability and unframeability players produced correct signatures, which doesn't immediately follow from their unforgeability
-
sarang
Whereas we extend this to allow for corruption and certain oracle access, but under a different framework for unforgeability
-
sarang
Backes is interesting in that linkability doesn't involve any oracle access, simply the adversary's output to the challenger
-
sarang
but tying this back to unforgeability doesn't really work for that
-
sarang
The unforgeability game is stricter in the challenger-player interactions
-
suraeNoether
If we can just show that satisfying the verf equations implies matching across ring indices...
-
sarang
Yeah, that would do it for sure
-
sarang
very comprehensively
-
sarang
It seems like this should be possible, given the way the forking lemma operates
-
sarang
The alternative is to restrict corruption in the unforge game, but that doesn't play nicely with reducing link/unframe back to unforge
-
sarang
I'm going to continue looking at how changes to the unforge definition would affect the types of challenger-player interactions with link/unframe
-
sarang
In particular, linkability
-
sarang
The way that proof currently works is by identifying a signature that has a mismatch between linking tag and ring
-
sarang
(via the pigenhole principle and properties of the linking tag construction)
-
sarang
OK, it's time to get started
-
Isthmus
"I find it unfortunate that a tx with subaddress is distinct from without, but don't see an alternative that doesn't cost additional 32 bytes per output" Heh, I suppose everybody can guess where I stand on that xD
-
sarang
-
» Isthmus puts on goggles and lab coat
-
sarang
Logs will be posted there after the meeting
-
sarang
GREETINGS
-
binaryFate
hi!
-
sgp_
hello
-
suraeNoether
Hi
-
koe
hiya
-
Isthmus
holla
-
sarang
Let's move to ROUNDTABLE
-
sarang
Isthmus: you posted some data on the agenda; care to discuss?
-
sarang
-
Isthmus
Sure
-
Isthmus
First, glanced at distribution of number of outputs on miner transactions
-
Isthmus
-
Isthmus
This is mostly a historical novelty from back in the days of denominated XMR - since RingCT became mandatory at block 1400000 all miner transactions have been 1OTXs.
-
Isthmus
*single-output coinbase transactions
-
sarang
So that chart is for _all_ miner txns?
-
sarang
Throughout all of time?
-
Isthmus
From genesis block to last week
-
Isthmus
Courtesy of n3ptune's magic database xD
-
Isthmus
Another mostly historic novelty - altruistic transaction selection by miners who would include many/large transactions in their blocks, incurring a coinbase penalty that is not offset by the added fees. (In other words, they would have had a higher total block payout by mining an empty block.)
-
Isthmus
-
Isthmus
color is size, starting at blue = small
-
Isthmus
This seems to not be a very common practice these days
-
Isthmus
Altruistic mining could be banned at the protocol level, but at the moment I'm not inclined to do so
-
koe
more advanced altruism based on suboptimal tx inclusion will involve more intensive analysis, which I provided pseudo code for this week, if that path is chosen
-
suraeNoether
Any comparison against partially filled blocks rather than empty blocks?
-
Isthmus
@koe yea do you want to jump in
-
sarang
Yeah koe please do
-
» Isthmus has to get off the bus but will be back in 5ish minutes
-
» Isthmus turns off bunsen burner and puts IRC away
-
sarang
koe: if you have a link to the pseudocode can you include it here?
-
koe
well this week I: made pseudo code for Isthmus blockchain analysis, deep proofreads of several ZtM chapters, talked with cohcho and jtgrassie about uniformity of coinbase tx
-
koe
more or less improved a roadmap of future monero developments:
justpaste.it/5io6e which we can talk about some items
-
koe
latest ztm2 draft, I have honestly been pushing off multisig edits, but not making no progress
pdf-archive.com/2020/01/22/zerotomo…0-20/zerotomoneromaster-v1-0-20.pdf
-
sarang
Enforcement of exact block rewards seems straightforward and a good idea
-
koe
-
sarang
Regarding ZtM, are there topics in progress for which you'd like particular information or assistance?
-
koe
currently working on multisig, and have already gone through most documentation available, but there are some things that aren't clear despite documents
-
koe
so if anyone knows about multisig, Id like to discuss with them
-
koe
otherwise will dive into code base
-
suraeNoether
I'm not super familiar with the code base, but I'm familiar with what it's supposed to abstractly represent
-
sarang
Thanks koe
-
suraeNoether
So if you have questions koe about how things are supposed to work (as compared to how things are currently implemented)
-
suraeNoether
Lmk
-
koe
ok Ill hit you up
-
sarang
Anything else of interest to share koe? You've clearly been busy!
-
koe
well there are all the things in the roadmap, in particular enforcing 1 output from coinbase (since Isthmus found literally all coinbase for 4 years have been single output), and possibly enforcing single-type ring membership (only coinbase ring emmbers, only rcttypebulletproof2 ring members) since 99.5% of coinbase are owned by pools who are easy
-
koe
to fingerprint
-
sarang
Single-type enforcement was brought up a few times by sgp_ in the past as well
-
koe
see
minexmr.com/pools.html where 99.5% of hash is accounted for
-
sarang
My concern was that a full segregation of coinbase outputs means certain heuristics are only moved "down chain" by a single hop
-
sarang
Meaning there's likely improvement for sure, but perhaps more marginal than desired
-
atoc
koe, do you still need proofreading of ZtM or are you good on that?
-
suraeNoether
I'm in favor of enforcing single output coonbase txns by consensus. I'm in favor of enforcing block reward. I'm tentaticely in favor of type-restricted rings.
-
koe
always need proofreading :) even after it's published lmao, I've received some good emails that are incorporated in v2
-
sgp_
I actually was going to re-introduce the topic again here to keep it on everyone's minds, so nice timing
-
sgp_
-
atoc
koe, I am have some notes that I need to send you.
-
atoc
I will try to get them to you soon.
-
koe
ill look forward to them :) (email me)
-
moneromooo
Enforcing single output coonbase txns would prevent p2pool.
-
atoc
will do :)
-
suraeNoether
Atoc, I believe that my mojojo branch is no longer bugging out, although data isn't being written to file how I want. The actual tracing game script I am running will be pushed soon(tm)
-
koe
jtgrassie is p2pool your project?
-
moneromooo
AFAIK nobody is doing it yet.
-
suraeNoether
But simulator is now successfully simulating a monero economy between Alice, Eve, and Bob to model flavors of EABE
-
atoc
cool suraeNoether I have been falling a bit behind and will catch up today and get you my thoughts
-
atoc
good to know the unit tests are working fine
-
atoc
Nice
-
suraeNoether
It's all good, I'll still be plugging away
-
sarang
Any other questions/comments for koe?
-
sgp_
no specific questions, but I have a related topic for mining pools besides coinbase outputs when time allows
-
sarang
OK, first, is Isthmus back? He had to step away briefly
-
» Isthmus gets back
-
sarang
Isthmus: care to finish up your data?
-
Isthmus
Also, it's not "kicking the can down the road" depending on how you implement it
-
sarang
(then we can move to sgp_)
-
Isthmus
But yea, moving on
-
sarang
Hold on
-
Isthmus
Discovered that everybody seems to use the miner_tx differently, including some really strange stuff like many blocks with 60 B of null padding(??!)
xmrchain.net/tx/7dfcc4e5d8bd772e337…52121503d9b4f3cb6587251292bf06ced9a
-
sarang
Why would coinbase-only not do this?
-
sarang
If you assume the spend patterns would be sufficiently different, I agree
-
Isthmus
Uhm, I could get in the weeds with this
-
Isthmus
On like 4 levels
-
Isthmus
lol
-
Isthmus
From an *on chain* perspective, there's two questions we can ask
-
Isthmus
1) Is this ring spending a coinbase
-
suraeNoether
\me pulls up lawn chair
-
Isthmus
2) Which coinbase is this ring spending
-
Isthmus
#1 is hard to hide
-
Isthmus
#2 can be accomplished
-
» Isthmus clarifies:
-
Isthmus
making #2 unanswerable can be accomplished
-
Isthmus
I'm an evil exchange
-
Isthmus
With current system, I can fingerprint which pools my users belong to
-
Isthmus
Aah ha, this person makes monthly deposits that are 4-input transactions each spending from a ring with 62 B null padding, so I know that they have about 3000 H/s attached to minexmr.com
-
Isthmus
*each spending from a coinbase whose miner tx_extra has...
-
Isthmus
But with coinbase-only txns, we strip the pool-to-user link
-
sarang
fair
-
Isthmus
Sure, as an exchange I can look at each user, and their average number of coinbases per ring
-
Isthmus
And if it's more coinbases per average I could suspect that they're a miner
-
Isthmus
But that's about all
-
sgp_
while there are some concerns with coinbase-only having only a layer of separation, I think the real benefits are being minimized slightly, especially to non-mining users
-
koe
also, coinbase is currently polluting normal tx rings, since a large proportion are identifiably spent/not spent
-
sarang
koe: the newer weighted selection algorithm does help this to an extent (relative only to tx weight, nothing else)
-
suraeNoether
One thing that is important about privacy is that third parties that have data like this are lawyer magnets. If an exchange couldn't possibly identify their mining user habits, they can't be hacked or subpoenaed to determine one of their customer's hash rates
-
» Isthmus indicates agreement with last few comments
-
Isthmus
In my ideal world, we have 13 ring members and two selection algorithms. Precisely 11 of the members are non-coinbase, selected with current algorithm. Precisely 2 of the members are coinbase(/coinbase-only) that are selected independently.
-
sgp_
Isthmus: that would not be good for many reasons :)
-
sgp_
notably, you need a set of at least 3
-
Isthmus
Oh, I'm not married to the numbers
-
Isthmus
Just making an example
-
Isthmus
(trying to avoid the misconception that adjusting our coinbase ring member selection algorithm will somehow be zero-sum with the rest of the anonymity set or users)
-
nioc
koe: I know that rbrunner (sp) made an implementation of multisig so it might be good to speak with him. I don't see him online now and haven't seen him for a little while but should still be around
-
koe
on the other hand, I wonder if enforced ring types is too much like reacting to how people use it; although the same could be said for many other protocol rules
-
sarang
Anyway, I derailed Isthmus's discussion of his other data with this topic...
-
Isthmus
Also, let M be the minimum plausible age between any output and it's temporally closest ancestor coinbase
-
Isthmus
:- P
-
Isthmus
That can either be a plotable feature, or fixed for all transactions at zero
-
koe
nioc ok Ill reach out
-
Isthmus
I think n3ptune and I may plot this for all outputs just to show the point
-
Isthmus
Other two things on the agenda - encrypted unlock time, and tx_extra in coinbases
-
Isthmus
I can get into these if people are interested
-
sarang
Sure, I saw your information about encrypted locks
-
sarang
(I also wish to address timelocks anyway_
-
sarang
)
-
Isthmus
Cool, lemme copypasta real quick
-
Isthmus
Oh, and for the encrypted + enforced unlock time, we have to decide on a format. Currently, 3 things are being put in the unlock field:
-
Isthmus
Small integers like "12", presumably to be interpreted as height differences, i.e. "unlock in 12 blocks"
-
Isthmus
Large integers like "1980000", presumably to be interpreted as block heights
-
Isthmus
Very large integers like "1578561720", presumably to be interpreted as unix timestamps
-
Isthmus
While normally I'd be loathe to bring real world time onto the blockchain, I am inclined towards this approach: encrypted unlock time is a future timestamp recorded in unix seconds, and each ring must include a range proof comparing the unlock time to the oldest or youngest ring member (I haven't fully thought this through).
-
Isthmus
The minimum lock time of 10 is trivial for any outside observer/miner to enforce by delaying (or rejecting) transactions with rings containing members less than 10 blocks old. This requires no mathematical validation within the transaction.
-
Isthmus
The encrypted unlock time could actually be defined as timestamp - 1500000000 to save a bit of space by removing the offset from some of time between 1970 and deployment, but that could be overengineering.
-
» Isthmus hands the mic to sarang
-
sarang
We have a relatively efficient way to do encrypted timelocks, as introduced in DLSAG
-
moneromooo
Small integers are block heights. If you put 12 now, it's pointless.
-
suraeNoether
I'm 100% in support of encrypted lock times... I know that sarang has done some work into the requirements on that in addition to isthmus
-
sarang
-
sarang
It works as follows: outputs come equipped with a timelock Pedersen commitment (units aren't relevant for this at the moment)
-
Isthmus
"<moneromooo> Small integers are block heights. If you put 12 now, it's pointless." Ahhahahaha that's what everybody is doing. Lemme make a plot real quick
-
sarang
Signatures come equipped with an auxiliary plaintext time that's chosen semi-at-random
-
sarang
as well as a particular auxiliary commitment
-
sarang
There is a range proof constructed using all these values, and CLSAG/MLSAG gets a new set of entries too
-
sarang
This maintains signer anonymity, shows the timelock has passed, but does not specifically reveal information about it
-
sarang
The cost for CLSAG is 1 new group element; the plaintext timelock is replaced by a plaintext intermediate value
-
sarang
and the auxiliary per-signature commitment is 1 new group element
-
binaryFate
does this mean the no-locktime transactions will be indistinguishable from locktime ones? Or just that the locktime ones will have an obfuscated time lock?
-
sarang
The rangeproofs can be worked into the existing bulletproofs, likely for free due to padding
-
Isthmus
Indistinguishable plz
-
sarang
Depends on how it's implemented
-
suraeNoether
indistinguishable would probably require no-locktime txns to have a dummy encrypted locktime
-
sarang
So the cost is 64 extra bytes per signature, and 32 bytes per extra timelocked output
-
sarang
Yep, you'd include zero locktime
-
sarang
and the rest of the process proceeds the same
-
sarang
So this is not free, but it's not terribly expensive either
-
sarang
Anyway, this information is to supplement what Isthmus brought up about how timelocks are handled now
-
binaryFate
It's completely offtopic but I personally like the idea that we can embed an arbitratry hash in a transaction in a way that is indistinguishable from other txs, for timestamping purposes.
-
» sarang returns the mic to Isthmus
-
binaryFate
Would only be half or a quarter of a hash in that case though
-
binaryFate
(using the encrypted time lock field)
-
Isthmus
@binaryFate if we add an enforced encrypted memo field, that would be a very good use case
-
suraeNoether
binaryFate: well, you could always pick your txn key as the Hp of some message. is that not what you mean?
-
binaryFate
it works too, but require you don't lose your local storage.
-
suraeNoether
sure. you want to be able to extract the message also, something like that?
-
binaryFate
just exhibit the message later on and point out to a past hash in the blockchain that timestamps it, without people taking notice this was a timestamping tx.
-
binaryFate
but if you have message you can get hash back, so tx key works perfectly I guess
-
suraeNoether
oh neat
-
binaryFate
anyway, sorry to derail
-
sarang
Isthmus: take it away :)
-
Isthmus
Derailing conversation is a key part of research! :- D
-
Isthmus
I think that's where 2/3 of our interesting stuff comes from
-
suraeNoether
*nod* i prefer these lively research meetings for sure
-
Isthmus
Anyways, last topic I had has been discussed significantly since I initially mentioned it. So I'll intro and then duck out of the way
-
sarang
You had some notes, Isthmus, on how timestamps are represented
-
Isthmus
-
sgp_
I will most likely need to take off, so I'll bring up my other mining pool ring signature proposal (which I mentioned in the past) when I get back
-
atoc
@isthmus agreed, it seems that new ideas fluster that way.
-
Isthmus
Oh go @sgp_
-
sgp_
ah, so very fast
-
sgp_
there are special ways we can construct rings for public mining pools to protect the "integrity" of outputs (make it no longer publicly known what transactions they are spent in)
-
sgp_
for public mining pools that share transaction histories, it's clear which outputs are change outputs, which are later spent by the pools
-
sgp_
to avoid this, public pools can select rings using exclusively decoys that they create as payments to miners
-
sgp_
that way, outsiders have no way to distinguish the output from the other outputs given to miners. saves one output per payment, per public pool
-
sgp_
this is not a consensus change, but it would require a separate "public pool selection mode" or similar
-
» Isthmus coughs *could be consensus*
-
sgp_
Isthmus: how? payouts won't be from coinbase outputs
-
» Isthmus re-reads
-
Isthmus
Aah, maybe I was thinking of something slightly different
-
Isthmus
Carry on :- )
-
sgp_
this protects pool change outputs from being known as spent by the pool in specific transactions
-
sgp_
that's about it, just wanting to make sure this idea is resurrected, since I introduced it nearly 2 years ago now
-
sarang
Thanks sgp_
-
sarang
In the interest of time, Isthmus please go ahead!
-
» Isthmus recaps:
-
Isthmus
Everybody seems to use the miner_tx differently, including some really strange stuff like many blocks with 60 B of null padding(??!)
xmrchain.net/tx/7dfcc4e5d8bd772e337…52121503d9b4f3cb6587251292bf06ced9a
-
Isthmus
-
Isthmus
This has implications for privacy of all users. For example, I have a list of blocks mined by the pool that added 60 B null padding to each miner transaction. When this person creates multiple-input transactions to claim the reward, ring signatures offer them no protection.
-
Isthmus
(Multi input + miner fingerprint is statistically noisy, so we know when those outputs are really spent, and can rule them out as decoys in other transactions.)
-
Isthmus
To avoid fingerprinting, it's important that any implementation mimics the full hierarchy on any block. For example, if we accommodate {nonce, pool, proxy}, then every miner (including solo mining core software) should put random data in pool & proxy. Otherwise we've just made a fancier way to leave the same fingerprint. :-P
-
Isthmus
Anyways, others in this room have made a lot of progress on how to address this, so I'll let them jump in
-
sarang
Anyone have anything to add in particular to this?
-
suraeNoether
nope, but I have to get going
-
sarang
OK, suraeNoether: any brief update before you go?
-
sarang
Otherwise, no worries
-
koe
sarang is this the encrypted timelock?
justpaste.it/2754y
-
suraeNoether
just that sarang and i have been having some extremely deep discussions about unforgeability in CLSAG and the crappiness of linkability models... we are nearing some very valuable improvements to d-CLSAG as written...
-
suraeNoether
i'll let him describe more; i've also gotten my matching simulations (apparently) working correctly on my matching-mojojo branch of mrl-skunkworks
-
suraeNoether
other than that, i have to get going
-
suraeNoether
sorry :(
-
suraeNoether
i'll drop in later today for more of an update
-
sarang
koe: you include the auxiliary timestamp in the signature's extra commitment in the model I worked up
-
sarang
Isthmus: anything else that you hoped to share?
-
sarang
(sorry, trying to ensure everyone gets a chance to finish their presentations)
-
Isthmus
Thanks, I'm outta new material
-
sarang
OK, thanks Isthmus
-
sarang
I worked up some stuff on timelocks (shared earlier), did a blag post with sgp_ relating to supply auditing (to answer questions that often come up), and got into the weeds on security models relating to linkability
-
sarang
Linkability meaning the formal definition used in linkable ring signatures, not any particular transaction linking
-
sarang
koe: what you have may be algebraically equivalent; I'll take a look shortly
-
sarang
OK, did anyone else have something to share that was missed?
-
sarang
So many things to discuss today!
-
koe
well does anyone have thoughts on enforced sorted TLV format for the extra field? I have spammed up the channel a bit recently, with that topic
-
sarang
Can you recap the benefits and tradeoffs briefly, for those who didn't see the earlier discussion?
-
moneromooo
If someone wants to stuff some random data in there, it's as visible as now, no ?
-
koe
and pursuing coinbase extra field standardization by seeking an inter-pool committe
-
sarang
(note that monerologs.net has logs of this and other channels available)
-
moneromooo
What's an inter-pool commite ?
-
koe
committee between pools
-
koe
composed of
-
moneromooo
Oh you mean just talk to pool ops ?
-
koe
lol yeah
-
koe
these things are called standardization committees in industry
-
koe
benefits of enforced sorted TLV + guidelines for use: a) makes sure all implementations are using the same essential format for constructing extra fields, since without guidelines or structure each implementation is ad hoc; b) for those who are privacy minded, there will be a clear way to blend in with other like minded implementers (for example,
-
koe
who knew that the code base sorts field entries, but at least one live implementation does not?); c) leaves extra field almost as open ended as it is now, so those who choose opt-out privacy (choose to stand out from the crowd) for whatever reason, can still do so trivially
-
sarang
In the earlier discussions, were there particular opinions opposed to it?
-
sarang
If so, why?
-
koe
tradeoffs: a) it may have limited real impact on transaction indistinguishability, especially among coinbase tx if most pool operators aren't on board; b) implies no stricter enforcement of the field will be pursued (which would directly address questions of indistinguishability; c) so far as coinbase tx go, many pools publish their mined blocks
-
koe
(counter argument is Monero development is focused on on-chain, and can't concern too much off-chain activity)
-
sarang
Noted; thanks
-
sarang
Since you were interested also in the hidden timelock construction, any other thoughts on that as well (from your link above)
-
koe
actually I just felt inspired, and wanted to confirm my understanding
-
sarang
Keeping in mind that the range proof can be absorbed into the existing one, meaning no effective change in size or verification for that portion of it
-
sarang
Your construction appears algebraically equivalent to what I listed
-
koe
I dont know enough about CLSAG to make a real judgement
-
sarang
The CLSAG part could apply to MLSAG as well
-
koe
Perhaps if we knew how much timelock is being used in the wild
-
sarang
The only difference is how the commitment to zero is handled in the signature
-
sarang
In MLSAG it would be _very_ expensive, but in CLSAG it adds only a single auxiliary linking tag, and makes the verification multiexp a bit more expensive
-
koe
oh nice, I was imagining all those extra mlsag scalars
-
sarang
If people think it's worth seriously considering, I can get more precise timing estimates on those curve operations
-
sarang
Yeah, for CLSAG you don't add scalars
-
sarang
It is in no way worth it for MLSAG
-
sarang
either in size or extra verification
-
sarang
The current CLSAG data has some custom curve-op code for efficiency that wouldn't apply to this new 3-CLSAG timelock construction
-
sarang
(the Python code is not suitable for timing, only to see how it works)
-
sarang
Anyway
-
sarang
We're way over time
-
sarang
Anyone have ACTION ITEMS for this week they want to share?
-
sarang
(I find action items useful for me, to help prioritize and share those priorities)
-
atoc
I will continue working with Surae. Hopefully I can share more next week.
-
sarang
I have several... some additional work writing up comparisons of linkability definitions between a few papers, to get some timelock numbers (if it's seen as useful), and some data analysis relating to sublinear protocols
-
sarang
Oh, and one additional note... the IEEE S&B conference is coming up later this year
-
sarang
-
sarang
Both suraeNoether and I are on the program committee
-
sarang
It's a great event, and is seeking papers
-
sarang
If you have some work that could be worth sharing, consider writing it up formally and submitting
-
atoc
Ok cool
-
sarang
(you should note any conflicts of interest with the program committee if you feel they apply to you)
-
sarang
I went to this event a while back, and it had great presentations (but was not streamed)
-
sarang
Any other comments, questions, or final remarks before we adjourn?
-
sarang
Normally there isn't so much to cover in one meeting; it's a great problem to have :D
-
sarang
Going once...
-
sarang
going twice...
-
koe
I will be focusing on ZtM2 multisig, which may be done by next meeting in which case Ill start in on bulletproofs; and anything else that comes up, perhaps work on updating the fee priority multipliers for surge situations (emails with ArticMine)
-
atoc
Last thing, I didn't realize IEE had Security and Privacy on Blockchain. That's pretty cool.
-
sarang
I'm happy to help with bulletproofs koe; I have a branch for it in my ZtM repo
-
sarang
atoc: it's a great event
-
koe
all in good time :)
-
sarang
I'm very happy to be asked to be on the committee :)
-
sarang
OK, thanks to everyone for attending, even though we went over the usual time
-
atoc
Yeah that's awesome!
-
sarang
Logs will be posted shortly to the GitHub issue
-
atoc
It was good. There was a lot of material.
-
sarang
Discussion can of course continue
-
sarang
(I just need a stopping point for the posted logs!)
-
atoc
Ah yes ofcourse
-
sarang
See a source like monerologs.net for all your logging needs =p
-
sarang
(I don't even recall who runs that)
-
atoc
sarang how do you stay logged in all the time for the IRC?
-
atoc
do you leave it open on your computer
-
koe
who ever it is praise them \o/ great service
-
atoc
Yes I agree
-
sarang
I use IRCCloud, which is a paid service (5 USD per month)
-
atoc
Ah I see
-
sarang
It has a really nice interface on web and mobile
-
sarang
(I'm not paid to say that =p)
-
atoc
I would consider doing it if I there were no Monero backup logs lol
-
atoc
The logs really are great
-
sarang
It's nice if you have a need for ongoing connectivity and don't want to resort to external logs
-
atoc
yeah i'm sure it's especially nice if you get PM's
-
sarang
There's also bridges to this channel, but I don't know much about the details on that
-
sarang
for sure
-
atoc
Yeah I am on mattermost too
-
atoc
I have been checking those logs, but I will now just go to monerologs.net :)
-
sarang
That bridge seems to disconnect a lot
-
sarang
Yeah, the interface on monerologs.net is really good
-
atoc
Oh I didn't realize that
-
sarang
and it seems to update very quickly
-
atoc
that's cool
-
sarang
I should perhaps link to the log site in the topic
-
atoc
Yes indeed
-
sarang
so it's easier for people who want logs
-
atoc
I think I heard about it last week but forgot it until you just reminded me the url again
-
atoc
(y) yeah I'm sure people are interested
-
sarang
It even has a dark colour theme, which is my preference
-
koe
ah I see what sgp_ was suggesting: pools consume coinbase and spit out miner payments + change payment back to pool; it's apparently obvious when pool consumes the change payment, since it's in a clearly fingerprinted pool tx (bunch of rings with different block coinbase references); so, the pool selects ring members from all the outputs that pool
-
koe
has ever made, thereby hiding the pool's change output amongst other pool outputs
-
sarang
Meeting logs are now also posted to GitHub:
monero-project/meta #430
-
sarang
(I find it convenient to have them available there)
-
atoc
yes looks good sarang
-
atoc
oh nice
-
sarang
It was great to have a meeting with so many interesting topics to discuss
-
atoc
Yes indeed, what is CSLAG btw? I know it is something you and Surae have been working on
-
koe
what would be a good way to decide if segregating ring member types is good to pursue?
-
koe
atoc their research papers here
web.getmonero.org/resources/research-lab MRL-0011 is CLSAG
-
sarang
CLSAG is a modification to our MLSAG ring signature construction with much better size and time efficiency
-
koe
intended to substitute MLSAG
-
sarang
Note that the paper is being extensively updated for clarity and a better security model
-
atoc
Ah I see
-
sarang
An average 2-in-2-out transaction would drop in size from 2.5 kB to 1.9 kB
-
sarang
and be around 15% or so faster to verify and generate
-
sarang
If hidden timelocks were included, these numbers change
-
sarang
koe: we'd need a more formal risk/threat model IMO
-
sarang
(regarding ring separation)
-
atoc
Oh nice. Yes I do remember hearing about the transaction size
-
sgp_
yup koe :)
-
sgp_
lmk if you have questions
-
sarang
atoc: there seems to be general support for including CLSAG in a future network upgrade, but the preprint has not undergone third-party formal review
-
koe
pool are certainly troublesome
-
atoc
sarang: which is the MLSLAG paper?
-
suraeNoether
MLSAG = RingCT basically
-
sarang
One version of MLSAG is described in MRL-0005
-
atoc
cool I see that, just making sure it's that one
-
koe
ZtM explanation is more thorough (imho)
-
sarang
But you should read koe's excellent Zero to Monero to see how it's used more safely in multi-input txns
-
sarang
^ heh yup
-
sarang
The cross-input method described in -0005 is not a good idea
-
atoc
Yes koe I have not gotten to that section yet, but I thought I would look at the paper just to get an idea rn lol
-
sarang
CLSAG would operate as essentially a drop-in replacement to either transaction protocol approach
-
atoc
Ok I will just read it in ZtM then
-
sarang
Yeah, please use that atoc
-
koe
cross-input was used in RCTTypeFull, which ZtM 1st edition includes
-
koe
now deprecated
-
sarang
Right, but we don't use it anymore
-
sarang
The CLSAG PR doesn't even support it AFAIK
-
atoc
AH I see I see
-
sarang
If we end up moving to something like Omniring or multi-Triptych, cross-input is no longer an issue :D
-
sarang
since the proof applies to multiple signer indices!
-
sarang
Unfortunately we still don't have a great soundness argument for one portion of multi-Triptych (only its single-input variant)
-
atoc
I see. Yeah I really need to read up on these different technologies lol. Unfortunately, I am not familiar with Omniring or multi-Triptych
-
sarang
I suspect the multi-variant is sound in practice, but that's not a proof :)
-
sarang
atoc: they get annoyingly technical very quickly
-
sarang
and the security proofs get pretty far into the weeds
-
sarang
Triptych is described in a recent preprint and was developed by MRL
-
atoc
Oh nice
-
sarang
Omniring was developed by another team of researchers
-
sarang
There are other clever approaches as well from different teams
-
atoc
I see many ring signatures topics in ZtM but not Triptych
-
sarang
Triptych is new and is neither reviewed nor deployed
-
sarang
(nor should it be at this point)
-
atoc
Here's a good question, in a semi-nutshell how does Zcash and Dash differ from Monero?
-
sarang
Triptych (single-input only):
eprint.iacr.org/2020/018
-
atoc
I am only familiar with Monero and not those other privacy coins.
-
sarang
-
sarang
RingCT 3.0 (one variant):
eprint.iacr.org/2019/508
-
atoc
thanks for the links
-
sarang
Those are the ones that most interest me at the moment
-
sarang
So of course Zcash is really two asset types
-
sarang
"Zcash" (shielded) and what I jokingly consider "Tcash" (transparent, basically equivalent to bitcoin)
-
atoc
Nice, I'm reading these abstracts and seems intresting
-
sarang
Spend authorizations for Zcash (not Tcash) are a generalized proof that shows the spent inputs are from a large accumulator set
-
sarang
Like in Monero, this does not remove all transaction metadata, but does assert high anonymity (absent other information!)
-
atoc
Hmm I see
-
atoc
But why is Zcash a privacy coin?
-
sarang
Note that most popular services do _not_ support Zcash, but only Tcash
-
atoc
or considered a privacy coin, it must hide something right?
-
sarang
This requires a "de-shielding" operation that carries risk
-
atoc
Oh I see
-
sarang
I don't like the term "privacy coin" FWIW
-
atoc
Not sure what to call it then, since this seems a popular term. What do you prefer to cal it?
-
sarang
One way to view Zcash (not "Tcash") is similar to Monero but with a "full anonymity set"
-
sarang
I prefer to switch it up... assets like Bitcoin are transparency coins :)
-
atoc
lol
-
atoc
Nice
-
moneromooo
Panopticoins.
-
sarang
nice term
-
sarang
It would be great to use a protocol similar to Zcash, but this requires a structured and trusted setup process
-
sarang
If that process were sufficiently compromised, you could forge spend proofs
-
sarang
Such a flaw occurred in the original version of Zcash
-
sarang
It is not possible to definitively prove that the flaw was not exploited, but there is no obvious evidence of it (this is a subtle and tricky point)
-
sarang
(note: it wasn't a compromise, but a flaw in the math surrounding the process)
-
sarang
I suspect there would be _very_ little support for doing this in Monero
-
sarang
Doing that kind of generalized proof efficiently is currently not possible with known techniques, unless you have a trusted setup
-
atoc
What is the protocol of Zcash though? shielding
-
sarang
There's a lot of ongoing research to remove that limitation
-
sarang
The protocol is complex and very custom
-
sarang
-
sarang
You'll see both the older and newer spec: Sprout (old) and Sapling (new)
-
sarang
There's a newer one (Blossom) that really didn't change anything of cryptographic substance
-
atoc
Are Zcash transaction less costly than Monero?
-
atoc
I imagine it could be
-
sarang
They are about the same size typically
-
sarang
but are fast to verify
-
sarang
Tcash transactions, of course, are more similar to Bitcoin (they include no privacy features)
-
koe
this is a nice high level view of differences between bitcoin/dash/zcash/monero
medium.com/@exantech/methods-of-ano…n-analysis-an-overview-d700e27ea98c
-
sarang
(BTW this "Tcash" terminology is non-standard; I made it up to better clarify the two pools of funds in my head)
-
atoc
I see, but you like parts of Zcash? (it seems, don't know for sure)
-
atoc
thanks koe
-
sarang
I like the privacy protocol in Zcash, but don't particularly like its trust implications
-
atoc
Yes I know Tcash doesn't exist lol
-
sarang
I don't like that it's optional, which carries risk
-
atoc
I see
-
sarang
Ugh, I hate the use of the term "mixing" to describe Monero
-
sarang
that is not what is done
-
sarang
Mixing is an opt-in method that actually spends mixed funds
-
sarang
Monero does not do this
-
sarang
Also, the wallet does not "create random outputs on the blockchain" to hide among
-
sarang
That is a poor description
-
Insight
why do people use mixing to describe then? was that what they did before introducing ringCT?
-
sarang
No
-
sarang
Because the non-interactive nature is hard to distinguish from mixing without some technical thought
-
sarang
FWIW some of the concerns in the listed papers from that article _have_ been addressed to some extent
-
sarang
(I can't speak to the accuracy of that article's discussion of Dash, since I know next to nothing about it)
-
koe
it's mixing because you have a bunch of decoys, and your real one, and you 'mix them up', and insert to a ring signature
-
sarang
sigh
-
koe
youll never escape it sarang!
-
sarang
If your output is mixed, you actually participated in the transaction; absent other information, it should not be possible to know if a Monero output participated in any transaction
-
sarang
it's a subtle but very important difference atoc
-
jtgrassie
agree that mixing is the wrong term
-
atoc
I will keep this in mind sarang as I am reading
-
Insight
ah that makes more sense.
-
koe
that complaint only makes sense if you know something about mixing services, otherwise the word is uncontroversial imo
-
sarang
Eh, maybe uncontroversial, but makes it sounds like "all approaches are basically the same thing"
-
sarang
Which is absolutely not true
-
sarang
I don't like simplifying things to the point where important meaning is lost
-
Insight
well its the nuance. especially as you delve deep
-
sarang
The approach with CoinJoin is not the approach of Monero is not the approach of Zcash etc.
-
Insight
^ basically that
-
atoc
sarang, thanks for your willingness to share btw. I am excited now. I am going to do more reading today and tomorrow and I would love to ask you questions and your thoughts on these topics.
-
koe
fair enough ^^
-
sarang
Sure. I might suggest joining #monero-research-lounge for not-directly-research topics (it's an off-topic channel)
-
sarang
atoc: any particular interest? For development, the math, just general knowledge?
-
atoc
Oh cool, yeah well basically when I just run into questions. I am going to go through the ring signature stuff today MSLAG and CSLAG)
-
atoc
I'm happy to join the lounge
-
sarang
What's your background? Is it math or CS?
-
sarang
(might help guide the level of discussion)
-
atoc
Currently I am working with Surae and I need to get him some stuff, but I want a good general knowledge of Monero
-
atoc
CS
-
sarang
neat
-
sarang
Mastering Monero is a good starter resource; and ZtM is a good deeper technical resource
-
atoc
Yes I have read Mastering Monero already
-
sarang
I can't think of a good initial Zcash resource
-
sarang
Most seem either way too "glossy" to give real meaning, or too in-the-weeds (like the protocol spec)
-
atoc
It was good. I hope to finish ZtM within the next week
-
atoc
Ah I see. I don't mind reading the protocol spec, but I probably won't read the whole thing
-
atoc
Just enough to get an idea about how it compares to Monero
-
atoc
how the technology compares
-
sarang
That protocol spec is fantastic, but you really need to read it carefully to understand the subtle points of what's happening
-
atoc
Have you read it all?
-
sarang
Nope
-
sarang
Just the parts I needed more information about
-
atoc
Makes sense
-
atoc
It's quite long
-
atoc
At some point I would still like to see how Dash works
-
atoc
but perhaps that will be for later
-
sarang
Can't help you there
-
sarang
There is chat.zcashcommunity.com where there are Zcash dev channels
-
sarang
I'm sure the experts there could answer questions much better than I can
-
atoc
Sure if I want to go deep I will look at that
-
atoc
Zcash is a strange currency, and I am personally not too big of a fan. I know I can like Monero and Zcash both, but I prefer Monero's way of doing things
-
atoc
hence why I am here
-
sarang
Zcash is very interesting as an approach to fungibility, but it seems to get messy because of its optional features, its corporate structure, etc.
-
sarang
It makes tradeoffs. Monero makes tradeoffs. Bitcoin makes tradeoffs. And so on
-
sarang
Nobody's "solved this" yet
-
atoc
Yesh the corporate structure rubs me the wrong way and is it there some sort of founder's fee
-
atoc
or founder allocation
-
sarang
There's a protocol-enforced development fee. There's ongoing discussion about what to do with it in the future
-
atoc
Yes indeed, I agree with you. I think CSLAG will be cool if it rolls out
-
atoc
reducing the transaction size would be nice
-
sarang
Yeah, CLSAG is not a major shift in thinking when it comes to signatures, but it's an improvement
-
koe
wow that protocol doc is intimidating; monero pure protocol would be half that or less, assuming dense formating like that
-
sarang
It's very complete
-
sarang
Of course, it handles both Sprout and Sapling
-
atoc
Yeah koe lol
-
sarang
and Blossom, I suppose (but that's trivial)
-
sarang
Gotta give them credit for fantastic naming
-
atoc
I personally also like Monero's tail end supply increase. I.e there is no hard cap
-
sarang
(let's head to -lounge to continue this discussion; it's off-topic)
-
atoc
sure
-
sarang
#monero-research-lounge
-
suraeNoether
sarang, a paper just came across my desk that reminds me of our DLSAG woes with basepoints and key images.
eprint.iacr.org/2019/202.pdf
-
sarang
Oh yeah, I remember when this came out!
-
sarang
I hadn't considered it in the context of e.g. DLSAG
-
sarang
BTW suraeNoether, have you seen babySNARK?
-
sarang
A fun toy construction for playing around with succinct proofs:
github.com/initc3/babySNARK
-
suraeNoether
nerp have not
-
sarang
good documentation
-
sgp_
nice busy day here in chat, it's nice :)
-
sgp_
does anyone think the separate public pool decoy selection algo has downsides I'm not considering?
-
sgp_
the most obvious to me is if someone uses it even if they're not a public pool
-
sgp_
maybe it's best described as a "public wallet mode," since it's not limited to just pools theoretically
-
sarang
Has that method been directly compared to the coinbase-only approach?
-
sarang
I don't think Isthmus made a direct comparison (checking logs)
-
sgp_
sarang: this is independent of the coinjoin approach
-
sgp_
sorry, coinbase approach
-
sarang
lol
-
sgp_
in short, mining pools have 2 categories of outputs: coinbase and change
-
sgp_
this better protects the latter
-
sgp_
does nothing for the former
-
sgp_
meanwhile, a coinbase consensus change like I described in my blog post helps the former but not the latter. but they are compatible with each other (not mutually exclusive to implement)
-
sarang
this = which approach
-
sarang
Ah, got it
-
sarang
Your last message clarifies
-
sgp_
-
koe
it's likely that with restricted ring member types, the change output from multiple coinbase-spending tx will be merged in future tx. sgp_ solution in combo with split member types would probably have the best effect to reasonably hope for
-
koe
merged, and thereby revealed quite clearly ^
-
sgp_
1311 is the most similar solution to (special decoy selection) and (coinbase-only rings)
-
sgp_
I think that, independently and together, these two changes have more pros than cons
-
koe
I hope Isthmus can shed some light on the details, alongside surae's matching endeavor
-
koe
since pool mining seems here to stay, bar any new innovations, it feels reasonable to tailor the protocol to that reality
-
sgp_
yeah, there are definitely some cons to the method I describe for input selection. it benefits the network if pools are not malicious only
-
sgp_
but if they are malicious, really the only good recourse is to increase the ringsize for everyone
-
sgp_
there's no incremental harm with this selection algorithm if pools are malicious, and an incremental good if they are non-malicious as far as I can tell
-
koe
if they are malicious the change will be neutral to that faction, and honest pools would (plausibly) benefit
-
koe
lol
-
koe
I don't know if stealth pool is as big a step up as it seems, since someone can collect and parse a pool's hashing blobs for each block, then compare with published blocks
-
sgp_
probably not in practice, I made this well before people started looking at the blobs
-
koe
would have the same effect as publishing mined block lists, except the attack vector would have complete lack of visibility to common users
-
sgp_
fwiw some pools no longer share all the payment information. supportxmr only shows the amount (useless) and number of payees
-
sgp_
but even the number of payees is relatively useful information
-
koe
that's good
-
sgp_
the fee is often unique-ish too, and that's shown on the site. people can still likely reliably find pool transactions
-
koe
thinking about it.. the transaction graph of both miners and pools is horrible; each miner is periodically sweeping his payouts in combination with the outputs from previous sweeps! or the equivalent effect from periodic consumerism. Pools have a very similar heuristic, periodically sweeping their change outputs into tx with the output of previous
-
koe
sweeps (or creating heuristically significant not-direct input-output loops via consumerism).
-
koe
sgp_'s modified decoy selector would have to be recommended to serial miners as well
-
sgp_
koe: I'm interested in protecting the miners more than pools
-
sgp_
Well, actually in this case the selection also will help everyone else since there's another set of outputs (change outputs) that are no longer heuristically dead
-
koe
I feel like a majority, or vast majority, of funds directly touched by pools (coinbase inputs, and outputs), and many of the outputs of miners (those which get churned in one way or another), have very weak ring protection. Moreover, even if a miner is doing sweep all periodically, by tree-ing off the pools with known roots, they are revealing many
-
koe
of their own decoy outputs as well (heuristically)
-
koe
it's only when funds leave miners do they really enter the indistinguishable maze of ring sigs (setting aside other problem childs like exchanges)
-
koe
a miner's best bet might be a) sgp_ decoy selection, b) periodically segregating funds (stop mining with one address, start mining with new address, and don't let funds from addresses cross over)
-
sgp_
fwiw I'm not suggesting that either of these solutions alone does much for specific users. It only matters on an aggregate network scale
-
sgp_
Suppose public mining pools create 20% of outputs including coinbase. That's 20% viewable to everyone, and therefore 20% of decoys selected on average are useless
-
sgp_
With segregated Coinbase rings, maybe that means only 5% of decoys in other rings (from the change) are useless
-
sgp_
Standalone, the actual impact on specific users is hard to quantify even at 20%. Probably zero for most
-
sgp_
But if there was a 50% chain split, then it exacerbates the issue to 70%, and then it starts having a greater impact on the network
-
sgp_
That's how I view it. Best to increase network resiliency by reducing the baseline condition, so that extreme conditions are less significant
-
koe
agh I cant wait for surae's matching simulator
-
sarang
^ suraeNoether
-
sarang
:D
-
suraeNoether
koe the simulator is passing tests currently
-
suraeNoether
you can play with it and generate your own blockchains
-
suraeNoether
and study the ground truth of the otherwise obscured monero ledger
-
koe
yay!
-
suraeNoether
until i break it again
-
suraeNoether
:\
-
koe
actually better not get involved or ztm2 will die a lonely death
-
suraeNoether
lol
-
sgp_
Yup, that research is crucial here
-
sgp_
But even really basic stuff by comparison like the Excel sheet I made and MRL-1 show that impacts are exacerbated when the network is already stressed
-
koe
suraeNoether for multisig I'm wondering a) what are the keys stored in tx_extra for? and b) how does the implementation avoid duplicate signing (e.g. when two people share a key.. they can't both use it to sign)
-
Insight
that has me thinking. Is there technically a maximum to how many signers can be in a ring?
-
koe
no
-
sgp_
Relevant issue to my topic
monero-project/monero #5222
-
koe
well by technically, how much the code can handle, idk
-
suraeNoether
koe can you elaborate on the duplicate signing question?
-
sarang
What do you mean "how many signers" can be in a ring?
-
koe
the signing key is a merged key, of all the diffie hellman shared keys, each of which (for M > N) is shared between 2+ members. To sign, they each sign with their component keys, then merge the signature with simple sum. But, since each person has keys that other people also have, the signature components would get duplicated
-
sarang
The answer is exactly 1
-
suraeNoether
-
sarang
How that was derived is not the verifier's business
-
Insight
I was reading "mastering monero" and they were discussing minimum amount of signers for a ring. going from 3 to now 7
-
suraeNoether
koe our construction was originally based on the musig signature scheme, which used multisets of keys, not sets of keys; duplicates allowed.
-
Insight
and wondered the opposite (the max)
-
koe
current is 11, and it's fixed at 11
-
suraeNoether
Insight: technically it's now fixed at 11
-
suraeNoether
but there's not a cap in the ring signature algorithm or anything like that
-
Insight
oh got it.
-
Insight
any reason why 11 was picked compared to like 13 or 15?
-
suraeNoether
koe so when those shares are passed around and summed, the signers are doing it with an encrypt-then-auth scheme. so they can see the public keys used by the other multiparty computers and detect duplicates. if this is unpalatable for whatever reason, the signer can abort
-
suraeNoether
Insight: because it goes to 11
-
koe
ah ok; in my original multisig chapter I reduced communication steps by having only the first member of a sorted list sign with a given key; sounds like current scheme is to just pass it around
-
suraeNoether
Insight: we are currently investigating what ring sizes are optimal or preferred, but 11 was selected in part to make sure txn verification could be kept under intolerable thresholds
-
suraeNoether
Insight: the other part of selecting 11 was the spinal tap reference
-
Insight
whats the spinal tap reference? (is there documentation about it)
-
suraeNoether
-
koe
does that mean they only construct the response after receiving the partial signature from previous guy?
-
TheCharlatan
most blokes play on 10.
-
Insight
ohhhh haha got it
-
xmrmatterbridge
<lza_menace> lol
-
xmrmatterbridge
<lza_menace> > is there documentation about it
-
suraeNoether
koe, we have a commit-and-reveal stage.
-
suraeNoether
if i recall correctly (and it's been *months*)
-
Insight
should go watch the movie so i can understand monero on a philosophical level
-
suraeNoether
everyone in their coalition has each other's pubkeys by sidechannel. everyone commits to some random signing data and sends it with enc-then-auth to their coalition members. if everything auths, then they send their openers to their coalition members, again with enc-then-auth. if everything auths, they check that everyone's commitments opened correctly. then a partial signature is computed and sent
-
suraeNoether
back to the coalition with enc-then-auth. if everything auths, everyone sends back the information required to finish the signature, again by enc-then-auth. if everything auths, any one of them can sum up the info to compute the final signature.
-
suraeNoether
but it's very very possible i'm not recalling things in the correct order, or that i inserted steps, or something
-
suraeNoether
i would need to reference the preprint
-
suraeNoether
that i wrote :\
-
koe
it should be 3 stage signing, for any value of M or N, if communication steps are consolidated using lexicographic sorting of member pub keys
-
koe
though it requires knowing in advance which M members will sign
-
suraeNoether
that sounds correct, because shorter rounds of communication were shown to be very unlikely to be provably secure under the DL assumption
-
koe
by preprint do you mean mrl 0009?
-
koe
this has given me things to think about, thanks; also, do you know what the pub keys stored in tx_extra are for?
-
koe
(ive heard rumors multisig pub keys are stored there)
-
suraeNoether
i forget numbering. :P i mean "thring signatures"
-
suraeNoether
uhm i believe that moneromooo could answer that
-
koe
ok ill probably read that tomorrow
-
sarang
It was my understanding that commit-and-reveal is not done
-
sarang
and it's single round-robin
-
sarang
Please correct me if that's not the case
-
suraeNoether
that was the original musig approach that was proven insecure
-
sarang
Right, I'm referring to Monero
-
suraeNoether
yeah, our proof of security relies on the commit-and-reveal
-
suraeNoether
so i hope you are wrong
-
suraeNoether
*i'm also not worried if you aren't*
-
suraeNoether
but yeah
-
sarang
^ moneromooo
-
sarang
I don't think commitment was ever added to the communication complexity
-
sarang
despite being in the security proofs
-
sarang
*due to the communication
-
sarang
(I disagree, but it's not my call)
-
suraeNoether
iirc there were long discussions around musig in the community, the general sentiment was that reduced rounds are extremely unlikely to be exploitable, fwiw....
-
koe
is at least robust key aggregation?
-
sarang
Right, but key cancellation is different
-
sarang
(depending on the communication mechanism)
-
koe
I thought robust key aggregation was part of musig
-
sarang
Yes, but we don't use MuSig
-
sarang
MuSig requires 3 rounds
-
koe
im saying, do we at least use the robust key aggregation part, of musig
-
suraeNoether
yes
-
suraeNoether
afaik
-
koe
ok good lol
-
suraeNoether
unless the code uses a different key agg mechanism than specified in the security proofs >:(
-
koe
I know the original version of multisig used naive key aggregation
-
moneromooo
The pubkeys have the same use as for non multisig txes.
-
koe
are there extra pub keys? e.g. usually there is only 1
-
koe
" Monero’s first iteration of multisignature, made available in April 2018, used this naive key aggregation, and required users sign their spend key components." is from my old chapter draft
-
moneromooo
I'm not 100% sure about the following: there are extra pubkeys where at least one or two outputs are to a subaddress. I always forget the exact rule.
-
koe
it should be extra when at least 1 output is a subaddress
-
moneromooo
There's a special case to do with change IIRC, which doesn't trigger an extra pubkey.
-
koe
unless it's a 1-out tx (pre-2out requirement)
-
koe
oh makes sense
-
moneromooo
A signer does not sign with keys that already signed. The set of keys used is kept as metadata. I suppose if a signer signs with a key but does not mark it as used, it'll cause an invalid signature.
-
koe
sarang how would that interact with janus?
-
koe
hm multisig with advanced escrow could provide coinjoin-like service within monero! privacy your privacy bb
-
sarang
rbrunner is a good person to ask about current multisig implementations
-
sarang
They've been very active in development IIRC
-
koe
nvm no need to test janus on a tx where all outputs are to yourself
-
moneromooo
The key aggregation we use predates musig I believe. So it can't be that unless amazing fortuitousness.
-
sarang
^ suraeNoether
-
sarang
Like I said, I don't recall any changes being made as a result of the paper
-
derpy_bridge
[keybase] <surae>: our key agg is a simple sum, then?
-
koe
well generate_multisig_N_N git blame hasn't changed in 2 years, which is my reference for naive key aggregation
-
moneromooo
Yes, adding.