Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: jubalix on September 25, 2017, 02:18:02 AM



Title: Bind an address to only be able to send to another pre specified address?
Post by: jubalix on September 25, 2017, 02:18:02 AM
Is it possible to bind address 1 to only be able to send to a nominated address 2.

Eg some sort of multisig arrangement


Title: Re: Bind an address to only be able to send to another pre specified address?
Post by: achow101 on September 25, 2017, 02:53:02 AM
No. The inputs and outputs of a transaction are completely separate from each other and have no effect on each other. You cannot make an input which only allows certain outputs (which is what you are asking).


Title: Re: Bind an address to only be able to send to another pre specified address?
Post by: jubalix on September 25, 2017, 08:56:36 AM
No. The inputs and outputs of a transaction are completely separate from each other and have no effect on each other. You cannot make an input which only allows certain outputs (which is what you are asking).

ok thanks....I was kinda thinking along the lines of using the signed specified address as a requirement combined with the part of the priv key, hashed or otherwise, that then produces the whole private key, but only as a signed transaction for the sending address.

That way you would never have access to the privkey of the sending address, excepting for using the signed predetermined receiving address.

...I may be way of base here, but it seems possible?

or put another way, like a contract function that says, if you enter address 2 and your part of the private key or private key, then we will use that to sign the whole transaction and send it off to address 2. The contract only works in it receives the address 2 and your signed address 1.....?



Title: Re: Bind an address to only be able to send to another pre specified address?
Post by: achow101 on September 25, 2017, 03:24:49 PM
ok thanks....I was kinda thinking along the lines of using the signed specified address as a requirement combined with the part of the priv key, hashed or otherwise, that then produces the whole private key, but only as a signed transaction for the sending address.

That way you would never have access to the privkey of the sending address, excepting for using the signed predetermined receiving address.

...I may be way of base here, but it seems possible?

or put another way, like a contract function that says, if you enter address 2 and your part of the private key or private key, then we will use that to sign the whole transaction and send it off to address 2. The contract only works in it receives the address 2 and your signed address 1.....?
Again, inputs and outputs are unrelated to each other. Inputs cannot access any data outside of the input itself. Inputs have no idea what the outputs are and cannot access the outputs to do anything.

Also, there are no such things as addresses to the Bitcoin network. Only transaction outputs. Addresses are just an abstraction for us humans.


Title: Re: Bind an address to only be able to send to another pre specified address?
Post by: Thekool1s on October 03, 2017, 08:53:24 AM
Is it possible to bind address 1 to only be able to send to a nominated address 2.

Eg some sort of multisig arrangement

Well you can code a custom wallet which will allow this, it can be easily be done using a basic boolean, just check for the address which was bonded to is same as the address you are currently sending the btc too, Blockchain itself won't allow you to do this as other users have said, but you can make a custom script which can do this for you.


Title: Re: Bind an address to only be able to send to another pre specified address?
Post by: bob123 on October 03, 2017, 12:26:52 PM
Is it possible to bind address 1 to only be able to send to a nominated address 2.

Eg some sort of multisig arrangement

Well you can code a custom wallet which will allow this, it can be easily be done using a basic boolean, just check for the address which was bonded to is same as the address you are currently sending the btc too, Blockchain itself won't allow you to do this as other users have said, but you can make a custom script which can do this for you.

This might be possible.. but this isn't secured for sure.
You could just disassemble the Wallet/program or read Out the  RAM to get the priv key (which has to be "hidden" in the Software).
With priv key, as already mentioned, you can specify output as you wish.