24

Let's say I'm paying my monthly rent using bitcoin. I'm going to set up a script to send 5 bitcoin from my wallet to my landlord's address every month. I will not be able to tell beforehand which addresses the bitcoins will come from, nor does my landlord want to verify signatures on many addresses.

How can I prove that 5 bitcoin is leaving my wallet every month and going into my landlord's account?

  • 6
    5 bitcoin... nice rent! – CodeAngry Mar 6 '14 at 9:09
  • 1
    @Mark, so what happens if Bitcoin suddenly jumps to 3k each? Do you still pay 5 bitcoins? – Pacerier Mar 7 '14 at 5:16
  • Hope you're getting a very nice flat right in the middle of NYC or London for all that money :) – Joe Pineda Mar 7 '14 at 12:23
37

One way might be to have the landlord generate a different address for each tenant. So you pay your landlord using address A, and your neighbour pays using address B, and the landlord can tell who the payment came from by the destination address.

That doesn't prove that the payment came from your wallet of course, but this allows somebody else to make the rent payment on your behalf (and the landlord wouldn't know the difference).

  • 14
    In general, I doubt your landlord cares who pays it. He cares about which bill / whose rent is being paid, and the above is the perfect and advised way of distinguishing that. – Pieter Wuille Mar 6 '14 at 9:17
4

If he just wants to receive money to cover your rent, suggest him a different address per tenant as in Greg's answer, it's simplest and cleanest (and you could even have a benefactor paying for you).

Should he want money from you specifically... If I recall it, you can add small texts in your transactions - but that's an advanced feature that requires, as far as I know, manual steps. You could try sending a small text with your payment with just your last name, or a more thorough message encrypted with your landlord's public key.

  • None of that proves that you sent it? It's a very strange and untenable thing to care who pays an account. – WiseOldDuck Mar 11 '14 at 22:19
  • @WiseOldDuck Yeah, it's really a very theoretical concern. It'd be better if a small text were included in the transaction albeit encrypted with your private key - only someone with access to your wallet and knowledge of your private key could've sent such coins. – Joe Pineda Mar 12 '14 at 3:45
  • 1
    You could sign the message and give that signed message to anyone without revealing your private key. I don't think this is possible, and who would ever care. In the "extreme" someone who was willing to pay for you would just have to pay you first. – WiseOldDuck Mar 12 '14 at 23:32
1

Simplest solution is to use a 3rd party payment processor, e.g. Coinbase will permit recurring payments for bills or rent.

Snippet from Coinbase's interface

  • Elaborate, 3rd party payment processor such as? – chamini2 Mar 7 '14 at 5:25
  • @chamini2 I have edited my answer – Brad Thomas Mar 7 '14 at 5:34
1

I just thought of this method the other day.

The landlord gives me a unique numeric ID, say 12345, because my apartment number is 12345.

At the end of each month, I would only need to deposit 5 bitcoins +12345 Satoshi in his wallet. The benefit of this scheme is that he needs not generate a new address for every tenant. This is good for him because he can just publish his rent-accepting address statically.

Unfortunately my rent is slightly higher in this scheme.

  • 2
    You could solve this by splitting the payment in two separate transactions, e.g. one of 3.99987655 and one of 1.00012345. The only thing then is that you'd have to pay the miner's fee twice. – jorijnsmit Jul 26 '14 at 14:41
-2

Well, the answer to this question is in the following steps:

Once you have completed the transaction of the bitcoin, visit the transaction page of the application/wallet/page and search for the “Sign a message” function. Note: you will be getting this function only if you have the private key.

You have to make sure that you know and noted the “FROM” address. Now you have to insert that FROM address in the message field. Make sure the address you are inserting is the correct one (you should not make any changes in that). Enter the message for the verification of the payment and then hit the “sign message” button. The signature will be generated and this will be a unique one for the address and the message. Copy all those – address, message, and the signature and send it to the vendor. Once they will receive the information, they can verify it with the help of the “verify message” function of the bitcoin. Once you have done all this you have the proof of the payment has been made by you for a particular purpose. Read More How to sign a message with bitcoin address

  • 1
    Downvoting; there should never be a need to look up a "from" address of a transaction. It's not a well-defined concept, and relying on it likely breaks many pieces of software. – Pieter Wuille Apr 26 at 0:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.