Compatibilidad con descriptores multigrado taproot

Estoy tratando de entender el estado actual del soporte de descriptores para taproot, con un enfoque específico en billeteras multisig (cuando digo "multisig" me refiero a la firma de umbral k-of-n, en lugar de una multifirma schnorr). Encontré este PR que introdujo descriptores taproot en Core: https://github.com/bitcoin/bitcoin/pull/22051 y decía que aún no se había implementado el soporte para scripts más interesantes. ¿Sigue siendo así, o alguien sabe de algún documento o ejemplo para hacer un descriptor de billetera multisig?

¡Gracias!

Hay dos documentos en el repositorio central relacionados con multisig que usan descriptores en ejemplos

Respuestas (1)

En el momento de escribir este artículo (enero de 2022), no se ha especificado un descriptor para Schnorr/Taproot multisig (usando el nuevo código de operación OP_CHECKSIGADD especificado en BIP 342 ) o usando el esquema de agregación de claves MuSig.

(Cuando digo "multisig" me refiero a la firma de umbral k-of-n, en lugar de una firma múltiple schnorr)

Una aclaración sobre la terminología. En Bitcoin generalmente usamos "multisig" para referirnos a n-of-n (n=n) y "threshold" para referirnos a k-of-n (k<n). MuSig(2) se refiere a un esquema de agregación de claves en el que solo una clave y una firma van en la cadena a pesar de que hay varias claves involucradas fuera de la cadena. Se está trabajando en los equivalentes de umbral de MuSig(2), por ejemplo, FROST, pero no están finalizados ni son tan maduros como MuSig(2). Ni MuSig(2) ni FROST tienen descriptores especificados en el momento de la escritura.

Por lo tanto, si desea utilizar un descriptor de firma de umbral o multigrado, debe utilizar uno existente, por ejemplo, multio sortedmultique no admita un multigrado Schnorr/Taproot. De manera un poco confusa, el multidescriptor admite firmas múltiples y de umbral de acuerdo con las definiciones anteriores, pero no para Schnorr/Taproot.

No está relacionado con la pregunta, por lo que debe incluir los comentarios, pero Miniscript diferencia entre multisig y umbral sig ( multiy thresh), pero los descriptores le permiten hacer multisig y umbral sig utilizando el multidescriptor. Será confuso cuando MIniscript se integre con los descriptores :)
Creo que tradicionalmente en Bitcoin "multisig" se refiere a k-of-n usando OP_CHECKMULTISIG (usando múltiples firmas y múltiples claves). En criptografía en general, "firma múltiple" se refiere a una sola firma con varias claves (lo que logran musig/musig2/musig-dn y otros esquemas), y "firma de umbral" se refiere a una sola firma correspondiente a una combinación k-de-n de múltiples claves (como FROST logra).
@PieterWuille: Ok, puede que hayas cambiado tus definiciones desde btctranscripts.com/lets-talk-bitcoin-podcast/… :) "k-of-n es decir 2 de 3 donde k es diferente de n" y "Cuando hablamos sobre k-of-n o umbrales"
eso es decir lo mismo?
Gracias por la respuesta. Pensé que dentro de bitcoin, "multisig" se refería tradicionalmente a la firma de umbral, por ejemplo: github.com/bitcoin/bitcoin/blob/master/doc/… . En cualquier caso, la aclaración es útil :)