- 
UkoeHB Meeting in 20mins 
- 
ghostway[m] Hello 
- 
shalit[m] Hello 
- 
UkoeHB meeting time 
- 
UkoeHB 1. greetings 
- 
UkoeHB hello 
- 
CasCremers[m] Hello 
- 
bewa_c[m] Hello 
- 
dangerousfreedom Hello 
- 
UkoeHB 
- 
ArticMine[m] Hello  
- 
Rucknium[m] Hi 
- 
jlo[m] Hi 
- 
kayabanerve[m] Hi 
- 
hbs[m] Hi 
- 
UkoeHB 2. today we have the authors of this significant new preprint  eprint.iacr.org/2023/321 here to discuss their paper/answer questions 
- 
rbrunner Hello 
- 
UkoeHB CasCremers[m]: do you want to briefly introduce your team and your paper? 
- 
CasCremers[m] Hi, we are three academics at the CISPA Helmholtz Center for Information Security in Germany  
- 
CasCremers[m] Our paper tries to give a more complete analysis of the security of Monero transactions as opposed to the isolated analyses previously 
- 
CasCremers[m] Any particular questions you might want to see answered? 
- 
CasCremers[m] (We're not terribly familiar with this format) 
- 
dangerousfreedom CC: First, thank you for the very nice work. It is nice to see research being done with Monero and I enjoyed reading it :)... (full message at < libera.ems.host/_matrix/media/v3/do…7ce76793de7899c44055b2d19c988410975>) 
 
- 
blankpage[m] I can't be present throughout this meeting but I'd like to remind attendees of these meetings that they are welcome to submit a proposal to present at Monerokon in Prague in June, and to spread the message to other relevant researchers 
- 
blankpage[m] 
- 
UkoeHB CasCremers[m]: thanks, the format is fairly informal. I am currently reviewing your paper, it just came out so I am only ~1/4 through it. Did you find anything interesting/surprising during your research? 
- 
CasCremers[m] A1: We have a limitations section that describes part of the analysis that were not completed yet and that would interesting to investigate. (But we currently don't have a project tailored towards this) 
- 
CasCremers[m] A2: Our analysis tries to walk the fine line between theoretical and practical. We did check the code for several questions we had, but of course the analysis is theoretical. 
- 
bewa_c[m] A3: I briefly looked at the issues you linked. It seems that they are related to the fact that Monero uses Ed25519, i.e., a non-prime order group. As stated in the limitations, we assume that we have a prime order group. This is common in cryptography.  
- 
Rucknium[m] Thank you for joining us today. Do you want to get funding for studying Monero multisig? It is still considered experimental since there is not a formal security proof. You can get funding at  monerofund.org/apply_research or  ccs.getmonero.org/what-is-ccs
- 
jlo[m] <UkoeHB> "CC: thanks, the format is fairly..." <- On the practical side, we did not find anything particularly surprising. That is to say, that we confirmed that Monero's transaction system is secure in our model, as expected. However, we encountered many technical obstacles during the proof due to the non-standard uses of the crypto in the Monero transaction system. These make our paper interesting from a theoretical point of view 
- 
jlo[m] also 
- 
UkoeHB CasCremers[m]: I noticed your ring signature analysis is > 20 pages, and I recall ring signatures have a history of difficult-to-assemble security models. How do you guys feel about your solution? 
- 
CasCremers[m] Wrt Ed25519: In a separate context, some of us actually actively worked on this problem:  eprint.iacr.org/2020/823
- 
CasCremers[m] but that is not directly used in the Monero proof 
- 
vtnerd sorry, just sitting here ignoring this room, now present 
- 
Rucknium[m] Formal security proofs for Monero multisig are considered high-to-medium-priority, but there is not an active effort (that we are aware of) to create them. 
- 
CasCremers[m] Rucknium[m]: We would be interested in setting up a further project on Monero with PhD students, and would be happy to learn more about the opportunities. Maybe this is something for a dedicated conversation? 
- 
bewa_c[m] UkoeHB: The main aspect here is that the standard notions for linkable ring signatures are not enough: For example, the keys that an honest user uses are potentially derived by the adversary from the honest users address. This is why we have to analyze linkable ring signatures with respect to the key derivation. I think this is the main challenge here.  
- 
Rucknium[m] CC: Yes that sounds great. I am on the committee that approves grants for the MAGIC Monero Fund, so I can help you there. 
- 
dangerousfreedom <bewa_c[m]> "A3: I briefly looked at the..." <- Yes. One issue is about that. The other is that there are some wrong signatures that dont strictly obey the ring signature equations. I am pretty convinced that it is only a serialization problem but anyway it is always good to formally settle things down. 
- 
dangerousfreedom Thank you for the answers bewa_c CC  ! 
- 
CasCremers[m] We would be very interested in removing the limitations, and moving closer to the implementation. However, this is very challenging work and it is not always clear how to compose the results. 
- 
UkoeHB bewa_c[m]: I see, yeah your analysis might be the first to unify the consensus/proof side with the address side. 
- 
CasCremers[m] For example, we are not yet considering privacy in this work. 
- 
dangerousfreedom <CasCremers[m]> "We would be interested in..." <- Nice! I guess Rucknium is the man to talk to. From my side, to be honest, I would be happy also to dedicate 100% of my time to Monero and do a PhD :p 
- 
jlo[m] UkoeHB: I am not sure this is quite accurate. We treat the consensus layer as a black box (i.e., assume it is given and works correctly). Our analysis concerns only the security of transactions on the ledger 
- 
UkoeHB jlo[m]: by consensus I mean transaction validation rules checked by consensus (e.g. that proofs are valid) 
- 
UkoeHB jlo[m]: figure 3 VerTx() basically 
- 
jlo[m] Ok, in that case, I agree with your initial comment 
- 
Rucknium[m] What motivated you to write this paper? Why did you pick Monero to study? 
- 
CasCremers[m] Rucknium[m]: We had been been studying signatures and bip32, and we are interested in real-world constructions an d proof techniques for them 
- 
CasCremers[m] > <@rucknium:monero.social> What motivated you to write this paper? Why did you pick Monero to study? 
- 
CasCremers[m]  * We had been been studying signatures and bip32, and we are interested in real-world constructions, and proof techniques for them 
- 
CasCremers[m] CasCremers[m]: This seemed like a sizeable challenge of scientific interest from a proof technique angle 
- 
UkoeHB It's certainly a very impressive paper, and a bit unexpected for me since I assumed the task was too large for anyone to tackle. 
- 
CasCremers[m] It took us over a year 
- 
Rucknium[m] UkoeHB and others are working on Seraphis, which is a planned next-generation transaction structure for Monero:  github.com/UkoeHB/Seraphis  I think we expect that the Monero Project will need help with creating formal security proofs for some of Seraphis.  
- 
UkoeHB wow no kidding 
- 
CasCremers[m] (wall clock time) 
- 
CasCremers[m] This sounds very interesting, but also a very substantial task. 
- 
ArticMine[m] Also extensive audit work will be required  
- 
UkoeHB I think this holistic analysis paper will be a very strong starting point for a security analysis of seraphis 
- 
ghostway[m] Btw CC: better to not use fancy matrix features like threads. The irc people (koe between them) don't see it as you do...  
- 
ghostway[m] Might (and probably did) create confusion on the ordering  
- 
CasCremers[m] So much for that DAG ;-) 
- 
CasCremers[m] Q: What is the intended timeline for Seraphis? 
- 
UkoeHB is the matrix protocol supposed to be a DAG? 
- 
UkoeHB CasCremers[m]: we'd like to get security proofs done this year. The implementation is already basically done, as is the addressing scheme  gist.github.com/tevador/50160d160d24cfc6c52ae02eb3d17024 . There is also a parallel protocol Lelantus Spark that already has security proofs  eprint.iacr.org/2021/1173
- 
xmrack[m] Hi sorry I’m late 
- 
UkoeHB the project is kind of bottlenecked on me, since I have been doing the implementation + migration + theoretical work 
- 
ghostway[m] UkoeHB: Probably not, threads are rather new 
- 
CasCremers[m] If I am understanding this correctly, maybe UkoeHB & Rucknium and us should have a separate mail discussion about the options. We're definitely interested in further refining our proof techniques on modern applications. 
- 
Rucknium[m] Fantastic :) 
- 
UkoeHB CasCremers[m]: sounds good to me 
- 
Alex|LocalMonero CC: thanks for your work! 
- 
UkoeHB yes thank you very much :) 
- 
ghostway[m] ^, let's see if I can even try to read that thing, lol 
- 
CasCremers[m] It's very often just a combination of our theory knowledge and finding the project context for person power 
- 
ArticMine[m] Thank you  
- 
xmrack[m] Thanks +1 
- 
Rucknium[m] CC: Would you prefer discussion in a separate Matrix room, discussion in this room after the meeting, email, or something else? 
- 
hbs[m] Thanks 
- 
Rucknium[m] Thanks +1 
- 
CasCremers[m] thanks for the kind words! feel free to reach out with more questions 
- 
CasCremers[m] We have to leave in 15 mins max; maybe continue over email in first instance?  
- 
dangerousfreedom Thank you for your work! 
- 
Rucknium[m] CC: Email sounds fine. Thank you. 
- 
UkoeHB 3. for the remainder of the meeting, does anyone have a topic they want to discuss? There may not be enough time for the other agenda items. 
- 
Alex|LocalMonero MRL #100? 
- 
ghostway[m] Is this #100? 
- 
Rucknium[m] monero-project/research-lab #100 "Exploring Trustless zk-SNARKs for Monero's payment protocol" 
 
- 
ghostway[m] Oh ok 
- 
UkoeHB tevador: kayabanerve[m] can you guys summarize where #100 is heading? 
- 
tevador I'm currently looking for curve cycles that are compatible with ed25519 and would work with Curve Trees. 
- 
tevador I think the next step would be prototyping curve trees in sage with the seraphis key format. 
- 
UkoeHB 
- 
tevador I'm looking for a better cycle that has 255-bit fields instead of 266 bits for obvious reasons (performance) 
- 
UkoeHB tevador: the membership proof piece only needs to work on public keys and generator G, it should be independent of seraphis key format 
- 
UkoeHB 
- 
tevador Yes, by seraphis key format I meant Ed25519 keys expressed as K + rG for some scalar r and K is in the accumulator. 
- 
UkoeHB gotcha 
- 
ArticMine[m] Will this approach require a transaction format change after Seraphis? 
- 
tevador This is actually slightly different from curve trees as described in the paper because the "bottom layer" is on a different curve. 
- 
UkoeHB ArticMine[m]: it would require switching out the membership proof, and a bunch of implementation work to handle merkle trees 
- 
UkoeHB one thing that gets me excited is multisig should require zero changes 
- 
ArticMine[m] Any idea on tx size for 2 in 2 out? 
- 
UkoeHB idk, tevador ? 
- 
tevador The Curve Trees demo was around 4 KB for 2/2, with 1 merged proof for both inputs. 
- 
ArticMine[m] Definitely doable from a scaling perspective, given the likely timeframe and Neilsen's vLaw 
- 
tevador Note that this also has the range proof in the circuit, which will be separate for us. 
- 
UkoeHB we are at the end of the hour so I'll call it, thanks for attending everyone 
- 
Alex|LocalMonero Thanks UkoeHB ! 
- 
tevador Thanks 
- 
ArticMine[m] Thanks  
- 
hbs[m] Thanks 
- 
bewa_c[m] Thanks 
- 
xmrack[m] Thanks 
- 
kayabanerve[m] tevador: regarding indirect curve cycles, won't they always be less performant due to the ops needed to move over? Have you given any thoughts to the security proof difficulty of such an op (I think just a scalarmul)? 
- 
tevador Yes, indirect cycles are less performant, but we don't know how much less. 
- 
tevador I think we just won't be able to merge the bottom-most proof. For the higher tree levels, the recursive structure is preserved with the tower-cycle. I don't think the performance penalty will be huge. 
- 
xmrack[m] Could someone ELI5 these curve cycles and why they are needed for the anonymity set to encompass the whole chain? 
- 
dangerousfreedom <xmrack[m]> "Could someone ELI5 these curve..." <- I'm still building my understanding of the math behind but moving from CLSAG to Grootle proofs means changing proof size from linear to logarithmic (which enables us to have more ring members with the same transaction size) though the verification time is still linear. So far I believe I understood the math behind. Now there are lots of hints indicating that a curve cycle 
- 
dangerousfreedom is the way to have a logarithmic (or even constant) verification time. Which means that we could have a huge anonymity set with very little impact on computation. 
- 
dangerousfreedom But maybe your question was more specific and I dont know how to answer :p 
- 
xmrack[m] So the verification time is what’s holding us back 
- 
dangerousfreedom If I understood correctly, yes 
- 
xmrack[m] Got it, thanks 
- 
UkoeHB Grootle proof verification time also scales at a much lower rate than CLSAG 
- 
UkoeHB you only need ~1 scalar mul per reference element in Grootle (optimized by multiexp), while CLSAG needs several unoptimized muls 
- 
xmrack[m] Searching online for grootle proof doesnt return much. Is there a paper or article somewhere that I could read 
- 
dangerousfreedom I guess the best is to see the references from Koe's paper 
- 
dangerousfreedom 
- 
dangerousfreedom I guess Koe coined this term. Grootle = Groth + Bootle 
- 
UkoeHB xmrack[m]: it is a simplified version of the proof used in Triptych and Lelantus Spark 
- 
UkoeHB I actually took the code from sarang's Triptych proof of concept 
- 
UkoeHB For the security proof I'm planning to copy the lelantus spark proof. It only needs some trivial modifications to match Grootle.