Aplicação de criptografia de dados para clientes Owncloud baseada em certificados ICPEdu Vitor Hugo Galhardo Moia Marco Aurélio Amaral Henriques {vhgmoia, marco}@dca.fee.unicamp.br Universidade Estadual de Campinas - UNICAMP Faculdade de Engenharia Elétrica e de Computação FEEC APRESENTAÇÃO GRUPO DCA DE SEGURANÇA 04 de maio de 2015 Campinas - SP
Proposta Implementação de um protocolo criptográfico responsável pela segurança e privacidade dos dados dos usuários na nuvem da RNP. Oferecimento de serviços criptográficos nível 3 (no lado do cliente). Permitir compartilhamento de dados. Utilização de certificados digitais ICP-Brasil ou ICPEdu. Geração dos certificados ICPEdu feita pelo SAEC (Serviço automático de emissão de certificados). Integração com clientes de nuvem Owncloud. O modelo também poderá ser integrado com outras nuvens. 2
Requisitos O usuário deverá possuir: Uma conta previamente criada e configurada em um provedor de nuvem Owncloud. O aplicativo cliente (do OwnCloud) instalado e configurado em seu computador. Um certificado pessoal ICPEdu (criado por meio do SAEC ou outro meio similar). 3
Funcionamento básico O cliente instalará a aplicação desenvolvida. Toda vez que o usuário desejar acessar a aplicação deverá fornecer um segredo utilizado para sua validação. O segredo é criado na primeira iteração do usuário com o sistema. O segredo terá validade de X minutos. Uma vez que o tempo é atingido, o usuário deve fornece-lo novamente. Para cifrar um arquivo, o usuário deve acessar o sistema e escolher o arquivo desejado. Depois, ele deve selecionar o local onde será depositado o arquivo já cifrado. Para decifrar um arquivo, o usuário seleciona o arquivo e o local de destino do arquivo decifrado. O compartilhamento é possível a qualquer momento, apenas sendo requisitado o certificado do usuário que terá acesso ao arquivo. 4
Especificações do processo Chaves criptográficas Chave de arquivo criptográfico Cada arquivo (e seu nome) será cifrado com uma chave gerada a partir de seu conteúdo Chaves pública e privada Cifram/decifram a chave de arquivo Chave derivada Cifra/decifra a chave privada do usuário 5
Storage Arquivo _ Geração de chaves Hash Ch. de arquivo e de nome RSA 4096 Ch. de arquivo e de nome cifrada Gerador de chaves assimétricas Ch. Privada do usuário Ch. Pública do usuário AES 256 SAEC Certificado digital Ch. Privada do usuário cifrada Segredo do usuário Derivar chave Ch. derivada Destruir 17
Storage Geração de chaves Ch. de arquivo e de nome RSA 4096 Ch. de arquivo e de nome cifrada Ch. Pública do usuário SAEC Certificado digital Destruir Ch. Privada do usuário AES 256 Ch. Privada do usuário cifrada Segredo do usuário Derivar chave Ch. derivada Destruir 17
Cifrar arquivo Criptografia do conteúdo do arquivo Arquivo em claro Arquivo cifrado _ AES 256 Ah1720jdsif 0kdsjfdsi10 2398fjsjfds w9203ij 92 982jfkdslf9 ssd9dsw23 HASH Ch. secreta RSA 4096 Ch. secreta cifrada (Computador do usuário: cliente) Ch. Pública do usuário 8
Cifrar arquivo Criptografia do nome do arquivo Nome do arquivo em claro _ AES 256 Nome do arquivo cifrado Ah1720jdsif 0kdsjfdsi10 HASH Ch. secreta (Computador do usuário: cliente) 9
Cifrar arquivo Assinatura do arquivo Arquivo cifrado Ah1720jdsif 0kdsjfdsi10 2398fjsjfds w9203ij 92 982jfkdslf9 ssd9dsw23 HASH RSA 4096 Assinatura do arquivo w9203ij 92 982jfkdslf9 ssd9dsw23 Ch. Privada do usuário (Computador do usuário: cliente) 10
Cifrar arquivo Armazenamento do arquivo na nuvem Arquivo cifrado Ah1720jdsif 0kdsjfdsi10 2398fjsjfds w9203ij 92 982jfkdslf9 ssd9dsw23 Nome do arquivo cifrado Ah1720jdsif 0kdsjfdsi10 Ch. secreta cifrada Assinatura do arquivo w9203ij 92 982jfkdslf9 ssd9dsw23 Arquivo.zip Storage OwnCloud (Computador do usuário: cliente) 11
Decifrar arquivo Armazenamento do arquivo na nuvem Arquivo cifrado Ah1720jdsif 0kdsjfdsi10 2398fjsjfds w9203ij 92 982jfkdslf9 ssd9dsw23 Nome do arquivo cifrado Ah1720jdsif 0kdsjfdsi10 Ch. secreta cifrada Assinatura do arquivo w9203ij 92 982jfkdslf9 ssd9dsw23 Arquivo.zip Storage OwnCloud (Computador do usuário: cliente) 12
Decifrar arquivo Assinatura do arquivo Arquivo cifrado = Compara HASH Ah1720jdsif 0kdsjfdsi10 2398fjsjfds w9203ij 92 982jfkdslf9 ssd9dsw23 Assinatura do arquivo!= RSA 4096 w9203ij 92 982jfkdslf9 ssd9dsw23 Ch. Pública do usuário (Computador do usuário: cliente) 13
Decifrar arquivo Criptografia do conteúdo do arquivo Arquivo em claro _ AES 256 Arquivo cifrado Ah1720jdsif 0kdsjfdsi10 2398fjsjfds w9203ij 92 982jfkdslf9 ssd9dsw23 Ch. secreta RSA 4096 Ch. secreta cifrada Ch. Privada do usuário (Computador do usuário: cliente) 14
Decifrar arquivo Criptografia do nome do arquivo Nome do arquivo em claro _ AES 256 Nome do arquivo cifrado Ah1720jdsif 0kdsjfdsi10 Ch. secreta (Computador do usuário: cliente) 15
Compartilhamento OwnCloud TLS Cliente A - dono de um arquivo TLS Cliente B deseja o arquivo 2 A confere o certificado de B 4 A cifra a chave do arquivo com a ch. pública de B 16
Compartilhamento OwnCloud TLS Cliente A - dono de um arquivo TLS Cliente B deseja o arquivo... 9 B decifra o arquivo 17
Aplicação Primeiro acesso criação de segredo X Login Olá Alice, Você deve criar um segredo para poder acessar esta aplicação. Este segredo será utilizado pela aplicação para ter acesso a todos seus dados, portanto recomenda-se um segredo com grande nível de dificuldade a fim de dificultar acessos não autorizados. ****************** OK Fechar
Aplicação Primeiro acesso Definição de pastas e criação de chaves X Login Olá Alice, Você já possui um par de chave pública? Se sim, clique em Sim e localize-a. Caso contrário, a aplicação irá criar um para você. ****************** Sim Não
Aplicação Primeiro acesso Definição de pastas e criação de chaves Configurações Configurações do sistema Pasta da nuvem: /home/alice/owncloud? Arquivos decifrados: /home/alice/arquivos decifrados? Par de chave pública: /home/alice/owncloud/.config? Salvar Cancelar
Aplicação - Tela Inicial X Login Olá Alice, Digite seu segredo para acessar a aplicação ****************** OK Fechar
Tela principal Ajuda Cloud Data Protection Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Criptografar Configurações Ah1720jd sif0kdsjfd si102398f jsjfds w9203ij 9282jfkds lf9ssd9ds Compartilhar Deletar Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Descriptografar X Fechar
Tela principal Ajuda Cloud Data Protection Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Criptografar Configurações Ah1720jd sif0kdsjfd si102398f jsjfds w9203ij 9282jfkds lf9ssd9ds Compartilhar Deletar Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Descriptografar X Fechar
Criptografar Ajuda Cloud Data Protection Criptografar Selecione o(s) arquivo(s) Compartilhar arquivo Computador Rede Home User Documentos Arquivos Foto.jpg Músicas Backup.rar OK Cancelar
Criptografar Ajuda Cloud Data Protection Criptografar Selecione o local de destino Computador Home OwnCloud User Documentos Rede Arquivos Músicas Backup.rar Criptografar Cancelar
Criptografar Ajuda Cloud Data Protection Criptografar Selecione X Mensagem o local de destino Computador i Home OwnCloud User Documentos Rede Arquivo criptografado com sucesso! Arquivos Músicas Backup.rar OK Criptografar Cancelar
Tela principal Ajuda Cloud Data Protection Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Criptografar Configurações Ah1720jd sif0kdsjfd si102398f jsjfds w9203ij 9282jfkds lf9ssd9ds Compartilhar Deletar Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Descriptografar X Fechar
Compartilhar Ajuda Cloud Data Protection Criptografar Selecione o(s) arquivo(s) Compartilhar arquivo Computador Rede Home User Documentos Arquivos Foto.jpg Músicas Backup.rar O opção de compartilhamento é marcada Criptografar Cancelar
Compartilhar Ajuda Cloud Data Protection X Certificados Selecione o certificado do(s) usuário(s) Usuários Bob Pedro Compartilhar Procurar Cancelar
Compartilhar Ajuda Cloud Data Protection Criptografar Selecione o local de destino Computador Home OwnCloud Pasta Compartilhada User Documentos Rede Criptografar Cancelar
Compartilhar Ajuda Cloud Data Protection Criptografar Selecione X Mensagem o local de destino Computador i Home OwnCloud User Documentos Rede Arquivo compartilhado com sucesso! Pasta Compartilhada OK Criptografar Cancelar
Tela principal Ajuda Cloud Data Protection Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Criptografar Configurações Ah1720jd sif0kdsjfd si102398f jsjfds w9203ij 9282jfkds lf9ssd9ds Compartilhar Deletar Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Descriptografar X Fechar
Descriptografar Ajuda Cloud Data Protection Descriptografar Selecione o(s) arquivo(s) Computador Home OwnCloud User Documentos Rede Arquivos Foto.jpg Músicas Backup.rar OK Cancelar
Descriptografar Ajuda Cloud Data Protection Descriptografar Selecione o local de destino Compartilhar arquivo Computador Home User Documentos Fotos Rede Descriptografar Cancelar
Descriptografar Ajuda Cloud Data Protection Descriptografar Selecione X Mensagem o local de destino Compartilhar arquivo Computador i Rede Arquivo descriptografado com sucesso! Home User Documentos Fotos OK Descriptografar Cancelar
Tela principal Ajuda Cloud Data Protection Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Criptografar Configurações Ah1720jd sif0kdsjfd si102398f jsjfds w9203ij 9282jfkds lf9ssd9ds Compartilhar Deletar Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Descriptografar X Fechar
Configurações Configurações Configurações do sistema Pasta da nuvem: /home/alice/owncloud? Arquivos decifrados: /home/alice/arquivos decifrados? Par de chave pública: /home/alice/owncloud/.config? Salvar Cancelar
Tela principal Ajuda Cloud Data Protection Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Criptografar Configurações Ah1720jd sif0kdsjfd si102398f jsjfds w9203ij 9282jfkds lf9ssd9ds Compartilhar Deletar Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Descriptografar X Fechar
Deletar arquivo Ajuda Cloud Data Protection Deletar Selecione o(s) arquivo(s) Computador Home OwnCloud User Documentos Rede Arquivos Foto.jpg Músicas Backup.rar OK Cancelar
Deletar arquivo Ajuda Cloud Data Protection Deletar Selecione X Deletar o(s) arquivo(s) Computador Rede Você tem certeza que deseja apagar o(s) arquivo(s) selecionado(s) do seu Arquivos sistema e também da nuvem? Home OwnCloud User Documentos Sim Foto.jpg Músicas Backup.rar Cancelar OK Cancelar
Deletar arquivo Ajuda Cloud Data Protection Deletar Selecione X Mensagem o(s) arquivo(s) Computador i Home Arquivo(s) apagado(s) com sucesso! OwnCloud Arquivos User Documentos Foto.jpg Rede Músicas Backup.rar OK OK Cancelar
Tela principal Ajuda Cloud Data Protection Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Criptografar Configurações Ah1720jd sif0kdsjfd si102398f jsjfds w9203ij 9282jfkds lf9ssd9ds Compartilhar Deletar Ah1720jdsi f0kdsjfdsi1 02398fjsjfd s w9203ij 9282jfkdslf 9ssd9dsw2 Descriptografar X Fechar
Fechar sistema Ajuda Cloud Data Protection X Fechar Você tem certeza que deseja sair do sistema? Sim Cancelar
Fim Obrigado! 44
Perguntas 45