Post
Topic
Board Bitcoin Discussion
Merits 1 from 1 user
Re: The first Bitcoin (BTC) transaction received to an IP address ?
by
monsanto
on 12/02/2019, 22:40:46 UTC
⭐ Merited by BitcoinFX (1)
Interesting discussion.

This reminded me of a tweet from Adam Back a few weeks ago, regarding the first BTC transaction to Hal Finney:

https://twitter.com/adam3us/status/1087013943330172930

Quote
curious what old TCPIP connection payments look like? the 1st #bitcoin transaction (from Satoshi to Hal Finney) was a p2pk, uncompressed pub key, for which no address format exists https://blockstream.info/tx/a16f3ce4dd5deb92d98ef5cf8afeaf0775ebca408f708b2146c4fb42b41e14be#expand,output:0,input:0 … a deprecated method, direct p2p payment


Satoshi talking about disabling receive by IP feature:

Probably best to disable receiving by IP unless you specifically intend to use it.  This is a lot of surface area that nobody uses that doesn't need to be open by default.

In storefront cases, you would typically only want customers to send payments through your automated system that only hands out bitcoin addresses associated with particular orders and accounts.  Random unidentified payments volunteered to the server's IP address would be unhelpful.

In general, sending by IP has limited useful cases.  If connecting directly without a proxy, the man-in-the-middle risk may be tolerable, but no privacy.  If you use a privacy proxy, man-in-the-middle risk is unacceptably high.  If we went to all the work of implementing SSL, only large storefronts usually go to the trouble of getting a CA cert, but most of those cases would still be better off to use bitcoin addresses.

I uploaded this change to SVN rev 156.  The switch to enable is "-allowreceivebyip".

Senders with this version will get the error "Recipient is not accepting transactions sent by IP address".  Older version senders will get "Transfer was not accepted".

I used a different name for the switch because "-allowiptransactions" sounds like it includes sending.  If there's a better name for the switch, we can change it again.