Фрагмент URL.

Единственная часть URL, которую ваш браузер оставляет при себе. Вся модель доверия BurnPony живёт там.

// definition

Фрагмент URL — это всё, что идёт после # в URL. Браузеры используют его локально и, согласно стандарту HTTP, никогда не включают в запросы. Ссылка BurnPony — burnpony.app/n/<id>#<key> — несёт ID записки до # и закодированный в base64url 32-байтовый ключ после него.

Что это

Именно это делает «сервер не может прочитать вашу записку» структурным фактом, а не политикой. Запрос, который забирает записку, содержит ID и больше ничего; ключ приходит в браузер получателя через саму ссылку и дальше не идёт.

Почему это важно

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

// in BurnPony Просмотрщик читает фрагмент на JavaScript, выводит ключ через HKDF, расшифровывает локально и отправляет политику no-referrer, чтобы ссылка не утекла дальше на следующий сайт, который вы посетите.

Связанные термины

Частые вопросы.

Никогда не отправляется на серверы — правда?

Правда. Опускать фрагмент из запросов — стандартное поведение браузера, единое во всех современных браузерах, и именно поэтому существуют схемы с ключом во фрагменте. Просмотрщик вдобавок задаёт политику no-referrer, чтобы URL не утёк и через заголовки referer.

А если я вставлю ссылку туда, где её логируют?

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

Установите BurnPony

Бесплатные самоуничтожающиеся зашифрованные записки для iPhone и Android. Получателям нужен только браузер. Без аккаунтов, без слежки.