Design Choices for Offline Transactions in a Norwegian Central Bank Digital Currency
Abstract
Denne oppgaven undersøker mulighetene og utfordringene forbundet med offline funksjonalitet for Digitale Sentralbankpenger (DSP). Et best effort forslag av en protokoll for offline transaksjoner i en norsk DSP kontekst presenteres. Protokollen er basert på eksisterende tilnærminger til offline problemet og formulerte krav fra relevante aktører, inkludert Norges Bank. Den foreslåtte protokollen, sikkerhetsmekanismene og arkitektur aspekter er testet i et transaksjonssimuleringsrammeverk for DSP utviklet i Python. Utfordringene knyttet til offline transaksjoner er ikke løst i denne oppgaven, men mekanismer som kan minimere tilknyttede risikoer er foreslått. Resultatene viser at disse mekanismene og beløpsgrenser er effektive mot de simulerte angrepene, hovedsakelig double spending fra en sofistikert fiendtlig aktør. Simuleringsresultatene bekrefter at økt tilgjengelighet gjennom systemarkitektur kan redusere risikoen forbundet med offline funksjonalitet. This thesis examines the possibilities and challenges of offline functionality in a Central Bank Digital Currency. A best effort suggestion for a protocol for offline transactions in a Norwegian CBDC context is presented. The protocol is based on existing approaches to the offline problem and gathered requirements from relevant stakeholders, including Norges Bank. The proposed protocol, security mechanisms, and architectural considerations are tested in a CBDC transaction simulation framework developed in Python. The problems relating to offline transactions have not been solved in this thesis, but mitigation mechanisms that can reduce the associated risks are outlined. These mechanisms and spending limits are shown to be effective against the attacks studied, mainly double spending from a sophisticated adversary. The simulation results confirm that increased availability through system architecture can decrease the risks associated with offline functionality.