Multisignature ( englanniksi multisignature ) on sähköisen allekirjoituksen toteuttamismalli , joka vaatii luotettavuutensa vuoksi T -avainta N jäsenen ryhmältä [1] ( T < N ). Pohjimmiltaan se on muunnelma kynnysallekirjoituksesta , mutta sitä ei toteuteta yhtenä objektina, vaan määritettyjen ehtojen tarkistuksena, jonka suorittaa kryptovaluuttaskriptien perusjärjestelmä [2] .
Bitcoinin ja monien muiden kryptovaluuttojen ominaisuus on transaktioiden peruuttamattomuus - ei ole mekanismia lohkoketjuun tulleen tapahtuman peruuttamiseksi , eikä myöskään ole mahdollisuutta muuhun toimintaan, joka jättää huomiotta nykyisen omistajan tahdon. Mutta Bitcoinissa on sisäänrakennettu skriptikieli , jonka avulla voit määrittää erilaisia lisäehtoja tapahtumille. Yksi mahdollisista skripteillä toteutetuista ehdoista on bitcoin-osoitteen luominen, joka vaatii tietyn määrän allekirjoituksia tietystä listasta ( T -of - N -periaate ) sen hallitsemiseksi [2] .
Multisigillä luotujen bitcoin-osoitteiden ensimmäinen merkki on 3 (tavalliset bitcoin-osoitteet alkavat ykkösellä).
Elokuussa 2013 BitGo otti ensimmäisenä käyttöön käyttöliittymän, jossa yrityksen asiakkaat voivat luoda ja käyttää multi-sig-osoitteita ilman suoraa pääsyä komentosarjoihin [3] .
Moniallekirjoitus bitcoinissa on joukko eri käyttäjien allekirjoituksia, ei yhtä kokonaisuutta. Moniallekirjoitus on toteutettu muissa kryptovaluutoissa eri tavoin [4] [5] . Ethereumin älykäs sopimuskieli on paljon tehokkaampi kuin Bitcoinin komentosarjakieli.
Osoitteita käytetään laajalti toimintoihin, joissa tarvitaan mitä tahansa kahta avainta sovituista kolmesta. Useimmiten tätä tarkoitetaan termillä "moniallekirjoitus". Niiden avulla voidaan toteuttaa palautuvia liiketoimia .
Kaupan peruuttamattomuus muodostuu merkittäväksi ongelmaksi, jos osapuolet eivät luota toisiinsa kovin paljon tai on muu uhka sopimuksen noudattamatta jättämisestä. Samanlaisia tilanteita tulee usein vastaan verkkokaupoissa ostoksia tehdessä . Tavaroiden vastaanottamatta jättämisestä tai muista reklamaatioista ei ole takuuta hyvityksestä. Maksaessaan VISA- tai MasterCard-kortilla asiakas voi käyttää takaisinveloitusmenettelyä .
Bitcoin-järjestelmässä samanlainen menettely toteutetaan seuraavasti.
Osapuolet sopivat usean allekirjoituksen käytöstä kolmannen osapuolen – välimiehen – kanssa. Kaikkien kolmen osapuolen julkisia avaimia käyttämällä luodaan uusi osoite, joka liittyy ehtoskriptiin [1] , jossa kirjoitetaan, että kaksi allekirjoitusta riittää uuden tapahtuman luomiseen. Säännöt (skriptien ehdot) määritetään osoitetta luotaessa, niistä tulee sen olennainen osa, eikä niitä voida muuttaa muuttamatta itse osoitetta. Ostaja tekee siirron luotuun osoitteeseen, joka ei täysin kuulu millekään osapuolelle ja on kauttakulkuosoite. Myyjä näkee kuitin, lähettää tavarat ja luo tapahtuman siirtääkseen varat siirtoosoitteesta omaan. Mutta varat "roikkuvat", koska kukaan osapuolista, välimies mukaan lukien, ei voi luovuttaa niitä itsenäisesti [6] . Ostaja saa tavarat. Jos kaikki on kunnossa, ostaja asettaa allekirjoituksensa myyjän luomaan kauppaan ja täyttää siten ehdot varojen lähettämiselle myyjälle. Jos tavara ei saapunut tai ostaja palautti sen, ostaja muodostaa uuden kaupan siirtoosoitteesta omaansa, allekirjoittaa sen ja tarjoutuu allekirjoittamaan myyjän. Myyjän suostumuksella varat palautetaan ostajalle. Jos sopimukseen ei päästä, välimiehellä on viimeinen sana. Harkittuaan tilannetta, välimies päättää siirtää varoja myyjälle (ja asettaa allekirjoituksensa myyjän laatimaan kauppaan) tai palauttaa varat ostajalle (ja asettaa allekirjoituksensa ostajan laatimaan kauppaan). Sopimuksessa voidaan määrätä välimiehelle palkkiosta. Välimies tekee sitten toisen transaktion, jossa maksu jaetaan sekä jommankumman osapuolen eduksi että omaksi, ja pyytää sitten vastaavaa osapuolta määräämään allekirjoituksensa. Allekirjoittamattomat "ylimääräiset" tapahtumat menettävät merkityksensä varojen lähettämisen jälkeen eivätkä johda kaksinkertaiseen kulutukseen.
Moniallekirjoituksen periaatetta voidaan käyttää kryptovaluuttamaksujen turvallisuustason nostamiseen. 2-/3-kaavan avulla voit luoda yritysosoitteen omistajan, johtajan ja kirjanpitäjän allekirjoitusten perusteella [1] .
Kun usean allekirjoituksen muodostavat perheenjäsenet, joilla on pieni määrä vaadittuja allekirjoituksia, salaisen avaimen katoamisesta ei tule katastrofaalista ongelmaa. Vaikka avain joutuisi vääriin käsiin, hyökkääjä ei todennäköisesti pysty vakuuttamaan uhrin omaisia allekirjoittamaan kauppaa.
Yli puolet säätiön johtokunnasta vaativa moniallekirjoitus toimii automaattisesti äänestyksenä varojen käyttöä koskevissa päätöksissä. Vain ne hankkeet, jotka saavat suurimman osan äänistä transaktion allekirjoitusten muodossa, maksetaan.
Bitcoin multisig-osoitteet käyttävät P2SH:ta ja on suojattu HASH160:lla (160-bittinen hash-toiminto ). Jos hyökkääjä omistaa vähintään yhden avaimen usean allekirjoituksen luettelosta, hän voi pienentää hakuvaihtoehtojen määrää 280:een, kun otetaan huomioon hajautustörmäys jonkun toisen allekirjoituksen väärentämiseksi , mikä on jo mahdollista nykyaikaisissa tietokonejärjestelmissä [7 ] .