Bitcoin Forum
April 26, 2024, 12:58:38 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 [4]  All
  Print  
Author Topic: MtGox: Green address option  (Read 21572 times)
pc
Sr. Member
****
Offline Offline

Activity: 253
Merit: 250


View Profile
October 19, 2011, 01:37:53 AM
 #61

Perhaps it could be simpler. For every transaction, Mt. Gox would send from 2 inputs, 0.00000001 from the Green address and the intended amount minus a Satoshi from any Other address.
Creating a bunch of 1-satoshi outputs to be used as future inputs for transactions might work, but I think the transaction fee to create that seeding transaction would be higher than the one-more-input and one-more-output on each transaction that I proposed. Transactions are spent, not addresses. If your initial spend to the green address is more than the amount you're using as the token to prove the source, then you have "change" that you'd want to have in an output to the green address again, which is basically one more input and one more output per transaction, as I'd proposed. I suggested a bitcent instead of a satoshi because miners using the default algorithm would include a bitcent output without fees but would want a fee for a satoshi output since it's too small.

Of course, MtGox/Instawallet/whomever could try to make some kind of deal with major mining pools/individuals to treat their signed green transactions differently somehow. But using a 0.01 extra input and output makes it so that some kind of negotiation like that isn't needed. (I mean, there could instead be some kind of cryptographic signature in the transaction with an OP_DROP that was how clients authenticated a transaction came from a trusted source, but the whole point of the "green address" concept is that the authentication can happen with standard transactions without the rest of the network or miners needing to do anything special.)
1714136318
Hero Member
*
Offline Offline

Posts: 1714136318

View Profile Personal Message (Offline)

Ignore
1714136318
Reply with quote  #2

1714136318
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714136318
Hero Member
*
Offline Offline

Posts: 1714136318

View Profile Personal Message (Offline)

Ignore
1714136318
Reply with quote  #2

1714136318
Report to moderator
netrin
Sr. Member
****
Offline Offline

Activity: 322
Merit: 251


FirstBits: 168Bc


View Profile
October 19, 2011, 02:05:31 AM
Last edit: October 19, 2011, 02:22:03 AM by netrin
 #62

Whether the green address leaks small amounts, or recycles the same 0.01, isn't a heavily used green address input_age going to get penalized by:

priority = sum(input_value_in_base_units * input_age)/size_in_bytes

If there are multiple transactions from the same green address in the same block isn't the recycled 0.01 change going to trigger every miners' spam flags?

Code:
GREEN  --(0.01)--> | --( 5.00 BTC )--> DEST1
                   |
OTHER1 --(8.00)--> | --( 3.01 BTC )--> GREEN


GREEN  --(3.01)--> | --( 1.00 BTC )--> DEST2
                   |
OTHER2 --(2.00)--> | --( 4.01 BTC )--> GREEN


<< ? or ? >>


                   | --( 5.00 BTC )--> DEST1
GREEN  --(0.01)--> |
                   | --( 3.00 BTC )--> CHNG1
OTHER1 --(8.00)--> |
                   | --( 0.01 BTC )--> GREEN

Greenlandic tupilak. Hand carved, traditional cursed bone figures. Sorry, polar bear, walrus and human remains not available for export.
jav
Sr. Member
****
Offline Offline

Activity: 249
Merit: 251


View Profile
October 19, 2011, 08:22:23 AM
 #63

The suggestion by pc is a great idea!

I would definitely pick 0.01 BTC coins for this purpose, as it is always a good idea to stay above the "dust spam" limit.

Quote
// To limit dust spam, require MIN_TX_FEE/MIN_RELAY_TX_FEE if any output is less than 0.01
if (nMinFee < nBaseFee)
  BOOST_FOREACH(const CTxOut& txout, vout)
    if (txout.nValue < CENT)
      nMinFee = nBaseFee;

Where CENT is defined to be 1000000 (which is 0.01 BTC).

As others have pointed out, it's probably not such a good idea though, to reuse the same 0.01 BTC frequently. This would create transactions that depend on unconfirmed 0.01 BTC coins, which looks pretty spammy. But it's easy to work around: I would just put, let's say, 10 BTC worth of 0.01 BTC coins at the green address, to always have some available, which have a number of confirmations under their belt. And if you run out of confirmed 0.01 BTC coins, then that's a signal that you have too many unconfirmed transactions pending and should be slowing down in creating them anyway.

This sounds like a great implementation strategy to me. "Greenifying" a transaction is then basically just a post-processing step, which adds one of the available 0.01 BTC coins as an input and an extra output to send it back to the green address. This sounds modular enough, that a clean patch for this should be possible. I will probably switch Instawallet over to this mechanism at some point.

Hive, a beautiful wallet with an app platform for Mac OS X, Android and Mobile Web. Translators wanted! iOS and OS X devs see BitcoinKit. Tweets @hivewallet. Donations appreciated at 1HLRg9C1GsfEVH555hgcjzDeas14jen2Cn.
JoelKatz
Legendary
*
Offline Offline

Activity: 1596
Merit: 1012


Democracy is vulnerable to a 51% attack.


View Profile WWW
October 19, 2011, 06:12:58 PM
 #64

This sounds like a great implementation strategy to me. "Greenifying" a transaction is then basically just a post-processing step, which adds one of the available 0.01 BTC coins as an input and an extra output to send it back to the green address. This sounds modular enough, that a clean patch for this should be possible. I will probably switch Instawallet over to this mechanism at some point.
Just be careful that you only use funds that *you* are certain have sufficient confirmations to fund such transactions. If you use 'fresh' funds to fund a green transaction, and then a block chain re-orgranization invalidates those funds, *you* will be breaking your green address commitment.

I am an employee of Ripple. Follow me on Twitter @JoelKatz
1Joe1Katzci1rFcsr9HH7SLuHVnDy2aihZ BM-NBM3FRExVJSJJamV9ccgyWvQfratUHgN
neofutur
Full Member
***
Offline Offline

Activity: 146
Merit: 100



View Profile
October 24, 2011, 11:31:45 PM
 #65

Creating a bunch of 1-satoshi outputs to be used as future inputs for transactions might work, but I think the transaction fee to create that seeding transaction would be higher than the one-more-input and one-more-output on each transaction that I proposed.

 not with https://en.bitcoin.it/wiki/Free_transaction_relay_policy
netrin
Sr. Member
****
Offline Offline

Activity: 322
Merit: 251


FirstBits: 168Bc


View Profile
November 22, 2011, 08:39:36 PM
 #66

Hey Tux, I think it's great that Mt. Gox offers green transactions, but the purpose is defeated if the transaction doesn't hit the network immediately.

Greenlandic tupilak. Hand carved, traditional cursed bone figures. Sorry, polar bear, walrus and human remains not available for export.
ineededausername
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1000


bitcoin hundred-aire


View Profile
November 22, 2011, 09:17:24 PM
 #67

You can even make the input 0btc, afaik.

(BFL)^2 < 0
Red Emerald
Hero Member
*****
Offline Offline

Activity: 742
Merit: 500



View Profile WWW
November 22, 2011, 09:53:08 PM
 #68

I really like the idea of green addresses.  Getting multiple large sites (MtGox and Installawallet) will definitely help us get code into the main client.

Having some sort of registry would be great.  Maybe we could use a variation of the namecoin personal namespace (dot-bit.org/Personal_Namespace) so that anyone can publish an address.  Then there would be some third party that could collect lists of the addresses that they are willing to trust by checking the namecoin blockchain.  Merchants could then get a list from a trusted third party and not have to worry about managing the list themselves.

DeepBit
Donator
Hero Member
*
Offline Offline

Activity: 532
Merit: 501


We have cookies


View Profile WWW
November 22, 2011, 11:01:25 PM
 #69

You can even make the input 0btc, afaik.
0-value inputs are really great as a way to "sign" the TX.
Sadly 0-value input will require creating a 0-value output, which is not free :)
0.01 inputs can be directly reused as 0.01 outputs.

Also it's sad that MagicalTux can't discuss implementing this green-addrss thing...

Welcome to my bitcoin mining pool: https://deepbit.net ~ 3600 GH/s, Both payment schemes, instant payout, no invalid blocks !
Coming soon: ICBIT Trading platform
Pages: « 1 2 3 [4]  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!