Pergunta

Estou desenvolvendo um aplicativo cliente-servidor que usa SSL (OpenSSL) para estabelecer um canal de comunicação segura entre o cliente eo servidor. Eu acredito que eu tenho duas opções agora para transferência segura de dados entre o cliente eo servidor. Uma opção é continuar com a transferência de dados no canal SSL seguro estabelecida entre o cliente eo servidor, mesmo que o processo de codificação / decodificação será lento por causa do uso de chaves assimétricas. A outra opção é transferir uma chave simétrica sobre o canal SSL e fechar o canal SSL uma vez que a chave simétrica é entregue ao cliente. Comunicação, posteriormente, vai acontecer em um canal TCP regular usando a chave simétrica que eu acredito que vai ser muito mais rápido do que usar chaves assimétricas. Existem quaisquer desvantagens para essa abordagem? Uma coisa que é óbvia com a abordagem de chave simétrica é o processo de gerenciamento de chaves que eu estou pensando de manipulação por não armazenar as chaves no cliente em tudo. chave simétrica será entregue ao cliente no arranque através de um canal SSL. Chave não será armazenado no cliente em tudo. Quaisquer pensamentos?

Foi útil?

Solução

Você está misturando as coisas. SSL usa uma chave assimétrica (definido no certificado) para passar uma chave simétrica gerado automaticamente entre o cliente eo servidor. Esta chave simétrica é então utilizado durante toda a sessão segura (o canal).

Então, basicamente, você já tem uma criptografia rápida symetric Quando usando SSL. A criptografia assimétrica única ocorre no início da comunicação.

Não tente gerenciar suas chaves simétricas em seu próprio país. Não vai funcionar.

Outras dicas

Mantenha usando a conexão SSL porque SSL utiliza uma cifra simétrica após a fase inicial.

Uma opção é continuar com a transferência de dados no canal SSL seguro estabelecida entre o cliente eo servidor, mesmo que o processo de codificação / decodificação será lento por causa do uso de chaves assimétricas.

Não, não vai. SSL usa criptografia simétrica.

A outra opção é transferir uma chave simétrica sobre o canal SSL e fechar o canal SSL uma vez que a chave simétrica é entregue ao cliente.

O cliente eo servidor já tiver uma chave de criptografia simétrica, assim que a sessão é estalbished. Este seria apenas redundante.

Não há nenhum problema aqui para resolver.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top