Just installed EGo? Here are some examples to start your confidential development process.
An enclave saying “hello” to the world; works with any CPU, no special hardware required.
A minimal HTTPS server running in an enclave. The server uses the EGo library to create a
tls.Config, which automatically obtains and sends a remote-attestation statement to a client. Consequently, the client knows that the server is indeed running in an enclave and POSTs its secret. This example showcases the easy-to-use yet powerful attestation features of the EGo library.
Similar to the above, but the server manages remote attestation by itself. This example showcases the raw attestation features of the EGo library. Use this as a starting point if you want to use an existing (HTTPS) client application and thus need to perform attestation separately.
Vault is a common way to store secrets and share them on dynamic infrastructures. With EGo, you can build a confidential version of unmodified Vault.
Azure offers MAA as a public service. Clients can send remote-attestation statements to MAA via a REST API. MAA verifies such statements and returns a corresponding JSON Web Token (JWT). This example demonstrates how to use MAA with EGo.
Go apps can use C and C++ libraries through cgo. EGo also supports cgo and this example shows you how.