This text is featured in Bitcoin Journal’s “The Withdrawal Problem”. Click on right here to subscribe now.
A PDF pamphlet of this text is on the market for obtain.
Chaumian ecash, a privacy-preserving fee system, was conceptualized within the early ’80s and identified to be the primary cryptocurrency ever invented. Though this expertise skilled a interval of dormancy, the arrival of Bitcoin has revived curiosity on this expertise. As we stride into an period more and more involved with digital privateness, ecash is experiencing a renaissance, primarily attributable to our discovery of Bitcoin because the foundational cash layer for the web.
Cashu permits the usage of ecash on Bitcoin, empowering atypical customers to function a mint that’s linked to the Lightning Community. This permits everybody to supply completely non-public, untraceable Bitcoin fee companies to their friends, social circles, or bigger communities.
Chaumian mints use a way generally known as blind signatures, which obscure consumer actions from the custodian managing the service. Customers, upon making a fee over the Lightning Community, obtain ecash that’s saved as knowledge items on their units, similar to bodily money. These ecash tokens, denominated in satoshis, may be exchanged between customers or be transformed again right into a fee on the Lightning Community with the assistance of the mint.
An necessary benefit of ecash is that transactions between customers can happen by any communication medium, similar to a chat shopper or a QR code, with the mint not concerned within the precise token trade. This ensures the mint is oblivious to transaction specifics, together with who transacted with whom. Even throughout fund withdrawal from the mint, consumer id stays nameless.
The combination of Cashu guarantees a realm of near-perfect privateness on the earth of Bitcoin custody. This tutorial explains how one can arrange and run a Cashu mint right this moment and turn into a blinded Uncle Jim your self.
Cashu on LNbits
The simplest option to run a Cashu mint is thru the LNbits Cashu extension. For that, you already want a Lightning node with LNbits put in. In case you are utilizing well-liked node distributions like Umbrel, search for the LNbits app and set up it. As soon as LNbits is ready up, it takes solely a few clicks: Go to the extension overview and search for the Cashu extension and set up and allow it. You must now see the extension obtainable for all customers of your LNbits occasion.
As a consumer, click on on the extension and create a brand new Cashu mint. Enter the main points in your mint and choose the backend pockets that can be used for funding the mint. That’s it! You may copy the mint URL and use it with any Cashu pockets, similar to Nutstash.app or Cashu.me.
Beware, you’re answerable for retaining your mint operational and the deposited funds on this pockets protected. You additionally must handle your node effectively such that your customers can simply make and obtain funds on the Lightning Community. Moreover, you additionally don’t have any method of figuring out the exercise of your customers. This implies you’re unable to censor anybody particularly from utilizing your mint. Chaumian mints are so privacy-preserving that censorship is virtually unimaginable.
Cashu Nutshell
Probably the most superior method of operating a Cashu mint right this moment is to make use of the reference implementation known as Nutshell. For this, you first need to clone the GitHub repository and comply with the directions of establishing your Python setting within the Readme.
As soon as your setting is prepared, you must arrange your mint configuration which incorporates connecting it to a Lightning backend. At present, you need to use any LNbits occasion as a Lightning backend (which in flip permits you to use all well-liked Lightning node implementations). Within the close to future, additionally, you will have the ability to use your Lightning node instantly with out an LNbits middleware. Nevertheless, for now, that is the really useful method since LNbits permits you to separate entry to your node’s funds to devoted wallets and thus serves as an additional layer of safety in case one thing goes improper.
To arrange your mint’s preferences, copy the instance configuration file .env.instance to .env and edit the next entries within the file:
# Community settings
MINT_LISTEN_HOST=127.0.0.1 # Use 0.0.0.0 for public entry
MINT_LISTEN_PORT=3338
# Lightning funding supply
MINT_LIGHTNING_BACKEND=LNbitsWallet
MINT_LNBITS_ENDPOINT=https://legend.lnbits.com
MINT_LNBITS_KEY=YourLNbitsAPIKey
Observe that if you happen to simply need to experiment (or develop) and never join your mint to the Lightning Community, you need to use the backend sort “MINT_LIGHTNING_BACKEND=FakeWallet” which is able to deal with all invoices as routinely paid. It’s nice for making an attempt issues out!
Lastly, we set some contact particulars in order that our customers can attain us in case one thing goes improper, and we additionally set some security limits such that solely small invoices may be created on our mint.
MINT_INFO_NAME=”Bitcoin Journal’s Cashu mint”
MINT_INFO_DESCRIPTION=”Conceal your nuts with Bitcoin Journal”
MINT_INFO_DESCRIPTION_LONG=”This mint is used for a particular occasion hosted by Bitcoin Journal. Please withdraw your funds on the finish of the occasion.”
MINT_INFO_CONTACT=[[“email”,”contact@me.com”], [“twitter”,”@me”], [“nostr”, “npub…”]]
MINT_MAX_PEG_IN=10000 # 10k sats most per bill
Bear in mind that you may’t establish particular person customers. Which means, if you wish to shut your mint once more, you must give each consumer the chance to withdraw by themselves. Add the setting “MINT_PEG_OUT_ONLY=TRUE” to your configuration file in order that solely peg-outs are allowed if you wish to shut down your mint.
This text is featured in Bitcoin Journal’s “The Withdrawal Problem”. Click on right here to subscribe now.
A PDF pamphlet of this text is on the market for obtain.