Skip to content

About

Towards Confidential AI with Azure Confidential Computing - A series of tutorials

Resources

Code of conduct

Security policy

Stars

10 stars

Watchers

0 watching

Forks

Latest commit

 

History

78 Commits

Folders and files

Repository files navigation

Workshop logo

Welcome to the Confidential AI Workshop! This repository provides a series of hands-on tutorials to help you build and deploy secure and private AI solutions using Azure Confidential Computing.

Caution

This repository is intended for educational purposes only. It is not recommended for production use without further security review and customization to meet your specific requirements.

What is Confidential AI?

Confidential AI is an approach to building AI systems that protects data and models not just at rest and in transit, but also while in use. This is achieved by processing data within a hardware-based Trusted Execution Environment (TEE), an encrypted and isolated portion of the CPU or GPU memory.

Inside a TEE, code and data are shielded from the host operating system, the cloud provider, and even system administrators. This enables new possibilities for handling sensitive data, such as:

  • Protecting valuable AI model intellectual property (IP) from theft.
  • Processing sensitive user data (like medical records or financial information) without exposing it in plaintext.
  • Meeting strict regulatory and privacy requirements by providing cryptographic proof of data protection.

About this Repository

This repository is designed as a hands-on workshop with standalone tutorials and reusable configuration modules. The structure is as follows:

├───assets
├───modules
│   ├───attestation
│   ├───key-management
│   ├───key-origin
│   ├───model-sourcing
│   └───os-disk-encryption
└───tutorials
    ├───confidential-llm-inferencing
    ├───confidential-ml-training
    └───confidential-whisper-inferencing
  • Tutorials: Contains the main end-to-end walkthroughs. Each tutorial is self-contained and guides you through building a complete Confidential AI solution.
  • Modules: Contains focused, reusable guides for specific architectural choices you'll encounter in the tutorials, such as selecting a key management service or configuring OS disk encryption. This modular approach allows you to customize the tutorials to fit your specific security and architecture needs.

Prerequisites

Before you begin, you will need the following:

  • An Azure Subscription. Note: Azure Confidential Computing is not available on free trial accounts.
  • Azure CLI version 2.46.0 or later.
  • PowerShell as your command line interface.
  • Sufficient quota for the VM SKUs used in the tutorials (e.g., DCasv5-series or NCCadsH100_v5-series).

Tutorials

Get started by choosing one of the following tutorials. Each one is designed to be standalone.

Tutorial Description Key Concepts
Confidential ML Training Learn the fundamentals by deploying a CPU-based Confidential VM. You will train a machine learning model on an encrypted dataset that is only ever decrypted inside the TEE. CVM-Confidential_VM TEE-Trusted_Execution_Environment Attestation-Guest_Attestation SKR-Secure_Key_Release Policy-Key_Release_Policy Data-Encryption_in_Use DES-OS_Disk_Encryption XGB-XGBoost ML-Binary_Classifier
Confidential LLM Inferencing Add GPU acceleration to deploy a Large Language Model (LLM) on a Confidential VM with an NVIDIA H100 GPU. This tutorial shows how to protect both the model's weights and user prompts. CGPU-Confidential_GPU_VM TEE-Trusted_Execution_Environment Attestation-Guest_Attestation SKR-Secure_Key_Release Attestation-GPU_Attestation Model-Model_IP_Protection TLS-End_to_End_TLS DES-OS_Disk_Encryption Client-Streamlit_Client_App vLLM-LLM_Inference_Server Local-LLM HF-Hugging_Face AML-AzureML_Registry
Confidential Whisper Pipeline Build a complete, end-to-end secure AI pipeline. This tutorial demonstrates how to securely transcribe sensitive audio using Azure's Confidential Whisper service and analyze the transcript with your confidential LLM. OHTTP-Oblivious_HTTP HPKE-Hybrid_Public_Key_Encryption KMS-Key_Management_Service Whisper-Confidential_Whisper Pipeline-End_to_End_Pipeline Client-Streamlit_Client_App

Contributing

This project welcomes contributions and suggestions.

For the contributions, this project endorses the Microsoft Enterprise AI Services Code of Conduct, which defines the requirements that all customers of Microsoft AI Services (as defined in the Microsoft Product Terms) must adhere to in good faith, in terms of responsible AI requirements, usage restrictions, content requirements, as well as additional conduct requirements if any for specific Microsoft AI services being leveraged in the tutorials, modules, and other assets of this project.

Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit Contributor License Agreements.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

Legal notices

Microsoft and any contributors grant you a license to the Microsoft documentation and other content in this project under the Creative Commons Attribution 4.0 International Public License, see the LICENSE file, and grant you a license to any code in the repository under the MIT License, see the LICENSE-CODE file.

Privacy information can be found at https://privacy.microsoft.com/en-us/.

Microsoft and any contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel or otherwise.

About

Towards Confidential AI with Azure Confidential Computing - A series of tutorials

Resources

Code of conduct

Security policy

Stars

10 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages