Implement HOTP (HMAC-based One-Time Password) Generator and Validator
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Necesita aclaración
- Estado de actividad
- Estancado
- Stack tecnológico
- typescript
- Área
- authentication, security
Línea de trabajo
No se nombran archivos, pruebas ni puntos de entrada; primero localiza la estructura existente de la herramienta y determina dónde debería ubicarse una implementación de RFC 4226. Define el alcance necesario antes de programar, incluyendo la generación, la validación, la sincronización del contador, los hashes y las longitudes de código compatibles, la gestión de claves, la integración con QR y las operaciones de backup; después, verifica cada requisito enumerado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
Implement a comprehensive HOTP (HMAC-based One-Time Password) tool based on RFC 4226 standard. This tool will provide HOTP generation, validation, counter management, and synchronization features for event-based one-time password authentication systems.
HOTP is a counter-based OTP algorithm where the moving factor is an incrementing counter rather than time. Each generated password remains valid until the next password is requested and validated, making counter synchronization between client and server critical for proper operation.
Feature Requirements
Core HOTP Functionality
- Generate HOTP codes based on shared secret and counter value
- Validate HOTP codes with counter synchronization
- Support multiple hash algorithms (SHA-1, SHA-256, SHA-512)
- Configurable code lengths (4, 6, 7, 8 digits)
- Counter management and increment operations
- Look-ahead window for counter synchronization
Counter Management
- Counter initialization and configuration
- Counter increment and decrement operations
- Counter synchronization with tolerance windows
- Counter backup and restoration
- Bulk counter operations
- Counter drift detection and correction
Key Management
- Generate cryptographically secure random secrets
- Base32 encoding/decoding for secret keys
- Import/export HOTP configurations
- Secret validation and format conversion
- Multiple HOTP profile management
QR Code Integration
- Generate QR codes for HOTP setup (otpauth:// URLs)
- Parse and import from QR codes
- Support standard HOTP URL format with counter parameter
- Custom QR code styling and export
Advanced Features
- Counter synchronization analysis
- HOTP configuration backup/restore
- Batch HOTP operations with counter management
- Historical counter validation
- Counter resynchronization utilities
- Lenguaje dominante
- TypeScript
- Estrellas
- 29
- Forks
- 8
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
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 AprilNEA/DevUtility
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
AprilNEA/DevUtility#44 · 1 comentario ·
-
enhancement good first issue
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
AprilNEA/DevUtility#25 ·
-
Implement Preference Window using Tauri v2 MultiwindowQuizá libre de nuevo @AprilNEA la tomó hace 464 días y no hay ningún pull request abierto. Abiertoenhancement tauri
AprilNEA/DevUtility#24 · 1 asignado ·
-
Implement Unified Error Handling System for Tauri Backend and React FrontendQuizá libre de nuevo @AprilNEA la tomó hace 470 días y no hay ningún pull request abierto. Abiertoenhancement
AprilNEA/DevUtility#6 · 1 asignado ·
-
JSON Web Key/Signature/Encryption ToolkitQuizá libre de nuevo @AprilNEA la tomó hace 470 días y no hay ningún pull request abierto. Abiertocryptography enhancement
AprilNEA/DevUtility#5 · 1 asignado ·
Todos los issues de AprilNEA/DevUtility
Issues similares
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 88/100
supabase/agent-skills#611 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 68/100
polka-codes/test#345 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 92/100
GoogleChromeLabs/project-sesame#217 ·
Los mantenedores suelen responder en 12 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
solana-foundation/solana-com#2202 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100