Hola amigos
Durante varios días he estado probando un sistema que permite conectar con la blockchain de Hive utilizando solo la posting key, y realizar interacciones sociales como votar, comentar, seguir, hacer reblog, entre otras. Esto permite crear aplicaciones ligeras para nuevos usuarios y reducir el tiempo entre el registro y el uso de una DApp.
Este sistema funciona exclusivamente con la posting key, ya que es la clave que no compromete los activos digitales principales, como HIVE o HBD. Todo esto mientras el usuario se familiariza con el ecosistema y herramientas como Keychain.
¿Qué quiero lograr con esto?
- Que un usuario se registre y coloque su posting key en una app para crear su primer post.
- Que pueda realizar acciones básicas como comentar, dar upvote, seguir a otros en Hive.
- Que pueda publicar sus primeros contenidos antes de explorar otras opciones.
- Que navegue entre los principales posts.
- Que reclame recompensas.
- Que edite su perfil (nombre, imagen, etc.).
¿Cómo estoy desarrollando esto?
Estoy usando mis conocimientos de programación y principalmente herramientas de Vibes Coding. Utilizo la API https://hafsql-api.mahdiyari.info/ y varias documentaciones de Hive.
Cómo funciona
Autenticación
- Login inteligente: Detecta si eres un usuario nuevo o existente.
- Múltiples cuentas: Puedes guardar varias cuentas y alternar entre ellas.
- PIN personalizado: Crea un PIN para proteger tu clave localmente.
- Sesiones temporales: Opción para 30 minutos sin requerir el PIN mientras haya actividad.
Seguridad
- Encriptación local: La clave se guarda cifrada en tu navegador.
- Solo posting key: Detecta y rechaza cualquier otra clave.
- Validación blockchain: Verifica que la clave pertenezca a tu cuenta.
- Auto cierre de sesión: Se desconecta automáticamente por inactividad.
Lo difícil de esta implementación es que la clave privada siempre esté encriptada: que tu clave privada NUNCA se guarde en texto plano.
El objetivo es hacerla de código abierto. Por eso, la app está diseñada para ser modular y fácil de integrar en cualquier proyecto que necesite autenticación con Hive mediante este método.
Ingresando una nueva cuenta
Intercambiar cuentas:
Por ejemplo, si una acción requiere mi clave privada, se abre un modal para ingresar el PIN, con la opción de no volver a pedirlo durante 30 minutos. Este tiempo se renueva cada vez que el usuario interactúa.
Esto se replica para cada tipo de acción compatible.
Lo próximo
Voy a revisar que estén incluidas todas las transacciones básicas y lanzar una versión beta con alguna app para que ustedes puedan probarla.
Para la próxima semana debería estar lista esta aplicación y probar en una dapp funcional como holahive.com.
Gracias a @eddiespino, @theycallmedan y @hivecreators por el apoyo y las ideas para nuevas soluciones en Hive.
Excelente. Se ve que será muy útil