Estou trabalhando em um sistema de transferência de arquivos que tem uma biblioteca de conectividade p2p usando Rust. Ele funciona usando apenas tcp, mas agora quero melhorá-lo usando TLS, mas não entendo duas coisas. Como dois pares podem compartilhar a CA das Autoridades de Certificação para que possam verificar se a conexão é confiável. Na conexão ponto a ponto que descrevo, há apenas dois pares tentando transferir alguns arquivos. Como eles não têm um domínio, apenas IP, não funcionaria. Estou bem perdido, se alguém puder me ajudar com isso, algumas diretrizes de como abordar, por favor, seria legal, obrigado.
relate perguntas
-
O desafio http do traefik acme produz "Nenhum certificado padrão, retorno ao certificado gerado internamente"
-
Existe uma maneira de transmitir dados com segurança (uma versão TLS) em pacotes de 32 bytes?
-
Finalidade do certificado de cliente SSLStream
-
Como o HTTPS/TLS/SSL evita o sequestro de sessão? [duplicado]
-
Abaixo tls aperto de mão, qual é o problema?
native-tls
A documentação da
connect
função síncrona diz que:Levando isso em consideração, mudando para as
async
APIs e gerando um certificado autoassinado, chegamos ao seguinte código funcional:rustls
Aqui está um código similar usando
rustls
. As diferenças incluem:Se você quisesse usar um certificado assinado por uma CA, você adicionaria o certificado da CA como uma raiz confiável.