A multi-coin platform with enhanced trading capabilities. For the shake of privacy and self-managed societies.
An anonymous distributed P2P system based on a flat organization of nodes contributing to secure a database in a way that: The Public System
No central authority can control it, decide to perform successful amendments, take over the network or shut it down. It is censorship resistant.
The database can be only updated per address or account providing cryptographic proof of ownership of such address.
Nodes can be inexpensive computers, starting from a raspberry pi. They have a negligible energy and bandwidth consumption.
Scales up to 100 Billion nodes. Under such enormous deployment the global network will consist of 1.000.000 sub-networks (or clusters) of 10.000 nodes each. Each network takes care of 1 millionth of the address space.
Is cooperative rather than competitive. The network achieves consensus using a tailored implementation of a Byzantine Fault Tolerant algorithm which is very lightweight and efficient. It is implemented in such a way that a form of universal salary is achieved, because all cooperating nodes doing validation work are paid every consensus cycle, which is variable depending on the network load and configured to be a minimum of 1 minute.
Anyone can access, participate, send transactions, earn cryptocurrency by running a node anonymously from home. Anonymous participation solves every major discrimination problem in our current society.
It is borderless and neutral. It doesn't care about countries (those territorial structures invented in ancient times) and any transaction can go from anyone to anyone. This is a tool for the electronic world. 1 world, 100B people.
It is NOT immutable. Immutability is considered harmful to privacy. In other words the system does not preserve old data, the blockchain is not a blockchain, is only the last block, the current state. While Bitcoin and the rest of blockchains preserve the trajectory, USPS only cares about the last trusted state and forgets the previous one. Indeed you can trust a new state provided you trust the previous plus the algorithm that computes the next from the previous. This paradigm improves:
The efficiency of the system, helping to be run in inexpensive hardware.
The size of the database grows at a considerably slower pace than other systems. The growth across time can actually be zero if no new accounts were created.
Avoid the most critical event any blockchain will suffer in the future. It will happen in the future, the cypher-suite will be compromised. Any data stored in any immutable blockchain will be broken. In USPS, upgrading the cypher-suite is a no-brainer.
All nodes are the same, There are no roles (validator, coordinator, ...) none of it. Just nodes with validation responsibilities executing the consensus algorithm.
The security increases with the number of nodes, because one node means 1 vote. To take over the network (51% attack) an attacker must incorporate as many colluding nodes as needed to convince the rest that the evil hash of the next block created maliciously has been voted as the legitimate block by a majority.
Sybil attack is prevented by using the convenient scarcity of network addresses offered by the protocol IPv4. The network is programmed to control the number of nodes operating behind a given IPv4 address. Any extra nodes above a programmed threshold will be ignored when it comes to voting, providing a limit for which an attacker instantiating thousands of node processes from a single machine does not harm the network. When the network is big enough, an attacker planning a Sybil attack would have to run nodes from a large pool of IPv4 addresses, limiting their chances given the difficulty and price to obtain such type of addresses.
Users can create their own coins, and manage their own cryptoeconomic laws of supply/inflation/deflation.
The Private System
Nodes form a parallel network of P2P encrypted interactions running tailored trading protocols designed to automate the private economy. These R2R (Role-to-Role, a new name specializing the term P2P) protocols can be installed as plugins of the wallet.
Enables total control on the way and context your private data can be exchanged. Allows to run negotiators that care about your self interests, scanning data, interviewing other nodes in search of opportunities, chatting, watching video and an unlimited range of activities, including politics why not.
Multiple trades can be performed in parallel with or without human intervention.
Designed for Global Privacy: Financial, Identity, Medical records,
Multiple anonymous personalities can be developed by a single person, or by a group of people. It does not matter who is/are behind a personality. What matters is what this individual/group/company does.
Free software. Complete sources with reproducible builds will soon be published for public review.
100% Decentralized. Decentralization is a process and has different sides. Although the resiliency model is already decentralized the governance of the system is not yet. Once the software is fully tested by alpha testers, as soon as the beta version started getting traction the governance decentralization process will begin. The idea is to create a skilled community of developers and interested parties that shall be distributed and non colluding. The power to rule the system will be transferred from other.arkitech to such big structure organized by skill where anyone could form part.
Safe. Nodes are controlled and maintained by their respective owners, who are root. During the period when source code is not available the only potential risk that a user may care of is the network activity of the node. Whether or not it tries to scan maliciously the local LAN, or which other sites it connects to. The node can be put in an isolated v-LAN, for those concerned. The node, must be said forefront, does not scan the LAN at all, and the connections to the outside are to other nodes that are listed here . It is easy for anyone with networking skills to verify this is true monitoring the traffic from inside the node using standard Linux tools, or from the outside using network traffic analyzers like wireshark. Those who demand open source would need to wait until the sources are released, probably as GPL, before the release of version 1.0.
/u/binarygold on The future of bitcoin as a global currency.
You're referring to increasing the block size indefinitely to meet demand. You're right in a sense, it's part of the solution, but it's not about just increasing the block size on its own to increase capacity. It won't work on its own. In fact, it would be counter productive on its own. Remember that we're not after measly 2x or 10x capacity increases. We're looking for 100x - 1000x increase to be able to serve the whole world of people and machines eventually. We are not just planning for single transactions. We want payment streaming with transactions being streamed like we stream music and movies, in return for various services. And, all this without losing the main properties that make Bitcoin valuable in the first place. Just increasing the block size won't work without compromising the main benefits of bitcoin, which is resistance to attacks, and independence from large centralised organisations. If we only have 50 giant full nodes around the world running on corporate networks processing 100MB+ blocks every 10 minutes, a concentrated effort by a few governments can bring them down without the ability to recover from such an attack, just like how they successfully brought down the centralised servers of file sharing sites. If we have 100,000 nodes (as we have now) it's extremely hard and almost impossible to perform such an attack, because there will always be a few percent of users in remote corners of the world running perhaps on obscure setups like Raspis and satellites, who can't be forced to shut their nodes down. Because of this reality, it's not even worth trying to shut it down. It would only result in embarrassment, and it would only demonstrate the strength of Bitcoin making it more popular than ever. The less nodes there are, the easier to bring the network down or to censor transactions, or to hard fork the network to include new rules. The easier it is to do that, the less value the network has, thus there are less investors, thus less miners, etc. It's a self reinforcing effect that results in the eventual destruction of the network. Thus, preventing the loss of nodes is very important. There is a sweet spot between the number of nodes and block size, and it depends on network and tech progress. It could be less than the current 4MB, or more. On one hand, if we decrease the block size, it will create a congestion which will reduce the nodes because less people use Bitcoin. Also, if we increase the block size it makes it harder to process the transactions, and thus we may see less full nodes. On the other hand, it is also possible that smaller blocks will increase the nodes because it's easier to run the full nodes, or that slight larger nodes will increase the user base thanks to cheaper fees, and thus we will have more full nodes. We don't exactly know where the sweet spot is. What we do know for sure, is that the sweet spot is moving higher with time as technology improves. So even if Today's sweet spot is 4MB, in 2 years it may be 4.4MB or more. Tech must outpace the growth of the blockchain growth that we have Today. Second layer solutions are very important, because they amplify any potential future block size increases. For example by merchant estimates, LN already serves appr. 10% of the Bitcoin on-chain transactions. In a few years LN will probably serve 10x of Bitcoin on-chain transactions. The same applies to other second layer solutions like Liquid. So, any small improvement on the base chain, will result in an amplification of ~10x or more, which increases the effectiveness of any block size increase and reduces the risks significantly. Without LN, increasing the current 4MB (with Segwit) block size to 8MB would be very risky and only result in 2x increase in transaction capacity. But, if LN is already mainstream, the same block size increase would result in 20x capacity increase overall, so the upside is much bigger. Or to put it another way, going from 4MB to 4.4MB will double the capacity overall. 10% block size increase is 10x less risky and controversial than a 100% increase. In 5 years 1 GB internet will be commonplace, and entry level $500 laptops will come with 5TB SSD and 5x faster CPUs. High end cell phones will be able to run Bitcoin full nodes on 5G networks. When that happens, we will be able to increase the block size slightly without risking the node count, and thus it will not be as controversial as it is Today. Being conservative about block size increases is smart for Bitcoin, even if it means potentially somewhat slower network growth. Alts can experiment with other strategies, because they have less to lose, and more to win. In fact I would encourage experimentation, because Bitcoiners can learn from those experiments, and thus any potential change would be less risky. binarygold
Run a 0.14 Full-Node on RaspberryPi3 Pruned(less than 16GB SD needed)
Hi! Happy if this guide helps you. Tip if you want: 19656Uwdwko5RjtnuwQENpjBwE3ChzD59v UPDATE 04/06/17 Add 'uacomment=UASF-SegWit-BIP148' into your bitcoin.conf if you want to signal UASF. UPDATE 03/13/17 ADDED a tl;dr; Version at the end of this Post. UPDATE 03/12/17: Just to test it - I reinstalled all on 8GB SD and it works as well. But maybe you should use at least 16GB for the beginning. Using a 128GB card for the first version was a little bit stupid - so I reinstalled everything on a 8GB SD card. Including Linux and a pruned blockchain - and it works. I used prune=550 and Jessie Lite (headless / command line) - without wallet and gui. The SD is almost full, but it works so far I also updated the whole manual a bit to make things more clear. Thank you for all your feedback! Just started my Bitcoin Node today and wanted to share the way I did it with people who are interested in running their own full node. It took some time to write everything down - hopefully correct so far. I am sure, many people around bitcoin are way more informed and educated as I am - I am the noob. So I wrote this manual to help users like me - noobs, to get started with a cheap, simple bitcoin node on raspberry pi. Have fun! I wanted to get my Raspberry Pi 3 working as a node to support the network. Actually the process of installing and running the node was more or less easy - but for Noobs (like I am) it might be a bit tricky to start the whole thing, because there are different ways. Did you - like me - think you would need +120GB on the raspi, external USB HDD to be a full node? You won't! If you have a Raspberry and you know what Bitcoin is, I guess, you are a little bit aware of linux, networks and of course bitcoin - so I won't go into detail too much. This guide is just a little helper to get a full node running on your raspberry pi. Thanks to the help of the nice people in this sub and of course the documentation by the developers, I got it working - and of course also special thanks to raspnode.com - as I followed their tutorial to start - I went some other ways here and there - so please read carefully. For the Part 2 I would suggest to have http://raspnode.com/diyBitcoin.html open and read through my manual. I split the tutorial in 2 Parts - PART ONE is about installing the client on your PC and downloading the Blockchain. PART TWO is about the setup of the raspberryPi and transferring the pruned blockchain to the pi and run it as a full node! The first thing to be aware of is: You actually need to download the whole blockchain to get this working - if you already have your bitcoin client synced on the PC / MAC great you can reuse it! Now you might think "but you said less than 16GB in the title!" Yes, but the good thing is you won't need to download it on your Raspberry, neither you need to sync it completely on your raspberry which took ages (weeks!) before. When you finished this Guide, you will just have a max. 4GB Blockchain on your Raspberry Pi - but it still is a full node! The magic word is Pruning. Maybe even a 8GB SD Card works just fine including Linux (jessie lite)! So, if you already have a full node on your PC - Great you can almost skip PART ONE - BUT have at how to Prune in PART ONE if you don't know about it. For PART TWO you'll need a Raspberry Pi 2 or 3 (I used 3) min. 8GB (works also) or better 16GB SD Card. (I used a 128GB for the first version of this manual - which is way too big)
This is the manual how to get started on you PC / MAC / Linux (I did it on Win7) Go to: https://bitcoin.org/en/download and download the core Client for your Machine (I used win64). Install it and configure it to save the Blockchaindata to the directory of your choice - so instead getting 120GB on your C drive, I would suggest to download it to another place like a USB drive. You can set this up during the install. Standard folder for the blockchain folder is "%APPDATA%\Bitcoin" on Windows. or you can do it after the install by creating a bitcoin.conf file inside your installation folder / or %APPDATA%\Bitcoin and add
to the file. Line by line. By the way here you could also just add dbcache - to use more memory to speed up the process a bit:
if you don't want to use the settings inside the program. (you can also set this inside the program under settings! If you have this inside the bitcoin.conf you will see the amount you set there from inside the program - it overrides the values) You can check inside the windows client under settings, if you can see a manual dbcache is set by having a look at the left footer area. When your dbcache value shows up, everything is fine. So the Blockchain download process will take time - maybe a few days! Depending on your machine, internet connection and HDD. The Blockchain is huge as it contains every single transaction of the past until today. You won't need to keep your PC running all the time, you can turn it off and on and it will resync automatically when you start bitcoin-qt.exe! Make sure to close the client always via "quit" - ctrl+q. After you have your bitcoin core installed, the blockchain downloaded and synced - you are ready to PRUNE! First - close the Client and let it close smoothly. After it is really closed you can follow these steps:
By pruning, your blockchain will dramatically shrink. From 120GB to just a few GB.
Be aware, that you will lose your Downloaded Blockchain as pruning will erase a big chunk of it! If you have enough space, you could of course keep the full blockchain saved somewhere on another HDD. You can prune by editing your bitcoin.conf file by adding:
I used prune=1024 - not sure where the differences are right now (min. prune=550). (for my 8GB version I used 550! I suggest to use this.) Save the bitcoind.conf file and restart your windows client. It will now clean up the Blockchain. So just the latest blocks are saved. The client should start without any problems. Maybe it takes some time to prune the blockchain data. Check if everything works normally (the client opens as usual, you can see an empty wallet) than close the client. Inside the Bitcoin Folder, you'll find two folders called:
those are the interesting folders containing the important data (now pruned) - and we will transfer those two to the raspberry later! Now you are good to start the raspi transfer explained in the next part.
Here is what I did: 1) I installed Raspian Pixel (https://www.raspberrypi.org/downloads/raspbian/) using a 128 GB SD - which is not needed because of "Pruning" - I think a 16GB card might work, too! (You can also install Raspian Jessie Lite - which saves you even more space, as it runs headless - only command line) (Updated: It is better to use Jessie Lite to save a lot of space - when you are fine with only command line) 2) I followed partly this tutorial to get everything running and setup:
Please have a look at it - I have copied the Headlines in capitals to let you know what I did, and what I skipped. On Tutorial Page: Start with RASPBIAN (OPTIONAL) CONFIG OPTIONS. Set You RasPi up including "EDITING FILES" to save your Layout at the tutorial page and come back here. I skipped the CONFIGURE USB AND SET AUTOMOUNT process, as we are going to use PRUNING to reduce the 120GB to a tiny filesize - so USB Devices are not needed here! It was necessary to ENLARGE SWAP FILE to install bitcoin core - otherwise it didn't went through which ended in a frozen raspi. So have a close look by following the raspnode tutorial at: ENLARGE SWAP FILE. I have my raspi running via cable to router - but you can also WiFi setup everything described under NETWORKING ON THE RASPBERRY PI. Now comes the interesting part: Follow the steps at DOWNLOADING BITCOIN CORE DEPENDENCIES - they work fine for 0.14.0 too. Git should be on Board already when you installed Pixel - otherwise you would need to install it.
sudo apt-get install git -y (only jessy lite)
I skipped the next command lines - as I don't use bitcoin-qt wallet. If you want to use it as wallet - do the step.
as I don't need the wallet functionality. I didn't need to use "MAKE" which saves you maybe up to 2.5 hours. instead you can just go ahead with:
sudo make install
(If I am wrong in doing so - please let me know) The install takes some time - and just a heads up: when it gets stuck somewhere - just redo the installation process - it took three times to went through - stuck at some processing. After the installation took place you can finally get your Raspberry Pi Node running in no time! To test if the the installation went through - you can just start bitcoind using:
than check if everything is working so far:
after a few seconds you should see version: etc... if not, something went wrong. Try to redo the steps in the raspnode tutorial. (don't give up if it failed - retry! Ask your questions here) IMPORTANT: you need to stop bitcoin on your raspberry now!
If you don't need an external USB Drive - what I hope - as we are going to use pruning just go ahead and skip the USB part and create a file inside (or follow the raspnode tutorial on how to setup the USB drive):
cd .bitcoin sudo nano bitcoin.conf
and enter the exact same pruning size you have used on your Desktop Machine to prune. I used 1024 but the minimum is 550. (used 550 for the 8GB SD card on PC and Raspberry)
That's it for the raspi. update: To signal UASF enter in a new line:
Now you have to transfer the two folders CHAINSTATE and BLOCKS from your PC bitcoind directory to your raspberry. I am using a program called "WINSCP" - it is free and easy to use: https://winscp.net/eng/download.php We need this to transfer the files to the Raspberry pi. Pretty sure you can also do it via SSH - but I am the noob. So let's keep it simple. Open Winscp and put in the IP Address of your Raspberry Pi, User and Password (same as in SSH) You should now see the directories on your Raspberry Pi. There is a folder called
enter it and you will see the two folders
blocks & chainstate
you can delete them on the raspberry as they have some data from your previous test inside. Make sure you can also see the bitcoin.conf file in that directory, which needs to contain the exact same prune line, like the one on your desktop machine. If not, make sure to edit it via SSH. The line "datadir=l:\yourfolder" is obviously not needed in the Raspberry bitcoin.conf file. Now grab the two folders CHAINSTATE and BLOCKS from your PC and copy them to your .bitcoind folder. I also copied banlist.dat, fee_estimation.dat, mempool.dat and peers.dat to the folder - not really knowing if needed! Not needed. The whole copy process might take some minutes (against some weeks in the old way). After copying is finished, you can now start bitcoind on the Raspberry.
the & symbol let you still use the command line while the process is running btw. The process - if succesfull - will take some time to finish.
Will give you some informations what is going on right now. When you can see, that it is checking the blocks, this is good! If you get an error - double check - if you have the correct prune size (same as on desktop machine) - in bitcoin.conf and that this file is inside .bitcoin on RaspberryPi. It took me some time, to find my mistakes. Congrats! You are almost a part of the network! To make your node now a fullnode, you will need to go to your router (often 192.168.1.1) and enable portforwarding for your raspberry pi - and open ports 8333 - that's it! You can now go to: https://bitnodes.21.co/nodes/ scroll down to "JOIN THE NETWORK" and check check if your node IP is connected! It will show up as soon as the blocks are checked and the raspi is running. Well done! Now you are running a full node, with a small Blockchain and got it working in Minutes, not weeks! I really hope, my little tutorial worked for you and your are part of the Node network now. If you have problems or I made a mistake in this helper tut, just let me know and I will try to make it better. Have fun and NODL! the noob tl;dr; (if you are a real noob start with the non-tl;dr version!) tl;dr; PART ONE 1) Download & install / setup bitcoincore @ https://bitcoin.org/de/download 2) change dbcache to something smaller than your memory and download the whole Blockchain (120GB). 3) create a file called bitcoin.conf put the line prune=550 (or higher) in to activate pruning on win inside %appData%/bitcoin 4) Open ports 8333 on your Router to make this a full node with a smaller Blockchain. You are running a full node on your PC. tl;dr; PART TWO 1) Install jessie lite and the needed dependencies on your SDCard - Raspberry ( >git clone -b 0.14 https://github.com/bitcoin/bitcoin.git )
see tutorial for more info.
2) create a file called bitcoin.conf inside .bitcoin and add the same prune=Number you had on your PC. 3) transfer the pruned folders BLOCKS and CHAINSTATE to the Raspberry Folder .bitcoin 4)Start "bitcoind &" 5) let everything sync 6) Make sure you have port 8333 opened on your router. You are running a full node on your Raspberry with a super small Blockchain (I put all on a 8GB SDcard) Tip if you want : 19656Uwdwko5RjtnuwQENpjBwE3ChzD59v updated 03/12 - will update more, soon. updated 03/12.2 - I updated the whole process a bit and also added some improvements. updated 03/14/ Added a tl;dr version at the end.
I am currently trying to set up blackoin on raspberry. Community members asked for a tutorial to compile it, so I will start with this here. Maybe in the future it would even be possible to turn it into a headless (=without screen and keyboard) image to put on an SD card and just boot up the wallet. I used the latest Blackcoin Lore by janko33 for this process, however it should be quite the same with the "original" core wallet by rat4/johndolittle. Blackcoin Lore is not deemed as stable as it is still in beta, so it's up to you what source tree you take. Please be also aware, that compiling on a small computer like raspi can take a while. Please also note that Lore is still in beta. The names in the archive are still "bitcoin". There is an update comming where the naming is correct and also maybe a few bugfixes. ** Tutorial: ** You first need to get raspbian. The lite image will work, it's a small version of the operating system without a graphical interface, so you will need ssh to operate it. The image is 294 MB but you will want to have a bigger card. 2GB is certainly too small, better get 16 or even 32GB - you also will need space for the blockchain! To install it I followed this guide https://hackernoon.com/raspberry-pi-headless-install-462ccabd75d0 Get the raspdian image file from: https://www.raspberrypi.org/downloads/raspbian/ Also get Etcher from https://etcher.io/ Etcher is a tool to write img files to an SD card/USB-stick. After writing, open the card in your explorer and add a file "ssh". The file sould be empty and just be called "ssh" (not ssh.txt or something). It will tell raspi to activate ssh on boot. Then boot up your raspi with the card and plug it into your network. Consult your router's LAN-page to find the device, it should register to your router as "raspberry" or so. Open up Putty and login to your raspi using pi as username and raspberry as password. After login you can configure your raspi, please read the guide linked above for more details. Note: One important thing that you should configure is your timezone! Use
Go to 4. Localisation Options and set the time to your timezone. If your time is way off, you would get troubles with staking, so make sure you always have the time set right! After you got everything set up, get the build environment ready:
sudo apt-get install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils #Installs alot and can take a while git clone -b Blackcoin-Lore https://github.com/janko33bd/bitcoin Blackcoin-Lore cd Blackcoin-Lore cd depends make -j 6 HOST=arm-linux-gnueabihf cd .. ./autogen.sh ./configure --prefix=`pwd`/depends/arm-linux-gnueabihf
# note: ` = is a "backtick" not an apostroph. It causes the outpupt of "pwd" being inserted there
make -j 6 # -j n tells the compiler to use more cores, speeds that up a little (n = 1.5*cores installed) sudo make install
This should compile so far. Update: Lore does not need Berkeley DB 4.8 to be installed, so just go with the DB provided by the repository works (libdb++-dev). (Thanks patcrypt) After compile you can run the wallet with
And after it synced you have bitcoin-cli to control the wallet. Issue: Synching blocks takes an awfully long time on raspi for some reason, even with Lore (that syncs blocks in a few hours instead of a whole day on a normal computer). If anyone knows how to speed up that process, please let us know! This thread is a WiP. Please post all issues and errors here, I will then edit the OP to make it into a real, working tutorial. On a note it was mentioned, that using an USB-stick here instead of a card would make sense since the cards are more prone to failure than USB-sticks. I will include setting it up on USB in a later version of this tutorial. Some tips and tricks Since compiling takes a longer time, it is recommented to run it in the console in a screen. Screen is a terminal tool that supports multiple windows in the same shell and, most important, detaches when your ssh connection breaks. Using screen you can simply reconnect and use screen -r to attach to your running shell again. To use screen, you need to install and then start it before you start the whole build process within a screen-shell.
sudo apt-get install screen screen #Start install/build process here #Type [ctrl-a] [d] to detach from the screen and put it in the background #After reconnect type screen -r to jump back into your running shell
If you want to see your blocks being processed while the wallet syncs to the network, use the following command on a second shell (new Putty instance or screen window which you can open in screen with [ctrl-a] [c] (hit [ctrl-a] [n] to cycle through the windows in screen)
watch -n 5 lore-cli getinfo #This will execute the command "bitcoin-cli getinfo" every 5 seconds and thus display live update of your wallet info
How to use that thing? Here are a few helpful CLI commands, call them with lore-cli
help - Returns available commands help - Returns detailed help to a getinfo - Returns a descriptive information of your wallet, including balance getwalletinfo - Returns short information about your wallet, including balance, unconfirmed balance, immature balance, number of tx ect getaccountaddress 'raspi' - Returns an address for your wallet. If the account does not need to exist, it will be created with new address sendtoaddress - Sends to sendtoaddress substractfeefromaccount - Sends minus tx fee to getnewaddress - Returns a new address for each time you call the command. is optional
Further plans for this tutorial/project
Install on USB with a small boot image on SD
Planned: Web GUI to control your wallet easily from your local network
Have fun! Donations: B4nn2Y3SFC6whNGNvcQ2MvV1aQbZp3cZVF
Rebuttal to Roger Ver's points made on Mad Bitcoins interview (And partial transcript)
Here are some of the items Roger said that I found interesting and/or worthy of debate and also some quick responses. All in all I think this was a much better presentation of his argument (though still flawed IMO). I took the time to transcribe some of his statements (There may be errors, memorydealers I would be happy to correct anything I quoted that is wrong) I left my responses purposefully brief. I am hoping others can add details or extend them to further prove or disprove any statement (including stuff I wrote that's wrong or that you disagree with). I am hoping that someone from core goes on with Mad Bitcoins tomorrow night. https://www.youtube.com/watch?v=XpOnolf1tS8
@3:00 "So anybody that thinks that high fees, and slow confirmations and full blocks are a good thing for bitcoin, they are plain and simple wrong and they don't understand the things that make bitcoin useful as money."
Just because people don't agree with you doesn't make them wrong. Its simply different priorities.
IMO the thing that makes bitcoin useful is not only that it is money, it is that it is decentralized money. Anything that puts decentralization at risk will cause the value to decline at least as much things that make it less useful as money.
@3:14 "And people talk about, well bitcoin is a store of value. Well the only reason people want to save money is so they can spend it later and if bitcoin becomes not usable as a means of exchange so people won't want to save their wealth in it either...If bitcoin can't be used a medium of exchange, it won't be used as a store of value"
Bad argument since it can be used as a medium of exchange
Bad argument because people use gold as a store of value and it is not a very good medium of exchange
@6:30 "Either they can mine an empty block during that time period while the block is being propagated and validated or they don't mine at all so as a miner its very very clear it would be better to mine an empty block and get the 12.5 coins from that than to not mine at all during that period and have no chance of getting a block..."
bigger blocks would create more empty blocks
[continued] "...Its actually a nice way of slowing the network down from getting ahead of itself, if the blocks are too big and they are propagating around and its taking too long for people to get a whole copy of them the fact that a pool is mining an empty block, it lets rest of the network catch back up because the empty block propagates very quickly and it can be validated very quickly so it lets the whole bitcoin network catch back up to where things are supposed to be. So its actually kind of a nice safety valve for slowing the down the speed of the transaction rate on the bitcoin network if needed."
Interesting to hear the argument for small blocks inserted here
"@8:30 So right now the block size is set by a couple dozen core dev who decided who have decided the maximum size is 1MB"
Blocksize was set by satoshi
Code is open source and it is trivial to change the blocksize
@9:30 "Also, all the mining pool operators are running nodes as well and those are the ones that actually secure the network and validate the blocks and do that"
miners are not the ones who validate blocks except in the capacity that they don't want them to be rejected by the true validators: the users
@9:47 "That's probably why this whole debate hasn't been settled already because there is not any one specific place you can point too and say this is who is in charge of solving this issue."
Interesting reference to centralization
@10:40 "as were seeing from this current scaling debate there is this huge huge huge motivation for everybody to stay on the same chain and be part of the same bitcoin network, so even once the users are able to configure this themselves, I think 99% are still gonna stay on the same chain"
So basically emergent consensus wont actually do anything because they know >1MB is still contentious and they want to stay with the 99%
non-contentious forking is really just an exercise in mass coordination, this has been a hot dev topic for many years
@12:55 "The developers at bu come up with an amazing technology called extreme thin blocks"
The one that had a bug in it for over a year that could be exploited to crash a node remotely
@15:20 "I think bitcoin mining is more decentralized than ever"
It is almost impossible to gauge this
I would argue that the opposite is true, but I would need to do more research
@18:02 "The things segwit solves/the issues it addresses aren't things that need to be fixed urgently"
BU doesn't raise blocksize limit right away unless users want a contentious split, which they probably don't (Roger mentioned earlier that users have a huge motivation to stay on the same chain)
@20:02 "If you're hard forking for a good reason, it's not contentious"
This is an example of centralization: "Only my ideas could be considered a good reason"
@20:58 "Lets say it somehow splits at 50/50 .... blocks will take 20 minutes to confirm. The transaction capacity will be half."
He is describing how the 1MB chain will die after a split.
Seems to me those who value bitcoin centralization will be just fine waiting for 20 minutes or longer, especially since segwit activation will jump to 60%+
@23:14 "And if you have an opinion like i do on this as to which version of bitcoin is the better one. I will sell my coins on the slow expensive core chain...bitcoin unlimited coins will be so much more useful because you actually be able to send and receive them with people unlike the bitcoin core coins on this congested network that cost a fortune and take for ever to move the bitcoins"
A threat to dump bitcoins. I will buy some.
@30:52 "And the miners, the majority if their income is from the block reward and not from the fees on the network and the will continue to be the case for like the next 100 years."
In 2040 (assuming 4 year reward halvings) the reward will drop to 0.19531250 BTC
@31:02 "And its worth pointing out that the bitcoin unlimited guys they are not opposed to layer 2 technologies at all, we're excited about layer 2 tech...but our point is don't strangle bitcoins layer that brought us from nothing to where are today"
I just thought it was interesting the use of the word "we're" here
@32:12 "Whereas a lot of the core developers today are actively saying that they want to damage the bitcoin that brought to where we are today"
This is a very repeated point and in someways, seems like the only point. Probably a good place to focus for anyone engaging in debate
Nobody is saying this, this is putting words in people's moths just because they disagree with methodology and priorities.
@33:16 "People that are part of bitcoin core are part of bitcoin core are openly and intentionally advocating for high fees and full blocks, thats kryptonite for bitcoin"
OK Im drunk now because I took a shot every time roger made this point.
Again, putting words and intentions in people's month, disagreeing with someone's method of improvement of a thing is not an argument that someone is trying to harm that thing.
@38:12 "So for me I think its time to switch to BU, A dev team that understands why bitcoin is useful as money"
Personally I don't want to trust anyone one team
@40:23 "the bitcoin core camp seem to think that bitcoin will only be used as a store of value, so they are undermining its usefulness in commerce"
@44:40 [Regarding BU Bug Fix removed from /bitcoin] "I think everyone involved with bitcoin should condemn that sort of activity"
I agree with Roger here, alternative Bitcoin implementations should never be considered an altcoin, alternative consensus proposals should always be heard
@49:06 Right now you can run bitcoin on a raspi for $25
Cost of computing is not the main concern, storage is an issue, but the main concern is network costs
@49:12 "My understanding of their side is...I guess they have 2 [concerns]...One concern they have is that they think that bitcoin network is going to become centralized."
This point can not be overstated, though it seems glossed over when considering what is best for bitcoin
never got to 2nd item because he got too busy going back to his repetitive defense
(paraphrased) Bigger blocks = more people = more decentralization
More rich people
IMO raw growth is not always the best answer, especially scaling can be gained through optimizations
"As soon as the user experiences started to decline (slow confirmation, high fees), adoption has started to decline"
This doesn't seem true, would be worth investigating
@51:50 "bu will have bitcoin.com"
when asked if BU should just take on a new name
another example of new centralization, I don't have a problem with bitcoin.com per se, it's just that some of the arguments against core revolve around centralization concerns
earlier he says "bitcoin core, good marketing" (referring to choosing the name)
How-to: Add 5 new Doge wallet options in Piper paper wallet printer
Here's the final product: http://i.imgur.com/4RUzs8U.jpg First off let me just say how much I love this community and how proud I am to be a part of it. Second, I am totally new at python raspi coding, so please make a backup copy of your "home/pi/Printer" folder and an extra copy of your keys on a flash drive. If something crashes or fails to work, you can copy/paste the contents of the backup "Printer-backup" folder back to the main "Printer" directory and everything will be just as it was before. I'm using a Piper A model and this is for software version 1.05. Since this is the only version I have right now. After you've backed up your Printer folder, copy this page to a text file on a flash drive to load to your Piper. I've tried opening the files outside of the pi then overwriting them, but it didn't work. I had to edit the files locally in Leafpad. Go to the Printer folder and open "gui.py" "genkeys.py" and "piper.py" using Leafpad. I'm going to mark new code with ++ so you can see where it fits with the rest of the code. Do not leave the ++ in the code. (In leafpad, go to the options menu and enable Line Numbers, many helpful). We're basically adding 5 copies of the sames piece of code in each case. Also the bulk wallet feature didn't work to well, I would suggest staying with printing one at a time. Here are the bmp backgrounds that you need to add to "home/pi/PrinteImages" folder. You can create any bmp and rename/replace the image and the printer will now print that one for that number selection. Close the gui Piper Wallet program. Open "gui.py" using Leafpad add the following code at line 549. This adds the additional 5 buttons on the Settings tab in the Piper gui. We are also changing the "padx" value to 5 so everything fits.
On line 568 - change the displayed information about address prefixes, this does not effect how it works
tk.Label(self, text="Address prefix - 1 for bitcoin - L for litecoin - D for Doge - or key generation will fail.").pack(padx=10)
Next is line 611 in the same file. This adds a check to make sure AES is selected
#first, check that BIP0038 and litecoin are not both set if(self.coinType.get() == "litecoin" and self.encType.get() == "bip0038"): self.showMessage("Error!!","BIP0038 is not compatible with litecoin. Settings not saved.") self.encType.set("aes") ++ if(self.coinType.get() == "dogecoin" and self.encType.get() == "bip0038"): ++ self.showMessage("Error!!","BIP0038 is not compatible with dogecoin. Settings not saved.") ++ self.encType.set("aes") ++ ++ if(self.coinType.get() == "doge1" and self.encType.get() == "bip0038"): ++ self.showMessage("Error!!","BIP0038 is not compatible with dogecoin. Settings not saved.") ++ self.encType.set("aes") ++ ++ if(self.coinType.get() == "doge2" and self.encType.get() == "bip0038"): ++ self.showMessage("Error!!","BIP0038 is not compatible with dogecoin. Settings not saved.") ++ self.encType.set("aes") ++ ++ if(self.coinType.get() == "doge3" and self.encType.get() == "bip0038"): ++ self.showMessage("Error!!","BIP0038 is not compatible with dogecoin. Settings not saved.") ++ self.encType.set("aes") ++ ++ if(self.coinType.get() == "doge4" and self.encType.get() == "bip0038"): ++ self.showMessage("Error!!","BIP0038 is not compatible with dogecoin. Settings not saved.") ++ self.encType.set("aes") return #second, check that prefix is valid
Just below this code in the same file we need to add the vanitygen info and check for the "D" suffix
if(self.coinType.get() == "litecoin"): if(len(self.addrPrefix.get()) == 0 or self.addrPrefix.get() != "L"): self.showMessage("Error!!","Invalid address prefix. Litecoin addresses must begin with L.") return process = Popen(["./vanitygen-litecoin", "-q", "-n", "-L", "-t","1","-s", "/dev/random", self.addrPrefix.get()], stderr=PIPE) ++ elif(self.coinType.get() == "dogecoin"): ++ if(len(self.addrPrefix.get()) == 0 or self.addrPrefix.get() != "D"): ++ self.showMessage("Error!!","Invalid address prefix. Dogecoin must begin with D.") ++ return ++ process = Popen(["./vanitygen-litecoin", "-q", "-n", "-X30", "-t","1","-s", "/dev/random", self.addrPrefix.get()], stderr=PIPE) ++ elif(self.coinType.get() == "doge1"): ++ if(len(self.addrPrefix.get()) == 0 or self.addrPrefix.get() != "D"): ++ self.showMessage("Error!!","Invalid address prefix. Dogecoin must begin with D.") ++ return ++ process = Popen(["./vanitygen-litecoin", "-q", "-n", "-X30", "-t","1","-s", "/dev/random", self.addrPrefix.get()], stderr=PIPE) ++ elif(self.coinType.get() == "doge2"): ++ if(len(self.addrPrefix.get()) == 0 or self.addrPrefix.get() != "D"): ++ self.showMessage("Error!!","Invalid address prefix. Dogecoin must begin with D.") ++ return ++ process = Popen(["./vanitygen-litecoin", "-q", "-n", "-X30", "-t","1","-s", "/dev/random", self.addrPrefix.get()], stderr=PIPE) ++ elif(self.coinType.get() == "doge3"): ++ if(len(self.addrPrefix.get()) == 0 or self.addrPrefix.get() != "D"): ++ self.showMessage("Error!!","Invalid address prefix. Dogecoin must begin with D.") ++ return ++ process = Popen(["./vanitygen-litecoin", "-q", "-n", "-X30", "-t","1","-s", "/dev/random", self.addrPrefix.get()], stderr=PIPE) ++ elif(self.coinType.get() == "doge4"): ++ if(len(self.addrPrefix.get()) == 0 or self.addrPrefix.get() != "D"): ++ self.showMessage("Error!!","Invalid address prefix. Dogecoin must begin with D.") ++ return ++ process = Popen(["./vanitygen-litecoin", "-q", "-n", "-X30", "-t","1","-s", "/dev/random", self.addrPrefix.get()], stderr=PIPE) else: if(len(self.addrPrefix.get()) == 0 or self.addrPrefix.get() != "1"): self.showMessage("Error!!","Invalid address prefix. Bitcoin addresses must begin with 1.") return process = Popen(["./vanitygen", "-q","-n", "-t","1","-s", "/dev/random", self.addrPrefix.get()], stderr=PIPE)
Save and Close ------In the Next file "genkeys.py" and go to line 48, adding vanitygen info
Save and close. That should be it. Double click the Piper shortcut on the desktop and launch the new gui. From the setting tab, select one of the Doges, put a "D" in the prefix box, and Apply changes. Now when you print from the first tab or press the button on the outside, it will print that corresponding background. edit2: Github
The value has rocketed recently thanks to the huge coverage in the media, for both positive and negative reasons. There are two ways to get Bitcoin:-Buying them from an exchange, which is the process of converting local currency to Bitcoin. -Mining them. Mining is the process of verifying transactions in the blockchain. Bitcoin is a cryptocurrency, a form of electronic cash.It is a decentralized digital currency without a central bank or single administrator that can be sent from user to user via the bitcoin network.. There are two main methods for obtaining bitcoin: mining and purchasing. In this tutorial we will focus on cryptocurrency mining on the Raspberry Pi! $ sudo raspi-config . Software Updates . Run the following commands to install the latest software and security updates. Updates should be installed at least once a month. Run the following commands to configure the Bitcoin client. Note that <USER_VALUE> and <PASS_VALUE> refer to RPC credentials specific to your Bitcoin node. Do not reuse 32 thoughts on “ Raspi Bitcoin Miner May Just Pay For Itself Eventually ” — However, I had also appreciated an approach with some real value derived from the mining operations. If the Bitcoin as sound money is going to have a major impact on economic principles and society as a whole. In my opinion, a solid, anti-fragile base layer for this future monetary network is the killer app for blockchains and will be more important than the most novel feature of competing altcoin projects.
How To Build a DIY Bitcoin Price Ticker Powered by a Raspberry Pi Step-by-Step Instructions
Have you ever wondered how to follow the Bitcoin price minute by minute in a physical way? Or are you just a maker looking for a fun project to do with a Raspberry Pi? This video is for you! Here ... Add a TFT screen and you open up a world of new uses for the Raspberry Pi. In this episode, we create a Bitcoin Ticker that shows the price of Bitcoin on Bitstamp in real time. The TFT screen used ... Bitcoin Math & Value with Plan B Preston Pysh. ... Plan B. Plan B has become a rising star in the Bitcoin community due to his statistical work he has performed on the stock to flow analysis of ... Make Your Own 15.6" Full HD Screen for 32 bucks for use with Raspberry Pi, DSLR, Video camera - Duration: 12:00. Alex Eames 799,549 views The top rows are the current value of my bitcoin in USD and GBP. I have 0.026 bitcoins (lol) and so it's multiplying 0.026 by the current bitcoin value. You can easily change it to the amount of ...