My latest invention is StatechainJS:
Basically it's like ecash but if the operator goes down you can recover your sats. Being like ecash means transfers are fast & free, but the operator can rob you, so be careful! Try it here: https://github.com/supertestnet/statechainjs
Are statechains more safer than ecash? Or, you mean it otherwise.
They are safer than ecash because this can't happen:
https://m.stacker.news/41306
That mint operator took over 800k sats with him when he shut down his mint. Those users got rugged. If this had been a statechain, those users would probably still have their money because you can withdraw from a statechain even if the operator disappears
800k sats is a lot and 5 days aren’t much. I hope this was also announced on nostr earlier.
It didn't occur to me until today but statechains have one very meaningful privacy advantage over ecash, which is this: an ecash mint can do "shotgun kyc" on its users by telling them, "I will not permit any more transfers or withdrawals unless you first submit your identification documents at this website <insert_chainalysis.com_equivalent_here>."
But if a statechain operator tried that, users could laugh in his face and use their already-signed unilateral withdrawal transactions to leave him behind forever. Protection from "shotgun kyc" seems to give statechains yet another advantage over ecash mints: you can leave without the operator's help, and you can dodge privacy invasions better than you can with ecash. Statechains FTW!
I'm confused. How can this statement be compatible with your comment?
Edit: Nevermind. I see the other comments.
For the sake of those who didn't see the other comments, let me elaborate:
Unlike ecash mints, which have full custody of your money, the only way a statechain operator can rob you is through a doublespend -- they can help someone "take back" money that they sent you. But if some authority figure demanded that a statechain operator confiscate coins from folks who don't kyc, they cannot help with that except if they first prepared a doublespend attack on every user.
Imagine this unlikely scenario: a government sleeper agent wants statechain user Ahmed to do kyc. The sleeper agent prepares to send a coin to Ahmed, but before doing so he convinces (or strong arms) the operator to setup a doublespend scenario. Namely, the sleeper agent modifies his software before sending his coin to Ahmed so that he can keep its private key after sending it. He also makes the statechain operator modify their software too to keep their private key. Then he sends Ahmed the coin. In this circumstance, the sleeper agent could threaten Ahmed to either do shotgun kyc or face the consequence: the sleeper agent will confiscate that one single coin. But that would be super weird, why would the government go through all the trouble of setting up a scenario where they can doublespend one suspect when they could just never send that person money in the first place? And would they really have the means to prepare and carry out that attack on every single user?
I don't think that scenario is realistic, so statechain users are almost entirely immune from the threat of shotgun kyc, whereas ecash users are not. Since it's impractical for an operator to steal (except via a doublespend), they also can't make the threat "I will steal your coins unless you do kyc!" which is all shotgun kyc really is.
Interesting twitter thread about this:
n0m3ncl4tur3 said:
I replied:
Interesting thread from the cashu telegram channel about this:
I'm cross posting a question I received on nostr because I think it's interesting.
Leito asked:
I replied:
We learn so much from you super. Thanks for all you do.
You're very welcome!
https://m.stacker.news/41323
^^me
I have some issues when testing this out. After I add the operators nprofile nothing happens?
https://m.stacker.news/42073
The errors I see in your console aren't very detailed but as a stab in the dark, they remind me of ones I got by running an operator and a user in the same browser, not in incognito mode. Try entering this into your console to clear your cookies:
localStorage.clear(); location.reload();Then make sure you only run the operator in an incognito window and the user only in a normal window. That should fix it unless something else is the problem.
Thanks ST seems my crappy is struggling but its working. Hows does one run it on mainnet?
I do not recommend it, you will probably lose all your money. If you want to use a statechain on mainnet I recommend mercurylayer.com which is actually built for mainnet usage. But if you run statechainjs.network="mainnet" I think that's all you need to change
Make everything fast and free, moŕe innovation please
Thank you for building statechainjs 🙏
You are very welcome! Thank you for building joinstr and that new privacy focused funding thingy
Thank @supertestnet! We learn a lot from you.
You are very welcome, sir!
They overdid it a bit and made some chemicals that are not what you want to use.
Public Goods: These are things everyone can use, like a beautiful sunset or a radio broadcast. When you enjoy them, it doesn’t stop others from doing the same.
Free Rider Problem: People often don’t want to pay for public goods because they’ll benefit anyway. Imagine not paying for a radio program – you can still listen!
Solutions: Entrepreneurs get creative. They mix good things (like the radio program) with less desirable things (like ads) to fund public goods.
Punishment: Sometimes, we need rules. In communities, if everyone shirks their duties (like not hunting), there won’t be enough food. So, punishment encourages cooperation.
Remember, public goods challenge our usual thinking, but we find ways to make them work! 🌟