Дорожная карта Тинка

(Последнее обновление: июль 2023 г.)

На этой странице подробно описаны общие цели команды Tink. Он будет периодически обновляться по мере достижения или изменения целей.

Несколько репозиториев GitHub

Мы разделяем проект на несколько репозиториев GitHub, разделенных по языку. Это обеспечивает следующие преимущества:

  • разделенные выпуски для каждого языка (это означает, что проблема в C++ не мешает, например, выпуску для Java)
  • более частые выпуски
  • сокращенный набор зависимостей для загрузки для каждой библиотеки (например, SDK для нескольких облачных провайдеров)

Улучшения документации

Мы предпринимаем усилия по улучшению документации Tink. Это включает в себя объединение источников документации Tink (превращение этого сайта в источник достоверной документации Tink), предоставление обновленных и простых для понимания примеров и заполнение любых пробелов в документации, которые могут существовать. Мы приветствуем любые предложения по улучшению документации. Пожалуйста, воспользуйтесь опросом, ссылка на который приведена ниже, или отправьте сообщение об ошибке или запрос на добавление функции, как указано на странице «Вклады» .

Редизайн набора ключей и реестра

Мы хотим предоставить пользователям лучший способ управления ключами в наборе ключей. Это упростит внедрение систем управления ключами и обеспечит более полную поддержку импорта и экспорта ключей в различные форматы, такие как PEM или JWK (при этом API предотвращает распространенные ошибки, которые могут привести к уязвимостям безопасности). Эта работа ведется.

Мы также работаем над разрешением нескольких реестров в Tink. Это облегчит разработку библиотек на основе Tink, а также позволит легко удалять и устаревать небезопасные алгоритмы. Подробности смотрите на странице реестра .

Поддержка мониторинга

Мы добавили в Tink инструменты мониторинга. Пользователи могут использовать эти перехватчики для сбора и анализа неконфиденциальных данных о своих криптографических операциях, например, какие типы ключей используются или количество вызовов шифрования, выполненных с использованием определенного ключа.

Этот тип информации полезен для обеспечения адекватной ротации ключей или для создания списка ключей, которые могут быть уязвимы для квантовых компьютеров. Со временем мы предоставим руководство по использованию этих хуков.

Постквантовая криптография (PQC)

Мы активно работаем над низкоуровневыми реализациями алгоритмов PQC , выбранных NIST . К ним относятся механизмы инкапсуляции ключей (KEM), в частности Kyber/ML-KEM, и цифровые подписи, а именно Dilithium/ML-DSA и SPHINCS+/SLH-DSA. Как только все будет готово, мы предоставим официальные API для этих постквантовых алгоритмов в Tink. Для всех, кто хочет начать использовать PQC, Tink уже предоставляет экспериментальные алгоритмы PQC на C++, охватывающие цифровые подписи, выбранные NIST, и NTRU-HRSS KEM (кандидат NIST KEM, который в конечном итоге не был выбран).

Производительность

Мы намерены усовершенствовать измерения производительности Tink и предоставить нашим пользователям соответствующие тесты производительности. Мы также начинаем исследовать возможные улучшения производительности Tink.

Расскажи нам что ты думаешь!

Нам бы хотелось услышать о том, как вы используете Tink или какие функции будут наиболее полезны для вашей реализации. Дайте нам знать, приняв участие в нашем опросе .