Следует ли хранить Telegram api_hash в секрете?

Я думаю, что я немного сбит с толку о том, что такое api_id и api_hash. Я делаю клиентский инструмент для телеграмм, используя telethon. Я прочитал в документации по телетону, что должен хранить секрет api_hash. Это правда? Но тогда как я буду распространять свой исходный код? Оставляя пустыми api_id и api_hash? И если это так, то я могу безопасно использовать мой api_id и хэш в распределенном двоичном файле?

3 ответа

Официально ответ всегда держать в секрете.

Но на самом деле, даже официальный клиент Telegram, вы можете получить API ID и хеш, декомпилируя его, так что это не обязательно держать в секрете:)

Ни за что. Я декомпилировал Telegram X, потому что он использует tdlib и я знаю, куда подключать отладчик. После этого я искал извлеченный API через google и получил все остальные ключи.

Например API официальных приложений https://blb.team/threads/app-hash-app-id-oficialnyx-klientov.294/

Краткий ответ: вы можете поделиться этими данными с общественностью. Однако это не рекомендуется.

Более длинный ответ: Отвечая на прямой вопрос, если вы собираетесь распространять свой код для широкой публики (например, размещать его на GitHub как с открытым исходным кодом), вам рекомендуется держать его в секрете, пока вы не хотите, чтобы кто-либо пытался войдите в систему или рассылайте спам на учетную запись, из которой были получены api_id и api_hash.

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

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

Другие вопросы по тегам