Criptografia P2P - Ponto a
ponto
Funcionamento da criptografia de dados em
aplicativos de mensagens
Raphael Queiroz - roq2503@gmail.com - 2017
Introdução
O presente documento foi elaborado com o objetivo de esclarecer, de forma
didática, o funcionamento da criptografia ponto a ponto (P2P) nas comunicações
em aplicativos de mensagens instantâneas que utilizam ou derivam do protocolo
Signal da Open Whisper Systems. Como exemplos de aplicativos podemos citar
WhatsApp, Facebook Messenger, Google Allo, entre muitos outros.
Criptografia P2P
A criptografia ponto a ponto (ou peer-to-peer) é aquela aplicada sem intermédio
de servidor central, ou seja, a comunicação é protegida desde a origem até seu
destinatário final. Por conta disso, ela também é capaz de evitar ataques man-in-
the-middle (MITM).
O uso de um protocolo de criptografia de código aberto (open source) assegura
ainda que problemas como backdoors (portas de acesso escondidas) ou ataques
de força bruta enfraqueça o sistema de segurança aplicado.
Chaves Criptográficas Utilizadas no Processo
Há dois tipos diferentes de criptografia utilizados no processo: par de chaves
pública-privada e chaves de sessão.
1. A chave privada do par de chaves pública-privada é utilizada para a
autenticação do usuário na plataforma (registro).
1. Já as chaves de sessão são chaves simétricas geradas entre as partes e
utilizadas unicamente em cada sessão de mensagem. Essa chave é
descartada após o encaminhamento da mensagem.
Chaves Criptográficas Utilizadas no Processo
Identity Key
Pair
(Identidade)
Signed Pre
Key
One-Time Pre
Key
(Descartável)
Root Key Chain Key Message Key
Par de chaves (1 Chave Publica + 1 Chave Privada)
Chave Única
CELULAR
SERVIDOR
Processo de Registro do Usuário
Identity Key
Pair
(Identidade)
Signed Pre
Key
One-Time Pre
Keys
(Descartável)
Chave Pública Chave Pública
Chaves
Públicas
Processo de Estabelecimento de Sessão
SERVIDOR
EMISSOR
(Chaves Públicas)
RECEPTOR
(Chaves Públicas)
EMISSOR
(Chaves Privadas)
RECEPTOR
(Chaves Privadas)ROOT
KEY
CHAIN
KEY
MESSAGE
KEY
Processo de Troca de Mensagens
SERVIDOR
EMISSOR
(Chaves Públicas)
RECEPTOR
(Chaves Públicas)
EMISSOR RECEPTOR
MESSAGE
KEY
Olá Mundo!
ArdEsdR$Edsa% ArdEsdR$Edsa%
Olá Mundo!
Vantagens do uso
● A criptografia ponto a ponto, quando bem implementada, impede acessos
não autorizados, mesmo por parte do provedor do serviço ou monitoramento
de entidades governamentais.
● Garante a confidencialidade (privacidade) e integridade (conteúdo) das
informações, além da previsão de autoria das mensagens enviadas.
● Quanto utilizado protocolos e algoritmos de forma aberta ainda torna mais
confiável sua regulação e auditoria.
Termos Técnicos
Criptografia: A palavra tem origem no grego, com significado de “escrita secreta”. De acordo com Stallings (2015), os muitos esquemas
utilizados para a encriptação constituem a área de estudo conhecida como criptografia. Pode-se dizer que é o estudo dos princípios e técnicas
pelas quais a informação pode ser transformada da sua forma original para outra ilegível, de forma que possa ser conhecida apenas por seu
destinatário (detentor da "chave secreta"), o que a torna difícil de ser lida por agentes não autorizados. Assim sendo, só o receptor da
mensagem pode ler a informação com facilidade (WIKIPEDIA, s.d.). De acordo com Tanembaum e Wetherall (2011), as mensagens a serem
criptografadas, denominadas como texto simples, são transformadas por meio de uma função parametrizada por uma chave. Em seguida, a
saída do processo de criptografia, conhecida como texto cifrado, é transmitida. Stallings (2015) diz que o processo de converter um texto claro
em um texto cifrado é conhecido como cifração ou encriptação, enquanto a restauração do texto claro a partir do texto cifrado é chamada de
decifração ou decriptação.
Tipos de criptografia: Uma das formas de classificar sistemas criptográficos se refere ao número de chaves utilizadas no processo. Se tanto o
emissor quanto o receptor utilizarem a mesma chave, o sistema é classificado como encriptação simétrica; já se emissor e receptor usarem
chaves diferentes, o sistema é classificado como encriptação assimétrica ou de chave pública (STALLINGS, 2015).
Peer-to-peer (ou P2P, ponto a ponto): é uma arquitetura de redes de computadores em que cada um dos pontos (ou nós) da rede funciona
tanto como cliente quanto como servidor, permitindo compartilhamentos de serviços e dados sem a necessidade de um servidor central. Por
não se basear em uma arquitetura cliente-servidor, em que apenas o servidor é responsável pela execução de todas as funções da rede, o
P2P apresenta vantagem significativa justamente por não depender de um servidor e de todos os nós estarem interconectados, o que
possibilita que o acesso a qualquer nó possa ter origem em qualquer outro nó. Devido a essas características, define-se essa rede como sendo
de elevada disponibilidade (WIKIPEDIA, s.d.).
Termos Técnicos
Signal Protocol: O Signal é tanto um protocolo de segurança como um aplicativo embarcado que fornece criptografia ponto a ponto para
mensageiros instantâneos. O núcleo do protocolo foi recentemente adotado por aplicativos utilizados em aplicativos bastante populares, dentre
os quais podemos destacar WhatsApp, Facebook Messenger e Google Allo, entre muitos outros.
Ataque por força bruta (brute force): Consiste em utilizar o processamento computacional para descobrir, por meio de tentativas e erros, um
segredo de forma não autorizada. O tempo necessário para a descoberta pode variar de acordo com a quantidade possível de tentativas por
segundo (capacidade computacional) e a probabilidade de acerto (número de combinações diferentes possíveis) (CERT.BR, s.d.).
Backdoor: é um método, muitas vezes secreto, de transpor a autenticação normal em um produto, sistema de computador, criptosistema ou
algoritmo etc. Backdoors são freqüentemente usadas ​​para assegurar acesso remoto não autorizado a um computador ou obter acesso a textos
em sistemas criptográficos. Pode assumir a forma de uma parte oculta de um programa, um programa separado (por exemplo, o Back Orifice
pode subverter o sistema através de um tipo de código malicioso conhecido como rootkit), ou pode ser um recurso de hardware.
Man-in-the-middle: é uma forma de ataque em que os dados trocados entre duas partes são de alguma forma interceptados, registrados e
possivelmente alterados pelo atacante sem que origem ou destino dos dados percebam. O atacante pode optar por retransmitir entre os
legítimos participantes os dados inalterados, com alterações, ou bloquear partes da informação.

Criptografia P2P - Comunicadores Instantâneos

  • 1.
    Criptografia P2P -Ponto a ponto Funcionamento da criptografia de dados em aplicativos de mensagens Raphael Queiroz - roq2503@gmail.com - 2017
  • 2.
    Introdução O presente documentofoi elaborado com o objetivo de esclarecer, de forma didática, o funcionamento da criptografia ponto a ponto (P2P) nas comunicações em aplicativos de mensagens instantâneas que utilizam ou derivam do protocolo Signal da Open Whisper Systems. Como exemplos de aplicativos podemos citar WhatsApp, Facebook Messenger, Google Allo, entre muitos outros.
  • 3.
    Criptografia P2P A criptografiaponto a ponto (ou peer-to-peer) é aquela aplicada sem intermédio de servidor central, ou seja, a comunicação é protegida desde a origem até seu destinatário final. Por conta disso, ela também é capaz de evitar ataques man-in- the-middle (MITM). O uso de um protocolo de criptografia de código aberto (open source) assegura ainda que problemas como backdoors (portas de acesso escondidas) ou ataques de força bruta enfraqueça o sistema de segurança aplicado.
  • 4.
    Chaves Criptográficas Utilizadasno Processo Há dois tipos diferentes de criptografia utilizados no processo: par de chaves pública-privada e chaves de sessão. 1. A chave privada do par de chaves pública-privada é utilizada para a autenticação do usuário na plataforma (registro). 1. Já as chaves de sessão são chaves simétricas geradas entre as partes e utilizadas unicamente em cada sessão de mensagem. Essa chave é descartada após o encaminhamento da mensagem.
  • 5.
    Chaves Criptográficas Utilizadasno Processo Identity Key Pair (Identidade) Signed Pre Key One-Time Pre Key (Descartável) Root Key Chain Key Message Key Par de chaves (1 Chave Publica + 1 Chave Privada) Chave Única
  • 6.
    CELULAR SERVIDOR Processo de Registrodo Usuário Identity Key Pair (Identidade) Signed Pre Key One-Time Pre Keys (Descartável) Chave Pública Chave Pública Chaves Públicas
  • 7.
    Processo de Estabelecimentode Sessão SERVIDOR EMISSOR (Chaves Públicas) RECEPTOR (Chaves Públicas) EMISSOR (Chaves Privadas) RECEPTOR (Chaves Privadas)ROOT KEY CHAIN KEY MESSAGE KEY
  • 8.
    Processo de Trocade Mensagens SERVIDOR EMISSOR (Chaves Públicas) RECEPTOR (Chaves Públicas) EMISSOR RECEPTOR MESSAGE KEY Olá Mundo! ArdEsdR$Edsa% ArdEsdR$Edsa% Olá Mundo!
  • 9.
    Vantagens do uso ●A criptografia ponto a ponto, quando bem implementada, impede acessos não autorizados, mesmo por parte do provedor do serviço ou monitoramento de entidades governamentais. ● Garante a confidencialidade (privacidade) e integridade (conteúdo) das informações, além da previsão de autoria das mensagens enviadas. ● Quanto utilizado protocolos e algoritmos de forma aberta ainda torna mais confiável sua regulação e auditoria.
  • 10.
    Termos Técnicos Criptografia: Apalavra tem origem no grego, com significado de “escrita secreta”. De acordo com Stallings (2015), os muitos esquemas utilizados para a encriptação constituem a área de estudo conhecida como criptografia. Pode-se dizer que é o estudo dos princípios e técnicas pelas quais a informação pode ser transformada da sua forma original para outra ilegível, de forma que possa ser conhecida apenas por seu destinatário (detentor da "chave secreta"), o que a torna difícil de ser lida por agentes não autorizados. Assim sendo, só o receptor da mensagem pode ler a informação com facilidade (WIKIPEDIA, s.d.). De acordo com Tanembaum e Wetherall (2011), as mensagens a serem criptografadas, denominadas como texto simples, são transformadas por meio de uma função parametrizada por uma chave. Em seguida, a saída do processo de criptografia, conhecida como texto cifrado, é transmitida. Stallings (2015) diz que o processo de converter um texto claro em um texto cifrado é conhecido como cifração ou encriptação, enquanto a restauração do texto claro a partir do texto cifrado é chamada de decifração ou decriptação. Tipos de criptografia: Uma das formas de classificar sistemas criptográficos se refere ao número de chaves utilizadas no processo. Se tanto o emissor quanto o receptor utilizarem a mesma chave, o sistema é classificado como encriptação simétrica; já se emissor e receptor usarem chaves diferentes, o sistema é classificado como encriptação assimétrica ou de chave pública (STALLINGS, 2015). Peer-to-peer (ou P2P, ponto a ponto): é uma arquitetura de redes de computadores em que cada um dos pontos (ou nós) da rede funciona tanto como cliente quanto como servidor, permitindo compartilhamentos de serviços e dados sem a necessidade de um servidor central. Por não se basear em uma arquitetura cliente-servidor, em que apenas o servidor é responsável pela execução de todas as funções da rede, o P2P apresenta vantagem significativa justamente por não depender de um servidor e de todos os nós estarem interconectados, o que possibilita que o acesso a qualquer nó possa ter origem em qualquer outro nó. Devido a essas características, define-se essa rede como sendo de elevada disponibilidade (WIKIPEDIA, s.d.).
  • 11.
    Termos Técnicos Signal Protocol:O Signal é tanto um protocolo de segurança como um aplicativo embarcado que fornece criptografia ponto a ponto para mensageiros instantâneos. O núcleo do protocolo foi recentemente adotado por aplicativos utilizados em aplicativos bastante populares, dentre os quais podemos destacar WhatsApp, Facebook Messenger e Google Allo, entre muitos outros. Ataque por força bruta (brute force): Consiste em utilizar o processamento computacional para descobrir, por meio de tentativas e erros, um segredo de forma não autorizada. O tempo necessário para a descoberta pode variar de acordo com a quantidade possível de tentativas por segundo (capacidade computacional) e a probabilidade de acerto (número de combinações diferentes possíveis) (CERT.BR, s.d.). Backdoor: é um método, muitas vezes secreto, de transpor a autenticação normal em um produto, sistema de computador, criptosistema ou algoritmo etc. Backdoors são freqüentemente usadas ​​para assegurar acesso remoto não autorizado a um computador ou obter acesso a textos em sistemas criptográficos. Pode assumir a forma de uma parte oculta de um programa, um programa separado (por exemplo, o Back Orifice pode subverter o sistema através de um tipo de código malicioso conhecido como rootkit), ou pode ser um recurso de hardware. Man-in-the-middle: é uma forma de ataque em que os dados trocados entre duas partes são de alguma forma interceptados, registrados e possivelmente alterados pelo atacante sem que origem ou destino dos dados percebam. O atacante pode optar por retransmitir entre os legítimos participantes os dados inalterados, com alterações, ou bloquear partes da informação.

Notas do Editor

  • #6 há dois tipos diferentes utilizados no processo em si: par de chaves pública-privada e chaves de sessão. As chaves de sessão são chaves simétricas geradas entre as partes e utilizadas unicamente em cada sessão de mensagem. Essa chave é descartada após o encaminhamento da mensagem. Já a chave privada do par de chaves pública-privada é utilizada para a autenticação do usuário na plataforma.