Propuesta incluida en la bifurcación suave de SegWit destinada a resolver un vector de maleabilidad relacionado con el elemento ficticio consumido por las operaciones OP_CHECKMULTISIG y OP_CHECKMULTISIGVERIFY. Debido a un error histórico (error de desplazamiento de unidad), estos 2 opcodes eliminan un elemento adicional de la pila más allá de su función básica. Para evitar un error, es obligatorio incluir un valor ficticio al principio del scriptSig para satisfacer la eliminación y evitar el error. Este valor es innecesario, pero debe estar ahí para que el script sea válido. BIP11, que introdujo el estándar P2MS, aconsejaba poner un OP_0 como valor innecesario. Sin embargo, esta norma no se aplicaba a nivel de reglas de consenso, lo que significaba que se podía poner cualquier valor sin invalidar la transacción. Así es como OP_CHECKMULTISIG y OP_CHECKMULTISIGVERIFY contenían un vector de maleabilidad. El BIP147 introduce una nueva regla de consenso, llamada NULLDUMMY, que requiere que este elemento ficticio sea una matriz de bytes vacía (OP_0). Cualquier otro valor provoca el fallo inmediato de la evaluación del script. Este cambio se aplica a los scripts pre-SegWit así como a los scripts P2WSH y requiere un soft fork.