A Amazon publicou uma biblioteca criptográfica de código aberto para a linguagem Rust

A Amazon introduziu a biblioteca criptográfica aws-lc-rs, que se destina ao uso em aplicativos Rust e é compatível com API com a biblioteca Ring Rust. O código do projeto é distribuído sob as licenças Apache 2.0 e ISC. A biblioteca oferece suporte às plataformas Linux (x86, x86-64, aarch64) e macOS (x86-64).

A implementação de operações criptográficas em aws-lc-rs é baseada na biblioteca AWS-LC (AWS libcrypto), escrita em C++ e, por sua vez, baseada no código do projeto BoringSSL (uma ramificação do OpenSSL mantida pelo Google). Além disso, dois pacotes de caixas de baixo nível são propostos: aws-lc-sys (ligações de baixo nível geradas automaticamente sobre AWS-LC) e aws-lc-fips-sys (ligações de baixo nível baseadas em FFI (Foreign Function Interface) ), reproduzindo a API AWS-LC.

A biblioteca AWS-LC inclui implementações formalmente verificadas dos algoritmos SHA-2, HMAC, AES-GCM, AES-KWP, HKDF, ECDH e ECDSA que atendem aos requisitos para sistemas criptográficos que podem ser usados ​​por agências governamentais nos Estados Unidos e Canadá. A criação de uma ligação Rust é motivada pela necessidade de ter bibliotecas criptográficas compatíveis com FIPS que possam ser usadas em projetos Rust. Na biblioteca aws-lc-rs, a Amazon decidiu combinar a API Ring, que é familiar e comum entre os programadores Rust, e implementações verificadas de algoritmos da biblioteca AWS-LC que atendem aos requisitos FIPS.

A utilização da biblioteca AWS-LC como base também possibilitou a utilização de todas as otimizações específicas desenvolvidas pela Amazon no aws-lc-rs. Por exemplo, AWS-LC oferece opções para os algoritmos ChaCha20-Poly1305 e NIST P-256 que são otimizados separadamente para processadores ARM, e otimizações significativas para sistemas x86 foram feitas para acelerar o processamento de assinaturas digitais ECDSA. Ao testar a operação dos protocolos TLS 1.2 e 1.3, a biblioteca aws-lc-rs superou significativamente o pacote rustls em termos de desempenho, demonstrando uma redução no tempo de configuração da conexão e um aumento na taxa de transferência (mais de duas vezes nos testes ECDSA).

A Amazon publicou uma biblioteca criptográfica de código aberto para a linguagem Rust


Fonte: opennet.ru

Adicionar um comentário