Step-by-step guide for buying crypto: Step 1
TL;DR: Where to buy?
I would register an account at the exchange Kraken and transfer from your bank to them. You need to submit an ID and some proof of residency depending on your withdrawal limits. https://www.kraken.com/
Step-by-step guide for buying crypto: Step 0
TL;DR: What to buy?
This is hard to know, since the market seems to not care about the fundamentals.
I would start by split up my portfolio into:
40% Ethereum (ETH)
40% Bitcoin Cash (BCH)
20% Monero (XMR)
Next up Step 1: Where to buy? https://read.cash/@jonny/step-by-step-guide-for-buying-crypto-step-1-f9b7cdef
Why not Bitcoin (BTC)
I was blown away when I discovered Bitcoin in 2011. I was able to send Bitcoin to anyone with very low fees, a system where I could transact with anyone I wanted, without a third-party that needed to approve it.
Many non technical people do not know about the scaling debate that have been going on since 2014. It ended up splitting the community into two camps in August 2017, those who wanted to scale on-chain and those who wanted to have layers on top of Bitcoin.
One of the scaling solution that was sold was **Segregated Witness** (SegWit) and the other was Lightning Network (LN).
SegWit was introduced in August 2017, have done little in practice to increase the transactions per day. See chart
The adoption of Lightning Network is very low and suffer from design problems and being fragile. In order to use LN, you need to lock up BTC before receiving. Acording https://defipulse.com/ the BTC that is locked up is much lower than many of the ETH projects that use wrapper BTC in their contracts.
The end result is that the more people wanting to transact on BTC, the more expensive it will get. Those who pay less than the averge will have a slow and unreliable experience. Below is the average fee for sending a Bitcoin transaction.
Today the average is $14, when you are reading: https://bitinfocharts.com/comparison/bitcoin-transactionfees.html#3m
Self introduction
About me
I have been involved in the Bitcoin ecosystem since 2011. I'm currently maintaining cryptocurrency projects + it's dependencies as packages for Fedora Linux.
I'm currently living in Bergen, Norway.
Credentials
BitcoinJ https://github.com/bitcoinj/bitcoinj/commit/49d676160c1d04eee78bad50e2369d339e71c537#diff-3d350169560e75d0cf9fc8e3574a3639
MultiBit https://github.com/Multibit-Legacy/multibit/commits?author=hegjon
Monero https://github.com/monero-project/monero/releases/tag/v0.12.3.0
Accept Bitcoin Cash https://github.com/orgs/acceptbitcoincash/teams/everyone/members
Fedora Linux https://src.fedoraproject.org/user/jonny/projects
Profiles
GitHub https://github.com/hegjon
LinkedIn https://www.linkedin.com/in/jonnyheggheim
Bitcointalk.org https://bitcointalk.org/index.php?action=profile;u=8910
Reddit https://www.reddit.com/user/hegjon
Software background
Most of my career I have been on the backend with a 80/20 mix as a developer and sysadmin.
I have expertise from writing high performance servers in Java, Scala and Node.js.
Follow up: Collabration on libsecp256k1
Background
Two weeks ago I published https://read.cash/@jonny/collabration-on-libsecp256k1-0b52dc75.
Thanks to read.cash for providing an easy platform to spread and discuss ideas. That was my first post I wrote on read.cash.
Bitcoin ABC
Thanks to Amaury Séchet that stepped up and created a git repo that is easy for everyone to re-use, only hours after discussing this issue. https://read.cash/@deadalnix
This library was publicly anounced two days ago at Bitcoin Cash Development video meeting #1 - January 16, 2020 https://read.cash/@DavidRAllen/bitcoin-cash-development-video-meeting-1-january-16-2020-292555d5
Electron Cash
Electron Cash have switched to the library provided by Bitcoin ABC
Fedora Linux
Fedora now ships with with the same library provided by Bitcoin ABC.
Bitcoin Verde
Bitcoin Verde would like to switch to the library provided by Bitcoin ABC. See more here https://github.com/SoftwareVerde/bitcoin-verde/issues/6.
SLP meets tickets
Ever since SLP was made public I have been thinking about how to implementing a ticket system using it. https://simpleledger.cash/
Today, most of the tickets to conferences and concerts are sold as a QR/bar-code in some form. So you would never know if tickets bought used from third party have been sold many times or simply just counterfeited.
How to represent a ticket
In this use case I am going to use un-numbered tickets for an inmaginary conference sold over Internet for Bitcoin Cash.
The conference would start by create a new token, with the number of unit that matches the number of max ticket it wants to sell.
The decimal place should be set to zero, to avoid people having half a ticket.
The workflow
The buyer would fill out optional information and the required address he wants to receive the token. A wallet like Badger Wallet could make this more user friendly. No registration is needed. https://badger.bitcoin.com/
Instead of requiring users to provide an address to send the ticket to, the ticket can simply be distributed as a PDF or image via QR code. Then users can simply provide a print-out at the gate, or sweep the code to move the token-ticket to their wallet.
The seller would have a server that generates an unique address for each trade, once the buyer pays the agreed sum, then the seller would transfer the token to the buyer.
The seller could also sell via an exchange that lists SLP tokens.
Before the conference starts, the buyer can sell his ticket to others, the new buyer would be 100% sure that the ticket is genuine.
When the participant arrive, the ticket holder would send back the token back to the conference and in return get some kind of badge, wrist band or some other proof that he is allowed into the conference.
Paricipants that bought tickets via paper-wallets and show their email or printout with the private key, this wallet can be swiped at the entrance by the conference.
What is missing?
The main missing component would be a service that holds the SLP tokens and transfers it automatically when a customer have paid for the ticket. I have started on a prototype that uses Bitbox SLP SDK. https://github.com/Bitcoin-com/slp-sdk
The participants could use any wallet that supports SLP, but I think only Badger wallet would be user friendly as of today.
Smaller conferences could use any wallet that supports SLP to have the participant return the token back to them.
Bigger conferences would need to have dedicated custom wallet to speed and automate the registration process. One option could be to fork Bitcoin Cash Merchant (BCH) https://play.google.com/store/apps/details?id=com.bitcoin.merchant.app
Paper wallet
Thanks to Chris Troutner, for pointing out the value in a ticket stored in a paper wallet. https://twitter.com/@christroutner
The state of r/Bitcoin
An article I shared on r/Bitcoin was removed as off topic. https://bitcoinmagazine.com/articles/do-coinjoins-really-require-equal-transaction-amounts-for-privacy-part-one-cashfusion
I made a screen recording (1:55 long), where I had a walk through of the state of r/Bitcoin today.
Enjoy!
https://youtu.be/wup_eDr6KRQ
How to use Fulcrum RPM package
Calin Culianu aka cculianu, an Electron Cash developer have started a new project called Fulcrum. https://github.com/cculianu https://github.com/cculianu/Fulcrum
I decided to package Fulcrum for Fedora Linux and distribute it via COPR. https://copr.fedorainfracloud.org/coprs/jonny/BitcoinCash/
Fulcrum is a fast & nimble SPV server for Bitcoin Cash. It is written with C++ and Qt.
It is possible to include the server into the official Fedora repository in the future.
Installation
# Enable package repo
$ sudo dnf copr enable jonny/BitcoinCash
# Download and install the package
$ sudo dnf install fulcrum
# Start the fulcrum service
$ sudo systemctl start fulcrum.service
# View the logs
$ journalctl -f -u fulcrum.service
# View the status
$ systemctl status fulcrum.service
~~Sounds strange, but my intentions was to call the package fulcrum, will find out why I needed to call it Fulcrum-contrib-rpm.~~
Update: I managed to rename the package name to fulcrum.
Details
The config file is located `/etc/fulcrum.conf`.
There is a dedicated user called `fulcrum` that runs the server via systemd, the datadir used is `/var/lib/fulcrum`.
The executable is installed in `/usr/bin/fulcrum` and can also be executed as a normal user.
Collabration on libsecp256k1
About me
Maintain the libsecp256k1, Electron Cash and Electrum packages for Fedora Linux.
Goal
Make it easier to include and maintain a common libsecp256k on Fedora and software for Fedora that rely on that library as a shared library.
Bitcoin-ABC
Own fork maintained along the main software.
Source: https://github.com/Bitcoin-ABC/bitcoin-abc/tree/master/src/secp256k1
Bitcoin Unlimited
Own fork maintained along the main software.
https://github.com/BitcoinUnlimited/BitcoinUnlimited/tree/release/src/secp256k1
Electron Cash
Sub-module of a fork from Bitcoin-ABC
https://github.com/Electron-Cash/secp256k1
Bitcoin Verde
An old fork from Bitcoin-core
https://github.com/SoftwareVerde/bitcoin-verde/tree/development/jni/secp256k1
bchd
Only native in Go/built-in
bip-schnorr
Used by bitbox
Only native in Javascript