Bitcoin Core Config Generator - GitHub Pages

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]

Groestlcoin 6th Anniversary Release

Introduction

Dear Groestlers, it goes without saying that 2020 has been a difficult time for millions of people worldwide. The groestlcoin team would like to take this opportunity to wish everyone our best to everyone coping with the direct and indirect effects of COVID-19. Let it bring out the best in us all and show that collectively, we can conquer anything.
The centralised banks and our national governments are facing unprecedented times with interest rates worldwide dropping to record lows in places. Rest assured that this can only strengthen the fundamentals of all decentralised cryptocurrencies and the vision that was seeded with Satoshi's Bitcoin whitepaper over 10 years ago. Despite everything that has been thrown at us this year, the show must go on and the team will still progress and advance to continue the momentum that we have developed over the past 6 years.
In addition to this, we'd like to remind you all that this is Groestlcoin's 6th Birthday release! In terms of price there have been some crazy highs and lows over the years (with highs of around $2.60 and lows of $0.000077!), but in terms of value– Groestlcoin just keeps getting more valuable! In these uncertain times, one thing remains clear – Groestlcoin will keep going and keep innovating regardless. On with what has been worked on and completed over the past few months.

UPDATED - Groestlcoin Core 2.18.2

This is a major release of Groestlcoin Core with many protocol level improvements and code optimizations, featuring the technical equivalent of Bitcoin v0.18.2 but with Groestlcoin-specific patches. On a general level, most of what is new is a new 'Groestlcoin-wallet' tool which is now distributed alongside Groestlcoin Core's other executables.
NOTE: The 'Account' API has been removed from this version which was typically used in some tip bots. Please ensure you check the release notes from 2.17.2 for details on replacing this functionality.

How to Upgrade?

Windows
If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer.
OSX
If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), run the dmg and drag Groestlcoin Core to Applications.
Ubuntu
http://groestlcoin.org/forum/index.php?topic=441.0

Other Linux

http://groestlcoin.org/forum/index.php?topic=97.0

Download

Download the Windows Installer (64 bit) here
Download the Windows Installer (32 bit) here
Download the Windows binaries (64 bit) here
Download the Windows binaries (32 bit) here
Download the OSX Installer here
Download the OSX binaries here
Download the Linux binaries (64 bit) here
Download the Linux binaries (32 bit) here
Download the ARM Linux binaries (64 bit) here
Download the ARM Linux binaries (32 bit) here

Source

ALL NEW - Groestlcoin Moonshine iOS/Android Wallet

Built with React Native, Moonshine utilizes Electrum-GRS's JSON-RPC methods to interact with the Groestlcoin network.
GRS Moonshine's intended use is as a hot wallet. Meaning, your keys are only as safe as the device you install this wallet on. As with any hot wallet, please ensure that you keep only a small, responsible amount of Groestlcoin on it at any given time.

Features

Download

iOS
Android

Source

ALL NEW! – HODL GRS Android Wallet

HODL GRS connects directly to the Groestlcoin network using SPV mode and doesn't rely on servers that can be hacked or disabled.
HODL GRS utilizes AES hardware encryption, app sandboxing, and the latest security features to protect users from malware, browser security holes, and even physical theft. Private keys are stored only in the secure enclave of the user's phone, inaccessible to anyone other than the user.
Simplicity and ease-of-use is the core design principle of HODL GRS. A simple recovery phrase (which we call a Backup Recovery Key) is all that is needed to restore the user's wallet if they ever lose or replace their device. HODL GRS is deterministic, which means the user's balance and transaction history can be recovered just from the backup recovery key.

Features

Download

Main Release (Main Net)
Testnet Release

Source

ALL NEW! – GroestlcoinSeed Savior

Groestlcoin Seed Savior is a tool for recovering BIP39 seed phrases.
This tool is meant to help users with recovering a slightly incorrect Groestlcoin mnemonic phrase (AKA backup or seed). You can enter an existing BIP39 mnemonic and get derived addresses in various formats.
To find out if one of the suggested addresses is the right one, you can click on the suggested address to check the address' transaction history on a block explorer.

Features

Live Version (Not Recommended)

https://www.groestlcoin.org/recovery/

Download

https://github.com/Groestlcoin/mnemonic-recovery/archive/master.zip

Source

ALL NEW! – Vanity Search Vanity Address Generator

NOTE: NVidia GPU or any CPU only. AMD graphics cards will not work with this address generator.
VanitySearch is a command-line Segwit-capable vanity Groestlcoin address generator. Add unique flair when you tell people to send Groestlcoin. Alternatively, VanitySearch can be used to generate random addresses offline.
If you're tired of the random, cryptic addresses generated by regular groestlcoin clients, then VanitySearch is the right choice for you to create a more personalized address.
VanitySearch is a groestlcoin address prefix finder. If you want to generate safe private keys, use the -s option to enter your passphrase which will be used for generating a base key as for BIP38 standard (VanitySearch.exe -s "My PassPhrase" FXPref). You can also use VanitySearch.exe -ps "My PassPhrase" which will add a crypto secure seed to your passphrase.
VanitySearch may not compute a good grid size for your GPU, so try different values using -g option in order to get the best performances. If you want to use GPUs and CPUs together, you may have best performances by keeping one CPU core for handling GPU(s)/CPU exchanges (use -t option to set the number of CPU threads).

Features

Usage

https://github.com/Groestlcoin/VanitySearch#usage

Download

Source

ALL NEW! – Groestlcoin EasyVanity 2020

Groestlcoin EasyVanity 2020 is a windows app built from the ground-up and makes it easier than ever before to create your very own bespoke bech32 address(es) when whilst not connected to the internet.
If you're tired of the random, cryptic bech32 addresses generated by regular Groestlcoin clients, then Groestlcoin EasyVanity2020 is the right choice for you to create a more personalised bech32 address. This 2020 version uses the new VanitySearch to generate not only legacy addresses (F prefix) but also Bech32 addresses (grs1 prefix).

Features

Download

Source

Remastered! – Groestlcoin WPF Desktop Wallet (v2.19.0.18)

Groestlcoin WPF is an alternative full node client with optional lightweight 'thin-client' mode based on WPF. Windows Presentation Foundation (WPF) is one of Microsoft's latest approaches to a GUI framework, used with the .NET framework. Its main advantages over the original Groestlcoin client include support for exporting blockchain.dat and including a lite wallet mode.
This wallet was previously deprecated but has been brought back to life with modern standards.

Features

Remastered Improvements

Download

Source

ALL NEW! – BIP39 Key Tool

Groestlcoin BIP39 Key Tool is a GUI interface for generating Groestlcoin public and private keys. It is a standalone tool which can be used offline.

Features

Download

Windows
Linux :
 pip3 install -r requirements.txt python3 bip39\_gui.py 

Source

ALL NEW! – Electrum Personal Server

Groestlcoin Electrum Personal Server aims to make using Electrum Groestlcoin wallet more secure and more private. It makes it easy to connect your Electrum-GRS wallet to your own full node.
It is an implementation of the Electrum-grs server protocol which fulfils the specific need of using the Electrum-grs wallet backed by a full node, but without the heavyweight server backend, for a single user. It allows the user to benefit from all Groestlcoin Core's resource-saving features like pruning, blocks only and disabled txindex. All Electrum-GRS's feature-richness like hardware wallet integration, multi-signature wallets, offline signing, seed recovery phrases, coin control and so on can still be used, but connected only to the user's own full node.
Full node wallets are important in Groestlcoin because they are a big part of what makes the system be trust-less. No longer do people have to trust a financial institution like a bank or PayPal, they can run software on their own computers. If Groestlcoin is digital gold, then a full node wallet is your own personal goldsmith who checks for you that received payments are genuine.
Full node wallets are also important for privacy. Using Electrum-GRS under default configuration requires it to send (hashes of) all your Groestlcoin addresses to some server. That server can then easily spy on your transactions. Full node wallets like Groestlcoin Electrum Personal Server would download the entire blockchain and scan it for the user's own addresses, and therefore don't reveal to anyone else which Groestlcoin addresses they are interested in.
Groestlcoin Electrum Personal Server can also broadcast transactions through Tor which improves privacy by resisting traffic analysis for broadcasted transactions which can link the IP address of the user to the transaction. If enabled this would happen transparently whenever the user simply clicks "Send" on a transaction in Electrum-grs wallet.
Note: Currently Groestlcoin Electrum Personal Server can only accept one connection at a time.

Features

Download

Windows
Linux / OSX (Instructions)

Source

UPDATED – Android Wallet 7.38.1 - Main Net + Test Net

The app allows you to send and receive Groestlcoin on your device using QR codes and URI links.
When using this app, please back up your wallet and email them to yourself! This will save your wallet in a password protected file. Then your coins can be retrieved even if you lose your phone.

Changes

Download

Main Net
Main Net (FDroid)
Test Net

Source

UPDATED – Groestlcoin Sentinel 3.5.06 (Android)

Groestlcoin Sentinel is a great solution for anyone who wants the convenience and utility of a hot wallet for receiving payments directly into their cold storage (or hardware wallets).
Sentinel accepts XPUB's, YPUB'S, ZPUB's and individual Groestlcoin address. Once added you will be able to view balances, view transactions, and (in the case of XPUB's, YPUB's and ZPUB's) deterministically generate addresses for that wallet.
Groestlcoin Sentinel is a fork of Groestlcoin Samourai Wallet with all spending and transaction building code removed.

Changes

Download

Source

UPDATED – P2Pool Test Net

Changes

Download

Pre-Hosted Testnet P2Pool is available via http://testp2pool.groestlcoin.org:21330/static/

Source

submitted by Yokomoko_Saleen to groestlcoin [link] [comments]

Understanding BIP149, redeployment of Segwit with BIP8

I recently published BIP149 and would like to take a few moments to explain the details of this proposal.
BIP149 is a completely new deployment of segwit, which I propose if the current BIP9/BIP141/143/147 segwit deployment fails to lockin/activate by November 15th.
BIP149 cannot be run on mainnet now, and there is code in the reference implementation to prevent it from running. It is incompatible with the current segwit deployment on purpose to remove unnecessary complications.
Essentially, the idea is, if the current segwit deployment fails to activate by Nov 15th, we can release new software that has BIP149. This uses BIP8 to activate segwit by July 2018. Miners will still be able to trigger activation by 95% threshold signalling as normal. In the 8 months from November to July 2018, nodes will be able to upgrade to BIP149. If segwit is not MASF activated by July 2018, there will be enough of the economy running BIP149 that nodes can begin enforcement. What will actually happen is on the first retarget after July 4th, the BIP8 state machine will switch to LOCKED_IN status for two weeks, and then on the following retarget, ACTIVATION will occur. The rationale here is in 5 months we achieved 70% saturation of witness capable nodes, so by the time segwit timesout with all the urgency and demand people feel for segwit, we can expect them to upgrade at least as fast, if not much faster. I have spoken with a number of developers who think this is a reasonable assumption.
Background, I had hoped to be able to release a BIP that can be deployed concurrently now with segwit, but, there are various technical complications in implementing it cleanly and making it easily reviewable. I had various feedback from others in previous iterations and in order to get the widest support from developers especially concerned with predictable results and thus safety, I came to the conclusion that the BIP will get the widest support by not attempting any shortcuts and by removing all complexity. I know many people want segwit now, but, I think we should just bite the bullet and do it the BIP149 way. I already made a shortcut BIP with BIP148. I will discuss the pros and cons at the end.
Back to BIP149, this is a completely new redeployment with a new service bit NODE_UAWITNESS and new compact block protocol version - doing this avoids many gotchyas which I will explain below:
Currently, segwit capable nodes advertize the NODE_WITNESS service bit and preferentially peer with other NODE_WITNESS nodes. Post activation, segwit-active nodes will then know who they should relay witness blocks to and who they should relay old style stripped blocks to. The assumption is if I am a NODE_WITNESS node and segwit has activated, then other NODE_WITNESS nodes will also be segwit activated. We cannot reuse NODE_WITNESS because when BIP149 activates, they would believe non-BIP149 NODE_WITNESS nodes were also active. Using a new service bit, and effectively starting a new deployment as if the previous deployment doesnt exist, is the most predictable and trouble free way to go about it.
Additionally, BIP149 is compatible with existing mining software by reusing the "segwit" name and deployment chainparams (it's not possible to have two deployments with the same name, one expired and one pending/active, due to how versionbits is implemented). In short, if the current segwit deployment fails to activate, we can reuse parts to maintain compatibility, while changing the bare minimum to remove any conflicts with old nodes. It's clean, predictable and easy to review.
BIP148 IS NOT BIP149
Remember BIP148 is exceptional, it's NOT what a usual UASF BIP should look like. A normal UASF if effectively activation on a predetermined date in the future (a flag day). BIP8 combines BIP9 miner signalling with a flagday if MASF does not occur.
How is BIP149 different to BIP148? So BIP148 is a UASF which can be used in two ways. (a) The economy can run BIP148 and basically force miners to signal for segwit, thus activating the current segwit deployment. Or, (b) a majority of miners, 60% or so, could run it and censor other miners who do not signal segwit, thus causing the current segwit to deploy. In method (a) a chain split will occur if any miners do not upgrade, and given the fact there are always absentee miners and pool operators, this is quite likely. It's the economy vs hash power saying "if you dont signal, your blocks will not be worth anything because we will reject them". In the case of (b) you have a majority of hashpower, who could use their majority to orphan any non signalling miners. This isn't great but it's less disruptive than (a) because there is a majority hashpower definitely opted in.
BIP149 on the other had does not guarantee a chain split since that could only happen if a miner deliberately takes action to manually create a segwit invalid block, which would be rejected by the economy. The incentives are different also, with BIP148 a chainsplit comes for free, regardless of if it lasts long or not. In BIP149, a miner would have to specifically take action to split and waste their money, which they could do at any time anyway. BIP149 is uncontroversial in the sense it is just a redeployment with guaranteed activation at the end, for a soft fork we are fairly sure people want and will upgrade to. The evidence is everywhere. UASFs deployed over a long time and a decent flagday are perfectly safe - all soft forks are enforced by nodes, even if activation is triggered by hashpower.
Anyway, we've got 8 months from now to review and think about BIP149 - it cannot be deployed until November. If you would like to show support for BIP149, feel free to add the following to your bitcoin.conf
uacomment=UASF-SegWit-BIP149 
Note you can have multiple uacomments like:
uacomment=BIP8 uacomment=UASF-SegWit-BIP149 uacomment=UASF-SegWit-BIP148 
You can find the bitcoin.conf file here
You can also just add this to a shortcut - create a shortcut (or edit the existing one you use) and add this to the end: -uacomment=UASF-SegWit-BIP149
e.g. (just add the property to the end like this):
"C:\Program Files\Bitcoin\bitcoin-qt.exe" -uacomment=UASF-SegWit-BIP149 if you are using Windows.
You can also just add uacomments as multiple command line/shortcut arguments like
-uacomment=BIP8 -uacomment=UASF-SegWit-BIP149 -uacomment=UASF-SegWit-BIP148 
Then you can check here to see how your node is signalling at https://bitnodes.21.co/ will show something like: xxx.xxx.xxx.xxx:8333 /Satoshi:0.14.1(UASF-SegWit-BIP149)/
If your node has synced and doesn't show using the link above make sure to enable forwarding of port 8333 so you accept incoming connections (if you want to that is) - in your client: go into settings / network and tick enable incoming connections and use upnp. You might have to add it to your firewall if this doesn't work. [taken from this user comment].
Read the BIP https://github.com/bitcoin/bips/blob/mastebip-0149.mediawiki
See the implementation https://github.com/bitcoin/bitcoin/compare/master...shaolinfry:uasegwit-flagday
submitted by shaolinfry to Bitcoin [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]

Gridcoin Leisure Update 3.7.14.0 Released

Today we have a new leisure update for you. This version includes a lot of "under the hood" changes, but there are some improvements for the average user as well.
 
Notably this release includes a better time to stake calculation method, thanks to @jamescowens. Also the Neural Network runs much smoother thanks to many optimizations by @ifoggz.
 
Download the update from GitHub here.
The Windows MSI can be downloaded here.
 
Full Release Notes:
Added
 
Changed
 
Fixed
 
Removed
 
Thank you to all the developers who contributed to this release. I will update this post when the Windows MSI has been uploaded to the website.
submitted by barton26 to gridcoin [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]

Walk through of how to claim BCD Bitcoin Diamond

I am completely naive when it comes to Linux, coding, compiling, etc., so I found it difficult to follow advice I found for compiling the bitcoin diamond code form git. I followed a few guides for bitcoin core first and could never get it to work. I got some help from someone that knows Linux and here's what finally worked for me with BCD.
Use rufus to make bootable usb with ubuntu iso. (https://rufus.akeo.ie/)
Boot from the usb and install ubuntu.
Follow this guide to compile bitcoin from git: https://www.toshblocks.com/bitcoin/compile-bitcoin-source-code-ubuntu-16-04-lts/
Do the entire guide with bitcoin core to ensure everything is working.
Make sure you replace "theusername" with your own each time it appears, or make "theusername" your user name from the beginning.
There was one small difference, at the end of the guide to run bitcoin-qt it is ./src/qt/bitcoin-qt
At the end when trying to run bitcoin-qt (./src/bitcoin-qt) it said there was no such file, which made me think that I did something wrong but you just have to find where the file is. Hey, I said I was a complete noob, go easy on me.
When you repeat the procedure for BCD there will be a few small changes:
git clone https://github.com/bitcoin/bitcoin.git
becomes
git clone https://github.com/eveybcd/BitcoinDiamond.git
mkdir bitcoin/db4/
becomes
mkdir BitcoinDiamond/db4/
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=/home/theusername/bitcoin/db4/
becomes
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=/home/theusername/BitcoinDiamond/db4/
./configure LDFLAGS="-L/home/theusername/bitcoin/db4/lib/" CPPFLAGS="-I/home/theusername/bitcoin/db4/include/"
becomes
./configure LDFLAGS="-L/home/theusername/BitcoinDiamond/db4/lib/" CPPFLAGS="-I/home/theusername/BitcoinDiamond/db4/include/"
when you get to this line: [email protected]:~/BitcoinDiamond$ ./autogen.sh
I got the following error:
bash: ./autogen.sh: Permission denied
this command will show some information about autogen.sh
[email protected]:~/BitcoinDiamond$ ls -l autogen.sh
-rw-rw-r-- 1 mmmmm mmmmm 527 Dec 30 21:26 autogen.sh
same command comparing it to the bitcoin core version of autogen.sh
$ ls -l ../bitcoin/autogen.sh
-rwxrwxr-x 1 mmmmm mmmmm 527 Dec 30 21:03 ../bitcoin/autogen.sh
do this to make them the same
[email protected]:~/BitcoinDiamond$ chmod a+x autogen.sh
recheck autogen.sh and it should match the bitcoin core autogen.sh now
[email protected]:~/BitcoinDiamond$ ls -l autogen.sh
-rwxrwxr-x 1 mmmmm mmmmm 527 Dec 30 21:26 autogen.sh
continue on
[email protected]:~/BitcoinDiamond$ ./autogen.sh
[email protected]:~/BitcoinDiamond$ ./configure LDFLAGS="-L/home/mmmmm/BitcoinDiamond/db4/lib/" CPPFLAGS="-I/home/mmmmm/BitcoinDiamond/db4/include/"
[email protected]:~/BitcoinDiamond$ make -s -j5
It will work a while and then you'll get the following error, among others:
/bin/bash: ../share/genbuild.sh: Permission denied
It's the same error as with autogen.sh, so find it and fix it by the following:
[email protected]:~/BitcoinDiamond$ find . -name genbuild.sh ./share/genbuild.sh
[email protected]:~/BitcoinDiamond$ chmod a+x ./share/genbuild.sh
continue on by restarting make
[email protected]:~/BitcoinDiamond$ make -s -j5
It should be good!
go to and run bitcoin-qt to start the gui
[email protected]:~/BitcoinDiamond/src$ cd qt
[email protected]:~/BitcoinDiamond/src/qt$ ./bitcoin-qt
bitcoin-wt will spend some hours syncing the entire blockchain so you have to wait.
When it is finished, import private keys by:
clicking in the "Bitcoin Core - Wallet" window to make it active
hover mouse in top left of the grey bar on the top of the deskto screen, not the "Bitcoin Core - Wallet" until it says "file settings help"
click on "help"
click on "Debug Window"
click on the "Console" tab
enter "importprivkey 5KJvsngHeMpm884wtkJNzQGaCErckhHJBGFsvd3VyK5qMZXj3hS" with your own key
make an account at gate.io where they are allowing deposits
sell!, or don't, maybe you're nuts, who am I to judge
submitted by Ozmodiar to BitcoinAirdrops [link] [comments]

Bitcoin Core 0.10.1 Released

Bitcoin Core version 0.10.1 is now available from:
https://bitcoin.org/bin/bitcoin-core-0.10.1/
This is a new minor version release, bringing bug fixes and translation updates. If you are using 0.10.0, it is recommended to upgrade to this version.
Please report bugs using the issue tracker at github:
https://github.com/bitcoin/bitcoin/issues

Upgrading and downgrading

How to Upgrade

If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer (on Windows) or just copy over /Applications/Bitcoin-Qt (on Mac) or bitcoind/bitcoin-qt (on Linux).

Downgrade warning

Because release 0.10.0 and later makes use of headers-first synchronization and parallel block download (see further), the block files and databases are not backwards-compatible with pre-0.10 versions of Bitcoin Core or other software:
If you want to be able to downgrade smoothly, make a backup of your entire data directory. Without this your node will need start syncing (or importing from bootstrap.dat) anew afterwards. It is possible that the data from a completely synchronised 0.10 node may be usable in older versions as-is, but this is not supported and may break as soon as the older version attempts to reindex.
This does not affect wallet forward or backward compatibility.

Notable changes

This is a minor release and hence there are no notable changes. For the notable changes in 0.10, refer to the release notes for the 0.10.0 release at https://github.com/bitcoin/bitcoin/blob/v0.10.0/doc/release-notes.md

0.10.1 Change log

Detailed release notes follow. This overview includes changes that affect external behavior, not code moves, refactors or string updates.
RPC:
Block (database) and transaction handling:
P2P protocol and network code:
Validation:
Build system:
Wallet:
GUI:
Tests:
Miscellaneous:

Credits

Thanks to everyone who contributed to this release:
As well as everyone that helped translating on Transifex.
submitted by harda to Bitcoin [link] [comments]

WIP: Blackpi - a stake device based on raspberry

Warning: This is a WiP and it's using Blackcoin Lore which is still in beta. Please be aware of that and backup your wallet.dat before you put any real values in this!
UPDATES
29.12.2017
22.06.2017
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
sudo raspi-config 
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
lored 
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
Have fun!
Donations: B4nn2Y3SFC6whNGNvcQ2MvV1aQbZp3cZVF
submitted by mindphuk to blackcoin [link] [comments]

How To Use Coin Control & Stake More With 'PoS' DEAL Coins

How To Use Coin Control & Stake More With 'PoS' DEAL Coins
When you are using Proof of Stake (PoS) coins, active coin control is essential to ensuring that you maximize your PoS rewards. If you do not use coin control you may benefit less from the compounding of your rewards, and you may lose more rewards than necessary when you make a payment from your wallet.
Exactly how much difference this makes will depend on the specifications of the coin itself, and what transactions you make. It is particularly important for coins such as IdealCash, in which small and medium-sized holders must wait a long time between each time they stake and get a reward.
This presents a manual method of coin control for users of Qt wallets!
Why You Need to Use Coin Control
As I already stated, small and medium-sized IdealCash holders must wait a long time before they stake. When you do finally get to stake some coins, you do not get the interest due on your whole balance; instead, one of the payments you have received is selected and you earn the rewards due on that amount. The rest of your interest is not lost, it keeps building up and you get it later. But what this means is that if you receive a single payment for 10,000 coins, for example, you will earn more compound interest than if you receive 10 payments for 1,000 coins, even though your balance is the same. This is because in both cases you will wait the same amount of time before getting your first reward, but in the first instance you will receive all of your interest at once, whereas in the second example you will receive only 10% as much on your first stake. Because you can earn PoS rewards on your PoS rewards (compounding) that mean you will eventually end up with more money in the first example when you got a single payment than you would in the second example where you got 10 payments that added up to the same amount.
In the example above you could easily fix this without getting into any advanced techniques simply by using your wallet in the ordinary way to send yourself 10,000 coins. By doing this you would combine all of the outputs – all 10 of the 1,000 IdealCash payments – into a single output. But sometimes things can be a little more complicated. For example, let's say you receive a single payment of 10,000 coins, and leave it in your wallet to stake. After 8 weeks you still haven’t earned your first reward, but have built up a nice bit of ‘interest owed’ on these coins. You now receive those 10 payments for 1,000 each we looked at before. When you spend any coins in your wallet, you lose the unpaid rewards owed to you for staking them. So in this example, you would want to send a 10,000 IdealCash payment to yourself using these 10 new payments. But if you simply use the wallet as normal to send a payment to yourself it will probably not do this – it will use the 10,000 you got in your first deposit, destroying your earned rewards and doing nothing to consolidate the smaller payments. To do this, you need to be able to specify which outputs (which payments received) you want to use to create your transaction; that is what I am going to show you how to accomplish in this guide.
Coin control can also be useful when sending payments from your wallet. By specifying which outputs to use in order to make a payment you can ensure that you are not losing rewards unnecessarily. Please be aware, however, that when sending payments to somebody else you will probably need to send yourself change because each output is used entirely in each transaction. I will explain this properly later on in the guide, but for now just be aware that if you don’t do this you may lose some of your coins.
Manual Coin Control Using the Qt Wallet Console
Manual coin control requires you to use the console rather than the GUI. That means instead of just selecting options from menus, you have to manually type commands. These commands must be precise and use the correct grammar or they won’t work, so please read the instructions carefully and check that you have typed each command correctly before hitting enter.
To open a console window you just need to click ‘Help’ from the navigation menu of your wallet, then select ‘Debug Window’. This will open up a new window with two tabs: click ‘console’ to get to the tab that we are going to use here.
Step One: List Unspent Outputs In your console window type “listunspent” (without the quotation marks) and hit enter. This will give you a list of all the outputs of previous transactions which belong to you, or in more plain language, all of the payments that you have received.
Each one will appear between curly brackets and should look something like this:
{
"txid" : "a long list of random looking characters should be here",
"vout" : "this should be a number",
"address" : "this is the IdealCash address belonging to you that these coins where sent to",
"account" : "",
"scriptPubKey" : "another long list of random looking characters",
"amount" : "the number of coins you received",
"confirmations" : "the number of confirmations for this transaction"
}
You can use this list to select the outputs you want to use to make a payment. For example, IdealCash owners may want to select smaller and newer outputs (newer outputs will have fewer confirmations) and leave any older and larger ones.
When you have chosen which ones you want to use, make a note of the exact “amount” for each one. If you have received coins with more than one address then you will also need a list of each address that appears in one of the outputs you are going to use.
Once you have made a note of these things separately, we only need the “txid”, “vout” and “scriptPubKey” to put into the next step. You may like to copy and paste each one into a text editor and then delete every line apart from those three, to leave something like this:
{
"txid" : "a long list of random looking characters should be here",
"vout" : "this should be a number",
"scriptPubKey" : "another long list of random looking characters"
}
Notice that I have removed the comma from the end of the “scriptPubKey” line. Commas must always be included at the end of each line, apart from the last one. This is one of those annoying grammar things that you have to get right (and which I personally mess up more often than not). Don’t worry too much, if you get this kind of thing wrong you won’t lose any coins, it just won’t accept the command. Also please note that if you are not a programmer then you officially will be after you’ve done this, so feel free to be a bit proud of yourself.
Creating a Raw Transaction
The next step is to use the outputs we have selected to build the code for a complete transaction.
You should have a list of edited outputs from the last section. Put them, complete with brackets, into the command below:
createrawtransaction '[output1, output2]' '{"address you want to send coins to" : number of coins to send}' The number of coins you are sending must be exactly equal to total of all the outputs you have used minus the transaction fee (0.01). It is very important that you get this right as you could lose coins if you make a mistake here. For example, if you have one output with an amount of 1,000 and another with an amount of 2,000 then you must send 2999.99 coins (1000+2000-0.01). If you were to make a mistake and send just 2,000 coins, then you would end up paying a fee of 1,000 coins that you would never see again.
To give you an idea of what this should look you can see an example of a raw bitcoin transaction taken from this Reddit thread below:
createrawtransaction '[{"txid":"c7e5e03d2ab5458819eedec46d0ba38ca7a6525e38b493073277cf4a1550a348","vout":1,"scriptPubKey":"76a9144a06df74729aef1dce5e4641960da3a439d2460b88ac"},
{"txid":"c7e5e03d2ab5458819eedec46d0ba38ca7a6525e38b493073277cf4a1550a348","vout":0,"scriptPubKey":"76a914f88262828f5e64b454249e4c45ddb6071a2ab0a988ac"}]'
'{"Dty3qVvYyggQJnYfaXupbHRAPVhUxr1vso":0.17543376,"DwzkF4gP1xRoFKA4YvJpNFR9qvYzaWrFaE":0.17543375}'
IdealCash and most other altcoins will use the exact same format. In this example you can hopefully see that two addresses are listed to send coins to, with an amount for each one and a comma between them. If you are manually creating a transaction to send coins to somebody else then you will probably need to do this, because you will probably need to select outputs which add up to more than the amount you want to send, and then send the change to yourself. For example, you may have outputs of 10 and 15, but you want to send 20 coins – so you need to send the remaining 5 to your own address, otherwise they will be added to the transaction fee and lost.
When you have pasted this command into the console and hit enter, if you have managed to get all the grammar right, then you will get a long list of random looking characters as a response. This is your ‘raw transaction hex code’. Copy this for use in the next step.
Signing Your Transaction
You now need to sign your transaction with the private keys of all addresses used in the outputs you chose earlier. You can find your private key for any address using the following console command:
dumpprivkey
Obviously, you should replace
with the public address you want to get the private key for. If you have encrypted your wallet then you will need to unlock it before doing this.
You can now sign your raw transaction using the following command:
signrawtransaction 'your hex code generated in the last step' '[output1, output2]' '["privatekeyone", "privatekeytwoifneeded"]'
The middle section with output1 and output2 should be exactly the same as you used in the last step when you created the raw transaction.
When you hit the enter button on that command you will get a new, signed hex code. Copy and paste that into the final command:
Sending Your Transaction
The last bit is easy:
sendrawtransaction 'your signed hex code' When you hit enter on that final command your transaction will be broadcast to the network and your console will reply with a transaction id. If you have used this to send coins to yourself in order to consolidate smaller payments for staking, then your wallet GUI should now show ‘payment to yourself -0.01’.
submitted by Tyler__Z to IdealCash [link] [comments]

Interested in contributing to the BTC network? Here is the steps to get a full node up and running in Linux.

These instructions will work both on a VPS cloud server or a personal computer. You may find cheap VPS somewhere online for rent.
What Is A Full Node?
A full node is a program that fully validates transactions and blocks. Almost all full nodes also help the network by accepting transactions and blocks from other full nodes, validating those transactions and blocks, and then relaying them to further full nodes.
Most full nodes also serve lightweight clients by allowing them to transmit their transactions to the network and by notifying them when a transaction affects their wallet. If not enough nodes perform this function, clients won’t be able to connect through the peer-to-peer network—they’ll have to use centralized services instead.
Many people and organizations volunteer to run full nodes using spare computing and bandwidth resources—but more volunteers are needed to allow Bitcoin to continue to grow. This document describes how you can help and what helping will cost you.
Costs And Warnings
Running a Bitcoin full node comes with certain costs and can expose you to certain risks. This section will explain those costs and risks so you can decide whether you’re able to help the network.
Special Cases
Miners, businesses, and privacy-conscious users rely on particular behavior from the full nodes they use, so they will often run their own full nodes and take special safety precautions. This document does not cover those precautions—it only describes running a full node to help support the Bitcoin network in general.
Please consult an expert if you need help setting up your full node correctly to handle high-value and privacy-sensitive tasks.
Secure Your Wallet
It’s possible and safe to run a full node to support the network and use its wallet to store your bitcoins, but you must take the same precautions you would when using any Bitcoin wallet. Please see the securing your wallet page for more information.
Minimum Requirements
Bitcoin Core full nodes have certain requirements. If you try running a node on weak hardware, it may work—but you’ll likely spend more time dealing with issues. If you can meet the following requirements, you’ll have an easy-to-use node.
Note: many operating systems today (Windows, Mac, and Linux) enter a low-power mode after the screensaver activates, slowing or halting network traffic. This is often the default setting on laptops and on all Mac OS X laptops and desktops. Check your screensaver settings and disable automatic “sleep” or “suspend” options to ensure you support the network whenever your computer is running.
Possible Problems
Legal: Bitcoin use is prohibited or restricted in some areas.
Bandwidth limits: Some Internet plans will charge an additional amount for any excess upload bandwidth used that isn’t included in the plan. Worse, some providers may terminate your connection without warning because of overuse. We advise that you check whether your Internet connection is subjected to such limitations and monitor your bandwidth use so that you can stop Bitcoin Core before you reach your upload limit.
Anti-virus: Several people have placed parts of known computer viruses in the Bitcoin block chain. This block chain data can’t infect your computer, but some anti-virus programs quarantine the data anyway, making it more difficult to run a full node. This problem mostly affects computers running Windows.
Attack target: People who want to disrupt the Bitcoin network may attack full nodes in ways that will affect other things you do with your computer, such as an attack that limits your available download bandwidth or an attack that prevents you from using your full node’s wallet for sending transactions.
Linux Instructions
The following instructions describe installing Bitcoin Core on Linux systems.
Ubuntu 14.10 Instructions for Bitcoin Core 0.10.0.
If you use Ubuntu Desktop, click the Ubuntu swirl icon to start the Dash and type “term” into the input box. Choose any one of the terminals listed:
Alternatively, access a console or terminal emulator using another method, such as SSH on Ubuntu Server or a terminal launcher in an alternative desktop environment.
Type the following line to add the Bitcoin Personal Package Archive (PPA) to your system:
sudo apt-add-repository ppa:bitcoin/bitcoin
You will be prompted for your user password. Provide it to continue. Afterwards, the following text will be displayed:
Stable Channel of bitcoin-qt and bitcoind for Ubuntu, and their dependencies
More info: https://launchpad.net/~bitcoin/+archive/ubuntu/bitcoin
Press [ENTER] to continue or ctrl-c to cancel adding it
Press enter to continue. The following text (with some variations) will be displayed and you will be returned to the command line prompt:
gpg: keyring /tmp/tmpixuqu73x/secring.gpg' created gpg: keyring/tmp/tmpixuqu73x/pubring.gpg' created gpg: requesting key 8842CE5E from hkp server > > > >keyserver.ubuntu.com gpg: /tmp/tmpixuqu73x/trustdb.gpg: trustdb created gpg: key 8842CE5E: public key "Launchpad PPA for Bitcoin" imported gpg: no ultimately trusted keys found gpg: Total number processed: 1 pg: imported: 1 (RSA: 1) OK
Type the following line to get the most recent list of packages:
sudo apt-get update
A large number of lines will be displayed as different update files are downloaded. This step may take several minutes on a slow Internet connection.
To continue, choose one of the following options
sudo apt-get install bitcoin-qt
sudo apt-get install bitcoind
sudo apt-get install bitcoin-qt bitcoind
After choosing what packages to install, you will be asked whether you want to proceed. Press enter to continue.
If you’re logged in as an administrative user with sudo access, you may log out. The steps in this section should be performed as the user you want to run Bitcoin Core. (If you’re an expert administrator, you can make this a locked account used only by Bitcoin Core.)
Before using the Bitcoin Core daemon, bitcoind, you need to create its configuration file with a user name and password. First create the .bitcoin directory, create (touch) the file, and set the file’s permissions so that only your user account can read it. From the terminal, type:
mkdir ~/.bitcoin touch ~/.bitcoin/bitcoin.conf chmod 600 ~/.bitcoin/bitcoin.conf
Then you can run the command bitcoind. It will print output similar to this:
bitcoind Error: To use the "-server" option, you must set a rpcpassword in the configuration file: /home/bitcoinorg/.bitcoin/bitcoin.conf It is recommended you use the following random password: rpcuser=bitcoinrpc rpcpassword=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX (you do not need to remember this password)
The username and password MUST NOT be the same.
If the file does not exist, create it with owner-readable-only file permissions. It is also recommended to set alertnotify so you are notified of problems; for example: alertnotify=echo %s | mail -s "Bitcoin Alert" [email protected] The “rpcpassword” displayed will be unique for your system. You can copy the rpcuser and rpcpassword lines into your configuration file using the following commands. Note that in most Ubuntu terminals, you need to press Ctrl-Shift-C to copy and Ctrl-Shift-V to paste because Ctrl-C and Ctrl-V have different meanings in a Unix-style terminal.
echo rpcuser=bitcoinrpc >> ~/.bitcoin/bitcoin.conf echo rpcpassword=XXXXXX >> ~/.bitcoin/bitcoin.conf (Warning: Don’t use XXXXXX as your RPC password. Copy the rpcpassword displayed by bitcoind for your system.)
Now you can start Bitcoin Core daemon for real. Type the following command:
bitcoind -daemon
It will print a message that Bitcoin Core is starting. To interact with Bitcoin Core daemon, you will use the command bitcoin-cli (Bitcoin command line interface). Note: it may take up to several minutes for Bitcoin Core to start, during which it will display the following message whenever you use bitcoin-cli:
error: {"code":-28,"message":"Verifying blocks..."}
After it starts, you may find the following commands useful for basic interaction with your node:
to safely stop your node, run the following command:
bitcoin-cli stop
A complete list of commands is available in the Bitcoin.org developer reference.
When Bitcoin Core daemon first starts, it will begin to download the block chain. This step will take at least several hours, and it may take a day or more on a slow Internet connection or with a slow computer. During the download, Bitcoin Core will use a significant part of your connection bandwidth. You can stop Bitcoin Core at any time using the stop command; it will resume from the point where it stopped the next time you start it.
Optional: Start Your Node At Boot
Starting your node automatically each time your computer boots makes it easy for you to contribute to the network. The easiest way to do this is to start Bitcoin Core daemon from your crontab. To edit your crontab, run the following command:
crontab -e
@reboot bitcoind -daemon Save the file and exit; the updated crontab file will be installed for you. Now Bitcoin Core daemon will be automatically started each time your reboot your computer.
If you’re an Ubuntu expert and want to use an init script instead, see this Upstart script.
You have now completed installing Bitcoin Core. If you have any questions, please ask in one of Bitcoin’s many communities, such as Bitcoin StackExchange, BitcoinTalk technical support, or the #bitcoin IRC chatroom on Freenode.
To support the Bitcoin network, you also need to allow incoming connections. Please read the Network Configuration section for details.
Network Configuration
If you want to support the Bitcoin network, you must allow inbound connections.
When Bitcoin Core starts, it establishes 8 outbound connections to other full nodes so it can download the latest blocks and transactions. If you just want to use your full node as a wallet, you don’t need more than these 8 connections—but if you want to support lightweight clients and other full nodes on the network, you must allow inbound connections.
Servers connected directly to the Internet usually don’t require any special configuration. You can use the testing instructions below to confirm your server-based node accepts inbound connections.
Home connections are usually filtered by a router or modem. Bitcoin Core will request your router automatically configure itself to allow inbound connections to Bitcoin’s port, port 8333. Unfortunately many routers don’t allow automatic configuration, so you must manually configure your router. You may also need to configure your firewall to allow inbound connections to port 8333. Please see the following subsections for details.
Testing Connections
The BitNodes project provides an online tool to let you test whether your node accepts inbound connections. To use it, start Bitcoin Core (either the GUI or the daemon), wait 10 minutes, and then visit the GetAddr page (https://getaddr.bitnodes.io/). The tool will attempt to guess your IP address—if the address is wrong (or blank), you will need to enter your address manually.
For more instruction and reviews based off BTC please follow my subreddit /BTC_Reviews
all material from this post was found here --> https://bitcoin.org/en/full-node
submitted by Mattjhagen to Bitcoin [link] [comments]

Install Windows via command line - YouTube bitcoin-cli and bitcoind - Breaking Down Bitcoin Ep. 2 Windows Command Line Tutorial - 1 - Introduction to the ... timesys - YouTube How To Mine Electroneum on Alternative Mining Pool for Beginners (Windows)

This has to do with our Qt theme handling and is not a new problem in 0.17.0, but is expected to be resolved in 0.17.1. Notable changes Changed configuration options-includeconf=<file> can be used to include additional configuration files. Only works inside the bitcoin.conf file, not inside included files or from command-line. Multiple files ... Step 2 - Download Free Bitcoin Mining Software. Once you've received your bitcoin mining hardware, you'll need to download a special program used for Bitcoin mining. There are many programs out there that can be used for Bitcoin mining, but the two most popular are CGminer and BFGminer which are command line programs. Bitcoin Cash Node documentation GitLab Home Setup instructions Release notes Release notes Release notes 0.21.2 expand_more Bitcoin Core. Basic parameters regarding Bitcoin Core node operation. Alert Notification Execute command when an alert (or long fork) is received (%s in cmd is replaced by message) Block Filter Index Disable compact filters. Disable; Enable All; Basic Filters; Block Notification Execute command when the best block changes (%s in cmd is replaced by block hash) Block Data Storage ... Bitcoin Core now supports loading multiple, separate wallets (See PR 8694, PR 10849). The wallets are completely separated, with individual balances, keys and received transactions. Multi-wallet is enabled by using more than one -wallet argument when starting Bitcoin, either on the command line or in the Bitcoin config file.

[index] [42330] [33125] [18542] [23712] [8981] [12966] [18314] [43422] [29679] [44945]

Install Windows via command line - YouTube

Website - https://thenewboston.com/ GitHub - https://github.com/thenewboston-developers Reddit - https://www.reddit.com/r/thenewboston/ Twitter - https://twi... Timesys is a pioneer and industry leader in providing embedded Linux solutions. We are committed to providing easy-to-use, embedded Linux offerings and world... In this video I show you how to install Windows 8/8.1 via the command line using diskpart, DISM, bootrec and bcdboot. We first need to partition the disk and... how to activate windows 7 ultimate without product key How to Activate Windows 10/8/7 For free How to make Windows 7 Ultimate Genuine for Free Without any Ac... Bitcoin Core is a quick deployment official Bitcoin cryptocurrency client. Bitcoin Core Server for Windows 2016 Bitcoin Core is an open-source software that serves as a bitcoin node (the set of ...

#