Выберите примитив

Выберите свой сценарий использования, чтобы определить нужный примитив, затем перейдите по ссылке, чтобы получить инструкции по его использованию.

Шифрование данных...

Примитивный Подробности
...стандартных размеров Аутентифицированное шифрование с ассоциированными данными (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 .