Tinkey es la utilidad de línea de comandos de Tink para administrar claves. Tinkey te permite encriptar o desencriptar conjuntos de claves con claves de encriptación de claves almacenadas en un KMS remoto. Tinkey tiene compatibilidad integrada con AWS KMS y Google Cloud KMS. Agregar compatibilidad con otros KMS no requiere modificar Tinkey.
Instalación
Puedes instalar Tinkey desde archivos binarios precompilados, usar Homebrew o compilar Tinkey desde la fuente de Tink:
Objetos binarios compilados previamente
La versión más reciente de Tinkey es la 1.12.0 (descargar). Funciona en Linux, macOS y Windows.
Homebrew
Para instalar Tinkey con Homebrew, ejecuta el siguiente comando:
brew tap tink-crypto/tink-tinkey https://github.com/tink-crypto/tink-tinkey
brew install tinkey
Desde la fuente
Para compilar la versión más reciente de Tinkey a partir del código fuente de Tink, usa Bazel con Bazelisk:
TINKEY_URL="https://github.com/tink-crypto/tink-tinkey/releases/download/v1.12.0/tink-tinkey-1.12.0.zip"
TINKEY_SHA256="425a551254847323078aaa80c0087bb228d7672e0c8663807aa06c50dcffa75a"
curl -LsS "${TINKEY_URL}" -o tinkey.zip
echo "${TINKEY_SHA256} tinkey.zip" | sha256sum -c
unzip tinkey.zip && cd "tink-tinkey-1.12.0"
bazelisk build //:tinkey
Esto produce el objeto binario bazel-bin/tinkey
.
Referencia de comandos
Tinkey se puede usar para generar claves y realizar otras tareas de administración, como encriptar, desencriptar o rotar claves.
La sintaxis para usar los comandos que se enumeran en la tabla es tinkey <command>
[<args>]
.
Comando | Acción |
---|---|
help |
Imprime un mensaje de ayuda para todos los comandos disponibles. |
add-key |
Genera y agrega una clave nueva a un conjunto de claves. |
convert-keyset |
Cambia el formato, encripta y desencripta un conjunto de claves. |
create-keyset |
Crea un conjunto de claves nuevo. |
create-public-keyset |
Crea un conjunto de claves públicas a partir de un conjunto de claves privadas. |
list-key-templates |
Enumera todas las plantillas de claves admitidas. |
delete-key |
Borra una clave especificada en un conjunto de claves. |
destroy-key |
Obsoleto. Destruye el material de una clave especificada en un conjunto de claves. (Esta función está obsoleta: El comportamiento de Tink con conjuntos de claves que contienen claves destruidas puede depender de la versión de Tink). |
disable-key |
Inhabilita una clave especificada en un conjunto de claves. |
enable-key |
Habilita una clave especificada en un conjunto de claves. |
list-keyset |
Enumera las claves de un conjunto de claves. |
promote-key |
Promueve una clave especificada a primaria. |
rotate-keyset |
[Obsoleto] Agrega una clave nueva y la convierte en la principal.
(En cambio, recomendamos que primero agregues una clave nueva con add-key y, luego, la establezcas de forma explícita como principal con promote-key . En los
sistemas distribuidos, se debe garantizar que la clave recién agregada esté disponible
en todos los servidores antes de promoverla como principal. |