Files
2026-06-04 23:44:39 +02:00

1.8 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
name kind lang domain version purity signature description tags uses_functions uses_types returns returns_optional error_type imports params output tested tests test_file_path file_path
verify_ed25519 function go cybersecurity 1.0.0 pure func VerifyEd25519(pub, msg, sig []byte) bool Verifica una firma Ed25519 sobre un mensaje usando la clave pública del firmante. Devuelve true solo si la firma es auténtica. Sin efectos secundarios ni I/O.
messaging
e2e-crypto
crypto
ed25519
signing
pure
e2e-messaging
false
crypto/ed25519
name desc
pub Clave pública Ed25519 de 32 bytes del firmante. Viene del campo SignPub de su Identity.
name desc
msg Mensaje original que fue firmado. Debe ser idéntico al pasado a SignEd25519.
name desc
sig Firma de 64 bytes producida por SignEd25519.
true si la firma es válida para (pub, msg). false en cualquier otro caso: firma incorrecta, pub equivocada, msg alterado, o sig corrupta. true
firma y verificacion exitosa
firma es determinista (misma entrada, misma firma)
falla con mensaje modificado
falla con clave publica incorrecta
falla con firma corrupta
functions/cybersecurity/e2e_messaging_crypto_test.go functions/cybersecurity/verify_ed25519.go

Ejemplo

// Receptor verifica autoría antes de descifrar
if !cybersecurity.VerifyEd25519(sender.SignPub, ciphertext, sig) {
    log.Println("firma inválida: mensaje descartado")
    return
}
// Solo si la firma es válida, descifrar con OpenAEAD
plaintext, err := cybersecurity.OpenAEAD(roomKey, nonce, ciphertext, aad)

Cuando usarla

Al recibir un mensaje del bus: verifica la firma del remitente sobre el ciphertext antes de intentar descifrar. Devuelve false para cualquier fallo de autenticación — nunca procesar un mensaje con firma inválida.