Помните бэкдор в секретных чатах? Вот этот: https://habrahabr.ru/post/206900/ После такого фиаско Николай Дуров aka @W_K слился с Хабра, чтобы не отвечать на неудобные вопросы о том, как это попало в код и кто принял это решение.
Так вот, секретные чаты и звонки всё также забекдорены. При каждом звонке клиент запрашивает параметры Диффи-Хеллмана с помощью API https://core.telegram.org/method/messages.getDhConfig и проверяет его *вероятностным тестом*. Во всех приличных реализациях параметры генерируются один раз и зашиваются в протокол. Очевидно, не один я такой умный и могу заглянуть в документацию к API. Немного поискав, нашел статью, которой уже почти год: https://www.atraining.ru/telegram-mtproto-2-0-security-questions/ И да, кажется автор это *тот самый* Руслан Карманов, но это не так уж важно, главное что всё по делу написано. И о том же вскользь упомянуто в https://telegra.ph/Manifest-protiv-Telegram-11-19-2
Вот вероятностная проверка:
https://github.com/DrKLO/Telegram/blob/e397bd9afdfd9315bf099f78a903f8754d297d7a/TMessagesProj/src/main/java/org/telegram/messenger/Utilities.java#L163
Вот её вызов, больше ничего не проверяется:
https://github.com/DrKLO/Telegram/blob/e397bd9afdfd9315bf099f78a903f8754d297d7a/TMessagesProj/src/main/java/org/telegram/messenger/voip/VoIPService.java#L283
В идеале бы ещё в качестве proof of concept сгенерировать плохие параметры, которые пройдут тест.