115
SOLUÇÕES PARA DBAAS COM DADOS ENCRIPTADOS: MAPEANDO ARQUITETURAS” Por Marcelo Ferreira de Lima Dissertação de Mestrado Profissional Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao RECIFE, 2015

Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

“SOLUÇÕES PARA DBAAS COM DADOS

ENCRIPTADOS: MAPEANDO ARQUITETURAS”

Por

Marcelo Ferreira de Lima

Dissertação de Mestrado Profissional

Universidade Federal de Pernambuco [email protected]

www.cin.ufpe.br/~posgraduacao

RECIFE, 2015

Page 2: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

Universidade Federal de Pernambuco

CENTRO DE INFORMÁTICA

PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO

Marcelo Ferreira de Lima

“SOLUÇÕES PARA DBAAS COM DADOS

ENCRIPTADOS: MAPEANDO ARQUITETURAS"

ORIENTADOR(A): Prof. Ruy José Guerra Barretto de Queiroz

RECIFE, 2015

Este trabalho foi apresentado à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre Profissional em Ciência da Computação.

Page 3: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

Catalogação na fonte

Bibliotecário Jefferson Luiz Alves Nazareno CRB4-1758

L732s Lima, Marcelo Ferreira de.

Soluções para DBaaS com dados encriptados: mapeando arquiteturas./ Marcelo Ferreira de Lima – Recife: O Autor, 2015.

114 f.: fig., tab. Orientador: Ruy José Guerra Barretto de Queiroz. Dissertação (Mestrado profissional) – Universidade Federal de

Pernambuco. CIn, Ciência da computação, 2015. Inclui referências e apêndices.

1. Computadores- Medidas de segurança. 2. Computação em nuvem. 3. Criptografia de dados (computação). 4. Banco de dados. I. Queiroz, Ruy José Guerra Barretto de. (Orientador). II. Titulo.

005.8 CDD (22. ed.) UFPE-MEI 2015-140

Page 4: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

Dissertação de Mestrado Profissional apresentada por Marcelo Ferreira de Lima à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco, sob o título, “Soluções para DBaaS com Dados Encriptados: Mapeando Arquiteturas” , orientada pelo Professor Ruy José Guerra Barretto de Queiroz e aprovada pela Banca Examinadora formada pelos professores:

_______________________________________________ Prof. Robson do Nascimento Fidalgo

Centro de Informática / UFPE ______________________________________________ Prof. Jairo Simião Dornelas Centro de Ciências Sociais Aplicadas / UFPE

_______________________________________________ Prof. Ruy José Guerra Barretto de Queiroz Centro de Informática / UFPE Visto e permitida a impressão. Recife, 11 de agosto de 2015. ___________________________________________________ Profª. EDNA NATIVIDADE DA SILVA BARROS Coordenadora da Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco.

Page 5: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

AGRADECIMENTOS

Ao meu orientador Ruy José Guerra Barretto de Queiroz por ter me orientado

na construção deste trabalho e ter oportunizado o aprofundamento em temas tão

interessantes e desafiadores. Ao amigo e vizinho Gliner Dias Alencar, parceiro

frequente de estudos e pesquisas, por ter me auxiliado com discussões tão

construtivas sobre os estudos considerados nesta pesquisa. Ao amigo Robson

Godoi de Albuquerque Maranhão pelo exemplo de dedicação e pelas profundas

discussões sobre suas experiências com métodos científicos. Aos professores das

disciplinas do mestrado e à Leila Oliveira, pela sua presteza e disponibilidade. À

Cecília, minha filha linda, pelo simples fato de existir. Meu agradecimento especial

à minha esposa, Rayanna, minha metade indivisível. À minha mãe e ao meu pai,

por não medirem esforços por mim. Meu muito obrigado aos que de alguma forma

me apoiaram.

Agradeço a Deus.

Page 6: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

RESUMO

Com a popularização crescente do modelo de computação em nuvem oferecendo

serviços em cada uma das camadas de Software-as-a-Service (SaaS), Platform-as-

a-Service (PaaS) e Infrastructure-as-a-Service (IaaS), começaram a surgir

provedores que disponibilizam o serviço específico de Database-as-a-Service

(DBaaS), cuja ideia básica é disponibilizar bancos de dados na nuvem. Entretanto,

a inviabilidade de execução de operações, consultas e alterações, sobre dados

encriptados em serviços DBaaS é um fator que afasta os clientes da possibilidade

de levar seus dados para a nuvem. Proprietários de dados e provedores de nuvem

anseiam por sistemas criptográficos completamente homomórficos como uma

solução. Mas não existe qualquer perspectiva a curto ou médio prazo de que estes

sistemas possam ser computacionalmente viáveis. Atualmente pesquisas buscam

construir soluções que utilizam sistemas criptográficos viáveis que possibilitem a

execução de operações sobre dados encriptados no provedor de DBaaS. Um

estudo, precursor e destacado, baseia sua solução em uma arquitetura Proxy,

modelo que não é unanimidade para este tipo de solução. Esta pesquisa, baseada

em mapeamento sistemático, busca iniciar uma discussão mais profunda sobre

modelos de arquitetura para DBaaS e apresenta como principais contribuições: (i)

um catálogo de estudos com propostas de soluções, organizado por modelo de

arquitetura, (ii) a determinação de uma tendência na escolha de arquiteturas,

considerando o estado da arte, (iii) uma investigação de um direcionamento

concreto, apontando vantagens e desvantagens, com base nos estudos

catalogados, sobre a adoção da arquitetura Proxy em soluções encriptadas de

computação em nuvem para DBaaS e (iv) apontar uma lista consistente de questões

em aberto acerca das soluções para banco de dados encriptados, com base em

dados extraídos dos estudos catalogados.

Palavras-Chave : Criptografia. Privacidade. Database-as-a-service. DBaaS.

Computação em Nuvem. Arquitetura. Segurança da Informação.

Page 7: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

ABSTRACT

With the growing popularity of cloud computing model, offering services in each of

the layers of Software-as-a-Service (SaaS), Platform-as-a-Service (PaaS) and

Infrastructure-as-a-Service (IaaS), began to emerge providers that provide the

specific service Database-as-a-Service (DBaaS), whose basic idea is to provide

databases in the cloud. However, the impossibility of executing operations, queries

and changes on encrypted data in DBaaS services is a factor that keeps customers

the possibility to bring your data to the cloud. Owners of data and cloud providers

crave fully homomorphic cryptosystems as a solution. But there is no prospect in the

short or medium term that these systems can be computationally feasible. Currently

research seek to build solutions using viable cryptographic systems that allow the

execution of operations on encrypted data on DBaaS provider. One study, precursor

and highlighted, bases its solution on a Proxy architecture model, that is no unanimity

for this type of solution. This research, based on systematic mapping, search start a

deeper discussion of architectural models for DBaaS and presents as main

contributions: (i) a catalog of studies with proposed solutions, organized by

architectural model, (ii) the determination of a tendency in choosing architectures,

considering the state of the art and (iii) an investigation of a concrete direction,

pointing advantages and disadvantages, based on cataloged studies, on the

adoption of Proxy architecture over cloud computing encrypted solutions to DBaaS

and (iv) point to a consistent list of open questions about the solutions for encrypted

database, based on data extracted from cataloged studies.

Keywords : Encryption. Privacy. Database-as-a-service. DBaaS. Clouding

Computing. Architecture. Information Security.

Page 8: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

LISTA DE FIGURAS

Figura 2.1: Arquitetura de computação em nuvem .............................................................. 22

Figura 2.2: Entidades envolvidas no modelo DBaaS ........................................................... 24

Figura 2.3: Ameaças e componentes do CryptDB ............................................................... 28

Figura 4.1: Visão simplificada do mapeamento sistemático ................................................. 38

Figura 4.4: String de busca escolhida .................................................................................. 40

Figura 4.3: Fluxo de execução do protocolo do mapeamento sistemático .......................... 42

Figura 4.5: Arquitetura e modelo de tratamento de ameaças do CryptDB .......................... 44

Figura 4.6: Arquitetura de Wang, Agrawal e Abbadi (2011) ................................................. 45

Figura 4.7: Arquitetura do MimoSecco ................................................................................. 46

Figura 4.8: Arquitetura do SDB ............................................................................................. 47

Figura 4.9: Arquitetura proposta por Ferretti et al. (2013) .................................................... 48

Figura 4.10: Arquitetura geral do Cipherbase ....................................................................... 49

Figura 4.11: Arquitetura do Monomi ..................................................................................... 50

Figura 4.12: Arquitetura geral da solução de Shatilov et al. (2014) ..................................... 51

Figura 4.13: Arquitetura do MuteDB ..................................................................................... 52

Figura 4.14: Arquitetura geral do SecureDBaaS .................................................................. 53

Figura 4.15: Arquitetura geral do TrustedDB ........................................................................ 54

Figura 4.16: Arquitetura do L-EncDB .................................................................................... 55

Figura 4.17: Arquitetura da solução de Lu e Tsudik (2011) ................................................. 56

Figura 4.18: Arquitetura da solução de Asghar et al. (2013) ................................................ 58

Figura 4.19: Arquitetura do Blind Seer ................................................................................. 59

Figura 4.20: Arquitetura de Trombetta, Persiano e Braghin (2014) ..................................... 60

Figura 4.21: Arquitetura do DBMask .................................................................................... 61

Figura 4.22: Sugestão de arquitetura de Liu et al. (2014) .................................................... 62

Page 9: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

LISTA DE GRÁFICOS

Gráfico 4.1: Estudos encontrados por fonte ......................................................................... 40

Gráfico 4.3: percentual total de atendimento a cada pergunta ............................................. 63

Gráfico 4.4: percentual total de arquiteturas aplicadas ........................................................ 65

Gráfico 4.5: quantidade de arquiteturas implementadas no tempo ...................................... 65

Gráfico 4.6: percentual de utilização de Proxy e Cliente-servidor ........................................ 66

Gráfico 4.7: estimativa e tendência para Proxy e Cliente-servidor....................................... 67

Gráfico 4.9: Percentual de estudos que permitem interferência na encriptação .................. 72

Gráfico 4.10: Percentual de estudos que permitem dados em texto claro ........................... 72

Gráfico 4.11: Estudos que utilizam abordagem de cebola e/ou múltiplas colunas .............. 73

Page 10: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

LISTA DE QUADROS

Quadro 3.1 - Algoritmos parcialmente homomórficos e operações ..................................... 34

Quadro 4.1 - Categoria e ano dos estudos catalogados ...................................................... 64

Page 11: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

LISTA DE TABELAS

Tabela 4.1: Resultados da etapa 1 da seleção .................................................................... 41

Tabela 4.2: Resultados da etapa 2 da seleção .................................................................... 41

Tabela 4.3: Utilização de Proxy e Cliente-servidor ............................................................... 66

Tabela 4.4: Quantificando vantagens e desvantagens do modelo Proxy ............................ 68

Page 12: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

SUMÁRIO

1. INTRODUÇÃO ................................................................................................................................13

1.1 APRESENTAÇÃO .............................................................................................................................. 14

1.2 MOTIVAÇÃO E JUSTIFICATIVA ........................................................................................................ 15

1.3 PROBLEMA E QUESTÃO DE PESQUISA ............................................................................................ 17

1.4 OBJETIVO GERAL ............................................................................................................................. 17

1.5 OBJETIVOS ESPECÍFICOS ................................................................................................................. 18

1.6 ESTRUTURA DA DISSERTAÇÃO ....................................................................................................... 18

2. COMPUTAÇÃO EM NUVEM E DATABASE-AS-A-SERVICE (DBAAS) ..................................................20

2.1 COMPUTAÇÃO EM NUVEM ............................................................................................................ 21

2.2 DATABASE-AS-A-SERVICE (DBAAS) ................................................................................................. 23

2.3 APRESENTAÇÃO DO CRYPTDB ........................................................................................................ 26

2.4 TRABALHOS CORRELATOS .............................................................................................................. 28

3. NOÇÕES DE CRIPTOGRAFIA ...........................................................................................................30

3.1 CRIPTOGRAFIA SIMÉTRICA E ASSIMÉTRICA .................................................................................... 31

3.2 HOMOMORFISMO .......................................................................................................................... 32

3.2.1 Encriptação Parcialmente Homomórfica (PHE) .................................................................... 33

3.2.2 Encriptação Completamente Homomórfica (FHE) ................................................................ 34

4. SOLUÇÕES BASEADAS EM CRIPTOGRAFIA PARA DBAAS ................................................................36

4.1 APRESENTAÇÃO .............................................................................................................................. 37

4.2 MÉTODO DA PESQUISA .................................................................................................................. 37

4.3 CICLO DA PESQUISA E O MAPEAMENTO SISTEMÁTICO ................................................................. 39

4.4 ESTUDOS CATALOGADOS NA EXECUÇÃO DA PESQUISA ................................................................ 43

4.4.1 CryptDB: Protecting Confidentiality with Encrypted Query Processing ................................ 43

4.4.2 A Comprehensive Framework for Secure Query Processing on Relational Data in the Cloud

44

4.4.3 Mimosecco: A Middleware for Secure Cloud Storage .......................................................... 45

4.4.4 Secure Query Processing with Data Interoperability in a Cloud Database Environment ..... 46

4.4.5 Security and confidentiality solutions for public cloud database services ........................... 47

4.4.6 Orthogonal security with Cipherbase ................................................................................... 48

4.4.7 Processing Analytical Queries over Encrypted Data ............................................................. 49

Page 13: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

4.4.8 Solution for Secure Private Data Storage in a Cloud ............................................................. 50

4.4.9 Scalable architecture for multi-user encrypted SQL operations on cloud database services

51

4.4.10 Distributed, Concurrent, and Independent Access to Encrypted Cloud Databases .............. 52

4.4.11 TrustedDB: A Trusted Hardware-Based Database with Privacy and Data Confidentiality .... 54

4.4.12 L-EncDB: A lightweight framework for privacy-preserving data queries in cloud computing

55

4.4.13 Enhancing Data Privacy in the Cloud .................................................................................... 56

4.4.14 Supporting Complex Queries and Access Policies for Multi-user Encrypted Databases ...... 57

4.4.15 Blind Seer: A Scalable Private DBMS ..................................................................................... 58

4.4.16 Processing Private Queries Over an Obfuscated Database Using Hidden Vector Encryption

59

4.4.17 DBMask: Fine-Grained Access Control on Encrypted Relational Databases ......................... 60

4.4.18 SQL-Based Fuzzy Query Mechanism Over Encrypted Database ........................................... 62

4.5 ANÁLISE SOBRE ESTUDOS CATALOGADOS ..................................................................................... 63

4.5.1 Avaliação de Qualidade dos Estudos .......................................................................................... 63

4.5.2 Análise Sobre os Modelos de Arquitetura .................................................................................. 64

4.5.3 Dados Adicionais Sobre o Estado-da-arte .................................................................................. 71

5. CONSIDERAÇÕES FINAIS ................................................................................................................74

5.1 SÍNTESE DA ANÁLISE........................................................................................................................... 75

5.2 RESOLUÇÃO DOS OBJETIVOS PROPOSTOS ......................................................................................... 75

5.3 CONCLUSÕES E TRABALHOS FUTUROS .............................................................................................. 77

REFERÊNCIAS ..........................................................................................................................................81

APÊNDICE ...............................................................................................................................................96

A. PROTOCOLO DO MAPEAMENTO SISTEMÁTICO ................................................................................... 96

B. ESTUDOS EXCLUÍDOS NA SEGUNDA ETAPA DA SELEÇÃO .................................................................. 109

B.1 Lista de Estudos Excluídos na Segunda Etapa da Seleção ........................................................... 110

C. RELAÇÃO DE ESTUDOS CATALOGADOS .............................................................................................. 112

C.1 Lista de Estudos Catalogados ...................................................................................................... 113

Page 14: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

13

1

1. Introdução

Nesta seção constam a apresentação do trabalho, motivação e justificativa,

problema de pesquisa, objetivos e uma descrição de como está estruturado o

trabalho.

Page 15: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

14

1.1 Apresentação

A computação em nuvem permite que usuários usufruam da computação

alheios a boa parte da complexidade e com custos menores. Ao invés de adquirir

infraestrutura, tudo pode ser utilizado como serviço, acessado por comunicação via

Internet. O cliente espera algumas vantagens ao usar a nuvem como, por exemplo,

reduzir custos com infraestrutura e operação, fornecer um serviço escalável e

reduzir seus riscos de negócio (EUA, 2011; ZHANG; CHENG; BOUTABA, 2010). Os

provedores de nuvem precisam garantir certas capacidades (EUA, 2011) para

garantir as vantagens esperadas por seus clientes.

No contexto de computação em nuvem os mais diversos serviços podem ser

oferecidos nas camadas de Software-as-a-Service (SaaS), Platform-as-a-Service

(PaaS) e Infrastructure-as-a-Service (IaaS) (ZHANG; CHENG; BOUTABA, 2010).

Esta pesquisa está situada em um serviço específico, o Database-as-a-Service

(DBaaS). Disponibilizar um banco de dados na nuvem para atender aos mais

variados clientes é viável. Provedores da nuvem já comercializam DBaaS, como o

Microsoft Azure, Oracle Cloud e Amazon RDS. Entretanto, a inviabilidade de

executar operações, consultar e alterar dados encriptados em serviços DBaaS

afasta os clientes.

A encriptação homomórfica pode ser promissora (MICCIANCIO, 2010).

Sistemas homomórficos permitem operações sobre dados encriptados. Porém,

estes sistemas não são viáveis (GENTRY, 2009a) ou estão limitados a um único tipo

de operação (PAILLIER, 1999). Portanto, alguns estudos usam sistemas

criptográficos viáveis para operar sobre dados encriptados no servidor. O CryptDB

de Popa et al. (2011), considerado um marco, segue esta linha e obteve destaque

na comunidade científica e na imprensa (FORBES, 2011). Embora o CryptDB utilize

arquitetura Proxy, esta arquitetura não se mostrou unanimidade em outras soluções

ao longo do tempo.

Page 16: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

15

Esta pesquisa mapeia estudos de forma sistemática em busca respostas sobre

arquiteturas utilizadas em banco de dados encriptados para DBaaS. O mapeamento

prevê a extração de dados a partir dos estudos. Análises sobre os dados permitiram

encontrar tendências em relação a escolha das arquiteturas e lacunas na área

pesquisada. As contribuições desta pesquisa são: apresentação de um catálogo de

estudos com soluções de banco de dados encriptados para DBaaS, determinação

de tendências na escolha de arquiteturas, investigação de impactos da arquitetura

Proxy em soluções encriptadas para DBaaS e uma lista de problemas em aberto

sobre banco de dados encriptados para DBaaS.

1.2 Motivação e Justificativa

Em algumas situações, manter informações em sigilo é uma necessidade.

Antes do surgimento dos computadores e ao longo do tempo diversas formas de

garantir privacidade e sigilo foram empregadas. Porém, com a proliferação de

ambientes digitais a segurança precisava ser garantida neste cenário. Foram

criados algoritmos que procuram manter os dados acessíveis somente por pessoas

com privilégio legítimo.

Atualmente os algoritmos criptográficos mais utilizados baseiam sua

segurança na chave criptográfica. Portanto, alguém mal-intencionado poderia ter

conhecimento sobre o código fonte do algoritmo. Os paradigmas mais difundidos

englobam os algoritmos simétricos e os assimétricos. Em ambos os casos,

convencionalmente, exige-se a desencriptação do dado antes que uma operação

seja realizada sobre ele.

Existem situações concretas nas quais é preciso utilizar dados encriptados

sem desencriptá-los, preservando o sigilo e privacidade. Por exemplo, um órgão

precisa acessar dados das unidades de saúde de um país para criação de políticas

públicas. Se simplesmente utilizar criptografia simétrica ou assimétrica este órgão

Page 17: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

16

teria que ter acesso aos dados desencriptados. Isto fragiliza o sigilo e a privacidade

de pacientes com suas respectivas doenças. Um cenário como este também é

possível no caso de organizações que precisam consultar informações em grandes

bases de dados mineráveis e que contenham dados encriptados.

Generalizando o problema, percebe-se que manter dados na nuvem impede

que operações sejam realizadas eficientemente sem comprometer a segurança. A

encriptação homomórfica poderia contribuir para solucionar ou minimizar problemas

de algumas áreas de pesquisa. Se beneficiariam, por exemplo, estudos sobre

computação delegada, Secure Multi-Party Computation (SMPC), busca sobre dados

encriptados e máquinas de aprendizado sobre dados encriptados.

Existem expectativas sobre o uso da Encriptação Completamente

Homomórfica, do inglês Fully Homomorphic Encryption (FHE). Com FHE seria

possível realizar arbitrariamente operações sobre dados encriptados. Ou seja, a

garantia de sigilo permanece, porque os dados não são acessados, apenas o

resultado da operação realizada sobre eles é obtido. Certos esquemas possuem

estas propriedades, mas ainda não são viáveis (GENTRY, 2009a; GENTRY, 2009b;

GENTRY, 2010).

Devido às limitações da FHE, estudos vêm investindo em técnicas viáveis

para alcançar segurança em soluções Database-as-a-service (DBaaS). Estas

pesquisas utilizam técnicas como, por exemplo, Encriptação Parcialmente

Homomórfica, do inglês Partially Homomorphic Encryption (PHE), Criptografia

Assimétrica e Criptografia Simétrica. As incertezas sobre a segurança do

armazenamento de dados na nuvem afastam os clientes.

Baseadas em técnicas criptográficas viáveis, soluções com as mais variadas

abordagens foram propostas nos últimos anos. Porém, em 2011 um modelo

proposto ganhou notoriedade (POPA et al., 2011). Alguns fundamentos deste

projeto, de pesquisadores do Massachusetts Institute of Technology – MIT,

Page 18: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

17

chegaram a ser utilizados pela empresa Google em seu serviço na nuvem de dados

massivos (GOOGLE, 2014).

Considerando o cenário exposto, hospedar dados sob o modelo DBaaS ainda

precisa evoluir nos aspectos de segurança. Estudar os esforços para alcançar este

objetivo é o principal fator motivador para este trabalho.

1.3 Problema e Questão de Pesquisa

Considerando a solução de referência proposta por Popa et al. (2011), os

esquemas criptográficos desenvolvidos, os modelos de arquiteturas propostos nos

estudos correlatos, as ferramentas implementadas sobre tais modelos e, de forma

geral, todos os esforços que vêm sendo feitos para viabilizar o armazenamento e

processamento de dados em ambientes DBaaS, persiste a seguinte pergunta:

“O modelo baseado em arquitetura Proxy é promissor

quanto a tornar-se uma solução para sistemas gerenciadores de

banco de dados na nuvem sob o modelo DBaaS, garantindo

aplicabilidade, privacidade e sigilo sobre os dados?”.

1.4 Objetivo Geral

O objetivo geral desta pesquisa é analisar a arquitetura Proxy, modelo do

CryptDB, comparando-a com outras propostas e apontando tendências. Espera-se

avaliar a viabilidade da arquitetura sob o modelo Database-as-a-Service (DBaaS).

Espera-se também mapear lacunas nas pesquisas sobre soluções DBaaS seguras.

Page 19: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

18

1.5 Objetivos Específicos

São objetivos específicos para este trabalho:

• Executar um mapeamento sistemático que apresente um catálogo de estudos,

organizado por tipo de arquitetura, sobre bancos de dados encriptados para

DBaaS;

• Apontar tendências na escolha de arquiteturas e situar a arquitetura Proxy nestas

tendências;

• Apontar impactos da adoção da arquitetura Proxy quando aplicada em Database-

as-a-Service (DBaaS).

• Levantar problemas em aberto, direcionando trabalhos futuros, sobre banco de

dados encriptados para DBaaS.

1.6 Estrutura da Dissertação

Este documento foi estruturado para viabilizar o melhor entendimento dos

temas abordados, da execução da pesquisa, das análises realizadas e dos

resultados obtidos. Abaixo a organização utilizada:

• Seção 1 – Introdução: apresenta o trabalho, motivação e justificativa,

problema de pesquisa, objetivos e esta descrição da estruturação do

documento.

• Seção 2 – Computação em Nuvem e Database-as-a-service (DBaaS):

introduz os principais conceitos sobre computação em nuvem e situa o modelo

de Database-as-a-Service (DBaaS) neste contexto.

Page 20: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

19

• Seção 3 – Noções de Criptografia: esclarece conceitos sobre tipos de

sistemas criptográficos utilizados nas propostas de soluções para DBaaS.

• Seção 4 – Soluções Baseadas em Criptografia para DB aaS: apresenta

a pesquisa, o método e o ciclo da pesquisa, descreve os estudos catalogados

e reporta os resultados.

• Seção 5 – Considerações Finais : revê objetivos, fornece um resumo dos

pontos mais relevantes e observa questões para trabalhos futuros.

• Referências: lista as referências citadas ao longo do trabalho.

• Apêndice A: descreve o Protocolo do Mapeamento Sistemático.

• Apêndice B: lista de estudos excluídos na segunda etapa da seleção.

• Apêndice C: reporta a lista com todos os estudos catalogados.

Page 21: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

20

2

2. Computação em Nuvem e

Database-as-a-service (DBaaS)

Esta seção introduz os principais conceitos sobre computação em nuvem e

situa o modelo de Database-as-a-Service (DBaaS) neste contexto.

Page 22: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

21

2.1 Computação em Nuvem

A computação em nuvem começou a ficar mais conhecida em 2006

quando Eric Schmidt, então CEO da Google, usou o termo “nuvem”. Ele

descrevia um modelo de negócio para fornecimento de serviços na Internet.

Mas ideias fundamentais para este paradigma já ocorriam a mais tempo. O

livro de Parkhill (1966) já falava de aspectos da nuvem, mas usando o termo

Utility Computing. A computação em nuvem pode ser percebida como uma

realização da Utility Computing (ZHANG; CHENG; BOUTABA, 2010). A

definição do National Institute of Standards and Technology (NIST) sobre

computação em nuvem atende aos objetivos desta pesquisa:

“Computação em nuvem é um modelo para permitir

o acesso ubíquo, conveniente, sob demanda à rede para um

pool compartilhado de recursos computacionais configuráveis

(ex., redes, servidores, armazenamento, aplicações e

serviços) que podem ser provisionados rapidamente e

liberados com um esforço mínimo de gerenciamento ou

interação com o provedor” (EUA, 2011, p.2).

EUA (2011) também define cinco características essenciais para o

modelo de computação em nuvem:

• Autosserviço sob demanda : o consumidor pode provisionar

recursos, de forma unilateral, automática e sem interação humana com

o provedor da nuvem;

• Acesso à rede : os serviços estão disponíveis por rede, por meio de

mecanismos padrão, para diversos tipos de dispositivos;

• Pool de recursos : o provedor deve contar com um pool de recursos

usados de forma dinâmica, a depender da demanda dos clientes;

Page 23: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

22

• Elasticidade rápida : capacidades devem ser providas ou liberadas

acompanhando a demanda dos clientes a qualquer tempo ou

quantidade;

• Serviço mensurável : o uso dos recursos precisa ser monitorado,

controlado e reportado de forma transparente para o consumidor e o

próprio provedor.

Zhang, Cheng e Boutaba (2010) apontam como vantagens do uso de

computação em nuvem: sem investimento inicial em infraestrutura, baixo

custo de operação, alta escalabilidade, acesso fácil e redução de riscos de

negócio e despesas com manutenção. A Figura 2.1 ilustra a arquitetura em

camadas da computação em nuvem descrita por Rimal et al. (2009). O

estudo de Zhang, Cheng e Boutaba (2010) usa uma divisão similar.

Entretanto, inclui o hardware, juntamente com ferramentas de virtualização

e armazenamento em bloco, na camada de Infrastructure-as-a-Service

(IaaS). Reduzindo a visão para três camadas.

Figura 2.1: Arquitetura de computação em nuvem

Fonte: RIMAL et al., 2009

Quanto ao modelo de negócio, a ideia é que cada camada atue como

provedora de serviço para uma outra camada e para o usuário final.

Segundo Zhang, Cheng e Boutaba (2010) e EUA (2011), as nuvens podem

ser classificadas quanto ao tipo de acordo com as seguintes características.

Nuvens públicas são mantidas por provedores que oferecem os

serviços para o público em geral. Dados armazenados neste tipo de nuvem

Page 24: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

23

podem sofrer com problemas de privacidade e sigilo. Nuvens privadas são

de uso exclusivo da organização. Embora este tipo alcance maior

segurança, tem custo alto por não compartilhar recursos. Um modelo de

nuvem comunitária é considerado por Subashini e Kavitha (2011). Difere da

nuvem privada por os recursos e custos divididos entre duas ou mais

organizações.

As nuvens híbridas combinam nuvens privadas e nuvens públicas.

Requerem um projeto muito cauteloso sobre a divisão do que será mantido

na infraestrutura privada ou pública. Herda características dos tipos de

nuvem privadas e públicas. As nuvens virtualmente privadas rodam em uma

infraestrutura pública, mas permitem ao contratante usar Virtual Private

Network (VPN) para projetar configurações. Neste tipo a comunicação

subjacente também é virtualizada.

2.2 Database-as-a-Service (DBaaS)

Antes da popularização do termo computação em nuvem, o estudo

de Hacigumus, Iyer e Mehrotra (2002) trouxe a ideia de Database-as-a-

Service (DBaaS). Foram inspirados pela ideia de software-as-a-service,

baseada em Applications Services Providers (ASP), mas propunham o

banco de dados como objeto central da iniciativa de outsourcing. A proposta

de solução dos autores explora o fato de que bancos de dados tendem a

crescer, e administrá-los pode se tornar complexo e custoso.

O trabalho de Hacigumus, Iyer e Mehrotra (2002) já considerava

privacidade dos dados como um desafio na implementação de DBaaS. A

implementação proposta já considerava uma forma de encriptar os dados

no DBMS. Entretanto, usava uma abordagem incipiente que não fornecia

garantias robustas de privacidade e sigilo.

Page 25: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

24

A ideia principal do DBaaS é que toda a administração do banco de

dados seja feita pelo provedor de serviços. O contratante pode se ocupar

com suas necessidades específicas de dados e com o core business.

Estudos (WONG et al., 2014; LU; TSUDIK, 2011; PAPPAS et al.,

2014; TROMBETTA; PERSIANO; BRAGHIN, 2014; SARFRAZ et al., 2015;

POPA et al., 2011; TU et al., 2013; FERRETTI et al., 2014b) que propõem

soluções em DBaaS consideram as seguintes entidades envolvidas no

funcionamento da solução:

• Proprietário dos dados (data owner): responsável pela integridade,

privacidade e por especificar controles de acesso sobre os dados;

• Usuário: pessoa que utiliza os dados do sistema;

• Servidor: ambiente que armazena os dados e, preferencialmente,

realiza todo o processamento para disponibilizá-los;

• Cliente: porção do sistema que permite a interação com os dados

hospedados no servidor.

A Figura 2.2 ilustra estas entidades e a relação entre elas. No cenário

DBaaS a característica imutável é que os dados devem estar armazenados

no provedor de serviços em nuvem.

Figura 2.2: Entidades envolvidas no modelo DBaaS

Fonte: elaborada pelo autor

Page 26: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

25

Em uma situação real a distribuição das entidades e as suas funções

pode variar. Entretanto, os dados sempre ficam sob a guarda do provedor

de DBaaS. Em se tratando de um serviço de nuvem pública, este ambiente

não é assumido como confiável.

Manter dados sob a guarda do proprietário exige cuidados com

segurança, mas passar esta guarda para um terceiro pode exigir muito mais

cuidados. O terceiro, no caso o provedor de DBaaS, pode se enquadrar em

um perfil de ameaça. Honesto e curioso (curious-but-honest) e malicioso são

perfis frequentes (GOLDREICH, 2004; KATZ; LINDELL, 2015).

Honesto e curioso é restrito, pois o provedor atua de forma passiva,

apenas observando. Isto é possível com seus privilégios. O tipo malicioso é

irrestrito, agindo ativamente, subvertendo protocolos e interferindo no

processamento. O tipo honesto e curioso é considerado factível

(VIMERCATI et al., 2007), pois atuar ativamente pode deixar rastros

detectáveis. Descobrir uma prática como esta poderia abalar a confiança

dos clientes sobre o provedor.

Perfis de ameaça podem estar associados à outras entidades do

modelo. O usuário pode ser considerado completamente confiável, mas em

determinadas situações ele poderia participar de um conluio com insiders

do provedor (FERRETTI et al., 2014b; ASGHAR et al., 2013). As soluções

para DBaaS devem contar com um modelo de segurança. Este modelo

contempla a descrição do perfil de ameaça para as entidades envolvidas.

As variadas propostas de solução para DBaaS apontam o uso da

criptografia para tentar garantir um nível de segurança satisfatório. As

primeiras propostas guardavam na nuvem o banco de dados encriptado. No

momento da consulta o todo o banco poderia ser trazido para o cliente e

desencriptado. Evidentemente esta não é uma boa escolha em termos de

flexibilidade, desempenho e escalabilidade.

Page 27: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

26

A solução de Hacigumus, Iyer e Mehrotra (2002) encripta e

desencripta os dados no próprio servidor, por meio de User Defined

Functions (UDF). Mas o usuário precisa passar a chave para o servidor que

é, no mínimo, honesto e curioso. Portanto, a segurança é fortemente

comprometida.

Processar consultas no servidor sem desencriptar dados pode ser

observada pode combinar eficiência e mais segurança. Esta abordagem

precisa que operações tradicionais sejam convertidas em operações que

manipulem dados encriptados no servidor. Algumas soluções nesta linha

funcionam com um DBMS de mercado não modificado (LI et al., 2015;

FERRETTI et al., 2013; POPA et al., 2012), mas outras exigem modificações

e uso de hardware específico (BAJAJ; SION, 2014; ARASU et al., 2013).

A criptografia se mostra essencial na garantia da segurança dos

dados em servidor na nuvem. Mas as pesquisas se deparam com muitos

desafios. Na busca por superá-los a proposta de Popa et al. (2011) resultou

em destaque na comunidade científica, sendo referenciada em diversos

outros estudos, servindo de base para novas propostas e sendo até citada

na imprensa (FORBES, 2011; GENTRY et al., 2014; TOPLE et al., 2013;

STEPHEN et al., 2014).

2.3 Apresentação do CryptDB

O CryptDB (POPA et al., 2011) destaca-se pelo pioneirismo em

implementar soluções para vários problemas sobre banco de dados

encriptados na nuvem. Os autores identificam a proposta como um caminho

para o modelo de Database-as-Service (DBaaS).

O CryptDB é um proxy confiável e usa abordagens de ajuste de SQLs

e esquemas criptográficos. Assim o DBMS não confiável executa consultas

sobre dados encriptados de forma transparente. A solução cobre duas

Page 28: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

27

ameaças: (I) atacantes com privilégios de acesso aos dados, como

funcionários bisbilhoteiros do provedor e (II) ataques arbitrários que

comprometam qualquer componente.

Para tratar a ameaça (I), são utilizadas camadas de encriptação,

como em uma cebola. O CryptDB decide sobre qual camada requisitará os

dados a depender da consulta executada. As camadas utilizam esquemas

criptográficos com níveis de segurança diferentes.

As camadas RND e DET utilizam os sistemas criptográficos AES e

Blowfish de forma não determinística e determinística, respectivamente. A

camada OPE trata ordenação de dados, mas vaza para o DBMS a ordem

de itens de consultas. Antes do CryptDB o esquema OPE proposto por

Boldyreva et al. (2009) não tinha implementação e aferições conhecidas. A

camada HOM utiliza o sistema PHE aditivo de Paillier (PAILLIER, 1999). A

camada JOIN e OPE-JOIN trata equi-joins e range-joins sem vazamentos

para o DBMS. A camada SEARCH permite o operador LIKE.

Para tratar a ameaça (II) cabe ao desenvolvedor da aplicação aplicar

políticas de usuários usando anotações que são armazenadas no CryptDB.

Por meio de principals o mecanismo permite definir quem pode acessar

cada item de dado. Com base nas anotações o CryptDB realiza o

gerenciamento de chaves. O CryptDB tem acesso às chaves criptográficas

por meio da senha do usuário autenticado.

Com esta estratégia a solução limita o vazamento de informações aos

usuários que estão autenticados no momento do comprometimento do

ambiente. Os usuários que não estão ativos no sistema neste momento

terão a privacidade e o sigilo dos dados garantidos. A Figura 2.3 ilustra a

distribuição da solução dentro do modelo de segurança assumido, um

exemplo de acesso aos dados por um tipo de cliente e a cobertura sobre os

dois tipos de ameaças.

Page 29: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

28

Figura 2.3: Ameaças e componentes do CryptDB

Fonte: elaborada pelo autor

2.4 Trabalhos Correlatos

Uma revisão bibliográfica levantou estudos correlatos que cobrem

desafios e soluções envolvendo bancos de dados na nuvem. Todos

guardam algumas similaridades com esta pesquisa, mas diferem em outros

aspectos.

O estudo de Shankarwar e Pawar (2014) seguem a mesma linha,

mas enfatizam soluções e oferecem uma cronologia sobre elas. Destacam

pontos de pesquisa em aberto. Dinadayalan, Jegadeeswari e Gnanambigai

(2014) destacam nove princípios de segurança nuvem, além de descrever

algumas ações e ferramentas. Shahzad (2014) revisita as capacidades

definidas por EUA (2011) e levanta a possibilidade de um economic

Distributed Denial of Service (eDDoS). Keshavarzi, Haghighat e Bohlouli

(2013) trazem a perspectiva de impacto sobre os negócios das empresas.

Esta pesquisa difere bastante dos trabalhos citados até aqui por não

endereçar problemas genéricos de segurança na nuvem e suas possíveis

soluções. Mas tem em comum o fato de se basear nos conceitos e no

modelo de competências aceito por estes estudos para suas avaliações.

No estudo de Dara (2013) é possível verificar uma extensa lista de

técnicas que podem ser aplicadas para garantir a privacidade dos dados na

nuvem. O estudo de Aljafera et al. (2014) segue a mesma linha, enfatiza

Page 30: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

29

detalhes dos esquemas criptográficos e fornece um experimento

comparativo entre eles. Diferentemente destes dois últimos estudos, esta

pesquisa não se propõe a estudar esquemas criptográficos. Mas deve

passar por eles para elucidar o funcionamento das soluções avaliadas.

O estudo de Mehak et al. (2014) guarda mais proximidade com esta

pesquisa. Considera as capacidades de computação em nuvem e

características de arquiteturas DBaaS para uma avaliação de segurança.

Levanta problemas serem enfrentados por DBaaS e mecanismos para

enfrentá-los. Entretanto, tem conclusões pautadas em bases conceituais e

não apresenta um levantamento sistemático sobre estudos.

Outro estudo que se aproxima mais desta pesquisa é o de Basharat,

Azam e Muzaffar (2012). Mas avalia apenas cinco estudos sob aspectos de

segurança. Os estudos avaliados são de uma época anterior às propostas

atuais. Também não indica a aplicação de um levantamento sistemático.

A pesquisa atual, embora se assemelhe a outros estudos em alguns

aspectos, tem características próprias e busca por meio delas atingir seus

objetivos.

Page 31: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

30

3

3. Noções de Criptografia

Esta seção busca esclarecer alguns conceitos sobre técnicas criptográficas

que atualmente são usadas nas propostas de soluções para DBaaS, bem

como outras que, embora não sejam viáveis, são tidas como uma possível

solução para muitos desafios.

Page 32: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

31

3.1 Criptografia Simétrica e Assimétrica

Atualmente existem dois tipos de algoritmos criptográficos bastante

difundidos. Os mais antigos são os simétricos. Levam este nome porque

uma chave igual é utilizada. Consequentemente, o remetente de uma

mensagem precisa compartilhar a chave com o destinatário. Seu

funcionamento geral pode ser representado da seguinte forma:

Enck(M) = C e Deck(C) = M, logo Deck(Enck(M)) = M

Ao receber um texto claro M e uma chave K, a função Enc

entregará C, que é o texto encriptado. A função Dec executa a operação

inversa, retornando o texto original M a partir de C e da chave K. A opção

por algoritmos simétricos recai sempre no problema da distribuição de

chaves de forma segura. O AES (EUA, 2001) é um exemplo de algoritmo

simétrico. O fato de ser um padrão estimula a sua adoção. Ele foi pensado

para ser flexível, por isso admite três tamanhos de chave e de quantidades

de rodadas.

Diante da inquietude gerada pelo problema de compartilhamento

de chaves, Diffie e Hellman anunciaram em um estudo: “nós estamos à beira

de uma revolução na criptografia” (DIFFIE; HELLMAN, 1976). O algoritmo

de Diffie e Hellman iniciou a popularização da criptografia assimétrica. Em

seguida um estudo de Rivest, Shamir e Adleman (1978) apresentou o RSA,

um sistema criptográfico assimétrico completo. As chaves usadas estão

relacionadas e são geradas pelo RSA. Sua segurança baseia-se na

dificuldade de fatorar o produto de dois números primos grandes. O

funcionamento de algoritmos assimétricos pode ser representado como:

Encpubk(M) = C e Decprivk(C) = M, logo Decprivk(Encpubk(M)) = M

Page 33: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

32

Juma diferença essencial entre o funcionamento dos algoritmos

simétricos e assimétricos é que não é preciso compartilhar uma chave

secreta. A chave utilizada pelo remetente é pública e não é necessário sigilo

na sua distribuição. Existem outras opções de algoritmos assimétricos,

como os que baseiam sua segurança no problema de curvas elípticas.

3.2 Homomorfismo

Depois da publicação do RSA um importante trabalho de Rivest,

Adleman e Dertouzos (1978) apresentou possibilidades até então pouco

consideradas. O estudo tratava de situações reais que exigiriam a execução

de operações sobre valores encriptados, preservando a privacidade. O

estudo indicava que isso seria possível com o RSA, mas levantava

limitações. Denomina-se esta propriedade de homomorfismo. De maneira

geral, um algoritmo assim tem seu homomorfismo descrito como:

Enc(M1 � M2) = Enc(M1) � Enc(M2)

Sendo � uma operação, seria possível realizar, por exemplo, uma

adição sobre dados ainda encriptados. Quanto as propriedades

homomórficas, é importante destacar que se enquadram em dois tipos:

parcialmente homomórficos, do inglês Partially Homomorphic Encryption

(PHE), e completamente homomórficos, do inglês Fully Homomorphic

Encryption (FHE).

Os esquemas FHE suportariam qualquer tipo de operação, mas ainda

residem no campo teórico. Entretanto, já existem implementações de

esquemas PHE aplicáveis na prática, mas limitadas a um tipo de operação.

Alcançar a construção de um FHE viável poderia ser representativo para o

modelo DBaaS.

Page 34: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

33

Um esquema FHE poderia ser usado em funções agregadas. Por

exemplo, Agrega poderia representar uma função agregada qualquer. Seria

possível dividir ou multiplicar dados encriptados em uma coluna com um

comando SELECT Agrega(CampoValor) FROM TabelaDados. Bastaria

substituir Agrega pela função correspondente a soma ou multiplicação. O

mesmo campo CampoValor poderia ser dividido pelo campo

CampoDivisor, também encriptado. Os resultados seriam entregues

encriptados ao usuário do serviço DBaaS e seriam desencriptados.

A grande expectativa em relação ao desenvolvimento de um

algoritmo com essas possibilidades gira em torno de cenários como os

mencionados. Os dados poderiam ser armazenados na nuvem já

encriptados, ser processados ainda encriptados na própria nuvem e o

resultado seria devolvido encriptado para o usuário desencriptar. Esquemas

FHE permitiriam aos clientes dos provedores de DBaaS aproveitarem as

vantagens da nuvem com garantias de sigilo.

3.2.1 Encriptação Parcialmente Homomórfica (PHE)

São denominados algoritmos parcialmente homomórficos aqueles

que preservam o homomorfismo para uma única operação, não para todas.

Por exemplo, um algoritmo que permita a execução somente da operação

de adição sobre dados encriptados é considerado parcialmente

homomórfico.

Uma outra restrição a ser considerada é o limite de vezes que as

operações suportadas podem ser executadas sobre os dados antes que a

desencriptação falhe. Um dos focos de esforço no trabalho de construção

de algoritmos homomórficos é permitir a execução das operações por uma

quantidade de vezes indefinida ou máximo que for possível (SMART;

VERCAUTEREN, 2010).

Page 35: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

34

Embora existam trabalhos, como o de Naehrig, Lauter e

Vaikuntanathan (2011), que indiquem a aplicabilidade prática da PHE, a

busca pela possiblidade de execução de operações de forma ilimitada ainda

parece ser o caminho mais cobiçado.

Um exemplo de algoritmo PHE aplicado em estudos (POPA et al.,

2011; FERRETTI et al., 2014b; TU et al., 2013) de soluções de banco de

dados encriptados é o de sistema proposto por Paillier (1999). Trata-se de

um algoritmo para criptografia de chave pública aditivo. Utilizando Paillier é

possível encriptar, com a chave pública, dois valores X1 e X2, operar uma

adição sobre eles e obter o resultado da soma que poderá ser desencriptado

com a chave privada.

Outros algoritmos de criptografia com chave pública possuidores de

propriedades homomórficas funcionam essencialmente da mesma forma,

mas permitem computação sobre outros tipos de operação. O Quadro 3.1

lista mais exemplos (RIVEST; ADLEMAN; DERTOUZOS, 1978; ELGAMAL,

1985; GOLDWASSER; MICALI, 1984; BENALOH, 1994) de algoritmos PHE

e qual operação é suportada por cada um deles:

Algoritmo Operação suportada

RSA Homomorfismo multiplicativo

El Gamal Homomorfismo multiplicativo

Goldwasser-Micali Homomorfismo sobre XOR (ou exclusivo)

Benaloh Homomorfismo aditivo

Paillier Homomorfismo aditivo Quadro 3.1 - Algoritmos parcialmente homomórficos e operações

Fonte: elaborado pelo autor

3.2.2 Encriptação Completamente Homomórfica (FHE)

Quase trinta anos depois do estudo de Rivest, Adleman e Dertouzos

(1978) abrir um horizonte, o trabalho de Boneh, Goh e Nissim (2005) renova

Page 36: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

35

expectativas em relação a criação de um esquema FHE. Não encerrou a

busca por um esquema de FHE praticável, mas indicou a factibilidade. O

esquema suportava adições arbitrárias e uma multiplicação (seguida por

adições arbitrárias) sobre dados encriptados. Não se tratava ainda de

homomorfismo completo, mas era uma contribuição considerável.

Passados cinco anos o trabalho de Gentry (2009a) revelou,

finalmente, um esquema FHE. O esquema proposto utiliza reticulados ideais

para prover o homomorfismo. Operações sobre dados encriptados incluem

ruídos nestes dados. A partir de uma certa quantidade de ruído a

desencriptação ficará comprometida. A grande contribuição de Grant foi

desencriptar e reduzir o ruído inconveniente de maneira homomórfica.

Entretanto, a solução proposta por Gentry para o ruído também acarreta um

aumento demasiado no tamanho de parâmetros necessários. Portanto, a

solução não viabiliza o uso de FHE em aplicações práticas.

Depois deste marco outros trabalhos surgiram propondo formas mais

práticas e eficientes de lidar com o problema em questão. O trabalho de

Gentry e Halevi (2011) propõe um novo esquema esperando abrir caminho

para a eliminação dos gargalos da proposta de Gentry (2009a).

Brakerski e Vaikuntanathan (2011) basearam sua proposta de FHE

em aprendizagem com os erros (LWE), do inglês learning with errors. A

proposta baseia-se em reticulados arbitrários e não utilização de

pressupostos assumidos em outros trabalhos que resultavam em gargalos.

Os esforços continuam para propor novas soluções ou otimizações

de soluções que marcaram a evolução das pesquisas. Isto indica que esta

área ainda está em estágio de amadurecimento. Portanto, provavelmente

precisará percorrer um longo caminho até que alcance aplicabilidade

prática.

Page 37: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

36

4

4. Soluções Baseadas em

Criptografia para DBaaS

Esta seção apresenta a pesquisa, o método utilizado, o ciclo da pesquisa,

os estudos catalogados e os resultados encontrados.

Page 38: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

37

4.1 Apresentação

Esta seção apresenta a fundamentação para o método de pesquisa

escolhido, descreve o ciclo da pesquisa, sintetiza os estudos primários

catalogados com cada arquitetura identificada e relata análises e resultados.

4.2 Método da pesquisa

Segundo Marconi e Lakatos (2010) não há ciência sem o emprego

de métodos científicos. Tomando como base os objetivos da pesquisa e a

forma de condução da mesma, o método utilizado é dedutivo. Este tipo de

método caracteriza-se como aquele que a partir de duas proposições gera

inevitavelmente uma conclusão (FACHIN, 2006). Pode-se dizer que um

método dedutivo tem como objetivo explicar o conteúdo das premissas por

meio de um raciocínio descendente e logicamente encadeado que finda em

uma conclusão (SILVA; MENEZES, 2005).

Ainda sobre as bases metodológicas do método, a pesquisa também

se baseia em um método comparativo, pois segundo Fachin (2006) este é

um tipo de método que busca investigar e explicar fatos segundo as suas

semelhanças e diferenças. Comumente um método comparativo aborda

duas séries ou fatos de natureza análoga a fim de detectar intersecções.

Segundo Gil (2010) e Marconi e Lakatos (2010), quanto a

abordagem, esta pesquisa pode ser definida como quantitativa e, quanto

aos objetivos, como descritiva. Pois, respectivamente, usa técnicas para

coleta de dados usados em análises estatísticas e descreve uma situação

sem a interferência do pesquisador.

O método utilizado na pesquisa é o mapeamento sistemático e

baseia-se na proposta de revisão sistemática de Kitchenham (2004).

Page 39: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

38

Kitchenham, Budgen e Brereton (2011) diferenciam revisões e

mapeamentos. Ambos permitem categorizar estudos, mas na revisão o

detalhamento de estudos é relevante. A revisão busca contradições ou

consistências entre estudos, o mapeamento busca a catalogação e

caracterização. O mapeamento pode desconsiderar os resultados dos

estudos catalogados e a avaliação de qualidade.

A presente pesquisa se acomoda bem sobre um mapeamento

sistemático. Pois estuda uma população abrangente de outros trabalhos,

investigando desdobramentos de uma proposta de arquitetura (POPA et al.,

2012) em estudos posteriores. Outros fatores foram ponderados na escolha

do método. A revisão bibliográfica identificou nos estudos uma ausência de

estruturação e diferenças de escopo e na aferição de resultados. Segundo

Kitchenham (2004), um estudo que usa mapeamento é secundário, pois

mapeia estudos primários. Um mapeamento pode ser usado para sumarizar

evidências, identificar lacunas e prover subsídios novas investigações.

Como ilustra a Figura 4.1, o método proposto por Kitchenham (2004)

conta com as fases de planejamento, condução e reporte de resultados.

Cada fase é dividida em estágios. As setas descendentes sugerem um

processo sequencial, as setas pontilhadas ascendentes indicam a

possibilidade de iteração entre as fases. Isto permite adequações em

atividades realizadas em fases anteriores.

Figura 4.1: Visão simplificada do mapeamento sistemático

Fonte: elaborada pelo autor

Page 40: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

39

Segundo Kitchenham (2004), na fase de planejamento é levantada a

necessidade do estudo e definido o protocolo de mapeamento. O protocolo

reforça a imparcialidade, evitando vieses. A fase de condução é a execução

do protocolo criado na fase de planejamento. A fase de reporte de resultados

trata da comunicação dos resultados com atenção as restrições de formato.

4.3 Ciclo da Pesquisa e o Mapeamento Sistemático

A pesquisa foi dividida em duas fases. A primeira fase, de objetivo

exploratório, tratou-se de uma revisão bibliográfica tradicional e a segunda

envolveu um mapeamento sistemático. Na primeira fase um total de 55

artigos foram estudados. Alguns trabalhos contribuíram definir parâmetros

para a fase seguinte.

A segunda fase consistiu na execução do mapeamento sistemático.

Esta seção resume as principais atividades realizadas nas fases de

planejamento, execução do protocolo, síntese dos estudos e análises sobre

os dados.

Estudos obtidos na revisão bibliográfica tradicional foram revisitados

para definição de parâmetros. Buscou-se uma ferramenta de suporte ao

método, considerando o ranking de Marshall, Brereton e Kitchenham (2014).

Verificou-se que o software escolhido, o StArt (LAPES, 2015), é aderente ao

método de Kitchenham (2004), como afirmam Fabbri et al. (2012). Os

estudos não tratavam o assunto pesquisado de forma estruturada. Portanto,

o formulário de extração de dados sofreu vários de ajustes. Foram definidas

estratégias iniciais de análises.

Para identificação dos estudos foram realizados experimentos em

cada fonte para entender o funcionamento e a sintaxe para strings de busca.

Foram criadas formas automatizadas de resgatar os resultados das fontes.

Page 41: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

40

Também foi preciso aplicar ferramentas para converter formatos de

resultados (RIS, BibTeX, Medline, etc.) suportados pelas fontes.

Para identificar os estudos foi criada uma string de busca geral. A

string deveria trazer o universo de estudos que respondessem à pergunta

de pesquisa. O desafio era não excluir qualquer estudo e não trazer um

número elevado de estudos dissociados. A string de busca utilizada obteve

1.534 estudos e está ilustrada na Figura 4.4:

Figura 4.4: String de busca escolhida

Fonte: elaborada pelo autor.

Os artigos identificados foram indexados na ferramenta StArt. O

Gráfico 4.1 ilustra a quantidade de estudos encontrada por fonte.

Gráfico 4.1: Estudos encontrados por fonte

Fonte: elaborado pelo autor

Page 42: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

41

Como orientado por Kitchenham (2004), o estágio de seleção foi

dividido em duas etapas. Na primeira os critérios de inclusão e exclusão

foram aplicados sobre o título, abstract e palavras-chave de cada estudo.

Foram rejeitados 1.477 e 57 estudos passaram para a segunda etapa. A

Tabela 4.1 mostra estes números detalhados por fonte.

Tabela 4.1: Resultados da etapa 1 da seleção

Fonte Ident.

Exclusão Pre-

seleção Repetidos Em alemão Outros motivos

ACM 114 5 0 96 13 CiteSeerX 248 60 0 182 6 Eng. Village 19 18 0 1 0 IEEE 376 7 0 359 10 Sc. Direct 110 0 0 108 2 Scopus 375 137 0 223 15 Springer 292 65 1 215 11 Totais 1.534 292 1 1.184 57

Fonte: elaborada pelo autor

A segunda etapa, realizada pelo pesquisador e um auxiliar

previamente orientado, consistiu na leitura adicional da introdução e

conclusão dos 57 artigos resultantes. Um artigo adicional foi identificado nas

referências com base em snowball (GREENHALGH; PEACOCK, 2005). A

lista de pré-selecionados passou para 58 itens. Foram rejeitados 40 artigos

e 18 estudos primários foram selecionados. A Tabela 4.2 detalha os

números.

Tabela 4.2: Resultados da etapa 2 da seleção

Fonte Pré-seleção Rejeitados Duplicados Selecionados ACM 13 8 0 5 CiteSeerX 6 4 1 1 IEEE 10 8 0 2 Sc. Direct 2 1 0 1 Scopus 15 8 0 7 Springer 11 9 1 1 Snow ball 1 0 0 1 Totais 58 38 2 18

Fonte: elaborada pelo autor

Page 43: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

42

A extração dos dados ocorreu sobre os 18 estudos selecionados e foi

baseada no formulário de extração. Autores de 6 artigos foram contatados

para esclarecimentos, como recomendado por Kitchenham (2004). Cópias

do e-mail foram enviadas para até o terceiro autor de cada estudo. O

formulário elaborado em uma planilha eletrônica. A execução do protocolo

do mapeamento sistemático está detalhada na Figura 4.3.

Figura 4.3: Fluxo de execução do protocolo do mapeamento sistemático

Fonte: elaborada pelo autor

A síntese dos dados extraídos foi baseada no formulário de extração

e cotas destacadas. Basicamente consistiu na geração da síntese textual de

cada trabalho selecionado com a finalidade de catalogação. Neste estágio

houve a identificação da arquitetura usada em cada estudo.

As estratégias de análise criadas no planejamento foram revisitadas.

Com os dados obtidos na extração foi possível definir como seria a análise,

dispersão e completude dos dados puderam ser considerados. As análises

foram executadas e os resultados obtidos.

Page 44: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

43

4.4 Estudos Catalogados na Execução da Pesquisa

A seguir são apresentadas as sínteses dos 18 estudos catalogados.

Na descrição de cada estudo é destacada a análise e identificação da

arquitetura usada na solução.

4.4.1 CryptDB: Protecting Confidentiality with Encr ypted Query

Processing

4.4.1.1 Proposta do estudo

A proposta de Popa et al. (2011), o CryptDB, cobre dois tipos de

ameaças: (I) alguém com privilégios administrativos legítimos e (II) um

ataque que possa comprometer qualquer um dos componentes do sistema.

Para conter a ameaça (I), o CryptDB utiliza uma ideia de camadas de

encriptação, como em uma cebola. O sistema decide sobre qual camada

requisitará os dados dependendo da consulta executada. As camadas

utilizam esquemas criptográficos com níveis de segurança diferentes.

Para tratar a ameaça (II) a solução armazena anotações no CryptDB

que descrevem políticas de controle de acesso para usuários. Com base

nestas anotações ocorre o gerenciamento de chaves de encriptação. O

próprio CryptDB só poderá ter acesso às chaves por meio das senhas de

usuários autenticados.

4.4.1.2 Arquitetura Identificada

Como definido em Popa et al. (2011) o CryptDB funciona sobre uma

arquitetura Proxy. A Figura 4.5 ilustra a arquitetura, bem como todos os

componentes, seus principais subcomponentes e ainda o modelo de

tratamento de ameaças. O proxy precisa estar em ambiente seguro.

Page 45: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

44

Figura 4.5: Arquitetura e modelo de tratamento de ameaças do CryptDB

Fonte: POPA et al., 2011.

4.4.2 A Comprehensive Framework for Secure Query Pr ocessing on

Relational Data in the Cloud

4.4.2.1 Proposta da pesquisa

O trabalho de Wang, Agrawal e Abbadi (2011) baseia-se em “salted”

Informational Dispersal Algorithm (IDA) e em column-access-via-proxy. O

salted IDA, que conta com fatores aleatórios denominados de salt, melhora

a confidencialidade do IDA original. O IDA dispersa dados matriciais em

partes não interpretáveis. O modelo de segurança prevê servidores não

confiáveis, mas clientes e proxies confiáveis.

A utilização de proxies dificulta a identificação de usuários, evitando

inferências sobre os dados. O uso de vários proxies pode balancear carga

e garantir maior tolerância a falhas. Para as consultas é usado um índice

em árvore B+. Os clientes recuperam da nuvem uma parte do índice para

localizar tuplas candidatas. Como recomendado por Kitchenham (2004), o

autor esclareceu que a solução funcionaria sobre um DBMS de mercado,

mas seriam necessárias modificações para suportar a árvore B+.

4.4.2.2 Arquitetura Identificada

A Figura 4.6 ilustra a arquitetura da proposta de Wang, Agrawal e

Abbadi (2011). Estão presentes na solução os clientes (c1, c2, c3 e c4), os

proxies e os servidores na nuvem. Portanto, trata-se de uma arquitetura

Proxy.

Page 46: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

45

Figura 4.6: Arquitetura de Wang, Agrawal e Abbadi (2011)

Fonte: adaptado de WANG; AGRAWAL; ABBADI, 2011

4.4.3 Mimosecco: A Middleware for Secure Cloud Stor age

4.4.3.1 Proposta da pesquisa

No artigo de Achenbach, Gabel e Huber (2011) é proposto o

MimoSecco. A solução distribui um serviço particionado entre servidores.

Para isso transforma o modelo em texto claro escondendo relações entre os

dados. Por exemplo, a tabela A, em texto claro, é transformada em três

tabelas. Uma tabela de dados e mais duas tabelas de índice. A encriptação

dos dados é parcial. Tabelas de dados e índices são alocadas em servidores

separados. Na execução de consultas um módulo adapter consulta as

tabelas de índices e, após desencriptar os resultados, consulta a tabela de

dados. O resultado é desencriptado pelo adapter. Algumas consultas geram

resultados parciais que precisam de um pós-processamento no adapter.

O sistema funciona sobre um adapter que intermedia as interações

entre cliente e servidor. O MimoSecco utiliza hardware criptográfico no

servidor. Um outro trabalho de Huber e Hartung (2014), define um modelo

de segurança para o MimoSecco. O adapter é assumido como parcialmente

confiável, considerando que não haverá vazamento da chave. A solução

aponta o uso de hardware criptográfico. O cliente é considerado confiável e

o DBMS não é confiável.

Page 47: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

46

4.4.3.2 Arquitetura Identificada

A distribuição de componentes é ilustrada na Figura 4.7. O adapter

do MimoSecco é um Proxy, como bem foi observado por Lehner, Oberweis

e Schiefer (2014). Não há processamento de consultas no cliente, que

delega ao adapter a consulta aos dados e apenas espera os resultados.

Figura 4.7: Arquitetura do MimoSecco

Fonte: (HUBER; HARTUNG, 2014)

4.4.4 Secure Query Processing with Data Interoperab ility in a Cloud

Database Environment

4.4.4.1 Proposta da pesquisa

O trabalho de Wong et al. (2014) propõe o SDB, um sistema baseado

na ideia de que cada valor em texto claro é decomposto em segredos

guardados por partes diferentes. Um protocolo entre as partes executa uma

função determinística do valor. O SDB evita esquemas criptográficos

incompatíveis e processamento no cliente por meio de interoperabilidade

dos dados. Suporta apenas valores inteiros, pois é baseado em aritmética

modular. Campos em texto claro são suportados.

A arquitetura do SDB é composta por um DBMS não modificado, o

SDB Server, o SDB Client e as aplicações. O SDB minimiza a quantidade

de elementos de segredo no cliente, diminuindo o espaço usado. O SDB

Client gera planos de execução. Em seguida o protocolo de

compartilhamento de segredo é executado. Ao receber a mensagem o

server protocol identifica no DBMS os dados buscados. O resultado é

mandando para o cliente, onde é desencriptado e entregue à aplicação.

Page 48: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

47

Quanto ao modelo de segurança a camada cliente é confiável. O SDB

Server e o DBMS não são confiáveis. Como orienta Kitchenham (2004), o

autor foi contatado para esclarecimentos. O cliente enxerga SDB Client

como se fosse o DBMS.

4.4.4.2 Arquitetura Identificada

Como ilustrado na Figura 4.8, a arquitetura do SDB é composta pela

aplicação, SDB Client, SDB Server e DBMS. O módulo SDB Client atua

como um proxy entre as aplicações e o DBMS. Entretanto, observa-se que

este proxy está dividido em dois módulos, o SDB Client e o SDB Server.

Figura 4.8: Arquitetura do SDB

Fonte: WONG et al., 2014

4.4.5 Security and confidentiality solutions for pu blic cloud database

services

4.4.5.1 Proposta da pesquisa

A proposta de Ferretti et al. (2013) suporta clientes distribuídos. O

cliente busca os metadados na nuvem, desencripta-os e os mantém

localmente. O modelo de segurança prevê uma WAN não confiável, um

cliente confiável e um administrador de nuvem semi-honesto.

O estudo utiliza encriptação em camadas de cebolas por campo. Em

cada cebola a camada mais externa de encriptação denomina-se Actual

Layer. O tipo de cada coluna em texto claro precisa ser compatível com as

Page 49: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

48

cebolas que está associada. Na criação do esquema ocorre a associação

automática de cebolas aos campos, mas é permita customização pelo DBA.

Em uma consulta as camadas da cebola são desencriptadas até chegar em

uma compatível com os operadores utilizados.

4.4.5.2 Arquitetura Identificada

A arquitetura proposta por Ferretti et al. (2013) é ilustrada na Figura

4.9 e aplica-se naturalmente aos ambientes cliente-servidor.

Figura 4.9: Arquitetura proposta por Ferretti et al. (2013)

Fonte: FERRETTI et al., 2013.

4.4.6 Orthogonal security with Cipherbase

4.4.6.1 Proposta da pesquisa

O Cipherbase (ARASU et al., 2013) estende o Microsoft SQL Server.

Na proposta a execução das consultas é dividida entre hardware tradicional

e coprocessador baseado em Field-Programmable Gate Array (FPGA)

assumido como seguro. Campos níveis de encriptação mais fortes implicam

em pior desempenho. Campos não encriptados são suportados. Quanto ao

modelo de segurança, o hardware seguro e o cliente são assumidos como

confiáveis.

O hardware seguro só é usado nos casos indispensáveis. Cada

cliente possui uma chave usada para encriptar dados e comandos SQL.

Page 50: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

49

Resultados vindos do servidor também são desencriptados com esta chave.

A porção da consulta que executará no hardware seguro contém a

assinatura do cliente. O hardware confiável contém uma chave secreta, pois

as tuplas encriptadas devem ser desencriptadas para processamento. O

resultado é encriptado e mandado para fora do hardware. A mesma chave

é usada para encriptar as chaves das aplicações no cliente.

4.4.6.2 Arquitetura Identificada

A arquitetura do Cipherbase, ilustrada na Figura 4.10, é restrita ao

modelo cliente-servidor. As áreas azuis são confiáveis (Client Machine e

TM) e as áreas brancas não confiáveis (UM e Blocks). As áreas em

vermelho indicam os componentes modificados para a solução.

Figura 4.10: Arquitetura geral do Cipherbase

Fonte: ARASU et al., 2013.

4.4.7 Processing Analytical Queries over Encrypted Data

4.4.7.1 Proposta da pesquisa

A solução Monomi (Tu et al., 2013) foi construída sobre um DBMS

não modificado. A ideia é lidar com o I/O de consultas analíticas sobre

conjuntos muito grandes de dados encriptados, dividir consultas para

execução no servidor ou no cliente e refinar planos de execução.

Page 51: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

50

Consultas são divididas pelo componente planner entre cliente e

servidor. O processamento no servidor é priorizado. A solução utiliza uma

árvore de operadores para dividir a consulta em partes e não suporta

armazenamento de texto claro. Um módulo designer otimiza o projeto físico

do modelo. Já o Monomi ODBC library é o único elemento com acesso às

chaves de desencriptação. O modelo de segurança assume o cliente

confiável e o servidor não confiável.

4.4.7.2 Arquitetura Identificada

A Figura 4.11 ilustra o modelo segurança e a arquitetura Cliente-

servidor do Monomi. Os componentes concentram-se na zona confiável,

descrita como Trusted client. A ideia é que cada cliente se comunique

diretamente com o DBMS.

Figura 4.11: Arquitetura do Monomi

Fonte: TU et al., 2013.

4.4.8 Solution for Secure Private Data Storage in a Cloud

4.4.8.1 Proposta da pesquisa

O estudo de Shatilov et al. (2014) propõe uma solução que usa FHE,

não passa chaves para o servidor de forma insegura e combina várias

encriptações em uma tabela. O DBMS utilizado não precisa de

modificações. O módulo cliente é composto por quatro componentes, sendo

o SQL queries processor o componente principal. Ele transforma as

Page 52: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

51

consultas antes de enviá-las para o DBMS e processa as respostas do

DBMS. O modelo de segurança assume o cliente como confiável.

A solução utiliza metadados em arquivos. Nomes de colunas e

tabelas são anonimizados. Os campos encriptados são definidos na criação

das tabelas. Em contato com o autor, como orienta Kitchenham (2004),

verificou-se que o algoritmo candidato a FHE (ZHIROV; ZHIRIVA;

KRENDELEV, 2013) utilizado gera um vetor de valores encriptados cujos

itens são armazenados em campos na tabela.

4.4.8.2 Arquitetura Identificada

A proposta de Shatilov et al. (2014) é uma solução baseada no

modelo de arquitetura cliente-servidor, como ilustrado na Figura 4.12. A

solução é um cliente instalado na máquina do usuário.

Figura 4.12: Arquitetura geral da solução de Shatilov et al. (2014)

Fonte: SHATILOV et al., 2014

4.4.9 Scalable architecture for multi-user encrypte d SQL operations

on cloud database services

4.4.9.1 Proposta da pesquisa

Ferretti et al. (2014b) propõem o MuteDB que conta com o MuteDB

DBA client e os MuteDB clients. Os MuteDB clients podem executar

consultas de forma concorrente. Os dados e os metadados são

armazenados encriptados. O DBA é o único que pode modificar metadados,

pois cabe a ele a administração do controle de acesso. O modelo de

segurança prevê: um DBA do cliente confiável, cloud insiders honestos e

Page 53: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

52

curiosos, ataques arbitrários e conluio entre usuários legítimos do cliente e

cloud insiders.

Regras de autorização de banco de dados em texto claro são

transformados em regras aplicadas em um banco de dados encriptado. O

controle de acesso ocorre no nível de tabelas. Uma chave secreta é

fornecida com as credenciais, permitindo calcular, por algoritmos de

derivação (ATALLAH et al. 2009; CRAMPTON; MARTIN; WILD, 2006), as

chaves criptográficas do banco de dados. O DBA distribui chaves secretas

únicas para os usuários, de acordo com uma matriz de controle de acesso.

4.4.9.2 Arquitetura Identificada

A proposta usa o modelo de arquitetura cliente-servidor, como

ilustrado na Figura 4.13 e conta um cliente voltado para atividades do DBA.

Figura 4.13: Arquitetura do MuteDB

Fonte: FERRETTI et al., 2014b.

4.4.10 Distributed, Concurrent, and Independent Acc ess to Encrypted

Cloud Databases

4.4.10.1 Proposta da pesquisa

O SecureDBaaS de Ferretti, Colajanni e Marchetti (2014a) utiliza um

SecureDBaaS client para viabilizar leitura e escrita de dados, além de

Page 54: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

53

criação e modificação de tabelas. O cliente gerencia dados em texto claro,

dados encriptados, metadados e metadados encriptados. Dados e

metadados são guardados encriptados no servidor da nuvem. O tratamento

de concorrência acontece de duas formas. Para SQLs que alteram a

estrutura de tabelas a solução usa o Snapshot Isolation de Berenson et al.

(1995), os demais SQLs são tratados pelo DBMS.

Metadados são usados para gerar SQLs compatíveis com a base

encriptada. O servidor entrega o resultado ao SecureDBaaS client, que

desencripta o conteúdo e entrega ao cliente. Cada tabela do modelo em

texto claro possui uma equivalente no modelo encriptado. Nomes de tabelas

e colunas são anonimizados. Cada campo precisa ser definido

considerando um tipo de dados básico, o tipo de encriptação e o nível de

confidencialidade. O modelo de segurança assume clientes confiáveis e

cloud insiders são honestos e curiosos.

4.4.10.2 Arquitetura Identificada

A solução usa uma arquitetura cliente-servidor. A Figura 4.14 ilustra a

distribuição dos componentes sobre o modelo de segurança, os acessos

múltiplos e os metadados e dados no cliente.

Figura 4.14: Arquitetura geral do SecureDBaaS

Fonte: FERRETTI; COLAJANNI; MARCHETTI, 2014a.

Page 55: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

54

4.4.11 TrustedDB: A Trusted Hardware-Based Database with Privacy

and Data Confidentiality

4.4.11.1 Proposta da pesquisa

O estudo de Bajaj e Sion (2014) apresenta o TrustDB, que utiliza

hardware seguro (SCPU) para processamento criptográfico. Os autores

demonstram um custo menor com o uso de SCPU. O processamento de

consultas é dividido entre servidor e SCPU. No caso de campos privados a

desencriptação só pode ocorrer na SCPU ou no cliente.

Consultas privadas podem depender dos resultados de consultas

públicas, o inverso também é verdadeiro. Os autores dedicam um outro

estudo prévio (BAJAJ; SION, 2011) sobre a execução de consultas. O

modelo de segurança assume um servidor não confiável e curioso.

4.4.11.2 Arquitetura Identificada

Como ilustrado na Figura 4.15, a arquitetura cliente-servidor é

adotada. Não há qualquer módulo intermediário e o acesso ao banco se dá

por um cliente, como em qualquer DBMS tradicional.

Figura 4.15: Arquitetura geral do TrustedDB

Fonte: adaptada de Bajaj e Sion (2014).

Page 56: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

55

4.4.12 L-EncDB: A lightweight framework for privacy -preserving data

queries in cloud computing

4.4.12.1 Proposta do estudo

O L-EncDB de Li et al. (2015) permite manter a estrutura original dos

dados. A solução funciona sobre format-preserving encryption (FPE), que

preserva o tipo e o comprimento do dado encriptado. A camada application

system conta com uma application program interface (API) que transforma

e devolve a aplicação comandos SQL na versão encriptada. Este comando

é enviado ao DBMS na camada database.

Algumas operações SQL usam um esquema FPE, enquanto outras,

que envolvem consultas fuzzy e intervalos, usam esquemas order-

preserving encryption (OPE) e fuzzy query encryption (FQE) e precisam de

campos adicionais no modelo. O modelo de segurança assume atacantes

com acesso apenas a base de dados e atacantes com acesso também a

aplicação. Controles para proteger a senha usada pelo L-EncDB são

assumidos como existentes.

4.4.12.2 Arquitetura Identificada

O L-EncDB é uma API a ser usada por uma aplicação. Como ilustrado

na Figura 4.16 não estabelece comunicação direta com o servidor. A solução

baseia-se no modelo Cliente-servidor.

Figura 4.16: Arquitetura do L-EncDB

Fonte: LI et al., 2015.

Page 57: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

56

4.4.13 Enhancing Data Privacy in the Cloud

4.4.13.1 Proposta do estudo

A solução de Lu e Tsudik (2011) exige que o database owner encripte

todo o banco com um algoritmo simétrico antes de enviá-lo para o servidor.

Se autorizado por uma certificate authority, um cliente pode formular uma

consulta e solicitar ao database owner um token e uma chave de

desencriptação. O usuário envia o token da consulta para o servidor e

recebe o resultado, que será desencriptado pelo cliente.

O modelo de segurança assume um adversário malicioso e que pode

haver conluio entre usuário e o servidor na nuvem. O database owner é

completamente confiável. Há exposição da estrutura de dados criada para

representar a consulta. Também existe uma possibilidade de ataques

similares à força bruta no servidor.

4.4.13.2 Arquitetura Identificada

A Figura 4.17 ilustra de forma geral o funcionamento do sistema. As

comunicações entre os componentes se dão sem intermediários. É utilizada

uma arquitetura Cliente-servidor descentralizada, pois várias funções estão

distribuídas sobre diferentes elementos da arquitetura.

Figura 4.17: Arquitetura da solução de Lu e Tsudik (2011)

Fonte: LU; TSUDIK, 2011

Page 58: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

57

4.4.14 Supporting Complex Queries and Access Polici es for Multi-user

Encrypted Databases

4.4.14.1 Proposta da pesquisa

A solução de Asghar et al. (2013) suporta a aplicação de políticas de

acesso para usuários. Alterações em permissões, usuários ou tabelas não

implicam em re-encriptação de dados ou re-distribuição de chaves. O

sistema baseia-se em quatro entidades: Database User (DBU), Database

Administrator (DBA), Cloud Server (CS) e Key Management Authority

(KMA). Um DBU autorizado pelo DBA terá um conjunto de chaves gerado

pelo KMA. O KMA pode revogar chaves.

O modelo de segurança assume os DBUs confiáveis para armazenar

dados e suas chaves, mas considera o conluio entre DBUs. O DBA e o KMA

são confiáveis e O CS é assumido como honesto e curioso. O esquema

proxy encryption utilizado (DONG; RUSSELLO; DULAY, 2008) baseia-se em

elementos criptográficos de posse do cliente e do proxy. Para

esclarecimentos sobre a implementação da entidade Data Files foi feito

contato com o autor, como orienta Kitchenham (2004). Foi utilizado um

DBMS MySQL e, na medida que comandos SQL são considerados, um

banco relacional poderia ser usado.

4.4.14.2 Arquitetura Identificada

Embora a solução proposta por Asghar et al. (2013) utilize proxy

encryption, isto não a caracteriza como uma arquitetura Proxy. A Figura 4.18

descreve os elementos mencionados e suas interações. Trata-se de uma

arquitetura Cliente-servidor descentralizada.

Page 59: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

58

Figura 4.18: Arquitetura da solução de Asghar et al. (2013)

Fonte: ASGHAR et al., 2013.

4.4.15 Blind Seer: A Scalable Private DBMS

4.4.15.1 Proposta da pesquisa

O Blind Seer de Pappas et al. (2014) usa um DBMS construído para

bancos de dados de médio e grande porte. Até então, utilizava-se somente

buscas por palavras-chave baseadas na quebra dos termos, impactando na

segurança. O uso de busca sublinear eficiente para consultas booleanas

arbitrárias é destacado como avanço. A solução é composta pelo cliente,

servidor, servidor de índices e o query checker. O servidor fornece o banco

encriptado para o servidor de índices, que, de forma alheia, serve às

consultas do cliente. Para evitar consultas indevidas, o query checker aplica

políticas especificadas por meio de um protocolo.

Uma árvore de busca (balance factor tree) encriptada global é usada

para buscas nos dados. A árvore e os dados encriptados são mantidos no

servidor de índices. A busca na árvore é feita com pouco vazamento de

informação, apenas o suficiente para garantir a poda e o desempenho das

buscas. Os resultados de consultas só são desencriptados no cliente. Os

Page 60: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

59

autores optaram por um modelo de segurança semi-honesto e detalham os

vazamentos aceitos por componente em determinadas situações.

4.4.15.2 Arquitetura Identificada

A Figura 4.19 demonstra os elementos da arquitetura e como

acontece as interações já mencionadas. Toda comunicação é sem

intermediários, mas existem divisões de responsabilidades, configurando

uma arquitetura cliente-servidor descentralizada.

Figura 4.19: Arquitetura do Blind Seer

Fonte: PAPPAS et al., 2014

4.4.16 Processing Private Queries Over an Obfuscate d Database Using

Hidden Vector Encryption

4.4.16.1 Proposta da pesquisa

O trabalho de Trombetta, Persiano e Braghin (2014) baseia-se em um

esquema attribute-based para consultar dados encriptados. Os dados são

armazenados no DBMS não confiável. Uma chave que codifica consultas é

entregue pelo data owner, em uma fase de setup, para o usuário. Um

módulo confiável do sistema processa a consulta. Usuários e consultas

podem ser adicionados ou o data owner pode alterar dados sem a

necessidade de re-encriptar tabelas ou re-gerar as chaves.

Page 61: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

60

Para que as consultas funcionem: uma codificação usando um vetor

é feita por linha, um campo adicional guarda as posições das colunas

encriptadas, um outro vetor (Hidden Vector Encryption) guarda valores a

serem buscados e, finalmente, os usuários recebem chaves. Por meio de

contato com o autor, como orienta Kitchenham (2004), o foi esclarecido que

operações de alteração de dados não foram testadas.

4.4.16.2 Arquitetura Identificada

A Figura 4.20 apresenta o principal componente da arquitetura, que

é um proxy. Mas o data owner comunica-se com o proxy e diretamente com

o DBMS, caracterizando o uso de Proxy e Cliente-servidor descentralizada.

Figura 4.20: Arquitetura de Trombetta, Persiano e Braghin (2014)

Fonte: TROMBETTA et al., 2014

4.4.17 DBMask: Fine-Grained Access Control on Encry pted Relational

Databases

4.4.17.1 Proposta da pesquisa

O DBMask de Sarfraz et al. (2015) trabalha sobre um DBMS não

modificado. A solução é composta por quatro entidades. O data owner faz

uso de chaves diferentes para encriptar partes dos dados, que são

encaminhados via um proxy para o data server (DBMS). Um data user

Page 62: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

61

autorizado pelo proxy pode fazer uso do sistema. O proxy pode converte as

consultas do data user em consultas encriptadas. O data server entregará

os resultados ao proxy, que serão desencriptados e enviados ao data user.

O modelo de segurança assume que o data owner e o proxy são

confiáveis. O data server é honesto e curioso. Os data users não são

confiáveis e precisam ter seus atributos de identidade emitidos por um

provedor confiável e certificados pelo data owner. Chaves não são

armazenadas no usuário. O comprometimento do proxy permite que os

usuários autenticados tenham os dados acessados. Data users podem ser

revogados sem a necessidade de redistribuição de chaves ou re-

encriptação de dados.

4.4.17.2 Arquitetura Identificada

A Figura 4.21 ilustra a arquitetura que suporta o DBMask. Identifica-

se a presença de um Proxy. Entretanto, verifica-se que o data owner toma

para si funções principais, como a concessão de acesso ao sistema e a

encriptação dos dados. Portanto, é uma arquitetura mista do modelo

Cliente-servidor descentralizado e do modelo Proxy.

Figura 4.21: Arquitetura do DBMask

Fonte: SARFRAZ et al., 2015.

Page 63: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

62

4.4.18 SQL-Based Fuzzy Query Mechanism Over Encrypt ed Database

4.4.18.1 Proposta da pesquisa

A proposta de (LIU et al., 2014) utiliza um DBMS não modificado,

format-preserving encryption (FPE) e propõe um novo mecanismo fuzzy

query encryption (FQE). O módulo criptográfico armazena dados no DBMS

e responde consultas de aplicações. O módulo de interpretação gera

consultas sobre dados encriptados.

Para cada campo do banco um outro será adicionado para o suporte

a consultas fuzzy. O campo adicional vai comportar a string da palavras-

chave encriptadas. Os relacionamentos não são alterados. O modelo de

segurança assume que os módulos precisam estar em um ambiente

confiável.

4.4.18.2 Arquitetura Identificada

O sistema pode ser implementado em um proxy ou no cliente, pois a

solução é um software development kit (SDK). A Figura 4.22 ilustra o caso

do uso em Proxy, descrevendo as interações entre as entidades e o uso do

campo adicional (Additional Field).

Figura 4.22: Sugestão de arquitetura de Liu et al. (2014)

Fonte: LIU et al., 2014

Page 64: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

63

4.5 Análise Sobre Estudos Catalogados

A análise foi organizada em três partes. A Análise 1 busca tendências

sobre os modelos de arquitetura. A Análise 2 aponta vantagens e

desvantagens da arquitetura Proxy para DBaaS. A Análise 3 confronta as

desvantagens do modelo Proxy e as capacidades exigidas dos provedores

(EUA, 2011). Os estudos catalogados também foram avaliados quanto a

qualidade e dados adicionais sobre o estado-da-arte foram levantados.

4.5.1 Avaliação de Qualidade dos Estudos

Embora Kitchenham, Budgen e Brereton (2011) não apontem como

essencial em mapeamentos, a avaliação de qualidade demonstra a

importância dos estudos e pode basear futuras pesquisas. O Gráfico 4.3

mostra que 100% dos trabalhos contam com contribuições e objetivos bem

definidos. 88,89% apresentam informações detalhadas e apontam trabalhos

futuros. A arquitetura é definida com clareza por 77,78% dos trabalhos. O

atendimento total médio às perguntas foi de 92,22%.

Gráfico 4.3: percentual total de atendimento a cada pergunta

Fonte: elaborado pelo autor

A pergunta AQ05 obteve o menor percentual. A ausência de detalhes

sobre a arquitetura em alguns trabalhos, mesmo quando outros aspectos

são detalhados, pode indicar um espaço para trabalhos futuros.

Page 65: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

64

4.5.2 Análise Sobre os Modelos de Arquitetura

Análise 01 : o Quadro 4.1 demonstra a categorização dos estudos

nas seguintes arquiteturas: (i) Proxy, (ii) Cliente-servidor, (iii) Cliente-

servidor Descentralizada, (iv) Proxy e Cliente-servidor Descentralizada e (v)

software development kit (SDK).

Estudos categorizados como (i) utilizam arquitetura puramente Proxy,

enquanto os definidos com (ii) utilizam puramente Cliente-servidor. A

categoria (iii) indica o uso da arquitetura Cliente-servidor com funções

distribuídas em mais de um servidor, portanto descentralizada. A categoria

(iv) indica o uso dos modelos de arquitetura Proxy e Cliente-servidor

Descentralizada na mesma solução. Estudos categorizados como (v)

indicam a apresentação da solução em forma de SDK. Neste último caso,

segundo os autores, podendo ser usada em uma arquitetura Proxy ou

Cliente-servidor.

Arquitetura Solução Ano (i) CryptDB (Popa et al., 2011) 2011

(Wang et al., 2011) 2011 MimoSecco (Achenbach et al., 2011) 2011 SDB (Wong et al. 2014) 2014

(ii) (Ferretti et al., 2013) 2013 Cipherbase (Arasu et al., 2013) 2013 Monomi (Tu et al., 2013) 2013 (Shatilov et al., 2014) 2014 MuteDB (Ferretti et al., 2014b) 2014 SecureDBaaS (Ferretti et al., 2014a) 2014 TrustedDB (Bajaj; Sion, 2014) 2014 L-EncDB (Li et al., 2015) 2015

(iii) (Lu, Tsudik, 2011) 2011 (Asghar et al., 2013) 2013 Blind Seer (Pappas et al., 2014) 2014

(iv) (Trombetta et al., 2014) 2014 DBMask (Sarfraz et al., 2015) 2015

(v) (Liu et al., 2014) 2014

Quadro 4.1 - Categoria e ano dos estudos catalogado s Fonte: elaborado pelo autor

Page 66: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

65

Com o Gráfico 4.4 é possível obter uma visão sobre o percentual total

dos modelos de arquitetura aplicados nos estudos. O maior percentual fica

para o modelo Cliente-servidor, com 44,44%, seguido pelo modelo Proxy,

com 22,22%. Os demais modelos apresentam 16,67%, 11,11% e 5,56%

para, respectivamente, arquiteturas Cliente-servidor Descentralizada, Proxy

e Cliente-servidor Descentralizada e software development kit (SDK).

Gráfico 4.4: percentual total de arquiteturas aplicadas

Fonte: elaborado pelo autor.

A visão de distribuição ao longo do tempo da aplicação das

arquiteturas é dada pelo Gráfico 4.5. É percebida a maior utilização da

arquitetura Proxy em 2011, seguida de um declínio. A arquitetura Cliente-

servidor é aplicada em 2013 e é seguida por um crescimento. As demais

arquiteturas não contabilizam mais que uma aplicação por ano.

Gráfico 4.5: quantidade de arquiteturas implementadas no tempo

Fonte: elaborado pelo autor.

Page 67: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

66

Todos os estudos catalogados apresentam, em diferentes

combinações, utilizações das arquiteturas Proxy e Cliente-servidor.

Portanto, é importante aferir a utilização destas duas arquiteturas. A Tabela

4.3 consolida a utilização destas duas arquiteturas, independentemente se

elas estão sendo usadas isoladamente ou de forma combinada. Foi

contabilizado um total de 21 utilizações de arquitetura.

Tabela 4.3: Utilização de Proxy e Cliente-servidor

Ano Proxy Cliente -servidor Total 2011 3 1 4 2012 0 0 0 2013 0 4 4 2014 3 7 10 2015 1 2 3 Total 7 14 21

Fonte: elaborada pelo autor

Baseado na Tabela 4.3, o Gráfico 4.6 mostra o percentual de

utilizações dos dois modelos. O Proxy fica com 33,33% e o modelo Cliente-

servidor com 66,67%.

Gráfico 4.6: percentual de utilização de Proxy e Cliente-servidor

Fonte: elaborado pelo autor.

Pode-se assumir que o total de trabalhos publicados em um ano

tenha relação com a quantidade de trabalhos que usam Proxy ou Cliente-

servidor. Assim é possível estimar uma tendência. Assumida a média de 4

estudos por ano para calcular a tendência, a estimativa é que em 2016 uma

(1,34) publicação utilize o modelo Proxy e duas (2,65) o modelo Cliente-

Page 68: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

67

servidor. O Gráfico 4.7 ilustra a dispersão de pontos e as retas de tendência

para Proxy e Cliente-servidor em azul e vermelho, respectivamente.

Gráfico 4.7: estimativa e tendência para Proxy e Cliente-servidor.

Fonte: elaborado pelo autor.

Devido às limitações da série histórica não é viável aplicar modelos

estatísticos que contemplem sazonalidade. Pelo demonstrado, a utilização

da arquitetura Proxy demonstra tendência de queda e o modelo Cliente-

servidor tende ao crescimento.

Análise 02 : foram extraídas dos estudos as observações feitas

explicitamente pelos autores sobre a arquitetura Proxy. A extração dividiu as

observações em vantagens e desvantagens.

A Tabela 4.4 quantifica todas as observações. O campo Citações

informa quantos estudos citaram a observação. Foram extraídas 15

citações. Verifica-se que a quantidade de desvantagens explicitamente

citadas é consideravelmente maior que a de vantagens, a primeira com

quase o triplo das citações da segunda.

O percentual de desvantagens é de 73%. A observação mais

frequente é sobre comprometer características do modelo de DBaaS, com

3 citações. As duas próximas observações mais frequentes foram citadas

em 2 estudos e dizem respeito ao modelo centralizador do Proxy.

Page 69: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

68

A lista de desvantagens mencionadas explicitamente nos estudos é

maior que a das vantagens. Algumas desvantagens são reiteradas em dois

ou três estudos. As vantagens apontadas dizem respeito a aspectos de

transparência de acesso dos clientes e maior segurança.

Tabela 4.4: Quantificando vantagens e desvantagens do modelo Proxy

Tipo Observação Citações

Van

tage

ns

Não exige modificação na conexão com o DBMS e nos SQLs das aplicações 1

Permite elevar a segurança ao processar resultado intermediários no proxy, vazando menos informações (ex.: no uso do OPE)

1

Clientes acessam o DBMS de forma transparente 1

Pode dificultar a obtenção de informações sobre o usuário pelo o provedor de DBaaS, facilitando correlações com as consultas que são executadas

1

Total de vantagens 4

Des

vant

agen

s

Compromete características de disponibilidade, confiabilidade e elasticidade, que são essenciais no modelo DBaaS

3

O proxy é um ponto único de falha na segurança 2

Em um ataque, todas as chaves, que no momento estiverem sob o domínio do proxy, serão comprometidas 2

Proxies não suportam apropriadamente cenários com clientes geograficamente dispersos 1

O proxy, assumido como confiável, não pode ser colocado em um ambiente de nuvem não confiável 1

O proxy pode tornar-se um gargalo no sistema 1

Manter um proxy pode ser inviável para clientes que optam pela nuvem para simplificar operações e reduzir custos

1

Total de desvantagens 11

Total geral 15

Fonte: elaborada pelo autor

Análise 3 : primeiramente foi verificado o estado da arte em relação

à distribuição do elemento proxy no modelo de segurança. Entre as 7

soluções catalogadas que utilizam um proxy, 6 delas assumem que ele seja

confiável (SARFRAZ et al., 2015; LIU et al., 2014; WONG et al., 2014;

TROMBETTA; PERSIANO; BRAGHIN, 2014; POPA et al., 2011; WANG;

Page 70: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

69

AGRAWAL; ABBADI, 2011) e 1 delas assume um ambiente parcialmente

confiável (ACHENBACH; GABEL; HUBER, 2011).

Mas, como o descrito no site comercial da solução (MIMOSECCO,

2015) e no estudo de Lehner, Oberweis e Schiefer (2014), o proxy desta

solução exige um provedor de nuvem certificado, um parceiro confiável de

negócio, locações em países com jurisdição favorável ou uma nuvem

privada. Também utiliza hardware na guarda de chaves usadas no proxy.

A utilização de proxy confiável representa praticamente o total dos

estudos e não assume uma confiança relativa em terceiros. Portanto, para

as análises desta pesquisa considera-se o modelo de segurança com o

proxy confiável e o tipo de nuvem pública. A desvantagem “o proxy,

assumido como confiável, não pode ser colocado em um ambiente de

nuvem não confiável”, na Análise 02, corrobora com este contexto.

Definido o modelo de segurança, esta análise investiga impactos

sobre as cinco capacidades exigidas (EUA, 2011) dos provedores de nuvem:

Autosserviço sob demanda : com exceção da proposta de Wang,

Agrawal e Abbadi (2011), as soluções que utilizam um proxy armazenam os

dados em um DBMS não modificado. Isto evita alterações nas plataformas

dos provedores da nuvem. Entretanto, comumente o provedor DBaaS

fornece uma ferramenta Web para gerenciamento do banco de dados pelo

próprio cliente (autosserviço). Isto acontece nas soluções DBaaS da

Microsoft, Oracle e Amazon (MICROSOFT, 2015; ORACLE, 2015;

AMAZON, 2015).

A administração de memória, armazenamento e processamento

poderia ocorrer normalmente. Contudo, qualquer acesso ao esquema,

estruturas e dados das tabelas, resultaria na visualização da versão

encriptada do banco de dados. Em algumas soluções (FERRETTI;

Page 71: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

70

COLAJANNI; MARCHETTI, 2014a; POPA et al., 2011; SHATILOV et al.,

2014) nomes de tabelas e campos são anonimizados. Para visualizar os

dados e as estruturas em texto claro, só atravessando o proxy.

Considerando a necessidade de o proxy ser confiável, ele ficaria no

ambiente do cliente, dificultando o fornecimento de uma interface web pelo

provedor de DBaaS.

Acesso à rede : o proxy provê transparência da comunicação do

cliente com o DBMS. Também não é necessário distribuir software adicional

para cada cliente, que podem ser heterogêneos. Entretanto, o fato do proxy

precisar ser confiável torna-se uma dificuldade, interferindo na comunicação

para acesso aos dados.

Um cenário comum de clientes dispersos geograficamente, como na

proposta de Wang, Agrawal e Abbadi (2011), exigiria arranjos para

direcionar clientes para os proxies intermediarem os acessos. A Análise 02

aponta duas desvantagens relacionadas: “o proxy pode tornar-se um

gargalo no sistema” e “proxies não suportam apropriadamente cenários com

clientes geograficamente dispersos”.

Pool de recursos e elasticidade rápida : nas soluções catalogadas

que usam proxy o crescimento de clientes poderia implicar em problemas

de disponibilidade do proxy. Se um proxy passa a funcionar fora do provedor

da nuvem, ele não faz parte do pool de recursos. Este proxy não seria

administrado pelo provedor da nuvem, mas provavelmente pelo próprio data

owner. Isto corrobora com a desvantagem previamente mencionada,

“compromete características de disponibilidade, confiabilidade e

elasticidade, que são essenciais no modelo DBaaS”.

Um proxy administrado pelo cliente se opõe as vantagens de

ausência de investimento inicial com infraestrutura e de despesas com

manutenção apontadas por Zhang, Cheng e Boutaba (2010). A

Page 72: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

71

desvantagem “manter um proxy pode ser inviável para clientes que optam

pela nuvem para simplificar operações e reduzir custos”, apontada na

Análise 02, resume bem esta questão.

Serviço mensurável : com exceção da proposta de Wang, Agrawal e

Abbadi (2011), que não utiliza um DBMS sem modificações, o proxy não se

mostra um impeditivo para mensuração do serviço. Entretanto, por conta da

anonimização de nomes de tabelas e campos, as informações mensuradas

precisariam de algum tratamento para serem legíveis e úteis para o cliente.

As anonimizações são implementadas para evitar que informações

sobre os dados vazem no servidor. Fornecer um monitoramento demandará

um mapeamento para a estrutura do banco em texto claro. Este

mapeamento poderia ser feito pelo próprio proxy, que é confiável e tem a

função de realizar os mapeamentos para os SQLs. Entretanto, nenhum dos

estudos menciona esforços neste sentido.

As Análises 1, 2 e 3 evidenciam os motivos pelos quais não é trivial

utilizar um proxy para atender todas as capacidades exigidas do provedor.

Por precisar estar em um ambiente confiável, os proxies utilizados nas

soluções que representam o estado-da-arte impactam diretamente nas

vantagens esperadas pelos usuários de soluções DBaaS.

4.5.3 Dados Adicionais Sobre o Estado-da-arte

Esta seção expõe dados adicionais extraídos dos estudos

catalogados. Estes dados apoiam uma melhor compreensão de pontos

relevantes sobre bancos de dados encriptados e levantam possibilidades de

estudos futuros.

Page 73: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

72

Foram identificados 16 estudos, do total de 18, que citam o CryptDB

de Popa et al. (2011). Indicando a relevância desta solução para a área. O

CryptDB, de alguma forma, influenciou boa parte dos trabalhos publicados

posteriormente.

Algumas soluções permitem a interferência, pelo data owner ou DBA,

no nível de encriptação. Esta flexibilidade impacta sobre o trade-off entre

funcionalidade e segurança. Como ilustra o Gráfico 4.9, um total de 10 (56%)

estudos permitem interferência e 8 (44%) não permitem.

Gráfico 4.9: Percentual de estudos que permitem interferência na encriptação

Fonte: elaborado pelo autor.

Um total de 6 (33,33%) soluções permitem valores também em texto

claro, como ilustra o Gráfico 4.10. Permitir texto claro pode otimizar o

desempenho e o uso de espaço. Entretanto, pode facilitar a inferência sobre

dados encriptados.

Gráfico 4.10: Percentual de estudos que permitem dados em texto claro

Fonte: elaborado pelo autor.

Page 74: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

73

Foram identificados 2 (11%) estudos, de Tu et al. (2013) e de Wang

et al. (2011), que processam alguma parte da consulta no cliente. É uma

abordagem destoante do modelo de computação em nuvem. Mas contorna

limitações de técnicas de consultas sobre dados encriptados.

Um total de 7 (38,88%) estudos utilizam abordagens de cebola de

encriptação e/ou múltiplas colunas para representar um campo em texto

claro, como aplicado por Popa et al. (2011). Estas abordagens causam

impacto no volume armazenado e no processamento. O Gráfico 4.11 ilustra

o uso destas abordagens ao longo do tempo.

Gráfico 4.11: Estudos que utilizam abordagem de cebola e/ou múltiplas colunas

Fonte: elaborado pelo autor.

O mapeamento identificou 3 (16%) estudos que baseiam sua

segurança em hardware. Apenas o estudo de Bajaj e Sion (2014) analisa os

custos reais de processamento utilizando e não utilizando hardware seguro.

Achenbach et al (2011) e Arasu et al. (2013) não apresentam análises.

Foram identificados 2 (11,11%) estudos que utilizam dados e/ou

índices distribuídos em dois ou mais provedores (ACHENBACH et al., 2011;

WANG et al., 2011). Esta distribuição pode incrementar a segurança, desde

que não haja conluio entre provedores.

A pesquisa identificou 7 estudos (38,88%) que utilizam esquemas

PHE aditivos. Apenas Shatilov et al. (2014) implementam uma solução

candidata a FHE, proposta por Zhirov, Zhirova e Krendelev (2013). O

esquema suporta multiplicação e adição e está submetido severas

limitações.

Page 75: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

74

5

5. Considerações Finais

Revê os objetivos propostos desta pesquisa, fornecendo um resumo dos

pontos mais relevantes e observando questões para trabalhos futuros.

Page 76: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

75

5.1 Síntese da Análise

Foram catalogados 18 trabalhos, categorizados em cinco tipos de

arquiteturas. Verificou-se que houve 92,22% de atendimento às perguntas

da avaliação de qualidade e que trabalhos futuros podem aprofundar as

discussões sobre as arquiteturas de soluções DBaaS seguras. Encontrou-

se uma menor proporção de aplicações com arquitetura puramente em

Proxy em relação à Cliente-servidor e outras apresentações.

Foi identificado na pesquisa que as soluções, independentemente da

combinação, baseavam-se em Proxy ou Cliente-servidor. Portanto, também

se avaliou a utilização do modelo Proxy ou Cliente-servidor nas soluções.

Foram identificadas um total de 21 utilizações. A proporção da utilização de

Proxy também foi menor, inclusive quando foi analisada a tendência da série

histórica. Portanto, o estado da arte de estudos sobre soluções de banco de

dados encriptados para DBaaS aponta para o modelo Cliente-servidor.

Foram extraídas dos estudos todas as vantagens e desvantagens do

modelo Proxy. O número de desvantagens foi maior que o de vantagens. A

desvantagem mais citada é sobre o comprometimento de capacidades

exigidas do modelo de computação em nuvem (EUA, 2011). De acordo com

a análise feita sobre os dados extraídos dos estudos, a necessidade de o

proxy ficar em um ambiente confiável provoca diferentes impactos nas

capacidades esperadas no modelo DBaaS. Dados adicionais sobre o

estado-da-arte foram extraídos para subsidiar trabalhos futuros.

5.2 Resolução dos Objetivos Propostos

Os objetivos específicos, descritos na seção 1.5, são revisitados a

seguir. Adicionalmente é feita uma avaliação que corrobora com o

atendimento de cada um deles.

Page 77: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

76

1. Executar um mapeamento sistemático que apresente um

catálogo de estudos, organizado por tipo de arquitetura, sobre

bancos de dados encriptados para DBaaS;

2. Apontar tendências na escolha de arquiteturas e situar a

arquitetura Proxy nestas tendências;

3. Apontar impactos da adoção da arquitetura Proxy quando

aplicada em Database-as-a-Service (DBaaS).

4. Levantar problemas em aberto, direcionando trabalhos

futuros, sobre banco de dados encriptados para DBaaS

O método de mapeamento sistemático baseado na proposta de

Kitchenham (2014) foi planejado e aplicado, identificando e avaliando 1.535

estudos. Foram selecionados para catalogação, organizada por arquitetura,

18 estudos com soluções de bancos de dados encriptados para DBaaS.

Os estudos forneceram evidências para a realização de uma análise

quantitativa sobre as abordagens arquiteturais adotadas. Os dados foram

utilizados para identificar e confrontar a adoção das diferentes arquiteturas.

Foram realizadas análises que identificaram tendências de utilização de

arquiteturas em uma série temporal. A arquitetura Proxy foi situada nestas

tendências, observada a opção por outros modelos arquiteturais.

Análises sobre os dados obtidos apontaram impactos sobre a adoção

da arquitetura Proxy em soluções encriptadas para DBaaS. Vantagens e

desvantagens foram evidenciadas. Um levantamento de dados também foi

realizado sobre os estudos para apontar problemas em aberto. Vários

pontos passiveis de aprofundamento em trabalhos futuros foram

evidenciados nesta pesquisa.

Page 78: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

77

5.3 Conclusões e Trabalhos Futuros

A adoção da computação em nuvem é um paradigma atual muito

atrativo para pessoas e empresas. Para garantir as vantagens para os

clientes certas capacidades (EUA, 2011) devem ser atendidas pelo provedor

de serviços na nuvem. Entretanto, garantias de privacidade sobre os dados

processados e mantidos pelos provedores são essenciais. De outro modo

clientes preocupados com sigilo e privacidade buscam outras soluções mais

complexas e caras em detrimento das vantagens da nuvem pública.

No contexto do Database-as-a-Service, estas garantias de

privacidade ainda figuram como desafios (DARA, 2013; ALJAFERA et al.,

2014). Algoritmos completamente homomórficos não indicam uma solução

computacionalmente viável em curto ou médio prazo. Pesquisas atuais

buscam utilizar sistemas criptográficos viáveis para processar e proteger os

dados na nuvem. O uso de soluções como FPE, OPE, técnicas de busca de

palavras-chave, proxy-encryption, PHE, MAC e algoritmos simétricos,

aparecem nas propostas de solução catalogadas por esta pesquisa.

Dentre outras características, a utilização de um determinado

esquema criptográfico guarda relação com a arquitetura escolhida para a

solução, que é de suma relevância dos pontos de vista da segurança,

aplicabilidade e aderência ao modelo de computação em nuvem.

Esta pesquisa mostra, em uma série histórica, como e porque se deu

a escolha das arquiteturas nos estudos que propõem soluções direcionadas

para DBaaS. O método empregado na pesquisa se mostrou apropriado,

levando ao atendimento dos objetivos estabelecidos previamente. O

planejamento cuidadoso de um protocolo e a execução criteriosa do ciclo da

pesquisa foram cumpridos sob as recomendações de Kitchenham (2004). A

Page 79: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

78

partir de um universo de 1.535 estudos foi possível chegar a um catálogo de

18 estudos primários para responder à pergunta de pesquisa.

Dos 18 estudos catalogados 22,22% utilizam arquitetura puramente

Proxy e 44,44% puramente Cliente-servidor. Consolidando a utilização de

arquiteturas em dois tipos chega-se ao total de 21 utilizações, sendo 66,67%

de Cliente-servidor e 33,33% de Proxy. Estes mesmos dados analisados ao

longo do tempo demonstram a preferência pela arquitetura Cliente-servidor

em detrimento da arquitetura modelo Proxy. Em uma avaliação de tendência

também foi possível verificar a opção pela arquitetura Cliente-servidor.

As vantagens e desvantagens do uso de um proxy foram extraídas

para consolidar os motivos da não opção pela arquitetura Proxy. O número

de citações de desvantagens foi maior que a de vantagens. Uma

investigação foi realizada para esclarecer os eventuais impactos da

utilização de um proxy no contexto de DBaaS seguro. Esta investigação fez

emergir alguns pontos que remeteram as desvantagens apontadas nos

estudos.

Considerando a adoção de um proxy, também foram incluídas na

investigação duas outras características não enfatizadas nos demais

estudos: a dificuldade em prover autosserviço sob demanda por meio de

uma interface web fornecida pelo provedor de DBaaS e os arranjos que

precisam ser feitos para garantir a característica de serviço mensurável.

As análises demonstraram que o modelo de arquitetura Proxy, por

hora, não é promissor para soluções de banco de dados encriptados para

DBaaS. Os estudos e as análises realizadas mostram desvantagens que

dificultam sua adoção no modelo DBaaS. O fato do proxy precisar estar em

um ambiente confiável é fator determinante. A garantia da privacidade e

sigilo dos dados armazenados e processados na nuvem fica condicionada

ao posicionamento do proxy em um local confiável.

Page 80: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

79

O estudo de banco de dados encriptados para DBaaS ainda é um

campo com muitos desafios em aberto. O mapeamento sistemático

realizado nesta pesquisa, além das contribuições já citadas, também

resultou na indicação de uma lista com pontos que podem ser aprofundados

em trabalhos futuros. São eles:

• Aprofundamento da discussão sobre a escolha de arquiteturas

para soluções DBaaS com bancos de dados encriptados;

• Aplicar novamente o mapeamento sistemático, dentro de

alguns anos, para comparação com resultados desta

pesquisa;

• Verificar dentre os trabalhos catalogados quais estão

causando maior impacto em outras pesquisas, usando como

referência, por exemplo, a quantidade de citações que cada

um apresenta em mecanismos de busca;

• Mapear todas as indicações de trabalhos futuros constantes

nos artigos catalogados por esta pesquisa;

• Investigar os impactos da arquitetura Cliente-servidor, que de

acordo com esta pesquisa vem sendo a mais amplamente

adotada, considerando as propostas catalogadas neste

estudo;

• Investigar o impacto das soluções propostas quando aplicadas

em modelos de segurança mais extremos, que prevejam, por

exemplo, a formação de conluio entre o usuário e o provedor

de nuvem;

• Avaliar se a arquitetura Proxy também não seria apropriada se

utilizada com um esquema proxy-encryption, como o utilizado

por Asghar et al. (2013).

• Levantar discussões sobre a capacidade serviços

mensuráveis, entregando informações legíveis e úteis a

negócio, considerando que os serviços de DBaaS

Page 81: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

80

funcionariam sobre estruturas anonimizadas e dados

encriptados.

• Dentre os trabalhos catalogados, analisar os que permitem a

definição de níveis de encriptação pelo data owner com intuito

de traçar impactos de segurança e ganhos de funcionalidade.

• Analisar os estudos catalogados que suportam o modo misto,

campos em texto claro e campos encriptados, e investigar os

reais ganhos reais e os impactos na privacidade dos dados.

• Utilizar os estudos catalogados para investigar impactos do

uso de técnicas de processamento parcial de consultas sobre

dados encriptados no modelo DBaaS.

• Aprofundar as avaliações de possibilidades de utilização de

hardware para processamento criptográfico em soluções de

DBaaS. Buscar mais comparações entre abordagens que não

usam hardware e as que usam, além de investigar

possibilidades de aplicação de hardware menos custoso.

• Avaliar algoritmos candidatos a FHE que, mesmo com

limitações, possam ser empregados em domínios específicos

de banco de dados, garantida a viabilidade computacional e a

segurança.

Page 82: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

81

Referências

ACHENBACH, D.; GABEL, M.; HUBER, M.. Mimosecco: A Middleware for

Secure Cloud Storage . In: ISPE INTERNATIONAL CONFERENCE ON

CONCURRENT ENGINEERING, 18., 2011, Boston, EUA.

ALJAFERA, Hussain et al. A brief overview and an experimental evaluation of

data confidentiality measures on the cloud. Journal Of Innovation In Digital

Ecosystems . EUA, vol.1, p. 1-11. dez. 2014.

AMAZON (EUA). Amazon RDS. 2015. Disponível em:

<http://aws.amazon.com/rds/>. Acesso em: 16 jul. 2015.

ARASU, A. et al. Orthogonal security with Cipherbase. In: BIENNIAL

CONFERENCE ON INNOVATIVE DATA SYSTEMS RESEARCH (CIDR), 6.,

2013, Asilomar, CA, EUA. Proceedings of the 6th Biennial Conference on

Innovative Data Systems Research (CIDR'13) . Asilomar: 2011.

ASGHAR, M. R. et al. Supporting Complex Queries and Access Policies for Multi-

user Encrypted Databases. In: ACM WORKSHOP ON CLOUD COMPUTING

SECURITY, 2013, Berlin, Germany. Proceedings of the 2013 ACM workshop

on Cloud computing security workshop . 2013. p. 77 - 88.

ATALLAH, Mikhail J. et al. Dynamic and Efficient Key Management for Access

Hierarchies. ACM Transactions On Information And System Security

(TISSEC). Nova York, NY, EUA, vol. 12, p. 1-43. jan. 2009.

Page 83: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

82

MICROSOFT (EUA). Microsoft Azure - Banco de dados SQL . 2015. Disponível

em: <http://azure.microsoft.com/pt-br/services/sql-database/>. Acesso em: 16

jul. 2015.

BAJAJ, S.; SION, R.. TrustedDB: A Trusted Hardware-Based Database with

Privacy and Data Confidentiality. IEEE Transactions On Knowledge And Data

Engineering . EUA, vol. 26, p. 752-765. mar. 2014.

BAJAJ, S.; SION, R.. TrustedDB: A Trusted Hardware-Based Database with

Privacy and Data Confidentiality. In: ACM SIGMOD INTERNATIONAL

CONFERENCE ON MANAGEMENT OF DATA, 2011, Athens, Greece.

Proceedings of the 2011 ACM SIGMOD International Co nference on

Management of Data . Nova York, NY, EUA: ACM, 2011. p. 205 - 216.

BASHARAT, Iqra; AZAM, Farooque; MUZAFFAR, Abdul Wahab. Database

Security and Encryption: A Survey Study. International Journal Of Computer

Applications . Nova York, NY, EUA, vol. 47, p. 28-34. jun. 2012.

BENALOH, J.. Dense Probabilistic Encryption. In: WORKSHOP ON SELECTED

AREAS OF CRYPTOGRAPHY, 1994, Ontario, Canada. Proceedings of the

Workshop on Selected Areas of Cryptography . Ontario, Canada, 1994. p. 120

- 128.

BERENSON, Hal et al. A Critique of ANSI SQL Isolation Levels. In: ACM

SIGMOD INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA,

1995, San Jose, Califórnia, EUA. Proceedings of the 1995 ACM SIGMOD

International Conference on Management of Data . EUA: ACM, 1995. p. 1 - 10.

BOLDYREVA, A. et al. Orderpreserving Symmetric Encryption. In: ANNUAL

INTERNATIONAL CONFERENCE ON THE THEORY AND APPLICATIONS OF

Page 84: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

83

CRYPTOGRAPHIC TECHNIQUES (EUROCRYPT), 28., 2009, Cologne,

Germany. Proceedings of the 28th Annual International Confer ence on the

Theory and Applications of Cryptographic Techniques (EUROCRYPT).

2009.

BONEH, D.; GOH, E.; NISSIM, K. Evaluating 2-DNF Formulas on Ciphertexts.

In: INTERNATIONAL CONFERENCE ON THEORY OF CRYPTOGRAPHY

(TCC'05), 2., 2005. Proceedings of the Second International Conference on

Theory of Cryptography . 2005. p. 325 - 341.

BRAKERSKI, Z.; VAIKUNTANATHAN, V.. Efficient Fully Homomorphic

Encryption from (Standard) LWE. In: ANNUAL SYMPOSIUM ON

FOUNDATIONS OF COMPUTER SCIENCE, 52., 2011, Palm Springs, CA, EUA.

Proceedings of the 52nd Annual Symposium on Foundat ions of Computer

Science . EUA: IEEE, 2011. p. 97 - 106.

CAO, N. et al. Privacy-preserving multi-keyword ranked search over encrypted

cloud data. IEEE Transactions On Parallel And Distributed Syste ms . EUA, p.

222-233. jan. 2014.

CHEN, Y.; SION, R.. To cloud or Not to Cloud?: Musings on Costs and Viability.

In: ACM SYMP. CLOUD COMPUTING (SOCC ’11), 2., 2011, Cascais, Portugal.

Proceedings of the Second ACM Symp. Cloud Computing (SOCC ’11). Nova

York, NY, EUA: ACM, 2011. p. 1 - 7.

CRAMPTON, J.; MARTIN, K.; WILD, P.. On key assignment for hierarchical

access control. In: IEEE WORKSHOP COMPUTER SECURITY FOUNDATIONS,

19., 2006. Proceedings of the 19th IEEE Workshop Computer Secu rity

Foundations . 2006, p. 98 - 111.

DARA, S.. Cryptography Challenges for Computational Privacy in Public Clouds.

In: IEEE INTERNATIONAL CONFERENCE ON CLOUD COMPUTING IN

Page 85: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

84

EMERGING MARKETS (CCEM), 2., 2013, Bangalore, India. Proceedings of the

Conference on Cloud Computing in Emerging Markets ( CCEM). 2013. p.1-5.

DIFFIE, W.; HELLMAN, M. E.. New Directions in Cryptography. IEEE

Transactions On Information Theory . nov. 1976.

DINADAYALAN, P.; JEGADEESWARI, S.; GNANAMBIGAI, D.. Data Security

Issues in Cloud Environment and Solutions. In: WORLD CONGRESS ON

COMPUTING AND COMMUNICATION TECHNOLOGIES, 2014, Tiruchirappalli,

India. Proceedings of the 2014 World Congress on Computing and

Communication Technologies . CA, EUA: IEEE, 2014. p. 88 - 91.

DONG, Changyu; RUSSELLO, Giovanni; DULAY, Naranker. Shared and

Searchable Encrypted Data for Untrusted Servers. In: ANNUAL IFIP WG 11.3

WORKING CONFERENCE ON DATA AND APPLICATIONS SECURITY, 22.,

2008, London, Uk. Proceeedings of the 22Nd Annual IFIP WG 11.3 Workin g

Conference on Data and Applications Security . Berlin, Heidelberg: Springer-

verlag, 2008. p. 127 - 143.

EGOROVA, V.; CHECHULINA, D.; KRENDELEV, S. F. (2013) New View on

Block Encryption (Unpublished).

ELGAMAL, Taher. A Public Key Cryptosystem and a Signature Scheme Based

on Discrete Logarithms. Advances In Cryptology: Proceedings of CRYPTO 84 .

Berlin, p. 10-18. jan. 1985.

EUA. National Institute Of Standards And Technology (NIST). U.S Department of

Commerce. FIPS-197 - Advanced Encryption Standard (AES) . 2001.

Disponível em: <http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf>.

Acesso em: 12 jun. 2015.

Page 86: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

85

EUA. NIST. U.S Department Of Commerce. NIST Cloud Computing Program .

EUA: NIST, 2011. 7 p. Disponível em: < http://csrc.nist.gov/publications/

nistpubs/800-145/SP800-145.pdf >. Acesso em: 17 jul. 2015.

FABBRI, S. et al. Managing literature reviews information through visualization.

In: INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION

SYSTEMS, 14., 2012, Wroclaw, Poland. Proceedings of 14th the International

Conference on Enterprise Information Systems . Lisboa: Scitepress, 2012.

FACHIN, O.. Fundamentos de Metodologia. 5. ed. São Paulo: Saraiva, 2006.

209 p.

FERRETTI, L. et al. Security and Confidentiality Solutions for Public Cloud

Database Services. In: INTERNATIONAL CONFERENCE ON EMERGING

SECURITY INFORMATION, SYSTEMS AND TECHNOLOGIES

(SECURWARE), 7., 2013, Barcelona, Spain. Proceedings of the 7th

International Conference on Emerging Security Infor mation, Systems and

Technologies . 2013.

FERRETTI, L.; COLAJANNI, M.; MARCHETTI, M.. Distributed, Concurrent, and

Independent Access to Encrypted Cloud Databases. Parallel And Distributed

Systems: IEEE Transactions on Parallel and Distribu ted Systems . Alamitos,

CA, EUA, vol. 25, p. 437-446. fev. 2014a.

FERRETTI, L. et al. Scalable Architecture for Multi-User Encrypted SQL

Operations on Cloud Database Services. IEEE Transactions On Cloud

Computing . jun. 2014b.

FORBES (EUA). An MIT Magic Trick: Computing On Encrypted Database s

Without Ever Decrypting Them . 2011. Disponível em:

<http://www.forbes.com/sites/ andygreenberg/2011/12/19/an-mit-magic-trick-

Page 87: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

86

computing-on-encrypted-datab ases-without-ever-decrypting-them/>. Acesso

em: 10 maio 2015.

GENTRY, C.. Fully Homomorphic Encryption Using Ideal Lattices. In: ANNUAL

ACM AYMPOSIUM ON THEORY OF COMPUTING, 41., 2009, Nova York, NY,

EUA. Proceedings of the 41st Annual ACM Aymposium on The ory of

Computing . ACM, 2009a. p. 169 - 178.

GENTRY, C.. A Fully Homomorphic Encryption Scheme. 2009. 209 f. Tese

(Doutorado) - Doutorado, Stanford, CA, EUA, 2009b. Disponível em:

<http://crypto.stanford.edu/craig/craig-thesis.pdf>. Acesso em: 17 jul. 2015.

GENTRY, Craig. Computing arbitrary functions of encrypted data.

Communications of The ACM , Nova York, NY, EUA, v. 53, n. 3, p.97-105, mar.

2010.

GENTRY, C. et al. Private Database Access With HE-over-ORAM

Architecture . 2014. Repositório não revisado - Cryptology ePrint Archive, Report

2014/345.. Disponível em: <https://eprint.iacr.org/2014/345.pdf>. Acesso em: 16

jul. 2015.

GENTRY, C.; HALEVI, S.. Fully Homomorphic Encryption Without Squashing

Using Depth-3 Arithmetic Circuits. In: IEEE SYMPOSIUM ON FOUNDATIONS

OF COMPUTER SCIENCE, 52., 2011, Palm Springs, California. Proceedings of

the 2011 IEEE 52Nd Annual Symposium on Foundations of Computer

Science . Washington, DC, EUA: IEEE Computer Society, 2011. p. 107 - 109.

GIL, Antônio Carlos. Como Elaborar Projetos de Pesquisa . 5. ed. São Paulo:

Editora Atlas, 2010. 200 p.

GOLDREICH, O.. Fundations of Cryptography . Cambridge: Cambridge

University Press, 2004. 798 p.

Page 88: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

87

GOLDWASSER, S.; MICALI, S.. Probabilistic Encryption. Journal Of Computer

And System Sciences. v.28, p. 270-299. abr. 1984.

GOODRICH, Michael T.. Data-oblivious External-memory Algorithms for the

Compaction, Selection, and Sorting of Outsourced Data. In: ANNUAL ACM

SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES,

23., 2011, San Jose, Califórnia, EUA. Proceedings of the Twenty-third Annual

ACM Symposium on Parallelism in Algorithms and Arch itectures . Nova

York, NY, EUA: ACM, 2011. p. 379 - 388.

GOOGLE (EUA). A command line encrypting client that accesses BigQuery

service. 2014. Disponível em: <https://code.google.com/p/encrypted-bigquery-

client/>. Acesso em: 01 jul. 2015.

GREENHALGH, Trisha; PEACOCK, Richard. Effectiveness and efficiency of

search methods in systematic reviews of complex evidence: audit of primary

sources. BMJ . Londres, nov. 2005.

HACIGUMUS, H.; IYER, B.; MEHROTRA, S.. Providing Database as a Service.

In: INTERNATIONAL CONFERENCE ON DATA ENGINEERING, 18., 2002, San

Jose, CA, EUA. Proceedings of the 18th International Conference on Data

Engineering . 2002. p. 29 - 38.

HUBER, M.; HARTUNG, G.. Side Channels in Secure Database Outsourcing on

the Example of the MimoSecco Scheme. Trusted Cloud Computing . p. 35-48.

nov. 2014.

KATZ, J.; LINDELL, Y.. Introduction to Modern Cryptography . 2. ed. Chapman

e Hall, 2015. 598 p.

KESHAVARZI, A.; HAGHIGHAT, A. T.; BOHLOULI, M.. Research Challenges and

Prospective Business Impacts of Cloud Computing: A Survey. In: IEEE

Page 89: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

88

INTERNATIONAL CONFERENCE ON INTELLIGENT DATA ACQUISITION AND

ADVANCED COMPUTING SYSTEMS: TECHNOLOGY AND APPLICATIONS,

7., 2013, Berlin, Germany. Proceedings of the 7th IEEE International

Conference on Intelligent Data Acquisition and Adva nced Computing

Systems: Technology and Applications . 2013. p. 731 - 736.

KITCHENHAM, Barbara. Procedures for Performing Systematic Reviews. Keele

University Technical Report TR/SE-0401 . Keele University, Keele, UK, p. 1-33.

jul. 2004.

KITCHENHAM, Barbara A.; BUDGEN, David; BRERETON, O. Pearl. Using

mapping studies as the basis for further research - A participant-observer case

study. Information And Software Technology . Newton, MA, EUA, p. 638-651.

jun. 2011.

Lapes. StArt - State of the Art through Systematic Review . 2015. Disponível

em: <http://lapes.dc.ufscar.br/tools/start_tool>. Acesso em: 16 jul. 2015.

LEHNER, J.; OBERWEIS, A.; SCHIEFER, G.. Data protection in the Cloud - The

MimoSecco Approach. Trusted Cloud Computing . p. 177-186. nov. 2014.

LI, Jiangtao; LI, Ninghui. OACerts: Oblivious Attribute Certificates. IEEE

Transactions On Dependable And Secure Computing . p. 340-352. dez. 2006.

LI, Jin et al. L-EncDB: A lightweight framework for privacy-preserving data queries

in cloud computing. Knowledge-based Systems . v. 79, p. 18-26. maio 2015.

LIU, Zheli et al. SQL-Based Fuzzy Query Mechanism Over Encrypted Database.

International Journal Of Data Warehousing And Minin g (IJDWM) . p. 71-87.

dez. 2014.

Page 90: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

89

LIU, Zheli et al. Secure Storage and Fuzzy Query over Encrypted Databases. In:

INTERNATIONAL CONFERENCE (NSS), 7., 2013, Madrid, Spain. Proceedings

of the 7th International Conference . Berlin: Springer-verlag Berlin Heidelberg,

2013. p. 439 - 450.

LU, Yanbin; TSUDIK, Gene. Enhancing Data Privacy in the Cloud. In: 5TH IFIP

WG 11.11 INTERNATIONAL CONFERENCE, IFIPTM 2011, 5., 2011,

Copenhagen, Denmark. Proceedings of the 5th IFIP WG 11.11 International

Conference, IFIPTM 2011 . IFIP International Federation For Information

Processing, 07. 2011, p. 117 - 132.

MARSHALL, Christopher; BRERETON, Pearl; KITCHENHAM, Barbara. Tools to

Support Systematic Reviews in Software Engineering: A Feature Analysis. In:

INTERNATIONAL CONFERENCE ON EVALUATION AND ASSESSMENT IN

SOFTWARE ENGINEERING (EASE), 18., 2014, Londres, UK. Proceedings of

the 18th International Conference on Evaluation and Assessment in

Software Engineering . Nova York, Ny, Eua: Acm, 2014. p. 1 - 10.

MARCONI, Maria de Andrade; LAKATOS, Eva Maria. Fundamentos de

Metodologia Científica. 7. ed. São Paulo: Atlas, 2010. 320 p.

MEHAK, Faria et al. Security Aspects of Database-as-a-Service (DBaaS) in

Cloud Computing. Cloud Computing - Challenges, Limitations And R&d

Solutions . Switzerland, p. 297-324. out. 2014.

MICCIANCIO, Daniele. A First Glimpse of Cryptography's Holy Grail.

Communications Of The Acm, Nova York, NY, EUA, v. 53, n. 3, p.96-96, mar.

2010.

MIMOSECCO (Alemanha). MimoSecco - Middleware for Mobile and Secure

Cloud Computing . 2015. Disponível em: <www.mimosecco.de>. Acesso em: 12

jul. 2015.

Page 91: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

90

NAEHRIG, Michael; LAUTER, Kristin; VAIKUNTANATHAN, Vinod. Can

homomorphic encryption be practical? In: ACM WORKSHOP ON CLOUD

COMPUTING SECURITY WORKSHOP, 3., 2011, Chicago, EUA. Proceedings

of the 3rd ACM workshop on Cloud computing security workshop . Nova

York, NY, EUA: ACM, 2011. p. 113 - 124.

ORACLE (EUA). Oracle Cloud Database . 2015. Disponível em:

<https://cloud.oracle.com/database>. Acesso em: 17 jul. 2015.

PAILLIER, Pascal. Public-key cryptosystems based on composite degree

residuosity classes. In: INTERNATIONAL CONFERENCE ON THEORY AND

APPLICATION OF CRYPTOGRAPHIC TECHNIQUES, 17., 1999, Prague,

República Checa. Proceedings of the 17th International Conference on

Theory and Application of Cryptographic Techniques . Berlin, Heidelberg:

Springer-verlag, 1999. p. 223 - 238.

PAPPAS, Vasilis et al. Blind Seer: A Scalable Private DBMS. In: IEEE

SYMPOSIUM ON SECURITY AND PRIVACY, 14., 2014, Fairmont, San Jose,

Ca. Proceedings of the 2014 IEEE Symposium on Security and Privacy .

Washington, DC, EUA: IEEE Computer Society, 2014. p. 359 - 374.

PARKHILL, Douglas F.. The Challenge of The Computer Utility. Reino Unido:

Addison-wesley Publishing Company, 1966.

POPA, Raluca Ada et al. CryptDB : MIT CSAIL Computer Systems Security

Group. 2014. Disponível em: <https://css.csail.mit.edu/cryptdb/>. Acesso em: 16

jul. 2015.

POPA, Raluca Ada et al. CryptDB: Processing Queries on an Encrypted

Database. Communications of the ACM . Nova York, NY, EUA, set. 2012. p.

103-111.

Page 92: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

91

POPA, Raluca Ada et al. CryptDB: Protecting Confidentiality with Encrypted

Query Processing. In: TWENTY-THIRD ACM SYMPOSIUM ON OPERATING

SYSTEMS PRINCIPLES, 23, 2011, Cascais. Proceedings of the Twenty-Third

ACM Symposium on Operating Systems Principles . Cascais, Portugal: Acm,

2011. p. 85 - 100.

POPA, Raluca Ada et al. Building web applications on top of encrypted data using

Mylar. In: CONFERENCE ON NETWORKED SYSTEMS DESIGN AND

IMPLEMENTATION (USENIX), 11., 2014, Seattle, WA, EUA. Proceedings of the

11th USENIX Conference on Networked Systems Design and

Implementation . 2014. p. 157 - 172.

RABIN, Michel O.. Digitalized Signatures and Public-Key Functions as

Intractable as Factorization . MIT-LCS-TR-212. ed. Massachusetts Institute Of

Technology, 1979. 20 p. Disponível em: <http://publications.csail.mit.edu/lcs

/pubs/pdf/MIT-LCS-TR-212.pdf>. Acesso em: 17 jul. 2015.

RIMAL, B.p.; CHOI, Eunmi; LUMB, I.. A Taxonomy and Survey of Cloud

Computing Systems. In: INC, IMS AND IDC, 2009. NCM '09. INTERNATIONAL

CONFERENCE ON JOINT, 5., 2009, Seul, Coreia do Sul. Proceedings of the

INC, IMS and IDC, 2009. NCM '09 . International Conference on Joint. EUA:

IEEE, 2009. p. 44 - 51.

RIVEST, R.l.; SHAMIR, A.; ADLEMAN, L.. A method for obtaining digital

signatures and public-key cryptosystems. Communications of the ACM , Nova

York, NY, EUA, v. 21, n. 2, p.120-126, fev. 1978. Disponível em: <

http://people.csail. mit.edu/rivest/publications.html>. Acesso em: 17 jul. 2015.

RIVEST, R.; ADLEMAN, L.; DERTOUZOS, M.. On Data Banks and Privacy

Homomorphism. In: FOUNDATIONS OF SECURE COMPUTATION, 1978, Nova

York. Proceedings of the Foundations of Secure Computatio n. Nova York,

Page 93: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

92

NY, EUA: Academic Press, 1978. p. 169 - 180. Disponível em: <

http://people.csail. mit.edu/rivest/publications.html>. Acesso em: 17 jul. 2015.

SALSOFT PAWEL SALAWA. SQLite Studio. 2015. Disponível em:

<http://sqlitestudio.pl/>. Acesso em: 17 jul. 2015.

SARFRAZ, M. I. et al. DBMask: Fine-Grained Access Control on Encrypted

Relational Databases. In: ACM CONFERENCE ON DATA AND APPLICATION

SECURITY AND PRIVACY (CODASPY), 5., 2015, San Antonio, TX, EUA.

Proceedings of the 5th ACM Conference on Data and A pplication Security

and Privacy - CODASPY’15 . 2015. p. 1 - 11.

SHAHZAD, Farrukh. State-of-the-art Survey on Cloud Computing Security

Challenges, Approaches and Solutions. In: INTERNATIONAL CONFERENCE

ON EMERGING UBIQUITOUS SYSTEMS AND PERVASIVE NETWORKS

(EUSPN), 5., 2014, Halifax, Nova Scotia, Canada. Proceedings of the The 5th

International Conference on Emerging Ubiquitous Sys tems and Pervasive

Networks (EUSPN-2014) . Amesterdã: Elsevier B.v., 2014. p. 357 - 362.

SCHNEIER, Bruce. Description of a New Variable-Length Key, 64-Bit Block

Cipher (Blowfish). In: FAST SOFTWARE ENCRYPTION: CAMBRIDGE

SECURITY WORKSHOP, 1993, Cambridge, U.k.. Proceedings of the Fast

Software Encryption: Cambridge Security Workshop . Berlin: Springer-verlag,

1994. p. 191 - 204. Disponível em < https://www.schneier.com/paper-blowfish-

fse.html>. Acesso em: 10 de junho de 2015.

SHANKARWAR, Mahesh U.; PAWAR, Ambika V.. Security and Privacy in Cloud

Computing: A Survey. In: INTERNATIONAL CONFERENCE ON FRONTIERS OF

INTELLIGENT COMPUTING, 3., 2014, Bhubaneswar, Odisha, India.

Proceedings of the 3rd International Conference on Frontiers of Intelligent

Computing: Theory and Applications (FICTA) 2014 . v. 2, Springer, 2014.

Page 94: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

93

SHATILOV, K. et al. Solution for Secure Private Data Storage in a Cloud. In:

FEDERATED CONFERENCE ON COMPUTER SCIENCE AND INFORMATION

SYSTEMS (FEDCSIS), 2014. Proceedings of the Federated Conference on

Computer Science and Information Systems (FedCSIS) . IEEE, 2014. p. 885 -

889.

SILVA, Edna Lucia da; MENEZES, Estera Muszkat. Metodologia da Pesquisa

e Elaboração de Dissertação . 4. ed. Florianópolis: UFSC, 2005. 139 p.

Disponível em: <https://projetos.inf.ufsc.br/arquivos/Metodologia_de_pesquisa

_e_elaboracao_de_teses_e_dissertacoes_4ed.pdf>. Acesso em: 12 jul. 2015.

SMART, N. P.; VERCAUTEREN, F.. Fully Homomorphic Encryption with

Relatively Small Key and Ciphertext Sizes. In: INTERNATIONAL CONFERENCE

ON PRACTICE AND THEORY IN PUBLIC KEY CRYPTOGRAPHY (PKC), 13.,

2010, Paris, France. Proceedings of the 13th International Conference on

Practice and Theory in Public Key Cryptography . Berlin: Springer-verlag,

2010. p. 420 - 443.

SONG, Dawn Xiaoding; WAGNER, D.; PERRIG, A.. Practical techniques for

searches on encrypted data. In: IEEE SYMPOSIUM ON SECURITY AND

PRIVACY, 21., 2000, Oakland, Ca. IEEE Symposium on Security and Privacy,

2000. S&P 2000. Proceedings .IEEE, 2000. p. 44 - 55.

STEPHEN, J. J. et al. Program Analysis for Secure Big Data Processing. In:

IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE

ENGINEERING, 29., 2014, Vasteras, Suécia. Proceedings of the IEEE/ACM

International Conference on Automated Software Engi neering, 2014 . Nova

York, NY, EUA: Acm, 2014. p. 277 - 288.

SUBASHINI, S.; KAVITHA, V.. A survey on Security Issues in Service Delivery

Models of Cloudcomputing. Journal Of Network And Computer Applications. p.

1-11. jan. 2011.

Page 95: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

94

TOPLE, Shruti et al. AutoCrypt - Enabling Homomorphic Computation on Servers

to Protect Sensitive Web Content. In: ACM SIGSAC CONFERENCE ON

COMPUTER & COMMUNICATIONS SECURITY, 2013, Berlin, Germany.

Proceedings of the 2013 ACM SIGSAC conference on Co mputer &

communications security . Nova York, NY, EUA: Acm, 2013. p. 1297 - 1310.

TROMBETTA, Alberto; PERSIANO, Giuseppe; BRAGHIN, Stefano. Processing

Private Queries over an Obfuscated Database Using Hidden Vector Encryption.

In: NORDIC CONFERENCE (NORDSEC), 19., 2014, Tromso, Noruega.

Proceedings of the 19th Nordic Conference, NordSec 2014. Suíça: Springer

International Publishing, 2014. p. 94 - 109.

TU, Stephen et al. Processing analytical queries over encrypted data. In:

INTERNATIONAL CONFERENCE ON VERY LARGE DATA BASES, 39., 2013,

Trento, Italy. Proceedings of the 39th international conference on Very Large

Data Bases . VLDB Endowment, 2013. p. 289 - 300.

VIMERCATI, Sabrina de Capitani di et al. Over-encryption: Management of

Access Control Evolution on Outsourced Data. In: INTERNATIONAL

CONFERENCE ON VERY LARGE DATA BASES, 33., 2007, Vienna, Austria.

Proceedings of the 33rd International Conference on Very Large Data

Bases . VLDB Endowment, 2007. p. 123 - 134.

WANG, Shiyuan; AGRAWAL, Divyakant; ABBADI, Amr El. A Comprehensive

Framework for Secure Query Processing on Relational Data in the Cloud. In:

VLDB INTERNATIONAL CONFERENCE ON SECURE DATA MANAGEMENT,

8., 2011, Seattle, Wa, Eua. Proceedings of the 8th VLDB International

Conference on Secure Data Management . Berlin, Heidelberg: Springer-verlag,

2011. p. 52 - 69.

WAZLAWICK, R. S.. Metodologia de Pesquisa para Ciência da Computação .

Rio de Janeiro: Elsevier, 2009. 159 p. (6).

Page 96: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

95

WONG, Wai Kit et al. Secure Query Processing with Data Interoperability in a

Cloud Database Environment. In: ACM SIGMOD INTERNATIONAL

CONFERENCE ON MANAGEMENT OF DATA, 2014, Snowbird, Utah, EUA.

Proceedings of the 2014 ACM SIGMOD International Co nference on

Management of Data . Nova York, NY, EUA: ACM, 2014. p. 1395 - 1406.

ZHANG, Qi; CHENG, Lu; BOUTABA, Raouf. Cloud Computing: State-of-the-art

and Research Challenges. Journal Of Internet Services And Applications .

Berlin, Heidelberg, v. 1, p. 7-18. maio 2010.

ZHIROV, Alexander; ZHIROVA, Olga; KRENDELEV, Sergey F.. Practical Fully

Homomorphic Encryption over Polynomial Quotient Rings. In: WORLD

CONGRESS ON INTERNET SECURITY, 2013, London, United Kingdom.

Proceedings of the World Con gress on Internet Secu rity (WorldCIS-2013) .

IEEE, 2013. p. 70 - 75.

Page 97: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

96

APÊNDICE

A

A. Protocolo do Mapeamento

Sistemático

Esta seção descreve os detalhes do protocolo definido na fase de

planejamento do mapeamento sistemático.

Page 98: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

97

Protocolo de Mapeamento Sistemático

A.1 – Descrição do Problema

O armazenamento de dados em sistemas gerenciadores de banco de

dados para Database-as-a-service garantindo privacidade e sigilo (DBaaS)

desafia pesquisadores. É esperado que a arquitetura utilizada não permita que

os dados em texto claro não sejam acessados indevidamente, mesmo por quem

os administra.

A.2 - Objetivo

Este protocolo deve nortear a execução de um mapeamento sistemático.

Ao final do mapeamento deve ser apresentado um catálogo de estudos sobre

bancos de dados encriptados para DBaaS.

A.3 - Pergunta de Pesquisa

A pergunta de pesquisa deve guiar a execução do mapeamento

sistemático, cujo resultado é a base para atendimer aos objetivos do trabalho.

A.3.1 - Foco da pergunta de pesquisa

Identificar estudos que apresentem abordagens de modelos de soluções

baseadas em criptografia que utilizem sistemas gerenciadores de banco de

dados, de forma a permitir sua caracterização e comparação com o modelo

baseado em Proxy implementado no CryptDB.

A.3.2 - Qualidade e Amplitude da pergunta

Com intuito de garantir a qualidade e delimitar a amplitude da pergunta de

pesquisa, os estudos com os modelos propostos devem (i) ter uma arquitetura

Page 99: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

98

bem definida para o modelo, (ii) contar com experimentos que permitam a sua

avaliação e (iii) descrever as abordagens de avaliação do modelo.

A.3.3 - Pergunta de Pesquisa

A pergunta de pesquisa utilizada neste protocolo coincide, por uma

consequência natural, com a questão de pesquisa principal da dissertação, em

seguida replicada:

Q.1) O modelo baseado em arquitetura Proxy é promissor quanto a tornar-se

uma solução para sistemas gerenciadores de banco de dados na nuvem sob o

modelo DBaaS, garantindo aplicabilidade, privacidade e sigilo sobre os dados?

A.3.3.1- Intervenção

Haverá intervenção sobre as propostas de modelos de armazenamento

de dados em sistemas gerenciadores de banco de dados baseados em

criptografia.

A.3.3.2 - População

A população de estudos que este mapeamento busca abranger são

aqueles que tratem de armazenamento de dados com garantias de privacidade.

A.3.3.3 - Estudos de controle (base inicial)

Inexiste base inicial ou de controle de posse do pesquisador.

A.4 - Palavras-chave

As palavras-chave foram selecionadas por estarem ligadas a pergunta de

Page 100: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

99

pesquisa e espera-se que com elas os resultados das fontes de pesquisa

possam cobrir a população desejada para o mapeamento sistemático.

As palavras-chave, além da ligação com a pergunta de pesquisa, seguem

critérios de relação e classificação entre elas. O grupo das doze primeiras

palavras-chave tratam de esquemas criptográficos podem ser utilizados para

implementação das soluções buscadas. As três seguintes descrevem

tecnologias e conceitos. Enquanto as últimas descrevem princípios que devem

ser seguidos por qualquer solução proposta. Palavras-chave consideradas:

“public key encryption”, “public key cryptographic”,

“symmetric homomorphic encryption”, “symmetric

homomorphic cryptographic”, “somewhat homomorphic

encryption”, “somewhat homomorphic cryptographic”,

“partially homomorphic encryption”, “partially

homomorphic cryptographic”, “fully homomorphic

encryption”, “fully homomorphic cryptographic”, “cryptdb”,

“cloud storage”, “encrypted storage”, “privacy-preserving”,

“privacy”, “confidentiality”, “encrypted”.

A.5 - Critérios para Seleção de Fontes

As fontes de pesquisa para execução do protocolo de levantamento

sistemático devem atender aos critérios de: (i) possuir opção de consulta por

palavras chave, (ii) disponibilidade de download de artigos por meio de página

na Internet e (iii) importância e relevância da fonte (Kitchenham 2007).

A.5.1 - Fontes Escolhidas

As seguintes fontes foram selecionadas para este mapeamento, de

acordo com os critérios definidos na seção anterior: ACM Digital Library,

Page 101: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

100

SpringerLink, IEEE Xplore Digital Library, Science Direct, Scopus, CiteSeerX e

Engineering Village.

A.6 - Seleção de estudos primários: inclusão/exclus ão dos artigos e

procedimentos

Todos os resultados encontrados devem se submeter aos seguintes

critérios de inclusão e exclusão. Estes critérios devem ser revistos em cada fase,

em qualquer estágio que o estudo é avaliado:

A.6.1 - Critérios de exclusão

Os artigos não devem se enquadrar nos critérios abaixo:

• E01: O estudo não está em formato eletrônico;

• E02: O estudo não está livremente disponível na web;

• E03: O idioma do estudo não é o inglês;

• E04: O estudo não responde à pergunta de pesquisa;

• E05: O estudo é repetido: se o artigo está disponível em duas fontes,

apenas a primeira incidência será considerada;

• E06: O estudo é duplicado: se dois estudos apresentam conteúdo similar,

apenas o último e/ou o mais completo será considerado;

• E07: O estudo não foi revisado ou não é completo: relatório técnico,

sumário estendido, apresentação ou livro;

• E08: O resultado não é um estudo, mas conteúdo irrelevante (índice,

folder, chamadas para eventos, etc.).

A.6.2 - Critérios de inclusão

Os artigos devem se enquadrar nos seguintes critérios:

Page 102: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

101

• I01: O artigo deve propor um modelo de arquitetura que envolva um

sistema gerenciador de banco de dados baseado em criptografia sob o

modelo DBaaS;

• I02: O artigo deve indicar que o modelo já foi implementado em uma

ferramenta que permitiu a experimentação, execução e avaliação do

modelo proposto;

• I03: O artigo deve descrever o modelo de ferramenta proposto trazendo

avaliações sobre sua aplicabilidade e capacidade de assegurar a

privacidade dos dados.

A.6.3 - Procedimentos

Como definido por Kitchenham (2004), baseia-se em um processo multi-

estágio, com duas etapas. Na primeira etapa os critérios de inclusão e exclusão

devem ser aplicados na leitura e análise do título, abstract e palavras-chave de

cada um dos artigos. A lista dos artigos não excluídos na primeira etapa seguem

para a segunda etapa da seleção. Um artigo só pode ser analisado na segunda

etapa se contar com seu texto completo disponível para leitura.

A segunda etapa, que precede o estágio de extração, contempla

obrigatoriamente a leitura da introdução e conclusão de cada um dos artigos

remanescentes da primeira etapa pelo pesquisador e por um auxiliar, que deve

ser previamente orientado pelo pesquisador sobre os objetivos da pesquisa e os

critérios de exclusão e inclusão de artigos. As impressões de cada um são

discutidas em conjunto e os critérios de inclusão e exclusão são novamente

aplicados. Em caso de dúvidas, o texto completo pode ser usado.

Ainda na segunda etapa, ao final da decisão sobre a inclusão ou exclusão

de cada artigo, a lista de referências deve ser verificada pelo pesquisador e o

auxiliar. Se um artigo claramente interessante for encontrado, ele será

adicionado ao final da lista de artigos que estão sendo avaliados. Esta técnica,

baseada em snowball, só será aplicada até este nível, portanto as referências

Page 103: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

102

deste último artigo não serão analisadas. O resultado desta segunda etapa de

seleção são os estudos primários selecionados.

Todas as decisões sobre inclusão e exclusão de arquivos devem ter o

registro de seus motivos, de forma que permita uma posterior conferência.

A.7 - Estratégia de Busca de Informação

A estratégia de busca precisa ser bem definida, pois depende dela o

alcance a uma população satisfatória de estudos, tanto em quantidade, mas

também em consonância com as repostas que se busca para a pergunta de

pesquisa.

É o rigor que difere um mapeamento sistemático de uma revisão

bibliográfica tradicional (KITCHENHAM, 2004). Para este protocolo, depois de

testes e ajustes, foram definidas as seguintes estratégias de buscas, já

atualizadas com os dados da execução:

A.7.1 – Fonte ACM Digital Library

String de Busca

Fonte: ACM Digital Library

Data da busca: 15/05/2015

Limitação de período: Sem limitação

URL: http://dl.acm.org/advsearch.cfm?coll=DL&dl=ACM&query=&qrycnt=391109&since_month=&since_year=&before_month=&before_year=

Pesquisador: Marcelo Ferreira de Lima Observações: Nenhuma. String para busca: ( ("public key" OR "symmetric homomorphic" OR "somewhat

homomorphic" OR "partially homomorphic" OR "fully homomorphic")AND("encryption" OR "cryptographic")) AND ("cryptdb" OR "cloud storage" OR "encrypted storage") AND ("privacy-preserving" OR "privacy" OR "confidentiality") AND ((("Abstract":"privacy") OR ("Abstract":"encrypted")) OR (("Title":"privacy") OR ("Title":"encrypted")) OR (("Keywords":"privacy") OR ("Keywords":"encrypted")))

Resultados: 114 itens retornados.

Page 104: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

103

A.7.2 – Fonte SpringerLink

String de Busca Fonte: SpringerLink

Data da busca: 15/05/2015

Limitação de período: Sem limitação

URL: http://link.springer.com Pesquisador: Marcelo Ferreira de Lima Observações: • O mecanismo não distingue campos específicos para a

busca (ex.: abstract, title, keywords, etc.). String para busca: (("public key" OR "symmetric homomorphic" OR "somewhat

homomorphic" OR "partially homomorphic" OR "fully homomorphic") AND ("encryption" OR "cryptographic")) AND ("cryptdb" OR "cloud storage" OR "encrypted storage") AND ("privacy-preserving" OR "confidentiality") AND ("privacy" OR "encrypted")

Resultados: 292 itens retornados.

A.7.3 – Fonte IEEE Xplore Digital Library

String de Busca Fonte: IEEE Xplore Digital Library

Data da busca: 15/05/2015

Limitação de período: Sem limitação

URL: http://ieeexplore.ieee.org/search/advsearch.jsp?expression-builder

Pesquisador: Marcelo Ferreira de Lima Observações: • Visando amplitude, a opção “Full Text & Metadata” foi

marcada. • O mecanismo de busca é limitado em 40 palavras.

Portanto, é necessária a execução da string por 3 vezes (alternando apenas as expressões em destaque ao final) e a eliminação de resultados repetidos dentro desta mesma fonte.

String para busca: (("public key" OR "symmetric homomorphic" OR "somewhat homomorphic" OR "partially homomorphic" OR "fully homomorphic") AND ("encryption" OR "cryptographic")) AND ("cryptdb" OR "cloud storage" OR "encrypted storage") AND ("privacy-preserving" OR "privacy" OR "confidentiality") AND -------------------------------------------------------------------------(("Abstract":"privacy") OR ("Abstract":"encrypted")) ------------------------------------------------------------------------(("Title":"privacy") OR ("Title":"encrypted")) -------------------------------------------------------------------------(("Keywords":"privacy") OR ("Keywords":"encrypted"))

Resultados: 257 itens retornados, 15 itens retornados e 277 itens retornados por cada consulta. 376 depois de eliminadas as repetições entre as consultas.

Page 105: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

104

A.7.4 – Fonte Science Direct

String de Busca Fonte: Science Direct

Data da busca: 15/05/2015

Limitação de período: Sem limitação

URL: http://www.sciencedirect.com/science?_ob=MiamiSearchURL&_method=requestForm&_temp=all_boolSearch.tmpl&md5=052b06d957a9d8c82e07acf1d7eef1b7

Pesquisador: Marcelo Ferreira de Lima Observações: Nenhuma. String para busca: (("public key" OR "symmetric homomorphic" OR "somewhat

homomorphic" OR "partially homomorphic" OR "fully homomorphic") AND ("encryption" OR "cryptographic")) AND ("cryptdb" OR "cloud storage" OR "encrypted storage") AND ("privacy-preserving" OR "privacy" OR "confidentiality") AND ((("Abstract":"privacy") OR ("Abstract":"encrypted")) OR (("Title":"privacy") OR ("Title":"encrypted")) OR (("Keywords":"privacy") OR ("Keywords":"encrypted")))

Resultados: 110 itens retornados.

A.7.5 – Fonte Scopus

String de Busca Fonte: Scopus

Data da busca: 15/05/2015

Limitação de período: Sem limitação

URL: http://www.scopus.com/search/form.url?display=advanced&clear=t&origin=searchbasic&txGid=44037053C4BDA6B7885329D1FEA2852F.mw4ft95QGjz1tIFG9A1uw%3a2

Pesquisador: Marcelo Ferreira de Lima Observações: Nenhuma. String para busca: (("public key" OR "symmetric homomorphic" OR "somewhat

homomorphic" OR "partially homomorphic" OR "fully homomorphic") AND ("encryption" OR "cryptographic")) AND ("cryptdb" OR "cloud storage" OR "encrypted storage") AND ("privacy-preserving" OR "privacy" OR "confidentiality") AND (TITLE-ABS-KEY("privacy") OR TITLE-ABS-KEY("encrypted"))

Resultados: 375 itens retornados.

A.7.6 – Fonte CiteSeerX

String de Busca Fonte: CiteSeerX

Data da busca: 15/05/2015

Limitação de período: Sem limitação

URL: http://citeseerx.ist.psu.edu/index Pesquisador: Marcelo Ferreira de Lima Observações: Nenhuma. String para busca: (("public key" OR "symmetric homomorphic" OR "somewhat

homomorphic" OR "partially homomorphic" OR "fully homomorphic") AND ("encryption" OR "cryptographic")) AND ("cryptdb" OR "cloud storage" OR "encrypted storage") AND ("privacy-preserving" OR "privacy" OR "confidentiality") AND ((abstract:("privacy") OR abstract:("encrypted")) OR (title:("privacy") OR title:("encrypted")) OR (keyword:("privacy") OR keyword:("encrypted")))

Resultados: 248 itens retornados.

Page 106: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

105

A.7.7 – Engineering Village

String de Busca

Fonte: Engineering Village

Data da busca: 15/05/2015

Limitação de período: Sem limitação

URL: http://www.engineeringvillage.com/search/expert.url? CID=expertsearch

Pesquisador: Marcelo Ferreira de Lima Observações: Nenhuma. String para busca: ((("public key" OR "symmetric homomorphic" OR "somewhat

homomorphic" OR "partially homomorphic" OR "fully homomorphic")AND("encryption" OR "cryptographic")) wn ALL) AND (("cryptdb" OR "cloud storage" OR "encrypted storage") wn ALL) AND (("privacy-preserving" OR "privacy" OR "confidentiality") wn ALL) AND ((("privacy") wn KY) OR (("encrypted") wn KY))

Resultados: 19 itens retornados.

A.8 – Extração de Dados

Para a execução do estágio de extração de dados sobre os estudos primários selecionados é preciso projetar previamente o formulário de extração. Isto é uma estratégia para evitar os vieses, mais prováveis se o formulário é criado ao longo da execução da extração (KITCHENHAM; BUDGEN; BRERETON, 2011). A criação e alterações e neste formulário devem ser discutidos entre o pesquisador e o auxiliar. Os seguintes tópicos constam no formulário desta pesquisa:

SQ Item do formulário Descrição/Interesse

1 Nome da Solução Nome dado a solução pelos autores ou citação, no caso de não haver um nome.

2 Ano Ano da publicação do estudo.

3 Quantidade de autores? Número de autores.

4 Instituição de vínculo dos autores? Lista de instituições às quais os autores aparecem vinculados.

5 Referencia o CryptDB no trabalho? O estudo cita o trabalho que publicou o CryptDB. (S/N)

6 Permite interferência no nível de criptografia?

Permite que o usuário ou DBA defina a criptografia a ser utilizada em cada campo, não fazendo apenas de forma automática. (S/N)

Page 107: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

106

SQ Item do formulário Descrição/Interesse

7 Apresenta suporte ao armazenamento de valores em texto claro?

Permite que campos em texto claro sejam armazenados em conjunto com campos encriptados. Não encripta necessariamente todos os campos. (S/N)

8 Existe processamento de consulta a dados encriptados no cliente?

Processa consultas completas ou resultados pré-processados no cliente. (S/N)

9 Usa encriptação em camadas ("cebola" ou com múltiplos campos)?

Usa uma das duas ou as duas estratégias: encripta múltiplas vezes valores no mesmo campo e/ou armazena em mais de um campo encriptado um campo em texto claro. (S/N)

10 É composto de um DBMS não modificado? Baseia-se em um DBMS de uso difundido, sem alterações no código fonte, podendo simplesmente ser usado como é. (S/N)

11 É baseado em hardware? Precisa de um hardware para funcionar com todo o seu potencial. (S/N)

12 Prevê repartição dos dados e/ou índices em locais diferentes?

É adotada alguma estratégia que utiliza: dados e/ou índices de alguma forma distribuída. (S/N)

13 Síntese do modelo de segurança previsto Descrição textual do modelo de segurança previsto (entidades confiáveis, não confiáveis, conluios, situações específicas, uso de dispositivos, etc.)

14 Proxy em ambiente confiável? Campo derivado do anterior.

15 Esquemas, sistemas ou algoritmos criptográficos que se baseia?

Lista de esquemas, sistemas ou algoritmos criptográficos (ex.: OPE, FPE, proxy-encryption, etc.)

16 Utiliza PHE? Utiliza encriptação parcialmente homomórfica. (S/N)

17 Utiliza FHE? Utiliza encriptação completamente homomórfica. (S/N)

18 Arquitetura Identificada Descrição da arquitetura identificada.

Page 108: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

107

SQ Item do formulário Descrição/Interesse

19 Apenas data onwer/DBA carrega e altera dados encriptados no DBMS?

Alterações na base só podem ser realizadas pelo data owner ou DBA. Usuários ficam restritos às consultas. (S/N)

20 Quais vantagens explicitamente apontadas do modelo Proxy?

Descrição textual das vantagens sobre o modelo de arquitetura Proxy explicitamente apontadas no estudo.

21 Quais desvantagens explicitamente apontadas do modelo Proxy?

Descrição textual das desvantagens sobre o modelo de arquitetura Proxy explicitamente apontadas no estudo.

A.9 – Avaliação de Qualidade

Embora não seja considerado essencial ou relevante, para um

mapeamento sistemático (KITCHENHAM; BUDGEN; BRERETON, 2011), o

protocolo definido para este trabalho utiliza um conjunto de perguntas de

avaliação de qualidade, que devem ser aplicadas a cada um dos estudos

selecionados. A motivação para inclusão de critérios de avaliação de qualidade

na presente pesquisa se limita a um subconjunto de objetivos simplificados

definidos por Kitchenham, Budgen e Brereton (2011) para revisões sistemáticas.

Portanto, os objetivos dos critérios de avaliação de qualidade para esta pesquisa

são:

• Como um meio de ponderar a importância de cada estudo;

• Para basear orientações em futuras pesquisas.

A.9.1 – Perguntas Gerais de Avaliação de Qualidade

Estas perguntas gerais não têm relação direta e específica com a

pergunta de pesquisa. Poderiam, em boa medida, balizar qualidade para

diferentes tipos de pesquisa, pois verificam características esperadas na maioria

dos trabalhos:

Page 109: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

108

• AQ01 - O estudo indica claramente sua relevância/contribuição?

• AQ02 - Os objetivos do estudo são claramente definidos?

• AQ03 - O estudo apresenta detalhes, profundidade e riqueza de

informações?

• AQ04 - O estudo levanta questões para trabalhos futuros?

A.9.2 – Perguntas Específicas de Avaliação de Quali dade

Esta pergunta tem relação direta e específica com a pergunta de pesquisa:

• AQ05 - O estudo define claramente qual a arquitetura utilizada em sua

solução?

Referências do Protocolo de Mapeamento Sistemático

Kitchenham, B. (2004) Procedures for performing systematic reviews . Keele,

UK, Keele University, v. 33.

Kitchenham, B.; Budgen, D. (2007) Using mapping studies as the basis for

further research - A participant-observer case stud y. Information & Software

Tecnology 53(6): 638-651.

POPA, Raluca Ada et al. CryptDB: Protecting Confidentiality with Encrypted

Query Processing. In: TWENTY-THIRD ACM SYMPOSIUM ON OPERATING

SYSTEMS PRINCIPLES, 23, 2011, Cascais. Proceedings of the Twenty-Third

ACM Symposium on Operating Systems Principles. Cascais, Portugal: Acm,

2011. p. 85 - 100.

Page 110: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

109

APÊNDICE

B

B. Estudos excluídos na segunda

etapa da seleção

Reporta uma lista que identifica todos os estudos excluídos na segunda

etapa do estágio de seleção.

Page 111: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

110

B.1 Lista de Estudos Excluídos na Segunda Etapa da Seleção

SQ ID Ano Fonte Título

1 97 2012 ACM A Security Aware Stream Data Processing Scheme on the Cloud and Its Efficient Execution Methods

2 37 2014 ACM Building Web Applications on Top of Encrypted Data Using Mylar

3 40 2013 ACM DEMO: Adjustably encrypted in-memory column-store

4 28 2012 ACM DJoin: Differentially Private Join Queries over Distributed Databases

5 7 2014 ACM Improved Anonymous Proxy Re-encryption with CCA Security

6 1 2014 ACM Optimized and Controlled Provisioning of Encrypted Outsourced Data

7 39 2012 ACM Protecting Data Confidentiality in Cloud Systems

8 29 2013 ACM Searching over Encrypted Data in Cloud Systems

9 18449 2009 CiteSeerX Mixed Encryption over Semi-Trusted Database

10 18503 2013 CiteSeerX Multi Tenant Data Storage Security In Cloud Using Data Partition Encryption Technique

11 18435 2007 CiteSeerX Providing Data Sharing As a Service

12 18533 2009 CiteSeerX The Blind Stone Tablet: Outsourcing Durability to Untrusted Parties

13 18473 2008 CiteSeerX Towards Secure Data Outsourcing

14 259 2009 IEEE A Novel Framework for Database Security Based on Mixed Cryptography

15 163 2013 IEEE A novel framework to prevent privacy breach in cloud data storage area service

16 305 2012 IEEE A searchable encryption scheme for outsourcing cloud storage

17 366 2012 IEEE Efficient Query Processing on Outsourced Encrypted Data in Cloud with Privacy Preservation

18 205 2014 IEEE Performance and Cost Evaluation of an Adaptive Encryption Architecture for Cloud Databases

19 122 2013 IEEE Secure and privacy-preserving database services in the cloud

20 145 2013 IEEE Symmetrically-Private Database Search in Cloud Computing

Page 112: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

111

SQ ID Ano Fonte Título

21 372 2012 IEEE Usable, Secure, Private Search

22 545 2015 Science Direct

A novel policy-driven reversible anonymisation scheme for XML-based services

23 4507 2012 Scopus DEMO: Query encrypted databases practically

24 4271 2014 Scopus Model of an encrypted cloud relational database supporting complex predicates in WHERE clause

25 4209 2015 Scopus New construction of secure range query on encrypted data in cloud computing

26 4463 2013 Scopus Nonlinear order preserving index for encrypted database query in service cloud environments

27 4242 2014 Scopus Privacy-preserving complex query evaluation over semantically secure encrypted data

28 4334 2014 Scopus Randomly partitioned encryption for cloud databases

29 4474 2013 Scopus Secure cloud transactions

30 4421 2013 Scopus Secure storage and fuzzy query over encrypted databases

31 10562 2013 Springer Cloud-Specific Services for Data Management

32 10598 2009 Springer Encryption over Semi-trusted Database

33 10620 2014 Springer Framework for Efficient Search and Statistics Computation on Encrypted Cloud Data

34 10565 2004 Springer Performance-Conscious Key Management in Encrypted Databases

35 10546 2011 Springer PKIS: practical keyword index search on cloud datacenter

36 10446 2014 Springer Practical and Privacy-Preserving Policy Compliance for Outsourced Data

37 10634 2013 Springer Practical Immutable Signature Bouquets (PISB) for Authentication and Integrity in Outsourced Databases

38 10474 2014 Springer Preserving Database Privacy in Cloud Computing

39 10606 2014 Springer Side Channels in Secure Database Outsourcing on the Example of the MimoSecco Scheme

40 10499 2010 Springer Structured Encryption and Controlled Disclosure

Page 113: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

112

APÊNDICE

C

C. Relação de estudos catalogados

Reporta a lista com dados de todos os estudos catalogados ao final da

pesquisa.

Page 114: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

113

C.1 Lista de Estudos Catalogados

Os estudos primários do catálogo estão categorizados na lista por

modelo de arquitetura utilizado e ordenados por ano e título do estudo.

SQ ID Ano Arquitetura Título

1 04553 2011 Proxy A Comprehensive Framework for Secure Query Processing on Relational Data in the Cloud

2 00009 2011 Proxy CryptDB: Protecting Confidentiality with Encrypted Query Processing

3 381974 2011 Proxy MimoSecco: A Middleware for Secure Cloud Storage

4 00005 2014 Proxy Secure Query Processing with Data Interoperability in a Cloud Database Environment

5 18558 2013 Cliente-servidor Orthogonal Security with Cipherbase

6 00081 2013 Cliente-servidor Processing Analytical Queries over Encrypted Data

7 04398 2013 Cliente-servidor Security and Confidentiality Solutions for Public Cloud Database Services

8 00204 2014 Cliente-servidor Distributed, Concurrent, and Independent Access to Encrypted Cloud Databases

9 04307 2014 Cliente-servidor Scalable Architecture for Multi-User Encrypted SQL Operations on Cloud Database Services

10 04352 2014 Cliente-servidor Solution for Secure Private Data Storage in a Cloud

11 00142 2014 Cliente-servidor TrustedDB: A Trusted Hardware-Based Database with Privacy and Data Confidentiality

12 00501 2015 Cliente-servidor L-EncDB: A Lightweight Framework for Privacy-preserving data Queries in Cloud Computing

13 10506 2011 Cliente-servidor descentralizada

Enhancing Data Privacy in the Cloud

14 00057 2013 Cliente-servidor descentralizada

Supporting Complex Queries and Access Policies for Multi-user Encrypted Databases

15 04346 2014 Cliente-servidor descentralizada Blind Seer: A scalable private DBMS

Page 115: Marcelo Ferreira de Lima - UFPE · execução de operações sobre dados encriptados no provedor de DBaaS. Um estudo, precursor e destacado, baseia sua solução em uma arquitetura

114

SQ ID Ano Arquitetura Título

16 04311 2014 Proxy e Cliente-servidor descent.

Processing private queries over an obfuscated database using hidden vector encryption

17 00088 2015 Proxy e Cliente-servidor descent.

DBMask: Fine-Grained Access Control on Encrypted Relational Databases

18 04291 2014 Software

Development Kit SQL-Based Fuzzy Query Mechanism Over Encrypted Database