16:24:39 There is a meeting in this channel in about 40 minutes 16:24:39 https://github.com/monero-project/meta/issues/626 16:34:45 ah crap time change 16:59:32 To all meeting participants: please disclose any potential conflicts of interest. 17:00:15 lolwut 17:00:21 Where did this disclosure bot come from? 17:00:32 secret keys too ? 17:00:46 disclosure-bot-x: Please define "conflict of interest" 17:02:04 meeting time: https://github.com/monero-project/meta/issues/626 (for those who time changed, now 1700UTC comes an hour earlier) 17:02:12 1. greetings 17:02:12 hello 17:02:30 Hi! 17:02:39 Hi 17:02:44 Hello 17:02:53 Hello 17:02:57 Hi 17:04:31 2. let's start with updates; what has everyone been working on lately? 17:05:40 Me: I completed my Seraphis PoC for performance testing, and started collecting test results (thanks to gingeropolous for his help :)). While doing that, I discovered a rare bug (https://github.com/monero-project/monero/pull/8052). 17:07:30 Analysis of UkoeHB 's cryptography performance benchmarks. Finished final version of OSPEAD CCS proposal. Gave initial thoughts on the "decoy collision" issue raised by an Aeon dev. Brainstorming about research-specific funding mechanism. BCH work. 17:10:00 If no one else has updates, we can move on. We might be missing people due to the time change. 17:10:00 3. discussion; anyone want to discuss something from the agenda? 17:10:55 Myself and spirobel are in early discussions of putting together a hub for monero-related research 17:11:43 Paper summaries, categorizations, RSS feeds etc. Etc. 17:11:46 Oh, right! I wanted to discuss that. We should make a bounty and think about what the requirements should be. 17:11:51 "a hub for ... research" what does it mean ? 17:12:24 Tentative name: "Where to Find Monero Research: moneroresearch.wtf" I bought the domain name. 17:13:19 wfaressuissia[m]: The number of papers on Monero being published by external researchers has skyrocketed. We are not keeping up with reading them. 17:13:40 wfaressuissia[m] there are many academic papers published about XMR and XMR-related topics which are basically being ignored by the visible community 17:13:51 Moser et al. (2018) alone now has over 80 citations. 17:14:47 citations don't mean that paper is the main reference 17:15:51 Anyways, this is very early stages so not much more to say there 17:16:02 wfaressuissia[m]: We don't even know that since we haven't read the papers. That's part of the problem. 17:16:03 thanks carrington[m] 17:16:18 If anyone is hiding away their own private infodump of papers and relevant research please sling it my way 17:17:21 I think it would be good to have a portal that automatically pulls papers and their essential data (authors, title, abstract, etc.) based on keyword search and/or when key papers are cited. And maybe even allows a permissioned login system to make brief notes about the paper. 17:17:46 carrington: Will do. 17:17:58 Rucknium[m]: like google schoolar? 17:18:40 Google scholar API could help, yes. There are other systems, too, that could be pulled from. 17:20:06 I'd be looking to write an abstract-style "how this relates to Monero" for those papers where the connection isn't obvious 17:20:37 Anyways, regarding actual research, is there anything we can say about these performance numbers at this stage? 17:21:26 UkoeHB has just generated new performance data. Is it ready for me to analyze, or still tweaking, UkoeHB ? 17:21:40 It is ready; this time in csv format too :p 17:22:28 Nice :) Although all my parsing code is now useless I suppose. A negligible sunk cost. 17:22:36 It would be more useful to have list of search engines (ideally working via tor too) for papers where anyone can get results for any keyword (not only monero) 17:23:06 Do number already allow to speculate about the final overall speed of "Monero on Seraphis"? Will it sync the blockchain slower? Much slower? Faster? Will wallets scan faster? Etc. 17:23:10 Good thing I ran into parsing issues or it may have taken more time to realize that bug exists. 17:23:54 *numbers 17:23:56 hah yeah 1 in 600k cases... 17:24:28 rbrunner: it should allow relative comparisons of blockchain sync times with different parameters 17:24:34 wfaressuissia[m]: I would prefer a shared repository for the papers, or the abstracts of the papers at least. 17:24:43 Wallet scanning is a separate issue 17:25:35 I see. But maybe the speed comparison with Monero as it is now will fall out of this as a by-product? Maybe not. 17:26:02 Yes it should allow comparisons with current Monero 17:26:12 Since I collected results for CLSAG 17:26:26 Ah, interesting. 17:26:51 CLSAG after BP+ and ring size 16* 17:27:00 This is very interesting. Link? 17:27:04 So it might show soon which the direction things will take. 17:27:16 ... and useful 17:27:31 ArticMine: https://github.com/Rucknium/misc-research/tree/main/Monero-Cryptography-Benchmarks I think Rucknium[m] will upload the latest data at some point. 17:27:41 ArticMine: Old (pre-bugfix) data is here: https://github.com/Rucknium/misc-research/tree/main/Monero-Cryptography-Benchmarks 17:28:26 Bleeding edge research :) Even the stats have bugs ... 17:28:42 rbrunner Monero code had bugs, not the stats :p 17:28:55 This one: https://github.com/monero-project/monero/pull/8052 17:29:16 That was enough to affect outcome? Surprising. 17:29:26 The issue was that extremely rarely the verification would fail, so the results would not be output. And the failure mode made parsing difficult 17:29:27 Thanks 17:33:10 How about: "Seeing a bug in Aeon transactions where multiple inputs in one transaction use the same output. " https://github.com/monero-project/monero/pull/8047 17:34:01 It's not really a bug. It's just how things work now. The question is whether there are any costs or benefits to trying to avoid these "collisions". 17:34:17 This seems to be a consequence of small rings, but the privacy hit is not as big as the fact that the rings are small anyways 17:34:59 The collisions would seem to happen much more often on Aeon rather than Monero since Aeon has much fewer transactions and therefore fewer outputs to choose from in a given time window. 17:35:06 It makes the implementation simpler when there are few outputs in the chain (just after hardforking to a new epoch). 17:36:22 You should look at the rings on Monero testnet, where we have fewer txs still. Sometimes they look *really* funny. But I can't see how that matters. 17:36:38 Wait, under what circumstances would the decoy selection algorithm not be able to select outputs from before a hard fork? 17:36:48 Any privacy hit would be dependent on external data. E.g. if the duplicated decoy is a known spent output, then you lose 2 decoys instead of 1 17:37:07 I believe that happened when RingCT went live. It will also happen if Seraphis goes live. 17:37:35 It happens when you need to transition for some reason. E.g. transition to hidden amounts, or transition to a new key image construction. 17:37:56 Oh boy, more statistical issues to dive into! 17:38:12 Er ... and the very first new txs have nothing at all to select as decoys? 17:38:33 Interesting. Maybe we should organize users to spam the network with churned transactions at the upgrade time? 17:39:30 It seems strange since old genuine outputs can be spent. 17:40:33 if there would be any advantage in doing this activity then any attacker could do the same, so it's useless 17:40:44 this system should work independently from any users actions 17:40:44 When old outputs get spent, the new outputs in their tx are 'in the new format'. Also, new coinbase outputs are 'in the new format'. 17:42:17 So some of the ring members would have the old format and some would have the new format. It seems that decoys could still be selected from before the hard fork, right? 17:42:40 No, rings can only have outputs with a single format. So all new outputs would be in 'new format tx'. 17:44:12 So when you spend a very old CLSAG output, it will be obvious that you are doing so? Because of no recent decoys selected 17:44:12 Ok. So there would be a mix of old-style and new-style. Um, let me get this straight... 17:44:33 Correct 17:44:56 This is an unavoidable engineering problem. 17:45:20 Well, still not clear how long before the hardfork that old output came into existence, right? 17:45:36 s/unavoidable/unsolved 17:45:37 [old,old,old]-->[new] , [new,new,new]-->[new] would be allowed after the hardfork 17:45:37 [old,new,new]-->[new] , [old,old,old]-->[old] would not be allowed. 17:45:38 And that it's CLSAG is obvious anyway 17:46:12 Rucknium[m]: yes 17:46:17 I think preventing duplicates is the technically correct thing to do from a stats perspective. In the tx sanity check, it first checks if there are >10k outputs available to use before checking there is only a small margin of duplicates. Could do something like that in the wallet to avoid challenges around fork time to a new format 17:47:35 UkoeHB: Ok. There are many thorny statistical issues in such a hard fork, then. We can research how to have a smooth transition. 17:48:09 How would the decoy selection look like when spending an old clsag output? Would it still follow the usual distribution (just traslated to older blocks), or would it change? 17:48:47 merope: that sounds like an _open research question_ :) 17:49:07 Hehe 17:49:36 UkoeHB: Yes, that's what I'm saying. Needs study. 17:50:21 Random thought: there should be a stroger bias towards older outputs after a while, because otherwise the last clsag outputs will show up in multiple conversion transactions, while the older ones would show up only once at most (ie when they actually get spent for conversion) 17:50:43 (Just throwing that in open) 17:51:13 I guess we could look at the pre-clsag to clsag conversion txes for reference 17:51:30 Looks like a whole new can of worms opened today. 17:52:04 Wouldn't all the CLSAG outputs eventually end up in the long tail of the distribution? So little difference between older or newer CLSAG outputs 17:52:11 merope it would be pre-ringct to ringct 17:52:27 Oh right 17:52:42 rbrunner: I agree. Yum! Tasty research worms! 😋 17:53:36 we could analyze older data of known spents too, but ignore the X most recent outputs at any point in time, and look at different values of X 17:55:28 Before we close, I would invite everyone to think about what an independent funding mechanism focused specifically on research could look like, and maybe post your thoughts in #monero-research-lounge:monero.social 17:57:30 hmmm, in this case, maybe it makes sense to "throw away" the portion of the gamma curve (or whatever curve is used) that is unrepresented. So as you move further away from the fork height to a new format, you start ignoring a larger and larger portion of the curve that is more recent 17:57:40 Is that doc still private ? 17:57:54 wfaressuissia1: what doc? 17:58:08 rucknium[m]: your document ... 17:59:37 My HackerOne submission is still private. I edited the language on disclosure in my CCS proposal recently. 18:00:16 The "Document A", i.e. OSPEAD technical specification, is still getting feedback, and I hope to push out a public version within the next week. 18:00:32 Ok we are at the end of the hour. Thanks for attending everyone. 18:00:44 also update from me: initial view tag implementation is finished, working on finalizing tests at this point. Sorry the daylight savings time switch messed me up 18:01:29 How would you test new mechanism for decoy selection without any tools written by mj-xmr ? Are there no open source alternatives ? 18:01:37 rucknium[m]: for you 18:03:51 wfaressuissia[m]: Yes, there are a million open source alternatives. One of the main benefits I get from using mj-xmr's tools is that I have another time-series-oriented person to bounce ideas off of. 18:04:48 My research can proceed without use of mj-xmr's tools, but they are nice to have. 18:11:24 "also update from me: initial..." <- Same thing happened to me. 19:00:15 Has there been any research done on homomorphic encryption for chain sync? 19:28:40 yanmaani: probably no 19:53:45 i imagine there's no way to avoid it being O(n) over the history 20:21:39 Not without privacy losses (eg using an ‘account’ model instead of ‘txo’ model). 20:54:54 UkoeHB: I mean, can't ElGamal for example do multiplication of two ciphertexts? 20:55:08 a*b*c*d*e*f = 0 if any of those are 0 20:55:29 and decrypting random data gets you (except with negligible probability) non-zero, right 21:00:43 so if each transaction had a field with encrypt(0, viewkey), wouldn't that enable you to do this, with the right cryptosystem etc?