Lançamento das bibliotecas criptográficas LibreSSL 3.1.0 e Botan 2.14.0
Desenvolvedores de projetos OpenBSD submetido lançamento de uma edição portátil do pacote LibreSSL 3.1.0, dentro do qual está sendo desenvolvido um fork do OpenSSL, com o objetivo de fornecer um maior nível de segurança. O projeto LibreSSL está focado no suporte de alta qualidade para os protocolos SSL/TLS, removendo funcionalidades desnecessárias, adicionando recursos de segurança adicionais e limpando e retrabalhando significativamente a base de código. A versão LibreSSL 3.1.0 é considerada uma versão experimental que desenvolve recursos que serão incluídos no OpenBSD 6.7.
Recursos do LibreSSL 3.1.0:
É proposta uma implementação inicial do TLS 1.3 baseada em uma nova máquina de estados e um subsistema para trabalhar com registros. Por padrão, apenas a parte do cliente do TLS 1.3 está habilitada por enquanto; a parte do servidor está planejada para ser ativada por padrão em uma versão futura.
O código foi limpo, a análise de protocolo e o gerenciamento de memória foram melhorados.
Os métodos RSA-PSS e RSA-OAEP foram movidos do OpenSSL 1.1.1.
Implementação movida do OpenSSL 1.1.1 e habilitada por padrão CMS (Sintaxe de mensagem criptográfica). O comando “cms” foi adicionado ao utilitário openssl.
Compatibilidade aprimorada com OpenSSL 1.1.1 fazendo backport de algumas alterações.
Adicionado um grande conjunto de novos testes de função criptográfica.
O comportamento de EVP_chacha20() está próximo da semântica do OpenSSL.
Adicionada a capacidade de configurar o local de um conjunto com certificados de autoridade de certificação.
No utilitário openssl, o comando “req” implementa a opção “-addext”.
Além disso, pode-se notar questão biblioteca criptográfica Inicialização 2.14.0, usado no projeto NeoPG, um fork do GnuPG 2. A biblioteca oferece uma grande coleção primitivas prontas, usado no protocolo TLS, certificados X.509, cifras AEAD, TPMs, PKCS#11, hash de senha e criptografia pós-quântica (assinaturas baseadas em hash e acordo de chave baseado em McEliece e NewHope). A biblioteca é escrita em C++11 e fornecido sob a licença BSD.
Adicionada implementação do modo GCM (Modo Galois/Counter), acelerado para processadores POWER8 usando a instrução vetorial VPSUMD.
Para sistemas ARM e POWER, a implementação da operação de permutação vetorial para AES com tempo de execução constante foi significativamente acelerada.
Foi proposto um novo algoritmo de inversão de módulo, que é mais rápido e protege melhor contra ataques de canal lateral.
Otimizações foram feitas para acelerar o ECDSA/ECDH, reduzindo o campo NIST.