VBS enclave tooling
A code generator and SDK, distributed as NuGet packages, that make it easier to build features that call into and out of a VBS (virtualization-based security) enclave on Windows, for C++ and Rust host applications.
This repository provides a CodeGenerator and an SDK NuGet package for building applications that interact with a VBS enclave on Windows. The code generator uses Google Flatbuffers, added through vcpkg, to marshal data into and out of the enclave.
C++20 is supported for both the host application and the enclave itself, C++17 only for the host side, and Rust 1.88 and newer is supported for both. The tooling targets Windows 11 24H2 and requires a matching Windows SDK version, which the SDK package pulls in automatically as a dependency for the newer user-binding APIs.
Building the repository itself requires integrating vcpkg into Visual Studio and running a PowerShell build script, which produces the CodeGenerator and SDK NuGet packages; the project builds only for x64 and arm64.