cripto_endevs_comunity 1.0.0

dotnet add package cripto_endevs_comunity --version 1.0.0
                    
NuGet\Install-Package cripto_endevs_comunity -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="cripto_endevs_comunity" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="cripto_endevs_comunity" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="cripto_endevs_comunity" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add cripto_endevs_comunity --version 1.0.0
                    
#r "nuget: cripto_endevs_comunity, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package cripto_endevs_comunity@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=cripto_endevs_comunity&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=cripto_endevs_comunity&version=1.0.0
                    
Install as a Cake Tool

CryptoNugget

Crates.io Documentation License: MIT

Un micro-módulo de cifrado excéntrico y seguro desarrollado en C#. Utiliza AES-GCM para seguridad autenticada y un sistema de Ratcheting (trinquete) donde las claves mutan permanentemente después de cada uso. Nada se guarda, todo se transforma.

🚀 Ejemplo de Uso

Aquí tienes un ejemplo rápido de cómo inicializar el módulo y realizar un ciclo de cifrado con mutación de clave:

    public class Program
    {
        public static void Main()
        {
            Console.WriteLine("--- DEMOSTRACIÓN CRIPTO ENDEVS COMUNITY (C#) ---\n");

            // 1. ALICE CREA LA CONEXIÓN
            string semillaSecreta = CryptoNugget.GenerarSemillaMaestra();
            string enlaceInvitacion = CryptoNugget.GenerarEnlaceInvitacion(semillaSecreta);
            
            Console.WriteLine("=== RITUAL DE INICIALIZACIÓN ===");
            Console.WriteLine("Alice, envíale este enlace a Bob (O muéstralo como Código QR):");
            Console.WriteLine($"{enlaceInvitacion}\n==========================================\n");

            var appAlice = new CryptoNugget(semillaSecreta, esIniciador: true);

            // 2. BOB RECIBE EL ENLACE Y SE CONECTA
            string semillaExtraida = CryptoNugget.ExtraerSemillaDeEnlace(enlaceInvitacion);
            var appBob = new CryptoNugget(semillaExtraida, esIniciador: false);

            Console.WriteLine($"ADN Inicial Alice: {appAlice.ObtenerEstadoADN()}");
            Console.WriteLine($"ADN Inicial Bob  : {appBob.ObtenerEstadoADN()}\n");

            // 3. INTERCAMBIO DE MENSAJES
            string mensaje1 = "¡Hola Bob, únete a la comunidad!";
            string cifrado1 = appAlice.Cifrar(mensaje1);
            Console.WriteLine($"Alice envía: '{mensaje1}'");
            Console.WriteLine($"Cifrado (1): {cifrado1}\n");

            string cifrado2 = appAlice.Cifrar(mensaje1);
            Console.WriteLine($"Alice envía de nuevo el mismo texto...");
            Console.WriteLine($"Cifrado (2): {cifrado2}");
            Console.WriteLine("(Totalmente distinto debido al Nonce aleatorio y mutación)\n");

            Console.WriteLine($"Bob recibe y lee (1): {appBob.Descifrar(cifrado1)}");
            Console.WriteLine($"Bob recibe y lee (2): {appBob.Descifrar(cifrado2)}\n");

            Console.WriteLine($"ADN Final Alice: {appAlice.ObtenerEstadoADN()}");
            Console.WriteLine($"ADN Final Bob  : {appBob.ObtenerEstadoADN()}");
        }
    }

🔒 Mecánica de Seguridad

  • AES-256-GCM: Cifrado simétrico autenticado para garantizar confidencialidad e integridad.
  • Key Ratcheting: Cada operación de cifrado/descifrado deriva una nueva clave irreversible utilizando funciones Hash. La clave anterior se destruye de la memoria de inmediato.
  • Zero Pack: Diseñado idealmente para entornos donde no se desea persistencia en disco.

✒️ Autor

📄 Licencia

Este proyecto está bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 37 5/13/2026