text:
How to add support for segwit address and legacy with bitcoin core 0.16?
I've been running bitcoin core 0.15 as regtest, and had X bitcoin in my balance all are from legacy output addresses, As I upgraded to 0.16 core version check in debug the legacy addresses are still validated as mine. but no balance. I wonder will this happen as I will upgrade my wallet at the mainnet as well ?
I wish to be able and support creation of legacy address and SegWit on the same wallet and as of comments on How to generate SegWit address I see I will need to run bitcoin core each time with a new param "-addresstype=legacy" to enable it, so is there a better way ?
[edit 1] - I should/need to run with same "-datadir" arg ?
[edit 2] - I run it under same -datadir.
[edit 3] - I’ve opened issue
https://github.com/bitcoin/bitcoin/issues/12872

That sounds like a bug. Are you sure? There is extensive testing before release. No balance should ever disappear when upgrading; all your old legacy addresses remain valid; the default addresstype just affects the type of newly created ones.

This is regtest. I had bitcoin core 0.15.1 running regtest with balance of 5000 bitcoins and after upgrading to 0.16 I have 0 balance while on console window validateaddress of legacy address from the 0.15.1 version regtest returns   "ismine": true.

If you go back to 0.15.1, is the balance still there? Are you sure it's fully synchronized, running in the same directory, ... If you believe the balance actually disappeared in 0.16, please file a bug: https://github.com/bitcoin/bitcoin/issues

I want back to 0.15.1, I can see in transaction tab only the newly mined from the 0.16, when I generate payment address it's legacy. when I validate the SegWit address it's valid mine but no issegwit key. So I believe that all got to do with the fact that all this testing done on regtest env.

Yes of course you should run with the same -datadir. Otherwise you're working in a completely independent environment with its own wallet.

I run with the same, I have a .bat file with "-datadir" arg inside.

That's why it validates different address from different core version as "ismine : true".

Quoting Suhas Daftuar's response to the issue you opened:

In 0.16, we changed the consensus parameters for regtest so that segwit was always active. This was mentioned briefly in the release notes https://github.com/bitcoin/bitcoin/blob/v0.16.0/doc/release-notes.md#testing-changes, along with a workaround to replicate the old behavior.
I am surprised that you're not seeing the assertion failure mentioned in the release notes, but I suspect this is the cause of what you're seeing.

So this is expected, but only affects regtest.


text:
How to create both anonymity privacy and still achieve address reputation for merchants
In what way can a merchant create a payment address that will gain reputation of trust (this address or some information connecting with the payment request will gain reputation over time and will be known as connected to the merchant ) but still maintain the privacy of the customers sending bitcoin to as if it acted as a new address each payment request ?
Could it be achieved with HD wallet mechanism and how ?
Could it be achieved at all ?

Stealth Address is the answer.
Adapted from CryptoNote technology by Peter Todd (I think), Stealth Address basically is a form of Diffie-Hellman key exchange that allows sender to create a one-time key pair that only receiver can derive the private key. Thus Stealth Address allows merchant to public their well-known address while prevent any payments to be link to that address.

Stealth addresses predate CryptoNote (but not the fake backdating in the whitepaper).

Another way to achieve merchant reputation of trust is to add your corporate logo over top of a QRcode containing your hot wallet address. In this case your company branding and reputation determines trust efficacy, which can increase over time. This may be achieved in tandem with Phuong Gwen's answer.
Unlike barcodes, QRcodes have ten levels of error correction and their general redundant design feature allows one to substantially modify the QRcode, for example by adding a full color company logo, while still maintaining content integrity of your wallet address.
This is a simple example of a KittyBitcoin logo superimposed in a QRcode over a bitcoin wallet address: http://kittybitcoin.com/tip.php
Editing may permit a larger logo.
Use of a company logo is a time tested method for associating your merchant activities with reputation and trust.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
How can I check a public master address balance?
I have an extended public key, I need to check it's balance (I have no connection to wallet), is there a third party service for that ?
Edit: This is not a bitcoin address. This generates multiple new addresses each time and I want a method to check the total balance given only the master public key .

You probably mean extended key. There are extended public keys (xpub) and extended private keys (xpriv).
An example xpub would be:

xpub6CUGRUonZSQ4TWtTMmzXdrXDtypWKiKrhko4egpiMZbpiaQL2jkwSB1icqYh2cfDfVxdx4df189oLKnC5fSwqPfgyP3hooxujYzAu3fDVmz

They always start with xpub or xpriv.
You could use  https://blockchain.info/xpub/ or goochain.net or Electrum as a view-only wallet.

What about keys that start with "zpub". Where do you check balance online for these?

Yes try an explorer like blockonomics that support segwit xpubs https://blog.blockonomics.co/a-segwit-blockexplorer-47cd516dd8c5

@darkknight Do you know of an API that supports fetching a total balance for a zpub address? https://bitcoin.stackexchange.com/questions/116038/how-to-retrieve-total-btc-held-in-ledger-wallet/116040#116040 Thanks.

@ryan yes, I posted an answers on that question

The easiest way would be to install the wallet software that was used to create that wallet and restore the wallet using the master public key. This will create a watch-only wallet.
Alternatively if the key is a bip32 xpub and the derivation path is bip44 then you can view the addresses generated with it on blockchain.info. Just paste in the xpub in the search box on that site.
Note that electrum does not use bip44 so if it's an electrum wallet then you should just create a watch-only wallet.

Links in Answer above are outdated/not working. Here is the updated answer. As of Nov 2022, following third party services are showing extended public key balance:

Blockpath
Blockonomics
Directly visiting the URL https://www.blockchain.com/btc/xpub/*your_xpub_here*. Searching xpub via UI on blockchain.com btc explorer is failing

If you have an extended public key, I would recommend that you use Blockpath to scan it. It goes through the most popular derivation paths to check for any spent or unspent funds.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Eclair Lightning network node is not public
I'm using Eclair and have a conf file with content:
eclair.chain=testnet
eclair.node-alias=mynodename
eclair.node-color=ff0000
eclair.api.enabled=true
eclair.server.public-ips=["<ip one>","<ip two>"]
eclair.api.password="my-eclair-api-pass"
eclair.bitcoind.rpcuser=aqaqaqaqaq
eclair.bitcoind.rpcpassword=aqaqaqaqaq
eclair.bitcoind.zmq="tcp://127.0.0.1:29000"
eclair.gui.unit=sat

still I can't see my node in https://explorer.acinq.co/
I can open channels
[Edit 1] My pubkey is 03125205d1b5ae747064491d2b3b30b41fd7ec4e96e0ccede2f71c55891995f675

Apparently my node is public at
https://1ml.com/testnet/node/03125205d1b5ae747064491d2b3b30b41fd7ec4e96e0ccede2f71c55891995f675

My pubkey is :
03125205d1b5ae747064491d2b3b30b41fd7ec4e96e0ccede2f71c55891995f675

For future reference:

Lightning Network explorers are also nodes and just make their own "world view" of the network publicly available
Your node will only become publicly visible once a channel has been opened and that information is announced to the network (and reaches the Explorer)
Explorers do update irregularly, so it makes sense to give it some time and check multiple explores

if I want a channel be opened to my node, how to get my nodeID (QR code) in eclairMobile? I don't find the UI/setting for this


text:
Can Multibit be used as an offline cold storage solution similar to a setup with Bitcoin-QT?
Currently have my cold setup offline in Bitcoin-QT. Downloading the blockchain from zero is rough. It's time to update. Can I create a similar cold storage solution with Multibit? Will this speed up load time when I bring coins online thru Multibit?  Are there any other benefits or weaknesses that you can think of with a Bitcoin-QT cold solution vs. a Multibit cold solution?

As mentioned below by @jim618 here are the instructions on how to make offline transaction and sign them in the online computer with Electrum http://electrum.org/tutorials.html#offline-mpk

MultiBit cannot do true cold storage where your transactions are signed offline and then you transport them to a different machine and broadcast them.
The underlying library, bitcoinj, does support it but it is not in the user interface.
If the size of the blockchain is the main factor, Electrum might be worth looking into. I am pretty sure you can sign a transaction, move it and broadcast it on a different machine. I think this is done on a command line.
It is still several months away but a nice solution will be Trezor where the signing is done on a hardware device and the host machine is used to broadcast it. I believe all of MultiBit,  Electrum and Armory are planning to support Trezor.


text:
Access to exchanges' (especially Mt. Gox's) transaction history?
I'm attempting to do statistical research on the Bitcoin market, and I would like to have access to the transaction data of as many exchanges as possible. Specifically, I'm looking for every trade made on a given exchange. Mt. Gox is obviously my primary interest because it handles the highest volume. Is this data available for download anywhere, or am I going to have to start collecting it myself? Specifically, I want to be able to store all transactions in a SQL database, so I would like them in an easily parsable format.

You can use the API to retrieve such data.

Ah, right, specifically here. Thanks @Lohoris.

I found a SQL database of all Mt. Gox transactions (updated every few hours) along with the accompanying Python scripts here.


text:
How to add website visitors to a pool?
As an experiment, I will have website visitors mine litecoins. Yes, I know this won't work very well, but I simply want to try it. If I want the visitors to be part of a pool, how should I create user accounts for them? Is it ok if I have them all mine under the same worker name, or do I have to create individual workers?

This kinda thing gets your website put in blacklists.
The only way (I know of at least) to mine in the browser is Bitcoin Plus, which actually is just a wrapper around a background Java applet. So you would probably want to make a Java miner and then work off that.


text:
Has there ever been a successful double spend attack on the Bitcoin network? If not, is it really necessary to wait for confirmations?
There is a lot of concern about waiting for confirmations to avoid a double spend attack, but has there ever actually been a double spend attack?
It seems to be that there are two types of double spend attack.  One is perpetrated without a significant fraction of the network's total mining power.  In order to successfully perpetrate this the attacker must send both transactions nearly simultaneously.  If there is a significant delay between the legitimate transaction and the double spend then almost every miner will receive the legitimate transaction before the double spend.  The miners will reject the double spend, and the legitimate transaction will be almost guaranteed to be included in the next block.  Thus to successfully perpetrate this kind of double spend, the attacker must send out both transactions simultaneously so that half the network is working on one and half the network is working on the other.  However if they do this, then it should be easy for the payee to immediately detect and thus the payee can reject the payment within seconds.  Thus a double spend attack without a substantial fraction of the network power would not seem to be a problem--it is easily and immediately detected (or it will fail).
Thus, the only kind of double spend that is likely to succeed is one where the attacker controls a substantial fraction of the network power and can catch up from an initial handicap in block creation.  However, until such a double spend has been demonstrated it implies that no malicious entity has achieved control over a substantial fraction of the networks computing power.
Thus, if a double spend attack has never been perpetrated, everyday users transferring small amounts of bitcoins can be very confident that they will not be victims of a double spend attack (what are the chances of being the first?) and forgo waiting for confirmations.
(People conducting very large anonymous transactions on the other hand may be among the first people targeted by an double spender who has achieved a substantial fraction of network computing power)
Is that analysis correct?

Not necessarily a "possible duplicate" since it doesn't address the specific question of whether an attack has ever been perpetrated, but quite similar to a question I asked a while back

For what it's worth, MyBitcoin.com claimed that their closure was precipitated by a series of double-spend attacks:

Our programmer was under the assumption that one block was good enough
  to secure a transaction. Two years ago when the software was written,
  this single confirm myth was a popular belief.

User theymos (an administrator of the bitcointalk.org forums) had publicly warned them that accepting transactions after a single confirmation was "insane."
However, there is no way to verify whether or not any double-spend attacks have actually taken place because to my knowledge no one is currently scanning for them on the network (doublespent transactions are normally discarded after the event is resolved to the satisfaction of the block-chain).  All we can observe publicly are block-chain reorganisations which also naturally occur from time to time when blocks are found near-simultaneously by different miners or pools.  Perhaps a statistical argument could estimate how often these should be occurring (we've had 14 in the past month) and argue for the existence of double-spend attempts on that basis, but I've not personally seen such an analysis.
Most critically to your question about whether or not to wait for confirmation, however, is the fact that you have missed a possible attack vector, known as a "Finney Attack" after Hal Finney who identified it.  In a Finney Attack, a miner includes one "double" of the two transactions in their own blocks while mining, but does not broadcast it to the network.  When they eventually find a block, they purchase something with a conflicting transaction (the second "double" in the double-spend attack), and then immediately broadcast their block, which will invalidate the purchasing transaction in the blockchain.  If the merchant hasn't waited for confirmation, the attacker would walk away with both the purchased item (hopefully something cashlike) and their original bitcoins.
Since this situation and its variants apply largely to merchants who offer 'on-demand' items delivered instantly, your analysis of "everyday users transferring small amounts of bitcoins" remains roughly correct.  Keep in mind that if accepting 0-confirmation transactions became the norm, the incentive for the "send them simultaneously" attack would rise significantly (requiring even one confirmation prevents this in the vast majority of cases).  But for the time being, regular users should be more worried about regular old "you-pay-first" fraud on non-escrowed transactions, and man-in-the-middle attacks where an interlocutor passes messages between two trusted parties looking to do business, then walks away with the cash while they both yell that the other person is scamming them (this attack has been executed in the wild).
tl;dr Merchants and exchanges definitely need to wait for confirmations any time transactions are of significant value and/or in exchange for cashlike goods.  Individuals transferring small amounts need to be more worried about other aspects of trust in the exchange, and can protect themselves quite effectively with just a single confirmation.

Though nobody has claimed to have lost to the Finney attack, it should not be dismissed as being unlikely to occur in the future.  The likely reason we don't hear of it is that there are few merchants that accept on 0/unconfirmed, and even fewer selling goods of enough value for it to be worth it for the attacker to attempt this even.

You'll note that I don't dismiss the Finney attack in my answer, and instead emphasise its importance.

"Two years ago when the software was written, this single confirm myth was a popular belief."... popular among people with such limited knowledge of the bitcoin technology that they have no business writing software for it

This question has been asked several times in several different places, and nobody has yet come forward with evidence of a double-spend attack. It is, of course, possible that nobody is bothering with such an attack because everyone waits for confirmations anyway.
Your analysis is correct. You can act on fewer confirmations with the same level of reliability if you monitor the network from multiple points -- ideally as close to as many large mining pools as possible. And if someone ever did succeed in causing such an attack, you would have irrefutable proof -- the conflicting transaction.
I wonder if mining pools would be willing to provide a web page that lists the transactions they intend to include in the next block (assuming they mined one just then). If a few of the larger pools did this, that would allow you to be much more certain that there was no conflicting transaction on the network. If the two largest pools have your transactions and none of the pools have a conflicting transaction, you can be nearly certain you are safe even with no confirmations.

On March 11th, 2013 there was an unplanned hard fork and as a result there was at least one double spend attack performed in which a large amount of funds (bitcoins worth $10K USD) were double spent.

http://bitcointalk.org/index.php?topic=152348
http://www.bitcoinmoney.com/post/47048259653

For those too lazy to click through, or in case the links die, it was not a criminal operation:  the user voluntarily returned the funds.

September/October 2013 - GHASH.IO Pool Operators were accused of double-spending against BetCoin Dice:
https://bitcointalk.org/index.php?topic=321630.0
Excerpt:
"I'm saying ghash.io was likely involved in that double-spending.
I got a report from a pool's user that there were no blocks (rewards) between 25th and 27th of september.
It means that user's hashpower was used for free by pool operators to perform this attack."
The case made is that BetCoin Dice was using a 0-confirm method on spends, and that GHASH.IO hash power was being abused/used to verify/confirm only winning bets (ignoring non-winning bets). There were a significant enough stream of win-only confirmations to suggest 'someone' within the ghash.io pool was all but provably double-spending bitcoins and then using ghash.io's hashing power to get winning confirmations into the blockchain before non-winning transactions could be confirmed by the rest of the network.
CEX.IO obviously denies involvement, but it raises a larger question about how we are to keep watch for fraud like this? Aside from the people being affected, does anyone bother auditing block results (invalid and valid alike?)

The old answer from David Schwartz implies that no successful double-spend, of even an UNCONFIRMED transaction, has ever been seen.  That needs to be updated:
There has been at least one significant double-spend -- of a 15-confirmation transaction during the .7/.8 fork.
There are successful double-spends of unconfirmed transactions every day.  See http://respends.thinlink.com


text:
Is there a minimum time to be mining a pool to have any results?
For example if mining with Deepbit is there a minimum time one must run cgminer to have anything added to their Deepbit account balance?

The duration of 1 share?

Deepbit allows PPS (pay per share) or Prop (proportional) mining. Under PPS, you get credited for each share you mine. Under Prop, you get credited after the pool finds a block, with the 25 BTC split proportionally among the miners based on how many shares they have. Since Deepbit has 1% of the total hashrate (according to Blockchain.info), on average it will take 100 * 10 min = 16 hours to find a block, though I stress this is only an average and variance can be very high. So if you choose Prop, you'll get paid every 16 hours, on average.

It should be clarified that you don't need to mine for 16 hours - you can mine for 1 minute and you'll still be rewarded for this minute when the pool finds a block. Of course, the reward for a minute of mining will be miniscule, possibly lower than it would make sense to withdraw.


text:
What library or wallet can be used to test segwit transactions on testnet?
Is there any code snippets / wallets to send segwit transactions on the testnet at the moment?
I'm more looking for a code snippet or any library to support this to do some tests and make them public as a testing suit for wallet services.

bitcoin core supports this
addwitnessaddress "address"

then compose your transaction and send it, you can do it all via RPC calls, so any programming language that can do rpc calls will work (python, php, go, etc. etc)
help addwitnessaddress

addwitnessaddress "address"

Add a witness address for a script (with pubkey or redeemscript known).
It returns the witness script.

Arguments:
1. "address"       (string, required) An address known to the wallet

Result:
"witnessaddress",  (string) The value of the new address (P2SH of witness script).
}


text:
cpuminer - what command line tools are required?
I'm trying to run cpuminer on my Mac, though cpuminer requires a lot of command line tools - such as curl, libidn, etc. What are all of the tools required, and what is the minimum version of each I must obtain (e.g. curl 6)?

Compiled it on Linux. These are the dependencies once compiled :
$ readelf -d minerd

Dynamic section at offset 0x1c178 contains 22 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libcurl.so.4]
 0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
...

That's only libcurl and glibc. Since glibc is just a standard C library, and Mac probably has its own equivalent, you can ignore that one. The only runtime requirement is libcurl.
Judging by the source code the minimum required version of libcurl is 7.10.1. You'll also need yasm for 64-bit SSE2 code generation. And of course a C compiler that can handle C99.


text:
How useful is a JavaScript miner?
I don't have a great understanding of how bitcoin mining works, but how useful would a JavaScript miner be for collecting revenue from visitors? Stupid question, but if I put the user in as part of a mining pool, must their computer actually find a hash in order for me to make revenue? Is this at all practical?

You will have to explain to the revenue service why you make this income in bitcoins. Using the website visitors' electrical energy for mining bitcoins could be seen as theft.

This was a question well ahead of its time. See COINHIVE and MONERO!

@PGCodeRider Thanks! I was just in high school

Javascript has access to OpenGL ES, including shaders, so it has access to programmable parts of the GPU at nearly native speeds. I think that a smart kid might be able to build a fragment shader that does SHA256 hashing, which outputs to the stencil buffer, so that Javascript has a 2-way communication channel with the GPU.
So yeah, you could probably use javascript to mine at really nice speeds. Maybe 70% or 80% of what an OpenCL GPU miner does?
[Edit] oh look, someone already built a fragment shader that does that
[Edit 2] and an actual JS/WebGL application

Is it actually working for you? Because in chrome it shuts down the tab.

It's the fact that it once did work that counts, as it proves it can be done again.

@SalvadorDali Ensure you have Hardware Acceleration enabled. Take a look here http://www.webupd8.org/2014/01/enable-hardware-acceleration-in-chrome.html

It would not at all be useful for Bitcoin mining. However, it may be useful for other digital cryptocurrencies, such as Litecoin or PPCoin.

Monero seems to be the currency of choice here in 2017.  It has become epidemic. https://gizmodo.com/how-to-stop-pirate-bay-and-other-sites-from-hijacking-y-1818549856  Coinhive is not shy about it.  They offer two versions.  One asks for permission and the other does not.  https://coinhive.com/  Here is a review:  https://medium.com/@MaxenceCornet/coinhive-review-embeddable-javascript-crypto-miner-806f7024cde8

It seems especially useful if you place these in a site and run them from millions of machines as a distributed effort. https://en.bitcoin.it/wiki/Distributed_miner

Not practical at all. Most probably the users would be just pissed of. Right now it is not even practical to mine with GPU-s, not to mention CPU-s and for sure JS.
Regarding the question:
"if I put the user in as part of a mining pool, ..."
No, it is not important that he would find a hash. It is working this way. Your all workers are calculating hashes (does not matter if you find the right one or no). If a miner mined something at that time, the miner calculates how much work you have done and gives you the amount of bitcoins. So if you contributed 5% - you will get 5% of 25BTC and in case of some pulls fees. If pull mined nothing, you get nothing.
So in total, if you do not want to piss of users, do not do this.

if you do not want to piss of users, do not do this. Ads annoy me; paywalls alienate your community; and making content isn't free. If you want to make content and put it on the web, what are you supposed to do?

There are plenty of websites making great and expensive content that can easily exist with a business model solely based on advertisement.

@NickODell The thing is that you need to be clear for a user that you are using part of his computational power for something. People already used to ads, so it does not bother them too much. This is completely different. How would you feel if you get a program for viewing video, but somewhere silently it is used to generate hashes? You have no idea about this behavior and how would you feel when you read this on some forum? So I think that your -1 is absolutely inappropriate. I just mentioned to the OP what might happen.

As long as you're up-front clear with your site visitors, and your javascript has a governor of some kind so it doesn't suck more than, say, 25% of the GPU's processing power, I don't see why this would be unethical. It could be thought of as a form of hassle-free micro-payments, where you put free (and ad-free) content yet still manage to make ends meet!!

While not practical, in a scenario with only browser and a gpu would work. Think in a way to mine remotely with no software install at all. Last time i've tested Javascrip mine I face lot of problems too :V


text:
What is the most important parts of the video card in Bitcoin mining?
For example, obviously it doesn't matter what type of adapters a video card offers when it comes to Bitcoin mining? Is the GPU speed or the amount of RAM the most important part in terms of megahashes per second?

Number of cores > Clock speed > Instruction set that's good for SHA256 > Latency to CPU. Memory basically doesn't matter.

@NickODell so number of cores or number of GPUs a video card has is the most important?

@NickODell: I mean, it's not terribly relevant today, but do you remember why this was closed as "too localized"?

@Murch Don't recall. General disdain towards mining questions?

The GPU speed when hashing SHA256 is the most important requirement. A good graphics card for mining this are usually ATI brand cards as these work by using a massive array of parallel shaders.
Nvidia cards generally perform with a higher floating point performance but achieve this via different means which dont perform as well against SHA256
Other hash types such as scrypt that Litecoin uses has some requirement for memory also, native clock speed is generally the defining factor on performance though.

What about the new Titans by Nvidia? Since they have more CUDAs does that mean they are better fit for bitcoin mining?

By first glance technically speaking it should perform as well as a 7970 for mining but OpenCL seems better optimized than CUDA for mining process, its hard to tell on paper we need a benchmark review.

SHA256 does not require much, but if you intend to use it for scrypt mining too, it's said that memory is most important, i.e. speed and size.

So scrypt mining is fore litecoin right?

Yes, that's right.


text:
How can an unconfirmed transaction be removed from the memory pool?
Using Bitcoind and Json-RPC, how can I remove an unconfirmed transaction from the memory pool?
The scenario being that I want to remove the unconfirmed transaction because it's not getting confirmed, and it's preventing me from sending new transactions spending the same inputs because Bitcoind considers it a double spend.

Try the removeprunedfunds RPC command. It

deletes the specified transaction from the wallet. … This will effect wallet balances.

don't know why you're voted down.. that did it for me

This is correct, but it should be noted that removeprunedfunds will remove the tx from just the local node's mempool and not necessarily from the mempool of other nodes that the tx may have propagated to.

I haven't found a good way to clear just a single transaction from the mempool, but you can shutdown bitcoind and then delete ~/.bitcoin/mempool.dat and clear the entire mempool, and then restart bitcoind

You can use prioritisetransaction to reduce the perceived effective feerate of the original transaction in your own mempool. If you lower the feerate enough, and your mempool is full, it will be removed the next time transactions are evicted.
If the original transaction signaled RBF, or your node uses the mempoolfullrbf startup option (enabled by default starting with Bitcoin Core 28.0), deprioritizing the original transaction will also make it easier to replace it, since the modified feerate is used as basis to evaluate a replacement. Note that this only affects your own local mempool, and other nodes that still have the original may not accept the replacement unless it fulfills those nodes’ criteria for replacement.

There is no RPC command available to remove objects from the mempool.

outdated reply, see @Geremia's answer

Not really. Removal from wallet and removal from mempool are two distinct operations.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
As of 2017 is it still possible to get a transaction confirmed without a fee?
In the past it was possible to get a transaction without a fee confirmed if the inputs and outputs had a high enough priority and followed some rules. As of 2017 is a "free" transaction still possible if you don't care about how fast it will be confirmed? Several hours or even a day or two would be acceptable.

The Bitcoin consensus rules do not require transactions to have a fee, so it's still theoretically possible for a free transaction to be confirm.
It is, however, unlikely that any miners today will confirm free transactions.  You can test this by sending yourself a free transaction to see if it confirms (but be sure you use a quality wallet, such as Bitcoin Core, that has features for handling transactions that never confirm).

For the record: I created a free transaction that got confirmed in about an hour (maybe lucky?). The transaction was within the rules mentioned in the question.

@tlo: how did you resolved/avoided the "error code: -26;error message: 66: insufficient priority"?

Yes. It is possible. But what exactly do you want to achive? Either you want to minimize the fees or you want to delay transaction confirmation. Difference in details...


text:
What does "accepted shares" mean?
I am running GUIMiner and Triplemining server. I currently have just under 100 "shares" accepted.
What does this mean? What are accepted shares used for? How do accepted shares relate to "blocks"? How does this relate to a Bitcoin?

An accepted share represents work that your miner did towards a round in a mining pool.
When the pool finds a block, it distributes the block reward (i.e. 25BTC) to the miners according to how many shares they have contributed during that round. The more shares you contributed, the more payback you get.
It is simply a way to keep score, and to attribute the reward proportionally to the amount of computing power that each miner contributed to the pool.
Edit: "accepted share" is one which is valid at the time the pool receives the work from the miner, but sometimes the work arrives too late and a new block has replaced the previous one. In these cases you will have some "invalid shares" which don't count towards the revenue share.

Thank you for the answer - it is indeed helpful. I still would like to know, now that I have 130 shares accepted after running a couple of days, is this a significant number, or do I have to accumulate months worth of these before I get a coin, or is part of it just luck?

As @smagedy mentioned below, 130 shares doesn't sound like a lot. Please beware of mining with CPU/GPU, as you will probably be spending more on electricity than what you will earn back in bitcoin. Even with some ASICs it's already becoming hard to achieve ROI. Please refer to this thread

Miner is payed only for accepted shares or always just contributing?


text:
What is a megahash and how is it used to estimate the rate at which bitcoins are mined?
What part of the bitcoin network requires hashes and why? What is the relation between money and the megahashes a card can do?

A hash is a function that takes a string as an input, does a transformation of it, and returns a second string that's considerably shorter than the original and that could be considered is the "resume" of the original. You can check Wikipedia's Hash definition
Hashes are required for "mining". I'm new to Bitcoin so I may describe this wrongly: As part of mining, miners compete to discover a short number that, when added to the end of a string (which contains all recent transactions since 10 minutes ago) produces a hash with a specific number of zeros at the beginning. The correctness of such a discovery can be easily verified by anyone but finding that small apendix is computationally very, very hard. The first miner to discover such a key to "lock" a block is awarded the reward - 25 BTCs as of now.
Here in comes the "mega-hash" term: CPUs, arrays of GPUs and ASICs are rated according to how many different hashes they can compute per second. Analyzing a million different hashes per second is what's called a "mega-hash". Obviously, the higher this number the more different combinatinos you can try, so it becomes more probable that you will find an answer. However, this is only a relative advantage that may be completely nullified if the other miners have a similar or even higher computing power than yours.
This graph explains it all beautifully, hope it's clearer than my bad prose


text:
Can a merchant using Square Register accept bitcoins?
Square's marketing department appears to be successful at convincing some retailers to chuck their old register and instead buy an iPad, receipt printer and cash drawer and use the Square Register app instead.
Can this same set of hardware be used to also accept bitcoin payments?  Is there an app for accepting Bitcoin payments that will work on the iPad?  If so, can multiple apps run simultaneously?  Could the retailer print some type of receipt?
[Assuming the Internet access is through a Wi-Fi access point.]

Incidentally, nice stand:

http://www.tinkeringmonkey.com/square-register-stand

This is described here: http://bitcointalk.org/index.php?topic=2732.msg843575#msg843575

Bit-Pay has a mobile app that allows acceptance of mobile payments. It's not native for the iPad, but it should work, albeit at a lower resolution. There are a few other iPad apps, but none that implement any sort of payment functionality.

If you'd be using solely Bitcoins, you wouldn't need the cash drawer (unless if you'd want to use physical Bitcoins, which would be awesome in itself). Alternatively, you could set it up so Bitcoins would be an alternative way of paying.
As both the printer and the cash drawer appear not to be produced by the same company that delivers the app, one can assume the integration with that hardware shouldn't be a problem. Since Bit-Pay has already proven that one can accept Bitcoin payments on the iOS, integration with Bitcoin is quite possible (although how easy still remains a question).
Generally, anything that can be done with regular cash can also be done with Bitcoins, it's just a matter of how much work one needs to put in.


text:
What happens if Bitcoins are lost
Since there are a finite number of Bitcoins that can be created, I am wondering what happens if some of the coins are lost. My questions are three fold:

How do you define a "lost" coin? For example if a bank note that was in my pocket is not there anymore (provided that I did not spend it), I know I lost it.
How does the network know a coin is lost?
How would the remaining coins value if some are lost? For example, assume there are 10 coins in total in circulation each worth 100 usd, the total spending power is 1000 usd. If say 2 of them are lost, are they assumed to be taken out of the circulation for good or someone can pick them up and reuse them. I guess in the first case the value of the remaining coins are worth 125 usd each due to fewer coins in circulation while in the latter case the value of each case would stay the same (this comes back to the second question of if the network is aware of the lost coins).

I come from non-programming background so appreciate clarification.
Thanks

related: What happens to my bitcoins if lose my wallet file e.g. I suffer data loss and my computer is unrecoverable?

Since the "ownership" of bitcoins is essentially tied to having knowledge of the private key for the address they are stored against, it's very difficult to prove that nobody knows the private key.
However, it is possible to send bitcoins to an address with no private key, essentially destroying them. Details here: How to generate a valid bitcoin address for destroying bitcoins?
To answer your 3 questions:

There is no accepted definition of a lost bitcoin that I'm aware of, and it's unlikely there will be one because of the difficulty in providing proof.
The network doesn't know whether the private key for some bitcoins have been lost.
The value is based on market demand. From this perspective, bitcoins that aren't currently offered for sale are the same as lost coins until they are offered up for sale, at which point the price is affected. Though individuals do have the capability to prove they own bitcoins without offering them for sale, they rarely do so, so you'll probably never be able to find out much about which unspent bitcoins are still being quietly held and which are lost.

You should check this related question.
In summary:
1) A "lost bitcoin" is any unspent BTC balance in an account for which the private key has been lost. Without the private key, that balance cannot be spent again. If you lose your wallet file, you are effectively losing all the private keys for the accounts (addresses) created by that wallet. It doesn't mean that the balance cannot change, since the "lost" account can actually receive new funds (if funds are sent to its public address), but without the private key those funds will become equally inaccessible.
2) It's impossible for the network to know when a private key was lost. A balance can remain unspent for a very long time, but it could be by the owner's choice. So there is really no way to tell. No one can flag a wallet/account as lost, even the owner. This is because without the private key you cannot prove to be the owner anyway.
3) The Bitcoin price is simply a result of current demand/supply for it. You could say that the more lost coins, the less supply there is, so the prices will naturally rise, but that is simply a by-product of normal trading.

Bitcoins are typically lost (as in, inaccessible to humanity, rather than via theft) by the owner losing access to their wallet (ie their wallet.dat file gets corrupted and they have no backups), or accidentally transferring their coins to the wrong address.  In either case, coins are contained in an address that nobody knows the private key to.  The coins aren't completely lost, in that they still exist on the blockchain, but it's statistically impossible to guess the private key to the address they are on.
There's not really a way to "know" a coin is lost, but guesses can be made.  For example, if Blockchain.info (a blockchain analysis website) finds a private key with coins that haven't been moved for a long time, people can speculate that account may have been lost.  But that's not that certain, as the owner could just be storing it.  This is why you sometimes hear a figure about n percent of bitcoins have been lost.  But it's a pretty weak guess.
Lost coins would cause deflation, meaning the other coins are worth more.

Since bitcoins are so divisible, it'd be very unlikely we'd lose every unit of bitcoin after all the coins have been mined.  And so long as one unit of bitcoin remains, the protocol could be updated to divide it even more.

authors: كزوي فشكل تابعني تمشكل


text:
cgminer not working on deepbit.net
I installed Cgminer and created the batch file to run it
cgminer.exe -o http://pit.deepbit.net:8332 -u myemail@gmail.com_workerName -p s3cr3t
but when I run it I get
[2013-05-21 00:39:34] Started cgminer 3.1.1
[2013-05-21 00:39:34] Probing for an alive pool
[2013-05-21 00:39:38] Pool 0 slow/down or URL or credentials invalid
[2013-05-21 00:40:34] No servers were found that could be used to get work from .
[2013-05-21 00:40:34] Please check the details from the list below of the servers you have input
[2013-05-21 00:40:34] Most likely you have input the wrong URL, forgotten to ad d a port, or have not set up workers

Does anyone know what I'm doing wrong?

People who closed this question: Please leave a comment so that the person who asked it knows what was wrong about it. Thanks!

I'm the author of this question and it worked when I tried again next day.

This does not provide an answer to the question. To critique or request clarification from an author, leave a comment below their post.

@Lohoris He is the author.

Replace the workerName with a worker name for your account

Could you clarify your answer? I don't understand what you're saying.

I use the same command without problem. Take care one the user name or pass (seam be wrong). You can too test: http://pit.deepbit.net:8332 into your web browser to check the connectivity.


text:
What happens when bitcoin loans start to appear?
What happens when bitcoins loans start to appear?
Loans have interest rates that "create additional value". Given the limited amount of bitcoins, couldn't we realistically run out of them?
BitBanker loans 1000BTC to the user with a 5% interest. The loan could be backed up with, say, a house.
The user then has to pay back 1050BTC, somehow acquiring the 50BTC deficit.
Given how quickly interest on top of interest grows, won't the bankers get to 21 million BTC quite quickly?

Loans are unlikely to ever be offered on any significant scale in Bitcoin, because of its deflationary nature.

@eMansipater this line of reasoning is wrong: they would simply require higher interests.

there's a thing called real interest rate: http://en.wikipedia.org/wiki/Real_interest_rate

@Lohoris from the lender's perspective, sure.  But that's a brutal deal for the borrower who must now pay back increasing amounts of a more and more expensive unit.  I'm sure you can find edge cases where someone would want a loan denominated in BTC, but I disagree entirely that the typical borrower would do anything other than take out a fiat loan and buy bitcoins with it.  Hence my claim that it's unlikely they'll be offered "on any significant scale."  There's simply no market for it.

@eMansipater yeah good points

If bankers would, by giving out loans and the interests on them, transcend the actual number of bitcoins existing, what is the difference with the current banking system?
In most countries, there is also more money in circulation through banks and loans than there actually exists. And it was just so when the gold standard still existed.
That's just how these economic systems work. The only difference is that when bitcoin banks would fail, they cannot, or hardly, be saved by governments.
Besides, wouldn't such a situation contradict the spirit that makes bitcoin so popular? Bitcoin is about doing away with bankers and the corruption they are associated with. Bitcoin is about not having to trust someone else that gives you some money and tells you that it has value.

"there is also more money in circulation through banks and loans than there actually exists" but compared to bitcoins, they can just print more money to cover the deficit, right?

@user4432 Banks cannot, but the government can, that's true. But still there will always be more money than they will print. Only when too many people together want to move their money to somewhere else, banks collapse.

Given how quickly intrest on top of intrest grows, won't the bankers get to 21 million BTC quite quickly?

Sure, but is that really meaningful? Let's say that I loan you 1 BTC, with the terms that I get 10% interest per day. Before the year is out, you owe me more bitcoins that actually exist. The face value is the amount that the loan is supposed to be worth, if everybody keeps their word.
However, the real value is much lower - you're a random stranger on the internet, and you're unlikely to come up with quadrillions of dollars.
Bitcoin can't save you from untrustworthy borrowers.

Loans have intrest rates that "create additional value". Given the limited amount of bitcoins, couldn't we realistically run out of them?

No, you wouldn't run out of Bitcoins for the simple fact that they will always be traded. Your interest payments on your loan would come out of Bitcoin trading that you did to increase your Bitcoins, even if you only did Bitcoin trading to repay your loan.
If ALL Bitcoin holders became hoarders, the price of Bitcoins would increase as more and more people wanted some. Bitcoin, if as rare as gold and jewels, becomes more valuable. Finally, when the "price" of Bitcoins was high enough, some hoarders would trade theirs off for fiat currencies, just like gold and silver.
People or companies who loan Bitcoin need to be as careful as those who borrow them. If a lender lends when the Bitcoin price is high, and then the Bitcoin price drops, it will be much more easier for the borrower to "purchase" more bitcoins to pay off the loan. This may be adverse to the lender's financial plan.
On the other hand, if the borrower borrows when the price is low, and then the price goes way up, the borrower might be scrambling just to make payments so that he doesn't lose the house, and his proverbial shirt.
As Bitcoin becomes more commonplace, there might come into being "holding houses" that hold the paper on property that secures the loans that lenders make.

None of the above really answers your question. To understand the answer, we have to first understand the main difference between a fiat currency like USD and Bitcoin which is fixed in amount, just like gold.
In fiat currencies like USD, the amount/quantity of money is unlimited, i.e. banks can create new money out of thin air. So when banks give loans, they create new money out of thin air and charge a positive interest rate on it. Remember that this interest amount does not exist in the economy when the loan is taken/given and the interest amounts' worth of money/notes/coins are also created by banks from thin air. So in fiat currencies, the value of each unit of money goes down as time passes because the amount of money/notes/coins is being increased every day and so everybody has more amount of money/notes/coins with each passing day. A dollar tomorrow will buy less goods/services than it can today and so on.
In a fixed amount currency like bitcoins, as people borrow bitcoins from others, the value of each unit of bitcoin goes up as time passes. This is because there is a fixed number of bitcoins available and more people demanding more bitcoins through loans will mean every unit of bitcoin is valued more. So in bitcoin loans, the interest rates will be negative. That is, if I give you a loan of 1 BTC and charge -10% interest rate on it, I will actually pay YOU 0.1 BTC every year! It's the exact reverse of the fiat currency system.
Now in a fiat currency economy, if the inflation rate is say 5%, and banks charge 12% interest on loans, they beat inflation by approximately 7% every year which is their profit.
In the Bitcoin system, if the "deflation" rate is -15% and banks loan at an interest rate of -10%, they make a profit of -10% - (-15%) = 5%. In simple terms, while the rest of the bitcoin holders have to give away 15% of their bitcoins every year due to deflation, the bank have to give only 10% of their bitcoins, thus saving 5% every year.

The short answer is no. You can't run out of Bitcoins.
How many people make their mortgage payments using dollar bills? Almost nobody. So you don't have to worry about running out of dollar bills preventing people from paying their mortgage.
If I owe a bank 100 Bitcoins, all they care is that they get something they value at 100 Bitcoins. It doesn't have to be "real" Bitcoins on the block chain. It can just as well be a "check" for 100 Bitcoins from some organization they trust, and then they only have to settle the difference with that organization. They can even settle the difference in dollars or gold. It doesn't matter.

From a purely monetary perspective the difference between a fiat currency and Bitcoin is that Bitcoin does not have a central bank (this was a main goal of Satoshi Nakamoto as we can read here). A central bank can create new money just by printing it, which causes inflation.
If you think of a fiat currency where the central bank decides not to increase the money supply (didn't happen often historically), it would resemble Bitcion (note: only from a monetary perspective, not technologically). But when there are banks or other ways to grant loans two things happen. First, there is an increased demand for money for the interest payment. Second, the money that has been borrowed is either directly deposited at a bank or taken to purchase something and then deposited at a bank by the buyer. The bank can (and most likely will) take this money to grant a new loan which in turn increases the money supply.
When the money supply is increased through loans, it will cover for the increased money demand from interest payments. My co-founder and I run the Bitcoin peer to peer lending platform Bitbond.net where loans are granted, but without a bank. Some other sites essentially also grant loans. Such services won't be hurt by the finite number of Bitcoins because the loans increase the money supply sufficiently.

All you have to do is convince an existing holder of Bitcoin to accept a payment in another form such as goods or services. This will mean you will need to produce goods or services that people want, otherwise they will not be willing to give up their coins, and you must be willing to produce more of them than the original value of whatever you've borrowed.
Since Bitcoin is deflationary in nature, credit will be tighter than in other systems, but that is neither good nor bad, it simply is what it is.

a few facts and ideas on the topic :

bitcoin is not an inflation/debt based economic system, its based on https://en.bitcoin.it/wiki/Deflationary_spiral and encourages savings, not borrowing.
bitcoin debt ( and even more shorting bitcoin ) is really dangerous, many btc loans have already been given on #bitcoin-otc, but everyone knows its real dangerous ( and possibly even more for the borrower than for the lender ).
if what you say happens, the value of bitcoin will grow even more, and people will borrow smaller amounts ( valued more ) with time.

Bitcoin lending would be done as in any bank lending - the bank opens a bit coin checking account for you in the amount of the loan. You pay back the loan and interest by using the funds other people have borroed from other bitcoin banks. As long as more & more banks make more & more loans its ok. As in any banking the banks only need a fraction of the bitcoins on hand to cover the loans made. This also gets rid of the bit coin deflation problem because the banks are inflating the bitcoihns by making all these bitcoin checking accounts. The big wall street bank could jump in by seting up bitcoin debet cards and bitcoin credits cards. Paypal could setup a system to support bitcoins. Once bitcoins get going you could have specilized version of bit coins. For example you could have a type of bitcoins the mostly are used for pork bellies. Or say a type of bitcoins that tend to only be used for realestate. That way the exchange between these types of bitcoins would soffen any bubbles that may appear. There may be 100s of different types of bitcoins. To make a transaction the user would use plastic that would altomaticly use the correct bitcoin type for the transaction and adjust the verious accounts of the user. The user would be protected from bubbles by the fact that only a few of the accounts would be effected by bubbles at any one time. So it a housing bubble broke you might find it hard to get a housingbitcoin loan but you still could get a transportationbitcoin loan to build a plane. We will therefore never have a problem like we had in 2008 again.


text:
Error trying to mine with stratum_proxy
I'm giving a specific case here, but I think I have seen the same error trying to use stratum_proxy for any pool and coin I have tried.
When wemineltc.com briefly had a getwork server up, cudaminer worked great! But now that they're back to stratum only, I'm trying to get that to work.
I run the stratum proxy that I get from wemineltc and see this:
C:\dev\cudaminer-2013-04-14\stratum_proxy.exe\twisted\web\util.py:372: Deprecati
onWarning: Passing filenames or file objects to XMLFile is deprecated since Twis
ted 12.1.  Pass a FilePath instead.
2013-04-16 08:24:07,302 WARNING proxy jobs.<module> # C extension for midstate n
ot available. Using default implementation instead.
2013-04-16 08:24:07,302 INFO proxy mining_proxy.main # Stratum proxy version: 1.
3.0
2013-04-16 08:24:07,302 INFO proxy mining_proxy.main # Trying to connect to Stra
tum pool at eu.wemineltc.com:3333
2013-04-16 08:24:07,302 INFO proxy mining_proxy.main # Setting PoW algo: scrypt
2013-04-16 08:24:07,621 INFO stats stats.print_stats # 1 peers connected, state
changed 1 times
2013-04-16 08:24:07,621 INFO proxy mining_proxy.on_connect # Connected to Stratu
m pool at eu.wemineltc.com:3333
2013-04-16 08:24:07,621 INFO proxy mining_proxy.on_connect # Subscribing for min
ing jobs
2013-04-16 08:24:07,838 INFO proxy mining_proxy.main # -------------------------
----------------------------------------------
2013-04-16 08:24:07,838 INFO proxy mining_proxy.main # PROXY IS LISTENING ON ALL
 IPs ON PORT 3333 (stratum) AND 8332 (getwork)
2013-04-16 08:24:07,838 INFO proxy mining_proxy.main # -------------------------
----------------------------------------------
2013-04-16 08:24:07,838 INFO proxy client_service.handle_event # Setting new dif
ficulty: 128
2013-04-16 08:24:07,839 INFO proxy client_service.handle_event # New job c9 for
prevhash d2c7e1c2, clean_jobs=True

Then I run cudaminer with the following batch file (on windows 7 64 bit):
cudaminer.exe -o 127.0.0.1:8332 -O user:password

And see this:
C:\dev\cudaminer-2013-04-14>cudaminer.exe -o http://127.0.0.1:8332 -O user:
password
           *** CudaMiner for nVidia GPUs by Christian Buchner ***
                     This is version 2013-04-14 (alpha)
        based on pooler-cpuminer 2.2.3 (c) 2010 Jeff Garzik, 2012 pooler
               Cuda additions Copyright 2013 Christian Buchner
           My donation address: LKS1WDKGED647msBQfLBHV3Ls8sveGncnm

[2013-04-16 08:29:52] 1 miner threads started, using 'scrypt' algorithm.
[2013-04-16 08:29:52] HTTP request failed: The requested URL returned error: 401

[2013-04-16 08:29:52] json_rpc_call failed, retry after 15 seconds

I have tried a few different things but I always get that 401 error. Any ideas on resolving this?

The problem was with windows firewall. Turned it off, tried again, it worked. Turned it back on and set the appropriate windows firewall exceptions for stratum_proxy and cudaminer and it worked.
I had this problem suddenly appear again this morning. Turning off firewall made no difference. I changed cudaminer to point to my machine ip address instead of 127.0.0.1 and then it started working.


text:
Balance not going up in deepbit after mining
I've been mining with a deepbit account and noticed the balance hasn't been increasing. I use the following bat file to run cgminer version 3.5.0
cgminer.exe -o http://pit.deepbit.net:8332 -u emailme@gmail.com_one -p 123abc -I 10 -g 1 --auto-fan --queue 1 --temp-target 70 --gpu-engine 945 --gpu-memclock 275 --temp-overheat 80 --gpu-fan 75-85  -k diablo -v 2 -w 256
After upgrading to 3.5 when I press q to quit Windows gives me the error "Display driver stopped responding and has recovered".
Here's a screen shot of it working

What should I do to find out why it's not working?

I'm not sure how long you have waited but if you plug your hashing rate into a mining calculator and see that after 24 hours at 63/MHS you should earn .00005 BTC roughly 4 cents in USD then subtract your cost of electricity which I would guess is a couple hundred watts at an average of $.15/kwh you can figure out how much it costs you to earn that much BTC you will see your earnings are in the negative.  Plus you may or may not have a driver issue based upon your other comment, I would visit the manufacturers website and see if there is an updated driver.

also it may or may not help but the most current revision of cgminer that supports GPU mining is 3.7.2 might be worth the upgrade.

I don't pay for electricity. Could you provide a link to the most current cgminner? I have the latest video card driver.

http://ck.kolivas.org/apps/cgminer/ don't get the newest cgminer as 3.8 drops support for GPU and scrypt mining.  3.7.2 is what you want

Are you mining with proportional rewards or PPS?
If proportional then you get paid when a block is found. That can take several days at the size Deepbit is now. So things are most likely working, it just takes time.

It was just slow, took a few days


text:
What is the best BTC miner for intel HD 4000 card?
Right now I am using GUIminer(and some guides said not to use it), it gets ~80Mhash/s but this miner is laggy, sometimes disconnects without a reason, and it is slow... So I would like to use cgminer, but it doesn't find Intel hd card...
so how do I use cgminer with Intel HD 4000 integrated card, so it could mine? Or what miner would you suggest?
NOTE: this is a question by a guy who is working with BTC for like 1h lol AND I don't want to receive answers who say this is stupid or ineffective.. or it's Impossible.
The question is HOW would You do this with the restrictions of an integrated video card? lets say for theoretical learning purposes, NOT TO MAKE MONEY! I just wanna see if I can make it work.
Or maybe I should use BFGMiner if he would work better(or at all) with Intel integrated HD 4000 card?
thanks:)

Theoretically, you should be using cgminer to mine a GPU coin with your GPU :). Maybe not the answer you're looking for, but you're going to get bored real quick when your miner returns 2 cents for the week.
I recommend mining Litecoin with your GPU. Convert to bitcoin on BTC-e.com if thats your favorite. Its practically the same challenge/experience that you're working at, but you'll at least see some progress. Good luck!


text:
Were bitcoins automatically converted to Bitcoin Cash?
Don't understand about Bitcoin Cash. It is written here:

Bitcoin Cash is an altcoin which forked from Bitcoin in order to raise
  the maximum block size from 1 MB to 8 MB.

But:

Anyone who held Bitcoin prior to the fork had the same amount of
  Bitcoin Cash following the fork.

So, bitcoins were automatically converted to Bitcoin Cash.
But they have different price and actually different currencies.
Some people want to keep Bitcons, some Bitcons Cash.
Or I understand it wrong?

BCH is basically a copy of the blockchain up until the point of the fork so all BTC on the bitcoin blockchain have an exact copy of BCH on the BCH blockchain. That means if you held BTC at the time of the fork, you get an equal amount of BCH as well - you have both. Yes, they are different currencies with different prices, and you can buy and sell them completely separately from each other


text:
I was getting 7 mhash/s on GUIminer.. but only 0.3 on bit minter?
I'm really new to bitcoins. I have a good computer, cpu based at least. 8 core AMD processor with 4 ghz a core with decent amount of cache. I wanted to make some extra money and use my computer to get some bitcoins. Knowing nothing about the industry first thing I did was download wallet and GUIminer. Guiminer keeps taking all the cpu and generates up to 7 Mhash/s However it proves really ineffective, taking all that cpu and showing absolutely no progress on the BTC guild website. So I looked for an alternative method of bitcoin minig that will result in higher reward. I came to bitminter, downloaded their client. When I ran their client, it generated a 0.3 Mhps. This was really disappointing and I don't know why.
Well why is my mhps so low on bitminter, and where should I mine bitcoins?
Also it says "warning: electricity-wasting slow cpu" but I have a beast CPU

possible duplicate of How much Bitcoin will I mine right now with hardware X?

As the warning says, you are just wasting electricity. mining on a slow CPU. Your CPU is a beast at some tasks, mining Bitcoins is not one of them.

As far as I can tell GUIMiner may have been failing,
The reason why Bitminter says "Warning" is because CPUs are not effective for mining. (I have an Phenom II X6 @ 3.6 Ghz and get the same as you), My graphics card (ATI 7770) can only just mine them now.
How many cores is bitminter set to use?
My recommendation could be for you to mine litecoins and then exchange them for bitcoins. Litecoins mine better on the CPU.

The amd 8 core processors are not in the least a beast cpu. They are terrible for things like this. It is a budget cpu as are most of AMDs processors if not all. If you want a cpu that can do some damage go for an intel i7 3770k or above, but if you cant afford then I guess your stuck with that somewhat poor cpu. i have no idea how many Mhashs/s i could do with my CPU because it is no longer supported apparently, but i can do upto 115 mhases/s and its generally 109-112 mh/s with my Gtx 680 GPU from Nvidia. Graphics cards are BEAST when it comes to parallel processing and repetative computations. Such as decrypting hashes (or password cracking) etc

Bitcoin mining now requires either powerful graphics cards (usually AMD cards) or ASICs built from the ground up to perform the hash computations required in mining.
Here is a link to demonstrate the performance of various pieces of hardware:

https://en.bitcoin.it/wiki/Mining_hardware_comparison

In short, your computer processor was not designed to mine bitcoins nor has the ability to be repurposed like a graphics card. Thus, the hash rate you are getting is reasonable.

if you are getting .3, then it must be your video card doing the work in bitminter.  There is no way your cpu will get anywhere near that, neither will an Intel.
Keep your AMD cpu, stay way from NVIDIA gpu's as they are terrible at this job.  Multiple top end AMD GPU's in Crossfire will give you the best speeds possible without buying an ASIC as you will see here https://en.bitcoin.it/wiki/Mining_hardware_comparison  unless you want to spend thousands on a Tesla to get the performance AMD offers at $699...


text:
Litecoin Historical Trade Data
Is there anywhere I can find detailed LTC historical trade data? BTC-E's API is not well documented and I can only find a live tick API from them. I found historical data on Cryptocoin Charts but the data they output is not very detailed.

If you search through your BTC-e's profile, you will find that they have MetaTrader which shows all trades.
This site shows data for MTGox which is very good for like how you want though I don't know if they have one for BTC-e
http://www.quandl.com/BITCOIN-Bitcoin-Charts/MTGOXUSD-Bitcoin-Markets-mtgoxUSD

The URL you linked 404s

You might want to try http://www.cryptodatasets.com/ It has free raw data and sampled data from Bitfinex and HitBtc (currently), including BTC, ETH and LTC(litecoin).
Hope it helps!
P.S. it's my website

How did you obtain this data, and do you have the same for BitFinex IOTA/USD or IOTA/EU?

I think your BitFinex BTCUSD data is wrong. If I look at 2017-12-18 in BitFinex I see a high of about $19k and a low of about $10.5k. Your data says the highest high was $19,175 (looks right) and the lowest low was £18,010 (definitely wrong).

@PeterMorris I obtain the data via platform's API.
I will add MUCH more data (including IOTA/USD) quite soon.
Also, I am afraid that you are wrong since 2017-12-18 OHLC was: 18956, 19175, 18010, 18928

You are correct. I was looking at a graph from a non-BitFinex source and, of course, the values are exchange specific rather than a global price :)


text:
FPGA/ASIC with general SHA-1 and SHA-2 capabilities
With the introduction of ASICs and FPGAs, I am looking to upgrade my rig.  However, I use the rig for academic research involving brute-force SHA-1 and SHA-2 cracking (I am working on make passwords more secure for my capstone project, trying to pay for everything by mining BTC during downtime).
What are my options?  GPU's don't seem like they will matter much longer...

You could possibly buy some FPGA miners.  The ASICs can only do Bitcoin's specific hash function, and won't be of any use for your research.


text:
How do you generate a bootstrap.dat file?
I think it's just a renamed blk0001.dat file, but I can't find any references as to what it actually is other than a "binary blockchain" ....

As this has been marked as a duplicate, should I delete it or is there another way I can confirm that it is a duplicate?

The question is prominently marked as a duplicate and it has a valid answer, so it is fine to keep it. Some people might chose different terms to search for the same thing, so it is good to have several different question headers to point to the question. Also see: Why are some questions marked as duplicate?

The bootstrap.dat file contains a serialized copy of the blockchain, usually up to the latest checkpoint released for the official client.  The official bitcoin client will read this file when starting to create the blockchain without downloading it from the peer nodes.  The file will then be renamed to bootstrap.dat.old so it won't be reprocessed when the client is restarted.
A Python script used to create the file can be found here.  You will need an up-to-date pynode chain database.
If you have the Armory code, you can compile this C++ program.  This uses the blockchain data blocks created by the official bitcoin client.


text:
Changing p2p to create a quark coin mining pool?
I've been trying to mine some quarkcoins pretty unsuccessfully.
I can only find two pools that are up and neither seem to have returned anything, even after hashing for 24 hours.
I thought perhaps putting a p2p quark pool up would be a good idea, but there are no guides anywhere, obviously it's new'ish. There are a lot of bitcoin p2p guides.
Just wondering if anybody would be able to point me in the right direction of what parts of the bitcoin p2p I'd have to deviate from to get a quarkcoin p2p running?

Hi Raf,
This area is supposed to be for answers, not follow-up questions. Please ask a new question (any user can!) and refer to this question if it helps to provide context. For more information about the concept of Stackexchange you can refer to [about], or [ask].

I've been using the qrk.mime-pool.net for almost a week now and it is working fine:
They have instructions here:
http://qrk.mine-pool.net/start.html
All you need is a wallet address for it to pay into, the password can be whatever you want.  You can monitor payouts to your address from the Payout tab - if it doesn't appear after a few blocks have been  mined something is wrong:
http://qrk.mine-pool.net/index.html#mainnodepayout

This is not an answer to my question.

The answer is simple'ish.  But a more in-depth one could still be be provided by somebody else, so I wont mark my answer as accepted.
Quark uses 6 hashing functions (blake, bmw, groestl, jh, keccak, skein) and so these need to found and compiled into whatever p2pool is in use.
I've scrapped off the idea of bothering for now, as there's only 10% left of Quarkcoins to mine, probably why there are so few pools about as it is.


text:
Fastest CPU Miner
I have a Windows Server with 20 cores at 2.10 Ghz (AMD Opteron 4171 HE). I am currently using Ufasoft CPU miner and getting about 35 Mhash/s.
I want to know what is the fastest CPU miner that I can use.

Keep in mind that CPU mining is generally unprofitable even if your electricity is free.  And if it's not, you're paying a lot more than you would by simply buying the bitcoins.

and your electricity?

Free as in beer.

Unfortunately the CPU mining period is long gone. It is unprofitable and not worth your electricity bill.

The official bitcoin client from bitcoin.org has a CPU mining option. Add a file named bitcoin.conf to the bitcoin data directory, with the contents gen=1
https://en.bitcoin.it/wiki/Running_Bitcoin#Bitcoin.conf_Configuration_File

I know about that app but can I pool-mine with the official client?

@ClickUpvote Nope.

Unfortunately the latest versions of the bitcoin-core software no longer include the mining code. The gen=1 is ignored.

I know this is an old question but recently I got a similar server.
I've tested rpcminer, GUI Miner (Which is actually UFASoft miner).
Personally the best I've found is CPUMiner. With a hash rate of about 75MH/s, it takes a bit of setting up as CPUMiner is normally used for Litecoin mining. CPUMiner gave me about 10%-20% more than the closest rival, which was rpcminer.
I've placed the following text in a .bat file that starts CPUMiner with the correct arguments.
minerd.exe -o http://[pool url]:[pool port] -u [username] -p [password] -a sha256d -R 2

The last 2 options are
-a sha256d - This tells CPUMiner to use the sha256 algorithm, used for Bitcoin mining.
-R 2 - Indicates the number of seconds to wait for when the pool cannot be found. I know this seems a little soon, but change yours to whatever you want.

What is cgu miner?

which pool do you recommend?

@DiomedesDominguez I moved onto GPU mining a long time ago. My suggestion would be to find a pool thats reliable and long running (more than 6 months, minimum).

Ok, so now which GPU mining tool do you use?

@DiomedesDominguez Personally I use Nicehash Miner. Its a wrapper for GPU/CPU/ASIC miners. Although this only mines at Nicehash, but it does so with a profitability switcher (EG: Miner will mine scrypt until another algorithm becomes more profitable, then switch to that). Apologies if this sounds like an ad, but have been through many pools and software and Nicehash is very well thought out and simple to get going.

for cpuminer look for pooler on github. his repo is called cpuminer, but the executable is called minerd (miner daemon).

@DiomedesDominguez, has you received payments by cpu mining?

No, I'm mining with ASIC

The original question was [sic] "What is the fastest CPU miner that I could use". Based on the answers, it seems, that everyone by default went to cpuminer/minerd. I use it also. However...
bfgminer (all except the latest version) has the ability to be used as a cpu miner. I have not been able to optimize mine yet but I do know that it is an incredibly smart miner with many options that can be set for performance.
So, cpuminer/minerd is great for being able to download and mine with your cpu all with no extensive testing, tweaking, etc. But if you want something that you can play around with, tweak, also to have built in Stratum, etc, then you may want to also dl bfgminer and play around. Especially if you want to cpu mine other alt coins (ie BBQ, Alpha, Xen, etc---anything with a low difficulty).
And if the day comes where you are ready to mine with a gpu, bfgminer is most likely going to be one of the miners you will use.

You might be better off doing it by hand.
But mining speed varies by application. I might have the same computer here but there is a defect in one of the prongs on the cpu, it might always run .1Mhash slower than any other chip. Yours might run faster. No one can tell you how fast or how much better software might run for you.
It is a very hard question to answer, send me your server and I'll test it out for you. Or you could just download a few miners, try them out, and decide which works better for you.

Can you list the download links of the miners to try?

"send me your server and I'll test it out for you" Sounds legit.

It is, I'm a pro tester. My main method is the sledge-hammer method. Its a good test of durability.


text:
Measuring levels of spammer participation on the Bitcoin network
Is there any reliable way of estimating the number of spammer controlled miners?  I was thinking about the common wisdom that BitCoin should have been implemented with a hashing mechanism that is resistant to distributed processing (i.e. scrypt) and I have my doubts.
The first thing I thought when I saw a headline about BitCoin I rolled my eyes, it looked like a spammer's dream come true.  But the recent protocol breakage and the (successful) coordinated effort to fix it, some I saw some comments attributing it to the concentration of miners.  I also know a pooled miner that griped about an obvious hacker that he banned form his pool because the clients were doing way too much network traffic for too little work.
So, I am looking for a way to track this.  The IP's stored in the Blockchain are of the first IP's that saw the coin and the payouts would go to a centralized wallet.
Any thoughts?

Could you clarify what you mean by spam miners? I've not heard that term before.

Duplicate? http://bitcoin.stackexchange.com/questions/1439/have-there-been-reports-of-botnets-mining-bitcoin-crypto-currencies

I'll assume you're confusing the term "spammer" (someone who sends unsolicited email, or posts unsolicited advertising) with "hacker" (of which black hat ones might operate a botnet and mine cryptocurrency), so I've updated your question.
Bitcoin is generally substantially less worthwhile for a black hat hacker to mine with a botnet than an altcoin using scrypt (such as Litecoin). This is because Bitcoin hashing happens to be more efficient to run on GPU hardware, whereas scrypt is more efficient to run on CPUs.
IP addresses are not stored in the blockchain.
Not much is available in the way of statistics for Bitcoin users, so you'll probably find it difficult.
Pool operators can collect IP addresses of those connecting to their pool, so they may have some (or could potentially collect some) data useful for what you describe. Even then, tracking it would be difficult; it may become a cat and mouse type game like virus writers and anti-virus companies play, if the operator of a botnet becomes aware of what you're doing.

"Bitcoin is generally substantially less worthwhile for a black hat hacker to mine with a botnet" Yup, that's what I am trying to prove : )  But, essentially, I would need to ask a pool operator and they would probably refuse...

I think that spammer is the more accurate term to use here.  Hackers and hacking is a positive thing!


text:
What values are legal for the transaction's version field?
In the transaction's version field, what values are legal?
What values have actually been seen in the blockchain?

In the transaction's version field, what values are legal?

The version field is a 32 bit unsigned integer, any value is valid. Version 0, or version numbers above the nodes CURRENT_VERSION constant are considered non-standard and are not relayed, though they can appear in blocks.

What values have actually been seen in the blockchain?

1 is the only number to have been in use at this point in time. BIP62 proposes bumping the version to 3 (skipping 2 entirely) to match the block version and avoid confusion, however this was withdrawn. BIP68 specifies that transactions spending a CSV output must have version 2 or higher.


text:
Why there's no bank or institution lending Bitcoins?
To the best of my knowledge, there's no bank lending in bitcoins, yet, which surprises me. Now that Bitcoin has stabilized to circa USD $100, I think it could be reasonable for an institution to start lending in this currency. By using Bitcoins instead of a national currency, the number of potential lenders goes way up than the number of banks in most countries, and the interest rates could potentially be way lower.
I thought of a way to make it even less risky for a potential lender to someone they don't know in a remote country: they could ask the potential client to ask for a loan in their national currency to a big, recognized bank. The bank would do the job of assessing the client's capability of payment, do the background checking, etc. and lend (in national currency) the amount they believe the client is capable of paying off, in the selected time period.
This amount would be transferred (via the traditional banking system) to the Bitcoin bank, and the documents for the loan would be scanned and faxed/e-mailed as well (with validated-transaltion attached, of course). The Bitcoin bank could then take the risk-assessment of the local bank at face-value, return aprox. 95% of the amount transferred in the very same national currency to the client so it can pay the loan to the bank almost immediately (thus paying a very small amount in interest to the local bank) and then loan 90% of the original amount but in Bitcoins - at hopefully a lower interest rate. Of course, the difference in the amounts plus the interest would be the profit.
In effect, grabbing the money from a recognized, traditional institution would be a way of saying "hey, look, other guys think I'm worthy of a credit up to aprox. this amount for this time-period". I for one would be happy to give it a try, taking a loan on Bitcoins!
Could this be feasible?

There are ones who do it, here's a listing: https://btcjam.com/

There is BTCJam, and I heard of at least one more company doing the same thing.
However, there is a HUGE problem with BTC lending - it is very fraud prone. I exchanged emails with their support and got this interesting factoid:

We have a repayment rate of 76.11%

That means about a quarter of their loans don't get repaid. BTCJam does not appear to pursue defaulting borrowers either, meaning that if you happen to lend your money to a scammer, your money is gone. They claim to have the person's social network status, paypal history, phone verification and all that stuff, but they do nothing with that information.
So while BTC lending is easy to do, enforcing repayment is nigh-impossible in such systems that are careless about what they do.

And a few hours after I posted my question I found the "Islamic Bank of Bitcoin" (http://www.ib-bitcoin.com/) , though it's not very clear to me how they work. Thanks!

My co-founder and I just started a Bitbond.net where we connect borrowers and lenders and offer an online wallet. Our goal is to make banks obsolete by such a service.
You can borrow Bitcoins by issuing a Bitbond. Before that, we perfom a credit rating to assess the creditworthiness of the issuer. We also do an identity check so if a borrower is late on his or her payments this can hurt their credit score.
The good thing about it is that by connecting borrowers and lenders directly you match the maturities of bith sides. One big problem with banks is that they give out long term loans and refinance them with very short term money, i.e. their client's deposits or overnight loans from other banks. Since Bitcoin wants to be a better and more stable currency we believe that banking as such also needs to improve. That is why we built Bitbond.net

Bitbond.net looks broken on an iPhone. Can't even read the page content

Thank you for taking a look! We haven't yet optimized it for mobile devices. We currently focus on the functionality in desktop browsers but will also improve mobile experience soon.

If you like to check back, our site is now visible on mobile and tablet devices.

One thing to note is that the basis for loans is a traditional currency, which can be good or bad. What I mean is: Let's assume the BTC exchange rate is 1.000 USD today and you borrow 10 BTC. You will then owe and have to pay back ... no ... not 10 BTC + interest but 10.000 USD + interest. Each installment is in traditional currency and will be converted to / from BTC at the exchange rate on the day of the transaction. So it is not a mean to speculate on the BTC exchange rate. Nevertheless, it's a fair and working service. I tried it.

Check out http://bitcoinswithfriends.com where people can lend Bitcoins to friends they have on Facebook.

As of July 14th, 2021, with Coinbase as well as BlockFi, you are able to receive cash against your collateral.
Coinbase allows Users to borrow cash using Bitcoin as collateral
https://www.coinbase.com/borrow

How Borrowing Cash Against Your Bitcoin at Coinbase works

BlockFi Lending against cryptocurrency  as collateral

https://blockfi.com/
https://www.investopedia.com/fidelity-will-accept-bitcoin-collateral-for-cash-loans-5091879

Bitcoin lending would be done as in any bank lending - the bank opens a bit coin checking account for you in the amount of the loan.   You pay back the loan and interest by using the funds other people have borroed from other bitcoin banks.  As long as more & more banks make more & more loans its ok. As in any banking the banks only need a fraction of the bitcoins on hand to cover the loans made.  This also gets rid of the bit coin deflation problem because the banks are inflating the bitcoihns by making all these bitcoin checking accounts. The big wall street bank could jump in by seting up bitcoin debet cards and bitcoin credits cards.  Paypal could setup a system to support bitcoins. Once bitcoins get going you could have specilized version of bit coins.  For example you could have a type of bitcoins the mostly are used for pork bellies.  Or say a type of bitcoins that tend to only be used for realestate.  That way the exchange between these types of bitcoins would soffen any bubbles that may appear.   There may be 100s of different types of bitcoins.  To make a transaction the user would use plastic that would altomaticly use the correct bitcoin type for the transaction and adjust the verious accounts of the user.  The user would be protected from bubbles by the fact that only a few of the accounts would be effected by bubbles at any one time.  So it a housing bubble broke you might find it hard to get a housingbitcoin loan but you still could get a transportationbitcoin loan to build a plane. We will therefore never have a problem like we had in 2008 again.

I am not sure lending is a good idea for bitcoin, or at least not if the amount to be paid back was to be paid in bitcoins.
Many of the problems with the current banking system of how "the small people" get into trouble is due to lending and the very immoral interest system, that also increase to a higher % depending on how little funds you have available.
Interest would be an even bigger problem in a currency with a fixed amount.
An example would be:
Person A want to borrow 10.5 million bitcoins .
AND
person B also wants to borrow 10.5 million Bitcoins.
Both person A and Person B promise to pay the lender 10% interest, yet there is only every going to exist 21 million bitcoins.
However person A and person B have made a promise to pay back a total of 23.2 million bitcoins..... one of them is not going to have a good time!
Ultimately the bank is not going to receive all the interest they were relying upon and will eventually need bailing out by our governments, so they can continue to trade and pay their staff high wages.....
Of course there is more people than just person A and person B and they will never be able to borrow half of the economy on their own. There is also more than 1 bank that will be lending.
However on paper the calculations are the same, but as more people and more banks are thrown into the equation the time scales increase to cover many years, yet the inevitable will still happen as no matter how much good intention there is to repay the loans the fact is there is more owed than exists.
This is just the same with Fiat, although more money can be printed to cover this short fall, but that only serves to decrease the value of the money in our pockets unless our country can manage to take money from another country. BUT again the inevitable will happen and a country will soon no longer be able to afford to pay its own debts so it now having to borrow to cover its short falls... and eventually they will not be able to reply the loan that they have taken from your/our country.
No matter how you work out the calculations the inevitable will always == FUCKED!
The best result possible is to postpone the inevitable for a few more years or past our generation...
I think Bitcoin could well be the answer to our broken financial systems, but if all bitcoin tries to do is imitate an already broken system, it will make it no different from the dollar or pound, as 110% of it will be controlled by large institutions.
loans and interest are NOT a good thing and while banks say they offer us these loans owing to them being good people and wanting to help "the small people" they are in fact doing it to help themselves only, and intend to postpone the inevitable past the point of their pay day!
"The Monkey may very well have got it right with bitcoin, dont break it now!"
Ford

In addition, the only way to win is to take out the loans from these banks and NOT repay them! So anyone that wants to offer me a loan, please do email me :-)

Wouldn't the bank run into problems much earlier, when they tried to buy every bitcoin in existence?

the "every bitcoin" as an example of course would not happen, but it is easier to make the point of more would be owed with only person A and B as oppose to person 1 through to person 21 million. Of course money/bitcoins would circulate more with more people, but as said the result will still be the same, but over a greater period of time, as circulation can only go so far.

I also dont see what a "believer in bitcoin" would want to take out a loan. If the "believer" is correct in their assumptions and bitcoin becomes more popular and more valuable (exchangeable for an increasing quantity of goods), this can only mean that they are repaying at the higher value of bitcoins, so any gains are going to be very short lived and in the long run very costly. It would only work out to be a good financial move if the value of bitcoin were to drop (hence you could borrow enough for a car and only pay back enough for a donkey) + why the -1, it was an answer likable or not :-)

Even with a currency whose final amount is fixed, you do can have banks lending money with interest. In the end, to pay the interest, you simply take up a job at the bank and immediately give back your salary as payment. Even with fiat currencies, that's really how you pay your interest: donating a part of your work to the bank, albeit indirectly.

As for the example you provide, if such bank were to use the reserve banking system, both A and B would be able to get their 10.5 million bitcoins, as long as A receives them first, passes them off to C who deposits them in the bank, who takes part of that money plus more bitcoins from the safe to give to B. That's how banks work right now, actually...


text:
Since there is a limited number of bitcoins, will miners become obsolete?
The way i understand it, by calculating and validating new blocks miners keep the bitcoin network safe. As a 'reward' for this they recieve bitcoins.
However, since the number of bitcoins is limited, will there be a point where mining is no longer useful, because there is nothing left to mine? And if so, who will keep the chain safe?

Please post this as a comment and not as an answer. Also, difficulty and transaction rate are not related.

32x lower. But yes.

It is an frequently occurring but incorrect assumption that the purpose of mining is creating bitcoins. The reason mining exists, is finding blocks, so that a global consensus about the order of valid transactions can be established. Mining is hard because we don't want too frequent blocks.
One of the very original ideas in Bitcoin is combining this block construction consensus mechanism with the initial introduction of new currency, but it could have been done in very different ways.
So, even when the block subsidy dwindles and eventually becomes zero, mining will continue. Blocks will still be needed and if miners don't create them, other miners will pop up. They are expected to be paid from transaction fees.

Mining does find new coins, but it also incorporates transactions.  So it is expected that mining will still be profitable due to the transaction fees when mining no longer gives coin rewards.
Of course, this won't be a problem for another twenty years or so.

Mining is required for bitcoin transactions to be processed. If mining stops, bitcoin stops.
That being said, Bitcoin generation is only one incentive for mining. The miners also take a small ( << ) percentage of each transaction, and my understanding is that as volume of transactions increases, this will become the dominate method for profiting from mining.


text:
Will general non-standard transactions ever be allowed?
To the best of my knowledge, currently "Satoshi" client relays and most pools accept only standard (transfer or generation) transactions. Besides, community is working on M-of-N transaction type. Adding non-standard transaction to the blockchain is nowadays pretty problematic.
While currently enabling arbitrary scripts in transactions could be disastrous due to possible bugs in code (or in the script system itself), I wonder if it is planned to allow arbitrary transactions somewhere in the future, or will most of the network always be restricted to some set of "good" transaction templates?

possibly answered here: http://bitcoin.stackexchange.com/questions/4486/transaction-with-slightly-changed-script-is-never-relayed

@kirian Could you please post exact quotation? I can't find anything about the plans of handling non-standard transactions in the future, or whether "IsStandard" check in "default" client is considered temporary or permanent.

Sorry you are right. I don't know what the plans are for non-standard transactions in the Satoshi client.

The current development direction (January 2013) is to tighten up the IsStandard() checks even more. For example, we would like all signatures to conform to a very strict, canonical encoding to make life more difficult for potential attackers.
Allowing more opcodes or opcode patterns (or all opcodes/patterns) to be considered IsStandard() is certainly possible; before doing that I'd like to see a thorough analysis of the possibility for mischief using the current set of opcodes  and a lot of prototyping on the test network (where the IsStandard() check already allows all enabled opcodes).

What are the risks associated with allowing the propagation non-standard transaction types?

The isStandard() check has been relaxed as of 2014. You can now include a wide variety of scripts in transactions.
Read more here:
What is meant by "relaxed standards" for P2SH redeem scripts in Bitcoin Core 0.10.0?

For the Bitcoin Protocol to serve its purpose, every Client needs to process Transactions in the same matter. For a new kind of Transaction to be introduced and be spendable, it either needs to conform to the current rules (for example, be possible to execute using the Script), or be accepted by every Client (ideally). If one was to implement a new Transaction kind without people conforming to it, in the best scenario the Transaction would become unspendable, in the worst - it would not be processed by the Clients.
To introduce an option of creating "any kinds of Transactions", one would need to create some new version of the Script or something similar. Moreover, this Script would have to be still resistant to malicious attacks (for example, no loops or similar ways to make a lot of Clients lose a lot of computational resources checking the Transaction validity).
All in all, it might be possible to generalise creating some broad spectrum of Transactions with some changes to the Protocol, but those changes would have to be accepted by everyone. It is highly unlikely one will ever be able to create a new kind of Transaction at a whim.

Thanks for your answer. I was, however, more interested not in expansion of existing protocal, but in removing restrictions, which allow default client to propagate only transactions with script conforming to certain template, rather than any techically valid transactions. For example, adding OP_DUP OP_DROP to the beginning of the script does not invalidate the transaction, but currently most clients won't broadcast it, and most pools won't add it to mined block.

ThePiachu: What happens if I'm a miner and I modify the software I run to accept non-standard transactions, and then I successfully mine a block that includes transactions with my non-standard script?

@Loourr - you will create a hardfork that will generally be rejected by everyone else that doesn't accept those non-standard transactions.


text:
Is there any reason to invest on GPU based system these days? (March 2013)
I wonder whether I should spend around 1000$ - 1500$ for buying a GPU based system that will mine at 2GH/s. Is it still worth it? What will happen when all those ASIC machines will arrive? will i still be mining at a decent rate?
Thanks.

In short, no. The ASIC hardware on the network has already made mining unprofitable (or barely) for GPUs. The link of the duplicate question has a profitability calculator you can use if you want to do the math. My guess would be that difficulty will more than double over the next 3 months too.

As of today (April 6, 2013) mining profitability on GPUs is at the highest levels ever, but that is only because the exchange rate has rocketed up so fast.

http://blockchain.info/charts/miners-operating-profit-margin

At the same time, mining difficulty has been skyrocketing and that pace of growth will likely outpace the increase in the exchange rate.

http://bitcoin.sipa.be/speed-lin-10k.png

But there are probably two or three difficulty adjustment cycles remaining where mining bitcoins using GPUs is still profitable.   Enjoy it while it lasts because in a little over a month it should be all over for GPUs.   The expected rate of difficulty increase was not unexpected so further investment in GPU mining has been discouraged however the rise in the BTC/USD from the low teens to 10X that level has caused that call to be simply premature by a few months.


text:
What are anchor channels and how does Electrum Trampoline solve lack of them?
While trying to set up a lightning channel, I came across this issue. Here's the suggested solution:

The acinq node now requires anchor channels, which are not supported yet in Electrum. (will be in 4.6) You can still open a channel with the Electrum trampoline.

What are anchor channels and how does Electrum Trampoline solve lack of them?


text:
Can I know in advance the minimum amount required by a node to open a channel?
While experimenting with Lightning Network, I decided to put as little on the wallet as possible. This created problems when creating my own channel - it looks like some nodes have minimum amounts required to open a channel. mempool.space doesn't display this information. Is there a way to know it up-front other than just trying to create it?

The BOLT documents say that its not mandatory to broadcast a minimum channel price, each node do as he want for that, the best way to get this information is to do it by trial and error, try to open a channel with a specific amount and usually they will answer something like insufficient channel size when this amount is not enough.