Towards Decentralized Applications
Skip to main content
eScholarship
Open Access Publications from the University of California

UCLA

UCLA Electronic Theses and Dissertations bannerUCLA

Towards Decentralized Applications

Abstract

Internet consolidation has become a major concern. Centralization causes concern among users, especially social platform users, about privacy, service failure, and censorship. In recent years, vast efforts have been put into Internet decentralization, including new protocol designs (such as ActivityPub and Nostr), new platforms (such as IPFS), and the development of decentralized applications (such as Mastodon and Bluesky). Majority of these efforts take the existing TCP/IP network protocol stack as given, and build new solutions as an overlay of it. As for security, some of them keep the existing server-centric security model, but try to increase the number of servers; some utilize cryptographic keys, and distributes signed contents over existing web. An exception is the development efforts of decentralization built on Named Data Networking (NDN), which is a new way to networking, by naming and securing data directly, enabling end users to exchange secured data by names. This new way of networking removes dependencies on centralized servers.In this dissertation, I find that the fundamental issue with centralization is the centralization of control power, i.e., cloud servers control the user identities and host the authentic versions of user-generated data. In this case, users lost the ability to securely communicate with each other without depending on the cloud. I analyze decentralized applications, especially those with a large amount of user-generated data, such as social applications and collaborative applications. By inspecting the basic factors that led to server's centralized control power and the functionalities the cloud provides, I identify the two main tasks of decentralizing security control power — decentralized name space and data dissemination. I classify and analyze decentralized applications based on these two tasks. Then, based on the lessons learnt, I present NDN Workspace, a decentralized collaborative editing application over NDN. I discuss the key design decisions I made in NDN Workspace, and demonstrate the prototype I implemented. I evaluate the effectiveness of NDN Workspace in terms of functionality and performance. At last, I present other research contributions I has made to advance the NDN ecosystem to support the deployment of NDN Workspace and decentralized applications.

Main Content
For improved accessibility of PDF content, download the file to your device.
Current View