0Pricing
Cryptology Academy · Aula

ORAM em Armazenamento em Nuvem e Processadores Seguros

Explore aplicações de ORAM em ambientes de execução confiáveis (SGX, TrustZone) e bancos de dados em nuvem criptografados.

ORAM em Armazenamento em Nuvem e Processadores Seguros é uma aula grátis de Cryptology Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cryptology Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cryptology Academy inclui 4 aulas no total.

Intel SGX e vazamento de padrões de acesso

O Intel SGX (Extensões de Proteção de Software) fornece enclaves isolados pelo equipamento, nos quais o código e os dados são criptografados e autenticados. No entanto, o sistema operacional ainda pode observar quais páginas de memória o enclave acessa monitorando as entradas da tabela de páginas. Esse padrão de acesso no nível de páginas pode ser explorado em ataques por canais laterais. Um ataque clássico é o "ataque de canal controlado", de Xu, Cui e Peinado (2015), que reconstruiu chaves RSA a partir de padrões de acesso à memória do SGX.

Canais laterais de temporização da memória cache no SGX

Além dos padrões de acesso no nível de páginas, o SGX é vulnerável a canais laterais de temporização da memória cache. Um atacante que compartilha o processador pode observar os acertos e as falhas na memória cache causados pelo enclave, inferindo padrões de acesso detalhados (no nível das linhas da memória cache). Esses ataques funcionam porque a memória cache do CPU é compartilhada entre o enclave e o código não confiável. As medidas de mitigação incluem programação em tempo constante e ORAM para aleatorizar os padrões de acesso à memória.

ZeroTrace: ORAM dentro do SGX

ZeroTrace (Sasy, Jha, Kerschbaum, 2018) implementa o Path ORAM dentro de um enclave Intel SGX para oferecer acesso oculto à memória. O sistema operacional hospedeiro não confiável fornece o servidor ORAM (a árvore binária de compartimentos), enquanto o enclave SGX atua como cliente ORAM. ZeroTrace acrescenta uma otimização específica do SGX: o mapa de posições é mantido dentro do enclave (memória confiável), eliminando o ORAM recursivo para o mapa de posições.

Integração de ORAM com Graphene-SGX e SCONE

Graphene-SGX (agora Gramine) e SCONE são estruturas de contêineres SGX que permitem executar aplicações Linux sem modificações dentro de enclaves. Ambas as estruturas foram ampliadas com suporte a ORAM para ocultar os padrões de acesso do sistema operacional. A integração de ORAM com SCONE permite a execução com acesso oculto de programas Python, Go e Java em SGX sem modificar o código, tornando o ORAM acessível a aplicações sem integração manual.

Shroud: estruturas de dados com acesso oculto para SGX

Shroud (Volos, Jaleel, Emer, Burtscher, Forlin, 2018) implementa versões com acesso oculto de estruturas de dados fundamentais (vetores, pilhas, filas e mapas) para uso dentro de enclaves SGX. Shroud combina ORAM e algoritmos independentes dos dados para garantir que os padrões de acesso à memória do enclave não dependam dos valores dos dados. Isso é mais eficiente do que aplicar ORAM à memória inteira da aplicação, pois direciona a proteção apenas às estruturas de dados sensíveis.

AWS Nitro Enclaves e confidencialidade da memória

AWS Nitro Enclaves fornece ambientes de computação isolados para processar dados altamente sensíveis (números de cartões de pagamento, registros de saúde). Diferentemente do SGX, o Nitro Enclaves isola no nível da máquina virtual, e não no nível do processo. A AWS não fornece ORAM por padrão no Nitro Enclaves, mas as garantias de confidencialidade abrangem o conteúdo da memória. Para obter privacidade dos padrões de acesso, as aplicações executadas no Nitro Enclaves devem implementar seu próprio ORAM, quando necessário.

Aplicações de ORAM no ARM TrustZone

O ARM TrustZone fornece um ambiente de execução confiável (Mundo Seguro) isolado do sistema operacional convencional. Assim como o SGX, o TrustZone não oculta inerentemente os padrões de acesso à memória. Sistemas de pesquisa como o TrustORAM (Brasser, Dmitrienko, Sadeghi, Crane, Larsen, Franz) implementam ORAM dentro do TrustZone para proteger o acesso a dados sensíveis em dispositivos móveis e na Internet das Coisas. O TrustZone está presente em todos os processadores ARM modernos, tornando o TrustZone com suporte a ORAM amplamente implantável.

ObliDB e Opaque: bancos de dados com acesso oculto

ObliDB (Eskandarian e Boneh, 2017) é um banco de dados com acesso oculto que esconde os padrões de acesso de consultas SQL padrão. Ele usa ORAM para consultas pontuais e ordenação com acesso oculto para consultas por intervalo. Opaque (Zheng, Dave, Beekman, Popa, Hellerstein, Stoica, 2017) executa consultas SQL com acesso oculto sobre o Apache Spark usando Intel SGX e ORAM. Opaque demonstra que a análise de dados em escala de produção (milhões de registros) é viável com a sobrecarga do ORAM.

Recuperação privada de informações

A recuperação privada de informações (PIR) é uma primitiva relacionada para ocultar padrões de acesso somente de leitura. A PIR permite que um cliente recupere um elemento de um banco de dados sem que o servidor descubra qual elemento foi recuperado. A PIR computacional (cPIR) alcança isso com uma sobrecarga de armazenamento no servidor de O(1) e comunicação de O(sqrt(n)) ou O(polylog n). A PIR é mais eficiente que o ORAM para cargas de trabalho somente de leitura, mas não oferece suporte a gravações com acesso oculto.

Compromissos entre ORAM e PIR

Para acesso somente de leitura, a PIR é mais eficiente em comunicação do que o ORAM: a cPIR com servidor único exige comunicação de O(n^epsilon), enquanto o ORAM exige O(log n) blocos por acesso. No entanto, a PIR exige computação no servidor (linear em relação ao tamanho do banco de dados para a PIR com servidor único), enquanto o ORAM concentra toda a computação no cliente. A PIR com vários servidores (segura no sentido teórico da informação, com 2 servidores que não colaboram) é muito eficiente e adequada para implantações de CDN.

Direções futuras para o ORAM

As direções de pesquisa em ORAM incluem: reduzir a sobrecarga de comunicação em direção ao limite inferior teórico de O(log n) (OptORAMa alcança esse limite assintoticamente), ORAM para RAM quântica (QRAM), ORAM com privacidade diferencial (ocultando se o mesmo bloco é acessado duas vezes) e ORAM em criptografia homomórfica (FHE-ORAM para computação terceirizada). A integração do ORAM com ambientes de execução confiáveis baseados em equipamento continua sendo a direção de pesquisa com maior impacto prático.

Questionário sobre os padrões de acesso do SGX

Por que o Intel SGX sozinho não consegue proteger completamente contra o vazamento de padrões de acesso?

Recapitulação: ORAM em armazenamento em nuvem e processadores seguros

O Intel SGX vaza padrões de acesso no nível de páginas e de memória cache, permitindo ataques de canal controlado e de temporização da memória cache. ZeroTrace implementa o Path ORAM dentro do SGX para eliminar esses vazamentos. Graphene-SGX e SCONE fornecem integração de ORAM no nível de contêineres. ObliDB e Opaque demonstram SQL com acesso oculto sobre ORAM em escala de produção. A PIR é uma alternativa eficiente para acesso somente de leitura. A pesquisa em ORAM continua avançando em direção ao limite inferior de comunicação de log n e à integração com criptografia homomórfica.

Perguntas Frequentes

A aula “ORAM em Armazenamento em Nuvem e Processadores Seguros” é grátis?

Sim — o texto completo de “ORAM em Armazenamento em Nuvem e Processadores Seguros” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cryptology Academy, atualize para CoddyKit PRO. O curso de Cryptology Academy inclui 4 aulas no total.

O que vou aprender em “ORAM em Armazenamento em Nuvem e Processadores Seguros”?

Explore aplicações de ORAM em ambientes de execução confiáveis (SGX, TrustZone) e bancos de dados em nuvem criptografados. Você pratica Cryptology Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Cryptology Academy?

Nenhuma experiência prévia é necessária. Cryptology Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “ORAM em Armazenamento em Nuvem e Processadores Seguros”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Cryptology Academy?

Sim. Cada aula de Cryptology Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. A Ameaça do Vazamento de Padrões de Acesso
  2. Path ORAM: Ocultando Acessos à Memória
  3. Circuit ORAM e Desempenho Prático
  4. ORAM em Armazenamento em Nuvem e Processadores Seguros
← Voltar para Cryptology Academy