Las Schnorr Signatures or Schnorr firms, is a solution proposed on the network Bitcoin what are you looking for improve privacy and scalability of the system. By allowing a set of transaction signatures with the same entry to be replaced by a single signature. Reducing the storage space occupied within a block. This, in turn, allows transactions to be confirmed much faster, improving network performance. The improvement proposal was presented by Pieter Wuille in July 2019.
This new signature scheme also allows to improve network security, against spammer attacks. Since with this implementation, an attacker would have to send much more transactions to occupy the same space within a block. Making the attack more expensive and less feasible for the attacker.
How do Schnorr signatures work?
The main function of Schnorr signatures is to allow multiple users to create a single signature for all parties involved. Reducing the size of transactions and the number of signatures necessary to carry out a transaction.
The Bitcoin system uses the algorithm ECDSA Elliptic curve digital signature, so that users can demonstrate their ownership of bitcoins unspent outputs (UTXO). So, every time a user wants to carry out a transaction, they must provide a signature that validates their property. In turn, said transaction also have a script P2SH, which will determine how the entries of a transaction will be spent.
These scripts can be modified to condition or schedule the spending of the bitcoins. For example, you can set conditions for time lock o multisig. In the latter, multiple signature settings are required to authorize a transaction. Multisig employ an M-of-N scheme, where any combination of valid signatures within N can unlock unspent outputs, by requesting a threshold with M number of valid signatures. So, to authorize a transaction and spend an exit, M number of signatures must be provided between the participants; where each of these signatures has a size in bytes of length.
In other words, suppose that María, Juan and Pedro have a multisig wallet, where, to carry out a transaction, 2 of the 3 participants must sign. In this example, any combination of signatures (N) will be able to authorize the transaction, whether Maria signs with Juan, or María with Pedro, or Pedro with Juan. Or in your case, there is another condition that determines who should be the main signatories. But in general, the fulfillment of 2 firms (M) will authorize the transaction. However, the byte size of a multi-sig transaction will be larger than a conventional transaction that only requires a signature.
This is where the problem lies. As multi-sig by having to provide a certain number of signatures to authorize a transaction, the size of the transaction will grow proportionally to the number of signatures that are required. So the implementation of Schnorr signatures represents a real solution to this problem. This solution combines all the individual firms within the same firm, reducing, in turn, the size of the transactions and the costs generated by the transaction fees.