1,206 research outputs found

    Key exchange with the help of a public ledger

    Full text link
    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

    Get PDF
    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

    Get PDF
    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

    Full text link
    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

    Full text link
    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
    • 

    corecore