# Reliable Application Layer Routing Using Decentralized Identifiers
## 3 Related Work  
Many related systems are trying to secure (inter-)networks by using cryptographic constructions (such as public keys) at the network layer (see, for example, [16; 17; 18]). These systems have broader goals than our approach; therefore, even though they can be used to achieve similar properties to our solution, they require significant changes to the networking infrastructure. Our solution is an overlay approach that can be used on top of any networking technology. Similarly, our constructions are applied in the edge devices, and they are transparent to the core network.  
DIDs as a mechanism for securing routing messages have been investigated in the context of next-generation internet architectures. For example, the solution in [19] uses DIDs to protect the routing layer of information-centric architectures from poison attacks. These approaches use public keys as the corresponding DID, whereas our solution uses a registrar service to support URLs as DIDs. Additionally, our solution leverages an ICN-based DID registry to implement DID document management. Similarly, recent solutions investigate the use of DIDs for providing access control in the IoT (e.g., [20; 21; 22]). Although the goal of these solutions is different compared to our system, they follow the same principle: they use DIDs to derive a key, which is then used for signing and verifying a digital signature. Nevertheless, these solutions use blockchain to manage trust. Our system uses as a root of trust a centralized entity. Although our approach introduces a single point of failure, it is more lightweight, and more realistic to deploy. Furthermore, given that IoT devices do not have the processing power to interact with the blockchain directly, all these solutions rely on a \"proxy\" that mediates the communication between the IoT devices and the blockchain: this proxy is also a single point of failure. The solution of [PERSON] et al. [23] uses DIDs for establishing secure communication channels between IoT devices. This solution uses DIDs only for deriving public keys, whereas our system includes \"constraints\" that control how a key can be used. Furthermore, our solutions supports secure and controlled delegation.  
Related technologies, such as Verifiable Credentials [24] Macaroons [25], Authorization capabilities for linked data (ZCAP-LD) [26] and capabilities as defined by the WAVE framework [27] can also be used for expressing \"assignments\" and \"capabilities\". The system proposed in this paper uses DIDs because are simpler to implement and use, and easier to verify. Nevertheless, if more complex trust relationships are required, these technologies can be used instead.  
In the context of the IoT, related efforts try to provide security properties at the application layer, supporting, at the same time, advanced communication paradigms, such as publish-subscribe, and group communication (see, for example, group OSCORE [28]).These efforts are complementary to our approach: with our solution, we are securing the routing layer, but the used cryptographic material can be provided as an input to application-layer-security solutions.