Multisignatur ( engelsk multisignature ) er en ordning til implementering af en elektronisk signatur , som kræver T -nøgler fra en gruppe af N medlemmer [1] ( T < N ) for dens pålidelighed. I sin kerne er det en variant af tærskelsignaturen , men den implementeres ikke som et enkelt objekt, men som en kontrol af de specificerede betingelser, som udføres af det grundlæggende system af kryptovaluta -scripts [2] .
Et træk ved Bitcoin og mange andre kryptovalutaer er irreversibiliteten af transaktioner - der er ingen mekanisme til at annullere en transaktion, der er gået ind i blockchain , og der er heller ingen mulighed for en anden handling, der ignorerer den nuværende ejers vilje. Men Bitcoin har et indbygget scriptsprog, der giver dig mulighed for at angive en række yderligere betingelser for transaktioner. En af de mulige betingelser implementeret gennem scripts er oprettelsen af en bitcoin-adresse, som kræver et specificeret antal signaturer fra en given liste ( T -of - N -princippet ) for at administrere den [2] .
Det første tegn i bitcoin-adresser genereret ved hjælp af multisig er en 3 (almindelige bitcoin-adresser starter med en en).
I august 2013 var BitGo den første til at implementere en grænseflade, hvor virksomhedens kunder kunne oprette og bruge multi-sig-adresser uden direkte adgang til scripts [3] .
En multisignatur i bitcoin er et sæt signaturer fra forskellige brugere, ikke en enkelt enhed. Multisignatur er implementeret i andre kryptovalutaer på forskellige måder [4] [5] . Ethereums smarte kontraktsprog er meget mere kraftfuldt end Bitcoins scriptsprog .
Adresser bruges i vid udstrækning til operationer, hvor der er brug for to nøgler fra de aftalte tre. Oftest er det det, der menes med udtrykket "Multi-signatur". De tillader implementering af reversible transaktioner .
Transaktionernes irreversibilitet bliver et væsentligt problem, hvis parterne ikke stoler særlig meget på hinanden, eller der er en anden trussel om manglende opfyldelse af aftalen. Lignende situationer opstår ofte, når du handler i netbutikker . I tilfælde af manglende modtagelse af varer eller andre krav, er der ingen garanti for tilbagebetaling. Ved betaling med VISA eller MasterCard kan kunden bruge tilbageførselsproceduren .
I Bitcoin-systemet implementeres en lignende procedure som følger.
Parterne aftaler brugen af en multi-signatur med inddragelse af en tredjepart - en voldgiftsmand. Ved hjælp af alle tre parters offentlige nøgler genereres en ny adresse, som er knyttet til betingelsesscriptet [1] , hvor det skrives, at to signaturer er nok til at skabe en ny transaktion. Regler (betingelser for scripts) specificeres ved oprettelse af en adresse, bliver dens integrerede del og kan ikke ændres uden at ændre selve adressen. Køber foretager en overførsel til den oprettede adresse, som ikke fuldt ud tilhører nogen af parterne og er en transitadresse. Sælgeren ser kvitteringen, sender varerne og opretter en transaktion for at overføre penge fra transitadressen til sin egen. Men midlerne "hænger", da ingen af parterne, inklusive voldgiftsdommeren, kan disponere over dem selvstændigt [6] . Køber modtager varerne. Hvis alt er i orden, pålægger køberen sin underskrift på transaktionen genereret af sælgeren og opfylder derved betingelserne for at sende penge til sælgeren. Hvis varerne ikke ankom, eller køberen returnerede den, danner køberen en ny transaktion fra transitadressen til sin egen, underskriver den og tilbyder at underskrive sælgeren. Med sælgers samtykke vil midlerne blive returneret til køber. Hvis der ikke opnås enighed, har voldgiftsdommeren det sidste ord. Efter at have overvejet situationen beslutter voldgiftsdommeren at overføre midler til sælgeren (og påtvinger sin underskrift på transaktionen udarbejdet af sælgeren) eller at returnere midlerne til køberen (og påtvinger sin underskrift på transaktionen udarbejdet af køber). Kontrakten kan indeholde bestemmelser om vederlag til voldgiftsdommeren. Voldgiftsdommeren opretter derefter en anden transaktion med betalingsopdelingen både til fordel for en af parterne og i sin egen, og opfordrer derefter den tilsvarende part til at pålægge sin underskrift. Usignerede "ekstra" transaktioner vil miste deres relevans, efter at midlerne er sendt, og vil ikke føre til dobbeltforbrug.
Princippet om multisignatur kan bruges til at øge sikkerhedsniveauet i kryptovalutabetalinger. 2-af-3-formlen giver dig mulighed for at oprette en virksomhedsadresse baseret på underskrifterne fra ejeren, direktøren og revisoren [1] .
Med en multisignatur, der består af familiemedlemmer med et lille antal påkrævede signaturer, bliver tabet af en hemmelig nøgle ikke et katastrofalt problem. Selvom nøglen falder i de forkerte hænder, er det usandsynligt, at angriberen vil være i stand til at overbevise ofrets pårørende om at underskrive transaktionen.
En multi-underskrift, der kræver mere end halvdelen af en fonds bestyrelse, vil automatisk fungere som afstemning i beslutninger om, hvordan midlerne skal bruges. Kun de projekter, der får flertallet af stemmerne i form af underskrifter under transaktionen, vil blive betalt.
Bitcoin multisig-adresser bruger P2SH og er sikret med HASH160 (160-bit hash-funktion ). Hvis en angriber ejer mindst 1 nøgle fra multisignaturlisten, så kan han, under hensyntagen til hash-kollisionen for at forfalske en andens signatur, reducere antallet af søgemuligheder til 280 , hvilket allerede er muligt for moderne computersystemer [7 ] .