get_secret
БезопасностьМодель угрозFAQ
Тема
Безопасность

Безопасность

Каждый день в рабочих чатах летают пароли, токены и ключи. Getsecret делает так, чтобы секрет можно было передать один раз — без следа в истории переписки.

Проблема

Кто-то скидывает напарнику ключ от прода в Slack. Кто-то отправляет пароль от админки в Telegram «на пять минут». Кто-то — себе же в «Заметки», чтобы не забыть.

Это удобно. Но это не временно.

Сообщение в мессенджере — не записка, которая исчезает. Это запись:

  • в истории чата у вас и у получателя;
  • в облачной копии телефона;
  • на серверах мессенджера;
  • иногда — в логах корпоративных систем мониторинга.

Любой, кто получит доступ хотя бы к одной из копий, получит и пароль. Через год. Через пять. Когда вы уже забудете, что его пересылали.

Цена ошибки

Утечки происходят не из-за плохих паролей. Они происходят из-за того, что пароли лежат там, где их не должно быть.

  • По отчёту Verizon DBIR за 2024 год украденные учётные данные — один из главных векторов взломов: они задействованы примерно в каждом третьем инциденте.
  • IBM оценивает средний ущерб одной компании от утечки данных в $4,88 млн.
  • Мировой рынок кибербезопасности — больше $200 млрд в год. Это деньги, которые компании тратят на защиту того, что их же сотрудники сливают в чат.

На бюджеты Microsoft и Сбера вы не повлияете. Но можете не оставлять секрет в истории переписки.

Как работает Getsecret

Идея простая: сервер не должен знать, что вы пересылаете.

Когда вы создаёте секрет, всё происходит в браузере:

  1. Браузер генерирует случайный ключ. Никто, кроме вас, его не видит.
  2. Этим ключом браузер шифрует ваш текст алгоритмом AES-256-GCM. На сервер уходит только зашифрованная строка — без ключа её не прочитать.
  3. Сервер сохраняет два элемента: зашифрованный текст и отпечаток токена доступа. Третий элемент (сам ключ) кладётся в адрес ссылки после символа #.

Ссылка выглядит так:

https://getsecret.app/s/abc123#xyz789

Часть после # называется фрагментом. Браузеры устроены так, что фрагмент никогда не отправляется на сервер. Это не наше изобретение — так работает интернет с конца девяностых. Фрагмент остаётся у вас и используется только локально.

Что это значит на практике:

  • Ключ не попадает в наши логи.
  • Ключ не попадает в логи провайдеров между вами и нами.
  • Ключ не виден тому, кто перехватит трафик.

Когда получатель открывает ссылку, его браузер достаёт ключ из #, скачивает с сервера зашифрованный текст и расшифровывает его прямо в браузере. После первого просмотра сервер удаляет запись. Восстановить её нельзя — ни нам, ни вам.

Пароль поверх ссылки

Если есть риск, что ссылка попадёт не тому человеку, поставьте на секрет пароль при создании. Тогда одной ссылки мало — без пароля её не открыть.

Как это работает:

  • Пароль не уходит на сервер. Браузер по нему вычисляет второй ключ (PBKDF2-SHA256, 600 000 итераций) и шифрует секрет ещё раз — поверх первого слоя.
  • Сервер хранит только отпечаток для проверки. Подобрать пароль по отпечатку нельзя.
  • На пятой неправильной попытке сервер удаляет запись. Перебирать пароль бессмысленно — секрет уничтожится раньше, чем подберётся.

Смысл появляется, когда ссылку и пароль вы отправляете разными каналами. Ссылка уходит в Slack, пароль — голосом или в SMS. Утечёт один канал — у злоумышленника останется только зашифрованный мусор.

Что Getsecret не делает

Технология не отменяет здравый смысл.

  • Если вы отправите ссылку в тот же чат, где обычно пишете пароли, проблема не решена — ссылку прочитают первой.
  • Если на устройстве получателя уже есть вредоносная программа, она увидит секрет вместе с получателем.
  • Если ссылка без пароля ушла не тому человеку и он её открыл, отозвать её мы не можем.

Getsecret снимает один конкретный риск — след в истории. Не больше и не меньше.

Полная картина — что защищаем, от кого и где явно бессильны — в модели угроз.

v2.45.2source · AGPL-3.0
ПриватностьУсловия
Все системы работают
Меню
БезопасностьМодель угрозFAQ
Тема
Тема
Язык