Requesting an example
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Documentación
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
- Área
- cryptography, documentation
Línea de trabajo
El Cargo.toml del issue y el programa Rust que no compila son los puntos de partida; revisa el uso de Key, Poly y Nonce de chacha20poly1305 y determina qué ejemplo debería documentarse. Se considera terminado cuando un ejemplo básico y compilable de una operación cubre esos tipos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi! Does anyone have an example of basic operation, that includes a function or struct field containing each relevant type (key, poly, nonce)? Thank you!
Here is my non-compiling attempt:
Cargo.toml:
crypto = { package = "chacha20poly1305", version = "^0.10.1", default-features = false, features = ["rand_core"] }
rand_core = "^0.6.4"
generic-array = "^1.0.0"
Program:
use chacha20poly1305::{
aead::{AeadCore, KeyInit},
ChaCha20Poly1305 as Poly, Nonce
};
use generic_array::GenericArray;
type Key = GenericArray<u8, 12>;
type Nonce2 = GenericArray<u8, 12>;
pub fn make_cipher(rng: &mut Rng) -> (Key, Poly, Nonce) {
let key = Poly::generate_key(rng);
let cipher = Poly::new(&key);
// The nonce is unique per message. 96-bits.
let nonce = Poly::generate_nonce(rng);
(key, cipher, nonce)
}
pub fn encrypt(data: &mut [u8], cipher: &Poly, nonce: &Nonce) {
let ciphertext = cipher.encrypt(&nonce, data).unwrap();
}
pub fn decrypt(data: &mut [u8], cipher: &Poly, nonce: &Nonce) {
let ciphertext = cipher.decrypt(&nonce, data).unwrap();
}
- Lenguaje dominante
- Rust
- Estrellas
- 967
- Forks
- 200
- Merge medio
- 1 min
- PR fusionados (30 d)
- 1
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de RustCrypto/AEADs
-
xaes-256-gcm: C2SP standard's accumulated randomized test vectors not in testing suitePosiblemente ocupada @eligrubb la tomó hace 120 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
RustCrypto/AEADs#864 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 30/100
RustCrypto/AEADs#765 ·
-
Doctests no longer build with default featuresQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
RustCrypto/AEADs#755 · 1 comentario ·
-
ocb3: use parallel-capable APIsAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
RustCrypto/AEADs#706 · 1 comentario · 1 reacción ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 30/100
RustCrypto/AEADs#660 · 7 comentarios ·
Todos los issues de RustCrypto/AEADs
Issues similares
-
type/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
stackabletech/operator-rs#1301 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
jmcnamara/rust_xlsxwriter#205 · 4 comentarios ·
-
agent:triaged bug bughunt pm:pipenv priority:p1
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
SocketDev/socket-patch#1608 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
adorsys/status-list-server#698 ·
Los mantenedores suelen responder en 2 días
-
Expose the dot grid colourAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
nannou-org/egui_graph#92 ·
Los mantenedores suelen responder en 1 día