Сайт дня: Cryptopad - блокнот для самых ленивых параноиков
Комментарии к статьям про Альфа-клик и Lastpass убедили меня, что тема секретности данных в сети остаётся актуальной для многих, так что сегодня сайтом дня становится CryptoPad.
Более менее очевидно, что если хочется не потерять секретные данные где-нибудь в сети, то просто не надо передавать секретные данные в сеть. Менее очевидно, что зашифрованные секретные данные перестают быть секретными, если вместе с ними не передаётся пароль.
То есть, если вы не доверяете сети, то хранить в ней данные надо не так:
Шифрование на сервере
А так:
Шифрование до сервера
Именно эта идея реализована на сайте CryptoPad, созданном для тех, кому лень постоянно возиться с программами для шифрования, зачищать открытые файлы, заливать шифровки в сеть и так далее. На CryptoPad эта деятельность автоматизирована.
Главная страница CryptoPad
Всё шифрование данных выполняется в браузере пользователя. Используется алгоритм AES с длиной ключа в 256 бит. Сам ключ нигде не хранится и каждый раз заново генерируется из пароля. При хорошем пароле расшифровать данные пользователя будет однозначно дороже, чем получить их другими, далёкими от компьютеров методами.
Всё это чудо реализовано в виде программы на Javascript, которая работает даже на достаточно старых браузерах:
Браузеры, поддерживающие CryptoPad
Пароль от CryptoPad нигде не хранится, так что если вы его потеряли - с данными можно прощаться.
Форма ввода пароля
Интересно, что виртуальная клавиатура в CryptoPad служит не только для защиты пароля от клавиатурных жучков, но и для возможности вводить "локализованный" пароль с любой клавиатуры. Трудно подобрать пароль, который набран, например, наполовину русскими буквами, а наполовину - турецкими.
Поддержка языков для ввода пароля
Авторизованному пользователю вместе с его страницей присылаются программа для шифрования и зашифрованные данные. Так как эти данные не секретные, то никакая защита не используется. Даже SSL.
Многих поначалу удивляет, что страница с секретными данными передаётся по обычному http без всяких httpS, но в этом нет необходимости. Даже если злое интернет-кафе получит весь трафик между пользователем и CryptoPad то толку будет мало. Алгоритм шифрования общеизвестен и без пароля практически бесполезен, а сами данные в расшифрованном виде не покидают пределов браузера. Это всё равно, как если бы пользователь выложил в открытый доступ зашифрованный файл, и не выложил ключ.
Фактически, подсмотреть данные пользователя можно только в тот момент, когда он сам смотрит их в CryptoPad, и только если есть доступ к его компьютеру.
Страница с данными
Есть поддержка минимального форматирования и разбиение данных на несколько страниц. Есть каталог паролей, но это просто Lastpass для параноиков.
Кеширования - нет.
Автоматического сохранения изменений - тоже нет. Иначе случайно стерев важные данные их будет невозможно восстановить, так как история изменений не хранится (Ctrl-Z не работает).
Несохранённая страница обводится яркой красной рамкой:
Страница с несохранёнными данными
При первых изменениях даже дополнительное предупреждение высвечивается:
Предупреждение о необходимости сохраняться
Несохранённые изменения теряются сразу и без всяких шансов на восстановление. Это естественная (хоть и непривычная уже) плата за секретность.
Интересно. что на CryptoPad довольно жестокие ограничения по объёму хранимых данных. Объём одной страницы ограничен восемью килобайтами (не путать с мегабайтами), а полный объём для одного пользователя всего в восемь раз больше. Учитывая, что тексты на CryptoPad хранятся в интернациональной кодировке, русские буквы занимают по два байта, так что русскоязычного текста на CryptoPad влезет только 32 Кб. Естественно, такое зверство связано не с недостатком дискового пространства у владельцев CryptoPad, а с тем, что быстро шифровать можно только маленькие тексты.
Впрочем, редко кому понадобиться выложить на CryptoPad "Войну и мир". Чаще все секретные данные пользователя будут выглядеть как-то так:
Пользовательские данные на CryptoPad (реальный пример)
Прошли времена, когда шпионы хранили банковские реквизиты в зашитых под кожу капсулах. Теперь есть сервисы, подобные CryptoPad. По крайней мере, их вскрыть сложнее, чем кожу.
Напоминаю, что если вы не будете присылать мне письма с предложением выбрать тот или иной сайт в "сайты дня", то рано или поздно у меня кончатся идеи. Запишите в свою адресную книгу - sitesoftheday@ferra.ru.