-
knaccc
i guess it's possible that since the H for pedersen commitments is way more important to never have its private key wrt G exposed, i'd imagine that they may have thought it lower risk to generate H directly from the hash in case a vulnerability was ever found in their special Hp() concoction
-
knaccc
it feels more NUMS-y to generate H that way
-
knaccc
i think that special Hp() function is unique to cryptonote
-
knaccc
so didn't have wider scrutiny
-
UkoeHB_
the citation for that function is here
arxiv.org/abs/0706.1448
-
UkoeHB_
it seems so strange the original cryptonote team's project bytecoin was a scam; they really were very intelligent
-
UkoeHB_
and competent
-
sarang
Interestingly, someone noted a while back that an iterated direct-point-test hash may be faster on average
-
sarang
i.e. you keep testing `H(data,i)` for iterated values `i` until you land on the curve
-
UkoeHB_
faster than Hp?
-
sarang
Possibly faster than the SWU method, possibly. But it'd be pretty small potatoes (and you'd need to build plenty of spaghetti code for the change), so we never investigated
-
sarang
FWIW the next-gen sublinear constructions don't use hash-to-curve operations for linking tags anyway
-
sarang
Only hash-to-scalar operations, which are very fast
-
UkoeHB_
oh nice
-
sarang
Yeah, linking tags for signing key `x` are of the form `(1/x)*U` for a fixed group generator `U`
-
sarang
Speeds up verification quite a bit
-
sarang
(that was the reason why multisig is more annoying... you lose the linearity)
-
sarang
You still need a set of NUMS generators, which you'd presumably construct via hash-to-point ops
-
UkoeHB_
did you find a solution for multisig?
-
sarang
But these are done once and can be cached
-
sarang
Oh a solution for the inversion thing? Yes, a variation of Gennaro and Goldfeder
-
sarang
The other steps are all nicely linear and can be done with simple commit-and-reveal sums
-
knaccc
UkoeHB_ | the citation for that function is here < interesting, thanks - i didn't know that was something they'd taken from elsewhere. i wonder though if it had been used elsewhere, how much scrutiny the method had received, and how confident they were that they didn't screw up their implementation of the theory
-
sarang
It's a pretty well-accepted method AFAIK
-
sarang
I should test whether iterated direct hashing ends up being faster on average
-
sarang
There would be values that require many iterations, but statistically the chain terminates quickly
-
UkoeHB_
wouldnt you just need to check that the x coordinate is smaller than the group order? or do not all field elements produce group points?
-
sarang
correct
-
sarang
to the second part
-
sarang
and I assume you mean the underlying curve field
-
sarang
which does not have the same order as the curve group
-
sarang
On average, about 50% of field elements correspond to curve points
-
sarang
But anyway, switching hash methods would be unnecessarily complex and not useful for the next-gen stuff anyway
-
sarang
Only mentioned it as a fun note
-
UkoeHB_
why would there be field elements that dont produce curve points?
-
UkoeHB_
if the equation is ax^2+y^2=1+dx^2y^2, are there some x that make y = sqrt(negative number)?
-
UkoeHB_
no that doesnt make sense since all field elements are positive
-
knaccc
i dont understand what i'm talking about, but i can see in the source code that the test for an invalid curve point is whether BOTH vx^2-u and vx^2 are non-zero
-
knaccc
where u = y^2 -1 and v = d * y^2 + 1 and x = sqrt(u / v)
-
knaccc
and where y is the field element represented by the byte sequence being interpreted as a curve point
-
UkoeHB_
makes sense, I wonder how often that would actually happen though
-
knaccc
oh i've tested that for sure
-
knaccc
it always comes out at pretty much exactly 50% of byte sequences work
-
UkoeHB_
wonder why that would be
-
knaccc
sorry for the spam, this is the explanation of how points are recovered:
-
knaccc
* x is recovered in the following way (p = field size):
-
knaccc
* <br>
-
knaccc
* x = sign(x) * sqrt((y^2 - 1) / (d * y^2 + 1)) = sign(x) * sqrt(u / v) with u = y^2 - 1 and v = d * y^2 + 1.
-
knaccc
* Setting β = (u * v^3) * (u * v^7)^((p - 5) / 8) one has β^2 = +-(u / v).
-
knaccc
* If v * β = -u multiply β with i=sqrt(-1).
-
knaccc
* Set x := β.
-
knaccc
* If sign(x) != bit 255 of s then negate x.
-
UkoeHB_
point decompression
-
knaccc
yeah
-
knaccc
i don't even really understand how you can have a field element representing sqrt(-1)
-
knaccc
which is what is done to x to get the EC point x coord
-
UkoeHB_
there are no negative numbers, so it's really -1 mod q
-
knaccc
i can't get my head around why mod q provides a sqrt
-
UkoeHB_
sqrt([-1 mod q]) = sqrt(positive number)
-
UkoeHB_
or actually sqrt([-1 mod q]) = sqrt(q - 1)
-
knaccc
ohh i see, thanks
-
sarang
Reminder: research meeting today at 18:00 UTC (about two hours from now)
-
sarang
suraeNoether: I found a small omission in the original Triptych preprint's prover routine description that I'll be updating today (letting you know since you're a coauthor)
-
sarang
Doesn't affect security or anything. Merely forgot to transcribe a particular variable definition from my notes
-
sarang
-
sarang
Literally a one-line update
-
sarang
Reminder: research meeting in about an hour (18:00 UTC)
-
UkoeHB_
real quick, I need two more citations to hit twice the amount of first edition, any takers?
-
sarang
Cite a few of the proposed next-gen transaction protocols?
-
sarang
Omniring, RingCT 3.0, Lelantus, Triptych
-
UkoeHB_
ah good idea
-
sarang
Omniring was accepted to a conference
-
sarang
so that has a non-preprint citation now
-
sarang
OK, we'll start our meeting shortly
-
sgp_
omniring doesn't need an audit to implement, got it /s
-
sarang
-
sarang
Logs will be posted there after the meeting ends
-
sarang
Let's start the meeting!
-
sarang
First, GREETINGS
-
sarang
hello
-
sgp_
hi
-
» sarang will wait a couple of minutes
-
sgp_
[meta] I added the MRL meetings with reminders to the Google Calendar I have if you are ok using Google:
calendar.google.com/calendar/embed?…40group.calendar.google.com&ctz=UTC
-
sarang
Does using that link leak any information to you? (presumably it leaks IP information to Google)
-
sgp_
not to me, just Google
-
sarang
roger
-
sarang
OK, continuing on
-
sarang
Next up is the ROUNDTABLE
-
UkoeHB_
hi
-
sarang
I've been getting the multi-input version of Triptych updated for posting to the IACR preprint archive
-
sarang
as well as minor edits to the original preprint as I come across them
-
sarang
Posting to IACR (with suitable caveats about non-standard cryptographic hardness assumptions) can increase the visibility of the idea, and hopefully encourage feedback
-
sarang
It's pretty slow going, but progressing well
-
sarang
Any particular questions on that before I pass the baton?
-
sarang
OK, next up!
-
sarang
Does anyone else have research of interest to share and discuss?
-
» sarang will wait a bit; there's plenty of time
-
Isthmus
Yo
-
sarang
Hello Isthmus
-
sarang
Did you wish to share anything, or just observing?
-
Isthmus
I’ve been pretty busy in meatspace, sadly no time for data spelunking
-
sarang
OK, no problem! Simply checking
-
sarang
It's a fairly quiet day today anyway
-
sarang
UkoeHB_?
-
sarang
suraeNoether?
-
sarang
Others?
-
Isthmus
Oh yes, actually
-
sarang
ah ok
-
sarang
carry on Isthmus
-
Isthmus
Wait there’s too much traffic for voiced text, let me look back pewter in four minutes
-
sarang
roger
-
sarang
Someone else, then?
-
UkoeHB_
need about 10mins
-
sarang
OK, in that case, let's pause the meeting for 10 minutes or so; I show the time is 18:12, so let's reconvene at 18:22 or so
-
» sarang pauses the meeting
-
sgp_
sarang: want to talk about Triptych naming at some point?
-
sarang
That seems like a suitably off-topic idea during this break =p
-
sarang
Right now, the multi-input Triptych preprint uses the name "Triptych-2"
-
sarang
this is boring and not descriptive
-
sarang
I am open to better naming ideas
-
sarang
Note that I can revise the older paper if that's helpful (this has been done to add features and fix errors)
-
hyc
what part of the original "triptych" is triple?
-
sarang
The benefits of Triptych-2 are using a single proof for all spends (instead of separate proofs with commitment offsets), and handling balance assertions directly within the proof
-
sgp_
I originally recommended Triptyzk as a half joke, but part of me thinks it's a good idea
-
hyc
Polyptych
-
sarang
The idea was that the three parts to Triptych are signing keys, commitment keys, and linking tags
-
sarang
Heh, a polyptic sounds like something a surgeon would remove :/
-
UkoeHB_
lmao
-
sarang
FWIW there's basically no change to the SHVZK property or proof between the two versions
-
sarang
They're almost identical
-
sgp_
that's partially why adding "zk" now makes no sense. It's more about proactively naming for the Twitter trolls/idiots
-
UkoeHB_
B-Triptych and E-Triptych for basic and extended 🤔
-
sarang
Triptych Classic and New Triptych
-
hyc
Triptych and Antikythera :P
-
sarang
Just what we need; something equally hard to pronounce =p
-
» sarang resumes the meeting
-
moneromooo
Technology so old nobody remembers how it works.
-
hyc
yes... and indecipherable, and considered too advanced for its time
-
kinghat
i havent been paying that close attention but have we "shelved" CLSAG?
-
sarang
suraeNoether just told me he's now happy with the revised security model for CLSAG
-
sarang
Nothing has changed with the algorithms themselves, apart from a small change to hash function inputs
-
UkoeHB_
it sounded like suraeNoether was considering advocating to skip CLSAG and go directly to next-gen in a year or two
-
sarang
I disagree
-
sarang
CLSAG is a straightforward change that's well understood
-
» moneromooo moves mouse over merge button
-
kinghat
😂
-
sarang
Anyway, he made very recent updates that I'll review (more on this during ACTION ITEMS) for IACR posting
-
sarang
Anyway
-
sarang
UkoeHB_ and Isthmus both wanted to share some work
-
selsta
Will CSLAG require a paid review?
-
sarang
Nothing "requires" paid review
-
selsta
for you to be comfortable with it
-
sarang
But it's probably a good idea :)
-
sarang
I'm very comfortable with the math
-
Isthmus
Hm, upon more consideration, discussing it today might be the wrong order of operations
-
Isthmus
Nothing pressing or dangerous
-
sarang
The total estimate for math+code review by Teserakt was ~$15000 USD, which is quite reasonable IMO
-
sarang
Isthmus: how so?
-
sarang
Now you have everyone intrigued
-
UkoeHB_
happy to announce a final proofreading draft of ZtM2 is ready. Note that I decided not to go into Bulletproofs since it's frankly way too much detailed math to be worth it. Anyone who wants to learn bulletproofs should just read the original paper.
pdf-archive.com/2020/03/04/zerotomo…1-1-0/zerotomoneromaster-v1-1-0.pdf
-
Isthmus
A poorly-framed thought experiment is worse than no thought experiment at all 😅
-
sarang
UkoeHB_: great!
-
sarang
Will this be renamed to 2.0 after review?
-
sarang
Or will the title be incremented to "One to Monero" :D:D:D
-
UkoeHB_
Ill make a reddit post asking for proofreaders, and if anyone knows someone who wants to proofread go ahead and pass it around. Not much is likely to change between now and publication in ~1.5-2months. The proofreading period is 3 weeks.
-
UkoeHB_
I think Ill just remove the version number
-
UkoeHB_
maybe
-
midipoet
UkoeHB_: fair play
-
sarang
Name them based on the most recent Monero version name?
-
sarang
Anyway, great to hear the update is nearing completion
-
hyc
Zero to Monero, Hero Edition
-
UkoeHB_
yes I want to meet the hero who reads the whole thing :)
-
hyc
the more -ero suffixes in the title, the better :P
-
sarang
Does anyone else wish to share research of interest?
-
sarang
OK, we can move on to ACTION ITEMS, then
-
sarang
I am completing the Triptych-2/NewTriptych/E-Triptych/etc. preprint for IACR posting
-
sarang
and reviewing the (hopefully final) changes to CLSAG that I received from suraeNoether
-
sarang
Anyone else?
-
UkoeHB_
proofreading, and listening to proofreader feedback if and when it appears; starting now will probably spend a lot less time with Monero as this project wraps up
-
sarang
I think a reddit post is a great idea to encourage readers to take a look
-
sarang
ZtM is such a valuable resource
-
sarang
Short meeting today! But that's fine
-
sarang
Any other questions, comments, etc. as we wrap up?
-
sarang
All right! Let's adjourn
-
sarang
Thanks to everyone for attending
-
sarang
Logs will be posted shortly to the GitHub issue
-
sarang
posted
-
nioc
sarang: do you think we need an audit in addition to the math+code review by Teserakt?
-
gingeropolous
so triptych is like a bulletproof but all these things have been packed in the bulletproof. So its a quiverproof. magazineproof. why was it called bullet proof? the paper doesn't really say why it was named that
-
sarang
I personally don't think another code audit would provide much benefit for the cost, given the limited scope of changes and the fact that Teserakt would also be reviewing the math
-
sarang
gingeropolous: bulletproof because of standard assumptions, and bullet because fast to verify (IIRC from the paper)
-
sarang
Triptych is not like bulletproofs!
-
sarang
Different proving system, different goals, etc.
-
gingeropolous
sorry sorry
-
sarang
The idea behind Triptych (broadly) is to use a single hidden index representation to prove things about signing keys, commitment keys, linking tags, and commitment balance
-
sarang
or rather, single hidden representation per spent input, extending this to multiple indices in one proof
-
sarang
(the original version removed the balance stuff but handled single indices, of course)
-
hyc
when you say single index representation, is this like the index shorthand currently used to reference outputs?
-
nioc
!tip $15000 MRL
-
sarang
o_0
-
nioc
for Audut
-
nioc
or an audit
-
gingeropolous
so should the name describe how it does it, or what it can do. because it can be used for many fast many rings.
-
sarang
Who knows! I'm not good at naming things
-
sarang
As long as the name isn't misleading
-
gingeropolous
All Your Rings Are Belong To Us (AYRABTU)... no that won't do.
-
sarang
and preferably sounds cool, because why not
-
sarang
I don't want to make this simply an update to the existing paper, because it's different in the cryptographic assumptions and is a pretty substantial improvement
-
sarang
but it's still based on the same underlying proving system
-
UkoeHB_
-
sarang
:)
-
gingeropolous
Neoskizzle. Peachflame. Pentwist. Pruvia. random word creators are fun.
-
sarang
Anybody heard from suraeNoether today?
-
selsta
tweeted 4h ago
-
sarang
Hmm perhaps he forgot about the meeting?
-
sarang
Or had a conflict