reticulum_website/docs/crypto_pt-br.html

36 lines
3.6 KiB
HTML
Raw Normal View History

2023-07-09 08:45:02 -04:00
<!doctype html>
<html>
<head>
<link rel="stylesheet" href="css/water.css?v=5">
<meta charset="utf-8"/>
<title>Reticulum Network</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<p><center><div class="top_menu lang_menu"><a href="./crypto_de.html">Deutsch</a> | <a href="./crypto.html">English</a> | <a href="./crypto_pl.html">Polski</a> | <a href="./crypto_pt-br.html">Português</a></div><div class="top_menu"><a href="index_pt-br.html">Reticulum</a> | <a href="start_pt-br.html">Começar</a> | <a href="hardware_pt-br.html">Hardware</a> | <a href="connect_pt-br.html">Rede de Teste</a> | <a href="docs_pt-br.html">Manual</a> | <a href="crypto_pt-br.html">Cripto</a> | <a href="credits_pt-br.html">Créditos</a> | <a href="https://github.com/markqvist/reticulum">Código</a> | <a href="donate_pt-br.html">Ajude</a></div></center></p>
<h1>Primitivos Criptográficos</h1>
<p>Reticulum utiliza uma suíte simples de primitivos criptográficos modernos, fortes e eficientes, com diversas implementações disponíveis que pode ser utilizados tanto em CPUs convencionais como microcontroladores. Os primitivos necessários são:</p>
<ul>
<li>Ed25519 para assinaturas</li>
<li>X22519 para trocas de chave ECDH</li>
<li>HKDF para derivação de chaves</li>
<li>AES-128 em modo CBC</li>
<li>HMAC-SHA256 para autenticação de mensagem</li>
<li>SHA-256</li>
<li>SHA-512</li>
</ul>
<p>Na configuração de instalação padrão, os primitivos <code>X25519</code>, <code>Ed25519</code> e <code>AES_128-CBC</code> são fornecidos pela <a href="https://www.openssl.org/">OpenSSL</a> (pelo pacote <a href="https://github.com/pyca/cryptography">PyCA/cryptography</a> ). As funções de hash <code>SHA-256</code> e <code>SHA-512</code> são fornecidas pela biblioteca Python <a href="https://docs.python.org/3/library/hashlib.html">hashlib</a>. Os primitivos <code>HKDF</code>, <code>HMAC</code>, <code>Fernet</code>, e a função de preenchimento <code>PKCS7</code> são sempre fornecidas pelas seguintes implementações internas:</p>
<ul>
<li><a href="https://github.com/markqvist/Reticulum/blob/master/RNS/Cryptography/HKDF.py">HKDF.py</a></li>
<li><a href="https://github.com/markqvist/Reticulum/blob/master/RNS/Cryptography/HMAC.py">HMAC.py</a></li>
<li><a href="https://github.com/markqvist/Reticulum/blob/master/RNS/Cryptography/Fernet.py">Fernet.py</a></li>
<li><a href="https://github.com/markqvist/Reticulum/blob/master/RNS/Cryptography/PKCS7.py">PKCS7.py</a></li>
</ul>
<p>Reticulum também incluí a implementação completa de todos os primitivos necessários em Python puro. Se o OpenSSL &amp; PyCA não estão disponíveis no sistema que o Reticulum é iniciado, Reticulum vai utilizar os primitivos internos. A consequência trivial disso é o desempenho, com a biblioteca OpenSSL sendo mais rápida. A consequência mais importante no entanto, é a potencial perda de segurança por utilizar primitivos que não possuem o mesmo nível de suporte, teste e revisão que o OpenSSL.</p>
<p>Se você quer utilizar primitivos internos em Python, é aconselhável que você entenda os riscos envolvidos, e tome uma decisão informada conforme os ricos são aceitáveis para você.</p>
<p>Reticulum é um software relativamente jovem, e deve ser considerado como tal. Enquanto ele é desenvolvido com as melhores práticas de criptografia em mente, ainda não foi auditado externamente, e pode haver bugs para segurança e privacidade. Se você quer ajudar, ou patrocinar uma auditoria, nos informe.</p>
<p align="right"><a href="credits_pt-br.html">Próxima Página: Agradecimentos & Créditos</a></p>
</body>
</html>