Kvantbysantinsk överenskommelse
Bysantinska feltoleranta protokoll är algoritmer som är robusta mot godtyckliga typer av fel i distribuerade algoritmer . Det bysantinska avtalsprotokollet är en väsentlig del av denna uppgift. Konstant-tid kvantversionen av det bysantinska protokollet beskrivs nedan.
Introduktion
Det bysantinska avtalet är ett protokoll för distribuerad datoranvändning . Den har fått sitt namn från ett problem formulerat av Lamport, Shostak och Pease 1982, som i sig är en referens till ett historiskt problem. Den bysantinska armén var uppdelad i divisioner där varje division leddes av en general med följande egenskaper:
- Varje general är antingen lojal eller en förrädare mot den bysantinska staten .
- Alla generaler kommunicerar genom att skicka och ta emot meddelanden.
- Det finns bara två kommandon: attack och reträtt.
- Alla lojala generaler bör komma överens om samma handlingsplan: attack eller reträtt.
- En liten linjär bråkdel av dåliga generaler bör inte orsaka att protokollet misslyckas (mindre än en bråkdel).
(Se för beviset på omöjlighetsresultatet). Problemet återges vanligtvis på samma sätt i form av en befallande general och lojala löjtnanter, där generalen antingen är lojal eller en förrädare och samma sak för löjtnanterna med följande egenskaper.
- Alla lojala löjtnanter utför samma order.
- Om den befälhavande generalen är lojal, lyder alla lojala löjtnanter ordern som han skickar.
- En strikt mindre än bråkdel inklusive den befallande generalen är förrädare.
Bysantinskt misslyckande och motståndskraft
Fel i en algoritm eller protokoll kan kategoriseras i tre huvudtyper:
- Ett misslyckande att ta ytterligare ett exekveringssteg i algoritmen: Detta brukar kallas ett "fail stop"-fel.
- Ett slumpmässigt misslyckande att utföra korrekt: Detta kallas ett "slumpmässigt fel" eller "slumpmässigt bysantinskt" fel.
- Ett godtyckligt misslyckande där algoritmen misslyckas med att utföra stegen korrekt (vanligtvis på ett smart sätt av någon motståndare för att få hela algoritmen att misslyckas) som också omfattar de två föregående typerna av fel; detta kallas ett "bysantinskt fel".
Ett bysantinskt motståndskraftigt eller bysantinskt feltolerant protokoll eller algoritm är en algoritm som är robust för alla typer av fel som nämns ovan. Till exempel, givet en rymdfärja med flera redundanta processorer, om processorerna ger motstridiga data, vilka processorer eller uppsättningar av processorer ska man tro? Lösningen kan formuleras som ett bysantinskt feltolerant protokoll.
Skiss av algoritmen
Vi kommer här att skissa den asynkrona algoritmen Algoritmen fungerar i två faser:
- Fas 1 (Kommunikationsfas):
- Alla meddelanden skickas och tas emot i denna omgång.
- Ett myntvändningsprotokoll är en procedur som tillåter två parter A och B som inte litar på varandra att kasta ett mynt för att vinna ett visst föremål.
Det finns två typer av myntvändningsprotokoll
- svaga myntvändningsprotokoll: De två spelarna A och B börjar initialt utan inmatning och de ska beräkna något värde och kunna anklaga vem som helst för fusk. Protokollet är framgångsrikt om A och B är överens om resultatet. Resultatet 0 definieras som A-vinnande och 1 som B-vinnande. Protokollet har följande egenskaper:
- Om båda spelarna är ärliga (de följer protokollet) kommer de överens om resultatet av protokollet med för .
- Om en av spelarna är ärlig (dvs den andra spelaren kan avvika godtyckligt från protokollet i sin lokala beräkning), så vinner den andra parten med sannolikhet högst 1 2 + ϵ {\ . Med andra ord, om B är oärlig, då , och om A är oärlig, då .
- Ett starkt myntvändningsprotokoll: I ett starkt myntvändningsprotokoll är målet istället att producera en slumpmässig bit som är förspänd från ett visst värde 0 eller 1. Det är klart att vilket starkt myntvändningsprotokoll med bias ϵ {\displaystyle \ leder till svag myntslagning med samma bias.
Verifierbar hemlighetsdelning
- Ett verifierbart hemligt delningsprotokoll : Ett (n,k) hemligt delningsprotokoll tillåter en uppsättning av n spelare att dela en hemlighet, s så att endast ett kvorum på k eller fler spelare kan upptäcka hemligheten. Spelaren som delar (fördelar de hemliga bitarna) hemligheten brukar kallas dealern. Ett verifierbart hemligt delningsprotokoll skiljer sig från ett grundläggande hemligt delningsprotokoll genom att spelare kan verifiera att deras andelar är konsekventa även i närvaro av en illvillig återförsäljare.
Fail-stop-protokollet
Protokoll kvantmyntvändning för spelare
- Omgång 1 genererar GHZ-tillståndet på qubits och skicka e qubit till e spelaren som behåller en del
- Generera staten på qudits (kvantberäkningskomponenter konsekventa av flera qubits), en lika stor överlagring av talen mellan 1 och . Fördela de qudits mellan alla spelare
- Ta emot kvantmeddelanden från alla spelare och vänta på nästa kommunikationsomgång, vilket tvingar motståndaren att välja vilka meddelanden som skickades.
- Omgång 2: Mät (i standardbasen) alla qubits som tagits emot i omgång I. Välj spelaren med det högsta ledarvärdet (banden brutits godtyckligt) som omgångens "ledare". Mät ledarens mynt i standardbasen.
- Ställ in utdata från QuantumCoinFlip-protokollet: = mätresultat av ledarens mynt.
Det bysantinska protokollet
För att generera ett slumpmässigt mynt tilldela varje spelare ett heltal i intervallet [0,n-1] och varje spelare får inte välja sitt eget slumpmässiga ID eftersom varje spelare P k {\displaystyle P_{k}} tal för alla andra spelare och distribuerar detta med ett verifierbart hemligt delningsschema.
I slutet av denna fas kommer spelarna överens om vilka hemligheter som delades korrekt, hemligheterna öppnas sedan och varje spelare tilldelas värdet
Detta kräver privata informationskanaler så vi ersätter de slumpmässiga hemligheterna med superpositionen . I vilket tillståndet kodas med ett kvantverifierbart hemligt delningsprotokoll (QVSS). Vi kan inte fördela staten eftersom de dåliga spelarna kan kollapsa tillståndet. För att förhindra dåliga spelare från att göra det kodar vi staten med Quantum verifierbar hemlighetsdelning (QVSS) och skickar varje spelare sin del av hemligheten. Även här kräver verifieringen bysantinsk överenskommelse, men det räcker att ersätta överenskommelsen med protokollet med betygsgjutning.
Grade-cast protokoll
Ett graderat sändningsprotokoll har följande egenskaper med hjälp av definitionerna i Informellt, ett graderat sändningsprotokoll är ett protokoll med en utsedd spelare som kallas "dealer" (den som sänder) så att:
- Om dealern är bra får alla spelare samma besked.
- Även om dealern är dålig, om någon bra spelare accepterar budskapet, får alla bra spelare samma meddelande (men de kanske accepterar det eller inte).
Ett protokoll P sägs uppnå graderad sändning om, i början av protokollet, en utsedd spelare D (kallad dealer) har ett värde v, och i slutet av protokollet, varje spelare P i {\ matar ut ett par så att följande egenskaper gäller:
- Om D är ärlig, då = v och = 2 för varje ärlig spelare .
- För två ärliga spelare och .
- (Konsistens) För två ärliga spelare och , om och , sedan .
För garanterar verifieringssteget för QVSS-protokollet att för en bra återförsäljare kommer det korrekta tillståndet att kodas, och att för alla eventuellt felaktiga återförsäljare, något särskilt tillstånd kommer att återhämtas under återhämtningsstadiet. Vi noterar att för syftet med vårt bysantinska kvantmyntflip-protokoll är återhämtningsstadiet mycket enklare. Varje spelare mäter sin andel av QVSS och skickar det klassiska värdet till alla andra spelare. Verifieringsstadiet garanterar, med hög sannolikhet, att i närvaro av upp till felaktiga spelare kommer alla bra spelare att återfå samma klassiska värde (vilket är samma värde som skulle resultera från en direkt mätning av det kodade tillståndet).
Anmärkningar
År 2007 demonstrerades ett kvantprotokoll för bysantinsk överenskommelse experimentellt med användning av ett polarisationsintrasslat tillstånd med fyra fotoner. Detta visar att kvantimplementeringen av klassiska bysantinska avtalsprotokoll verkligen är genomförbar.