## 4 Results: Proof of Concept
### Identity Management Implementation
#### 4.1.3 Verifiable Presentations (VPs)
When generating a DID on a conventional computer, CPU usage remained within acceptable limits, averaging around 22% after ten test runs. However, on a Raspberry Pi, CPU usage increased dramatically, reaching an average of 175%. This significant increase in CPU usage was mainly due to the high computational requirements of cryptographic operations such as key pair generation and document signing. The performance disparity between a standard computer and the Raspberry Pi highlights the need for further optimization, especially when deploying IOTA Identity solutions on low-resource devices. As shown in Figure 4, these high CPU usage levels can severely impact the efficiency of IoT-based identity management systems. The IOTA-based identity management approach developed for this proof of concept was implemented on a Raspberry Pi, which is a resource-constrained device with limited processing power, memory, and bandwidth compared to more powerful devices such as an Intel Core i5-7500 processor. As a result, the Raspberry Pi has higher memory consumption, higher latency, and lower throughput. The Raspberry Pi's limited memory and processing capabilities cause delays in cryptographic operations and data processing, resulting in higher latency compared to more powerful systems. In addition, the device's reduced throughput limits its ability to efficiently handle a large volume of transactions or complex computations. This performance difference is particularly critical when considering system scalability, as resource-constrained devices may face challenges as the number of IoT devices increases, potentially resulting in slower processing times and inefficiencies. This performance gap can affect the overall user experience, especially in scenarios where multiple interactions occur simultaneously and selfish users with more powerful devices can exploit the system by outperforming resource-constrained devices in processing and validation tasks. Figure 4: Graph of % CPU usage when generating a DID. Figure 5 illustrates a comparative analysis of memory utilization, latency, and throughput between the Intel Core i5-7500 and Raspberry Pi 4, showing the superior computational efficiency of the Intel processor in terms of lower latency and higher throughput, while the Raspberry Pi exhibits significantly higher memory utilization. The Raspberry Pi's higher memory consumption compared to an Intel Core i5-7500, despite using the same approach and algorithms, is due to several factors related to the inherent hardware limitations of the Raspberry Pi. First, the Raspberry Pi has significantly less memory available for both its operating system and application-level processes. When performing cryptographic operations and managing the Decentralized Identifiers (DIDs) and Verifiable Credentials (VCs) within the IOTA framework, these tasks require a significant amount of memory to handle data structures, temporary storage, and processing states. On a more powerful processor such as the Intel Core i5-7500, which has more cache and much higher overall memory bandwidth, the system can offload and process data more efficiently, minimizing memory bottlenecks. Furthermore, the Raspberry Pi's ARM architecture, while efficient for general-purpose tasks, is not as optimized for memory-intensive operations as x86 architecture processors such as the Intel Core i5-7500. This difference in architectural design results in higher memory utilization on the Raspberry Pi because it must use its available memory more intensively to perform the same operations. In addition, the limited processing power of the Raspberry Pi means that it may take longer to process cryptographic algorithms (such as those used for DID verification), which in turn requires more memory to store intermediate results and perform additional operations.