Arkitekturdesign för flera delar av databehandling

Azure Blob Storage
Azure Kubernetes Service (AKS)
Azure SQL Database

Databehandling i flera delar eller sekretessbevarande beräkningar gör det möjligt för parter i en affärsrelation att dela data, göra beräkningar och komma fram till ett ömsesidigt resultat utan att avslöja sina privata data. Azure-tjänster kan hjälpa dig att skapa en lösning för databehandling med flera delar. Lösningen kan innehålla molnbaserade och lokala resurser.

Flerapartsberäkning har följande attribut:

  • Fler än ett företag eller en organisation är inblandade.
  • Parterna är oberoende.
  • Parterna litar inte på varandra med alla sina data.
  • Alla parter har åtkomst till en gemensam plattform för databehandling och datalagring.
  • Vissa processer måste vara privata för vissa av de berörda parterna.

En leveranskedja är ett exempel på ett arbetsflöde som involverar flera parter. Råmaterial flödar från ursprungspunkten till tillverkning. Varor från tillverkaren går via leveranspartner till en distributionshubb. Från hubben skickas varor till butiker.

Diagram visar en progression av medlemmar i en leveranskedja som ClipArt-bilder.

Den här processen har företag som arbetar tillsammans. Dessa parter omfattar råvaruleverantören, tillverkaren, rederier, lageroperatörer och försäljningsställena. Produkten byter ägare flera gånger under leveranskedjan. Olika parter måste spåra produkten i alla steg.

Databehandlingstekniker för flera delar

Databehandling med flera delar innehåller olika tekniker som gör det möjligt för parter att handla säkert via ett nätverk.

Diagram visar transaktionsregister som implementeras som konfidentiell databehandling, Azure Kubernetes Service, virtuella datorer eller partnererbjudanden.

Ett alternativ är distribuerade transaktionsregister. Blockchain är ett exempel. Blockchain är ett dataregister som kan delas mellan oberoende parter där alla parter litar på data i transaktionsregistret. Transaktioner samlas in i block med varje block som länkar till föregående block. Vissa distribuerade transaktionsregister använder inte block. Varje transaktion kan länkas till den tidigare transaktionen i transaktionsregistret.

En annan möjlighet för databehandling i flera delar använder maskinvaruskyddat minne på själva processorn. Dessa regioner, som kallas säkra enklaver, skyddas kryptografiskt. Den här metoden innebär att inte ens en privilegierad administratör som har fullständig åtkomst till servern kan titta på processen eller data i dessa säkra enklaver.

Eftersom säkra enklaver har möjlighet att fjärrattestera sig själva till andra enklaver kan du utforma ett nätverk för flera organisationer där systemet körs från enklaver. Den här metoden kallas för den betrodda körningsmiljön.

Azure erbjuder en hanterad tjänst med namnet Azure Confidential Ledger som gör att du kan köra en blockkedjemodell på säkra enklaver.

Slutligen kan du välja ett centraliserat system som erbjuder oföränderlighet och pålitlighet. Azure SQL Database-transaktionsregistret erbjuder det förtroende som krävs för databehandling i flera delar i en relationsdatabas. Du kanske inte behöver en decentraliserad konsensus, men bara oföränderlighetsaspekten i transaktionsregistret.

Blockkedjenätverksmodeller

Tänk på följande frågor för att avgöra om blockkedjan passar bra för en affärsprocess:

  • Går den här affärsprocessen över förtroendegränser?
  • Delar och uppdaterar flera parter data?
  • Finns det några mellanhänder som styr den enda sanningskällan?
  • Omfattar processen manuella verifieringssteg med låga värden?

Om svaren på dessa frågor är ja är affärsprocessen en bra kandidat för en blockkedjebaserad metod. Även om vissa svar är nej kan blockkedjan fortfarande vara meningsfull. Titta närmare på de andra alternativen för databehandling i flera delar innan du bestämmer dig.

Det finns olika typer av blockkedjenätverk för att tillgodose dina affärsbehov. En egenskap är kriterierna för att delta i nätverket. Om nätverket är öppet för alla kallas det ett offentligt blockkedjenätverk. Du laddar bara ned klienten och ansluter. De flesta kryptovalutor fungerar på det här sättet.

Ett alternativ är ett blockkedjenätverk med behörighet, där du behöver behörighet från befintliga medlemmar i nätverket för att ansluta. Den här modellen fungerar för företag som hanterar kända organisationer. Till exempel kanske ett superarkiv vill ha ett stängt och behörighetsbelagt blockkedjenätverk för sina deltagare i leveranskedjan.

En affärsprocess kan bara kräva manipuleringssäkra eller manipuleringssäkra data, vilket inte kräver blockkedja. Om processen kan köras centralt, eller om alla parter litar på varandra med data, kan blockkedjan också vara onödig.

Azure-databehandling med flera delar

I det här avsnittet beskrivs alternativ för databehandling i flera delar som är tillgängliga med Hjälp av Azure-tjänster.

Blockkedja med Azure Virtual Machines

Du kan köra transaktionsregisterprogramvara med Hjälp av Azure Virtual Machines. Skapa så många virtuella datorer som du behöver och anslut dem i ett blockkedjenätverk.

När du distribuerar dina egna virtuella datorer kan du anpassa din lösning. Metoden omfattar hanteringskostnader, till exempel uppdateringar, hög tillgänglighet och krav på affärskontinuitet. Du kan ha flera organisationer och flera molnkonton. Det kan vara komplicerat att ansluta enskilda noder.

Det finns distributionsmallar tillgängliga i Azure för de flesta blockkedjeregister för virtuella datorer.

Blockkedja på Kubernetes

Eftersom de flesta blockkedjeregister stöder distribution till Docker-containrar kan du använda Kubernetes för att hantera containrarna. Azure har ett hanterat Kubernetes-erbjudande med namnet Azure Kubernetes Service (AKS) som du kan använda för att distribuera och konfigurera blockkedjenoder.

AKS-implementeringar levereras med en hanterad tjänst för de virtuella datorer som driver AKS-klustret. Din organisation måste dock fortfarande hantera dina AKS-kluster och eventuella nätverk eller lagringsalternativ i din arkitektur.

Det finns distributionsmallar tillgängliga i Azure för de flesta blockkedjeregister för AKS.

Blockkedja som en tjänst

Azure stöder tjänster från tredje part som kör transaktionsregisterprogramvara i Azure. Tjänstleverantören hanterar infrastrukturen. De hanterar underhåll och uppdateringar. Hög tillgänglighet och konsortiumhantering ingår i tjänsten.

ConsenSys erbjuder Quorum på Azure. Kvorum är ett protokolllager med öppen källkod som stöder Ethereum-baserade program.

Det kan finnas andra erbjudanden i framtiden.

Azure Confidential Ledger

Azure Confidential Ledger är en hanterad tjänst som bygger på Confidential Consortium Framework. Den implementerar ett behörighetsbelagt blockkedjenätverk med noder inom konfidentiell databehandling i Azure. Konfidentiell transaktionsregister bygger på befintlig kryptering.

  • Befintlig kryptering
    • Vilande data. Kryptera inaktiva data när de lagras i Blob Storage eller en databas.
    • Data under överföring. Kryptera data som flödar mellan offentliga eller privata nätverk.
  • Konfidentiell databehandling
    • Data som används. Kryptera data som används, i minnet och under beräkningen.

Konfidentiell databehandling tillåter kryptering av data i huvudminnet. Med konfidentiell databehandling kan du bearbeta data från flera källor utan att exponera indata för andra parter. Den här typen av säker beräkning stöder scenarier för databehandling i flera delar där dataskydd är obligatoriskt i varje steg, till exempel identifiering av penningtvätt, bedrägeriidentifiering och säker analys av hälso- och sjukvårdsdata.

Data som lagras i konfidentiellt transaktionsregister är oföränderliga och manipuleringssäkra i transaktionsregistret för endast tillägg. Transaktionsregistret kan också verifieras oberoende av varandra. Konfidentiell transaktionsregister använder säkra enklaver för ett decentraliserat blockkedjenätverk och kräver en minimal betrodd beräkningsbas.

Azure SQL Databasregister

Azure SQL Database-transaktionsregister gör det möjligt för deltagarna att verifiera dataintegriteten för centralt inbyggda data utan nätverkskonsensus i ett blockkedjenätverk. För vissa centraliserade lösningar är förtroende viktigt, men decentraliserad infrastruktur är inte nödvändigt. Den här metoden undviker komplexitet och prestandaeffekter av en sådan infrastruktur.

Diagram som visar databasens transaktionsregisterarkitektur.

Anteckning

Azure SQL Database-transaktionsregistret finns för närvarande i offentlig förhandsversion.

Transaktionsregistret tillhandahåller funktioner för manipuleringsbevis för databasen. Med dessa funktioner kan du kryptografiskt intyga att dina data inte har manipulerats.

Ledger hjälper till att skydda data från angripare eller användare med hög behörighet, inklusive databas-, system- och molnadministratörer. Historiska data bevaras. Om en rad uppdateras i databasen behålls dess tidigare värde i en historiktabell. Detta ger skydd utan några programändringar.

Transaktionsregister är en funktion i Azure SQL Database. Det kan aktiveras i alla befintliga Azure SQL Database.

Jämföra alternativ

Konfidentiellt transaktionsregister och Azure SQL databasregister

I den här tabellen jämförs konfidentiellt transaktionsregister med Azure SQL Database-transaktionsregister.

SQL Database transaktionsregister Konfidentiellt transaktionsregister
Centraliserat system som kräver manipulationsbevis Ja Inga
Decentraliserat system som kräver att data är manipulationssäkra Inga Ja
Skyddar relationsdata från manipulering Ja Inga
Skyddar ostrukturerade data från manipulering Inga Ja
Skydda lagring utanför kedjan av kedjedata i en blockkedja Ja Inga
Skydda arkiv utanför kedjan för filer som refereras till från en blockkedja Inga Ja
Relationsdata är frågebara Ja Inga
Ostrukturerade lagrade data är frågebara Inga Ja

Konfidentiellt transaktionsregister och Azure Blob Storage

Den oföränderliga lagringsfunktionen i Azure Blob Storage säkerställer att data som skrivs till den kan läsas men aldrig ändras. Den här tabellen jämför den tekniken med Konfidentiellt transaktionsregister.

Konfidentiellt transaktionsregister Oföränderlig lagring
Konfidentiella maskinvaru enklaver Ja Inga
Dataintegritet endast för tillägg Yes Ja, begränsat till intervall
Datakryptering som används Ja Inga
Bevis på blockkedjeregister Ja Inga

Beslut om flerapartsberäkning

Det här diagrammet sammanfattar alternativen för databehandling med flera delar med Azure-tjänster.

Diagrammet sammanfattar beslut om att välja ett alternativ för databehandling med flera delar.

Ladda ned en Visio-fil med den här arkitekturen.

Nästa steg