Recuperação de informação privada - Private information retrieval

Na criptografia , um protocolo de recuperação de informação privada (PIR) é um protocolo que permite a um usuário recuperar um item de um servidor que possui um banco de dados sem revelar qual item foi recuperado. PIR é uma versão mais fraca da transferência alheia 1-out-of- n , onde também é necessário que o usuário não obtenha informações sobre outros itens do banco de dados.

Uma maneira trivial, mas muito ineficiente de obter o PIR, é o servidor enviar uma cópia inteira do banco de dados ao usuário. Na verdade, este é o único protocolo possível (na configuração clássica ou quântica ) que dá ao usuário privacidade teórica das informações para sua consulta em uma configuração de servidor único. Existem duas maneiras de resolver esse problema: tornar o servidor limitado computacionalmente ou assumir que há vários servidores não cooperantes, cada um com uma cópia do banco de dados.

O problema foi introduzido em 1995 por Chor, Goldreich, Kushilevitz e Sudan no cenário da teoria da informação e em 1997 por Kushilevitz e Ostrovsky no cenário computacional. Desde então, soluções muito eficientes foram descobertas. O PIR de banco de dados único (computacionalmente privado) PIR pode ser obtido com comunicação constante (amortizada) e o PIR de banco de dados k (teoria da informação) pode ser feito com comunicação.

Avanços em PIR computacional

O primeiro esquema PIR computacional de banco de dados único a atingir complexidade de comunicação menor do que foi criado em 1997 por Kushilevitz e Ostrovsky e alcançou complexidade de comunicação de para qualquer , onde é o número de bits no banco de dados. A segurança de seu esquema foi baseada no bem estudado problema de residuosidade Quadrática . Em 1999, Christian Cachin, Silvio Micali e Markus Stadler alcançaram a complexidade da comunicação polilogarítmica . A segurança de seu sistema é baseada na suposição de esconder Phi . Em 2004, Helger Lipmaa atingiu a complexidade da comunicação log-quadrada , onde é o comprimento das cordas e é o parâmetro de segurança. A segurança de seu sistema se reduz à segurança semântica de um criptossistema aditivamente homomórfico de comprimento flexível como o criptossistema Damgård-Jurik . Em 2005, Craig Gentry e Zulfikar Ramzan alcançaram a complexidade de comunicação do log-quadrado que recupera bits do log-quadrado (consecutivos) do banco de dados. A segurança de seu esquema também se baseia em uma variante da suposição de ocultação de Phi. A taxa de comunicação foi finalmente levado para baixo para por Aggelos Kiayias , Nikos Leonardos , Helger Lipmaa , Kateryna Pavlyk , Qiang Tang , em 2015.

Todos os protocolos PIR computacionais de comunicação sublinear anteriores exigiam complexidade computacional linear de operações de chave pública. Em 2009, Helger Lipmaa projetou um protocolo PIR computacional com complexidade de comunicação e computação de pior caso de operações de chave pública. As técnicas de amortização que recuperam bits não consecutivos foram consideradas por Yuval Ishai , Eyal Kushilevitz , Rafail Ostrovsky e Amit Sahai .

Conforme mostrado por Ostrovsky e Skeith, os esquemas de Kushilevitz e Ostrovsky e Lipmaa usam ideias semelhantes baseadas na criptografia homomórfica . O protocolo de Kushilevitz e Ostrovsky é baseado no criptossistema Goldwasser-Micali, enquanto o protocolo de Lipmaa é baseado no criptossistema Damgård-Jurik .

Avanços na teoria da informação PIR

Alcançar a segurança teórica da informação requer a suposição de que existem vários servidores não cooperantes, cada um com uma cópia do banco de dados. Sem essa suposição, qualquer protocolo PIR teoricamente seguro de informações requer uma quantidade de comunicação que é pelo menos do tamanho do banco de dados n . Os protocolos PIR de vários servidores tolerantes a servidores sem resposta ou mal-intencionados / em conluio são chamados de robustos ou robustos bizantinos, respectivamente. Essas questões foram consideradas pela primeira vez por Beimel e Stahl (2002). Um sistema ℓ-servidor que pode operar onde apenas k dos servidores respondem, ν dos servidores respondem incorretamente e que pode suportar até t servidores em conluio sem revelar a consulta do cliente é chamado de " t -privado ν-Bizantino robusto k -out -of-ℓ PIR "[DGH 2012]. Em 2012, C. Devet, I. Goldberg e N. Heninger (DGH 2012) propuseram um esquema otimamente robusto que é robusto ao bizantino para o qual é o valor máximo teórico. É baseado em um protocolo anterior de Goldberg que usa o compartilhamento secreto de Shamir para ocultar a consulta. Goldberg lançou uma implementação C ++ no Sourceforge .

Relação com outras primitivas criptográficas

Funções unilaterais são necessárias, mas não são suficientes, para recuperação de informação privada computacionalmente única de banco de dados não trivial (isto é, com comunicação sublinear). Na verdade, tal protocolo foi provado por Giovanni Di Crescenzo , Tal Malkin e Rafail Ostrovsky para implicar transferência alheia (veja abaixo).

A transferência alheia , também chamada de PIR simétrico, é um PIR com a restrição adicional de que o usuário não pode aprender nenhum item além do solicitado. É denominado simétrico porque tanto o usuário quanto o banco de dados têm um requisito de privacidade.

As funções de hash criptográficas resistentes à colisão estão implícitas em qualquer esquema PIR computacional de uma rodada, conforme mostrado por Ishai, Kushilevitz e Ostrovsky.

Variações PIR

A motivação básica para a Recuperação de informações privadas é uma família de protocolos de duas partes em que uma das partes (o remetente ) possui um banco de dados e a outra parte (o receptor ) deseja consultá-lo com certas restrições e garantias de privacidade. Portanto, como resultado do protocolo, se o receptor quiser o i-ésimo valor no banco de dados, ele deve aprender a i-ésima entrada, mas o remetente não deve aprender nada sobre i . Em um protocolo PIR geral, um remetente computacionalmente ilimitado não pode aprender nada sobre i, portanto, a privacidade é teoricamente preservada. Desde que o problema PIR foi colocado, diferentes abordagens para sua solução foram buscadas e algumas variações foram propostas.

Um protocolo CPIR (Computationally Private Information Retrieval) é semelhante a um protocolo PIR: o receptor recupera um elemento escolhido por ele da base de dados do remetente, de forma que o remetente não obtém nenhum conhecimento sobre qual elemento foi transferido. A única diferença é que a privacidade é protegida contra um remetente polinomialmente limitado.

Um protocolo CSPIR (Computationally Symmetric Private Information Retrieval) é usado em um cenário semelhante no qual um protocolo CPIR é usado. Se o remetente possui um banco de dados, e o receptor deseja obter o i-ésimo valor neste banco de dados, no final da execução de um protocolo SPIR, o receptor não deve ter aprendido nada sobre os valores no banco de dados além do i-ésimo 1.

Implementações PIR

Vários esquemas PIR computacional e PIR teórico da informação na literatura foram implementados. Aqui está uma lista incompleta:

  • MuchPIR é uma implementação PIR de Teoria da Informação como uma extensão Postgres C / C ++. [GitHub, 2021]
  • SealPIR é uma implementação rápida de CPIR [ACLS 2018].
  • Popcorn é uma implementação PIR adaptada para mídia [GCMSAW 2016].
  • Percy ++ inclui implementações de [AG 2007, DGH 2012, CGKS 1998, Goldberg 2007, HOG 2011, LG 2015].
  • RAID-PIR é uma implementação do esquema ITPIR de [DHS 2014].
  • XPIR é uma implementação rápida de CPIR [ABFK 2014].
  • upPIR é uma implementação ITPIR [Cappos 2013].

Notas

Veja também

Referências

  • A. Beimel, Y. Ishai, E. Kushilevitz e J.-F. Raymond. Quebrando a barreira da recuperação de informação privada teórica da informação. Proceedings of the 43rd Annual IEEE Symposium on Foundations of Computer Science , Vancouver, Canadá, páginas 261–270, 2002.
  • A. Beimel e Y. Stahl, Robust information-teórica private information retrieval , in Proceedings of the 3rd International Conference on Security in Communication Networks (SCN'02), pp. 326-341, 2003. Cite is from DGH 2012, op. cit.
  • [DGH 2012] Casey Devet, Ian Goldberg e Nadia Heninger , Optimally Robust Privada Information Retrieval , 21 USENIX Symposium Segurança, Agosto de 2012.
  • [AG 2007] C. Aguilar-Melchor e P. Gaborit. Um protocolo de recuperação de informação privada computacionalmente eficiente baseado em rede , Western European Workshop on Research in Cryptology (WEWoRC), 2007.
  • [CGKS 1998] B. Chor, O. Goldreich, E. Kushilevitz e M. Sudan, Private information retrieval , Journal of the ACM, 45 (6): 965–981, 1998.
  • [Goldberg 2007] I. Goldberg, Melhorando a robustez da recuperação de informação privada , IEEE Symposium on Security and Privacy (S&P), 2007.
  • [HOG 2011] R. Henry, F. Olumofin e I. Goldberg, Practical PIR for electronic commerce , ACM Conference on Computer and Communications Security (CCS), 2011.
  • [LG 2015] W. Lueks e I. Goldberg, Sublinear scaling for multi-client private information recovery , International Conference on Financial Cryptography and Data Security (FC), 2015.
  • [DHS 2014] D. Demmler, A. Herzberg e T. Schneider, RAID-PIR: Practical multi-server PIR , In Cloud computing security workshop (CCSW), 2014.
  • [ABFK 2014] C. Aguilar-Melchor, J. Barrier, L. Fousse e M.-O. Killijian, "XPIR: Private Information Retrieval for Everyone", Cryptology ePrint Archive, Report 2014/1025, 2014.
  • [GCMSAW 2016] T. Gupta, N. Crooks, W. Mulhern, S. Setty, L. Alvisi e M. Walfish, [1] Consumo de mídia escalonável e privado com pipoca. USENIX NSDI, março de 2016.
  • [Cappos 2013] J. Cappos, Evitando otimização teórica para recuperar atualizações de segurança de forma eficiente e privada , Conferência Internacional sobre Criptografia Financeira e Segurança de Dados (FC), 2013.
  • Sergey Yekhanin. Novos códigos decodificáveis ​​localmente e esquemas de recuperação de informação privada, ECCC  TR06-127 , 2006.
  • [ACLS 2018] S. Angel, H. Chen, K. Laine, S. Setty, PIR com consultas compactadas e processamento de consultas amortizadas , Simpósio IEEE sobre Segurança e Privacidade (S&P), 2018.

links externos