Bitcoin Forum
December 07, 2016, 08:27:47 PM *
News: To be able to use the next phase of the beta forum software, please ensure that your email address is correct/functional.
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: is there a client for mining transaction without transaction fees?  (Read 1173 times)
prgiorgio
Jr. Member
*
Offline Offline

Activity: 34


View Profile
December 22, 2011, 09:40:49 AM
 #1

Hi I'm new so i write in this thread.

Nice to meet you all.
I noticed that there is the option to start the client giving -gen to make it mining also. Great!

I started with bitcoin with two wallets on two pc.
I wanted to send some bitcoins from one wallet to my main pc
(abount3-4 BTC) but the client asked my for a transaction fee.

What? So I studied what is mining and the transaction 'costs' for network and so on.

In my opninion  bitcoins will have not a big future if transaction fees are mandatory in a distributed system....

But I like so much the phylosofy so i pop this question.

Is there a way to start the client (or exists a modified client) that has this behaviour:
- no mandatory transaction fees
- it asks into the network for ONLY transactions without fee to mine in a distributed manner and mines them

Please help I'm a newbie!

Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
kokjo
Legendary
*
Offline Offline

Activity: 1050

You are WRONG!


View Profile
December 22, 2011, 09:53:56 AM
 #2

Hi I'm new so i write in this thread.

Nice to meet you all.
I noticed that there is the option to start the client giving -gen to make it mining also. Great!

I started with bitcoin with two wallets on two pc.
I wanted to send some bitcoins from one wallet to my main pc
(abount3-4 BTC) but the client asked my for a transaction fee.

What? So I studied what is mining and the transaction 'costs' for network and so on.

In my opninion  bitcoins will have not a big future if transaction fees are mandatory in a distributed system....

But I like so much the phylosofy so i pop this question.

Is there a way to start the client (or exists a modified client) that has this behaviour:
- no mandatory transaction fees
- it asks into the network for ONLY transactions without fee to mine in a distributed manner and mines them

Please help I'm a newbie!


the current fees are in place to limit spam on the network. just don't use your bitcoins for a few days, and the client will not put fees on the tx. the fees are not mandatory (yet), and i know that there exists a no-fee client, but miners will still reject your transaction, if a) it does not have fees, og b) it is not 'old' enough.

"The whole problem with the world is that fools and fanatics are always so certain of themselves and wiser people so full of doubts." -Bertrand Russell
P4man
Hero Member
*****
Offline Offline

Activity: 504



View Profile
December 22, 2011, 09:59:36 AM
 #3

What Kokjo said. Just let those coins "mature" before transferring them.

As for generating coins with the client. Honestly, dont bother. If you have appropriate hardware (mid/high end AMD videocard), then feel free to try out mining with a more optimized client (for an easy one, check out my sig), but even then dont expect actual profits unless you also have very cheap electricity. CPU mining is pointless.

prgiorgio
Jr. Member
*
Offline Offline

Activity: 34


View Profile
December 22, 2011, 11:09:13 AM
 #4

Thanks for the answers, but you answered something different to my question.

I'm not interested in mining NEW COINS.
I'm interested in AVOIDING transaction fees without waiting.

I explain my point:
to avoid transaction fee i'm avaiable to give my pc power to mine my own transaction and free transaction of others to include in a block.

In other term,
is avaiable a client who behave like this?
For example the client REALLY accepts zero as transaction fee but mines directly (giving cpu/(gpu) time and bandwith) only the transactions (instead of new coins), giving the priority to my own  free transaction and transaction of some other people  that are without fees to include in the block.

You'll sure understand my point:  you should be able to give computational power/bandwith  instead of paying a transaction fee, that could be interesting for many people.

And most of all,
the network allow this behaviour or is teorricaly impossible to reach?

Thank you in advance.
P4man
Hero Member
*****
Offline Offline

Activity: 504



View Profile
December 22, 2011, 11:22:13 AM
 #5

Its not possible. Transactions are confirmed by being included in the next block. Finding blocks is also known as mining. Mining isnt just for coin generation, in fact its mostly for confirming transactions (the coin generation is a temporay bonus to get things started and spread coins). You can try and find that block but your chances of finding it are proportional to your hashrate, which makes that chance +-zero. You can not just confirm your own transaction, for obvious reasons I would think.

prgiorgio
Jr. Member
*
Offline Offline

Activity: 34


View Profile
December 22, 2011, 01:54:41 PM
 #6

What Kokjo said. Just let those coins "mature" before transferring them.
[...]

What do you mean by 'mautre'?
Coins in the wallet get older if not used so that after a while they don't need anymore transaction fee?
How long can it maximum take? One day?
How meny confirmations?
P4man
Hero Member
*****
Offline Offline

Activity: 504



View Profile
December 22, 2011, 02:01:16 PM
 #7

I dont know the precise criteria, but a few days. 2 or 3 I think?

kokjo
Legendary
*
Offline Offline

Activity: 1050

You are WRONG!


View Profile
December 22, 2011, 02:17:40 PM
 #8

oh please STFW before asking: https://en.bitcoin.it/wiki/Transaction_fee

"The whole problem with the world is that fools and fanatics are always so certain of themselves and wiser people so full of doubts." -Bertrand Russell
cheat_2_win
Full Member
***
Offline Offline

Activity: 215


View Profile
December 22, 2011, 02:41:20 PM
 #9

Does anyone know a mining pool that shares the transaction fee along with the generation fee of 50 BTC?
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218


Gerald Davis


View Profile
December 22, 2011, 02:42:50 PM
 #10

Thanks for the answers, but you answered something different to my question.

I'm not interested in mining NEW COINS.
I'm interested in AVOIDING transaction fees without waiting.

I explain my point:
to avoid transaction fee i'm avaiable to give my pc power to mine my own transaction and free transaction of others to include in a block.

In other term,
is avaiable a client who behave like this?
For example the client REALLY accepts zero as transaction fee but mines directly (giving cpu/(gpu) time and bandwith) only the transactions (instead of new coins), giving the priority to my own  free transaction and transaction of some other people  that are without fees to include in the block.

You'll sure understand my point:  you should be able to give computational power/bandwith  instead of paying a transaction fee, that could be interesting for many people.

And most of all,
the network allow this behaviour or is teorricaly impossible to reach?

Thank you in advance.

As a miner you can include any transactions you want.  If for some reason you don't like making as much money you could mine only free transactions.  Hell you could mine only your transactions.

There is no such thing as mining "only transactions".

You mine blocks.

The mining software
1) takes all transactions you want to include in the next block (from pool of unconfirmed transactions)
2) constructs a block for those transactions including a special transaction called the "coinbase" where the reward (50 BTC) & fees are sent to the miner.
3) looks for a hash which is below the target difficulty <- mining
4a) if you solve the block (find a hash smaller than target) you publish it to the network (goto step 1)
4b) if someone else finds the next block the miner stops what it is doing and starts over (goto step 1)

The miner gets the reward and the transactions now have 1 confirmation.  That is a simplified version of how bitcon "works".

So yes you "COULD" do what you asked but there would be no point.  With 1 GH of hashing power you will solve a block on average after 2 months.  You might solve a block in 1 minute, or you might not solve one for 8 months but on average it will take 2 months.

If you want to wait up to 2 months to confirm your transactions then yes you can mine them yourself.

Honestly though as the block subsidy declines fees will become more important.  What do you think will pay for the network?  The network which protects your coins and wealth?  Friendship and magical unicorns?  No.... MONEY.  Miners secure the network for compensation.   The fees don't necessarily need to be large but the network likely won't be free.    Low cost?  Sure.  Completely free?  never going to happen.   Even "free" transactions today aren't free.  You are paying via monetary inflation (coins mined out of nothing to compensate miners).

P4man
Hero Member
*****
Offline Offline

Activity: 504



View Profile
December 22, 2011, 02:45:04 PM
 #11

Does anyone know a mining pool that shares the transaction fee along with the generation fee of 50 BTC?

The one in my sig among many others. No pool fees at all either.

cheat_2_win
Full Member
***
Offline Offline

Activity: 215


View Profile
December 22, 2011, 03:44:53 PM
 #12

Thank you. I will definitely give your pool a try. I will bring ~500MH/s with me.
smickles
Sr. Member
****
Offline Offline

Activity: 446



View Profile WWW
December 22, 2011, 03:48:59 PM
 #13

Thanks for the answers, but you answered something different to my question.

I'm not interested in mining NEW COINS.
I'm interested in AVOIDING transaction fees without waiting.

I explain my point:
to avoid transaction fee i'm avaiable to give my pc power to mine my own transaction and free transaction of others to include in a block.

In other term,
is avaiable a client who behave like this?
For example the client REALLY accepts zero as transaction fee but mines directly (giving cpu/(gpu) time and bandwith) only the transactions (instead of new coins), giving the priority to my own  free transaction and transaction of some other people  that are without fees to include in the block.

You'll sure understand my point:  you should be able to give computational power/bandwith  instead of paying a transaction fee, that could be interesting for many people.

And most of all,
the network allow this behaviour or is teorricaly impossible to reach?

Thank you in advance.

As a miner you can include any transactions you want.  If for some reason you don't like making as much money you could mine only free transactions.  Hell you could mine only your transactions.

There is no such thing as mining "only transactions".

You mine blocks.

The mining software
1) takes all transactions you want to include in the next block (from pool of unconfirmed transactions)
2) constructs a block for those transactions including a special transaction called the "coinbase" where the reward (50 BTC) & fees are sent to the miner.
3) looks for a hash which is below the target difficulty <- mining
4a) if you solve the block (find a hash smaller than target) you publish it to the network (goto step 1)
4b) if someone else finds the next block the miner stops what it is doing and starts over (goto step 1)

The miner gets the reward and the transactions now have 1 confirmation.  That is a simplified version of how bitcon "works".

So yes you "COULD" do what you asked but there would be no point.  With 1 GH of hashing power you will solve a block on average after 2 months.  You might solve a block in 1 minute, or you might not solve one for 8 months but on average it will take 2 months.

If you want to wait up to 2 months to confirm your transactions then yes you can mine them yourself.

Honestly though as the block subsidy declines fees will become more important.  What do you think will pay for the network?  The network which protects your coins and wealth?  Friendship and magical unicorns?  No.... MONEY.  Miners secure the network for compensation.   The fees don't necessarily need to be large but the network likely won't be free.    Low cost?  Sure.  Completely free?  never going to happen.   Even "free" transactions today aren't free.  You are paying via monetary inflation (coins mined out of nothing to compensate miners).


I knew there was a good answer out there.

deepceleron
Legendary
*
Offline Offline

Activity: 1470



View Profile WWW
December 23, 2011, 02:53:40 AM
 #14

It seems like the original poster:

1. wants to use the services other Bitcoiners provide in maintaining the network, but isn't willing to pay a fraction of a cent in fees, and

2. wants to help others by relaying and including transactions that include no fees.


1. There are good reasons for fees. The main one is spam, I could send 100,000,000 micropayments for 1BTC, and every node on the network would have to relay and store them forever.

2. The mainline Bitcoin client will not relay transactions to others if they look spammy, and they will not get included in a block if they don't have an appropriate fee.

Transactions need to have a priority above 57,600,000 to avoid the enforced fee in the official client. Transaction priority is calculated as a value-weighted sum of input age, divided by transaction size in bytes:

priority = sum(input_value_in_base_units * confirmations)/size_in_bytes

For sending 0.05 BTC (5,000,000 base units) from one address, in 225 bytes (a minimal size, a one input, one output transaction with no remainder)

free when confirmations > 57,600,000 * 225 / 5,000,000 -- 2,592 confirmations

Having Bitcoins from multiple payments fund the transaction is where the "sum" in the formula above comes into play.

You can see above, the newer the coins are to you, and the smaller the amount is you are sending, the longer you will have to wait to send without fees. Sending microspam without fees will need coins older than Bitcoin itself.

There are some unofficial forks of Bitcoin that allow you to send without the expected fee, this will probably result in a lot of headache when you try to send no-fee payments, they never get there, and you have to manually remove the bad transactions from your wallet with third-party utilities to get your balance back.

If you want to "help" free transactions get included into blocks, Eligius mining pool has the loosest rules about including free transactions; often no-fee transactions, that would otherwise be dropped, will be included when Eligius generates a block. You have to have dedicated mining hardware and software (video card rigs) in order to contribute substantially to mining though.

It's really not an issue though, is it? About any transaction you would want to send will be .0005 BTC (about 1/5 of a cent). Paypal charges $0.35 + 2.9%.




prgiorgio
Jr. Member
*
Offline Offline

Activity: 34


View Profile
December 23, 2011, 08:34:52 AM
 #15

Ah, what a great answer.

Ok, so normal transactions (at least 1 BTC) are not with transaction fees!
This enables bitcoins again.
I'd like to suggest the developers that the official client should explain in the error message that transaction under a certain limit are a potential spam so it's required a fee, should also calculate the minimum amount to send
to be without transaction fees.

thanks to everyone.
G
prgiorgio
Jr. Member
*
Offline Offline

Activity: 34


View Profile
December 23, 2011, 08:45:37 AM
 #16

Well, i see a 'maturation' of about 150 confirmations/day for every transaction in my history.

That means that to send a 0,05 BTC i need a maturation of 2592 confirmations/ 150conf/day  = 18 DAYS

To send a 0,1 about 9 DAYS
To send a 0,5 about 2 days
To send 1 BTC about 0,9 days
To send 10+ BTC, almost immediately.

This is GREAT. That means than normal transactions and not 'spam transaction' are allowed without transaction fees.
And a transfer of at least 1 BTC is surely ok in normal bank transaction.
And bitcoins are REAL money at the end now.

This enables again this Bitcoin network to my eyes!

And yes, having two client in two different computers
and trying to send 0,001 received from bitcoinfaucet to the other client just for testing my first transaction
was not a good idea.
Now I was able to send 0,02 BTC without transaction fee.
Ricochet
Sr. Member
****
Offline Offline

Activity: 373



View Profile
December 23, 2011, 10:00:38 AM
 #17

I've been involved in the Bitcoin scene for a year, and I'm still amazed on a daily basis how well incidents like this were both expected and planned for.  The thing to remember is that Bitcoin was never meant for microtransactions, though it can work for them in a pinch with the right transaction fees if absolutely necessary. 
P4man
Hero Member
*****
Offline Offline

Activity: 504



View Profile
December 23, 2011, 10:04:24 AM
 #18

Well, i see a 'maturation' of about 150 confirmations/day for every transaction in my history.

That means that to send a 0,05 BTC i need a maturation of 2592 confirmations/ 150conf/day  = 18 DAYS

To send a 0,1 about 9 DAYS
To send a 0,5 about 2 days
To send 1 BTC about 0,9 days
To send 10+ BTC, almost immediately.


Assuming the above is accurate, you should add it to the wiki. Thats quite useful information.

deepceleron
Legendary
*
Offline Offline

Activity: 1470



View Profile WWW
December 23, 2011, 12:30:05 PM
 #19

Well, i see a 'maturation' of about 150 confirmations/day for every transaction in my history.

That means that to send a 0,05 BTC i need a maturation of 2592 confirmations/ 150conf/day  = 18 DAYS

To send a 0,1 about 9 DAYS
To send a 0,5 about 2 days
To send 1 BTC about 0,9 days
To send 10+ BTC, almost immediately.


Assuming the above is accurate, you should add it to the wiki. Thats quite useful information.

The source is from the Bitcoin wiki. You just have to do your own math, and the size in bytes can be unpredictable, so the estimations above are minimums.

A fee may also be requested by the client if there are many higher-priority transactions waiting in front of yours to be included in a block at the time of sending. This is something you can't see in Bitcoin, you would have to go to a site like bitcoincharts to see what the client sees about how many transactions are queued. This is to ensure fast inclusion of your transaction in the blockchain.

Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!