Following our previous in-depth exploration of Humanode's venture into verifiable confidential computing for processing biometric data, we have made a few advancements that will improve our Confidential Virtual Machines, or CVMs for short.
Although this enhancement marks a minor step it is of great importance toward a more secure and transparent biometric processing system. Let's delve into what's new and how it will help us elevate our system's security and make the process more transparent.
We initially faced some tough limitations with CVMs. We really needed the CVM to not only run custom-built artifacts (kernel, intrid, OVMF) built by us but also to launch the CVM successfully when running the AMD SEV launch parameter script.
This was super important to ensure two things I. ensure that the code running in CVM is doing what it is supposed to do II. having the ability for remote attestation. In simple terms, it's required to ensure that data stays safe in encrypted memory, preventing potential data breaches, and making it transparent so that everyone can verify what’s running in the system.
Although in our current deployed version, CVM runs the artifacts (kernel, intrid, and OVMF) provided by us however when we experimented with AMD SEV launch parameters scripts, our setup didn't launch as CVM. It seemed secure, but to be honest, it wasn't the whole picture. What we wanted was a system where you could check out every part of it – from the AMD SEV-SNP to how the CPU is built – and say, "Yep, this is legit." That's why we had to rethink and build something that wasn't just secure, but also transparent and verifiable.
The recent advancement that we have achieved will address these concerns head-on. The team has successfully experimented with a dedicated server supported by AMD SEV-SNP. This advancement allows Humanode to launch a real CVM with our custom-built kernel, initrd, and OVMF, offering greater control and authentication.
Here’s a summarised version of what we had previously (current deployed version) and what new advancements have we achieved:
- We built the artifacts (kernel, initrd, OVMF) with reproducible builds
- We experimented with AMD SEV launch parameters scripts, but our setup doesn't launch as CVM
- We can launch a real CVM with our custom-built kernel, initrd, and OVMF
This advancement to the CVMs gives us the ability to perform remote attestation using the launch parameters. Here's how it works: every time the system starts up, it calculates cryptographic hashes for all the data involved. It's like taking a print of all the code when the system boots up. This is important because it checks that everything is in order and nothing fishy is going on. Plus, it lets everyone verify that the system is doing what it’s supposed to do. Although this is available in the current deployed version, we weren't able to execute to launch measurements previously.
This advancement is an important step in our journey to build a trustless system, but we haven't used it for our biometric data just yet. We've tested it and it works, which is super exciting. However, we plan to first open source the code, inviting wider participation and scrutiny from the community.
The standard implementation of CVMs presented certain limitations, particularly in control over the entire system stack, from BIOS to the operating system. Our implementation addresses these issues, allowing for a more robust and secure environment for handling sensitive biometric data.
As discussed with MOZGIII (Humanode’s Lead Developer), the team’s focus is on enhancing our CVMs to further align with our vision of a secure, encrypted, verifiable, and decentralized system for biometric data processing. Having the ability to launch our custom firmware has been a crucial step, but it's part of a larger journey toward achieving a fully trustless and transparent system.
While we have made significant progress, the ultimate goal of incorporating homomorphic encryption remains. This future development will allow for even more secure and private handling of biometric data, fully realizing our vision of a decentralized and secure blockchain platform.
Stay tuned for further updates as Humanode continues to push the boundaries and check this page to get more technical information about Humanode CVM.