MPC

1. In generale, il calcolo multipartitico (MPC) consente a un gruppo di parti reciprocamente diffidenti di calcolare congiuntamente le funzioni di input proteggendo al contempo la privacy di tali input. In crittografia, ciò è particolarmente utile per custodire chiavi private utilizzate per decrittografare dati o generare firme digitali.

Il portafoglio MPC elimina i singoli punti di errore utilizzando Threshold Signature Scheme (TSS). Secondo questo paradigma, creiamo e distribuiamo frammenti di chiavi private in modo che nessuna singola persona o macchina abbia il controllo completo sulla chiave privata, un processo chiamato generazione di chiavi distribuite (DKG). Possiamo quindi generare congiuntamente la chiave pubblica unendo i frammenti di chiave senza esporre i frammenti di chiave di ciascuna parte.

Per firmare messaggi e transazioni, ciascuna parte inserisce un frammento della propria chiave insieme a un input pubblico (il messaggio da firmare) per generare una firma digitale. Successivamente, chiunque conosca la chiave pubblica (ovvero il nodo validatore) dovrebbe essere in grado di verificare la firma. Poiché le chiavi vengono combinate e le firme vengono generate off-chain, le transazioni generate da un portafoglio MPC non sono diverse da quelle di un tradizionale portafoglio con chiave privata.

Ciò fornisce agli utenti del portafoglio MPC un certo livello di privacy. Questa funzionalità è disponibile immediatamente per le organizzazioni che desiderano mantenere i propri schemi di firma e le attività dei firmatari lontani dagli occhi del pubblico, poiché una serie di processi avvengono fuori catena. In questo modo, le organizzazioni possono conservare registri interni sui firmatari partecipanti senza renderli disponibili pubblicamente.

La rotazione della chiave privata è un altro protocollo MPC che accetta singoli frammenti di chiave e restituisce un nuovo set di frammenti di chiave. I vecchi frammenti di chiave possono essere rimossi e sostituiti con nuovi frammenti di chiave, che possono essere utilizzati allo stesso modo senza modificare le chiavi pubbliche e gli indirizzi corrispondenti.

2. **Vantaggi del portafoglio MPC**

- Nessun singolo punto di errore. Una chiave privata completa non è mai concentrata su un singolo dispositivo alla volta. Non esiste nemmeno una frase mnemonica.

- Schema di firma regolabile. I quorum autorizzati possono cambiare al variare delle esigenze individuali e organizzative senza modificare gli indirizzi. Le organizzazioni possono adattare dinamicamente gli schemi di firma senza dover notificare ogni volta alle controparti un nuovo indirizzo.

- Controllo degli accessi a grana fine. Gli utenti istituzionali possono assegnare un numero illimitato di approvatori delle transazioni a una policy e delegare autorizzazioni che riflettono accuratamente i ruoli organizzativi e le misure di sicurezza (blocchi temporali, autenticazione multifattore MFA, monitoraggio delle frodi). Gli individui possono scegliere un approccio semi-custodiale attraverso il wallet-as-a-service MPC, in cui una terza parte detiene alcuni dei frammenti chiave.

- Riduzione dei costi di transazione e di recupero delle chiavi. I portafogli MPC sono rappresentati sulla blockchain come un unico indirizzo e le loro tariffe per il gas sono le stesse dei normali indirizzi di chiave privata. Questo è molto importante per gli utenti che effettuano centinaia di transazioni al giorno, come nei casi d'uso B2C. I frammenti di chiave perduti possono anche essere recuperati off-chain.

- Agnostico alla blockchain. La generazione e la firma delle chiavi si basano sulla crittografia pura off-chain. La compatibilità con le nuove blockchain è semplice, poiché il portafoglio deve solo essere in grado di generare firme utilizzando un algoritmo riconosciuto da quella catena.

3. **Svantaggi del portafoglio MPC**

- Responsabilità fuori catena. Le policy di autorizzazione della firma e i quorum autorizzati sono gestiti off-chain, quindi queste regole personalizzate sono ancora soggette a errori di centralizzazione. I frammenti di chiave sono ancora segreti crittografici e devono essere trattati allo stesso modo di una chiave privata completa. Le regole e le firme off-chain ostacolano la trasparenza e richiedono controlli operativi più rigorosi.

- Non compatibile con la maggior parte dei portafogli tradizionali adottati dalla maggior parte degli utenti (nessuna frase mnemonica, nessuna chiave privata completa memorizzata su un singolo dispositivo). L'algoritmo MPC non è standardizzato e non è supportato nativamente da dispositivi di sicurezza di livello istituzionale come SEP e HSM di iPhone.

- Per lo più prodotti personalizzati individualmente. Molte librerie e soluzioni MPC non sono open source, il che rende difficile per l’ecosistema controllarle e integrarle in modo indipendente ed eseguire analisi degli incidenti se si verifica un problema.