Author

Topic: Bind an address to only be able to send to another pre specified address? (Read 987 times)

legendary
Activity: 1624
Merit: 2481
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.
legendary
Activity: 1512
Merit: 1218
Change is in your hands
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.
staff
Activity: 3458
Merit: 6793
Just writing some code
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.
legendary
Activity: 2632
Merit: 1023
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.....?

staff
Activity: 3458
Merit: 6793
Just writing some code
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).
legendary
Activity: 2632
Merit: 1023
Is it possible to bind address 1 to only be able to send to a nominated address 2.

Eg some sort of multisig arrangement
Jump to: