smartcontract: support creation of majority multisig scripts

This commit is contained in:
Evgenii Stratonikov 2020-08-21 09:30:07 +03:00
parent e0104679b5
commit 51cebe9e47
2 changed files with 53 additions and 0 deletions

View file

@ -44,3 +44,11 @@ func CreateDefaultMultiSigRedeemScript(publicKeys keys.PublicKeys) ([]byte, erro
m := n - (n-1)/3
return CreateMultiSigRedeemScript(m, publicKeys)
}
// CreateMajorityMultiSigRedeemScript creates an "m out of n" type verification script
// using publicKeys length with m set to majority.
func CreateMajorityMultiSigRedeemScript(publicKeys keys.PublicKeys) ([]byte, error) {
n := len(publicKeys)
m := n - (n-1)/2
return CreateMultiSigRedeemScript(m, publicKeys)
}