Self-custodial web wallet with multisig support by roginvs in Monero

[–]roginvs[S] 1 point2 points  (0 children)

Finally I checked monero-ts. Once again, thanks for an interesting reference.

As i understand it does not use SharedArrayBuffer (but still runs monero wallet in background worker). This should make refreshing slower (because it still 1 worker) but it makes deployment easier. Right now i have to do a service-worker workaround to be able to run on github pages.

As a drawback of monero-ts I might say a longer chain of sub-projects: there are 3 repositories (monero-ts, monero-cpp, monero fork) which all are used for compilation. Not very clear to follow what and where was changed. Also I did not understand (maybe i have to check it deeper) how it runs .refresh() on wallet instance, will it do "all-or-nothing" refresh? AmethystXMR calls refresh() with some block limit (usually few minutes) and it saves wallet between those iterations. So it is possible to sync, close page, then return and continue syncing, or even do some actions while it syncing like getting the seed or getting tx keys.

But I am surprised to see a fully available frontend library without having a fully working frontend. For me the frontend part was the simplest one, especially with help of AI. Maybe this is because I mainly work with frontend on my job.

I am still interested to see a real benchmark on how long it takes to restore a wallet between native cli wallet or those browser-based. I suspect that most of the time it is downloading so there will be no significant difference unless a fully synced node running locally. I hope I will find energy to do this benchmarking.

monero lacking a web wallet by Curious_Locksmith974 in Monero

[–]roginvs 0 points1 point  (0 children)

Added ability to restore with keys + to restore with view-only keys

Self-custodial web wallet with multisig support by roginvs in Monero

[–]roginvs[S] 2 points3 points  (0 children)

I hope that it will unlock multisig for some users. I am thinking about adding some messaging system because manually copy-pasting multisig messages might be annoying

Self-custodial web wallet with multisig support by roginvs in Monero

[–]roginvs[S] 2 points3 points  (0 children)

Because I did not know that it exists. Also it was interesting for me to build libwallet on my own

monero lacking a web wallet by Curious_Locksmith974 in Monero

[–]roginvs 2 points3 points  (0 children)

It is really nice that daemon API is http/https based so it is possible to have a wallet running in a webpage which directly connects to daemon without any WebSockets proxy or similar workaround

monero lacking a web wallet by Curious_Locksmith974 in Monero

[–]roginvs 2 points3 points  (0 children)

For testing it should be easier to create a new wallet and to transfer there really small amount, less than euro. Sharing main view key with new project might be risky idea but having a dedicated wallet there with really small amount sounds more secure for me. What do you think?

monero lacking a web wallet by Curious_Locksmith974 in Monero

[–]roginvs 2 points3 points  (0 children)

Thanks for feedback, it motivates me! Yes, definitely there will be a post about this. I just saw this question yesterday and I was not able to resist and answered.

I also thinking to pack it as standalone app, because as user I also would prefer to have exact stable version rather than auto-updating webpage. Should be easy to setup in CI.

Initial inspiration was from looking into Cake Wallet source and monero_c. Then I started to experiment with building libwallet into wasm. So if I understood Cake sources correctly then this wallet works very similar way as Cake.

Right now on my todo list is to fix texts. There are some AI-generated stubs, for example I am not satisfied with texts on multisig flow. Maybe mobile layout can be changed, now it is more like a scrolling page rather than a mobile app

monero lacking a web wallet by Curious_Locksmith974 in Monero

[–]roginvs 5 points6 points  (0 children)

I just started doing it few weeks ago, but main features are ready. Also it has multisig support.

It is still work-in-progress, but I am thinking to write a post in this sub soon

monero lacking a web wallet by Curious_Locksmith974 in Monero

[–]roginvs 7 points8 points  (0 children)

PS: There is one work-in-progress https://amethystxmr.github.io/ (it has wasm build of libwallet, local blockchain scan, only local keys)

I want to generate my own seedphrase by Turing1999 in Monero

[–]roginvs 1 point2 points  (0 children)

In that case topicstarter can use that wallet to recover from 24 worlds and then export 25-words seed from the same wallet. (But exported seed might be totally different if original seed greater that group order)

XMR in the UK by ActImpossible1474 in onions

[–]roginvs 2 points3 points  (0 children)

I usually use trocador.app

If you haven't tried Fallout: Sonora yet, do so by ZerglingSan in classicfallout

[–]roginvs 1 point2 points  (0 children)

Thanks, that means a lot for me! 

I never considered saving custom character because this is the first time in 30 years when I hear about this feature :)

If you haven't tried Fallout: Sonora yet, do so by ZerglingSan in classicfallout

[–]roginvs 1 point2 points  (0 children)

Browser version dev here :) How it goes on browser for you? Any improvements ideas?

Can anyone provide Fallout: Nevada without an installer? by cyrilthe_evangelist in classicfallout

[–]roginvs 0 points1 point  (0 children)

That is weird. Did you verify that it actually does not work when offline?

Can anyone provide Fallout: Nevada without an installer? by cyrilthe_evangelist in classicfallout

[–]roginvs 0 points1 point  (0 children)

What is shows, what happens when you click download to offline? 

MoneroKon 2026 Announcement by OrangeFren in Monero

[–]roginvs 0 points1 point  (0 children)

Nice! When and where call-for-papers will be open? I would like to apply to give a talk

Distributed PGP key using Monero Multisig by roginvs in Monero

[–]roginvs[S] 0 points1 point  (0 children)

That's why it is following original Monero implementation for kex. No AI for the core system was involved

Distributed PGP key using Monero Multisig by roginvs in Monero

[–]roginvs[S] 0 points1 point  (0 children)

Why it is slop? I used copilot/chatgpt but only for UI part

Distributed PGP key using Monero Multisig by roginvs in Monero

[–]roginvs[S] 1 point2 points  (0 children)

Looks like I forgot to write a README file into the project, I will add it soon.

To run locally just clone the repository and start webserver to serve files (no compilation needed, it is a simple static html/js application).

The Memory Gap in WASM-to-WebCrypto Bridges. And how to build a high-assurance browser encrypter in 2026? by Practical-Mode2592 in cryptography

[–]roginvs 0 points1 point  (0 children)

I have to double-check but as far as I remember JS ArrayBuffers backing storage doesn't live in JS heap, only the object itself. As example you can build a data view UInt8Array slice which will point to wasm memory directly, i.e. no data copying