Привет, %username%!



В обсуждении новости про Passport разгорелись жаркие дискуссии на тему безопасности последней поделки от авторов Telegram.

Давайте посмотрим, как он шифрует ваши персональные данные и поговорим о настоящем End-To-End.

В двух словах, как работает Passport.

  • Вы локально с помощью пароля шифруете свои персональные данные (имя, email, скан паспорта, другие документы).
  • Зашифрованные данные + метаинформация загружаются в облако Telegram.
  • Когда нужно авторизоваться на сервисе, клиент скачивает данные из облака, расшифровывает их паролем, перешифровывает на публичный ключ того сервиса, который запросил информацию, и отправляет.

Мы рассмотрим первую часть, которая касается шифрования и хранения персональных данных.

End to End по мнению разработчиков заключается в том, что облако Telegram якобы не может расшифровать ваши персональные данные, а видит только «случайный шум».

Давайте подробнее глянем на код алгоритма шифрования персональных данных из десктоп клиента, который находится тут и посмотрим, удовлетворяет ли результат его работы критериям End-To-End.

Всё начинается с пароля. Вот место, где он превращается в промежуточный ключ шифрования.

bytes::vector CountPasswordHashForSecret(
		bytes::const_span salt,
		bytes::const_span password) {
	return openssl::Sha512(bytes::concatenate(
		salt,
		password,
		salt));
}

Тут берётся случайная соль, дважды конкатенируется с паролем и прогоняется через хэш SHA-512. На первый взгляд ничего необычного. Но!

На дворе 2018 год. На одном хорошем GPU можно перебирать примерно полтора миллиарда SHA-512 в секунду. 10 GPU переберут все возможные сочетания 8-значных паролей из 94х символьного словаря (англ буквы, цифры, спец символы) меньше чем за 5 дней.

Давным давно существуют способы усложнить жизнь тем, кто перебирает пароли на GPU, но разработчики Telegram решили не утруждать себя их внедрением.

Дальше. Хэшем из пароля шифруется еще один почти случайный ключ, который генерируется так:

bytes::vector GenerateSecretBytes() {
	auto result = bytes::vector(kSecretSize);
	memset_rand(result.data(), result.size());
	const auto full = ranges::accumulate(
		result,
		0ULL,
		[](uint64 sum, gsl::byte value) { return sum + uchar(value); });
	const auto mod = (full % 255ULL);
	const auto add = 255ULL + 239 - mod;
	auto first = (static_cast<uchar>(result[0]) + add) % 255ULL;
	result[0] = static_cast<gsl::byte>(first);
	return result;
}

и используется для шифрования данных вместе с еще одной штукой, о которой ниже.

Случайный он «почти», потому что разработчики телеграма никогда не слышали о HMAC и AEAD и вместо того, чтобы использовать нормальные средства для проверки корректности расшифровки, они делают так, чтобы остаток от деления суммы байт ключа был равен 239, что при расшифровке и проверяют:

bool CheckBytesMod255(bytes::const_span bytes) {
	const auto full = ranges::accumulate(
		bytes,
		0ULL,
		[](uint64 sum, gsl::byte value) { return sum + uchar(value); });
	const auto mod = (full % 255ULL);
	return (mod == 239);
}

Во-первых, этот массив байт получается не такой уж и случайный. Во вторых, при переборе хоть и будет много ложноположительных срабатываний, но посчитать сумму байтов после расшифровки гораздо проще чем HMAC, так что эта гениальная со всех сторон конструкция служит скорее ускорению брутфорса чем приносит пользу.

Идём дальше. Непосредственно метод, шифрующий данные. Тут много букв, поэтому по кускам:

EncryptedData EncryptData(
		bytes::const_span bytes,
		bytes::const_span dataSecret) {
	constexpr auto kFromPadding = kMinPadding + kAlignTo - 1;
	constexpr auto kPaddingDelta = kMaxPadding - kFromPadding;
	const auto randomPadding = kFromPadding
		+ (rand_value<uint32>() % kPaddingDelta);
	const auto padding = randomPadding
		- ((bytes.size() + randomPadding) % kAlignTo);
	Assert(padding >= kMinPadding && padding <= kMaxPadding);

	auto unencrypted = bytes::vector(padding + bytes.size());
	Assert(unencrypted.size() % kAlignTo == 0);

	unencrypted[0] = static_cast<gsl::byte>(padding);
	memset_rand(unencrypted.data() + 1, padding - 1);
	bytes::copy(
		gsl::make_span(unencrypted).subspan(padding),
		bytes);


Тут к данным дописываются от 32 до 255 случайных байт. Делается это чтобы разнообразить
переменную dataHash. Это хэш от незашифрованных данных, смешанных со случайными байтами.

	const auto dataHash = openssl::Sha256(unencrypted);
	const auto bytesForEncryptionKey = bytes::concatenate(
		dataSecret,
		dataHash);

	auto params = PrepareAesParams(bytesForEncryptionKey);
	return {
		{ dataSecret.begin(), dataSecret.end() },
		{ dataHash.begin(), dataHash.end() },
		Encrypt(unencrypted, std::move(params))
	};
}

Тут формируется ключ шифрования персональных данных. Он получается с помощью еще одного вызова SHA-512 от сгенерированного выше почти случайного ключа, сконкатеннированного с dataHash.

Итог


В облако передаются:

  1. Хэш от персональных данных, смешанных со случайными байтами
  2. Зашифрованный паролем почти случайный ключ
  3. Соль
  4. Зашифрованные данные

Это далеко не «случайный шум», тут есть всё необходимое, включая ключ шифрования, защищенный паролем. И это позволяет добраться до данных пользователей гораздо, гораздо быстрее чем перебирать все возможные комбинации ключей AES (2^256).

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

Примерный алгоритм брутфорса:

  1. Берем пароль по порядку, генерируем хэш от него и соли (GPU)
  2. Пробуем расшифровать ключ (AES-NI)
  3. Смотрим на сумму байт и сразу отсеиваем почти все неверные пароли.
  4. Формируем ключ-кандидат на расшифровывание данных с помощью еще одного вызова SHA-512 (GPU)
  5. Пробуем расшифровать первый блок данных (AES-NI)
  6. Чтобы не тратить время на полное расшифровывание и еще один SHA-256, мы можем ускорить брутфорс, проверяя первый байт выравнивания так же как они сами это делают:

if (padding < kMinPadding
		|| padding > kMaxPadding
		|| padding > decrypted.size()) {

Итак, мы видим, что шифрование персональных данных критически зависит от сложности пароля. Все этапы перебора отлично ускоряются аппаратно. Либо с помощью GPU, либо с помощью инструкций AES-NI. Конечно, можно установить длинный, безопасный пароль и надеяться что прокатит. Но как вы сами думаете, какой процент из двухсот миллионов пользователей телеграма будет делать пароли длиннее восьми символов?

Добавьте к этому сомнительные техники генерации ключей и проверки валидности расшифровываемой информации, которые не используют стандартные проверенные механизмы, а прямо нарушают принцип Don't roll your own crypto и станет ясно, что это не End-to-End, а сколоченная на коленке поделка от которой неприятно пахнет.

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

Настоящий End-to-End


E2E называется так, потому то позволяет показывать третьим лицам зашифрованные данные не опасаясь за их сохранность. Как мы увидели, это условие новым продуктом телеграма не выполняется.

Но, к примеру, если правильно зашифровать данные не на хэш от пароля, а на публичный ключ, то никакой даже миллиардный кластер не сможет к ним и близко подобраться. Взгляните на Signal, другие мессенджеры на его основе (WhatsApp, etc). Весь мир уже давно и успешно использует современную асимметричную криптографию, алгоритмы, мешающие перебору паролей, стойкие стандартные криптографические конструкции.

Не первый год существуют и гораздо более серьезные системы защиты данных с помощью паролей, которые даже начать брутфорс не позволяют. Потому что у атакующего не будет для этого достаточного набора данных.

Но Telegram пошел своим, особым путём переизобретения криптопримитивов и ослабления защиты. Ну а что, денег им отвалили, за последствия можно не беспокоиться.

P.S. если есть желание посмотреть как работает чат с настоящим E2E, у VirgilSecurity есть демо проект, который можно скачать и поиграться.

Комментарии (236)


  1. Sirion
    30.07.2018 10:09
    +3

    Проголосовал «да», но имел в виду «буду, когда (если) его допилят до вменяемого состояния». Так-то идея неплоха.


    1. flx0
      30.07.2018 12:43
      +1

      Так-то идея неплоха.

      А я вот как не понимал зачем, так и не понимаю. Какие такие персональные данные мне удобнее хранить в облаке, и куда это я буду их потом предоставлять? Свои имя/фамилию я и так помню, и ввести не обломаюсь, адрес для доставки — величина переменная, а номер паспорта/ИНН — это только для госуслуг, и никакого телеграма там никогда не будет и быть не должно.


      1. Sirion
        30.07.2018 13:06

        Ну, как минимум, мне приходилось пересылать скан паспорта на airbnb и на Хабр (для ППА). Два раза — это вроде не очень много, но чувствую, будет ещё. И было бы круто положить его один раз в какую-то центральную нычку, а остальные чтоб получали оттуда кукиш ответ в стиле «да, этот человек действительно Вадим Шевяков».


        1. elmigranto
          30.07.2018 13:47
          +3

          Оба ваших примера спрашивают паспорт совсем не для подтверждения личности, им нужны конкретные реквизиты и номера документов для составления документов вроде аренды или оплаты услуг, которые впоследствии попадают в госорганы типа ФНС. Надеяться на интеграцию телеграмма в правительство какой-либо страны бессмысленно.

          (Ещё мне непонятно, как загруженный скан паспорта вообще подтверждает личность закачавшего, если он никем не проверяется. Ну вот закачает тот же арендодатель с Airbnb ваш паспорт вместо своего, как такое решается?)


          1. dartraiden
            30.07.2018 14:52

            Для этого просят фото раскрытого паспорта рядом с физиономией. Хотя, и такие фото нетрудно купить.


            1. dimka11
              30.07.2018 16:27

              Некоторые просят видео, в живую.


            1. kireevco
              30.07.2018 22:43
              +1

              А с Телеграм Паспорт можно будет их купить гораздо более удобным способом...


              1. dartraiden
                30.07.2018 22:45
                +1

                А какая разница, откуда они утекли: из конторы, которая запросила их у юзера через Passport или из конторы, куда юзер их добровольно загрузил сам?

                Более того, можно вообще ничему ниоткуда не утекать, а просто создаём видимость того, что набираем людей на удалённую работу, ездим им по ушам и добиваемся заветных фотографий…


                1. kireevco
                  30.07.2018 22:49

                  Да никакой. Зато в телеграм паспорте все данные "надежно защищены", поэтому удобно что можно найти не только скан паспорта а еще много другой полезной информации.


                1. s-kozlov
                  31.07.2018 07:27

                  Для одного паспорта нет разницы. Но… При прочих равных, откуда проще угнать 100 миллионов паспортов: из тысяч различных источников, которые хранят их кто во что горазд, или из одного?


          1. dartraiden
            30.07.2018 14:56

            Допустим, если вы хотите восстановить свой утерянный аккаунт у Blizzard (World of Warcraft и т.п.), вам придётся загрузить скан какого-то документа, подтверждающего личность, где будет видно, что данные соответствуют тем, которые вы вводили при создании аккаунта.


            1. JC_IIB
              31.07.2018 11:25

              Когда я переезжал и нужно было изменить страну в профиле Близзарда, они попросили у меня скан ID, это верно. На вопрос «а как долго вы храните эти сканы?» они ответили — «Мы их вообще не храним, это строжайше запрещено, я посмотрел, убедился и стер его из системы».


              1. dartraiden
                31.07.2018 11:30

                Хранение это уже другой вопрос.

                Кстати, я подозреваю, что даже такое «посмотрел и удалил» нарушает российский закон о локализации персональных данных. Что отчасти объясняет то, почему Blizzard молча утираются, когда им случайно прилетает привет от РКН в виде веерных блокировок, и раздают баны на форуме даже за слово «Роскомпозор». Им очень не хочется лишний раз привлекать к себе внимание.


                1. JC_IIB
                  31.07.2018 11:37

                  Ох, форум у них да. В свое время людей банили за упоминание Эльфа-Торговца :)


          1. Barnaby
            30.07.2018 15:38

            Ну вот закачает тот же арендодатель с Airbnb ваш паспорт вместо своего, как такое решается?

            Думаю им пофиг, это требование регулятора а требования решать "такое" там нет :)


            Благодаря KYN почти все криптобиржи и недобанки хотят фотку с паспортом и никак не проверяют достоверность данных.


            1. Barnaby
              30.07.2018 15:45

              *KYC конечно же.


              1. cyber_ua
                30.07.2018 15:50

                обычно проверяют совпадает ли селфи пользователя с фотографией на документах.
                www.electronicid.eu/selfie-based-identification-solutions-not-compliance-kyc-aml


        1. LbISS
          31.07.2018 12:31

          Кстати, про подтверждение личности сканом паспорта — в Москве уже 20 или более каршеринг компаний… И везде надо отослать одинаковые фотографии паспорта, ВУ, и т.п. После 3-его раза это ОЧЕНЬ надоедает.


          1. NetBUG
            31.07.2018 14:57

            У меня есть своё облако (nextCloud), в котором в одном из каталогов лежат сканы ряда документов (не всех), как раз для этой цели. Как раз с теми же целями, что и Tg Passport. Я понимаю, что везде могут быть дырки, но по крайней мере, я рискую только своими данными, и всё равно я меньше доверяю booking'у, чем моему облаку


      1. AlexanderUsatov
        30.07.2018 17:01

        Букмекерские конторы, например, просят фото паспорта. Затем реальный человек его смотрит и подтверждает аккаунт. А ждать всегда неприятно, согласитесь.


        1. Zidian
          30.07.2018 19:09

          Сейчас даже хайп-проекты его просят.
          Но опять же, а чем телегам паспорт поможет? Для этого он сначала должен стать настолько же популярным, насколько facebook или gmail, чтобы каждый второй владелец сервиса старался его внедрить.


          1. AlexanderUsatov
            30.07.2018 19:46

            Среди моего круга знакомых (в это по большей части студенты и программисты) им пользуются практически все. И аудитория Telegram растёт. 200млн — довольно много и, мне кажется, что через несколько лет будет больше миллиарда, а этого более, чем достаточно.


            1. Zidian
              30.07.2018 20:10

              Вопрос в аудитории паспорта, а не чисто мессенджера.


              1. shifttstas
                31.07.2018 09:21

                Ну так когда будет TON будет и рост сервиса с паспортом


        1. balexa
          31.07.2018 11:19

          И никак телеграмм в этом не поможет. Букмекерские конторы просят ваш паспорт потому что такое требование регулятора. Никто не будет верить частной конторке, хоть сколько миллиардов ей будут пользоваться.


          1. saboteur_kiev
            31.07.2018 15:51

            А если телеграм сертифицируется у регулятора, то что?
            Многие частные «конторки» имеют отдельные условия работы, пройдя необходимую бюрократию, включая даже лоббирование изменения законодательства.


            1. balexa
              01.08.2018 12:50

              Вот когда сертифицируется, тогда и поговорим (с)

              Вы посмотрите как сделана аутентификация через госуслуги, и добавление документов туда. Государству и регулятору хранящему данные пользователей не нужны селфи на фоне паспорта, и данные которые никто не может расшифровать. Оно само является golden source для этих данных.

              И это не говоря уже о том, что ни одно государство не разрешит хранить такие данные за пределами страны, что там потребуется специальный доступ для спецслужб и так далее.
              А все это Дуров делать не будет.


              1. saboteur_kiev
                01.08.2018 18:15

                Всегда можно разместить сервера в пределах нужного государства, если таково будет требование при сертификации.
                Во всех странах эти процедуры существуют и могут быть пройдены частной компанией. Большинство банков — частные коммерческие структуры, и ничего — и документы хранят в электронном виде и так далее.

                Еще раз скажу, что в СНГ с этим сложнее, так как злоупотребление властью — стандартная практика.


                1. saboteur_kiev
                  01.08.2018 18:21

                  Но даже в СНГ всегда есть варианты.

                  Например, я работал в крупной медицинской компании, которая имела свои сертифицированные склады хранения медикаментов (включая и зоны для хранения веществ, подпадающих под наркотические). Компания самостоятельно разработала процедуру растаможки лекарственных средств, которая занимала в три раза меньше времени, чем обычная. Процедура была проверена экспертизой, и конкретно для нашей компании таможня дала добро. Понятно, что компания потратила на всю экспертизу и разработку много денег. Но прямые контракты поставщиков, которые проходя процедуру разтаможки за гораздо меньший срок (что очень критично для лекарств, у которых срок годности, например, месяц) — все расходы достаточно быстро покрыли.
                  И да, коммерческая компания выполняла работу, которая казалось бы должна принадлежать исключительно гос.службе (таможне). Но все было согласовано, законность соблюдена, все довольны.

                  В общем если все идут друг другу навстречу — все будет.


                  1. balexa
                    02.08.2018 12:26

                    Всегда можно

                    Я разве спорю? Можно пройти, можно перенести сервера, можно все это сделать. Но я сомневаюсь что это будет делать Телеграмм. Вот и все.

                    Большинство банков — частные коммерческие структуры, и ничего — и документы хранят в электронном виде и так далее.

                    Вы к чему это? Банк хранит ваши данные да, но он не является провайдером паспорта. И внимание, те данные что он провайдит, он не проверяет у третьих контор, он сам это знает и так. Банк не просит вас сфотографироваться с картой и договором на фоне для того чтобы вам предоставить услуги.


                    1. JC_IIB
                      02.08.2018 12:27

                      банк не просит вас сфотографироваться с картой и договором на фоне для того чтобы вам предоставить услуги.


                      Карту он мою и так знает, а что до фотографии… давно уже при заключении договора в банке в реальном времени фотографируют на веб-камеру.


      1. Vilgelm
        30.07.2018 19:51

        Это нужно, например, для прохождения KYC. Подобные проекты уже есть (например, kyc.legal), но у Telegram больше шансов сделать реально работающий продукт и интеграцию.


      1. NIKOSV
        31.07.2018 01:42

        Сценарий: вы покупаете авиабилеты, авиакомпании просят паспортные данные, номер вашего мембершипа на который начисляются мили, + что-то еще.

        Решение: заходя на сайт авиакомпании, сайт обращается к плагину хрома от телеграмма, и запрашивает нужные данные, плагин спрашивает у вас разрешение на шаринг этих данных с этим сайтом, вы соглашаетесь и вы автоматом залогинены и вся информация для покупки билетов уже считайте введена, осталось только выбрать направление, опции и оплатить.

        То же самое с онлайн покупками где нужно вбивать адрес доставки.

        Кстати некоторые криптовалютные проекты уже предоставляют такую функциональность, включая оплату, очень удобно.


        1. ageyev
          31.07.2018 01:55

          Но это не KYC и не идентификация. Это просто ускорение заполнения данных.


          1. iig
            31.07.2018 10:55

            Я слышал, что существуют плагины, которые помогают автозаполнять формы.


        1. gregst
          31.07.2018 15:20

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


      1. Lennonenko
        02.08.2018 01:41

        каршеринг, например


  1. denis-19
    30.07.2018 10:17
    +1

    У них интересно еще вот что в FAQ:
    I found a bug, what do I do?
    Please contact us via e-mail. Despite on there's no bug-bounty program (non-profit project), some problems may be rewarded.


    1. tyderh
      30.07.2018 14:25

      Судя по аналогичной ситуации с «секретными» чатами, наплевательский подход к безопасности на фоне усиленного пиара — это фича Дурова, а не баг.


    1. Wesha
      30.07.2018 19:16

      Despite on

      За такое издевательство над языком и правда надо канделябром.


      1. onehell
        30.07.2018 20:00
        +5

        По моим наблюдениям, только в рунете любые ошибки на любом языке будут неминуемо пытаться исправить. Иностранцы, читая такие вещи, вежливо говорят, что оборот fairly rare, but understandable. Никто никого не бьёт.


        1. iproger
          30.07.2018 20:38
          +2

          Это выливается в то что язык становится более-менее однородным. И что можно проехать пару тыс км и продолжить говорить «как дома». Что бывает если это не так можно посмотреть на примере английского.


          1. onehell
            30.07.2018 22:47
            +1

            Смотря куда. Если хорошенько проехать по СНГ, то и русский язык, например, будет не просто разнообразным. Вы даже не подозреваете, насколько затейливо с ним можно обращаться :)


          1. Ohar
            31.07.2018 00:25

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


            1. olgerdovich
              31.07.2018 01:50
              +1

              Вполне гармоничная фраза. Единственное неочевидное в этом пассаже — что кипятком называют не (недавно) кипящую воду, а просто кипяченую (когда-то кипевшую). Диалектизмы — да, не литературный язык — да. Но я не вижу реальных отступлений от вариантов русского языка, кроме неясного для меня слова «зыбский» (придется в ТСЖВЯ лезьть.


              1. roscomtheend
                31.07.2018 10:51

                «Холодный кипяток» — вполне приятое (по крайней мере в некоторых местностях) выражение.


                1. JobberNet
                  31.07.2018 10:59

                  А что это «холодный кипяток»? И что такое «зыбский»?


                  1. roscomtheend
                    31.07.2018 17:38

                    Холодная кипячёная вода (кипяток — кипячёная вода, а не только кипящая). Имеет смысл разделять там, где просто воду пить небезопасно. Второе слово слышал последний раз лет 30 назад или давнее, что-то такое дворовое… я бы сказал что это синоним современных «крутой», «cool» и чуть более давнего «здоровский».


                    1. iig
                      01.08.2018 11:12

                      Зыбский..
                      image


            1. olgerdovich
              31.07.2018 02:07

              Черт подери, что это за фраза, откуда она? мне гугл какую хрень предлагает при ее поиске, про «как залить видео на ютуб». А всего-то озадачился всерьез словом «зыбский».


              1. KoToSveen
                31.07.2018 03:19

                Зачем гуглить?
                Очевидно же: расслабляем мозг и произносим «зыбский».
                Понимание слова само придёт.


                1. dilukhin
                  31.07.2018 15:09

                  Что-то вроде зыкинского, я правильно мозг расслабил?


                  1. olgerdovich
                    01.08.2018 01:01

                    вряд ли.
                    Даль тут мне не особо помог.
                    ru.wikisource.org/wiki/%D0%A1%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0:%D0%A2%D0%BE%D0%BB%D0%BA%D0%BE%D0%B2%D1%8B%D0%B9_%D1%81%D0%BB%D0%BE%D0%B2%D0%B0%D1%80%D1%8C._%D0%A2%D0%BE%D0%BC_1_(%D0%94%D0%B0%D0%BB%D1%8C_1903).djvu/886


                1. mazahakajay
                  31.07.2018 15:26

                  Все равно ничего не получилось.
                  Напомнило, как одна знакомая удивлялась слову «стрекать», «крапива стрекает». В ее краях так не говорили )


                  1. vconst
                    31.07.2018 16:31
                    +1

                    Справедливости ради, жгучие клетки крапивы — называются «стрекательные» :)


                    1. olgerdovich
                      01.08.2018 01:13
                      +2

                      в школьном курсе биологии такие клетки упоминаются при обсуждении медуз


                  1. General_Failure
                    01.08.2018 07:31

                    В моих тоже не говорили, но «подстрекать», «подстрекательство» вроде бы общеизвестные


                    1. mazahakajay
                      01.08.2018 08:43

                      Ну судя по словарю, корень у них все-таки разный.


                  1. mayorovp
                    01.08.2018 09:40
                    +1

                    В моих краях так тоже не говорят.


              1. kvarkicn
                31.07.2018 13:38

                Зыбский — хороший.
                «Зыбский пирог», например, это «вкусный пирог».


        1. Wesha
          31.07.2018 00:05
          -1

          Вот одну такую окраину не били, и к чему это привело?


          Иностранцы, читая такие вещи, вежливо говорят, что оборот fairly rare, but understandable.

          Мне тоже много чего understandable, но приятного от этого мало. Например, данное произведение вполне понятно, но от суржика, на котором говорит главгерой, ОЧЕНЬ корёжит и читать жутко сложно.


        1. olgerdovich
          31.07.2018 01:21
          +1

          А это зато получается как ж/д колея на восемь с половиной сантиметра шире: вроде то же в целом, а чужой споткнется и себя выдаст. (Сарказм)
          на деле же английский как общепринятый язык международного общения имеет тяжкое обременение в виде размывания норм.


  1. Avvero
    30.07.2018 10:18
    +2

    E2E называется так, потому то позволяет показывать третьим лицам зашифрованные данные не опасаясь за их сохранность. Как мы увидели, это условие новым продуктом телеграма не выполняется.

    Мне кажется, что Вы не правы в том смысле, что E2E это принцип/механизм, а не гарантия


    1. Scratch Автор
      30.07.2018 10:28
      +1

      Какой смысл использовать принцип\механизм если он не дает никаких гарантий?
      Люди видят «End-to-End» и в голове у них это бренд, который подразумевает безопасность.


      1. Avvero
        30.07.2018 10:35
        +3

        Я ведь немного о другом, система является E2E не потому что он что-то там гарантирует, а потому что она построена по данному принципу. Можно сделать надежный E2E, а можно не надежный E2E. В двух случая это E2E, но только один не надежный.


        1. Scratch Автор
          30.07.2018 10:42
          -1

          Ок, попробуем по другому. Определение из википедии:

          Сквозное шифрование (также оконечное шифрование; англ. end-to-end encryption) — способ передачи данных, в котором только пользователи, участвующие в общении, имеют доступ к сообщениям


          Рассмотрим ситуацию:
          Я использую пароль «1» и заливаю свои персональные данные в облако телеграма.
          Получает облако доступ к моему «сообщению»? Да, конечно получает, миллисекунды через три оно будет расшифровано и полностью им доступно. Нарушается ли при этом принцип E2E? Конечно нарушается


          1. Avvero
            30.07.2018 10:46
            +2

            Ну давайте по такому, выше по тексту Вы пишите

            10 GPU переберут все возможные сочетания 8 значных паролей за 80 дней

            Если мерить видеокартами, какова должны быть надежность настоящего E2E в штуках? На основе чего вы предъявляете требования именно в таком количестве штук?


            1. Scratch Автор
              30.07.2018 10:59

              «Настоящий» E2E видеокартами не взломать, т.к. ключ шифрования не зависит от сложности пароля и является результатом, например функции диффи-хэлмана


              1. Avvero
                30.07.2018 11:18

                А если вы используете бесконечно длинный пароль и время его взлома будет бесконечно велико, то это можно назвать «настоящим» E2E?


                1. Scratch Автор
                  30.07.2018 11:23

                  Если так будут делать все, то да, если кто-то один — нет.


                1. cuwHuk
                  30.07.2018 12:54

                  А если вы используете бесконечно длинный пароль и время его взлома будет бесконечно велико

                  Надежность системы определяется самым слабым звеном, для данной системы наихудшим вариантом будет взлом AES-256.

                  По поводу Е2Е с научной/инженерной/академической точки зрения Вы правы, но с обывательской — когда человек видит Е2Е, то считает что данные надёжно защищены, а в данном случае система и правда «дырявая»…


                  1. ozonar
                    30.07.2018 13:29

                    С обывательской точки зрения если обычный человек видит E2E, то это ему вообще ни о чём не говорит, потому что он не знает что это такое.

                    А технически подкованный человек и так знает о том что абсолютно защищенных систем не существует и стоит защищать себя самому, поэтому для него E2E тоже ничего не значит.


                    1. cuwHuk
                      30.07.2018 13:46
                      -2

                      если обычный человек видит E2E, то это ему вообще ни о чём не говорит

                      Многие знают или хотя бы слышали термин и имеют ассоциацию с защитой данных, в немалой степени это заслуга РосКомПозора и недавней битвы с Telegram.
                      абсолютно защищенных систем не существует

                      В реальной жизни вообще ничего абсолютного не существует.
                      стоит защищать себя самому

                      Сделать всё самому, к сожалению, невозможно, довольно часто приходится обращаться за услугами к другим людям/организациям. Но ответственности за себя с человека этот факт, конечно, не снимает.


    1. geisha
      30.07.2018 21:08

      Мне кажется, что Вы не правы в том смысле, что E2E это принцип/механизм, а не гарантия

      Справедливости ради, телеграм тоже назвал End-to-end-ом не совсем то, чего ожидаешь в таких случаях. Насколько я понял, закрытый ключ здесь всего у одного владельца, а Passport — просто хранилище зашифрованных данных, которые расшифровать можно только зная секрет. Нужно было в начале статьи разграничить понятия «End-to-end» и «хранилище зашифрованных данных без доступа» и после этого заявлять, что секрет можно сбрутить.

      Без Proof of Concept, конечно, «восьмизначный пароль за 5 дней на GPU-кластере» — вывод так себе. Ежу ж ясно, что любой секрет можно гипотетически сбрутить в том случае, если этот секрет является достаточной информацией для расшифровки.


  1. kalyukdo
    30.07.2018 10:23

    Спасибо за детальный разбор, конечно же не понесу им свои персональные данные.

    P.S мне все больше кажется что просто даже блокировка телеграмма была качественным маркетинговым ходом, чтобы сейчас люди начали вестись на подобные продукты от Telegram, потому как до сих пор работает как и работал…


    1. Voltera
      30.07.2018 10:39

      Ну а какие варианты по его выпиливанию существуют? приложения букмекерских контор отлично работают(клиент-сервер) скачал с сайта и пользуйся. Тут подобная история, просто решили поубивать адреса сервера, не получилось (ожидаемо)


      1. kalyukdo
        30.07.2018 10:55
        -1

        мы же взрослые люди, если бы речь шла действительно про запрещенные организации, то уже бы отработали Дурова по другому, и все спокойно бы закрыли, просто есть другие месенджеры которые тоже говорят про е2е и они работают как и работали, тут просто было смешно наблюдать когда все говорят про блокировки Телеграмма, и тут же по новостям от депутатов и чинов слышно: «мы организовали телеграмм группу/канал для быстрого реагирования», не говоря уже том что телеграм бот работает в госуслугах

        P.S давайте не будем поднимать холивар на полит темы


        1. dartraiden
          30.07.2018 14:57
          -2

          то уже бы отработали Дурова по другому
          Силовыми методами? Или на родителей бы надавили, живущих в России?

          По-моему, это дикость и варварство.


          1. tandzan
            30.07.2018 18:26

            Напомнить, что стало с мамой Чичваркина?


            1. syouth
              31.07.2018 01:28

              Она поскользнулся?


            1. JobberNet
              31.07.2018 06:19

              А почему он родителей не вывез, а оставил?


          1. JobberNet
            31.07.2018 06:13

            то уже бы отработали Дурова по другому
            Силовыми методами?

            Намёк на Березовского и Скрипалей?


        1. Dmitresso
          31.07.2018 07:13

          Телеграм бот гос услуг не работает чуть ли не с самого начала блокировок


          1. kalyukdo
            31.07.2018 09:11

            я им пользовался в момент блокировок когда получал загран паспорт


        1. roscomtheend
          31.07.2018 10:54
          +1

          > о уже бы отработали Дурова по другому

          И как? Потому как с запрещённми организациями особенно ничего поделать не могут. Даже победоносная войнушка не очень получилась (сначала на словах победили к выборам, а потом как-бу уже и не очень).


    1. JobberNet
      31.07.2018 07:43
      +1

      мне все больше кажется что просто даже блокировка телеграмма была качественным маркетинговым ходом

      А то что у Дурова его ВКонтактник отжали, это тоже «качественный маркетинговый ход»?
      Интересно, чей?
      Маркетинговый ход российской власти, чтобы всем показать, что их бизнес может быть легко отжат?


      1. Fracta1L
        31.07.2018 09:59
        +1

        Это определённая категория людей, у них кругом заговоры, фейки, постановы, и т.д.


        1. kalyukdo
          01.08.2018 09:35

          И каждый человек, не важно из какой он категории имеет право высказывать свою точку зрения, даже если она не нравиться окружающим


          1. Fracta1L
            01.08.2018 10:26

            А окружающие имеют право выразить, что они думают о вашей точке зрения.

            И рот вам никто не затыкает))


  1. dirkar
    30.07.2018 10:38
    -3

    Странно это, не может телеграмм так косячить…


    1. Voltera
      30.07.2018 10:40
      +2

      Если они тру зайки, то зайдут сюда и ответят по существу, ну или на других площадках.


    1. s-kozlov
      30.07.2018 20:59

      Вы шутите?
      habr.com/post/206724


      1. Groosha
        31.07.2018 14:21

        2013 год
        Это раз.

        Мокси Марлинспайк
        Серьёзно? Человек, который на голубом глазу убеждал, что их протокол используется в WhatsApp, а потом оказывается, что на самом деле там его "модификация" (а что ещё ожидать от Facebook?) вместо "чистого" OpenWhisper.


        1. s-kozlov
          01.08.2018 09:04
          +1

          2013 год

          И? Сильно важно, в каком именно году Дуровы начали непонятно зачем изобретать криптовелосипеды сомнительного качества?
          Серьёзно? Человек, который

          И? Давайте еще меня обсудим, это же так важно. Обсуждать, что команда Telegram уже не в первый раз занимается сомнительными с точки зрения криптографии вещами, мы, конечно, не будем.


  1. phillennium
    30.07.2018 11:23

    Update: пока составлял комментарий, рекламная ссылка из поста исчезла.

    Ссылка на ваш продукт в конце текста, во-первых, прямо противоречит первому пункту правил Хабра («запрещена реклама в обход правил»),

    а во-вторых, несколько подрывает доверие ко всему тексту: вы очень заинтересованы ругать чужую криптографию, если за счёт этого продаёте свою.

    Я человек простой, в криптографии глубоко не разбираюсь, и у меня два простых вопроса. Вы пишете, что в Telegram Passport не внедрили защиту от перебора с помощью GPU, и «на это уйдёт 80 дней». Вопросы такие:

    1. Правильно ли я понимаю, что такой защиты нет не только в Telegram Passport, но и в основной переписке Telegram?

    2. Если это так, то почему никто не брутфорснул с помощью GPU переписку Павла Дурова, за расшифровку которой была обещана большая награда?


    1. Scratch Автор
      30.07.2018 11:36

      Ссылка в конце статьи уже заменена на гитхаб, правил она больше не нарушает. А доверять статье не надо, можете сами проверить все факты.
      Основная переписка телеграма защищена по другому, там пароли не участвуют. Но она тоже не E2E, облако видит всю переписку


      1. Whiteha
        30.07.2018 12:36
        +1

        Можете написать про это статью? Будет интересно почитать, многие считают что секретные чаты телеграма реально безопасны


        1. Scratch Автор
          30.07.2018 13:16
          +1

          Секретные чаты пока никто не взломал, но протокол там самопальный. А обычные чаты шифруют текст только до серверов облака, это общеизвестный факт. Проблема в том, что секретными чатами никто не пользуется


          1. Endeavour
            30.07.2018 13:30
            +2

            Возможно это проблема тех, кто ими не пользуется? И да, «никто» — по-умолчанию ложное заявление.


            1. ValdikSS
              30.07.2018 14:05
              +2

              В официальной десктопной программе поддержки нет, поэтому не пользуются.


            1. tyderh
              30.07.2018 14:27

              Нет, это проблема именно телеграма. Он пиарился, как «безопасный», но 1) в настольной версии безопасных чатов нет 2) они специально сделаны так, чтобы ими было неудобно пользоваться. например, общение возможно только между одним устройством и другим. по сравнению с omemo — прошлый век.


              1. Endeavour
                30.07.2018 15:45

                Whatsapp точно так же работает между одним устройством и другим, что делает его неудобным для использования на сторонних устройствах в любых случаях. Телеграм дает выбор между удобной синхронизацией или e2e на одном устройстве. Добавление е2е в десктопный клиент потянет за собой вопросы начиная от «куда делись мои чаты?» до «как выбрать, на каком клиенте собеседника появится вновь созданный чат, не спалив чужих устройств?»
                Не знаю, если честно, как это реализовано в сторонних клиентах, надо-бы попробовать.

                Для себя лично я вижу ситуацию необходимости использования секретного чата именно с мобильного клиента, когда нужно быстро начеркать несколько очень важных слов. Или позвонить, ведь звонки так же е2е шифрованы.
                Для разговоров с близкими о вечернем ужине я выберу более удобные обычные чаты, даже при наличии секретных на всех клиентах.


                1. tyderh
                  30.07.2018 15:48

                  Не знаю, если честно, как это реализовано в сторонних клиентах, надо-бы попробовать.

                  Я не зря omemo упомянул — там эта проблема успешно решена.


                1. Scratch Автор
                  30.07.2018 15:54

                  что не так с вотсапом? Синхронизация истории есть и на десктопе и в браузере


                  1. Endeavour
                    30.07.2018 16:06

                    Любые клиенты вотсапа работают через телефон и не работают без него.
                    Подход вотсапа к бэкапу истории сообщений в большинстве случаев приводит к потере е2е при заливке бэкапа в гугл-драйв/другое. В телеграме секретные чаты не бэкапятся, т.е. всегда остаются е2е. Обычные чаты хранятся и синхронизируются серверами.


                    1. develmax
                      30.07.2018 18:45

                      Вотсап бэкапит историю сообщений в открытом виде?


                      1. Endeavour
                        30.07.2018 22:04

                        Не проверял, но это не важно в контексте обсуждения, т.к. расшифровка этого бэкапа на другом устройстве означает наличие сторонних ключей и потерю е2е.


                        1. develmax
                          31.07.2018 08:26

                          Это важно, если расшифровка возможна только при вводе как минимум пароля пользователя, а еще лучше — его приватного ключа или сертификата (с приватным ключом). В этом случае, наличие зашифрованной информации на каком-либо устройстве или облаке не несет никаких рисков, кроме как потери этой информации.


                          1. VolCh
                            31.07.2018 09:49

                            Всегда есть риски подбора паролей/ключей. Современная типография не оперирует понятием «невозможно», она оперирует вероятностями, оценками среднего количества итераций и т. п.


                  1. shifttstas
                    31.07.2018 09:26

                    Наверно тем, что при бэкапе она не зашифрована?


                1. boootloader
                  30.07.2018 22:01

                  Добавление е2е в десктопный клиент потянет за собой вопросы начиная от «куда делись мои чаты?» до «как выбрать, на каком клиенте собеседника появится вновь созданный чат, не спалив чужих устройств?»

                  Поддержка «секретных чатов» (e2e) есть в десктопном клиенте для Mac, и да, из-за отсутствия синхронизации получается не очень удобно.


                1. Murz
                  31.07.2018 21:45

                  А я использую matrix.org — там e2e шифрование сделано вполне нормально, даже для групповых чатов!


                1. YumeReaver
                  31.07.2018 21:54

                  «как выбрать, на каком клиенте собеседника появится вновь созданный чат, не спалив чужих устройств?»

                  Возможно, по аналогии с SIP Proxy, активное устройство будет регистрировать свой ip.


        1. inoyakaigor
          30.07.2018 14:51

          Удваиваю просьбу


      1. 4tlen
        30.07.2018 18:45
        +1

        Облако видит переписку потому что оно ее шифрует ключами, которые хочет РКН. E2E шифрованные секретные чаты облако не видит. Поправьте если я не прав.


  1. AC130
    30.07.2018 11:31

    Сколько GPU-часов надо для взлома 20-значного пароля с алфавитом на 64 символа?


    1. voted
      30.07.2018 13:14

      Я думаю хаб Nicehash — справиться за считанные часы


      1. vibrant
        30.07.2018 15:18

        за считанные где-то 10^40 лет(пальцем в небо, но порядок примерно такой). это чуть больше, время жизни Вселенной и «считанные часы»


        1. powerman
          30.07.2018 16:43

          Палец промахнулся раза в два по порядку, на самом деле там 10^19 лет, но это всё-равно более чем.


        1. voted
          30.07.2018 17:04
          +2

          Ох, я для 10-значного посчитал, признаю, был не прав.
          Для 20 — вероятно да, общая ёмкость криптовалютных вычислений такое скушает время большее жизни вселенной (10^20 лет примерно), это учитывая ASIC и всё остальное (хотя сейчас ASIC из SHA256 в SHA512 переделать нельзя, прикидка чисто по хешрейту). Но учитывая что SHA-512 2003 года выпуска, в 2008 нашли коллизии для 22 итераций, в 2016 для 27 (всего их 64 напомню). То я думаю что подбор такого пароля в итоге займёт времени значительно меньше времени жизни вселенной.


  1. vanso
    30.07.2018 11:37

    На самом деле (ИМХО, конечно) любые такие сторонние сервисы лучше для хранения идентифицирующих документов, всё-таки, не использовать. Разве есть какой-то правовой статус у подобного хранилища? Identity theft никто не отменял.


    1. Pydeg
      30.07.2018 15:18
      +1

      И как, интересно, правовой статус может защитить от identity theft? Что, паспорта не подделывают?


      1. vanso
        30.07.2018 15:28

        От правового статуса будут зависеть возможности по дальнейшему снижению эффекта случившегося, возвращению статуса кво и так далее. Identity theft просто будет проще или сложнее в зависимости от защищенности данных, вы правы, так и паспорт можно банально протерять и не успеть заявить в МВД о его недействительности…


        1. VolCh
          30.07.2018 18:05
          +1

          Правовой статус паспорт без его владельца нулевой. Риски ложноположительной идентификации несёт идентифицирующий. Хотя владельцу неприятные моменты может принести потеря или даже утечка сканов. Но никакой ответственности за действия третьих лиц с его паспортом он несёт.


  1. HenadziMatuts
    30.07.2018 11:46
    +2

    Ассиметричная криптография для шифрования данных? Серьёзно?! В плане криптостойкости, конечно, имеет место быть, но при относительно больших объёмах данных крайне неприемлемо по скорости.

    В остальном согласен, есть HMAC, есть AEAD, а это какой-то совсем уж самопал. Ещё не совсем понятно зачем в облаке зашифрованный ключ, ведь криптография всё равно выполняется на стороне клиента и ключу незачем покидать пределы устройства.


    1. Scratch Автор
      30.07.2018 11:48
      +1

      Асимметричная криптография используется для генерации симметричных ключей. Шифруется в итоге всё равно тем же самым AES


      1. HenadziMatuts
        30.07.2018 11:51
        +1

        Ну, я конкретно придираюсь вот к этой формулировке:

        Но, к примеру, если правильно зашифровать данные не на хэш от пароля, а на публичный ключ, то никакой даже миллиардный кластер не сможет к ним и близко подобраться.

        Написали бы про протокол Диффи-Хеллмана — таких вопросов бы не возникло.


        1. Scratch Автор
          30.07.2018 15:13

          Столько лет прошло с тех пор как люди буквально шифровали «на ключ», что я решил не уточнять. Но приятно видеть олдфагов)


  1. zelyony
    30.07.2018 11:50

    если будете пользоваться Gram, то Telegram-у нужен будет ваш Passport, потому что Знай своего клиента, иначе Дуров пойдет за Винником.


    В компании обещают, что Telegram не будет иметь доступа к личным данным пользователей. Они будут переходить непосредственно к получателю.

    Меня больше волнует в каком виде Telegram будет раздавать наши паспорта: текстом "да, это он!" (т.е. вручную подтверждается личность с походом в какое-нибудь почтовое отделение) или солянка из скана, телефона и мыла… Потому что гладиолус GDPR. И я не хочу, чтобы у видео-салона "Рога и копыта" (или тот же "Fhloston Paradise" из image скриншота новости про Telegram Passportбыли мои паспортные данные с фоткой, мылом и телефоном — зачем им оно и куда они это будут сливать?
    На скриншоте показано, что некий сервис запрашивает мои личные данные, телефон и мыло. Абсолютному большинству всяких веб-сайтов нужно только мыло, которое я и так бы указал при входе или регистрации. Но вот сам интерфейс — сервис запросил личные данные и стрелка, которую никто в большинстве раскрывать не будет, а просто жмакать ОК (не все же параноики и продвинутые айтишники) — выглядит стремно. Т.е. лучше бы, если сервису нужно что-то помимо мыла, интерфейс изменить, чтобы пользователь явно подтвердил (проставил галочки как минимум), что он согласен отправить свой паспорт, вод./пенс.удостоверение и так далее этому сервису.


    1. kalyukdo
      30.07.2018 12:41

      есть хороша фраза которая описывает данный сервис: «Если человек не платит за сервис, значит он продукт этого сервиса»


  1. mpa4b
    30.07.2018 12:03
    -1

    -


  1. DenimTornado
    30.07.2018 12:17
    +1

    Немного оффтоп, но всё же. Есть ли что-то похожее на этот паспорт, но локально? Хочется хранить основные документы не сканами, а в нормальном приложении с удобной навигацией? Нечто подобное видел у 1Password, но ооочень дорого.


    1. ValdikSS
      30.07.2018 12:30

      Храню много чего в Cherrytree, может, и вам подойдет?


      1. DenimTornado
        30.07.2018 12:59

        Спасибо за вариант, но это всё-таки немного не то. Хочется нечто подобное — ВКармане


        1. ValdikSS
          30.07.2018 13:09

          Классные у приложения отзывы.


          1. DenimTornado
            30.07.2018 13:10

            Именно поэтому я и написал, что нечто подобное. Суть то, что надо, а вот исполнение неудовлетворительное.


            1. ValdikSS
              30.07.2018 13:16
              +4

              Q: Как восстановить пропавшие при обновлении документы?
              A: К сожалению, никак. Потеря документов стала следствием необратимого технического сбоя. Мы сделали все возможное, чтобы избежать повторения ситуации в будущем.

              Q: Как синхронизировать документы с iCloud/Dropbox?
              A: Этот вид синхронизации больше не нужен, документы автоматически синхронизируются с нашим сервером. Ваши данные надежно защищены. Это было сделано, чтобы избежать повторения ситуации с потерей локально хранящихся данных. Возможность восстановления из резервной копии в iCloud или Dropbox сохранится до выхода новой версии ВКармане. Теперь все документы синхронизируются автоматически между всеми вашими устройствами.

              Q: Почему пропал офлайн-режим работы?
              A: Мы недооценили, насколько это важная функция для вас. Офлайн-доступ к документам обязательно вернется в следующей версии.

              Q: Короткий код доступа — это не безопасно. Как мне вернуть длинный пароль?
              A: Данная схема безопасна. Заданию короткого кода доступа предшествует авторизация по номеру телефона с кодом подтверждения из смс. Короткий код сбрасывается после трех неправильных попыток ввода. После этого требуется снова пройти полную авторизацию. Возможность задания длинного пароля вернется вместе с офлайн-режимом работы, где наличие длинного пароля необходимо для обеспечения безопасности.
              Вообще пушка, программа года.


              1. cuwHuk
                30.07.2018 13:58
                +3

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


                1. PsyHaSTe
                  30.07.2018 19:26

                  Вряд ли разработчик виноват, что ему дали денег, а потом испортили приложение. Он скорее всего даже не знал, какие последуют изменения. «О, меня за 10 лимонов покупают, отлично!». А потом «что вы наделали, ироды», но поезд ушел.


              1. OKyJIucT
                31.07.2018 09:01

                > Q: Как восстановить пропавшие при обновлении документы?
                > A: К сожалению, никак. Потеря документов стала следствием необратимого технического сбоя. Мы сделали все возможное, чтобы избежать повторения ситуации в будущем.

                Напомнило печальную историю с одним из хостинг-провайдеров: «ребята, мы все случайно удалили, но больше такого не повторится, честно-пречестно».


    1. sumanai
      30.07.2018 21:30

      Нечто подобное видел у 1Password

      Очевидный KeePass имеет функцию прикрепления любого файла и позволяет вводить любые поля с любыми данными. Просто залейте скан и забейте все поля. Поиск тоже есть.


    1. ivlis
      30.07.2018 23:26

      Lastpass же, $1/мес


      1. DenimTornado
        30.07.2018 23:27

        Активно юзаю, хочу гуй для документов…


  1. Nucleotide
    30.07.2018 12:34

    Интересно, а почему именно 239?


    1. iig
      30.07.2018 13:12

      Простое число размером в 1 байт. И состоит из 7 единиц.
      Но таки да, самодельная криптография это зло.


    1. ximik777
      30.07.2018 13:28

      Я долго вспоминал где же я видел это магические число. Вспомнил:
      github.com/vk-com/kphp-kdb/blob/master/memcached/memcached-data.c#L50
      github.com/vk-com/kphp-kdb/blob/master/copyexec/copyexec-commit.c#L147
      github.com/vk-com/kphp-kdb/blob/master/KPHP/common.h#L135
      github.com/vk-com/kphp-kdb/blob/master/text/text-data.c#L2543
      Часто используется в kphp/kdb движках, особенно в функциях хэширования, одним из авторов которых является Николай Дуров.
      Тогда я тоже задавался вопросом почему именно 239.


      1. aamonster
        30.07.2018 13:59

        А где он учился? Для ленинградцев, в детстве увлекавшихся математикой, число 239 очень-очень знакомо =)


        1. Arris
          30.07.2018 15:13
          +1

          Там и учился.


        1. Darka
          30.07.2018 16:51

    1. ximaera
      30.07.2018 13:51
      +2

      Прозреваю, автор кода учился в физико-математическом лицее №239 :-)


      1. vsespb
        30.07.2018 20:21

        я был о лицее лучшего мнения хотя может он его недавно закончил


    1. Nucleotide
      31.07.2018 14:09

      Еще замечу, что про лицей я подумал сразу, потому что я знаю людей, кто лепит число 239 во всё — в исходные коды, в номера телефонов, в емейлы, никнеймы и так далее. Ну и при покупке булочки за 23.90 обязательно скажет, что это знак.


      1. sumanai
        31.07.2018 20:53

        Ну и при покупке булочки за 23.90 обязательно скажет, что это знак.

        Я бы тоже подумал, что это знак, хотя в питере не учился.


    1. 1nvisible
      31.07.2018 14:30
      +3

      Существует культ выпускников физико-математического лицея №239 Санкт-Петербурга, эту константу очень часто можно увидеть в их коде.

      Как-то раз в конторе, где я работал, была проблема с очень странным поведением игрового персонажа. Выяснилось, что причиной этого был следующий код:

      int random()
      {
          return 239;
      }


      1. JC_IIB
        31.07.2018 21:14
        +1

        Это саботаж какой-то. За такое недолго и под зад коленом из конторы получить, вкупе с соответствующей записью в трудовой.
        Хотите развлекаться культами — пожалуйста, но не надо примешивать сюда рабочие процессы.


        1. KoToSveen
          01.08.2018 02:24
          +2

          вкупе с соответствующей записью в трудовой
          Уволен по ст. 239 ТК РФ


          1. Wesha
            01.08.2018 02:38

            image


  1. wlr398
    30.07.2018 12:53

    На одном хорошем GPU можно перебирать чуть больше миллиарда SHA-512 в секунду. 10 GPU переберут все возможные сочетания 8-значных паролей за 80 дней.

    А что имеется в виду под сочетаниями 8-значных паролей? Вся таблица юникод что-ли?
    Обычные пароли из латиницы, цифр, спецсимволов вскрываются гораздо быстрее.
    На обычном домашнем компе с бюджетным джефорсом при помощи хешкета и при гораздо меньшем хешрейте ушло где-то часа 2. На 8 символов.


    1. Scratch Автор
      30.07.2018 13:41

      Под всеми возможными имеются в виду все 8байтовые комбинации, т.е. 256^8, в реальности, конечно, еще во много раз быстрее, я просто ограничил сверху


  1. turbanoff
    30.07.2018 14:07

    >На одном хорошем GPU можно перебирать чуть больше миллиарда SHA-512 в секунду.

    Можете поделиться источником инфы про миллиард sha-512 в секунду? Интересно узнать, на каком оборудовании это делали и с помощью какого ПО.


    1. Scratch Автор
      30.07.2018 15:16

      Вот, пожалуйста: www.blackhillsinfosec.com/hashcat-benchmarks-nvidia-gtx-1080ti-gtx-1070-hashcat-benchmarks

      Hashtype: SHA-512

      Speed.Dev.#1.....: 1511.9 MH/s (77.65ms)
      Speed.Dev.#2.....: 1524.0 MH/s (77.04ms)
      Speed.Dev.#3.....: 1487.6 MH/s (78.90ms)
      Speed.Dev.#4.....: 1504.3 MH/s (78.05ms)
      Speed.Dev.#*.....: 6027.8 MH/s


      Одна карточка выдаёт полтора гигахэша в секунду


      1. jok40
        30.07.2018 15:26

        Вы точно уверены, что здесь демонстрируется скорость перебора хэшей OpenSSL::SHA512? Потому как hashcat поддерживает несколько алгоритмов, называемых SHA512 и скорость их перебора различается значительно.


        1. Scratch Автор
          30.07.2018 15:32

          а при чем тут OpenSSL? SHA-512 он и в африке SHA-512. Там есть разные варианты комбинаций, но картина в целом не будет сильно отличаться т.к. словари для перебора тоже не всегда из 256 символов состоят


          1. jok40
            30.07.2018 15:40

            Пару лет назад я пытался хэшкэтом пароль от Debian пробрутфорсить. Насколько помню, там тоже используется какой-то из вариантов SHA512. Скорость перебора была ниже плинтуса.


            1. jok40
              30.07.2018 16:17

              Почитал сейчас про пароли в современных Linux — для их хэширования SHA512 вызывается в цикле несколько тысяч раз. Вот почему скорость перебора была такой низкой. Так что вопрос снят.


  1. trimtomato
    30.07.2018 14:17

    Я вчера сменил пароль на учетную запись в Телеграме. Менял через десктопное приложение. Так вот, на телефоне мне даже не пришлось вводить этот новый пароль. Более того, данные хранящиеся в Passport успешно самостоятельно перешифровались новым паролем. При самой первой установке этого пароля я поставил галочку «возможность восстановления пароля». Все это выглядит так, как-будто сервер знает мой пароль. А данные Passport я не могу зашифровать через другой пароль. Или это нормально?


    1. dartraiden
      30.07.2018 15:10

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

      Это обычная практика. Позволяет легко отозвать доступ у какого-либо устройства, не меняя пароль. И повышает безопаность, потому что пароль не хранится на устройстве.


      1. trimtomato
        30.07.2018 16:18

        Теперь понятно на счет входа. Спасибо.
        А что на счет того, что мои данные в Telegram Passport перешифровываются новым паролем? Я только что еще раз проверил. Меняю пароль через десктоп. Открываю приложение на телефоне, а в нем уже новый пароль на Passport. Как-то это не совсем похоже на End-to-End.


        1. dartraiden
          30.07.2018 16:32
          +1

          В статье, которую мы сейчас комментируем, написано:

          В облако передаются:

          Хэш от персональных данных, смешанных со случайными байтами
          Зашифрованный паролем почти случайный ключ
          Соль
          Зашифрованные данные

          Когда вы поменяли пароль на десктопе, ваши данные перешифровались на том же десктопе (новым ключом, который защищён вашим новым паролем), залились в облако, откуда их подтянул смартфон. Соответственно, теперь у вас на смартфоне обновлённые зашифрованные данные, к которым подходит ваш новый пароль.

          Точно так же, допустим, у меня в облачном хранилище Dropbox лежит зашифрованный паролем текстовый файл. Если я на десктопе перешифрую его с другим паролем, то файл автоматически зальётся в облако и будет доступен на других моих устройствах, где я смогу его расшифровать с новым паролем. Пароль, при этом, не уходит дальше моих устройств, где я выполняю шифрование и расшифровку.


          1. trimtomato
            30.07.2018 16:40

            Такое возможно. Странно только, что десктопное приложение не имеет функции Telegram Passport. И последнее обновление вышло 13 июля.


            1. dartraiden
              30.07.2018 16:40

              Имеет. Как раз версия от 13 июля точно имеет.

              core.telegram.org/passport/example

              страница перекидывает в десктопное приложение, которое запросит пароль и предложит загрузить документ


              1. trimtomato
                30.07.2018 16:51
                +1

                Действительно есть. Теперь тогда все ясно. Спасибо.


  1. harm
    30.07.2018 14:41

    У Дурова явно мания величия и планы по захвату мира, но покажите мне хоть одну юрисдикцию, которая позволит какому-то Павлику подвинуть их экономику своими грамами и вообще пойдёт на поводу у подобного сервиса/компании сделав интеграцию с ним. Бизнес? Прям вижу сегодня, как бизнес в России и других странах охотно продаёт свои товары через ботов.
    Есть операторы связи, с которыми человек заключает договор, предоставляя свои документы подтверждающие личность, есть организация GSMA, в которую входят эти самые операторы связи и есть протокол RCS, который вскоре заменит традиционные СМС. Google уже потеет над этим вопросом jibe.google.com
    Так вот протокол RCS явно не будет стоять на месте и электронное правительство, бизнес и прочие скорее будут использовать этот вариант, а не поделия Павлика Морозова, который завтра может исчезнуть вместе со своим грамом по щючьему велению.


    1. jryj
      30.07.2018 14:59
      -1

      Да оставьте вы Павлика Морозова в покое. Уже и в это его притянули!


      1. harm
        30.07.2018 16:56
        -6

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


        1. jryj
          30.07.2018 22:34
          +1

          Павлика и его брата (Павлику было, если правильно помню, 8 лет, а брату 6) зарезал родной дед, за то, что он подтвердил слова матери на суде.

          Вы же зачем-то притянули его к этой истории с телеграмом.


          1. harm
            31.07.2018 14:05
            -6

            А с чего Вы взяли, что я именно этого Павлика притянул? Это лишь Ваша фантазия и не более, моя работает иначе. Тем более Павликов Морозовых на одном только Вконтакте зарегистрировано более 14к и многие из них пока что живы.


            1. mayorovp
              01.08.2018 09:43

              Поиск по странице слова «Морозов» находит только ветку начавшуюся с вашего комментария.


    1. shifttstas
      31.07.2018 09:32

      Старые системы уходят, новые приходят, что тут такого? RCS к слову, мертвая технология, она нужна только операторам и больше никому.


      1. harm
        31.07.2018 09:44
        -2

        Такая же мёртвая как и смс, которыми все пользуются и получают оповещения и не только от банков. Надо головой думать, а не жопой, Стас. Операторам только нужно говоришь? Может ты телеграмом пользуешься через спутник?
        Это всё так же смешно, как новость про закрытое ICO Telegram и участие в нём хотя бы того же Сергей Солонина.


        1. shifttstas
          31.07.2018 09:48

          Переход на личности? Мило.


          Я даже вам сюда не буду приносить картинку с % сообщений передающихся через SMS и мессенджеры, спойлер — у SMS менее 5%.


          Оператор в нынешне время — это труба для трафика, вполне понятно, что они хотят поднять прибыль за счёт дополнительных сервисов, но учесть RCS стать очередным internet explorer. Помните в 3G сетях были видео звонки? Прямо нативные, и что, где там они? Много кто использует?


          1. harm
            31.07.2018 10:51

            При чём тут передача пользователей друг другу всякого шлака? Речь идёт о хранении ваших документов, взаимодействии бизнеса с клиентом. Какое бы вы устройство не купили, клиент для смс/rcs вам устанавливать и скачивать не надо, все операторы зарегистрированные юридические лица на территориях предоставления своих услуг, когда как Telegram принадлежит одному лицу и никто, кроме чёрного рынка там работать не будет.
            Я ещё могу понять запуск шлюза в мессенджере с привязкой банковской карты, но не вот это вот всё.


            1. shifttstas
              31.07.2018 11:26

              Chrome тоже не входит в поставку OS по умолчанию и что?


              1. harm
                31.07.2018 11:52
                +1

                И что?


                1. shifttstas
                  31.07.2018 12:32

                  % chrome и iexplorer какой сейчас?


                  1. harm
                    31.07.2018 12:54
                    -3

                    какой?


              1. NeuroHunter
                01.08.2018 08:48

                Chrome можно поставить почти везде.
                Однако есть куча устройств, на которых SMS/RCS — единственный канал получения текстовой информации.


                1. shifttstas
                  01.08.2018 09:27

                  Пример устройства пожалуйста, где нельзя поставить мессенджер но есть RCS?


                  1. NeuroHunter
                    01.08.2018 10:00

                    С учетом того, что RCS пока еще ограничен только свежим Android — корпоративные трубки. Выдали трубку на работе, там все, что по работе нужно, предустановлено, установка любых других приложений заблокирована.
                    В перспективе — feature phones.


                    1. shifttstas
                      01.08.2018 10:02

                      Для корпоративного общения есть Skype For B им пользуются 99.9% крупных компаний, RCS не обеспечит защищенность и интеграцию с Exchange. А ну и да, он ещё и на десктопах работает как там с этим у RCS?


                      1. NeuroHunter
                        01.08.2018 10:08

                        RCS тоже работает на десктопах, через веб-морду.
                        Понятно, что RCS не используется в корпоративном общении. А вот для уведомлений (я изначально написал «получения информации») — вполне. Уведомления на почту, в особо критичных случаях — с дублем через оператора (RCS/SMS)


  1. AbstractGaze
    30.07.2018 15:24
    +1

    Ну а что, денег им отвалили, за последствия можно не беспокоиться.

    Разве? Если какой нибудь пользователь из евросоюза сохранит свои ПДн и они вдруг станут известны третьим лицам без его согласия, потому что кто то их достал из данного сервиса, сдается мне что прилетит хороший такой штраф (привет GDPR).
    А так как, такая утечка будет вероятнее всего не одного пользователя — последствия будут весьма плачевные.


    1. RussDragon
      31.07.2018 20:20

      Хуже – если какие-то данные вдруг станут доступным третьим лицам без предварительного согласия – ценность ICO немного упадёт, а у инвесторов будет небольшие вопросы.


  1. pronvit
    30.07.2018 15:30
    -2

    Интересно, но заголовок слишком желтый. Стоит им заменить SHA512 при хэшировании пароля на что-нибудь в сто раз медленнее, и все ваши претензии рассыпятся.


    1. powerman
      30.07.2018 16:52

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


      1. pronvit
        30.07.2018 17:08
        -1

        Да ну какое это объяснение. Во-первых, в большинстве случаев за плохими решениями (да, выбор sha512 странный) стоит раздолбайство, а не хитрый умысел. Во-вторых, думаете, если бы они действительно хотели расшифровывать данные пользователей, то выбрали бы именно такой тупой способ облегчить себе задачу, что статьи об этом уже через несколько дней после анонса?

        Понимаете, чтобы вот так говорить, что у них не End-to-End, что они собираются расшифровывать данные пользователей и вообще сотрудничают с ФСБ, надо иметь какие-то более веские доказательства, чем неудачно выбранный алгоритм хэширования. Они завтра поменяют в одной строчке его на bscrypt/scrypt, и какие будут ваши аргументы?


        1. powerman
          30.07.2018 17:28
          +1

          Раздолбайство — это действительно более частая причина. Но есть нюансы: телеграм уже довольно много работал со сложной криптографией (так что его разработчики гарантированно в теме), и обсуждаемый Passport позиционируется как продукт ориентированный на безопасность/E2E/все дела (так что раздолбайство на таком уровне при его разработке — это для репутации ещё хуже, или по крайней мере ничем не лучше). Всё это вместе вызывает сильные сомнения в том, что дело в раздолбайстве, хотя полностью такой вариант исключить тоже нельзя.


  1. Laney1
    30.07.2018 15:42

    Будете пользоваться Telegram Passport?

    Буду. У меня и без телеграма все пароли — случайные строки из 20+ символов. Удачной дешифровки)


    1. devpony
      30.07.2018 16:04

      Дело не в сложности хэша, а в отношении к пользователям и их персональным данным.


    1. springimport
      30.07.2018 16:10

      А алфавит какой?


      1. tvr
        30.07.2018 18:11
        +2

        Клингонский, я полагаю.


  1. Myosotis
    30.07.2018 15:58
    +1

    и первый байт расшифрованного текста, который из-за использования JSON будет всегда "{" или "[".

    Вот это просто facepalm. Для повышения безопасности можно добавлять к каждому сообщению рандомные байты в начало, а при дешифровании сообщения они бы отметались. Например, первый байт = количество случайных байт, и далее случайные байты.


    1. YourChief
      30.07.2018 23:58

      Такая себе мера. Знание этой закономерности наоборот упрощает проверку ключа. Чтобы не иметь проблем с блочными шифрами и всякими паддинг ораклами, надежнее всего использовать CTR-режимы блочных шифров (или же сразу GCM).

      Конкретно здесь самая большая проблема в выведении ключа из пароля. Если бы использовался PBKDF2 или argon с разумным количеством итераций, такой ключ был бы достаточно надежным (при условии, конечно, что пароль хотя бы не словарный).


  1. NekoSin4eG
    30.07.2018 16:15

    Немного исправлю комментарий.

    Если ввести данный пароль для доступа в Passport неправильно три раза, то происходит блокировка доступа к Passport на много часов. Следовательно, это затруднит брутфорс, но это не отменяет того, что вы написали в посте.


    1. Scratch Автор
      30.07.2018 16:16

      расшифровка происходит локально на клиенте, а не в облаке, так что все эти блокировки лишь видимость защиты


  1. Sabubu
    30.07.2018 17:37
    +1

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

    Что мешает серверу Телеграм прикинуться «сторонним сервисом», послать свой открытый ключ, получить перс. данные, и затем уже переслать их стороннему сервису?


    1. Scratch Автор
      30.07.2018 17:52
      +3

      ничего


    1. AC130
      30.07.2018 17:57

      Вот кстати интересный вопрос. Вероятно, открытый ключ стороннего сервиса должен предоставляться не ТГ, а самим сервисом, к примеру при редиректе в ТГ в параметрах Урла указывать ссылку на свой ключ (возможно такое вообще?)


      1. arandomic
        30.07.2018 19:53

        Ну очевидная (и скорее всего неправильная) реализация:
        1. ТГ выступает в роли автоматизированного дропбокса
        2. Вы своим открытым ключом шифруете свои данные и заливаете в ТГ.
        3. При авторизации в стороннем сервисе (СС):
        3.1. СС отдает вам свой открытый ключ напрямую (без посредничества ТГ) как? А хз — это один из самых сложных моментов в таких схемах.

        3.2 Вы выкачиваете у телеграмма свои данные себе (не все, а только те, что нужны СС)
        3.3. Расшифровываете их своим закрытым ключом, шифруете открытым ключом СС, отдаете обратно зашифрованные данные ТГ
        3.4. ТГ отдает зашифрованные данные СС, они их там своим закрытым ключом расшифровывают.

        Зачем в этой схеме ТГ? А не знаю.


        1. Scratch Автор
          30.07.2018 19:58

          я добавил в конце статьи бонус, это классическая MITM атака


          1. iig
            30.07.2018 22:10

            Таки да. Если субьекту Х нужно лично предоставить свои персональные данные сервису У — посредник не нужен.


            1. Wesha
              31.07.2018 00:16
              +1


          1. antanubis
            31.07.2018 14:40

            А где бонус?


            1. Scratch Автор
              31.07.2018 15:21

              не подтвердился, пришлось убрать


  1. wolfparanoya
    30.07.2018 17:52

    Вот всегда интересно было, а почему не делает задержку хотя бы в 0.01с до проверки следующего введенного пароля? Это убило бы брутфорс. Понимаю, что есть какие-то объективное причины так делать, но все же почему?


    1. Scratch Автор
      30.07.2018 17:52

      потому что проверка пароля происходит на клиенте, а не на сервере


  1. snow28609
    30.07.2018 17:52
    +5

    Уже не первый раз большие компании вводят в заблуждение не сильно разбирающихся в программировании людей, а затем миллионы документов совершенно случайно оказываются слиты в сеть. Через месець-два после показушной борьбы РосКомНадзора Телеграм начинает собирать личные данные миллионов своих пользователей говоря что это самый удобный и безопасный метод аутентификации. Слишком это хорошо что бы быть правдой, я лично считаю что не нужно никому доверять сохранность своих персональных данных особенно если тебе это не так уж часто и нужно


    1. Pydeg
      30.07.2018 19:16
      +3

      Мне кажется, гораздо большей проблемой являются сервисы, которые запрашивают такие данные и то, как они их потом хранят. Реализации Телеграма мы все можем устроить аудит, а что там у сервиса, для которого требуется такая аутентификация мы не знаем, может они вообще все в плентексте хранят или в открытом бакете s3 (уже не один случай такой был)


      1. springimport
        30.07.2018 20:41

        Да, главное что «делу дали ход» и вопрос времени когда появится качественное решение и все перейдут на него.


  1. arandomic
    30.07.2018 20:00

    Можно попробовать выпустить альтернативный клиент + обертку над API
    В клиенте перед тем как шифровать всё телеграмовским алгоритмом — шифровать открытым ключом.

    На стороне стороннего сервиса в обертке расшифровывать.

    Только придется думать о независимом от телеграмма канале передачи открытого ключа от стороннего сервиса клиенту.

    Хотя… *картинка с троллейбусом*


    1. sumanai
      30.07.2018 21:39

      Зачем тогда вообще тут паспорт телеграма?


  1. Alex_Q
    30.07.2018 21:04
    +8

    немного оффтоп:
    В голове выстроился монолог: «Привет! Я Павел Дуров, криптоанархист в изгнании, кладущий болт на правительства. Нет тотальному контролю! Да приватности! А теперь пришлите мне сканы своих паспортов.»


  1. xcore78
    31.07.2018 01:15
    +3

    С чего начинается хороший учебник/курс по криптографии:

    «Никогда не используйте изобретённый вами прорывной/эффективный/оригинальный метод шифрования в системах, единственной целью которых не является удовлетворение вашего любопытства».

    Дополнение к написанному: «И свои собственные реализации известных алгоритмов тоже не пишите, ограничьтесь аудитом используемых библиотек и тщательно проверяйте обновления, если вы можете себе это позволить».


  1. ageyev
    31.07.2018 01:21

    В двух словах, как работает Passport.

    Вы локально с помощью пароля шифруете свои персональные данные (имя, email, скан паспорта, другие документы).
    Зашифрованные данные + метаинформация загружаются в облако Telegram.
    Когда нужно авторизоваться на сервисе, клиент скачивает данные из облака, расшифровывает их паролем, перешифровывает на публичный ключ того сервиса, который запросил информацию, и отправляет.


    а в чем разница с просто зашифровать публичным ключем того сервиса, который запросил информацию и отправить :)?

    Например схема «зашифровать своим публичным ключем и разместить в dropbox, google drive etc., а потом скачать данные из облака и перешифровать» кажеться несколько более разумной.

    И самый главный вопрос: как это все помогает идентифицировать пользователя?
    Что мешает послать «сервису который запросил» данные и паспорт совсем не те которые загружены в телеграм?


  1. Ipeacocks
    31.07.2018 01:31

    Я постоянно пользуюсь Сигналом, по соображениям приватности. Но по надежности и скорости работы он так себе: иногда сообщения не приходят (редко), закачивается история например на десктопный клиент долго (я понимаю, что это особенность именно end2end), десктопный клиент медленный на Электроне.

    Да и использование номера телефона как uid так себе идея, не очень анонимно. Но мне в принципе эта идея и тенденция не очень нравится.


    1. forcam
      31.07.2018 11:49

      Что-то он какой-то уж очень «надежный»)

      17 Мая, 2018
      Новая уязвимость (CVE-2018-11101) была обнаружена той же командой исследователей, что и предыдущая (CVE-2018-10994), и является не менее опасной. С ее помощью удаленный атакующий может внедрить вредоносный код в используемое жертвой десктопное приложение Signal, лишь отправив сообщение, при этом какое-либо участие пользователя не требуется.
      Единственная разница между двумя уязвимостями заключается в том, что первая из них связана с функцией обработки ссылок, которыми пользователи обмениваются в чате, а вторая – с функцией обработки пересылаемых сообщений (когда в качестве ответа пользователь пересылает собеседнику свое же предыдущее сообщение).
      Для эксплуатации новой уязвимости злоумышленнику достаточно лишь отправить жертве в сообщении HTML- или javascript-код, а затем переслать его с произвольным текстом. Когда пользователь уязвимой версии Signal получит пересланное сообщение, начнется автоматическое выполнение кода без какого-либо его участия.
      Исследователи разработали PoC-эксплоит, позволивший им путем отправки сообщения удаленно похитить все беседы жертвы в Signal в незашифрованном виде. Приложение использует так называемое сквозное шифрование, однако из-за уязвимости оно становится полностью бесполезным, так как доступ к перепискам пользователей может получить третья сторона.
      Подробнее: www.securitylab.ru/news/493332.php


  1. NIKOSV
    31.07.2018 01:53

    Тут такое дело, те, у кого пароли на 4-5 символов, никому не интересны и уж точно никто не будет тратится на видеокарты и время чтобы узнать номер паспорта или что-то еще. Есть способы попроще это сделать. Ну а важные персоны либо не будут пользоваться вообще, либо будут использовать нормальные пароли которые хер сломаешь. Плюс двухфакторную аутентификацию никто не отменял.


    1. pesh1983
      31.07.2018 09:23
      +1

      Это пока там только паспортные данные. Потом, если система взлетит и станет популярной, ничто не мешает расширить функционал и типы хранимых данных (кредитки, ключи и т. д.). "А почему бы и нет, система ведь надёжная, вон сколько народу пользуется и не опубликовано было взломов". А это уже далеко не безобидные паспортные данные. Полагаться на авось не стоит, даже когда данные не особо важные по вашему мнению. Есть уже давно проверенные алгоритмы шифрования с высокой криптостойкостью. Не нужно городить велосипед, чья криптостойкость ничем и никем не подтверждена. Ни к чему хорошему это, как правило, не приводит.


      1. iig
        31.07.2018 10:48
        +1

        Тут проблема даже не в криптостойкости выбранного шифра. Какая разница, каким именно способом зашифрованы и где именно хранятся персональные данные, если все равно они будут передаваться третьей стороне?
        Что знают двое — знает и свинья.



  1. lotse8
    31.07.2018 10:08

    Мой принцип простой. Чем меньше моих персональных данных хранится по чужим сервисам, тем проще будет моя жизнь. Слишком доверчивые граждане могут внезапно получить ненужные проблемы. Если уж так надо, что ну никак, тогда можно сообщить. А так заранее, а вдруг когда-нибудь кому-нибудь это понадобится — это зачем? Для увеличения рисков утечки?
    Не агитирую, каждый действует на свое усмотрение. Не надо только потом громко кричать, что кто-то куда-то слил ваши персональные данные.
    «Буратино, ты сам себе враг» (с) Базилио


  1. KoToSveen
    01.08.2018 02:29

    Что получается? Вместо учётки на госуслугах будет учётка в Telegram Passport?


  1. orion76
    01.08.2018 06:46
    +1

    Если свои «секретные» данные мне необходимо передавать «вторым» лицам, то смысла в их шифровании не вижу сооовсем…


    1. VolCh
      01.08.2018 20:10

      Шифровать от третьих лиц, а вторые несут отвественность за разглашение или утечки. В теории.


      1. iig
        02.08.2018 11:19

        Тогда зачем нужны третьи лица? Еще в прошлом веке придуманы всякие SSL/TLS, сертификаты, цифровые подписи… Все для того, чтобы Алиса и Боб могли обмениваться сообщениями, а Элвис не мог их читать. И это до сих пор работает!


  1. Leonid032
    01.08.2018 07:30

    Пожалуй, самый обидный code review для разработчиков Telegram