Danko Miladinovic e372cfc219 COCOS-192 - Add support for attested TLS (#279)
* add draft tls extension

* add client support for ipv6

* remove vscode

* add evidence request server payload

* clean up the code

* add fetch and verify for quote provider

* add build parameters for buildroot

* change Makefile to always enable CGO

* fix ci

* add malloc check for NULL

* add copyright

* renamed files and fix cgo lint

* fix cache test

* fix server tests

* remove ineffective assignment

* fix no-TLS connection

* add check for SSL_set_fd failure

* add tests for verification of attestation

* fix CI

* fix failing tests

* fix backend tests

* remove commented code

* separate verify and validate function

* fix failing test

* Simplify function name

---------

Co-authored-by: ultraviolet <cocosai@ultraviolet.local.pragmatic-it.com>
2024-11-04 19:10:34 +01:00
2024-08-26 17:19:47 +02:00
2024-09-12 15:55:53 +02:00
2024-04-14 18:05:16 +02:00

Cocos AI

codecov Go report card

Cocos AI (Confdential Computing System for AI/ML) is a platform for secure multiparty computation (SMPC) based on the Confidential Computing and Trusted Execution Environments (TEEs).

With Cocos AI it becomes possible to run AI/ML workloads on combined datasets from multiple organizations while guaranteeing the privacy and security of the data and the algorithm. Data is always encrypted, protected by hardware secure enclaves (Trusted Execution Environments), attested via secure remote attestation protocols, and invisible to cloud processors or any other 3rd party to which computation is offloaded.

Features

Cocos AI is implementing the following features:

  • TEE enablement, deployment and monitoring (secure VM manager)
  • HAL for TEEs based on hardened Linux kernel, secure bootloader and custom-tailored embedded rootfs for minimal TCB
  • In-enclave agent, netowrking controller and other system software
  • Encrypted asynchronous data transfer and result delivery
  • API for programmable platform manipulation
  • HW and SW supported attestation with verification tools
  • CLI for system interaction

Usage

Clone the repo and create binaries:

git clone git@github.com:ultravioletrs/cocos.git
make

This will create 3 binaries:

ls build/
# cocos-agent  cocos-cli  cocos-manager
  • Manager can be deployed on the AMD SEV-SNP host
  • Agent can be built into EOS-based HAL
  • CLI can be used to communicate to remote Agent.

Documentation

Project documentation is hosted at Cocos AI official docs page.

Documentation is generated from the docs repository.

License

Cocos AI is published under permissive open-source Apache-2.0 license.

S
Description
Cocos AI - Confidential Computing System for AI
Readme 13 MiB
Languages
Go 95.5%
Shell 2.2%
Makefile 1.6%
Python 0.4%
Rust 0.3%