1,206 research outputs found
Key exchange with the help of a public ledger
Blockchains and other public ledger structures promise a new way to create
globally consistent event logs and other records. We make use of this
consistency property to detect and prevent man-in-the-middle attacks in a key
exchange such as Diffie-Hellman or ECDH. Essentially, the MitM attack creates
an inconsistency in the world views of the two honest parties, and they can
detect it with the help of the ledger. Thus, there is no need for prior
knowledge or trusted third parties apart from the distributed ledger. To
prevent impersonation attacks, we require user interaction. It appears that, in
some applications, the required user interaction is reduced in comparison to
other user-assisted key-exchange protocols
A Decentralised Digital Identity Architecture
Current architectures to validate, certify, and manage identity are based on
centralised, top-down approaches that rely on trusted authorities and
third-party operators. We approach the problem of digital identity starting
from a human rights perspective, with a primary focus on identity systems in
the developed world. We assert that individual persons must be allowed to
manage their personal information in a multitude of different ways in different
contexts and that to do so, each individual must be able to create multiple
unrelated identities. Therefore, we first define a set of fundamental
constraints that digital identity systems must satisfy to preserve and promote
privacy as required for individual autonomy. With these constraints in mind, we
then propose a decentralised, standards-based approach, using a combination of
distributed ledger technology and thoughtful regulation, to facilitate
many-to-many relationships among providers of key services. Our proposal for
digital identity differs from others in its approach to trust in that we do not
seek to bind credentials to each other or to a mutually trusted authority to
achieve strong non-transferability. Because the system does not implicitly
encourage its users to maintain a single aggregated identity that can
potentially be constrained or reconstructed against their interests,
individuals and organisations are free to embrace the system and share in its
benefits.Comment: 30 pages, 10 figures, 3 table
Decentralizing Software Identity Management
Software ist in unterschiedlichsten Bereichen von gröĂter Wichtigkeit: Wirtschaft, Handel, Industrielle Steueranlagen, Transport, Logistik, Kommunikation, sowie im privaten Gebrauch um nur einige Beispiele zu nennen. Es ist entsprechend unverzichtbar, Software mit IntegritĂ€t und einer expliziten BefĂŒrwortung durch den jeweiligen Entwickler oder Herausgeber zu beziehen. In dieser Arbeit verfolgen wir das Ziel, die Interaktion zwischen Erstellern und Nutzern von Software durch die Etablierung und Nutzung von expliziten IdentitĂ€ten fĂŒr Software weiter abzusichern. Eine SoftwareidentitĂ€t etabliert in erster Linie einen eindeutigen und persistenten Bezugspunkt an den Softwareersteller Informationen zu BinĂ€rdateien ihrer Software anhĂ€ngen und entfernen können. Die Möglichkeit zuvor veröffentlichte BinĂ€rdateien aus einer SoftwareidentitĂ€t zu entfernen erlaubt Entwicklern auf sicherheitskritische Fehler oder Kompromittierungen zu reagieren, indem sie klar kommunizieren, dass bestimmte BinĂ€rdateien nicht lĂ€nger verwendet werden sollten. Nutzer einer Software können ĂŒber solche Widerrufe oder neue Versionen informiert werden, indem sie die entsprechende SoftwareidentitĂ€t beobachten ĂŒber die sie dann auch die IntegritĂ€t und BefĂŒrwortung von heruntergeladenen BinĂ€rdateien ĂŒberprĂŒfen können.
Distributed Ledger Technologien wie Ethereum oder zuvor Bitcoin scheinen taugliche Plattformen fĂŒr die Umsetzung von SoftwareidentitĂ€ten zu sein, ohne dabei auf zentrale Anbieter vertrauen zu mĂŒssen. Ein offenes Peer-to-Peer Netzwerk etabliert einen Konsens ĂŒber einen manipulationsgeschĂŒtzten Zustandsverlauf, der namensgebende Ledger, und ermöglicht Zugriff auf selbigen. Ethereum ist einer der ersten Distributed Ledger, der sogenannte Smart Contracts ermöglicht. Dabei handelt es sich um Programme, die auf einem Distributed Ledger installiert und ausgefĂŒhrt werden und damit einen eindeutig referenzierbaren Teil des Ledgerzustandes etablieren und verwalten. Einzig und allein die Programmierung eines Smart Contracts bestimmt darĂŒber, wer den Teilzustand wann und wie verĂ€ndern kann.
Die erste Forschungsfrage dieser Dissertation zielt auf die Tauglichkeit von Distributed Ledger Technologien hinsichtlich der Etablierung, Verwaltung, und Nutzung von SoftwareidentitĂ€ten ab. Insbesondere untersuchen wir, wie nĂŒtzliche Eigenschaften fĂŒr SoftwareidentitĂ€tsmanagement und -nutzung von den Sicherheitseigenschaften des zugrundeliegenden Distributed Ledgers und weiteren Annahmen abgeleitet werden können.
Neben der Verwendung von SoftwareidentitĂ€ten zur weiteren Absicherung der Softwaredistribution untersuchen wir auĂerdem ihre Nutzbarkeit als Grundlage fĂŒr unabhĂ€ngige Begutachtungen von Softwareversionen. Die DurchfĂŒhrung solcher unabhĂ€ngigen Begutachtungen mittels Distributed Ledgern fĂŒhrt unweigerlich zu einer Herausforderung hinsichtlich der koordinierten Offenlegung der Ergebnisse. Zum Zeitpunkt der Abfassung dieser Arbeit bietet kein Distributed Ledger eine entsprechende FunktionalitĂ€t, um die Erstellung einer Menge unabhĂ€ngig erstellter Aussagen zu unterstĂŒtzen oder zu dokumentieren. Die zweite Forschungsfrage dieser Arbeit befasst sich deshalb mit der Umsetzung eines Offenlegungsmechanismus fĂŒr Distributed Ledger basierend auf bestehenden kryptografischen Primitiven.
Wir behandeln beide Forschungsfragen, indem wir entsprechende dezentrale Anwendungen konzipieren, implementieren, und evaluieren. Wir nutzen dabei Ethereum als prominentestes Exemplar eines Smart-Contract-fĂ€higen Distributed Ledgers. Genauer gesagt messen wir die Installations- und AusfĂŒhrungskosten jener Smart Contracts, die fĂŒr unsere dezentralen Anwendungen nötig sind, um ihre praktische Tauglichkeit zu bestimmen. In zwei FĂ€llen ermitteln wir auĂerdem den Rechenaufwand, der abseits des Ledgers anfĂ€llt. Wir zeigen zudem semi-formal, wie die Sicherheitseigenschaften unserer Proof of Concept Implementierung von dem zugrundeliegenden Distributed Ledger und weiteren Annahmen abgeleitet werden können.
Wir kommen zu dem Ergebnis, dass Ethereum stellvertretend fĂŒr Smart-Contract-fĂ€hige Distributed Ledger eine taugliche Plattform fĂŒr die Umsetzung von SoftwareidentitĂ€ten ist, inklusive der zuvor angemerkten unabhĂ€ngigen Begutachtungen. Da unser Konzept des SoftwareidentitĂ€tsmanagements auf eher grundlegenden Eigenschaften von Distributed Ledgern fuĂt sollte es sich gut auf andere Systeme ĂŒbertragen lassen. Im Gegensatz dazu erfordert unser Konzept fĂŒr einen Offenlegungsmechanismus die UnterstĂŒtzung von bestimmten kryptografischen Operationen auf dem verwendeten Ledger, was die Ăbertragbarkeit entsprechend einschrĂ€nkt. Die Kosten fĂŒr die Installation der nötigen Smart Contracts sind signifikant gröĂer als die AusfĂŒhrungskosten im typischen Gebrauch, weshalb wir fĂŒr zukĂŒnftige Arbeit empfehlen, die Wiederverwendbarkeit von installierten Smart Contract Instanzen zu verbessern. Bei der koordinierten Offenlegung von unabhĂ€ngig erstellten Aussagen auf einem Distributed Ledger erzielen wir eine Reduktion der Gesamtkosten von 20â40 % im Vergleich zu verwandter Arbeit, indem wir unterschiedliche kryptografische Anforderungen ausnutzen. Unser Ansatz um eine koordinierte Offenlegung auf Ethereum zu erzielen stĂŒtzt sich auf Elliptische-Kurven-Operationen die, obwohl ausreichend, zum aktuellen Zeitpunkt sehr eingeschrĂ€nkt sind. Entsprechend trĂ€gt unsere Arbeit einen weiteren Grund fĂŒr die Erweiterung der unterstĂŒtzten elliptischen Kurven im Zuge der Weiterentwicklung von Ethereum bei
Beyond the Hype: On Using Blockchains in Trust Management for Authentication
Trust Management (TM) systems for authentication are vital to the security of
online interactions, which are ubiquitous in our everyday lives. Various
systems, like the Web PKI (X.509) and PGP's Web of Trust are used to manage
trust in this setting. In recent years, blockchain technology has been
introduced as a panacea to our security problems, including that of
authentication, without sufficient reasoning, as to its merits.In this work, we
investigate the merits of using open distributed ledgers (ODLs), such as the
one implemented by blockchain technology, for securing TM systems for
authentication. We formally model such systems, and explore how blockchain can
help mitigate attacks against them. After formal argumentation, we conclude
that in the context of Trust Management for authentication, blockchain
technology, and ODLs in general, can offer considerable advantages compared to
previous approaches. Our analysis is, to the best of our knowledge, the first
to formally model and argue about the security of TM systems for
authentication, based on blockchain technology. To achieve this result, we
first provide an abstract model for TM systems for authentication. Then, we
show how this model can be conceptually encoded in a blockchain, by expressing
it as a series of state transitions. As a next step, we examine five prevalent
attacks on TM systems, and provide evidence that blockchain-based solutions can
be beneficial to the security of such systems, by mitigating, or completely
negating such attacks.Comment: A version of this paper was published in IEEE Trustcom.
http://ieeexplore.ieee.org/document/8029486
Offline-verifiable Data from Distributed Ledger-based Registries
Trust management systems often use registries to authenticate data, or form
trust decisions. Examples are revocation registries and trust status lists. By
introducing distributed ledgers (DLs), it is also possible to create
decentralized registries. A verifier then queries a node of the respective
ledger, e.g., to retrieve trust status information during the verification of a
credential. While this ensures trustworthy information, the process requires
the verifier to be online and the ledger node available. Additionally, the
connection from the verifier to the registry poses a privacy issue, as it leaks
information about the user's behavior.
In this paper, we resolve these issues by extending existing ledger APIs to
support results that are trustworthy even in an offline setting. We do this by
introducing attestations of the ledger's state, issued by ledger nodes,
aggregatable into a collective attestation by all nodes. This attestation
enables a user to prove the provenance of DL-based data to an offline verifier.
Our approach is generic. So once deployed it serves as a basis for any use case
with an offline verifier. We also provide an implementation for the Ethereum
stack and evaluate it, demonstrating the practicability of our approach.Comment: This is the full version of a paper which was presented at the 19th
International Conference on Security and Cryptography (SECRYPT '22
- âŠ