Themis es una biblioteca de servicios criptográficos de alto nivel de código abierto para proteger datos durante la autenticación, el almacenamiento, la mensajería, el intercambio de red, etc. Themis resuelve el 90% de los casos de uso típicos de protección de datos que son comunes para la mayoría de las aplicaciones.
Themis ayuda a crear funciones criptográficas simples y complejas de manera fácil, rápida y segura. Themis permite a los desarrolladores centrarse en lo principal: desarrollar sus aplicaciones.
Cifre los secretos almacenados en sus aplicaciones y backend: claves API, tokens de sesión, archivos.
Cifre los campos de datos confidenciales antes de almacenarlos en la base de datos ( "cifrado a nivel de campo del lado de la aplicación" ).
Admite cifrado con capacidad de búsqueda , tokenización de datos y enmascaramiento de datos mediante Themis y Acra.
Intercambie secretos de forma segura: comparta datos confidenciales entre partes, cree una aplicación de chat sencilla entre pacientes y médicos.
Cree esquemas de cifrado de extremo a extremo con arquitectura centralizada o descentralizada: cifre datos localmente en una aplicación, utilícelos cifrados en todas partes, descifre solo para usuarios autenticados.
Mantenga sesiones seguras en tiempo real : envíe mensajes cifrados para controlar los dispositivos conectados desde su aplicación, reciba datos confidenciales en tiempo real desde sus aplicaciones a su backend.
Comparar secretos entre partes sin revelarlos (autenticación basada en pruebas de conocimiento cero).
Una biblioteca criptográfica que se adapta a todos : Themis es la mejor opción para aplicaciones multiplataforma (por ejemplo, aplicación iOS+Android+Electron con backend Node.js) porque proporciona API 100% compatible y funciona de la misma manera en todas las plataformas compatibles. .
Themis proporciona bloques de construcción listos para usar (“criptosistemas”) que simplifican el uso de las operaciones principales de seguridad criptográfica.
Themis proporciona 4 servicios criptográficos importantes:
Creamos Themis para construir otros productos además de él, es decir, Acra y Hermes.
Consulte la página de Instalación para instalar Themis para su aplicación móvil, web, de escritorio o del lado del servidor. Recomendamos encarecidamente paquetes de instalación en lugar de compilarlos desde el código fuente.
Themis está disponible para los siguientes idiomas/plataformas; consulte los procedimientos de idioma para cada uno:
Plataforma | Documentación | Ejemplos | Versión |
---|---|---|---|
⚛️ Reaccionar nativo (iOS, Android) | Cómo reaccionar nativo | documentos/ejemplos/react-native | |
? Rápido (iOS, macOS) | Cómo hacer Swift | documentos/ejemplos/swift | |
Objetivo-C (iOS, macOS) | Cómo hacer Objective-C | documentos/ejemplos/objc | |
☕️Java (Escritorio) | Cómo hacer Java (escritorio) | documentos/ejemplos/java | |
☎️ Java (Android) | Cómo hacer Java (Android) | documentos/ejemplos/android | |
? Kotlin (Android) | Cómo hacer Kotlin (Android) | documentos/ejemplos/android | |
? Rubí | Cómo hacer rubí | documentos/ejemplos/rubí | |
? Pitón | Cómo hacer Python | documentos/ejemplos/python | |
? PHP | Cómo hacer PHP | documentos/ejemplos/php | |
➕C++ | Cómo hacer CPP | documentos/ejemplos/c++ | |
? Nodo.js | Cómo hacer Javascript (Node.js) | documentos/ejemplos/js | |
? Asamblea web | Cómo hacer Javascript (WebAssembly) | documentos/ejemplos/js | |
? Ir | Ir al procedimiento | documentos/ejemplos/ir | |
? Óxido | Cómo oxidar | documentos/ejemplos/óxido | |
? С++ PNaCl para Google Chrome | Proyecto WebThemis |
Themis admite las siguientes arquitecturas de CPU: x86_64/i386, ARM, Apple Silicon (ARM64), varias arquitecturas de Android.
Construimos y verificamos Themis en las últimas versiones estables del sistema operativo:
Planeamos ampliar esta lista con un conjunto más amplio de plataformas. Si desea ayudar a mejorar o llevar Themis a su plataforma o idioma favorito, póngase en contacto.
La documentación de Themis contiene documentos oficiales en constante evolución, que cubren todo, desde pautas de implementación hasta casos de uso, con breves explicaciones de los criptosistemas y la arquitectura detrás de la biblioteca principal de Themis.
Consulte la documentación para obtener más información sobre:
Themis se basa en algoritmos criptográficos probados implementados por bibliotecas de criptografía conocidas como OpenSSL, LibreSSL, BoringSSL. Consulte Criptografía en los documentos de Themis para obtener más información.
Esta distribución incluye software criptográfico. El país en el que reside actualmente puede tener restricciones sobre la importación, posesión, uso y/o reexportación a otro país de software de cifrado. ANTES de utilizar cualquier software de cifrado, verifique las leyes, regulaciones y políticas de su país relativas a la importación, posesión o uso y reexportación de software de cifrado para ver si esto está permitido. Consulte http://www.wassenaar.org/ para obtener más información.
La Oficina de Industria y Seguridad (BIS) del Departamento de Comercio del Gobierno de EE. UU. ha clasificado este software como Número de control de productos de exportación (ECCN) 5D002.C.1, que incluye software de seguridad de la información que utiliza o realiza funciones criptográficas con algoritmos asimétricos. La forma y el modo de esta distribución la hacen elegible para la exportación bajo la excepción de Licencia de Excepción de Software de Tecnología ENC Sin Restricciones (TSU) (consulte las Regulaciones de Administración de Exportaciones de BIS, Sección 740.13) tanto para el código objeto como para el código fuente.
Si su aplicación utiliza Themis y desea enviarla a la App Store de Apple, existen ciertos requisitos para declarar el uso de cualquier criptografía.
Lea acerca de las regulaciones de exportación de Apple sobre criptografía para Themis para saber qué hacer.
Cada cambio en la biblioteca principal de Themis es revisado y aprobado por nuestro equipo interno de criptógrafos e ingenieros de seguridad. Para cada lanzamiento, realizamos auditorías internas por parte de criptógrafos que no trabajan en Themis.
Utilizamos muchas pruebas de seguridad automatizadas, es decir, analizadores de código estático, herramientas de fuzzing, analizadores de memoria, pruebas unitarias (para cada plataforma), pruebas de integración (para encontrar problemas de compatibilidad entre diferentes lenguajes, sistemas operativos y arquitecturas x86/x64 compatibles con Themis). Lea más sobre nuestras prácticas de pruebas de seguridad en los documentos de seguridad de Themis.
Si cree que ha encontrado un problema relacionado con la seguridad, envíenos un correo electrónico a [email protected]. Es posible que se aplique un programa de recompensas por errores.
Como biblioteca de servicios criptográficos para plataformas móviles y de servidores, Themis es una herramienta de cifrado "de última generación" que proporciona intercambio y almacenamiento de datos seguros.
Utilizando Themis, puede alcanzar un mejor cumplimiento de las normas vigentes de privacidad de datos, tales como:
Lea más sobre las regulaciones en los documentos.
OWASP recomienda Themis como biblioteca de cifrado de datos para plataformas móviles.
Themis se usa ampliamente para proyectos comerciales y no comerciales; algunas aplicaciones y bibliotecas públicas se pueden encontrar aquí.
¿Quieres aparecer en nuestro blog y también en la lista de colaboradores? ¡Escríbenos sobre el proyecto que has creado usando Themis!
Si está buscando algo en lo que contribuir y ganarse el respeto eterno, simplemente elija las cosas de la lista de temas. Dirígete a nuestras pautas de contribución como punto de partida.
Apoyar a Themis para todas estas numerosas plataformas es un trabajo duro, pero intentamos hacer todo lo posible para que el uso de Themis sea conveniente para todos. La mayoría de los problemas que encuentran nuestros usuarios están relacionados con el proceso de instalación y la gestión de dependencias. Si enfrenta algún desafío, háganoslo saber.
En Cossack Labs, ofrecemos servicios de soporte profesional para Themis y aplicaciones que utilizan Themis.
Este soporte incluye, entre otros, la integración de la biblioteca, con un enfoque en aplicaciones web y móviles; diseñar y construir esquemas de cifrado de extremo a extremo para aplicaciones móviles; auditorías de seguridad, para integraciones de bibliotecas internas o protocolos de alto nivel; desarrollo de aplicaciones personalizadas que requieren criptografía; servicios de consultoría y capacitación.
Envíenos un correo electrónico a [email protected] o consulte los servicios de ciberseguridad de Cossack Labs.
Si desea hacer una pregunta técnica, informar un error o sugerir una función, no dude en iniciar una discusión en GitHub, plantear un problema en el rastreador de problemas o escribir a [email protected].
Para hablar con el ala comercial de Cossack Labs Limited, envíenos un correo electrónico a [email protected].