I donât know. @sigmike or @erasmospunk might know off the top of their head what limits BKS multisig has.
I created a random 5-of-7 BKS multisig address with Cointoolkit.
It looks like the 482 characters of the redeem script require 241 Bytes space (4 Bits or half a Byte per character, right?).
Is that too much for the blockchain?
If @sigmike and @erasmospunk are not available, we can try to find it out by testing.
bool CTransaction::IsStandard() const
{
BOOST_FOREACH(const CTxIn& txin, vin)
{
// Biggest 'standard' txin is a 3-signature 3-of-3 CHECKMULTISIG
// pay-to-script-hash, which is 3 ~80-byte signatures, 3
// ~65-byte public keys, plus a few script ops.
if (txin.scriptSig.size() > 500)
return false;
if (!txin.scriptSig.IsPushOnly())
return false;
}
...
}
Which means BCE can only reliably handle 3-of-5 at the moment.
Thank you for digging in the code.
If 3-of-5 is the maximum, we need to work with that.
But that means that the 5 FLOT members need to be determined in some way.
Would âfirst come, first serveâ do?
Or are there any constraints? I wouldnât know how to determine whoâs signer and who isnâtâŚ
Just out of curiosity:
would 3-of-6 or 3-of-7 work as well (although that wouldnât increase the security and merely the chances to redeem the funds)?
The limit is the 3 signatures of the input tx (which needs to be <= 500 Bytes), right?
The pub keys also need to be stored in scriptSig. Both 3-of-6 and 3-of-7 can be done, according to erasmospunkâs rule of thumb, but something like 3-of-9 is probably infeasible.
For the sake of load balancing I recommend me, jooize, woodstockmerkle, mhps and cryptog.
@woodstockmerkle@mhps and @jooize would you be willing to join @cryptog and @dysconnect fora 3 out of 5 BKS multisig address? Also could all of you post you BKS pub key so we can create an address.
Sorry I have been busy. I will send the pubkey (generated by cointookit) by PM. I donât have problem signing for nusafe although I donât feel itâs necessarily FLOTâs duty.
You are right. It isnât necessarily FLOTâs duty. But as FLOT members are (hopefully) more active and involved in Nuâs liquidity process than other community members (for sure not true for all, but at average), the choice isnât bad either.
A fairer way is to give FLOT some extra commission out of the expenses of NuSafe. On the other hand, FLOT motions also dictate that each of us abide by motions passed by shareholders.
Anyway, Iâm still using the same key:
034b0bd0f653d4ac0a2e9e81eb1863bb8e5743f6cb1ea40d845b939c225a1a80ff
edit: I forgot to put the pubkeys of this BKS multisig address in lexicographical order. They are in order of appearance.
That renders this multisig address unusable or at least not very reliably usable unless the order of the pubkeys is the same when creating transactions.
Sorry for that.
If you use the createmultisig and addmultisig RPCs to generate the multisig address then you use âP2SH multisigâ and the current limit is 1-of-12, 2-of-10, 3-of-8 or 4-of-6.
This limit can be increased to 15-of-15 without a change in the protocol because itâs enforced when transactions are relayed, not when theyâre included in a block.
You can find the explanation about the limits here:
I urge all involved parties to speeding up this process.
Nu is in the face of Bitcoinâs recent volatility selling a lot of NBT - taking all the BTC volatility risk once more.