Выберите свой сценарий использования, чтобы определить нужный примитив, затем перейдите по ссылке, чтобы получить инструкции по его использованию.
Шифрование данных...
| Примитивный | Подробности | |
|---|---|---|
| ...стандартных размеров | Аутентифицированное шифрование с ассоциированными данными (AEAD) | - Подходит для большинства потребностей - Принимает открытый текст размером до 2 32 байт — Обеспечивает конфиденциальность открытого текста и проверяет целостность и подлинность. |
| ...в больших файлах или потоках данных | Трансляция AEAD | - Для данных, слишком больших для обработки за один шаг. |
| ...детерминистически | Детерминированная AEAD | - Создает одинаковый зашифрованный текст для заданного открытого текста и ключа. |
| ...с ключами, защищенными KMS | Система управления ключами (KMS) Envelope AEAD | - Шифрует каждый открытый текст с помощью нового ключа AEAD. - Шифрует каждый ключ AEAD с помощью KMS. |
| ...с помощью открытого ключа, расшифровать данные с помощью закрытого ключа | Гибридное шифрование | - Не подтверждено - Полезно, когда отправители не могут хранить секреты (закрытый ключ). |
Все эти примитивы способны связывать зашифрованный текст с его контекстом .
Обеспечьте подлинность и целостность данных путем...
| Примитивный | Подробности | |
|---|---|---|
| ...создание и проверка MAC-адреса одним ключом | Код аутентификации сообщения (MAC) | - Очень быстро - Подтверждается только сторонами, которые также могут создавать MAC-адреса. |
| ...создание подписи с помощью закрытого ключа, проверка с помощью открытого ключа | Цифровая подпись | - Подлежит проверке сторонами, которые не могут создавать подписи. |
| ...создание и проверка подписей на JWT-токенах | JSON Web Tokens (JWT) с подписями | - Дополнительно возможна конвертация в/из формата JSON Web Key (JWK). |
Разное
| Примитивный | Подробности | |
|---|---|---|
| Шифрование набора ключей любого примитива с помощью KMS | KMS-зашифрованный примитив | - Не требует взаимодействия с KMS каждый раз при использовании примитива (например, для шифрования открытого текста), в отличие от KMS Envelope AEAD. |
Есть вопрос?
Создайте заявку в репозитории GitHub, посвященном конкретному языку программирования, ссылка на который указана на странице организации Tink .