-
UkoeHB
-
tevador
Today I cannot make the meeting, so here is a summary: I've phased out merchant wallets in favor of a unified key hierarchy. This is better for UX (users won't have to decide which type of wallet they need) and also for privacy (all wallets have unlinkable addresses by default).
-
tevador
-
UkoeHB
thanks tevador :) it's looking good, I just left some comments
-
tevador
I've also slightly changed the key derivation function by padding the secret key to the hash block length. This should be more secure. A new recoverable signature scheme for addresses is documented in chapter 3.4.
-
tevador
I'm now working on a different address encoding scheme based on some feedback. The address prefix will be more human-readable. Also all addresses will contain a signature, making them somewhat longer (about 188 characters), but this leads to an overall more robust and simpler design.
-
rbrunner
Those tiers seem to multiply like rabbits
-
UkoeHB
-
UkoeHB
1. greetings
-
UkoeHB
hello
-
Rucknium[m]
Hi
-
rbrunner
Hi there
-
gingeropolous
hi
-
UkoeHB
2. updates: anyone working on stuff they want to mention? tevador gave his update just before the meeting
-
UkoeHB
me: nothing to really update here; I am revising my wallet architecture based on tevador's ongoing work
-
Rucknium[m]
I am doing chain analysis work on BCH with the `igraph` R package. The packages is fast and fairly memory efficient. I think that it could be used to answer some Monero transaction graph questions that people sometimes muse about.
-
rbrunner
Have a quick example for such a question?
-
Rucknium[m]
Basically, questions about how intertwined the Monero "transaction graph" is, and how quickly a new output is intertwined.
-
Rucknium[m]
I am starting on the effort to get merchant input on Seraphis address schemes, but I think I should wait until the "menu" becomes stable.
-
rbrunner
7 entries and counting
-
rbrunner
-
jberman[m]
I've been working on subaddress support in monero-lws, I hit a point where I feel it makes sense to submit a proposal for lightwallet servers generally to support subaddresses in a clean way. planning to submit it today
-
Rucknium[m]
rbrunner: Given a particular output (i.e. vertex/node) of a particular age, what proportion of the Monero transaction graph can be reached from that vertex/node?
-
Rucknium[m]
In other words, what is the anonymity set of that output?
-
rbrunner
I see
-
rbrunner
4.5 key hierarchy is also golden in Tevador's linked gist. My, we will have so many secret keys, they build hierarchies :)
-
UkoeHB
cool jberman[m] thanks :)
-
UkoeHB
rbrunner: I think this hierarchy will be final, there isn't much more you can extend it to do (if anything).
-
rbrunner
Comforting, in a way. I hope well get all this complexity properly under control, that's all I worry.
-
rbrunner
It's fascinating of course, functionality-wise
-
rbrunner
How high we will tower over other coins with these capabilities?
-
Rucknium[m]
Once I pause my BCH work again, I will return to making the OSPEAD technical specification more layperson-friendly and then publicly release it. If anyone wants to give input on the draft, just let me know and I will send it your way.
-
UkoeHB
3. discussion; any discussion items? perhaps from the agenda? questions about JAMTIS maybe?
-
zkao
jberman[m]: awesome! TheCharlatan has an open pull request integrating lws in farcaster (he wrote a client lib in rust
github.com/TheCharlatan/monero-lws-rs)
-
rbrunner
Those lightwallet servers will also have to catch up to JAMTIS or whatever will get built?
-
rbrunner
Guess so, implementing some of those tiers
-
Rucknium[m]
UkoeHB: About your proposal to relax the 10 block lock: It seems that people do not compromise on ring signatures in order to enable quick spending. So somehow we need to figure out how to keep ring sigs but eliminate the 10 block lock.
-
Rucknium[m]
Which is what makes it an open research question.
-
moneromooo
We might want to clearly separate a jamtis address and its optional associated data like recipeint ids, invoices, etc. This would avoid the problems users have with integrated addresses, where people see two distinct addresses that are the same under the hood.
-
moneromooo
The CRC can still encompass the whole address.
-
endogenic
there may be other ways to accomplish quick spending such as batched chained payments or multiple outs on a single tx
-
moneromooo
the whle address + remainder.
-
endogenic
re keeping ring sigs, or we eliminate them :)
-
endogenic
it's about time we prioritized that
-
UkoeHB
I don't have a lot of optimism, but let me know if you have any ideas.
-
endogenic
any fingerprintability should be a priority to eliminate for us right?
-
rbrunner
Right, we have quite a number of people freaking out a little when the integrated address is not equal to the "base" address they see e.g. on their ledger
-
Rucknium[m]
I'll remind everyone that MRL is not systematically monitoring the academic literature about Monero, and solutions to our problems like the 10 block lock may lie in that literature. I still have the moneroresearch.wtf domain name, which hopefully will be Where To Find Monero Research in the future.
-
endogenic
ring sigs are cans of worms in that regard with open vulns
-
endogenic
Rucknium[m]: i'd say MRL should and has had that in its mandate - to stay up to date on the lit
-
Rucknium[m]
endogenic: Sure, but you need the resources to do it. We don't have the resources at the moment.
-
endogenic
sure we do
-
endogenic
we dont have the researchers to do it
-
UkoeHB
MRL isn't an entity, if you want to read papers then go do it
-
endogenic
indeed
-
gingeropolous
is there a pubmed equivalent for math/crypto ??
-
rbrunner
If one wanted to have a look, is there a go-to web address?
-
zkao
Usually one uses adaptor signatures for parallel composition of txs (independent outputs), and tx chaining for serial composition (dependent outs)
-
moneromooo
arxiv has a number of preprints.
-
moneromooo
"pre" being importand here.
-
rbrunner
So the bleeding edge?
-
Rucknium[m]
By resources I meant researchers. But last time I said "human resources" people didn't like that term.
-
gingeropolous
:)
-
rbrunner
Lol
-
moneromooo
You... you... consumer...
-
Rucknium[m]
And don't get me started on human capital...
-
UkoeHB
ok it seems like we are out of topics, how about we end the meeting here?
-
endogenic
thanks koe
-
Rucknium[m]
rbrunner: It's not just cryptography that "may be" useful to Monero is being published. People are writing on Monero specifically and we aren't checking what they are saying, which is both an opportunity and a threat vector
-
Rucknium[m]
-
gingeropolous
i mean, so would moneroresearch.wtf simply have the results of that google scholar output? maybe curated a bit to weed out stuff?
-
Rucknium[m]
The rough idea is yes, basically that. Curated and commented, categorized. Mostly for "internal" use, but we can direct potential new researchers there too.
-
UkoeHB
tevador: new architecture diagram
irccloud.com/pastebin/pXIH9Mfj
-
UkoeHB
My idea is RPC can wrap the WalletManager
-
wernervasquez[m]
When would be a good time to consider (can? should?) using ristretto? Do any of the upcoming changes lend themselves to such an additonal change?
-
UkoeHB
Now is probably a good time to consider it, if ever. The amount of work to implement and audit it would be significant though.
-
maxwellsdemon[m]
i do want to follow up regarding the DAA discussion from a few weeks ago
-
maxwellsdemon[m]
if time permits
-
UkoeHB
go for it
-
wernervasquez[m]
I'd be curious about the overall performance changes with ristretto. The equality check is faster. I am assuming the current key image check would be replaced by some part of ristretto.
-
UkoeHB
I think overall the effect would be small, since tx verification/construction is dominated by membership proofs and range proofs.
-
rbrunner
Rucknium[i]: Thanks for the Google Scholar link. The Monero-mentioning entries there seem to be spaced roughly about 5 days apart
-
Rucknium[m]
Right. Which illustrates the scale of the problem/opportunity.
-
maxwellsdemon[m]
ha, ironically i had a meeting that I forogt about so I had to rush to that.
-
maxwellsdemon[m]
I think the level of work required to really explore the DAA and properly test solution will require a great deal of effort. I think the wise thing for me to do now is finish up this publication im working on before switching gears to this effort
-
maxwellsdemon[m]
im not a fan of multi tasking or piecemealing my work: I think it leads to mistakes (especially if it is technical)
-
maxwellsdemon[m]
my estimate for working on the DAA, start to finish, complete with testing, is about 1 year full time (40 hours/week at 75% efficiency)
-
maxwellsdemon[m]
i base that on my past experience working R&D programs in control systems
-
selsta
-
selsta
there has already been a lot of research on it by an electrical engineer
-
selsta
-
maxwellsdemon[m]
I did, and I dont think this work is rigorous enough relative to the importance of the problem.
-
maxwellsdemon[m]
it isnt something I would personally feel comfortable publishing without disclaimers. testing and prototyping is different, however
-
tevador
moneromooo: the associated address data are not at all like the payment id. Sending to the wrong payment id (or none) means the payment won't be recognized by the recipient. The jamtis address metadata are only informational for the sender and don't affect the resulting transaction.
-
tevador
additionally, the invoice addresses will have the same ID displayed to the user as the non-invoice variants
-
tevador
UkoeHB: I think the performance benefit of ristretto could be noticeable because we wouldn't need to multiply every group element by 8^-1 in proofs
-
moneromooo
OK. I'm not sure why you are telling me that.
-
moneromooo
That is, I don't see the link to what I said.
-
UkoeHB
tevador: not really, I'd wager it's less than 5% overall
-
UkoeHB
most of tx verification cost is scalarmultKey in the membership proof (unless you have very small ring size)
-
selsta
ristretto would mean we lose supercop (ASM implementation), sounds like an overall performance loss
-
tevador
moneromooo: then can you clarify the issue?
-
UkoeHB
selsta: we only need the encoding/decoding part from ristretto, everything else can stay the same I think
-
moneromooo
Alice buys stuff from Bob. Bob gives Alice an adress containing the price for that stuff. Alice sees a different address because her software "unwrapped" the address Bob gave. Alice freaks out.
-
moneromooo
So, I think Alice would not freak out if the two addresses had an exact same prefix, with a clear demarcation where the extra data begins (eg, a / character or similar).
-
tevador
I still don't understand what you mean by "Alice sees a different address"
-
moneromooo
She compares both addresses and notices they're not the exact same.
-
tevador
Why would the software display a different address?
-
tevador
The software will display something like h8eug-w77qs-aaf7m-ww63i-hn33c as the recipient ID, which is independent of the address metadata
-
moneromooo
Because people would program it to do that -_-
-
tevador
it's literally impossible to "unwrap" a jamtis invoice
-
moneromooo
So you're assuming that all software will display a canonical form, and therefore it'll be OK ?
-
moneromooo
OK.
-
tevador
the key K3 will change if you modify anything in the address
-
tevador
basically, you need 3 keys K1, K2, K3 to construct a tx. Address contains K1, K2 and K3 is calculated based on the hash of the address contents
-
selsta
what happened with integrated addresses was that wallets would display the base address with the payment id separate so people would freak out
-
tevador
that wounds like bad wallet design
-
tevador
sounds*
-
selsta
afaik ledger still hasn't fixed this to this day
-
selsta
not sure if the GUI did :D
-
rbrunner
Which may instill a bit of humbleness into any assumptions how fast we will have an ecosystem supporting something so multi-faceted and multi-functional as JAMTIS
-
rbrunner
If after so many years proper UI/UX for integrated addresses is not yet here, LWS servers just NOW get a PR to support subaddresses, MyMonero to this day does not fully support subaddresses ...
-
rbrunner
And now we have a proposal on the table with 7 tiers. Really, I am in awe, it's pure genious, but oh all the additional complexity.
-
rbrunner
I know, know, I start to repeat myself :)
-
moneromooo
Then we better add this quick to leave people more time to get it done ^_^
-
rbrunner
Good idea ...
-
rbrunner
Maybe we need WOW to go ahead, and we iron out kinks based on their experiences.
-
tevador
Not all of the tiers have to be implemented in software from the beginning. But the scheme supports those access levels if they are deemed useful in the future to implement.
-
UkoeHB
I am hoping a more modular design will make it easier to implement different pieces ad hoc and third-party. It should mostly be a matter of porting things around, instead of needing to grok wallet2 first.
-
maxwellsdemon[m]
<rbrunner> "And now we have a proposal on..." <- Something to keep in mind: scope creep. More isnt better if you cant execute. I always tell people to be mindful of this and work programs in an iterative fashion. For example: get the most important features first, then the next most, so on and so forth. There are plenty of examples of failed efforts due to this. The Librem 5 is an example.
-
maxwellsdemon[m]
And by contrast, the PinePhone is an example of good project management
-
tevador
It's still better to have a design that supports more rather than less because we're unlikely to have a second chance to do a complete overhaul of addresses. When the proposal is complete, I will also add a "minimal implementation" specs that can ignore all of the extra features.
-
rbrunner
I agree, it's a good chance, and I don't doubt that much thought went already into this, and will continue to go into.
-
rbrunner
But on the other hand the project has grown to massive proportions, don't you agree?
-
rbrunner
Modularity is a big plus, and may enable to pull this off. Just let us learn from similar things, in a broad sense, that ran into problems.
-
tevador
seraphis is a massive project
-
rbrunner
Take USB 3 / 3.1 / 3.2 / Thunderbolt whatever.
-
rbrunner
Despite best intentions, massive consumer confusion, big growing pains, things that are not compatible (yet) etc.
-
moneromooo
The "implement what tiers you like" angle does sound a lot like that.
-
rbrunner
True, Seraphis is massive, but I think from UkoeHB's "address schemes" table to JAMTIS is quite a jump. Or do I mis-interpret? Might be, I confess.
-
rbrunner
Maybe with good project management, in addition to the without-a-doubt brilliant technical work so far, this will work.
-
rbrunner
However, if I look at Monero's track record there so far, with "loose consensus" and all ... er ...
-
rbrunner
Well :)
-
rbrunner
Maybe define a minimum viable functionality and then hide all the other, more advanced stuff, until the minimum is properly implemented :)
-
UkoeHB
I think it's important to fully define the entire API, otherwise there may be painful/infeasible refactors down the road.
-
UkoeHB
the entire core API*
-
rbrunner
Anyway, I am more than a little bit out of my league as far as the whole technology and crypto is concerned, I may well overestimate the problems now.
-
rbrunner
Or the refactors simply don't happen, right, see wallet2 ...
-
rbrunner
Today there was a thread on Reddit where somebody seriously argued BTC has big advantages over XMR because it's almost guaranteed that BTC won't change. Interesting.
-
rbrunner
Alright, enough rumbling from me for today. 'Night :)
-
tevador
I guess you can never make everyone happy. Some people will complain about missing features, some people will complain about too many features.
-
maxwellsdemon[m]
my recommendation is to make sure you have a clearly defined task list and labor estimate for each activity, specific time lines arent as important
-
maxwellsdemon[m]
i meant to send that an hour ago
-
maxwellsdemon[m]
my bad, pulled in too many directions
-
maxwellsdemon[m]
regardless, im not a crypto or CS guy, but any big undertaking needs a solid plan of execution with clear goals. Do not skip this step and if anyone needs my help or wants to run something by me I cam set aside some time
-
maxwellsdemon[m]
jesus my typing is bad - digital keyboards are too small for my hands
-
maxwellsdemon[m]
<rbrunner> "Today there was a thread on..." <- That is a trade off between pradictability and adaptability. Change is good if it is useful for survival and sustainment. For its own sake not so much.
-
wernervasquez[m]
<UkoeHB> "selsta: we only need the..." <- Wouldnt you also need the ristretto equality check and hash to point algo?
-
wernervasquez[m]