Un mes de desarrollo: Retos al crear KuroNote
Reflexión tras el primer mes de desarrollo de KuroNote y KuroNotes. Una introducción a las dificultades encontradas y a los retos para implementar sus funciones principales de seguridad.
Hace exactamente un mes decidí desarrollar una aplicación de notas sencilla y rápida, y expliqué las especificaciones básicas en mi artículo anterior. Aunque la función de notas rápidas en sí misma no era muy difícil, la implementación de un modelo de confidencialidad de cero confianza—donde nadie más que el propietario, incluyendo el creador de la aplicación, piratas informáticos o incluso el servidor de almacenamiento, puede leer las notas—resultó ser mucho más difícil de lo esperado.
Gestionar los errores de los usuarios: Mi mayor dolor de cabeza#
Lo más difícil no ha sido la función en sí, sino la gestión de los errores humanos y los problemas operativos causados por sus características únicas. Por ejemplo, un error como "el usuario desinstala accidentalmente la aplicación y los datos se pierden". En las aplicaciones normales, puedes resolver esto almacenando los datos en un servidor, pero para que esta versión autónoma KuroNote gratuita y permanente sea viable, debemos hacer todo en el teléfono inteligente sin almacenar datos en un servidor.
Sin embargo, incluso dentro del dispositivo, los datos están cifrados, y si desinstala la aplicación, se eliminan sin discusión. Aunque este es un comportamiento normal para un teléfono inteligente, es un problema importante para una aplicación que gestiona datos importantes como KuroNote. Realmente luché para saber cómo mantener los datos, pero como no es posible mostrar una pantalla de confirmación especial durante la desinstalación, no había casi ninguna manera de evitarlo.
Solución: Guardar los datos en un almacenamiento en la nube personal.
Sí, pase lo que pase, si la aplicación se desinstala, los datos desaparecen, por lo que no hay otra opción que guardarlos en otro lugar. Para los usuarios a los que les resulta difícil suscribirse a KuroNotes, el enfoque fue utilizar el almacenamiento en la nube que ya poseen. Sin embargo, si la clave de cifrado se elimina con la aplicación, no pueden leer las notas guardadas en la nube. But si el teléfono inteligente guarda la clave de cifrado con el passkey, la recuperación puede ser posible registrando un correo electrónico. Además, si elige guardar los datos en la nube sin cifrado, se pueden recuperar durante la reinstalación, pero esto no cumple con el objetivo de KuroNote/KuroNotes donde incluso el servidor no puede ver el contenido. También queda el riesgo de que los datos de la nube se lean en claro en caso de fuga. Decidí dejar esta elección al usuario.
Honestamente, no quería ofrecer esta opción "sin cifrado". Aunque vendemos una protección de datos segura, el proveedor de la nube puede ver todo, y creo que pocas personas pueden usar correctamente los sistemas complejos de Google. Los usuarios que por error hacen públicas sus configuraciones de Google parecen muy probables... Sin embargo, también quiero reducir la pérdida de datos. Cuando compras un cuaderno en una papelería y lo pierdes, no te quejas a la papelería, pero con las aplicaciones, la gente se queja de que los datos han desaparecido aunque hayan desinstalado la aplicación ellos mismos. Por lo tanto, no tenemos otra opción que reducir la probabilidad de pérdida tanto como sea posible.
En caso de pérdida o avería del teléfono inteligente#
El problema siguiente es la pérdida del teléfono inteligente o su avería que requiere un reemplazo. Obviamente, restaurar información que solo existe en un teléfono inteligente sin ese dispositivo es imposible. Es el mismo problema que para la desinstalación. Ahí es donde se puede usar el almacenamiento en la nube mencionado anteriormente. Por supuesto, suscribirse a KuroNotes, que registra los datos en un servidor, es más sencillo y constituye la estructura más segura. La resiliencia de la recuperación aumenta considerablemente. Sin embargo, mucha gente not quiere pagar ni 100 yenes por su propio cuaderno, por lo que no tienen otra opción que guardar los datos en su propio almacenamiento en la nube. Para la pérdida y los cambios de modelo, los datos estando en el teléfono inteligente, no puede transferirlos sin conexión a una nube externa o suscripción a KuroNotes. La versión gratuita KuroNote en el teléfono inteligente tiene inevitablemente sus límites.
¿Qué les ocurre a las personas sin suscripción a la nube?#
En ese caso, no podemos hacer nada. Es lo mismo que perder un cuaderno físico que contiene notas importantes; porque es importante, cuidarlo es la mejor medida de seguridad. Sin embargo, creo que muchos usuarios de teléfonos inteligentes ya poseen suscripciones a la nube por las razones siguientes. Por ahora, no teniendo otra opción que ofrecer diversas conexiones a la nube, hemos implementado el soporte de muchos métodos de conexión.
|
Almacenamiento en la nube |
Soporte KuroNote |
Razón / Estado |
|
Google Drive |
Soportado |
Para todos los que usan Gmail, está automáticamente disponible. El espacio gratuito es grande, y muchos usuarios tienen planes de pago a bajo precio. |
|
Microsoft OneDrive |
Soportado |
Si usan frecuentemente Excel o Word, muchos usuarios tienen suscripciones a Office 365, y la capacidad de almacenamiento básica es relativamente grande. |
|
Dropbox |
Soportado |
Un pionero del almacenamiento en la nube. Conocido por su velocidad y capacidad, mucha gente lo usa para gestionar los datos con seguridad. |
| BOX | Soportado | Tuvo éxito en un momento pero se ha ralentizado recientemente. La relación costo/capacidad es poco ventajosa. |
| WebDAV | Soportado | Un estándar antiguo, pero es uno de los almacenamientos web utilizados por muchos servicios. Algunos lo usan en su propio servidor. |
| SMB (Samba) | Soportado | Para entorno local únicamente. Conocido como uso compartido de Windows. Utilizable únicamente en casa o en la oficina, pero es mejor que nada. Muchas vulnerabilidades. |
| S3 | Soportado | Servicio de almacenamiento proporcionado por Amazon AWS. Al haber sido AWS el estándar de hecho, existen muchos servicios compatibles con S3. |
| MEGA | Soportado | Todos los datos se cifran automáticamente. De cierta manera, utiliza la misma filosofía de cero lectura que KuroNote/s. Excelente relación costo/rendimiento. |
|
Apple iCloud |
No Soportado |
Debido a la compatibilidad exclusiva con Apple, no existe ninguna herramienta de desarrollo para Windows o Android. La implementación es imposible. Los usuarios de Mac usan a menudo Gmail, por lo que no es un problema. |
Yo mismo uso muchos productos Apple (unos 10 dispositivos), por lo que me hubiera gustado soportar iCloud. Sin embargo, los precios del iPhone aumentan cada año, y la gente podría recurrir a Android. Además, iCloud no se puede usar en Android o Windows en la actualidad. Por otra parte, al estar los teléfonos inteligentes y PC llamados a convertirse en máquinas IA, el hardware mismo se banalizará aún más.
Con respecto al almacenamiento en la nube, si no está cifrado, el proveedor de la nube (Google, Microsoft, Apple, etc.) puede consultar y copiar libremente el contenido. Naturalmente, existe un riesgo de piratería. O también **los empleados deshonestos**—las filtraciones de datos por empleados han sido frecuentes últimamente, y ya no podemos sentirnos seguros bajo el pretexto de que se trata de una gran empresa.
Política de KuroNotes (Versión de pago con servidor)#
Para los usuarios que no tienen su propio almacenamiento en la nube, o que quieren separar sus notas de su almacenamiento en la nube regular, al tiempo que disfrutan de una seguridad total sin perder comodidad, ofrecemos un servicio en la nube dedicado por unos 100 yenes al mes. Se puede configurar desde la aplicación. Por supuesto, si los datos están cifrados, no podemos ver el contenido, pero el gran interés de KuroNotes es poder usarlo desde un navegador de PC. Escribir textos largos en un teléfono inteligente es imposible para un **casi sexagenario** como yo. Aunque practique la escritura táctil, siento **que no mejoraré**. Para los que quieren usar una PC, pueden escribir en una pantalla grande o en un teclado cómodo en la oficina o en casa, y consultar en el teléfono inteligente en movimiento. Pero debido a los costos de servidor y ancho de banda, no podemos ofrecerlo gratis. Por lo tanto, hemos minimizado los costos a 100 yenes en Japón (1,00 $ en EE. UU., 1,00 € en Europa). Planeo mantener este precio fijo de por vida, ya que ofrecemos una **función de planificación de fin de vida**.
Honestamente, los otros almacenamientos en la nube cuestan al menos 400 yenes hoy en día, por lo que 100 yenes es un precio muy bajo para un servicio de servidor. Queremos que la gente lo use durante mucho tiempo y aproveche la planificación de fin de vida. Permítame explicarle qué es esto. Es una función para los familiares. En caso de fallecimiento del usuario y cancelación de la suscripción telefónica, después de cierto tiempo, se envía un correo electrónico final a las personas designadas, y la familia puede recuperar las notas marcadas con un código de herencia familiar. Es un sistema para entregar las notas importantes a la familia.
|
Funcionalidades de fin de vida |
Resumen |
|
Correo electrónico final |
Cuando el contrato termina y ha transcurrido un plazo, la aplicación envía un correo electrónico al destinatario prerregistrado. Ejemplo: "El código de herencia familiar está en el cajón de mi escritorio. Acceda a esta URL para ver los datos. Los códigos de caja fuerte y cuentas se detallan allí". Por supuesto, si desactiva la opción antes de cancelar el contrato, no se enviará nada. |
|
Código de herencia familiar |
Los usuarios pueden marcar las notas que deseen dejar a su familia. La familia puede recuperar estas notas con el correo electrónico final y el código de herencia. A diferencia del código de recuperación personal, la familia solo puede guardar las notas marcadas como archivos de texto en claro. |
Para más detalles, consulte la página de presentación (LP) de KuroNote/KuroNotes.
¿Por qué quería crear una aplicación así?#
Sobre todo debido a mis temores sobre la pérdida de memoria. Guardar contraseñas, etc. Además, Google comenzó a enviar mensajes indicando que mis contraseñas se habían filtrado. Cuando creas contraseñas complejas, no puedes retenerlas, y se te dice que no las reutilices, lo cual es demasiado difícil. Aunque los gestores integrados resuelven muchos problemas, todo el mundo tiene **secretos personales y notas aparte de las contraseñas**, y comencé el desarrollo pensando que sería fantástico ofrecer un sistema que **desapareciera definitivamente a mi muerte**. Cuando uno se acerca a los sesenta, debe prepararse para el fin. Incluso yo tengo a veces recuerdos confusos de mis propios bienes. Es bueno encontrar una libreta de ahorros al ordenar, pero si olvidas transferir títulos de propiedad o gestionar los impuestos sobre bienes inmuebles, acabarás olvidándolo.
Las imágenes se pueden **reducir automáticamente** y adjuntar, por lo que cuando escribir resulta tedioso, simplemente puede pegar una foto. La entrada de voz también se puede agregar. **Si tiene un contrato de KuroNotes, su teléfono inteligente y PC se sincronizan** para compartir notas, por lo que puede verificar la información en su teléfono inteligente o volver a escribir en su PC las notas **temporalmente introducidas como fotos** mientras lo recuerda. En resumen, quería una aplicación rápida para ayudarme a diario.
Y lo que pensé al desarrollar esta aplicación
Naturally, la comodidad y la seguridad están en una relación de compromiso. Cuanto más intentas aumentar la seguridad, más complicado resulta el uso. Sin embargo, en KuroNote/KuroNotes, creo que hemos encontrado el mejor punto de equilibrio.
La preocupación es que si hay un error en una herramienta de este tipo, corregirlo más tarde podría requerir un trabajo enorme, y **aunque al principio solo quería hacer un cuaderno algo práctico, se ha de convertido en una aplicación que requiere enormes esfuerzos**. Anteriormente, al trabajar en entretenimiento, experimenté **quejas de usuarios irrazonables** y **clientes que se quejaban durante horas**. Para evitar esto, estoy convencido de que obligar a los usuarios a confirmar cuidadosamente dentro de la aplicación, y no solo en las condiciones de uso, es la solución correcta.
Aun así, me alegraría que esta herramienta hiciera la vida de todos más práctica. ¡El lanzamiento se acerca!