Running Bitcoin - Bitcoin Wiki

Gridcoin 5.0.0.0-Mandatory "Fern" Release

https://github.com/gridcoin-community/Gridcoin-Research/releases/tag/5.0.0.0
Finally! After over ten months of development and testing, "Fern" has arrived! This is a whopper. 240 pull requests merged. Essentially a complete rewrite that was started with the scraper (the "neural net" rewrite) in "Denise" has now been completed. Practically the ENTIRE Gridcoin specific codebase resting on top of the vanilla Bitcoin/Peercoin/Blackcoin vanilla PoS code has been rewritten. This removes the team requirement at last (see below), although there are many other important improvements besides that.
Fern was a monumental undertaking. We had to encode all of the old rules active for the v10 block protocol in new code and ensure that the new code was 100% compatible. This had to be done in such a way as to clear out all of the old spaghetti and ring-fence it with tightly controlled class implementations. We then wrote an entirely new, simplified ruleset for research rewards and reengineered contracts (which includes beacon management, polls, and voting) using properly classed code. The fundamentals of Gridcoin with this release are now on a very sound and maintainable footing, and the developers believe the codebase as updated here will serve as the fundamental basis for Gridcoin's future roadmap.
We have been testing this for MONTHS on testnet in various stages. The v10 (legacy) compatibility code has been running on testnet continuously as it was developed to ensure compatibility with existing nodes. During the last few months, we have done two private testnet forks and then the full public testnet testing for v11 code (the new protocol which is what Fern implements). The developers have also been running non-staking "sentinel" nodes on mainnet with this code to verify that the consensus rules are problem-free for the legacy compatibility code on the broader mainnet. We believe this amount of testing is going to result in a smooth rollout.
Given the amount of changes in Fern, I am presenting TWO changelogs below. One is high level, which summarizes the most significant changes in the protocol. The second changelog is the detailed one in the usual format, and gives you an inkling of the size of this release.

Highlights

Protocol

Note that the protocol changes will not become active until we cross the hard-fork transition height to v11, which has been set at 2053000. Given current average block spacing, this should happen around October 4, about one month from now.
Note that to get all of the beacons in the network on the new protocol, we are requiring ALL beacons to be validated. A two week (14 day) grace period is provided by the code, starting at the time of the transition height, for people currently holding a beacon to validate the beacon and prevent it from expiring. That means that EVERY CRUNCHER must advertise and validate their beacon AFTER the v11 transition (around Oct 4th) and BEFORE October 18th (or more precisely, 14 days from the actual date of the v11 transition). If you do not advertise and validate your beacon by this time, your beacon will expire and you will stop earning research rewards until you advertise and validate a new beacon. This process has been made much easier by a brand new beacon "wizard" that helps manage beacon advertisements and renewals. Once a beacon has been validated and is a v11 protocol beacon, the normal 180 day expiration rules apply. Note, however, that the 180 day expiration on research rewards has been removed with the Fern update. This means that while your beacon might expire after 180 days, your earned research rewards will be retained and can be claimed by advertising a beacon with the same CPID and going through the validation process again. In other words, you do not lose any earned research rewards if you do not stake a block within 180 days and keep your beacon up-to-date.
The transition height is also when the team requirement will be relaxed for the network.

GUI

Besides the beacon wizard, there are a number of improvements to the GUI, including new UI transaction types (and icons) for staking the superblock, sidestake sends, beacon advertisement, voting, poll creation, and transactions with a message. The main screen has been revamped with a better summary section, and better status icons. Several changes under the hood have improved GUI performance. And finally, the diagnostics have been revamped.

Blockchain

The wallet sync speed has been DRASTICALLY improved. A decent machine with a good network connection should be able to sync the entire mainnet blockchain in less than 4 hours. A fast machine with a really fast network connection and a good SSD can do it in about 2.5 hours. One of our goals was to reduce or eliminate the reliance on snapshots for mainnet, and I think we have accomplished that goal with the new sync speed. We have also streamlined the in-memory structures for the blockchain which shaves some memory use.
There are so many goodies here it is hard to summarize them all.
I would like to thank all of the contributors to this release, but especially thank @cyrossignol, whose incredible contributions formed the backbone of this release. I would also like to pay special thanks to @barton2526, @caraka, and @Quezacoatl1, who tirelessly helped during the testing and polishing phase on testnet with testing and repeated builds for all architectures.
The developers are proud to present this release to the community and we believe this represents the starting point for a true renaissance for Gridcoin!

Summary Changelog

Accrual

Changed

Most significantly, nodes calculate research rewards directly from the magnitudes in EACH superblock between stakes instead of using a two- or three- point average based on a CPID's current magnitude and the magnitude for the CPID when it last staked. For those long-timers in the community, this has been referred to as "Superblock Windows," and was first done in proof-of-concept form by @denravonska.

Removed

Beacons

Added

Changed

Removed

Unaltered

As a reminder:

Superblocks

Added

Changed

Removed

Voting

Added

Changed

Removed

Detailed Changelog

[5.0.0.0] 2020-09-03, mandatory, "Fern"

Added

Changed

Removed

Fixed

submitted by jamescowens to gridcoin [link] [comments]

I've been sharing conspiracies on reddit longer than this sub has been around. I have a story to tell.

This story is mostly crafted from my own experiences, my conversations with some of the people involved, and the rest is my own guesswork as I try to fill in the gaps...so bear with me!
That's why I wanted to share with this community, which I've watched grow over the years. I remember posting about the death of Barry Jennings (who witnessed explosions in the WTC on 9/11) the day after it happened. This was before /conspiracy (or right around when it was formed), and I remember thinking "we really need a sub for conspiracies on reddit!"
And here we are, 12 years later and over 1.3 million subscribers...incredible!
So...
My story starts with a young man. We'll call him Andrew.
Andrew grew up in the 90's in a coastal US town and quickly blossomed into a tech whiz at a young age.
He began building his own computers, and after a brief stint using Windows, he decided that Bill Gates was everything wrong with technology (and the world), and he made it his mission to make sure folks like Gates were NOT the future of computers.
He really believed that the use of technology was a fundamental human right, and that charging people for "proprietary" OS's that hid their source code was a violation of these rights.
He saw a possible Deus Ex-like future, with a technocracy literally around the corner if we didn't act now.
Andrew soon joined the Free Software Foundation and began rubbing elbows with the likes of Richard Stallman. He begun exclusively using GNU/Linux and was the type to correct you if you called it just "Linux". He also began visiting tech-savvy forums like slashdot and started networking in earnest.
By 2006 (his senior year of high school) Andrew was completely over his "education" and decided to just drop out completely.
Shockingly, a college accepted him anyway. A small East Coast school had been actively courting Andrew, and when they learned he had failed to get his HS diploma, they accepted him anyway!
Now sometime during this period Andrew went to Iceland and stayed in Reykjavik for several months.
This trip may have happened during the summer, fall, or early winter of 2006. The reason for his trip had something to do with his efforts in the FSF or similar group. The possible significance of this trip will become clear as we go on.
What is clear is that Andrew started college in the fall of 2006, and that the circumstances were unusual. Andrew soon met several like-minded individuals and began building a social and technological network at his school.
Two individuals in particular would become key players in his life (one more prominently in this story, but the other was significant as well), and eventually the 3 would live together in town for several years.
But for now let's stick with Andrew.
Andrew had an idea to build a social network for his college. Except, it wasn't just a network, it was a wiki for information about the school...and beyond. Soon, it began to morph into something much bigger in Andrew's mind.
He saw his project as being one of many data "hubs" for leaks of important documents and otherwise sensitive information.
So yeah, he saw the opportunity for a wiki for leaks (see where this is going yet...?).
As his ambitions grew, his behavior started to become increasingly erratic. He was caught with drugs and arrested. Strangely, the charges were pretty much dropped and he was given a slap on the wrist. Eventually he decided to leave the school, but still lived in town and had access to the servers on campus.
By 2010 Andrew was still living in the small town with his two "hacker" buddies, who were still enrolled at the school.
This house was in some ways legendary. It appears that many "interesting" people spent time at or visited the residence. Indeed, some of the early movers and shakers of /conspiracy itself passed through.
There was usually a full NO2 tank for anyone who was into that kinda thing, and they were stocked with every hallucinogen and research chemical known to man.
It was also likely under surveillance by multiple intelligence agencies (NSA/Mossad/etc).
Over time, the mental state of Andrew was slowly starting to deteriorate, which wasn't helped by his abuse of drugs.
Still, Andrew decided to move his base of operations to Europe, spending time in Belgium, the Czech Republic and elsewhere.
One of his housemates was soon to join him on his adventures in Europe and elsewhere abroad. We'll call him "Aaron."
Aaron had a very similar story and upbringing as Andrew. Aaron was also from a coastal US town and was born into privilege. He was also, supposedly, born into a family with some serious connections to intelligence agencies, including an uncle with ties to the NSA, and both parents connected to military brass.
By 2015, Andrew and Aaron were living together in the Czech Republic. During this time they were working directly and/or indirectly for the NSA (via Cisco and other companies).
You see, the "college" they met at was actually a front for the recruitment of kids into the IC. Apparently, many "schools" in the US function that way. Go figure.
Their intelligence and valuable skill set (hacking etc) made them valuable assets. They were also possibly involved with the distribution of certain "research chemicals" (of the 2C* variety) to dignitaries and their entourages (in one example, they provided 2CB to a group with David Cameron).
In addition, Andrew was allegedly involved with, or stumbled upon, an NSA-linked surveillance project directed at the entire country of Malaysia, while Aaron was involved with Cisco.
Aaron himself had gotten into hot water for releasing damaging information about the NSA, and even claimed to be an NSA whistleblower, and was also possibly the individual who leaked the 2014 (or 2015) Bilderberg meeting list.
And then things went bad. Andrew quit the Malaysia project and Aaron left Cisco. It seems Andrew and Aaron were "set up" during a fiery false flag event in the Czech Republic in 2015. It may have happened at an embassy, but it's unclear which. There is no information on the web about anything like this (afaik).
Aaron was immediately targeted and spent several years on the run. Allegedly, he was added to the list of victims in the so-called "Great Game".
The Great Game is the term used for an international assassination program where intelligence agencies share a list of targets to be neutralized. The German BND and Mossad are heavily involved, as other networks. Individuals targeted by the Great Game may be offed by actual assassins, or by NPC-like humans whose minds will be influenced by mind control tech (a la Matrix...say influencing someone to ram your car unwittingly ie).
As Aaron went on the lam, Andrew soon returned to the US, shell-shocked by his experience.
Both Andrew and Aaron continue to suffer from some sort of PTSD from these series of events, rendering Andrew largely incapacitated and Aaron scattered and discombobulated.
The Meat of the Matter
OK...where does that leave us? Why am I sharing all of this? I think there's much more to this story.
So let's start speculating! Everything I'm about to say is stuff that was told to me personally. I can't vouch for any of this information, though obviously I thought it was compelling enough to share.
Here's the gist: The so-called whistleblowers you see in the media are almost all fake.
This includes: Edward Snowden, Julian Assange, Thomas Drake and William Binney (hey look, his AMA is pinned on this sub right now...no comment!). These individuals, and others, are controlled opposition. The real whistleblowers are severely punished.
For example, Bradley Manning was punished with chemical castration in jail. His "transformation" was chemically induced torture.
Andrew was not alone in his passion. There were lots of other young visionaries like him who dreamed of a freer and more transparent world.
In this story, Julian Assange was an intelligence asset...a psyop meant to steal the thunder from real activists like Andrew.
In this story, a small college-based "wiki" for government leaks was used as the model for an intelligence operation known as "wikileaks".
In this story, Andrew traveled to Iceland at some point in 2006.
When was Wikileaks founded? Wikileaks was founded by Julian Assange in December 2006, in Iceland.
Aaron discovered (legally, like Manning who had clearance to access all the data he leaked) damning information about surveillance happening by the NSA, specifically against recruits entering the US army and elsewhere.
In this story, the "Andrew" identity was co-opted and turned into "Julian Assange", and "Aaron" became "Edward Snowden".
Granted, there were probably other people that these whistleblower imposters were modeled after, but Andrew and Aaron seem like very strong contenders for some of this inspiration.
Now, much of the following may be gobbledygook (lol I spelled that right first try!) for all I know, but since I'm having a really hard time making sense of it all, I'll just include everything I can and let you guys run with it.
Here are some phrases, ideas, terms and people of note that may be involved with this story...MODS: None of this is doxing! All of the links of people are wikipedia pages or published interviews/articles. So yeah. Not dox!
IN CONCLUSION
I don't know how these terms, theories and individuals fit into this story, but that they may be somehow related.
Hopefully there are enough bread crumbs in here to keep some of you busy!
Any help/insight would be appreciated. I confess I'm not so tech-minded so I can't offer any more explanation about some of the more techy terms.
Anyway, thanks for reading, and thanks for continuing to stimulate after all these years! It's really nice to see this place continuing to thrive after all of this time!
submitted by oomiak to conspiracy [link] [comments]

Is there a curl or nc command to test node reachability?

I'm looking for a simple curl or nc command to tell me if a node is reachable. The only thing I can come up with when I read through the docs would be to send the "version" message described below, but it only partially succeeds.
Are there any simpler bits I can fling at the port to know if its up?
My failed attempt to send a version message to my node. I just hand crafted this message so the fact that the IP and port are wrong may be fatal. I'm not sure if the bitcoin protocol responds on the same connection or opens a separate port for the verack message.
``` f9beb4d9 ................... Start string: Mainnet 76657273696f6e0000000000 ... Command name: version + null padding 00000065 ................... Byte count: 101
72110100 ........................... Protocol version: 70002 0100000000000000 ................... Services: NODE_NETWORK bc8f5e5400000000 ................... [Epoch time][unix epoch time]: 1415483324
0100000000000000 ................... Receiving node's services 00000000000000000000ffffc61b6409 ... Receiving node's IPv6 address 208d ............................... Receiving node's port number
0100000000000000 ................... Transmitting node's services 00000000000000000000ffffcb0071c0 ... Transmitting node's IPv6 address 208d ............................... Transmitting node's port number
128035cbc97953f8 ................... Nonce
0f ................................. Bytes in user agent string: 15 2f5361746f7368693a302e392e332f ..... User agent: /Satoshi:0.9.3/
cf050500 ........................... Start height: 329167 01 ................................. Relay flag: true
5f1a69d2 ................... Checksum: SHA256(SHA256(<101 byte body>)) ```
Which would translate to:
xxd -r -p <<< "\ f9beb4d976657273696f6e00000000000000006572110100010000000000\ 0000bc8f5e5400000000010000000000000000000000000000000000ffff\ c61b6409208d010000000000000000000000000000000000ffffcb0071c0\ 208d128035cbc97953f80f2f5361746f7368693a302e392e332fcf050500\ 015f1a69d2" | \ nc -X 5 -x 127.0.0.1:9050 -v mybitcoin20node.onion 8333 | xxd -g 1 * - Obviously the onion address is redacted, but you get the point
This shows Connection to mybitcoin20node.onion 8333 port [tcp/*] succeeded!, but no data reply. I suppose the fact that it was able to bind to that address:port may be enough to imply that the node can be reached. Maybe not.
Thoughts?
submitted by brianddk to Bitcoin [link] [comments]

Weekly Update #20-2020

Hi,
Today his Monday, and every Monday, it's Weekly update time :)
Development:
Done:
Doing:
Communication:
You can also follow the Trello board: https://trello.com/b/Fna9ydfw/vericonomy

Join us on:
Slack: https://slack.vericoin.info/
Telegram:
Twitter: https://twitter.com/vericoin
Discord: https://discord.com/invite/jPq4pdH
Have a nice week !
submitted by mderasse to vericoin [link] [comments]

Installing BitcoinSv Server

I found some tutorials and I'm putting together a Bitcoin Scripting Language Hackathon for our local Linux Users group webinar and am having a hard time getting a server to work properly. It's been a number of years since the last time I ran a server and I tried downloading this https://download.bitcoinsv.io/bitcoinsv/0.2.2.beta/. According to the readme it says to just run the command bin/bitcoind but it errors with "bitcoind not found" and the bin/bitcoind file is a copy of the readme. It's not a real install. Then I looked at the Github repository at https://github.com/bitcoin-sv/bitcoin-sv/blob/mastedoc/build-unix.md. I don't know how many of our users will be able to build it that way and, looking at the instructions, they are a bit sparse.
Anyway, two questions: 1) are there any better sources to help get a Bitcoin server going? and 2) Are there any scripting language tutorials based on BitcoinSV? All the ones I found were using BTC but I'm thinking it won't matter that much for a beginner's tutorial (but any help to shed a light on that would be great).
submitted by Bungeebones to bitcoinsv [link] [comments]

Guide to running bitcoind on a Raspberry Pi 4 (4gb ram) on an external hard drive

I have seen a lot of guides online but for a few reasons I thought it'd be good to share how I set up my full node (with relatively few headaches) and less than $150.

Stuff to get

  1. Raspberry Pi 4 (4gb ram is essential!) - $55
  2. Power cable for the raspberry pi - $10
  3. Case for the raspberry pi - $5 (optional, looks good and makes it easier to store)
  4. microHDMI to HDMI cable (needed to view desktop of raspberry pi) - $10
  5. SD Card, at least 8GB - ~$10+ (PS: you may also need a converter to read/write from your PC to the SD card).
  6. External hard drive, ideally at least a 1TB - $50+

Setup the Raspberry pi

  1. Download NOOBS and unzip it to SD card, and insert the SD card into the Raspberry Pi.
  2. Insert the SD card into the Raspberry Pi, and place the Raspberry Pi into its case. Connect the relevant cables, and plug in the power to the Raspberry Pi.
  3. Follow the instructions on screen to get Raspian up and running.

Configuring the External Hard Drive

  1. Turn off automount
  2. Configure the raspberry pi to mount the external hard drive where you want it. See this page on how to configure external hard drives for Raspberry Pis.

Download and configure bitcoin-core

  1. Go to bitcoin.org and download bitcoin-core.
  2. Follow the instructions here and install bitcoin-core.
  3. Create a directory called .bitcoin from the home directory.
  4. Create a file called bitcoin.conf in ~/.bitcoin. Add the following settings to it to ensure that you can process historical transactions:

server=1 txindex=1 rpcuser= rpcpassword= datadir= dbcache=2500 

Run bitcoind

  1. From the command line, run bitcoind -daemon
  2. Now you can run bitcoin-cli -getinfo or tail /debug.log to get info on how bitcoind is doing.
That should do it. Assuming a solid internet connection, you should be up and running relatively quickly (less than a day). If you need help, feel free to ask questions below. I'd be happy to help.
submitted by AdvancedStock3 to BlockchainDataScience [link] [comments]

A Good Pentesting Tools List

Collection of pentesting tools by BrainfuckSec

Anti Forensics Tools
Exploitation Tools
Forensics Tools
Information Gathering
Keyloggers
Maintaining Access
Password Attacks
Reverse Engineering
Sniffing Spoofing
Social Engineering
Vulnerability Analysis
Web Applications
Web Shells
Wireless Attacks
submitted by _brainfuck to Pentesting [link] [comments]

(Updated) [Staking] Reddcoin Core client GUI wallet on a Raspberry Pi Model 3B

Intro

This thread is an update to my first Reddcoin staking tutorial that was written 7 months ago.
 
The reason for the update
My Reddcoin Core software crashed and became unusable. My Raspberry Pi 3B would lag and freeze, I couldn't stake anymore.
 
Instead of just redoing everything the same way, I wanted to see if I could improve on 3 points:
 
The updates
 
If you would like to tip me
Writing a tutorial like this takes time and effort; tips are appreciated. My Reddcoin address: RqvdnNX5MTam855Y2Vudv7yVgtXdcYaQAW.
     

Overview

 

Steps

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
     

Video

https://www.youtube.com/watch?v=Snr5e8bzftI
This video shows how long it takes to start Reddcoin Core.   TL;DR:
     

Extra

Backup
Backup your wallet to prevent losing the RDDs in your wallet! There are two methods to backup, do both. Make new backups if you create a new receiving address!
 
 
   
Boot with only 1 USB drive plugged in:
Make sure only the USB drive (with the swap partition and data partition) is plugged in when you boot up your Raspberry Pi. This to make sure the swap partition (/dev/sda1) is recognized correctly.   If you boot up with multiple USB drives, Lubuntu might see the USB drive with the swap partition as the second drive (instead of the first drive), and ignore the 2 GB swap partition. If this happens, starting Reddcoin can render the Raspberry Pi unresponsive.
   
Connection issues If you have issues syncing the blockchain because you have 0 network connections, please follow the instructions in this thread.
   
Start Reddcoin Core easier
Run a shell script (.sh file), so you can start Reddcoin just by double clicking on an icon on your Desktop.
   
Minimization options
Adjust minimization options, so you can safely press on the X button (the close/exit button on the upper right corner).
   
RealVNC VNC Viewer (client) and VNC Connect (server): To remote connect to the Raspberry Pi, I use VNC Viewer ad VNC Connect from RealVNC.
 
   
Chromium as browser: The updates break Firefox, the browser crashes when you try to run it. Install another browser, Chromium, to solve this issue.
   
Updates / Upgrades
If Software Updater shows up and tells you that there is updated software available, do not install the updates using Software Updater. Use LXTerminal to update Lubuntu.  
     

Credits:

   
Credits in previous tutorial:
submitted by Yavuz_Selim to reddCoin [link] [comments]

Someone school Peter Schiff.

Peter Schiff thinks bitcoin is nothing like email for money because according to him "when email came out it was so much better than using the post office and thats why it worked". But apparently bitcoin is not better than banks because no one uses bitcoin and you cant find anywhere to spend your bitcoin.
Can someone please tell him that when email was first used it required command line unix skills and no one else had an email address so there was no one else to email. When it was first used it was far harder than using traditional mail services, yet it still scaled and gained adoption over time until one day it was the better option and thats when everyone finally onboarded so there were other people to finally email.
Bitcoin is the same, initially far harder to use than banks with no one else to use it with but this will not always be the case. One day it will be easier to use and considered the better option and everyone will then accept it in payment.
Peter thinks that because bitcoin is not already the superior option it never will be. This is the level of ignorance he posesses all while having the arrogance to sit for three hours on youtube live, picking comments, disregarding facts and then spewing his "opinion" without any form of rebuttal whatsoever.
Someone tried to tell him how data can be immutably embedded in the bitcoin blockchain and Peters response was that he trusts youtube to store data more than a blockchain.
Listen to this guy at your own risk when it comes to bitcoin.
submitted by slvbtc to Bitcoin [link] [comments]

BFGMiner Garlicoin tutorial

Some people have been having trouble with BFGMiner for Garlicoin, so I made a tutorial. This will only work on a Unix-based shell.
I have been informed that the Pastebin may not be beginner-friendly, so I will help anyone who needs it.
Thanks to ChilledGrease for their help with making the tutorial.
  1. Download and extract http://www.digip.org/jansson/releases/jansson-2.10.tar.gz
  2. cd to the folder and run ./configure && make && make install
  3. Download and extract https://github.com/troydhanson/uthash/archive/master.zip
  4. Download and extract http://luke.dashjr.org/programs/bitcoin/files/bfgmine4.10.6/bfgminer-4.10.6.zip
  5. cd to the bfgminer folder and run env CFLAGS='-I../uthash-mastesrc' ./configure --enable-opencl --enable-scrypt --enable-cpumining, assuming uthash-master is the directory you extracted in part 3.
  6. Run make && make install. If it says you do not have permission to do something, run sudo make install and enter your password.
  7. Set up garlicoind and its config. There is a tutorial here.
  8. Run garlicoind.
  9. Run this command: bfgminer --scrypt -o localhost:42070 -u [username in garlicoind config] -p [password] --no-longpoll --no-stratum --coinbase-addr [your address] -S opencl:auto
Citations:
https://askubuntu.com/a/386372
https://bitcointalk.org/index.php?topic=1260729.0
Edit: Adding citations section as well as CPU mining for those of you who don't want to or can't use a GPU.
Edit 2: Clarifications
Edit 3: Removed CPU mining as I cannot currently get it to work.
Edit 4: I don't want to make a 100000 character long post so I'm not gonna put this anymore.
Edit again: I can't get BFGMiner to work with the new scrypt:2048 algorithm, so this will not work for the time being.
submitted by U8336Tea to garlicoin [link] [comments]

BlockParser - A way to get the balance of all bitcoin addresses

For same time, I was searching for a way to get the balance of all bitcoin addresses in order to do statistical analysis of the wealthy distribution. If finally found a way to do it without using an external API such as blockchain.info. This method will allow you to create a list of all bitcoin addresses ordered by balance, excluding empty ones. This does not work properly for addresses involved in multisignature transactions.
Prerequisites:
Step 1 – Parse all blocks using this small program
#!/usbin/perl # File: blockParser.pl # Author: Saulo Fonseca # Licence: GNU GPLv3 use warnings; use strict; use JSON; # Get argument as block number my $blockNumber = $ARGV[0] + 0; # Convert to int # Get all transactions my $blockHash = `bitcoin-cli getblockhash $blockNumber`; chomp($blockHash); my $out = `bitcoin-cli getblock $blockHash`; my $json = decode_json($out); if (defined $json->{'tx'}) { my $txs = $json->{'tx'}; foreach my $txHash (@$txs) { $out = `bitcoin-cli getrawtransaction $txHash 1`; $json = decode_json($out); if (defined $json->{'vin'}) { # Get all input transactions my $vins = $json->{'vin'}; foreach my $vin (@$vins) { if (defined $vin->{'txid'}) { my $tx = $vin->{'txid'}; my $index = $vin->{'vout'}; printf("%s\t%d\tdel\n",$tx,$index); } } } if (defined $json->{'vout'}) { # Get all output addresses my $vouts = $json->{'vout'}; foreach my $vout (@$vouts) { if (defined $vout->{'scriptPubKey'}->{'addresses'}) { my $keys = $vout->{'scriptPubKey'}->{'addresses'}; my $value = $vout->{'value'}; my $index = $vout->{'n'}; foreach my $key (@$keys) { printf("%s\t%d\t%s\t%.8f\n",$txHash,$index,$key,$value); } } } } } } 
This program will get the height of the block as an argument and return a tab separated output with the following columns:
Here is an example of the output for the block 100000 (with cropped TXIDs in order to fit the reddit width):
8c14f0...d06d87 0 1HWqMzw1jfpXb3xyuUZ4uWXY4tqL2cW47J 50.00000000 87a157...382e03 0 del fff252...9702c4 0 1JqDybm2nWTENrHvMyafbSXXtTk5Uv5QAn 5.56000000 fff252...9702c4 1 1EYTGtG4LnFfiMvjJdsU7GMGCQvsRSjYhx 44.44000000 cf4e29...bf3ec3 1 del 6359f0...236ec4 0 1H8ANdafjpqYntniT3Ddxh4xPBMCSz33pj 0.01000000 6359f0...236ec4 1 1Am9UTGfdnxabvcywYG2hvzr6qK8T3oUZT 2.99000000 f4515f...72600b 0 del e9a668...b80c1d 0 16FuTPaeRSPVxxCnwQmdyx2PQWxX6HWzhQ 0.01000000 
You should process all blocks using this program and send the output to a text file. The command in bash that does it is:
seq -w 1 555000 | while read i; do (./blockParser.pl $i >> blocks.txt); done 
This will take a while depending on the performance of your system. However, it must be done only one time.
Step 2 – Export the list of all spent transactions
Use the following command to export all spent transactions on all processed blocks on step 1:
grep -h del blocks.txt | cut -f1,2 > spent.txt 
The lower cap letter L in “del” will not match any entry on a hex string nor on an address, as it is not allowed in base58.
Step 3 – Get the list of all UTXO
By removing all spent transactions, you have the list of all UTXO (unspent transactions output). Do it by running:
grep -v -f spent.txt blocks.txt > utxo.txt 
Step 4 – List all addresses balances
Using the UTXO list, you can get the balances of all addresses by running:
cat utxo.txt | cut -f3,4 | awk '{ seen[$1] += $2 } END { for (i in seen) printf "%.8f\t%s\n", seen[i], i }' | sort -n -r > anyBTC.txt 
Conclusion
You can import this last file on your favorite analysis program in order to have a better idea how the distribution of bitcoins over the addresses is.
PS: After the arrival of new blocks by the network, you only need to process the step 1 for the new blocks and repeat all the other steps in order to have an updated version of the files.
submitted by sauloqf to Bitcoin [link] [comments]

Homelab collective ressources post!

Hey guys!
I'm fairly new to this sub and to having a home lab in general and I found this community to be so kind and helping, I wanted to give back what I've learned. I'm seeing a lot of questions asked around on improvements and on what to do with x extra hardware so I thought it would be nice to have a thread to regroup that.
 
I'll put here some stuff I gathered and the most common questions I've seen, feel free to contribute and i'll update the post along.
 
Latest Additions
 
Homelab Dashboard
Posts about dashboards have been growing lately and here are some of the best that were kind enough to provide us with their sources.
User Screenshot Source
yours truly http://imgur.com/a/GhCNH https://github.com/Gabisonfire/dashboard-q
lastditchefrt http://i.imgur.com/5zQdao4.png https://github.com/d4rk22/Network-Status-Page
_SleepingBag_ http://i.imgur.com/Ql9ZM4W.png https://github.com/jsank/homelabdash
NiknakSi https://niknak.org/extras/sysinfo TBA
DainBramaged http://imgur.com/jYNlUEQ https://github.com/gordonturneBigBoard
michaelh4u https://i.imgur.com/XkZwMKj.png https://github.com/michaelh4u/homelabfrontpage
spigotx http://imgur.com/a/1zMht https://github.com/spigotx/HomeLab2
SirMaster https://nicko88.com/ https://github.com/dashbad/plex-server-status
yourofl10 http://imgur.com/a/AyROa TBA
TheBobWiley http://imgur.com/a/oU6d3 https://github.com/TheBobWiley/ManageThis-LandingPages
0110010001100010 http://i.imgur.com/iwtQcsL.jpg https://github.com/danodemano/monitoring-scripts
mescon & SyNiK4L https://i.imgur.com/gqdVM6p.jpg https://github.com/mescon/Muximux
ak_rex http://i.imgur.com/a/RJkrT https://github.com/ak-rex/homelab-dashboard
 
Or build yours from scratch: PRTG API, ELK, Grafana, freeboard, JumpSquares
 
Some other resources: Custom Monitoring Scripts by 0110010001100010
 
Credits to apt64 for his original post
= Pi specific =
 
= Download Automation =
 
= Virtualization =
 
= Monitoring =
 
= Media Center =
 
= Remote access =
 
= VOIP =
 
= Networking =
 
= File Servers/Storage/RAID =
 
= Cameras =
 
= Documentation =
 
= Dynamic DNS =
 
= Backup =
 
= Creating network diagrams =
 
= Guides =
 
= Misc =
 
That's all I could come up with on top of my head + some research, passing over to you guys so we can get a nice complete list!
 
Let's try and stick with free(or mostly) softwares, let me know if you guys feel otherwise.
submitted by Gabisonfire to homelab [link] [comments]

[Staking] Reddcoin Core client GUI wallet on a Raspberry Pi Model 3B

This tutorial has been updated: https://www.reddit.com/reddCoin/comments/a0wn1v/updated_staking_reddcoin_core_client_gui_wallet/.
   

Intro

I want to stake Reddcoins on my Raspberry Pi, but there is no easy to install package for the Reddcoin Core client. I found some tutorials (mentioned at the bottom, under 'credits'), but I still struggled to get the result I wanted. It took some small adjustments, but I got the GUI Wallet of Reddcoin Core working on my Raspberry Pi Model 3B. See the steps below. :).
 
If you have any questions or comments, please post a comment in this thread, so others can also benefit from it.
 
If you would like to tip me: RqvdnNX5MTam855Y2Vudv7yVgtXdcYaQAW.
   
Even though Raspbian is the primary OS for the Raspberry Pi, it seems that it's not possible to build and compile the Reddcoin wallet software for Raspbian Stretch. However, I got the wallet compiled using Ubuntu MATE.
     

Overview

     

Steps

 
 
 
 
 
 
 
 
 
 
 
 
 
 
     

Extra

 
 
 
 
     

Credits:

 
Thank you all for sharing your knowledge!
submitted by Yavuz_Selim to reddCoin [link] [comments]

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)

PART ONE

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
datadir=l:\yourfolder
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:
dbcache=4096
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:
prune=550
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:
blocks chainstate
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.

PART 2

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:
http://raspnode.com/diyBitcoin.html
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.
mkdir ~/bin cd ~bin
Now you are in the folder you want your bitcoin core data be downloaded to via git. I didn't Downloaded the Berkeley Database source code - so I also skipped the whole next command lines
[email protected]~/bin$ wget http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz [email protected]~/bin$ tar -xzvf db-4.8.30.NC.tar.gz [email protected]~/bin$ cd db-4.8.30.NC/build_unix/ [email protected]~/bin/db-4.8.30.NC/build_unix$ ../dist/configure --enable-cxx [email protected]~/bin/db-4.8.30.NC/build_unix$ make -j4
and went on with "INSTALLING BITCOIN"!
I followed the first part but instead downloading 0.13 I took of course the latest version:0.14
git clone -b 0.14 https://github.com/bitcoin/bitcoin.git cd bitcoin ./autogen.sh
this might take some time to start.
If you have trouble with hanging RESOLVING DELTAS - just restart the Raspberry Pi and remove the bitcoin folder inside /~bin using
rm -rf bitcoin
this command will delete the folder and you can reuse
git clone -b 0.14 https://github.com/bitcoin/bitcoin.git

For some reason RESOLVING DELTAS is a common problem with different downloads - so just retry it and at least after 3 times it should work!

as I didn't use the GUI/ Wallet, I ran
./configure --enable-upnp-default --disable-wallet
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:
bitcoind &
than check if everything is working so far:
bitcoin-cli getinfo
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!
bitcoin-cli stop
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)
prune=550
That's it for the raspi.
update: To signal UASF enter in a new line:
uacomment=UASF-SegWit-BIP148

TRANSFER

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
.bitcoin
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.
bitcoind &
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.
bitcoin-cli getinfo
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.
submitted by I-am-the-noob to Bitcoin [link] [comments]

4. Installing Bitcoin Core on Linux How To Mine Bitcoin On PC, Mac, Or Linux - YouTube How to run a Bitcoin Full Node(Linux + Build from Source) How to mine Bitcoin Using linux CPU How to mine Bitcoin - Using Linux

UNIX BUILD NOTES. Some notes on how to build Bitcoin Core in Unix. (For BSD specific instructions, see build-*bsd.md in this directory.). Note. Always use absolute paths to configure and compile Bitcoin Core and the dependencies. After installing Coinmon bitcoin price checker on your Linux machine, you just need to run the Coinmon command to get a list of top 10 cryptocurrencies, arranged by their marketcap. Just run: coinmon For working bitcoind command in windows, you have to go to dir C:\Program Files\Bitcoin\daemon and Execute these commands. Using Bitcoin core version 16 on windows 10.. bitcoind getinfo in Linux. bitcoind -h in windows. Use this command after changing directory like shown in pic The tail command shows you the most recent entries into that file, but only once. Using the -f flag will give you a continuously running stream of those updates. When you enter the following command you’ll see nothing because Bitcoin isn’t running yet, but we’ll leave it like this for now: $ tail -f ~/.bitcoin/debug.log Start Bitcoin, now you will see all the files are created in the new data directory. Linux. By default Bitcoin will put its data here: ~/.bitcoin/ You need to do a "ls -a" to see directories that start with a dot. If that's not it, you can do a search like this: find / -name wallet.dat -print 2>/dev/null Mac. By default Bitcoin will put its ...

[index] [10226] [21091] [13116] [6015] [281] [3967] [11035] [27568] [9007] [32773]

4. Installing Bitcoin Core on Linux

In this video we will build Bitcoin Core from source and run a Bitcoin full node on a linux server. ... In this video we will build Bitcoin Core from source and run a Bitcoin full node on a linux ... Unix & Linux: Bitcoin wallet backup "0/unconfirmed" Helpful? Please support me on Patreon: https://www.patreon.com/roelvandepaar With thanks & praise to God,... This video will demonstrate how to create an account at minergate and how to mine bitcoin in Linux. MINERGATE LINK: https://minergate.com/a/e13126b573b894c64... This video will demonstrate how to mine bitcoin in Linux. MINERGATE LINK: https://minergate.com/a/e13126b573b894c64393990a Bitcoin Donation : 3HNH19ss5Fd1j8j... This video will demonstrate how to create an account at minergate and how to mine bitcoin using the CPU of a computer running Ubuntu linux. » Mining Equipment List: • Power supply 500w - http ...

#