- PVSM.RU - https://www.pvsm.ru -
Любая ваша мысль или желание может анонимно распространяться по всему миру менее чем за секунду, начиная только с вас и ваших друзей.
Secret вышел лишь четыре дня назад, и все, что мы увидели, нас вдохновляет. Мысли, распространяющиеся по стране честные, трогательные, смешные и, вопреки ожиданиям, редко бывают непристойными. Это подтверждает наше убеждение, что анонимность может способствовать поизитвным изменениям в мире.
Мы получили несколько вопросов о том, как Secret защищает ваши личные данные. Мы относимся к этому очень серьезно и думаем, что важно быть открытыми и честными в том, как работает наша система, чтобы выстроить доверительные отношения с сообществом.
Давайте сфокусируемся на двух вопросах. Хранилище — как и где хранится ваша информация. Доставка — как мы доставляем секреты людям, которых вы знаете.
Во-первых, ваши данные хранятся на серверах Google, там же, где находится Gmail. Это значит, что ваши секреты так же надежно защищены, как и почта (это относится к надежности записи данных на диск, которые расположены в тех же дата-центрах что и Gmail). Как бывший инженер Google с глубоким знанием бэкэнда, я уверен в этом выборе.
Несколько высокоуровневых подробностей:
Контакты. Когда мы ищем людей, которых вы знаете из ваших Контактов, мы не посылаем в открытом виде номера телефонов или e-mail на наши сервера. Сначала мы локально вычисляем хеш [6] (с «солью»), который использует сервер, чтобы найти совпадения с другими хешами. Например, номер [+15552786005] становится [a22d75c92a630725f4], и оригинальный номер телефона никогда не покидает ваш аппарат. Это односторонняя трансформация. Иными словами, мы не знаем ваших действительных данных, в отличие от других сервисов.
Важное замечание: Несмотря на то, что мы добавляем «соль» в хеш, все же возможно сравнить хеш с номером телефона, особенно если у злоумышленника есть «соль». Мы ищем способ сделать это более безопасным (например, добавлять в хеш специфичные для пользователя данные или использовать Протокол Диффи [7]). Если у вас есть предложения по улучшению безопасности, пишите на security@secret.ly. Эта область нам очень интересна.
Секреты. Мета данные секрета хранятся без привязки к пользователю. Вместо этого, при доставке секрета пользователю мы создаем уникальный токен для пользователя и предоставляем доступ к секрету как отношение много-к-одному. Токены находятся в ACL [8], принадлежащем секрету, а не пользователю. Сообщения (комментарии и посты) шифруются на сервере и расшифровываются, когда уникальный токен обменивается на секрет. Сервер никогда не возвращает персонально-зависимые данные наряду с секретом.
Эти структуры данных (пользователи, посты, ASL-ы) логически разделены в базе данных. Несмотря на то, что данная абстракция не дает физической защищенности, она предотвращает простого наблюдателя от обнаружения автора секрета и позволит нам легко отделить данные в будущем.
Идентификациия. Для модераторов нет никакой возможности найти пост, созданный конкретным пользователем. В случае, если нам нужно получить доступ к информации для отладки или административных целей, мы используем «Правило двух человек» [9]. Два человека должны одновременно предоставить свои ключи. В нашем случае, два админа (сейчас это основатели) должны зайти через аккаунт Google (с двух-факторной авторизацией) и запросить нужный ресурс в определенный период времени. Более подробно эта система, известная как Red October, описана в блоге [10] Cloudflare.
Система доставки Secret была спроектирована, чтобы соответствовать этим критериям:
Время. Хотя наша система имеет высокую пропускную способность, это не значит, что секреты всегда доставляются мгновенно. Например, чем меньше «друзей» есть у пользователя, тем меньше мы показываем ему. Это позволяет избежать трюка, когда можно вычислить, кто написал секрет.
Если у юзера нет друзей или их мало, то много секретов от тех, кого он может знать, он не увидит. Чем больеше друзей он добавляет, тем больше секретов приходит из его «круга» (друзья и друзья друзей). Если друзей много, то мы покажем пришел ли конкретный пост от друга или друзей друга. Это критично важно для установления доверия, без раскрытия личности.
Мы стремимся делать технологии высокобезопасными и, в то же время, гибкими и дающими нам возможность сделать наш продукт более человечным. Создание великих продуктов возможно только тогда, когда сложная технология может быть представлена в простой, красивой и завершенной форме.
В наши дни и наш век, безопасность и приватность важны как никогда. Это было важно для нас в Google и Square и всегда будет высшим приоритетом в Secret.
David Byttow
Со-основатель, Secret
Автор: alehano
Источник [11]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/razrabotka/62097
Ссылки в тексте:
[1] хостится: https://www.reg.ru/?rlink=reflink-717
[2] Google App Engine: https://developers.google.com/appengine
[3] Go: http://golang.org/
[4] BigTable: http://en.wikipedia.org/wiki/BigTable
[5] Google Cloud Storage: https://cloud.google.com/products/cloud-storage/
[6] хеш: http://en.wikipedia.org/wiki/Hash_function
[7] Протокол Диффи: http://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB_%D0%94%D0%B8%D1%84%D1%84%D0%B8_%E2%80%94_%D0%A5%D0%B5%D0%BB%D0%BB%D0%BC%D0%B0%D0%BD%D0%B0
[8] ACL: http://ru.wikipedia.org/wiki/ACL
[9] «Правило двух человек»: http://en.wikipedia.org/wiki/Two-man_rule
[10] блоге: http://blog.cloudflare.com/red-october-cloudflares-open-source-implementation-of-the-two-man-rule
[11] Источник: http://habrahabr.ru/post/225975/
Нажмите здесь для печати.