


SecureChats Keyboard BWT 2.0.0 is an enhanced version of the innovative KryptEY Android keyboard, originally created by mellitopia and amnesica. This advanced iteration integrates end-to-end encryption (E2EE) with post-quantum cryptography resistance, built on the Signal Protocol foundation with enhanced Kyber (PQC) implementation for future-proof security against quantum computer attacks.
🚀 What's New in BWT 2.0.0:
- Post-Quantum Cryptography (Kyber) integration
- EncryptedSharedPreferences with AES256-GCM
- Enhanced key rotation (2 days vs original 30 days)
- Per-contact history deletion functionality
- 89+ language localizations (vs original basic support)
- libsignal-android 0.73.2 with latest security improvements
- Hybrid Encryption: ECC (Signal Protocol) + Kyber Post-Quantum resistant algorithms
- KEM Encapsulation: Key Encapsulation Mechanism using Bouncy Castle PQC provider
- Automatic Key Rotation: Kyber pre-keys automatically rotate every 2 days
- Future-Proof Security: Protection against quantum computer attacks (Shor's algorithm)
- Dual Pre-Key System: Both ECC and Kyber pre-keys managed simultaneously
- Faster Rotation: Pre-keys rotate every 2 days (vs original 30 days)
- Smart Rotation Logic: Independent rotation schedules for ECC and PQC keys
- Secure Deletion: Old keys automatically purged after use
- Seamless Migration: Backward compatibility with original KryptEY devices
- EncryptedSharedPreferences: All user data encrypted at rest using AES256-GCM (vs original plain SharedPreferences)
- MasterKey Protection: Hardware-backed keystores where available
- JSON Encryption: Message history, contacts, and keys stored encrypted
- Zero-Knowledge Design: No plaintext data stored on device
- X3DH Key Agreement Protocol: Elliptic curve X25519 with SHA-512
- Double Ratchet Algorithm: Advanced key derivation and message authentication
- AES-256 with CBC (PKCS#7): Message encryption standard
- SHA-256: Hash function for various chains
- SHA-512: Fingerprint generation for public key representation
- Perfect Forward Secrecy: Each message uses unique encryption keys
All protocol information stored in specialized stores:
- IdentityKeyStore: Identity key management
- PreKeyMetadataStore: Pre-key metadata and rotation schedules
- PreKeyStore: One-time pre-keys (2 keys vs Signal's 100)
- SignedPreKeyStore: Signed pre-key management
- SessionStore: Session state management
- SenderKeyStore: Group messaging keys
- SignalProtocolStore: Unified protocol interface
- BCKyberPreKeyStore: (New) Post-quantum Kyber pre-keys
- PreKeyResponse: Send PreKeyBundle (invite message)
- PreKeySignalMessage: Send ciphertext + PreKeyBundle after session establishment
- SignalMessage: Send regular ciphertext
- PreKeyResponse + SignalMessage: (Enhanced) Send ciphertext with updated PreKeyBundle + Kyber keys
All message information collected in a MessageEnvelope containing:
- PreKeyResponse: Key bundle data (ECC + Kyber in BWT 3.0)
- CiphertextMessage: Encrypted message as byte array
- CiphertextType: Message type identifier
- Timestamp: Message creation time
- SignalProtocolAddress: Sender identification (randomized UUID)
- Raw Mode: Direct JSON display with minified format
- Fairy Tale Mode: Messages hidden in invisible Unicode characters
- Invisible Unicode Characters: 16 characters (U+200C, etc.) for 4-bit mapping
- JSON Minification: Keys abbreviated ("preKeyResponse" → "pR")
- GZIP Compression: Size optimization before encoding
- Binary Conversion: 4 bits mapped to invisible Unicode (0000-1111)
- Decoy Stories: Hidden in Cinderella or Rapunzel fairy tales
- Full Reversibility: Extract → Convert → Decompress → Deminify
- End-to-End Encryption: All messages encrypted before leaving device
- Server-Free Operation: No central server for key exchange (Unlike Signal app)
- UUID Identification: Randomized UUIDs instead of phone numbers
- Real-time Encryption: Live encryption/decryption as you type
- Per-Contact History Deletion: (New) Delete message history per contact with one tap
- Cryptographic Erasure: (New) Secure deletion ensures data unrecoverability
- Contact Management: Add/remove contacts with verification
- Session Management: Secure session establishment without servers
- Alice generates and sends PreKeyBundle (invite message)
- Bob adds Alice as contact, establishes session locally
- Bob sends PreKeySignalMessage (first encrypted message)
- Alice adds Bob, establishes session, decrypts message
- Both parties exchange SignalMessages for ongoing conversation
- Key Rotation: (Enhanced) Every 2 days with automatic PreKeyBundle updates
- 89+ Languages Supported: (vs original basic English support)
- Complete Translations: UI, help texts, error messages fully localized
- Regional Variants: Specific localizations (en-US, en-GB, es-ES, es-US, etc.)
- RTL Support: Right-to-left languages fully supported
- Cultural Adaptation: Culturally appropriate layouts and behaviors
- Minimal Permissions: Only VIBRATE permission required
- No Internet Access: All cryptographic operations local
- No External Storage: No sensitive permission requirements
- Battery Optimized: Minimal background processing
- Hardware Acceleration: Where available
- Signal Protocol v3: Latest cryptographic implementations
- libsignal-android 0.73.2: (vs original older version) Latest with PQC support
- Bouncy Castle PQC 1.78.1: (New) Industry-standard post-quantum algorithms
- Android Security Crypto: (New) Modern encrypted storage
- Jackson Databind 2.14.1: Efficient JSON serialization
implementation 'org.signal:libsignal-android:0.73.2' // Latest Signal Protocol
implementation 'org.bouncycastle:bcprov-ext-jdk18on:1.78.1' // PQC Support
implementation 'androidx.security:security-crypto:1.1.0' // Encrypted Storage
implementation 'com.fasterxml.jackson.core:jackson-databind:2.14.1' // JSON
- Android 8.0 (API 26) or higher (same as original)
- ARMv7, ARM64, or x86_64 architecture
- 50MB free storage space
- No special permissions required (only VIBRATE)
- Install APK or build from source
- Enable keyboard in Android Settings → Language & Input
- Set as default input method
- Auto-initialization: Signal Protocol automatically initializes:
- Randomized SignalProtocolAddress (UUID + device ID)
- Identity Key (permanent, never rotated)
- 2 One-time PreKeys (vs Signal's 100)
- Signed PreKey (rotates every 2 days)
- Kyber PreKeys (New in BWT 3.0)
- Generate Invite: Create PreKeyResponse with ECC + Kyber keys
- Share Invite: Send via any messenger (raw or fairy tale mode)
- Contact Import: Recipient imports from received invite
- Session Establishment: Automatic on first message exchange
- Verify Identity: Compare SHA-512 fingerprints for security
- Encrypt: Compose → Select contact → Encrypt → Share via any messenger
- Decrypt: Copy encrypted message → Auto-detect → Decrypt → View plaintext
- History: (Enhanced) View past conversations with deletion option
- Steganography: Toggle between raw JSON and fairy tale modes
- Post-Quantum Resistant: (New) Protection against future quantum computers
- Perfect Forward Secrecy: Past messages secure if keys compromised
- Server-Free Architecture: No central point of failure
- Deniable Authentication: Cannot prove message authorship
- Enhanced Rotation: (Improved) 2-day key rotation vs 30-day original
- 1-to-1 Conversations: Designed for individual chats primarily
- Group Chat Limitations: Limited group functionality
- Messenger Compatibility: Some messengers may not handle invisible Unicode properly
- Message Size Limits: Some platforms limit message size (3500 bytes)
- Telegram HTML Issues: Fairy tale mode may have issues with HTML copying
git clone https://github.com/your-repo/SecureChatKeyboardBWT3.0.git
cd SecureChatKeyboardBWT3.0
./gradlew assembleDebug
./gradlew test # Unit tests
./gradlew connectedAndroidTest # Integration tests
- Reproducible builds for transparent distribution
- GPL-3.0 License maintained from original
- No proprietary dependencies
- Privacy-focused distribution model
- Signal Protocol (Android): E2EE implementation
- Jackson: JSON serialization
- Protobuf (lite): Data serialization
- JUnit4: Testing framework
- Bouncy Castle PQC: (New) Post-quantum cryptography
- AOSP Keyboard: Base keyboard implementation
- Simple Keyboard: UI foundation
- OpenBoard: Additional features
- FlorisBoard: Modern keyboard concepts



SecureChats Keyboard BWT 2.0.0 es una versión mejorada del innovador teclado KryptEY para Android, originalmente creado por mellitopia y amnesica. Esta iteración avanzada integra cifrado de extremo a extremo (E2EE) con resistencia a criptografía post-cuántica, construido sobre la base del Protocolo Signal con implementación mejorada de Kyber (PQC) para seguridad a prueba de futuro contra ataques de computadoras cuánticas.
🚀 Novedades en BWT 2.0.0:
- Criptografía Post-Cuántica (Kyber) integrada
- EncryptedSharedPreferences con AES256-GCM
- Rotación de claves mejorada (2 días vs 30 días originales)
- Eliminación de historial por contacto
- 89+ localizaciones de idiomas (vs soporte básico original)
- libsignal-android 0.73.2 con las últimas mejoras de seguridad
- Cifrado Híbrido: ECC (Protocolo Signal) + algoritmos resistentes Kyber Post-Cuántico
- Encapsulación KEM: Mecanismo de Encapsulación de Claves usando proveedor Bouncy Castle PQC
- Rotación Automática de Claves: Las pre-claves Kyber se rotan automáticamente cada 2 días
- Seguridad a Prueba de Futuro: Protección contra ataques de computadoras cuánticas (algoritmo de Shor)
- Sistema Dual de Pre-Claves: Gestión simultánea de pre-claves ECC y Kyber
- Rotación Más Rápida: Las pre-claves rotan cada 2 días (vs 30 días originales)
- Lógica de Rotación Inteligente: Horarios de rotación independientes para claves ECC y PQC
- Eliminación Segura: Claves antiguas purgadas automáticamente después del uso
- Migración Perfecta: Compatibilidad hacia atrás con dispositivos KryptEY originales
- EncryptedSharedPreferences: Todos los datos de usuario cifrados en reposo usando AES256-GCM (vs SharedPreferences plano original)
- Protección de MasterKey: Keystores respaldados por hardware donde esté disponible
- Cifrado JSON: Historial de mensajes, contactos y claves almacenados cifrados
- Diseño de Conocimiento Cero: No se almacenan datos en texto plano en el dispositivo
- Protocolo X3DH: Curva elíptica X25519 con SHA-512
- Algoritmo de Doble Ratchet: Derivación avanzada de claves y autenticación de mensajes
- AES-256 con CBC (PKCS#7): Estándar de cifrado de mensajes
- SHA-256: Función hash para varias cadenas
- SHA-512: Generación de huella dactilar para representación de clave pública
- Secreto Perfecto hacia Adelante: Cada mensaje usa claves de cifrado únicas
Toda la información del protocolo almacenada en almacenes especializados:
- IdentityKeyStore: Gestión de claves de identidad
- PreKeyMetadataStore: Metadatos de pre-claves y horarios de rotación
- PreKeyStore: Pre-claves de un solo uso (2 claves vs 100 de Signal)
- SignedPreKeyStore: Gestión de pre-claves firmadas
- SessionStore: Gestión de estado de sesión
- SenderKeyStore: Claves de mensajería grupal
- SignalProtocolStore: Interfaz unificada del protocolo
- BCKyberPreKeyStore: (Nuevo) Pre-claves Kyber post-cuánticas
- PreKeyResponse: Enviar PreKeyBundle (mensaje de invitación)
- PreKeySignalMessage: Enviar texto cifrado + PreKeyBundle después del establecimiento de sesión
- SignalMessage: Enviar texto cifrado regular
- PreKeyResponse + SignalMessage: (Mejorado) Enviar texto cifrado con PreKeyBundle actualizado + claves Kyber
Toda la información del mensaje recopilada en un MessageEnvelope que contiene:
- PreKeyResponse: Datos del paquete de claves (ECC + Kyber en BWT 3.0)
- CiphertextMessage: Mensaje cifrado como array de bytes
- CiphertextType: Identificador del tipo de mensaje
- Timestamp: Hora de creación del mensaje
- SignalProtocolAddress: Identificación del remitente (UUID aleatorizado)
- Modo Crudo: Visualización directa de JSON con formato minificado
- Modo Cuento de Hadas: Mensajes ocultos en caracteres Unicode invisibles
- Caracteres Unicode Invisibles: 16 characters (U+200C, etc.) for 4-bit mapping
- Minificación JSON: Claves abreviadas ("preKeyResponse" → "pR")
- Compresión GZIP: Optimización de tamaño antes de la codificación
- Conversión Binaria: 4 bits mapeados a Unicode invisible (0000-1111)
- Historias Señuelo: Oculto en cuentos de Cenicienta o Rapunzel
- Reversibilidad Completa: Extraer → Convertir → Descomprimir → Desminificar
- Cifrado de Extremo a Extremo: Todos los mensajes cifrados antes de salir del dispositivo
- Operación Sin Servidor: Sin servidor central para intercambio de claves (A diferencia de la app Signal)
- Identificación UUID: UUIDs aleatorizados en lugar de números de teléfono
- Cifrado en Tiempo Real: Cifrado/descifrado en vivo mientras escribes
- Eliminación de Historial por Contacto: (Nuevo) Eliminar historial de mensajes por contacto con un toque
- Borrado Criptográfico: (Nuevo) La eliminación segura asegura irrecuperabilidad de datos
- Gestión de Contactos: Agregar/eliminar contactos con verificación
- Gestión de Sesiones: Establecimiento seguro de sesiones sin servidores
- Alicia genera y envía PreKeyBundle (mensaje de invitación)
- Bob agrega a Alicia como contacto, establece sesión localmente
- Bob envía PreKeySignalMessage (primer mensaje cifrado)
- Alicia agrega a Bob, establece sesión, descifra mensaje
- Ambas partes intercambian SignalMessages para conversación continua
- Rotación de Claves: (Mejorado) Cada 2 días con actualizaciones automáticas de PreKeyBundle
- 89+ Idiomas Soportados: (vs soporte básico en inglés original)
- Traducciones Completas: UI, textos de ayuda y mensajes de error totalmente localizados
- Variantes Regionales: Localizaciones específicas (en-US, en-GB, es-ES, es-US, etc.)
- Soporte RTL: Idiomas de derecha a izquierda totalmente soportados
- Adaptación Cultural: Distribuciones y comportamientos culturalmente apropiados
- Permisos Mínimos: Solo se requiere permiso VIBRATE
- Sin Acceso a Internet: Todas las operaciones criptográficas locales
- Sin Almacenamiento Externo: Sin requisitos de permisos sensibles
- Optimizado para Batería: Procesamiento mínimo en segundo plano
- Aceleración por Hardware: Donde esté disponible
- Protocolo Signal v3: Últimas implementaciones criptográficas
- libsignal-android 0.73.2: (vs versión anterior original) Última con soporte PQC
- Bouncy Castle PQC 1.78.1: (Nuevo) Algoritmos post-cuánticos estándar de la industria
- Android Security Crypto: (Nuevo) Almacenamiento cifrado moderno
- Jackson Databind 2.14.1: Serialización JSON eficiente
- Android 8.0 (API 26) o superior (igual que el original)
- Arquitectura ARMv7, ARM64 o x86_64
- 50MB de espacio libre de almacenamiento
- Sin permisos especiales requeridos (solo VIBRATE)
- Instalar APK o compilar desde código fuente
- Habilitar teclado en Configuración de Android → Idioma y Entrada
- Establecer como predeterminado método de entrada
- Auto-inicialización: El Protocolo Signal se inicializa automáticamente:
- SignalProtocolAddress aleatorizado (UUID + ID de dispositivo)
- Clave de Identidad (permanente, nunca rotada)
- 2 Pre-Claves de Un Uso (vs 100 de Signal)
- Pre-Clave Firmada (rota cada 2 días)
- Pre-Claves Kyber (Nuevo en BWT 3.0)
- Resistente Post-Cuántico: (Nuevo) Protección contra futuras computadoras cuánticas
- Secreto Perfecto hacia Adelante: Mensajes pasados seguros si las claves se comprometen
- Arquitectura Sin Servidor: Sin punto central de falla
- Autenticación Negable: No se puede probar autoría de mensajes
- Rotación Mejorada: (Mejorado) Rotación de claves de 2 días vs 30 días originales
- Conversaciones 1-a-1: Diseñado principalmente para chats individuales
- Limitaciones de Chat Grupal: Funcionalidad grupal limitada
- Compatibilidad de Mensajeros: Algunos mensajeros pueden no manejar Unicode invisible correctamente
- Límites de Tamaño de Mensaje: Algunas plataformas limitan el tamaño del mensaje (3500 bytes)
- Problemas HTML de Telegram: El modo cuento de hadas puede tener problemas con el copiado HTML
Licenciado bajo la Licencia GPL-3.0 (mantenida del original). Ver LICENSE para detalles.
¡Las contribuciones son bienvenidas! Por favor lee nuestras Guías de Contribución antes de enviar pull requests.
- 📋 Issues: GitHub Issues
- 📖 Documentación: Wiki
- 💬 Soporte: Discussions
- 🔐 Auditorías de Seguridad: Security Audits
- 🎯 KryptEY Original: Proyecto Base
⚡ SecureChats Keyboard BWT 2.0.0 - El Futuro de la Comunicación Móvil Segura ⚡
Construido sobre la base sólida de KryptEY con mejoras revolucionarias de seguridad post-cuántica