Тайное общество друзей Рулинукса
О нас
Тайное общество друзей Рулинкса является небольшой анонимной группой людей, которая собралась для того, чтобы поддерживать работоспособность сайта rulinux.net. За всё время работы сайта с ним случалось разное, хорошее и не очень, посему было решено создать сие общество, чтобы не допустить плохого и делать хорошее.
Основной задачей на данный момент является обеспечение сохранности информации, размещённой на сайте. То, как мы это делаем, описано далее.
В чём суть?
Для того, чтобы сайт работал и был доступен для широкого круга пользователей, необходимы три основных компонента:
- Домен;
- Исходный код сайта и загружаемые пользователями данные;
- База данных.
Управление данными компонентами находится в руках одного из ответственных участников общества. В случае, если кто-либо из участников общества перестаёт им быть по естественным или неестественным причинам, остальные участники могут получить доступ к данным компонентам, собравшись вместе.
Данный процесс организован с помощью простого криптографического метода, называемого Shamir Secret Sharing. Данный метод позволяет восстановить некий общий секретный ключ из нескольких частей, доступных кажому из участников. Например, у каждого из 12 участников схемы есть собственный специальный ключ, и нужно совместное действие не менее, чем четверых, чтобы восстановить исходный ключ. Таким образом уменьшается вероятность того, что один или два участника самовольно получат доступ к данным.
В нашем случае исходным ключом является пароль, который позволяет расшифровать данные сайта.
Данные
Информация о доступе к управлению доменом находится в файле data.gpg.
Дампы базы данных сайта выполняются раз в день по-расписанию и находятся в директории по ссылке.
Исходный код сайта доступен по адресу https://github.com/vladimir-g/rulinux-engine.
Загружаемые пользователями данные находятся там (файлы rulinux-public-data-*): https://rulinux.net/dumps/
Техническая информация
Для проведения всех вышеописанных манипуляций общество использовало данную реализацию описанного алгоритма: http://point-at-infinity.org/ssss/. Копия данной страницы сохранена здесь.
Для дополнительной сохранности исходный код данной реализации дополнительно расположен по ссылке ssss/ssss-0.5.tar.gz.