Once my public wallet address is known, is there anyway to deny payments to that wallet?

For example, if I want an external authority to regulate who can pay into a wallet, is that possible?

I guess a related question is can I turn a wallet 'off' once it is in the block chain and known.

  • 1
    This would have actually been very useful during the recent Bitstamp hack. They could only notify users not to deposit at the compromised address, but there was absolutely no way to prevent this.
    – QFDev
    Jan 13, 2015 at 22:29

3 Answers 3


No. At present this is not possible. Any one can create a transaction to transfer currency to any valid address. The transaction will be accepted by the network as long as it is valid.

It could be achieved by a collusion of the majority of the hashing power in the network, if the colluders allow/deny transactions that meet criteria of their choosing, which can include transfers to specific addresses.

  • Thanks everyone...seems like the only way to do this is to keep the address a secret and have an intervening authority. Jan 8, 2015 at 14:53
  • 1
    Am I wrong in assuming that you can at least figure this out in hind sight by looking at the block chain? In other words, if I want to make sure a wallet isn't paid from an undesired address, and I know all the desired addresses, I can send the money back/flag the account/etc? Jan 8, 2015 at 14:55
  • 3
    Sure; while you can't prevent an unwanted transaction from occurring, you could devise a strategy to counteract it in some way that makes sense to you. If you refund, be aware that you'll then have multiple sends from a single address; make sure your wallet implements RFC 6979 to minimize the chance of exposing the private key of the address. Also, if you have an automated process like a refund, can I grief your service in some way by repeatedly sending unwanted transactions to your address? Jan 8, 2015 at 16:02
  • 1
    Also, you won't be able to keep an address secret. Once it has been involved in a transaction, it's public. Jan 8, 2015 at 16:09

No, you can't prevent people from paying any particular address even if you control that address. This is a known problem: it would be very nice to have an address that can only be paid once.

Something like P2SH^2 could help with this, although it would not provide a perfect one-time-only property.


No, you cannot do that. The wallet doesn't really hold the coins, it is a structure that contains some private keys which in turn can digitally prove that you are the owner of their public hash, also known as a bitcoin address. As long as a bitcoin address is valid, anyone can send any sort of payments to it and none can prevent this from happening.

  • In fact, you can even send Bitcoins to an address that no one has a private key for, if you have a way of coming up with addresses that does not involve YOU having the private key...
    – BenjiWiebe
    Jan 9, 2015 at 4:46

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.