Author

Topic: [Question] Multisig for an organisation (Read 263 times)

newbie
Activity: 2
Merit: 4
March 28, 2019, 10:20:21 AM
#5
Thank you very much for your kind help


Regarding A), this means that given a transaction such as below:


Quote
{"txid":"d77a241272a04cdcf7513cca04e83dccbf56de5fe602ab2e13f5a0079aa3d711","hash":"23f9da398c98c9be73c0799d54c31c748e5a32e69539e038db13c1f875448c2d","version":2,"size":388,"vsize":226,"weight":904,"locktime":0,"vin":[{"txid":"aac4568857f39a5dcfbcd7be65197a118e1ab1c1dd04566837aceebbf9d3eb4e","vout":0,"scriptSig":{"asm":"0014f5db3a1acc7f18405ab1db8ab54344336d876882","hex":"160014f5db3a1acc7f18405ab1db8ab54344336d876882"},"txinwitness":["304402207949fa75657d5df84c7ed3fadffa10747ce5c7958e1aee3df42ef3fc985331010220552 3cb3b2dd46a6e1c42993b562ba3f530948fec8652d1bd6610c7e97f313a5801","02c787917771dbb98951124b2cc22fe7612f1e1610a79620c48473f8c7dd67f456"],"sequence":4294967295},{"txid":"cfe79aec8fc90f278baf74df75065899a1e933b74f7d6f89ae260a84002c0557","vout":21,"scriptSig":{"asm":"0014bdd7544ed9c4dfb56f8bd786cf81f6344da6e663","hex":"160014bdd7544ed9c4dfb56f8bd786cf81f6344da6e663"},"txinwitness":["3044022036cb3c6f6e426d57f2e41ff1f558f6bae6ebf8a50d38fdb7a15e3558de45f92b02205c3 4f86d2210f6902fb97aa1c419745d4fcf468529721113ec0522eeded0e3f901","0206ebc953a6090d2476879a2c31761e03f7ccedb824feeeec78305ae267bc40bc"],"sequence":4294967295}],"vout":[{"value":0.16414018,"n":0,"scriptPubKey":{"asm":"OP_DUP OP_HASH160 aa97701c85ef9d651e4e9bf01bf7330f2e03e7bc OP_EQUALVERIFY OP_CHECKSIG","hex":"76a914aa97701c85ef9d651e4e9bf01bf7330f2e03e7bc88ac","reqSigs":1,"type":"pubkeyhash","addresses":["1GZ1HhoA3ijNZzsSjDPBgtwenRZvXZbR48"]}}]}

I should be able to know the signatories public keys (the same way miners check the validity of the transaction if I am not mistaken) and I then should try determining to which Xpubs those public keys are linked (if a HD wallet is used)
legendary
Activity: 3682
Merit: 1580
March 26, 2019, 11:06:55 PM
#4
There are no readymade solutions for either a or b. You're going to have to hire a developer to create a suitable wallet for you. So while it is possible there is no easy way to do it yet.
legendary
Activity: 2870
Merit: 7490
Crypto Swap Exchange
March 26, 2019, 11:27:57 AM
#3
I indeed read that OP_AND and OP_OR have been disabled.

And that mean script size for multi-sig for you is big. You'd need 12 OP_CHECKMULTISIGVERIFY, unless you could think ways with shorter logic. Roughly it should look like this.

Code:
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_IF
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_ELSE
    0 3 3 OP_CHECKMULTISIGVERIFY
OP_ENDIF
sr. member
Activity: 279
Merit: 435
March 25, 2019, 07:41:29 AM
#2
Hello,

I am currently thinking about implementing a multisignature scheme for an organisation and I would greatly appreciate any help regarding the following two topics:

A- Ex-post accountability
Assuming a signed transaction has been broadcast to the network and that I know the redeem script and all signatory public keys, can I determine which public keys were signatories of the transaction?

B- Signatory groups
Is there a way to implement a signing scheme such as (key1 or key 2 or key 3) AND (key 4 or key 5) AND (key 6 or key 7)

the idea would be to have a scheme such as (Trader 1 or Trader 2 or Trader 3) AND (Accountant 1 or Accountant 2) AND (BOSS 1 or BOSS 2)

I indeed read that OP_AND and OP_OR have been disabled.


Thank you,

Hi,

A- Yes. The public key used to redeeem the funds are in the transaction (more precisely the signatures are in the input of the transaction that redeem the funds).
B- Yes. You can use a smart contract in Script.
newbie
Activity: 2
Merit: 4
March 25, 2019, 05:20:34 AM
#1
Hello,

I am currently thinking about implementing a multisignature scheme for an organisation and I would greatly appreciate any help regarding the following two topics:

A- Ex-post accountability
Assuming a signed transaction has been broadcast to the network and that I know the redeem script and all signatory public keys, can I determine which public keys were signatories of the transaction?

B- Signatory groups
Is there a way to implement a signing scheme such as (key1 or key 2 or key 3) AND (key 4 or key 5) AND (key 6 or key 7)

the idea would be to have a scheme such as (Trader 1 or Trader 2 or Trader 3) AND (Accountant 1 or Accountant 2) AND (BOSS 1 or BOSS 2)

I indeed read that OP_AND and OP_OR have been disabled.


Thank you,
Jump to: