A Watchtower for Discovering the Nostr Ecosystem

Notes and Other Stuff Transmitted by Relays (Nostr) is a decentralized communication system built on open protocols, enabling censorship-resistant and permissionless information exchange. Its development is driven by Nostr Improvement Proposals (NIPs), which define modular features that developers implement selectively, leading to an intentionally highly flexible and diverse ecosystem. This project aims to analyze Nostr from both a data-driven and software-engineering perspective, examining its usage patterns, architectural variations, and the broader implications of its decentralized design and development paradigm.

Thumb

Context

This project intersects three fields of research:

Motivation

Nostr is a promising and emerging system with the potential to serve as the backbone for various applications that rely on a social layer. Its evolving structure, user activity, and network scalability offer valuable research opportunities that, if properly explored, can provide the Nostr community with guiding insights for future development decisions.

Another interesting aspect of research concerns Nostr’s evolution and its NIP-driven development model, which allows different developers to implement selective features using diverse architectures and technology stacks. Together, they foster a heterogeneous ecosystem where software variants exhibit varying levels of NIP compliance and compatibility. Understanding these dynamics is essential for assessing interoperability challenges and the broader implications of decentralized software engineering.

Lastly, this project is also motivated by security concerns. The resilience of decentralized systems depends on early identification and mitigation of potential attack vectors, making security research a crucial component.

In summary, this project seeks to establish a well-integrated Nostr relay to support long-term studies on (i) network evolution, (ii) NIPs-driven software engineering, and (iii) realistic attack experiments to evaluate network resilience.

Goal

The project’s goal requires progress in two work packages (WP). WP1 consists of two foundational components, (a) and (b), that lay the groundwork. Building on this, WP2 leverages the results from WP1 to initiate experiments driven by relevant research questions.

Students interested in this topic may focus only WP1 for a start, depending on the chosen context (e.g., Seminar, BSc Thesis) and agreed-upon scope.

Requirements

Required skills:

Recommended skills (to be acquired while working on the topic):

Pointers