errors
- All error messages and codes for each method (object).
Keys: Error codes as strings (numeric strings)
Values: All error messages for each method (object)
Keys: Error messages (string)
-Values: An array of methods which may emit this error (array of strings)
+Values: An array of methods which may emit this error (array of strings, may be empty for errors that can be emitted by any method)
@@ -164,6 +164,7 @@ Also note that by session we mean a logged-in session identified by an Error Example:
FLOOD_WAIT_X: A wait of X seconds is required (where X is a number)
+FLOOD_PREMIUM_WAIT_X: A wait of X seconds is required (where X is a number); the user may also purchase a Telegram Premium subscription to remove this limitation.
500 INTERNAL
An internal server error occurred while a request was being processed; for example, there was a disruption while accessing a database or file storage.
diff --git a/data/web/corefork.telegram.org/method/account.createBusinessChatLink.html b/data/web/corefork.telegram.org/method/account.createBusinessChatLink.html
index 614422bdb7..b37ae913c3 100644
--- a/data/web/corefork.telegram.org/method/account.createBusinessChatLink.html
+++ b/data/web/corefork.telegram.org/method/account.createBusinessChatLink.html
@@ -12,8 +12,7 @@ link
InputBusinessChatLink
Result
-BusinessChatLink
-Bots can use this method">
+BusinessChatLink">
+BusinessChatLink">
@@ -93,8 +91,7 @@ Bots can use this method">
Result
-BusinessChatLink
- Bots can use this method
+BusinessChatLink
diff --git a/data/web/corefork.telegram.org/method/account.deleteBusinessChatLink.html b/data/web/corefork.telegram.org/method/account.deleteBusinessChatLink.html
index 8b54e45c2a..c4eff530a0 100644
--- a/data/web/corefork.telegram.org/method/account.deleteBusinessChatLink.html
+++ b/data/web/corefork.telegram.org/method/account.deleteBusinessChatLink.html
@@ -13,7 +13,12 @@ string
Result
Bool
-Bots can use this method">
+Possible errors
+Code
+Type
+Description
+400
+CHATLINK_SLUG_EMPTY…">
+Possible errors
+Code
+Type
+Description
+400
+CHATLINK_SLUG_EMPTY…">
@@ -95,7 +105,23 @@ Bots can use this method">
Result
Bool
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+CHATLINK_SLUG_EMPTY
+The specified slug is empty.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/account.disablePeerConnectedBot.html b/data/web/corefork.telegram.org/method/account.disablePeerConnectedBot.html
index e3b186e0a7..50c12e0f5a 100644
--- a/data/web/corefork.telegram.org/method/account.disablePeerConnectedBot.html
+++ b/data/web/corefork.telegram.org/method/account.disablePeerConnectedBot.html
@@ -12,8 +12,7 @@ peer
InputPeer
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -94,8 +92,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.editBusinessChatLink.html b/data/web/corefork.telegram.org/method/account.editBusinessChatLink.html
index a50edf80e4..b3173e9c68 100644
--- a/data/web/corefork.telegram.org/method/account.editBusinessChatLink.html
+++ b/data/web/corefork.telegram.org/method/account.editBusinessChatLink.html
@@ -16,7 +16,8 @@ InputBusinessChatLink
Result
BusinessChatLink
-Bots can use this method">
+Possible errors
+Code…">
+Possible errors
+Code…">
@@ -105,7 +107,23 @@ Bots can use this method">
Result
BusinessChatLink
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+CHATLINK_SLUG_EMPTY
+The specified slug is empty.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/account.getBotBusinessConnection.html b/data/web/corefork.telegram.org/method/account.getBotBusinessConnection.html
index b304b7ca56..bc39fffc9d 100644
--- a/data/web/corefork.telegram.org/method/account.getBotBusinessConnection.html
+++ b/data/web/corefork.telegram.org/method/account.getBotBusinessConnection.html
@@ -13,7 +13,12 @@ string
Result
Updates
-Bots can use this method">
+Possible errors
+Code
+Type
+Description
+400
+CONNE…">
+Possible errors
+Code
+Type
+Description
+400
+CONNE…">
@@ -100,6 +110,23 @@ Bots can use this method">
Result
Updates
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+CONNECTION_ID_INVALID
+The specified connection ID is invalid.
+
+
+
Bots can use this method
diff --git a/data/web/corefork.telegram.org/method/account.getBusinessChatLinks.html b/data/web/corefork.telegram.org/method/account.getBusinessChatLinks.html
index a1253d0b7d..315ff5c175 100644
--- a/data/web/corefork.telegram.org/method/account.getBusinessChatLinks.html
+++ b/data/web/corefork.telegram.org/method/account.getBusinessChatLinks.html
@@ -7,15 +7,13 @@
+account.BusinessChatLinks">
+account.BusinessChatLinks">
@@ -68,8 +66,7 @@ Bots can use this method">
Parameters
This constructor does not require any parameters.
Result
-account.BusinessChatLinks
- Bots can use this method
+account.BusinessChatLinks
diff --git a/data/web/corefork.telegram.org/method/account.getConnectedBots.html b/data/web/corefork.telegram.org/method/account.getConnectedBots.html
index 85d7f79482..a5684bd130 100644
--- a/data/web/corefork.telegram.org/method/account.getConnectedBots.html
+++ b/data/web/corefork.telegram.org/method/account.getConnectedBots.html
@@ -7,15 +7,13 @@
+account.ConnectedBots">
+account.ConnectedBots">
@@ -68,8 +66,7 @@ Bots can use this method">
Parameters
This constructor does not require any parameters.
Result
-account.ConnectedBots
- Bots can use this method
+account.ConnectedBots
diff --git a/data/web/corefork.telegram.org/method/account.getReactionsNotifySettings.html b/data/web/corefork.telegram.org/method/account.getReactionsNotifySettings.html
index 6b0177de81..17cef00d17 100644
--- a/data/web/corefork.telegram.org/method/account.getReactionsNotifySettings.html
+++ b/data/web/corefork.telegram.org/method/account.getReactionsNotifySettings.html
@@ -7,15 +7,13 @@
+ReactionsNotifySettings">
+ReactionsNotifySettings">
@@ -68,8 +66,7 @@ Bots can use this method">
Parameters
This constructor does not require any parameters.
Result
-ReactionsNotifySettings
- Bots can use this method
+ReactionsNotifySettings
diff --git a/data/web/corefork.telegram.org/method/account.resolveBusinessChatLink.html b/data/web/corefork.telegram.org/method/account.resolveBusinessChatLink.html
index ec40961e4c..3a480f1d7a 100644
--- a/data/web/corefork.telegram.org/method/account.resolveBusinessChatLink.html
+++ b/data/web/corefork.telegram.org/method/account.resolveBusinessChatLink.html
@@ -13,7 +13,10 @@ string
Result
account.ResolvedBusinessChatLinks
-Bots can use this method">
+Possible errors
+Code
+Type
+Description…">
+Possible errors
+Code
+Type
+Description…">
@@ -94,7 +100,23 @@ Bots can use this method">
Result
account.ResolvedBusinessChatLinks
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+CHATLINK_SLUG_EMPTY
+The specified slug is empty.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/account.setReactionsNotifySettings.html b/data/web/corefork.telegram.org/method/account.setReactionsNotifySettings.html
index fb039e6e61..c3725d0eff 100644
--- a/data/web/corefork.telegram.org/method/account.setReactionsNotifySettings.html
+++ b/data/web/corefork.telegram.org/method/account.setReactionsNotifySettings.html
@@ -12,8 +12,7 @@ settings
ReactionsNotifySettings
Result
-ReactionsNotifySettings
-Bots can use this method">
+ReactionsNotifySettings">
+ReactionsNotifySettings">
@@ -93,8 +91,7 @@ Bots can use this method">
Result
-ReactionsNotifySettings
- Bots can use this method
+ReactionsNotifySettings
diff --git a/data/web/corefork.telegram.org/method/account.toggleConnectedBotPaused.html b/data/web/corefork.telegram.org/method/account.toggleConnectedBotPaused.html
index c64811d706..1037244606 100644
--- a/data/web/corefork.telegram.org/method/account.toggleConnectedBotPaused.html
+++ b/data/web/corefork.telegram.org/method/account.toggleConnectedBotPaused.html
@@ -15,8 +15,7 @@ paused
Bool
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -105,8 +103,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.toggleSponsoredMessages.html b/data/web/corefork.telegram.org/method/account.toggleSponsoredMessages.html
index 6309db3867..155dee7bff 100644
--- a/data/web/corefork.telegram.org/method/account.toggleSponsoredMessages.html
+++ b/data/web/corefork.telegram.org/method/account.toggleSponsoredMessages.html
@@ -12,8 +12,7 @@ enabled
Bool
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -94,8 +92,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.updateBirthday.html b/data/web/corefork.telegram.org/method/account.updateBirthday.html
index 72d958392f..0ce0949eb5 100644
--- a/data/web/corefork.telegram.org/method/account.updateBirthday.html
+++ b/data/web/corefork.telegram.org/method/account.updateBirthday.html
@@ -15,8 +15,7 @@ birthday
flags.0?Birthday
Result
-Bool
-Bots…">
+Bool">
+Bool">
@@ -105,8 +103,7 @@ Bots…">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.updateBusinessAwayMessage.html b/data/web/corefork.telegram.org/method/account.updateBusinessAwayMessage.html
index 4a47d5514c..e1698bd599 100644
--- a/data/web/corefork.telegram.org/method/account.updateBusinessAwayMessage.html
+++ b/data/web/corefork.telegram.org/method/account.updateBusinessAwayMessage.html
@@ -101,8 +101,7 @@ Result…">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.updateBusinessGreetingMessage.html b/data/web/corefork.telegram.org/method/account.updateBusinessGreetingMessage.html
index dc443850d5..592058fd79 100644
--- a/data/web/corefork.telegram.org/method/account.updateBusinessGreetingMessage.html
+++ b/data/web/corefork.telegram.org/method/account.updateBusinessGreetingMessage.html
@@ -97,8 +97,7 @@ flags.0?InputBusinessGreetingMessage…">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.updateBusinessIntro.html b/data/web/corefork.telegram.org/method/account.updateBusinessIntro.html
index 79f4a7291d..aa563f2fda 100644
--- a/data/web/corefork.telegram.org/method/account.updateBusinessIntro.html
+++ b/data/web/corefork.telegram.org/method/account.updateBusinessIntro.html
@@ -15,7 +15,7 @@ intro
flags.0?InputBusinessIntro
Result
-Bool…">
+Bool">
+Bool">
@@ -103,8 +103,7 @@ Bool…">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.updateBusinessLocation.html b/data/web/corefork.telegram.org/method/account.updateBusinessLocation.html
index d35dc87341..3f4f93c85c 100644
--- a/data/web/corefork.telegram.org/method/account.updateBusinessLocation.html
+++ b/data/web/corefork.telegram.org/method/account.updateBusinessLocation.html
@@ -108,8 +108,7 @@ flags.0?string…">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.updateBusinessWorkHours.html b/data/web/corefork.telegram.org/method/account.updateBusinessWorkHours.html
index 70c7826dcb..c594f07ffe 100644
--- a/data/web/corefork.telegram.org/method/account.updateBusinessWorkHours.html
+++ b/data/web/corefork.telegram.org/method/account.updateBusinessWorkHours.html
@@ -97,8 +97,7 @@ flags.0?BusinessWorkHours…">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/account.updateConnectedBot.html b/data/web/corefork.telegram.org/method/account.updateConnectedBot.html
index b9c5d13188..c4aa14d396 100644
--- a/data/web/corefork.telegram.org/method/account.updateConnectedBot.html
+++ b/data/web/corefork.telegram.org/method/account.updateConnectedBot.html
@@ -123,8 +123,7 @@ flags.1?true…">
Result
-Updates
- Bots can use this method
+Updates
diff --git a/data/web/corefork.telegram.org/method/account.updatePersonalChannel.html b/data/web/corefork.telegram.org/method/account.updatePersonalChannel.html
index 77b1f1ebff..d54a578967 100644
--- a/data/web/corefork.telegram.org/method/account.updatePersonalChannel.html
+++ b/data/web/corefork.telegram.org/method/account.updatePersonalChannel.html
@@ -12,8 +12,7 @@ channel
InputChannel
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -94,8 +92,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/auth.reportMissingCode.html b/data/web/corefork.telegram.org/method/auth.reportMissingCode.html
index f612c4d7ae..3fc024aadf 100644
--- a/data/web/corefork.telegram.org/method/auth.reportMissingCode.html
+++ b/data/web/corefork.telegram.org/method/auth.reportMissingCode.html
@@ -18,8 +18,7 @@ mnc
string
Result
-Bool
-Bots can use this…">
+Bool">
+Bool">
@@ -116,8 +114,7 @@ Bots can use this…">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/auth.requestFirebaseSms.html b/data/web/corefork.telegram.org/method/auth.requestFirebaseSms.html
index f564770bdc..d530ff5261 100644
--- a/data/web/corefork.telegram.org/method/auth.requestFirebaseSms.html
+++ b/data/web/corefork.telegram.org/method/auth.requestFirebaseSms.html
@@ -115,6 +115,11 @@
400
+PHONE_CODE_EMPTY
+phone_code is missing.
+
+
+400
PHONE_NUMBER_INVALID
The phone number is invalid.
diff --git a/data/web/corefork.telegram.org/method/bots.getBotInfo.html b/data/web/corefork.telegram.org/method/bots.getBotInfo.html
index 742c3e7de7..dada999064 100644
--- a/data/web/corefork.telegram.org/method/bots.getBotInfo.html
+++ b/data/web/corefork.telegram.org/method/bots.getBotInfo.html
@@ -4,10 +4,10 @@
bots.getBotInfo
-
+
-
+
@@ -99,6 +99,11 @@
400
+BOT_INVALID
+This is not a valid bot.
+
+
+400
LANG_CODE_INVALID
The specified language code is invalid.
diff --git a/data/web/corefork.telegram.org/method/bots.toggleUsername.html b/data/web/corefork.telegram.org/method/bots.toggleUsername.html
index 975c23195a..673f48b12d 100644
--- a/data/web/corefork.telegram.org/method/bots.toggleUsername.html
+++ b/data/web/corefork.telegram.org/method/bots.toggleUsername.html
@@ -104,8 +104,7 @@
This is not a valid bot.
-
- Bots can use this method
+
diff --git a/data/web/corefork.telegram.org/method/channels.getChannelRecommendations.html b/data/web/corefork.telegram.org/method/channels.getChannelRecommendations.html
index abc17002a9..31c9317ee1 100644
--- a/data/web/corefork.telegram.org/method/channels.getChannelRecommendations.html
+++ b/data/web/corefork.telegram.org/method/channels.getChannelRecommendations.html
@@ -98,6 +98,11 @@
CHANNEL_INVALID
The provided channel is invalid.
+
+400
+CHANNEL_PRIVATE
+You haven't joined this channel/supergroup.
+
diff --git a/data/web/corefork.telegram.org/method/channels.getSendAs.html b/data/web/corefork.telegram.org/method/channels.getSendAs.html
index 6ac6885df1..1800aaab60 100644
--- a/data/web/corefork.telegram.org/method/channels.getSendAs.html
+++ b/data/web/corefork.telegram.org/method/channels.getSendAs.html
@@ -89,6 +89,11 @@
400
+CHANNEL_INVALID
+The provided channel is invalid.
+
+
+400
CHANNEL_PRIVATE
You haven't joined this channel/supergroup.
diff --git a/data/web/corefork.telegram.org/method/channels.reportSponsoredMessage.html b/data/web/corefork.telegram.org/method/channels.reportSponsoredMessage.html
index bc86186703..236a86cca9 100644
--- a/data/web/corefork.telegram.org/method/channels.reportSponsoredMessage.html
+++ b/data/web/corefork.telegram.org/method/channels.reportSponsoredMessage.html
@@ -18,7 +18,7 @@ option
bytes
Result
-channels.SponsoredMessageReportResult…">
+channels.SponsoredMessageReportResult">
+channels.SponsoredMessageReportResult">
@@ -115,8 +115,7 @@ channels.SponsoredMessageReportResult…">
Result
-channels.SponsoredMessageReportResult
- Bots can use this method
+channels.SponsoredMessageReportResult
diff --git a/data/web/corefork.telegram.org/method/channels.restrictSponsoredMessages.html b/data/web/corefork.telegram.org/method/channels.restrictSponsoredMessages.html
index bd271f09a6..9f9af831d3 100644
--- a/data/web/corefork.telegram.org/method/channels.restrictSponsoredMessages.html
+++ b/data/web/corefork.telegram.org/method/channels.restrictSponsoredMessages.html
@@ -15,8 +15,7 @@ restricted
Bool
Result
-Updates
-Bots can use this method">
+Updates">
+Updates">
@@ -110,8 +108,7 @@ Bots can use this method">
Result
-Updates
- Bots can use this method
+Updates
diff --git a/data/web/corefork.telegram.org/method/channels.searchPosts.html b/data/web/corefork.telegram.org/method/channels.searchPosts.html
index 4ad21199c0..19e1f14b91 100644
--- a/data/web/corefork.telegram.org/method/channels.searchPosts.html
+++ b/data/web/corefork.telegram.org/method/channels.searchPosts.html
@@ -129,7 +129,6 @@ Offsets for pagination…">
Result
messages.Messages
- Bots can use this method
Related pages
How to fetch results from large lists of objects.
diff --git a/data/web/corefork.telegram.org/method/channels.setBoostsToUnblockRestrictions.html b/data/web/corefork.telegram.org/method/channels.setBoostsToUnblockRestrictions.html
index 7c4d3204ef..15223ad1cc 100644
--- a/data/web/corefork.telegram.org/method/channels.setBoostsToUnblockRestrictions.html
+++ b/data/web/corefork.telegram.org/method/channels.setBoostsToUnblockRestrictions.html
@@ -15,8 +15,7 @@ boosts
int
Result
-Updates
-Bots can use this method">
+Updates">
+Updates">
@@ -110,8 +108,7 @@ Bots can use this method">
Result
-Updates
- Bots can use this method
+Updates
diff --git a/data/web/corefork.telegram.org/method/channels.setEmojiStickers.html b/data/web/corefork.telegram.org/method/channels.setEmojiStickers.html
index 662e351019..afc77621f6 100644
--- a/data/web/corefork.telegram.org/method/channels.setEmojiStickers.html
+++ b/data/web/corefork.telegram.org/method/channels.setEmojiStickers.html
@@ -15,8 +15,7 @@ stickerset
InputStickerSet
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -105,8 +103,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/channels.toggleUsername.html b/data/web/corefork.telegram.org/method/channels.toggleUsername.html
index ef166e6fee..31ecae3e2e 100644
--- a/data/web/corefork.telegram.org/method/channels.toggleUsername.html
+++ b/data/web/corefork.telegram.org/method/channels.toggleUsername.html
@@ -120,7 +120,6 @@
- Bots can use this method
Related pages
How to handle channels, supergroups, gigagroups, basic groups, and what's the difference between them.
diff --git a/data/web/corefork.telegram.org/method/chatlists.checkChatlistInvite.html b/data/web/corefork.telegram.org/method/chatlists.checkChatlistInvite.html
index d16451af29..8c9b9fe48f 100644
--- a/data/web/corefork.telegram.org/method/chatlists.checkChatlistInvite.html
+++ b/data/web/corefork.telegram.org/method/chatlists.checkChatlistInvite.html
@@ -100,7 +100,6 @@
- Bots can use this method
Related pages
Telegram clients must handle special tg:// and t.me deep links encountered in messages, link entities and in other apps by registering OS handlers.
diff --git a/data/web/corefork.telegram.org/method/contacts.exportContactToken.html b/data/web/corefork.telegram.org/method/contacts.exportContactToken.html
index 32362764fc..61a0c429ad 100644
--- a/data/web/corefork.telegram.org/method/contacts.exportContactToken.html
+++ b/data/web/corefork.telegram.org/method/contacts.exportContactToken.html
@@ -62,7 +62,6 @@
This constructor does not require any parameters.
Result
ExportedContactToken
- Bots can use this method
Related pages
Telegram clients must handle special tg:// and t.me deep links encountered in messages, link entities and in other apps by registering OS handlers.
diff --git a/data/web/corefork.telegram.org/method/contacts.getBirthdays.html b/data/web/corefork.telegram.org/method/contacts.getBirthdays.html
index b47dca393f..08aeea4fb2 100644
--- a/data/web/corefork.telegram.org/method/contacts.getBirthdays.html
+++ b/data/web/corefork.telegram.org/method/contacts.getBirthdays.html
@@ -7,15 +7,13 @@
+contacts.ContactBirthdays">
+contacts.ContactBirthdays">
@@ -68,8 +66,7 @@ Bots can use this method">
Parameters
This constructor does not require any parameters.
Result
-contacts.ContactBirthdays
- Bots can use this method
+contacts.ContactBirthdays
diff --git a/data/web/corefork.telegram.org/method/fragment.getCollectibleInfo.html b/data/web/corefork.telegram.org/method/fragment.getCollectibleInfo.html
index 0ae0c60821..9f5c0ca5c9 100644
--- a/data/web/corefork.telegram.org/method/fragment.getCollectibleInfo.html
+++ b/data/web/corefork.telegram.org/method/fragment.getCollectibleInfo.html
@@ -13,7 +13,9 @@ InputCollectible
Result
fragment.CollectibleInfo
-Bots can use this method">
+Possible errors
+Code
+Type…">
+Possible errors
+Code
+Type…">
@@ -94,7 +98,28 @@ Bots can use this method">
Result
fragment.CollectibleInfo
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+COLLECTIBLE_INVALID
+The specified collectible is invalid.
+
+
+400
+COLLECTIBLE_NOT_FOUND
+The specified collectible could not be found.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/help.getTimezonesList.html b/data/web/corefork.telegram.org/method/help.getTimezonesList.html
index da696f143f..81ed9443dd 100644
--- a/data/web/corefork.telegram.org/method/help.getTimezonesList.html
+++ b/data/web/corefork.telegram.org/method/help.getTimezonesList.html
@@ -13,7 +13,7 @@ int
Hash for pagination, for more info click here
Result
help.TimezonesList
-Bots…">
+Related…">
+Related…">
@@ -95,7 +95,6 @@ Bots…">
Result
help.TimezonesList
- Bots can use this method
Related pages
How to fetch results from large lists of objects.
diff --git a/data/web/corefork.telegram.org/method/messages.checkQuickReplyShortcut.html b/data/web/corefork.telegram.org/method/messages.checkQuickReplyShortcut.html
index 6c69162fd3..69d5c908f9 100644
--- a/data/web/corefork.telegram.org/method/messages.checkQuickReplyShortcut.html
+++ b/data/web/corefork.telegram.org/method/messages.checkQuickReplyShortcut.html
@@ -12,8 +12,7 @@ shortcut
string
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -94,8 +92,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/messages.deleteFactCheck.html b/data/web/corefork.telegram.org/method/messages.deleteFactCheck.html
index 3c534daf38..f76453f622 100644
--- a/data/web/corefork.telegram.org/method/messages.deleteFactCheck.html
+++ b/data/web/corefork.telegram.org/method/messages.deleteFactCheck.html
@@ -15,8 +15,7 @@ msg_id
int
Result
-Updates
-Bots can use this method">
+Updates">
+Updates">
@@ -110,8 +108,7 @@ Bots can use this method">
Result
-Updates
- Bots can use this method
+Updates
diff --git a/data/web/corefork.telegram.org/method/messages.deleteQuickReplyMessages.html b/data/web/corefork.telegram.org/method/messages.deleteQuickReplyMessages.html
index 03bac731d1..38a1a43ad4 100644
--- a/data/web/corefork.telegram.org/method/messages.deleteQuickReplyMessages.html
+++ b/data/web/corefork.telegram.org/method/messages.deleteQuickReplyMessages.html
@@ -16,7 +16,10 @@ Vector<int>
Result
Updates
-Bots can use this method">
+Possible errors
+Code
+Type
+Description…">
+Possible errors
+Code
+Type
+Description…">
@@ -111,7 +117,23 @@ Bots can use this method">
Result
Updates
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+SHORTCUT_INVALID
+The specified shortcut is invalid.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/messages.deleteQuickReplyShortcut.html b/data/web/corefork.telegram.org/method/messages.deleteQuickReplyShortcut.html
index 89240eb4f3..133b2bdb65 100644
--- a/data/web/corefork.telegram.org/method/messages.deleteQuickReplyShortcut.html
+++ b/data/web/corefork.telegram.org/method/messages.deleteQuickReplyShortcut.html
@@ -13,7 +13,12 @@ int
Result
Bool
-Bots can use this method">
+Possible errors
+Code
+Type
+Description
+400
+SHORTCUT_INVALID…">
+Possible errors
+Code
+Type
+Description
+400
+SHORTCUT_INVALID…">
@@ -95,7 +105,23 @@ Bots can use this method">
Result
Bool
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+SHORTCUT_INVALID
+The specified shortcut is invalid.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/messages.deleteScheduledMessages.html b/data/web/corefork.telegram.org/method/messages.deleteScheduledMessages.html
index af8f54b4aa..40c6ff1486 100644
--- a/data/web/corefork.telegram.org/method/messages.deleteScheduledMessages.html
+++ b/data/web/corefork.telegram.org/method/messages.deleteScheduledMessages.html
@@ -99,6 +99,11 @@
+403
+MESSAGE_DELETE_FORBIDDEN
+You can't delete one of the messages you tried to delete, most likely because it is a service message.
+
+
400
PEER_ID_INVALID
The provided peer id is invalid.
diff --git a/data/web/corefork.telegram.org/method/messages.editChatTitle.html b/data/web/corefork.telegram.org/method/messages.editChatTitle.html
index c8d205d282..775eafb8c0 100644
--- a/data/web/corefork.telegram.org/method/messages.editChatTitle.html
+++ b/data/web/corefork.telegram.org/method/messages.editChatTitle.html
@@ -100,6 +100,11 @@
400
+CHAT_ADMIN_REQUIRED
+You must be an admin in this chat to do this.
+
+
+400
CHAT_ID_INVALID
The provided chat id is invalid.
diff --git a/data/web/corefork.telegram.org/method/messages.editFactCheck.html b/data/web/corefork.telegram.org/method/messages.editFactCheck.html
index 1cddd1428e..39b900368f 100644
--- a/data/web/corefork.telegram.org/method/messages.editFactCheck.html
+++ b/data/web/corefork.telegram.org/method/messages.editFactCheck.html
@@ -18,8 +18,7 @@ text
TextWithEntities
Result
-Updates
-Bots can use this…">
+Updates">
+Updates">
@@ -121,8 +119,7 @@ Bots can use this…">
Result
-Updates
- Bots can use this method
+Updates
diff --git a/data/web/corefork.telegram.org/method/messages.editMessage.html b/data/web/corefork.telegram.org/method/messages.editMessage.html
index 8ce52b5fa6..352bd1314e 100644
--- a/data/web/corefork.telegram.org/method/messages.editMessage.html
+++ b/data/web/corefork.telegram.org/method/messages.editMessage.html
@@ -333,6 +333,11 @@
USER_BANNED_IN_CHANNEL
You're banned from sending messages in supergroups/channels.
+
+400
+WEBPAGE_NOT_FOUND
+A preview for the specified webpage url
could not be generated.
+
Bots can use this method
diff --git a/data/web/corefork.telegram.org/method/messages.editQuickReplyShortcut.html b/data/web/corefork.telegram.org/method/messages.editQuickReplyShortcut.html
index 0ae2e0ed41..a6a55d9f28 100644
--- a/data/web/corefork.telegram.org/method/messages.editQuickReplyShortcut.html
+++ b/data/web/corefork.telegram.org/method/messages.editQuickReplyShortcut.html
@@ -16,7 +16,10 @@ string
Result
Bool
-Bots can use this method">
+Possible errors
+Code
+Type
+Description…">
+Possible errors
+Code
+Type
+Description…">
@@ -106,7 +112,23 @@ Bots can use this method">
Result
Bool
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+SHORTCUT_INVALID
+The specified shortcut is invalid.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/messages.forwardMessages.html b/data/web/corefork.telegram.org/method/messages.forwardMessages.html
index aa29a6ce0b..634f569f42 100644
--- a/data/web/corefork.telegram.org/method/messages.forwardMessages.html
+++ b/data/web/corefork.telegram.org/method/messages.forwardMessages.html
@@ -304,6 +304,11 @@
The provided peer id is invalid.
+406
+PRIVACY_PREMIUM_REQUIRED
+You need a Telegram Premium subscription to send a message to this user.
+
+
400
QUIZ_ANSWER_MISSING
You can forward a quiz while hiding the original author only after choosing an option in the quiz.
@@ -392,7 +397,9 @@
Groups can be associated to a channel as a discussion group, to allow users to discuss about posts.
-How to handle API return errors correctly.
+How to handle API return errors correctly.
+
+Telegram Premium is an optional subscription service that unlocks additional exclusive client-side and API-side features, while helping support the development of the app.
diff --git a/data/web/corefork.telegram.org/method/messages.getAvailableEffects.html b/data/web/corefork.telegram.org/method/messages.getAvailableEffects.html
index e399721a80..56d4731a26 100644
--- a/data/web/corefork.telegram.org/method/messages.getAvailableEffects.html
+++ b/data/web/corefork.telegram.org/method/messages.getAvailableEffects.html
@@ -93,7 +93,6 @@ messages.AvailableEffects…">
Result
messages.AvailableEffects
- Bots can use this method
Related pages
How to fetch results from large lists of objects.
diff --git a/data/web/corefork.telegram.org/method/messages.getBotApp.html b/data/web/corefork.telegram.org/method/messages.getBotApp.html
index 46caf81396..8dc6ef5cf5 100644
--- a/data/web/corefork.telegram.org/method/messages.getBotApp.html
+++ b/data/web/corefork.telegram.org/method/messages.getBotApp.html
@@ -94,9 +94,19 @@
400
+BOT_APP_BOT_INVALID
+The bot_id passed in the inputBotAppShortName constructor is invalid.
+
+
+400
BOT_APP_INVALID
The specified bot app is invalid.
+
+400
+BOT_APP_SHORTNAME_INVALID
+The specified bot app short name is invalid.
+
Related pages
diff --git a/data/web/corefork.telegram.org/method/messages.getEmojiStickerGroups.html b/data/web/corefork.telegram.org/method/messages.getEmojiStickerGroups.html
index 42bf7b1cde..99a018edfd 100644
--- a/data/web/corefork.telegram.org/method/messages.getEmojiStickerGroups.html
+++ b/data/web/corefork.telegram.org/method/messages.getEmojiStickerGroups.html
@@ -13,7 +13,7 @@ int
Hash for pagination, for more info click here
Result
messages.EmojiGroups
-Bots…">
+Related…">
+Related…">
@@ -95,7 +95,6 @@ Bots…">
Result
messages.EmojiGroups
- Bots can use this method
Related pages
How to fetch results from large lists of objects.
diff --git a/data/web/corefork.telegram.org/method/messages.getFactCheck.html b/data/web/corefork.telegram.org/method/messages.getFactCheck.html
index 9622f61930..afff89c7cb 100644
--- a/data/web/corefork.telegram.org/method/messages.getFactCheck.html
+++ b/data/web/corefork.telegram.org/method/messages.getFactCheck.html
@@ -15,8 +15,7 @@ msg_id
Vector<int>
Result
-Vector<FactCheck>
-Bots can use this method">
+Vector<FactCheck>">
+Vector<FactCheck>">
@@ -103,8 +101,7 @@ Bots can use this method">
Result
-Vector <FactCheck >
- Bots can use this method
+Vector <FactCheck >
diff --git a/data/web/corefork.telegram.org/method/messages.getMessagesReactions.html b/data/web/corefork.telegram.org/method/messages.getMessagesReactions.html
index c6d9860b0f..51033b6a86 100644
--- a/data/web/corefork.telegram.org/method/messages.getMessagesReactions.html
+++ b/data/web/corefork.telegram.org/method/messages.getMessagesReactions.html
@@ -100,6 +100,11 @@
400
+CHANNEL_INVALID
+The provided channel is invalid.
+
+
+400
CHANNEL_PRIVATE
You haven't joined this channel/supergroup.
diff --git a/data/web/corefork.telegram.org/method/messages.getMyStickers.html b/data/web/corefork.telegram.org/method/messages.getMyStickers.html
index db01550801..003709d649 100644
--- a/data/web/corefork.telegram.org/method/messages.getMyStickers.html
+++ b/data/web/corefork.telegram.org/method/messages.getMyStickers.html
@@ -99,7 +99,6 @@ Maximum number…">
Result
messages.MyStickers
- Bots can use this method
Related pages
How to fetch results from large lists of objects.
diff --git a/data/web/corefork.telegram.org/method/messages.getQuickReplies.html b/data/web/corefork.telegram.org/method/messages.getQuickReplies.html
index 69ab3e6262..ec698d3f21 100644
--- a/data/web/corefork.telegram.org/method/messages.getQuickReplies.html
+++ b/data/web/corefork.telegram.org/method/messages.getQuickReplies.html
@@ -13,7 +13,7 @@ long
Hash for pagination, for more info click here
Result
messages.QuickReplies
-Bots…">
+Related…">
+Related…">
@@ -95,7 +95,6 @@ Bots…">
Result
messages.QuickReplies
- Bots can use this method
Related pages
How to fetch results from large lists of objects.
diff --git a/data/web/corefork.telegram.org/method/messages.getQuickReplyMessages.html b/data/web/corefork.telegram.org/method/messages.getQuickReplyMessages.html
index c3fc7caec3..4f905c6ec6 100644
--- a/data/web/corefork.telegram.org/method/messages.getQuickReplyMessages.html
+++ b/data/web/corefork.telegram.org/method/messages.getQuickReplyMessages.html
@@ -120,7 +120,23 @@ hash…">
Result
messages.Messages
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+SHORTCUT_INVALID
+The specified shortcut is invalid.
+
+
+
Related pages
How to fetch results from large lists of objects.
diff --git a/data/web/corefork.telegram.org/method/messages.getUnreadReactions.html b/data/web/corefork.telegram.org/method/messages.getUnreadReactions.html
index b4be83f213..069be52a7d 100644
--- a/data/web/corefork.telegram.org/method/messages.getUnreadReactions.html
+++ b/data/web/corefork.telegram.org/method/messages.getUnreadReactions.html
@@ -115,6 +115,23 @@
Result
messages.Messages
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+PEER_ID_INVALID
+The provided peer id is invalid.
+
+
+
Related pages
Telegram allows creating forums with multiple distinct topics.
diff --git a/data/web/corefork.telegram.org/method/messages.initHistoryImport.html b/data/web/corefork.telegram.org/method/messages.initHistoryImport.html
index d0117a09ed..bf4c701eb3 100644
--- a/data/web/corefork.telegram.org/method/messages.initHistoryImport.html
+++ b/data/web/corefork.telegram.org/method/messages.initHistoryImport.html
@@ -99,15 +99,35 @@
400
+CHAT_ADMIN_REQUIRED
+You must be an admin in this chat to do this.
+
+
+400
IMPORT_FILE_INVALID
The specified chat export file is invalid.
400
+IMPORT_FORMAT_DATE_INVALID
+The date specified in the import file is invalid.
+
+
+400
IMPORT_FORMAT_UNRECOGNIZED
The specified chat export file was exported from an unsupported chat app.
+400
+IMPORT_HISTORY_LOG_EMPTY
+
+
+
+400
+PEER_ID_INVALID
+The provided peer id is invalid.
+
+
406
PREVIOUS_CHAT_IMPORT_ACTIVE_WAIT_%dMIN
Import for this chat is already in progress, wait %d minutes before starting a new one.
diff --git a/data/web/corefork.telegram.org/method/messages.reorderQuickReplies.html b/data/web/corefork.telegram.org/method/messages.reorderQuickReplies.html
index c1fc438dc3..828dc66275 100644
--- a/data/web/corefork.telegram.org/method/messages.reorderQuickReplies.html
+++ b/data/web/corefork.telegram.org/method/messages.reorderQuickReplies.html
@@ -12,8 +12,7 @@ order
Vector<int>
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -94,8 +92,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/messages.requestSimpleWebView.html b/data/web/corefork.telegram.org/method/messages.requestSimpleWebView.html
index 2e06216816..3a2f3517d7 100644
--- a/data/web/corefork.telegram.org/method/messages.requestSimpleWebView.html
+++ b/data/web/corefork.telegram.org/method/messages.requestSimpleWebView.html
@@ -112,6 +112,28 @@
Result
SimpleWebViewResult
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+BOT_INVALID
+This is not a valid bot.
+
+
+400
+URL_INVALID
+Invalid URL provided.
+
+
+
Related pages
Query an inline bot
diff --git a/data/web/corefork.telegram.org/method/messages.requestWebView.html b/data/web/corefork.telegram.org/method/messages.requestWebView.html
index e5d6aabad1..1d3166a5e3 100644
--- a/data/web/corefork.telegram.org/method/messages.requestWebView.html
+++ b/data/web/corefork.telegram.org/method/messages.requestWebView.html
@@ -155,10 +155,25 @@
400
+MSG_ID_INVALID
+Invalid message ID provided.
+
+
+400
PEER_ID_INVALID
The provided peer id is invalid.
+403
+PRIVACY_PREMIUM_REQUIRED
+You need a Telegram Premium subscription to send a message to this user.
+
+
+400
+SEND_AS_PEER_INVALID
+You can't send messages as the specified peer.
+
+
400
YOU_BLOCKED_USER
You blocked this user.
@@ -177,7 +192,9 @@
Indicate to the server (from the user side) that the user is still using a web app.
-If the method returns a QUERY_ID_INVALID
error, the webview must be closed.
+If the method returns a QUERY_ID_INVALID
error, the webview must be closed.
+
+Telegram Premium is an optional subscription service that unlocks additional exclusive client-side and API-side features, while helping support the development of the app.
diff --git a/data/web/corefork.telegram.org/method/messages.searchGlobal.html b/data/web/corefork.telegram.org/method/messages.searchGlobal.html
index 1fb34e782a..524f41b4c4 100644
--- a/data/web/corefork.telegram.org/method/messages.searchGlobal.html
+++ b/data/web/corefork.telegram.org/method/messages.searchGlobal.html
@@ -147,6 +147,11 @@
400
+INPUT_FILTER_INVALID
+The specified filter is invalid.
+
+
+400
SEARCH_QUERY_EMPTY
The search query is empty.
diff --git a/data/web/corefork.telegram.org/method/messages.sendMedia.html b/data/web/corefork.telegram.org/method/messages.sendMedia.html
index b4cb772f15..794ee26129 100644
--- a/data/web/corefork.telegram.org/method/messages.sendMedia.html
+++ b/data/web/corefork.telegram.org/method/messages.sendMedia.html
@@ -270,6 +270,11 @@
403
+CHAT_SEND_ROUNDVIDEOS_FORBIDDEN
+You can't send round videos to this chat.
+
+
+403
CHAT_SEND_STICKERS_FORBIDDEN
You can't send stickers in this chat.
@@ -434,6 +439,11 @@
A premium account is required to execute this action.
+403
+PRIVACY_PREMIUM_REQUIRED
+You need a Telegram Premium subscription to send a message to this user.
+
+
400
QUIZ_CORRECT_ANSWERS_EMPTY
No correct quiz answer was specified.
@@ -465,6 +475,11 @@
400
+REPLY_MARKUP_GAME_EMPTY
+
+
+
+400
REPLY_MARKUP_INVALID
The provided reply markup is invalid.
@@ -499,6 +514,11 @@
Slowmode is enabled in this chat: wait %d seconds before sending another message to this chat.
+400
+STORY_ID_INVALID
+The specified story ID is invalid.
+
+
406
TOPIC_CLOSED
This topic was closed, you can't send messages to it anymore.
@@ -581,7 +601,9 @@
Groups can be associated to a channel as a discussion group, to allow users to discuss about posts.
-How to handle file references.
+How to handle file references.
+
+Telegram Premium is an optional subscription service that unlocks additional exclusive client-side and API-side features, while helping support the development of the app.
diff --git a/data/web/corefork.telegram.org/method/messages.sendMessage.html b/data/web/corefork.telegram.org/method/messages.sendMessage.html
index 520624779c..6073e6a763 100644
--- a/data/web/corefork.telegram.org/method/messages.sendMessage.html
+++ b/data/web/corefork.telegram.org/method/messages.sendMessage.html
@@ -122,7 +122,7 @@
reply_to
flags .0?InputReplyTo
-If set, indicates that the message should be sent in reply to the specified message or story.
+If set, indicates that the message should be sent in reply to the specified message or story. Also used to quote other messages.
message
@@ -339,6 +339,11 @@
You need a Telegram Premium subscription to send a message to this user.
+400
+QUOTE_TEXT_INVALID
+The specified reply_to
.quote_text
field is invalid.
+
+
500
RANDOM_ID_DUPLICATE
You provided a random ID that was already used.
@@ -355,6 +360,11 @@
400
+REPLY_MESSAGE_ID_INVALID
+The specified reply-to message ID is invalid.
+
+
+400
REPLY_TO_INVALID
The specified reply_to
field is invalid.
diff --git a/data/web/corefork.telegram.org/method/messages.sendMultiMedia.html b/data/web/corefork.telegram.org/method/messages.sendMultiMedia.html
index 336712b9aa..e48379fafb 100644
--- a/data/web/corefork.telegram.org/method/messages.sendMultiMedia.html
+++ b/data/web/corefork.telegram.org/method/messages.sendMultiMedia.html
@@ -160,6 +160,11 @@
400
+CHANNEL_INVALID
+The provided channel is invalid.
+
+
+400
CHANNEL_PRIVATE
You haven't joined this channel/supergroup.
diff --git a/data/web/corefork.telegram.org/method/messages.sendQuickReplyMessages.html b/data/web/corefork.telegram.org/method/messages.sendQuickReplyMessages.html
index 362c9c3441..e7cd736e6f 100644
--- a/data/web/corefork.telegram.org/method/messages.sendQuickReplyMessages.html
+++ b/data/web/corefork.telegram.org/method/messages.sendQuickReplyMessages.html
@@ -21,7 +21,7 @@ random_id
Vector<long>
Result
-Updates…">
+Updates">
+Updates">
@@ -130,8 +130,7 @@ Updates…">
Result
-Updates
- Bots can use this method
+Updates
diff --git a/data/web/corefork.telegram.org/method/messages.sendScheduledMessages.html b/data/web/corefork.telegram.org/method/messages.sendScheduledMessages.html
index a8cc8e2f65..87f616cbe9 100644
--- a/data/web/corefork.telegram.org/method/messages.sendScheduledMessages.html
+++ b/data/web/corefork.telegram.org/method/messages.sendScheduledMessages.html
@@ -108,6 +108,11 @@
PEER_ID_INVALID
The provided peer id is invalid.
+
+500
+RANDOM_ID_DUPLICATE
+You provided a random ID that was already used.
+
diff --git a/data/web/corefork.telegram.org/method/messages.setInlineBotResults.html b/data/web/corefork.telegram.org/method/messages.setInlineBotResults.html
index ee25153f63..3b76f6ba32 100644
--- a/data/web/corefork.telegram.org/method/messages.setInlineBotResults.html
+++ b/data/web/corefork.telegram.org/method/messages.setInlineBotResults.html
@@ -275,6 +275,11 @@
400
+SWITCH_WEBVIEW_URL_INVALID
+The URL specified in switch_webview.url is invalid!
+
+
+400
URL_INVALID
Invalid URL provided.
diff --git a/data/web/corefork.telegram.org/method/messages.toggleBotInAttachMenu.html b/data/web/corefork.telegram.org/method/messages.toggleBotInAttachMenu.html
index 4cddafa7a2..6ee15c5453 100644
--- a/data/web/corefork.telegram.org/method/messages.toggleBotInAttachMenu.html
+++ b/data/web/corefork.telegram.org/method/messages.toggleBotInAttachMenu.html
@@ -93,6 +93,23 @@
Result
Bool
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+BOT_INVALID
+This is not a valid bot.
+
+
+
Related pages
Represents a bot mini app that can be launched from the attachment/side menu »
diff --git a/data/web/corefork.telegram.org/method/messages.toggleDialogFilterTags.html b/data/web/corefork.telegram.org/method/messages.toggleDialogFilterTags.html
index f82d58c505..d45d147acb 100644
--- a/data/web/corefork.telegram.org/method/messages.toggleDialogFilterTags.html
+++ b/data/web/corefork.telegram.org/method/messages.toggleDialogFilterTags.html
@@ -12,8 +12,7 @@ enabled
Bool
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -94,8 +92,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/messages.translateText.html b/data/web/corefork.telegram.org/method/messages.translateText.html
index da9e9400d9..3839be0c8f 100644
--- a/data/web/corefork.telegram.org/method/messages.translateText.html
+++ b/data/web/corefork.telegram.org/method/messages.translateText.html
@@ -133,6 +133,11 @@
TO_LANG_INVALID
The specified destination language is invalid.
+
+400
+TRANSLATE_REQ_QUOTA_EXCEEDED
+
+
Related pages
diff --git a/data/web/corefork.telegram.org/method/messages.unpinAllMessages.html b/data/web/corefork.telegram.org/method/messages.unpinAllMessages.html
index 469ee9e0a2..df0a385f81 100644
--- a/data/web/corefork.telegram.org/method/messages.unpinAllMessages.html
+++ b/data/web/corefork.telegram.org/method/messages.unpinAllMessages.html
@@ -107,6 +107,11 @@
CHAT_NOT_MODIFIED
No changes were made to chat information because the new information you passed is identical to the current information.
+
+400
+PEER_ID_INVALID
+The provided peer id is invalid.
+
Bots can use this method
diff --git a/data/web/corefork.telegram.org/method/messages.updateDialogFilter.html b/data/web/corefork.telegram.org/method/messages.updateDialogFilter.html
index 11f73ed057..63971f53a5 100644
--- a/data/web/corefork.telegram.org/method/messages.updateDialogFilter.html
+++ b/data/web/corefork.telegram.org/method/messages.updateDialogFilter.html
@@ -123,6 +123,16 @@
FILTER_TITLE_EMPTY
The title field of the filter is empty.
+
+400
+MSG_ID_INVALID
+Invalid message ID provided.
+
+
+400
+PEER_ID_INVALID
+The provided peer id is invalid.
+
Related pages
diff --git a/data/web/corefork.telegram.org/method/payments.checkGiftCode.html b/data/web/corefork.telegram.org/method/payments.checkGiftCode.html
index ebf95479d2..e3578b1a6f 100644
--- a/data/web/corefork.telegram.org/method/payments.checkGiftCode.html
+++ b/data/web/corefork.telegram.org/method/payments.checkGiftCode.html
@@ -89,6 +89,11 @@
400
+GIFT_SLUG_EXPIRED
+The specified gift slug has expired.
+
+
+400
GIFT_SLUG_INVALID
The specified slug is invalid.
diff --git a/data/web/corefork.telegram.org/method/payments.getStarsStatus.html b/data/web/corefork.telegram.org/method/payments.getStarsStatus.html
index b44af746d2..2f45764cce 100644
--- a/data/web/corefork.telegram.org/method/payments.getStarsStatus.html
+++ b/data/web/corefork.telegram.org/method/payments.getStarsStatus.html
@@ -12,8 +12,7 @@ peer
InputPeer
Result
-payments.StarsStatus
-Bots can use this method">
+payments.StarsStatus">
+payments.StarsStatus">
@@ -93,8 +91,7 @@ Bots can use this method">
Result
-payments.StarsStatus
- Bots can use this method
+payments.StarsStatus
diff --git a/data/web/corefork.telegram.org/method/payments.getStarsTopupOptions.html b/data/web/corefork.telegram.org/method/payments.getStarsTopupOptions.html
index 85a8cf3ee0..5ee654da5a 100644
--- a/data/web/corefork.telegram.org/method/payments.getStarsTopupOptions.html
+++ b/data/web/corefork.telegram.org/method/payments.getStarsTopupOptions.html
@@ -7,15 +7,13 @@
+Vector<StarsTopupOption>">
+Vector<StarsTopupOption>">
@@ -67,8 +65,7 @@ Bots can use this method">
Parameters
This constructor does not require any parameters.
Result
-Vector <StarsTopupOption >
- Bots can use this method
+Vector <StarsTopupOption >
diff --git a/data/web/corefork.telegram.org/method/payments.sendStarsForm.html b/data/web/corefork.telegram.org/method/payments.sendStarsForm.html
index 0165951acf..e00903eaad 100644
--- a/data/web/corefork.telegram.org/method/payments.sendStarsForm.html
+++ b/data/web/corefork.telegram.org/method/payments.sendStarsForm.html
@@ -112,8 +112,7 @@ Result…">
Result
-payments.PaymentResult
- Bots can use this method
+payments.PaymentResult
diff --git a/data/web/corefork.telegram.org/method/phone.editGroupCallParticipant.html b/data/web/corefork.telegram.org/method/phone.editGroupCallParticipant.html
index 0cab7aa3f0..0b0b24035f 100644
--- a/data/web/corefork.telegram.org/method/phone.editGroupCallParticipant.html
+++ b/data/web/corefork.telegram.org/method/phone.editGroupCallParticipant.html
@@ -4,10 +4,10 @@
phone.editGroupCallParticipant
-
+
-
+
@@ -151,9 +151,24 @@
400
+RAISE_HAND_FORBIDDEN
+You cannot raise your hand.
+
+
+400
USER_VOLUME_INVALID
The specified user volume is invalid.
+
+400
+VIDEO_PAUSE_FORBIDDEN
+You cannot pause the video stream.
+
+
+400
+VIDEO_STOP_FORBIDDEN
+You cannot stop the video stream.
+
Related pages
diff --git a/data/web/corefork.telegram.org/method/phone.editGroupCallTitle.html b/data/web/corefork.telegram.org/method/phone.editGroupCallTitle.html
index 683d8dd9e2..a725eb77c2 100644
--- a/data/web/corefork.telegram.org/method/phone.editGroupCallTitle.html
+++ b/data/web/corefork.telegram.org/method/phone.editGroupCallTitle.html
@@ -103,6 +103,11 @@
GROUPCALL_FORBIDDEN
The group call has already ended.
+
+400
+GROUPCALL_INVALID
+The specified group call is invalid.
+
diff --git a/data/web/corefork.telegram.org/method/phone.getGroupCallStreamRtmpUrl.html b/data/web/corefork.telegram.org/method/phone.getGroupCallStreamRtmpUrl.html
index 444d93d3ca..54d84e8486 100644
--- a/data/web/corefork.telegram.org/method/phone.getGroupCallStreamRtmpUrl.html
+++ b/data/web/corefork.telegram.org/method/phone.getGroupCallStreamRtmpUrl.html
@@ -97,6 +97,11 @@
CHAT_ADMIN_REQUIRED
You must be an admin in this chat to do this.
+
+400
+PEER_ID_INVALID
+The provided peer id is invalid.
+
Related pages
diff --git a/data/web/corefork.telegram.org/method/phone.saveDefaultGroupCallJoinAs.html b/data/web/corefork.telegram.org/method/phone.saveDefaultGroupCallJoinAs.html
index 7301fa4ace..0e8eaad0c6 100644
--- a/data/web/corefork.telegram.org/method/phone.saveDefaultGroupCallJoinAs.html
+++ b/data/web/corefork.telegram.org/method/phone.saveDefaultGroupCallJoinAs.html
@@ -98,6 +98,11 @@
JOIN_AS_PEER_INVALID
The specified peer cannot be used to join a group call.
+
+400
+PEER_ID_INVALID
+The provided peer id is invalid.
+
diff --git a/data/web/corefork.telegram.org/method/phone.toggleGroupCallRecord.html b/data/web/corefork.telegram.org/method/phone.toggleGroupCallRecord.html
index d70f9e2f9f..10bfd07305 100644
--- a/data/web/corefork.telegram.org/method/phone.toggleGroupCallRecord.html
+++ b/data/web/corefork.telegram.org/method/phone.toggleGroupCallRecord.html
@@ -125,6 +125,11 @@
400
+GROUPCALL_INVALID
+The specified group call is invalid.
+
+
+400
GROUPCALL_NOT_MODIFIED
Group call settings weren't modified.
diff --git a/data/web/corefork.telegram.org/method/smsjobs.finishJob.html b/data/web/corefork.telegram.org/method/smsjobs.finishJob.html
index 88f6f13ca9..36b3af2e8c 100644
--- a/data/web/corefork.telegram.org/method/smsjobs.finishJob.html
+++ b/data/web/corefork.telegram.org/method/smsjobs.finishJob.html
@@ -113,7 +113,23 @@ Result…">
Result
Bool
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+SMSJOB_ID_INVALID
+The specified job ID is invalid.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/smsjobs.getSmsJob.html b/data/web/corefork.telegram.org/method/smsjobs.getSmsJob.html
index d373bf7236..9d511c2ef2 100644
--- a/data/web/corefork.telegram.org/method/smsjobs.getSmsJob.html
+++ b/data/web/corefork.telegram.org/method/smsjobs.getSmsJob.html
@@ -13,7 +13,12 @@ string
Result
SmsJob
-Bots can use this method">
+Possible errors
+Code
+Type
+Description
+400
+SMSJOB_ID_INVALID…">
+Possible errors
+Code
+Type
+Description
+400
+SMSJOB_ID_INVALID…">
@@ -94,7 +104,23 @@ Bots can use this method">
Result
SmsJob
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+SMSJOB_ID_INVALID
+The specified job ID is invalid.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/smsjobs.getStatus.html b/data/web/corefork.telegram.org/method/smsjobs.getStatus.html
index 370c557a15..ea4f7d30b0 100644
--- a/data/web/corefork.telegram.org/method/smsjobs.getStatus.html
+++ b/data/web/corefork.telegram.org/method/smsjobs.getStatus.html
@@ -8,14 +8,20 @@
This constructor does not require any parameters.
Result
smsjobs.Status
-Bots can use this method">
+Possible errors
+Code
+Type
+Description…">
+Possible errors
+Code
+Type
+Description…">
@@ -69,7 +75,23 @@ Bots can use this method">
This constructor does not require any parameters.
Result
smsjobs.Status
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+NOT_JOINED
+The current user hasn't joined the Peer-to-Peer Login Program.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/smsjobs.isEligibleToJoin.html b/data/web/corefork.telegram.org/method/smsjobs.isEligibleToJoin.html
index 8b42e0a402..d50a3bd1e1 100644
--- a/data/web/corefork.telegram.org/method/smsjobs.isEligibleToJoin.html
+++ b/data/web/corefork.telegram.org/method/smsjobs.isEligibleToJoin.html
@@ -8,14 +8,18 @@
This constructor does not require any parameters.
Result
smsjobs.EligibilityToJoin
-Bots can use this method">
+Possible errors
+Code
+Type…">
+Possible errors
+Code
+Type…">
@@ -69,7 +73,23 @@ Bots can use this method">
This constructor does not require any parameters.
Result
smsjobs.EligibilityToJoin
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+403
+NOT_ELIGIBLE
+The current user is not eligible to join the Peer-to-Peer Login Program.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/smsjobs.join.html b/data/web/corefork.telegram.org/method/smsjobs.join.html
index e512899d84..cf59d3197e 100644
--- a/data/web/corefork.telegram.org/method/smsjobs.join.html
+++ b/data/web/corefork.telegram.org/method/smsjobs.join.html
@@ -8,14 +8,24 @@
This constructor does not require any parameters.
Result
Bool
-Bots can use this method">
+Possible errors
+Code
+Type
+Description
+400
+NOT_ELIGIBLE…">
+Possible errors
+Code
+Type
+Description
+400
+NOT_ELIGIBLE…">
@@ -70,7 +80,23 @@ Bots can use this method">
This constructor does not require any parameters.
Result
Bool
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+NOT_ELIGIBLE
+The current user is not eligible to join the Peer-to-Peer Login Program.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/smsjobs.leave.html b/data/web/corefork.telegram.org/method/smsjobs.leave.html
index 712240ffa6..9cba557f42 100644
--- a/data/web/corefork.telegram.org/method/smsjobs.leave.html
+++ b/data/web/corefork.telegram.org/method/smsjobs.leave.html
@@ -8,14 +8,24 @@
This constructor does not require any parameters.
Result
Bool
-Bots can use this method">
+Possible errors
+Code
+Type
+Description
+400
+NOT_JOINED…">
+Possible errors
+Code
+Type
+Description
+400
+NOT_JOINED…">
@@ -70,7 +80,23 @@ Bots can use this method">
This constructor does not require any parameters.
Result
Bool
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+NOT_JOINED
+The current user hasn't joined the Peer-to-Peer Login Program.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/smsjobs.updateSettings.html b/data/web/corefork.telegram.org/method/smsjobs.updateSettings.html
index 09748a1002..fdf5cfef75 100644
--- a/data/web/corefork.telegram.org/method/smsjobs.updateSettings.html
+++ b/data/web/corefork.telegram.org/method/smsjobs.updateSettings.html
@@ -104,7 +104,23 @@ Bool…">
Result
Bool
- Bots can use this method
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+NOT_JOINED
+The current user hasn't joined the Peer-to-Peer Login Program.
+
+
+
diff --git a/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueStats.html b/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueStats.html
index 4daf7c9e41..dae128c3fd 100644
--- a/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueStats.html
+++ b/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueStats.html
@@ -111,8 +111,7 @@ Result…">
Result
-stats.BroadcastRevenueStats
- Bots can use this method
+stats.BroadcastRevenueStats
diff --git a/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueTransactions.html b/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueTransactions.html
index c30dd25fbb..8675b5083e 100644
--- a/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueTransactions.html
+++ b/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueTransactions.html
@@ -110,7 +110,6 @@ Maximum number of results to return, see…">
Result
stats.BroadcastRevenueTransactions
- Bots can use this method
Related pages
How to fetch results from large lists of objects.
diff --git a/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueWithdrawalUrl.html b/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueWithdrawalUrl.html
index 285b964d13..997d14c8e4 100644
--- a/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueWithdrawalUrl.html
+++ b/data/web/corefork.telegram.org/method/stats.getBroadcastRevenueWithdrawalUrl.html
@@ -15,7 +15,7 @@ password
InputCheckPasswordSRP
Result
-stats.BroadcastRevenueWithdrawalUrl…">
+stats.BroadcastRevenueWithdrawalUrl">
+stats.BroadcastRevenueWithdrawalUrl">
@@ -102,8 +102,7 @@ stats.BroadcastRevenueWithdrawalUrl…">
Result
-stats.BroadcastRevenueWithdrawalUrl
- Bots can use this method
+stats.BroadcastRevenueWithdrawalUrl
diff --git a/data/web/corefork.telegram.org/method/stories.deleteStories.html b/data/web/corefork.telegram.org/method/stories.deleteStories.html
index 13e6597b93..53fe76abb2 100644
--- a/data/web/corefork.telegram.org/method/stories.deleteStories.html
+++ b/data/web/corefork.telegram.org/method/stories.deleteStories.html
@@ -96,6 +96,11 @@
PEER_ID_INVALID
The provided peer id is invalid.
+
+400
+STORY_ID_EMPTY
+You specified no story IDs.
+
Related pages
diff --git a/data/web/corefork.telegram.org/method/stories.getStoriesByID.html b/data/web/corefork.telegram.org/method/stories.getStoriesByID.html
index 0f08a1366c..8012b4c876 100644
--- a/data/web/corefork.telegram.org/method/stories.getStoriesByID.html
+++ b/data/web/corefork.telegram.org/method/stories.getStoriesByID.html
@@ -99,6 +99,11 @@
400
+CHANNEL_PRIVATE
+You haven't joined this channel/supergroup.
+
+
+400
PEER_ID_INVALID
The provided peer id is invalid.
diff --git a/data/web/corefork.telegram.org/method/stories.sendReaction.html b/data/web/corefork.telegram.org/method/stories.sendReaction.html
index f61c695bdb..c92b9eee68 100644
--- a/data/web/corefork.telegram.org/method/stories.sendReaction.html
+++ b/data/web/corefork.telegram.org/method/stories.sendReaction.html
@@ -128,6 +128,11 @@
STORY_ID_EMPTY
You specified no story IDs.
+
+400
+STORY_ID_INVALID
+The specified story ID is invalid.
+
Related pages
diff --git a/data/web/corefork.telegram.org/method/stories.sendStory.html b/data/web/corefork.telegram.org/method/stories.sendStory.html
index 73790ffa59..3f647b7dfd 100644
--- a/data/web/corefork.telegram.org/method/stories.sendStory.html
+++ b/data/web/corefork.telegram.org/method/stories.sendStory.html
@@ -160,6 +160,11 @@
400
+BOOSTS_REQUIRED
+The specified channel must first be boosted by its users in order to perform this action.
+
+
+400
IMAGE_PROCESS_FAILED
Failure while processing image.
@@ -219,6 +224,8 @@
The MTProto API has multiple configuration parameters that can be fetched with the appropriate methods.
Telegram allows users to specify granular privacy settings, choosing which users can or can't interact with them in certain ways.
+
+Telegram Premium users can grant their favorite channels additional features like the ability to post stories by giving them boosts.
Telegram Premium is an optional subscription service that unlocks additional exclusive client-side and API-side features, while helping support the development of the app.
diff --git a/data/web/corefork.telegram.org/method/stories.togglePinnedToTop.html b/data/web/corefork.telegram.org/method/stories.togglePinnedToTop.html
index c3bc96220d..da9a467090 100644
--- a/data/web/corefork.telegram.org/method/stories.togglePinnedToTop.html
+++ b/data/web/corefork.telegram.org/method/stories.togglePinnedToTop.html
@@ -15,8 +15,7 @@ id
Vector<int>
Result
-Bool
-Bots can use this method">
+Bool">
+Bool">
@@ -105,8 +103,7 @@ Bots can use this method">
Result
-Bool
- Bots can use this method
+Bool
diff --git a/data/web/corefork.telegram.org/method/upload.getCdnFile.html b/data/web/corefork.telegram.org/method/upload.getCdnFile.html
index ce2d631b98..75533f3aa9 100644
--- a/data/web/corefork.telegram.org/method/upload.getCdnFile.html
+++ b/data/web/corefork.telegram.org/method/upload.getCdnFile.html
@@ -88,6 +88,23 @@
Result
upload.CdnFile
+ Possible errors
+
+
+
+Code
+Type
+Description
+
+
+
+
+400
+FILE_TOKEN_INVALID
+The specified file token is invalid.
+
+
+
Related pages
diff --git a/data/web/corefork.telegram.org/method/upload.getCdnFileHashes.html b/data/web/corefork.telegram.org/method/upload.getCdnFileHashes.html
index 8ff9bd42ed..a3b1964acd 100644
--- a/data/web/corefork.telegram.org/method/upload.getCdnFileHashes.html
+++ b/data/web/corefork.telegram.org/method/upload.getCdnFileHashes.html
@@ -97,6 +97,11 @@
You can't call this method in a CDN DC.
+500
+CDN_SALTS_EMPTY
+
+
+
400
FILE_TOKEN_INVALID
The specified file token is invalid.
diff --git a/data/web/corefork.telegram.org/method/upload.getFile.html b/data/web/corefork.telegram.org/method/upload.getFile.html
index 79dbecaaac..0e6f35e375 100644
--- a/data/web/corefork.telegram.org/method/upload.getFile.html
+++ b/data/web/corefork.telegram.org/method/upload.getFile.html
@@ -149,6 +149,11 @@
File reference expired, it must be refetched as described in the documentation .
+420
+FLOOD_PREMIUM_WAIT_%d
+Please wait %d seconds before repeating the action, or purchase a Telegram Premium subscription to remove this rate limit.
+
+
400
LIMIT_INVALID
The provided limit is invalid.
@@ -179,7 +184,9 @@
Related pages
-How to handle file references.
+How to handle file references.
+
+Telegram Premium is an optional subscription service that unlocks additional exclusive client-side and API-side features, while helping support the development of the app.
diff --git a/data/web/corefork.telegram.org/method/upload.reuploadCdnFile.html b/data/web/corefork.telegram.org/method/upload.reuploadCdnFile.html
index 4277612284..7f79f10d0b 100644
--- a/data/web/corefork.telegram.org/method/upload.reuploadCdnFile.html
+++ b/data/web/corefork.telegram.org/method/upload.reuploadCdnFile.html
@@ -108,6 +108,16 @@
400
+LOCATION_INVALID
+The provided location is invalid.
+
+
+400
+REQUEST_TOKEN_INVALID
+The master DC did not accept the request_token
from the CDN DC. Continue downloading the file from the master DC using upload.getFile.
+
+
+400
RSA_DECRYPT_FAILED
Internal RSA decryption failed.
diff --git a/data/web/corefork.telegram.org/method/users.getUsers.html b/data/web/corefork.telegram.org/method/users.getUsers.html
index ce46041df0..9f222e0f32 100644
--- a/data/web/corefork.telegram.org/method/users.getUsers.html
+++ b/data/web/corefork.telegram.org/method/users.getUsers.html
@@ -108,6 +108,11 @@
400
+PEER_ID_INVALID
+The provided peer id is invalid.
+
+
+400
USER_BANNED_IN_CHANNEL
You're banned from sending messages in supergroups/channels.
diff --git a/data/web/corefork.telegram.org/mtproto/samples-auth_key.html b/data/web/corefork.telegram.org/mtproto/samples-auth_key.html
index e9c0bf7ca5..5811cb2975 100644
--- a/data/web/corefork.telegram.org/mtproto/samples-auth_key.html
+++ b/data/web/corefork.telegram.org/mtproto/samples-auth_key.html
@@ -53,9 +53,9 @@
1) Client sends query to server
Sent payload (excluding transport headers/trailers):
-0000 | 00 00 00 00 00 00 00 00 80 E7 0D 00 2B 92 6D 66
-0010 | 14 00 00 00 F1 8E 7E BE 05 64 65 F4 C5 3A DA 11
-0020 | 5F 68 C4 39 92 23 7D FB
+0000 | 00 00 00 00 00 00 00 00 34 71 05 00 54 60 70 66
+0010 | 14 00 00 00 F1 8E 7E BE 2B 9B B4 57 48 8F 49 54
+0020 | 41 48 B3 ED 2C 05 34 66
Payload (de)serialization:
req_pq_multi#be7e8ef1 nonce:int128 = ResPQ;
@@ -77,7 +77,7 @@
message_id
8, 8
-80E70D002B926D66
+3471050054607066
Message ID generated as specified here » (unixtime() << 32) + (N*4)
@@ -95,7 +95,7 @@
nonce
24, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Random number
@@ -104,11 +104,11 @@
2) Server sends response of the form
Received payload (excluding transport headers/trailers):
-0000 | 00 00 00 00 00 00 00 00 01 78 ED 52 2B 92 6D 66
-0010 | 88 00 00 00 63 24 16 05 05 64 65 F4 C5 3A DA 11
-0020 | 5F 68 C4 39 92 23 7D FB E3 02 5A E4 65 D2 31 FF
-0030 | DA 4F 25 8A 8C C6 D2 99 08 23 C4 B6 DD 9A 0B 65
-0040 | 95 00 00 00 15 C4 B5 1C 03 00 00 00 A5 B7 F7 09
+0000 | 00 00 00 00 00 00 00 00 01 40 6E 24 54 60 70 66
+0010 | 7C 00 00 00 63 24 16 05 2B 9B B4 57 48 8F 49 54
+0020 | 41 48 B3 ED 2C 05 34 66 67 AF D3 E0 E0 69 4C 75
+0030 | FE F5 FF DC A1 EE F5 BE 08 18 29 A6 FC 82 9C D2
+0040 | 85 00 00 00 15 C4 B5 1C 03 00 00 00 A5 B7 F7 09
0050 | 35 5F C3 0B 21 6B E8 6C 02 2B B4 C3 85 FD 64 DE
0060 | 85 1D 9D D0
Payload (de)serialization:
@@ -132,13 +132,13 @@
message_id
8, 8
-0178ED522B926D66
+01406E2454607066
Message ID generated as specified here » (unixtime() << 32) + (N*4)
message_length
16, 4
-88000000
(136 in decimal)
+7C000000
(124 in decimal)
Message body length
@@ -150,19 +150,19 @@
nonce
24, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Value generated by client in Step 1
server_nonce
40, 16
-E3025AE465D231FFDA4F258A8CC6D299
+67AFD3E0E0694C75FEF5FFDCA1EEF5BE
Server-generated random number
pq
56, 12
-0823C4B6DD9A0B6595000000
TL byte deserialization => bigendian conversion to decimal => 2577385949651232149
+081829A6FC829CD285000000
TL byte deserialization => bigendian conversion to decimal => 1741106334408692357
Single-byte prefix denoting length, an 8-byte string, and three bytes of padding
@@ -208,22 +208,22 @@
Proof of work
3) Client decomposes pq into prime factors such that p < q.
-pq = 2577385949651232149
-Decompose into 2 prime cofactors p < q
: 2577385949651232149 = 1302502657 * 1978795157
-p = 1302502657
-q = 1978795157
+pq = 1741106334408692357
+Decompose into 2 prime cofactors p < q
: 1741106334408692357 = 1223184373 * 1423421009
+p = 1223184373
+q = 1423421009
Presenting proof of work; Server authentication
4) encrypted_data
payload generation
First of all, generate an encrypted_data
payload as follows:
Generated payload (excluding transport headers/trailers):
-0000 | 95 5F F5 A9 08 23 C4 B6 DD 9A 0B 65 95 00 00 00
-0010 | 04 4D A2 9D 01 00 00 00 04 75 F2 04 95 00 00 00
-0020 | 05 64 65 F4 C5 3A DA 11 5F 68 C4 39 92 23 7D FB
-0030 | E3 02 5A E4 65 D2 31 FF DA 4F 25 8A 8C C6 D2 99
-0040 | 5C 0D 1A F5 12 CF 44 9B 24 75 05 AD 1A A1 CB 35
-0050 | 8C BC B5 D3 6A 58 59 F8 51 2C B4 78 BE 1E C1 64
+0000 | 95 5F F5 A9 08 18 29 A6 FC 82 9C D2 85 00 00 00
+0010 | 04 48 E8 4F F5 00 00 00 04 54 D7 AE 51 00 00 00
+0020 | 2B 9B B4 57 48 8F 49 54 41 48 B3 ED 2C 05 34 66
+0030 | 67 AF D3 E0 E0 69 4C 75 FE F5 FF DC A1 EE F5 BE
+0040 | FD AD 13 44 75 3B A4 0D 15 FE 37 57 7E 21 2B 4A
+0050 | 59 35 38 F7 84 54 A0 91 08 DE 84 2A B1 E4 2E B9
0060 | 02 00 00 00
Payload (de)serialization:
p_q_inner_data_dc#a9f55f95 pq:string p:string q:string nonce:int128 server_nonce:int128 new_nonce:int256 dc:int = P_Q_inner_data;
@@ -246,37 +246,37 @@ q = 1978795157
pq
4, 12
-0823C4B6DD9A0B6595000000
TL byte deserialization => bigendian conversion to decimal => 2577385949651232149
+081829A6FC829CD285000000
TL byte deserialization => bigendian conversion to decimal => 1741106334408692357
Single-byte prefix denoting length, 8-byte string, and three bytes of padding
p
16, 8
-044DA29D01000000
TL byte deserialization => bigendian conversion to decimal => 1302502657
+0448E84FF5000000
TL byte deserialization => bigendian conversion to decimal => 1223184373
First prime cofactor: single-byte prefix denoting length, 4-byte string, and three bytes of padding
q
24, 8
-0475F20495000000
TL byte deserialization => bigendian conversion to decimal => 1978795157
+0454D7AE51000000
TL byte deserialization => bigendian conversion to decimal => 1423421009
Second prime cofactor: single-byte prefix denoting length, 4-byte string, and three bytes of padding
nonce
32, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Value generated by client in Step 1
server_nonce
48, 16
-E3025AE465D231FFDA4F258A8CC6D299
+67AFD3E0E0694C75FEF5FFDCA1EEF5BE
Value received from server in Step 2
new_nonce
64, 32
-5C0D1AF512CF449B247505AD1AA1CB35
8CBCB5D36A5859F8512CB478BE1EC164
+FDAD1344753BA40D15FE37577E212B4A
593538F78454A09108DE842AB1E42EB9
Client-generated random number
@@ -291,39 +291,39 @@ q = 1978795157
The serialization of P_Q_inner_data produces data , which is used to generate encrypted_data as specified in step 4.1 .
These are the inputs to the algorithm specified in step 4.1 :
-data = 955FF5A90823C4B6DD9A0B6595000000044DA29D010000000475F20495000000056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D2995C0D1AF512CF449B247505AD1AA1CB358CBCB5D36A5859F8512CB478BE1EC16402000000
-random_padding_bytes = DAC1BFD8598025A002DC510182ED76EEC0CF5B233022A4D3F0108F8316D4CE7150002C15270E00A2042CCF3A8662B40B9416592BAEA3CB05CCBBB801C4B97DEA06D258E1222FC69BDC98F1E075D9BE22103B3BCAF859C0BFCE8C39A6
+data = 955FF5A9081829A6FC829CD2850000000448E84FF50000000454D7AE510000002B9BB457488F49544148B3ED2C05346667AFD3E0E0694C75FEF5FFDCA1EEF5BEFDAD1344753BA40D15FE37577E212B4A593538F78454A09108DE842AB1E42EB902000000
+random_padding_bytes = 7F89BA0B54DC1E08135D26489A60394E3403A1CD162553C3A943E59812CA5D76CF8F95D62690E411473A3FB0FC25E6D543C805939D41BBF9712B3A754AC72B79199B6A9A98E565DEF7317DE3BF32FC437D4FAAE501754E1C233FE51E
And this is the output:
-encrypted_data = B51158F232081D809DB9B2966B6370102E1C42556CA80B02C4C4DF58980D6F98B4B9928655939600A2924B872AFEBA5F44FDA7FEB2973BEBDD8020AB73E4C951339C5CC9773CE18BF95EF0E5EC1AF07669B87876B4B54D03801D0231118CCC12C8B191B5CBF28AF4F088F0A580DD67FC25EC13535A10EEDC13D9287E01B029CD2C36CB79E5AF89C7E91B0FFF7D69325172120B706E58234CBA4DBA5EA7270C080B7F89565AA8ED02E12B3B536A0D83E8F36CF9167787F3550040B8E7FE0CF24854395AF11EC1980ED353DE1EFCD743D2E8ABBA261BB4D4ADEFFBACBCB2262F28E59ACB9BDA2EE2F9085CBA4D929A099A27F3D2F06EF599BDF9111AEDE0BCAA47
+encrypted_data = 7C952FEEBEBCE714B40299147C955728D91CA53ED40AA5911B1C6889535D0859EAF80837908F5DF023382BA2EDC1A557C27DEFD124050F78DF9760A69F3AFBEE87AA68A992C2F042D57990952C801FC40438BC14D0C4DA149FAC4B5EA0E6C5AFF2C88D4463C1EB337614CBCB148F1147D6EA3B0AC56AD46B286A59D8E4DAE2D4EFC3AFABF9045C67E02CD05BAC5D822FD504ECD8BDA0C6594863E806D2896DB359FDADCAE2E59B2542B43A2E1951C1EC1699BF7B5C34C5F552FC98A922F8623CA1E12ECDFA6EE30F5D4109EA02DCEF2550827A173BD0EA9637A256310DEBD60E9CF8B60F8D70B2B44113ED12EB1F6058A16FD21BE6FA9F3A72863141CF19278D
The length of the final string is 256 bytes.
5) Send req_DH_params query with generated encrypted_data
Sent payload (excluding transport headers/trailers):
-0000 | 00 00 00 00 00 00 00 00 84 E7 0D 00 2B 92 6D 66
-0010 | 40 01 00 00 BE E4 12 D7 05 64 65 F4 C5 3A DA 11
-0020 | 5F 68 C4 39 92 23 7D FB E3 02 5A E4 65 D2 31 FF
-0030 | DA 4F 25 8A 8C C6 D2 99 04 4D A2 9D 01 00 00 00
-0040 | 04 75 F2 04 95 00 00 00 85 FD 64 DE 85 1D 9D D0
-0050 | FE 00 01 00 B5 11 58 F2 32 08 1D 80 9D B9 B2 96
-0060 | 6B 63 70 10 2E 1C 42 55 6C A8 0B 02 C4 C4 DF 58
-0070 | 98 0D 6F 98 B4 B9 92 86 55 93 96 00 A2 92 4B 87
-0080 | 2A FE BA 5F 44 FD A7 FE B2 97 3B EB DD 80 20 AB
-0090 | 73 E4 C9 51 33 9C 5C C9 77 3C E1 8B F9 5E F0 E5
-00A0 | EC 1A F0 76 69 B8 78 76 B4 B5 4D 03 80 1D 02 31
-00B0 | 11 8C CC 12 C8 B1 91 B5 CB F2 8A F4 F0 88 F0 A5
-00C0 | 80 DD 67 FC 25 EC 13 53 5A 10 EE DC 13 D9 28 7E
-00D0 | 01 B0 29 CD 2C 36 CB 79 E5 AF 89 C7 E9 1B 0F FF
-00E0 | 7D 69 32 51 72 12 0B 70 6E 58 23 4C BA 4D BA 5E
-00F0 | A7 27 0C 08 0B 7F 89 56 5A A8 ED 02 E1 2B 3B 53
-0100 | 6A 0D 83 E8 F3 6C F9 16 77 87 F3 55 00 40 B8 E7
-0110 | FE 0C F2 48 54 39 5A F1 1E C1 98 0E D3 53 DE 1E
-0120 | FC D7 43 D2 E8 AB BA 26 1B B4 D4 AD EF FB AC BC
-0130 | B2 26 2F 28 E5 9A CB 9B DA 2E E2 F9 08 5C BA 4D
-0140 | 92 9A 09 9A 27 F3 D2 F0 6E F5 99 BD F9 11 1A ED
-0150 | E0 BC AA 47
+0000 | 00 00 00 00 00 00 00 00 38 71 05 00 54 60 70 66
+0010 | 40 01 00 00 BE E4 12 D7 2B 9B B4 57 48 8F 49 54
+0020 | 41 48 B3 ED 2C 05 34 66 67 AF D3 E0 E0 69 4C 75
+0030 | FE F5 FF DC A1 EE F5 BE 04 48 E8 4F F5 00 00 00
+0040 | 04 54 D7 AE 51 00 00 00 85 FD 64 DE 85 1D 9D D0
+0050 | FE 00 01 00 7C 95 2F EE BE BC E7 14 B4 02 99 14
+0060 | 7C 95 57 28 D9 1C A5 3E D4 0A A5 91 1B 1C 68 89
+0070 | 53 5D 08 59 EA F8 08 37 90 8F 5D F0 23 38 2B A2
+0080 | ED C1 A5 57 C2 7D EF D1 24 05 0F 78 DF 97 60 A6
+0090 | 9F 3A FB EE 87 AA 68 A9 92 C2 F0 42 D5 79 90 95
+00A0 | 2C 80 1F C4 04 38 BC 14 D0 C4 DA 14 9F AC 4B 5E
+00B0 | A0 E6 C5 AF F2 C8 8D 44 63 C1 EB 33 76 14 CB CB
+00C0 | 14 8F 11 47 D6 EA 3B 0A C5 6A D4 6B 28 6A 59 D8
+00D0 | E4 DA E2 D4 EF C3 AF AB F9 04 5C 67 E0 2C D0 5B
+00E0 | AC 5D 82 2F D5 04 EC D8 BD A0 C6 59 48 63 E8 06
+00F0 | D2 89 6D B3 59 FD AD CA E2 E5 9B 25 42 B4 3A 2E
+0100 | 19 51 C1 EC 16 99 BF 7B 5C 34 C5 F5 52 FC 98 A9
+0110 | 22 F8 62 3C A1 E1 2E CD FA 6E E3 0F 5D 41 09 EA
+0120 | 02 DC EF 25 50 82 7A 17 3B D0 EA 96 37 A2 56 31
+0130 | 0D EB D6 0E 9C F8 B6 0F 8D 70 B2 B4 41 13 ED 12
+0140 | EB 1F 60 58 A1 6F D2 1B E6 FA 9F 3A 72 86 31 41
+0150 | CF 19 27 8D
Payload (de)serialization:
req_DH_params#d712e4be nonce:int128 server_nonce:int128 p:string q:string public_key_fingerprint:long encrypted_data:string = Server_DH_Params;
@@ -345,7 +345,7 @@ random_padding_bytes = DAC1BFD8598025A002DC510182ED76EEC0CF5B233022A4D3F0108F831
message_id
8, 8
-84E70D002B926D66
+3871050054607066
Message ID generated as specified here » (unixtime() << 32) + (N*4)
@@ -363,25 +363,25 @@ random_padding_bytes = DAC1BFD8598025A002DC510182ED76EEC0CF5B233022A4D3F0108F831
nonce
24, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Value generated by client in Step 1
server_nonce
40, 16
-E3025AE465D231FFDA4F258A8CC6D299
+67AFD3E0E0694C75FEF5FFDCA1EEF5BE
Value received from server in Step 2
p
56, 8
-044DA29D01000000
TL byte deserialization => bigendian conversion to decimal => 1302502657
+0448E84FF5000000
TL byte deserialization => bigendian conversion to decimal => 1223184373
First prime cofactor: single-byte prefix denoting length, 4-byte string, and three bytes of padding
q
64, 8
-0475F20495000000
TL byte deserialization => bigendian conversion to decimal => 1978795157
+0454D7AE51000000
TL byte deserialization => bigendian conversion to decimal => 1423421009
Second prime cofactor: single-byte prefix denoting length, 4-byte string, and three bytes of padding
@@ -393,7 +393,7 @@ random_padding_bytes = DAC1BFD8598025A002DC510182ED76EEC0CF5B233022A4D3F0108F831
encrypted_data
80, 260
-FE000100B51158F232081D809DB9B296
6B6370102E1C42556CA80B02C4C4DF58
980D6F98B4B9928655939600A2924B87
2AFEBA5F44FDA7FEB2973BEBDD8020AB
73E4C951339C5CC9773CE18BF95EF0E5
EC1AF07669B87876B4B54D03801D0231
118CCC12C8B191B5CBF28AF4F088F0A5
80DD67FC25EC13535A10EEDC13D9287E
01B029CD2C36CB79E5AF89C7E91B0FFF
7D69325172120B706E58234CBA4DBA5E
A7270C080B7F89565AA8ED02E12B3B53
6A0D83E8F36CF9167787F3550040B8E7
FE0CF24854395AF11EC1980ED353DE1E
FCD743D2E8ABBA261BB4D4ADEFFBACBC
B2262F28E59ACB9BDA2EE2F9085CBA4D
929A099A27F3D2F06EF599BDF9111AED
E0BCAA47
+FE0001007C952FEEBEBCE714B4029914
7C955728D91CA53ED40AA5911B1C6889
535D0859EAF80837908F5DF023382BA2
EDC1A557C27DEFD124050F78DF9760A6
9F3AFBEE87AA68A992C2F042D5799095
2C801FC40438BC14D0C4DA149FAC4B5E
A0E6C5AFF2C88D4463C1EB337614CBCB
148F1147D6EA3B0AC56AD46B286A59D8
E4DAE2D4EFC3AFABF9045C67E02CD05B
AC5D822FD504ECD8BDA0C6594863E806
D2896DB359FDADCAE2E59B2542B43A2E
1951C1EC1699BF7B5C34C5F552FC98A9
22F8623CA1E12ECDFA6EE30F5D4109EA
02DCEF2550827A173BD0EA9637A25631
0DEBD60E9CF8B60F8D70B2B44113ED12
EB1F6058A16FD21BE6FA9F3A72863141
CF19278D
Value generated above
@@ -402,47 +402,47 @@ random_padding_bytes = DAC1BFD8598025A002DC510182ED76EEC0CF5B233022A4D3F0108F831
6) Server responds with:
Received payload (excluding transport headers/trailers):
-0000 | 00 00 00 00 00 00 00 00 01 5C D8 27 2C 92 6D 66
-0010 | 9C 02 00 00 5C 07 E8 D0 05 64 65 F4 C5 3A DA 11
-0020 | 5F 68 C4 39 92 23 7D FB E3 02 5A E4 65 D2 31 FF
-0030 | DA 4F 25 8A 8C C6 D2 99 FE 50 02 00 2F 42 2F F6
-0040 | A0 16 8C F5 20 97 A8 80 2C EB 8D 7A 5B 2D 74 5A
-0050 | FE 0E F3 5A 43 4E 89 05 78 32 A8 5F C6 3B 96 82
-0060 | 83 CE DE CD 18 86 95 1C 96 1E 8C 2C 14 3F 3D EB
-0070 | 11 7A 5F 88 DF F1 E7 02 DC BC FB 02 92 7B B8 8D
-0080 | F0 CF A0 3F 89 09 3B EC 3D C1 AF 58 A4 88 A5 2B
-0090 | C5 02 0A 92 4A 19 21 06 FA DE A5 B7 FC 43 C5 38
-00A0 | CD D8 C5 5F E3 AB E8 56 BB 46 08 84 7D 23 62 99
-00B0 | 66 44 EB 2A 77 44 6B A6 B8 56 CC 88 49 CF 70 D5
-00C0 | 37 6F 10 0A 62 A3 BE 1F C9 82 A5 F8 00 BD B5 5B
-00D0 | 71 4C D5 EA 3A 6B F5 34 74 4C A0 CC D6 8C 76 5A
-00E0 | 50 3B 5D 88 64 9A 58 6D 09 D6 28 93 E3 15 A0 4C
-00F0 | E4 70 81 B7 B8 5A 62 38 7E F9 A9 1E B6 76 87 82
-0100 | E9 3E B8 1C D6 0E 27 DC E0 01 8F 1B 5B 71 62 78
-0110 | 21 6D 97 88 2B C2 AC A8 57 DB 46 2C 65 F4 05 18
-0120 | FC EA BA F3 0A 53 45 49 11 D4 9D FA 35 E8 DB AE
-0130 | 4C 71 4E CE 22 11 3E CE 66 68 15 A2 C6 82 CB 9F
-0140 | 55 DB 9B 0C 7D 3F B9 D3 E6 62 CF 7A 8B 08 4D BD
-0150 | 84 2B AB AC CA 32 07 AD C0 F8 32 9C 4C 2C 09 03
-0160 | 78 F8 BE ED 55 EA 40 38 24 81 62 A2 A5 48 9D 0F
-0170 | A0 F6 9D A7 58 46 9F 4B 7F CC F8 88 7C 71 D9 D3
-0180 | 07 19 AB 6C E0 79 5E 37 55 A6 A3 38 FF 35 63 6F
-0190 | B4 71 5A C3 93 A3 0D 11 DF CD 69 43 48 9C EC 97
-01A0 | 62 A8 4B 68 23 F1 3F B3 49 38 F9 D1 90 83 61 78
-01B0 | 1D DC FA 3E 75 22 BA 24 0D D7 0A C6 71 48 F6 35
-01C0 | F8 E2 E4 14 73 16 DF 86 4E F9 B1 A6 6F B1 9A B3
-01D0 | 89 8F 7D AC 4E 64 1F 98 FD 44 55 C5 6D 90 62 B8
-01E0 | C9 58 16 BD BE E6 C4 73 6B 85 6A 0C 96 4D 1C 6A
-01F0 | 2F E2 86 90 47 7B EB F3 A0 C5 CE 9F FC 1E 1A B7
-0200 | 13 60 A7 6F 8F 10 68 76 02 1E A1 3A CE 0A 42 4D
-0210 | 8A 5C F6 2B 06 69 C6 0F EA AA BD 7C F5 5A 8A DE
-0220 | 71 2F E3 03 A2 F6 4C 62 3F DF 6C 6A 3B 9C 1C AB
-0230 | 72 8B B3 AA BC B5 8B FF C9 96 39 22 07 84 F0 8E
-0240 | D0 EF 58 B9 7B 90 3D 73 6C 69 7A BC 8C CA D3 37
-0250 | 79 8A 6E C0 6F 6D 15 B3 9B D4 C9 D9 B0 58 F1 88
-0260 | 00 C0 D2 B4 E5 8F 22 6B DA 33 A4 22 42 84 E7 28
-0270 | 63 49 6B C8 52 7F 2F 33 05 14 8D A7 EC 32 72 E1
-0280 | C1 8C 5E 06 EE A7 4B D4 4D 08 AF CD
+0000 | 00 00 00 00 00 00 00 00 01 1C 54 CA 54 60 70 66
+0010 | B8 02 00 00 5C 07 E8 D0 2B 9B B4 57 48 8F 49 54
+0020 | 41 48 B3 ED 2C 05 34 66 67 AF D3 E0 E0 69 4C 75
+0030 | FE F5 FF DC A1 EE F5 BE FE 50 02 00 8C DE 11 D6
+0040 | 0A 7D C0 F0 39 91 0D 3F E8 FF 23 F2 E0 2A 21 91
+0050 | 94 E0 D5 AB E4 C8 BC 74 CC 4B 8B 33 9D 22 FF B6
+0060 | A1 F1 D7 FE BE 13 78 8D DD 5B B6 02 DC 12 41 70
+0070 | A2 D4 24 D2 B7 91 4F E5 CF ED BB E9 DB 06 F2 12
+0080 | 6E EB 6E E6 0D 91 CC 98 31 41 29 A2 3C 63 1E 88
+0090 | 08 92 ED 77 61 F2 C9 60 89 B6 39 CF 7E 46 9B ED
+00A0 | 00 D7 B6 7E B6 1C B2 19 63 57 07 90 2C A3 18 0D
+00B0 | A7 9F 8E 88 D6 53 30 E9 AF 92 C0 72 B6 95 96 CD
+00C0 | 16 03 36 96 18 AE 81 6A C9 59 D1 16 2E 60 8E BC
+00D0 | C6 C2 8B 7D D2 36 10 55 C2 79 8C B8 0A B8 4B BE
+00E0 | 66 1E 88 57 6A 85 90 D5 B4 BC 2A AF 28 0B B7 40
+00F0 | 8E 09 40 BE 19 B9 4B 90 9E 54 51 11 6C DE D4 FA
+0100 | 3A C1 99 C2 79 33 32 9D DF 4A 71 6C F1 59 84 89
+0110 | 77 6C 96 63 02 AC E2 42 2E D3 9F 99 77 FC E4 E8
+0120 | 29 91 F4 C7 49 2A FC 39 4A F4 B6 E7 82 7D 3F 0D
+0130 | 10 4B 02 E9 32 84 1D 63 A6 FE CD 7B 72 43 C0 A9
+0140 | F5 61 74 23 60 86 A5 9A 1A E8 B4 35 BE 81 61 6A
+0150 | 64 9D 80 D7 F3 35 59 5A 7B 47 0B CB CD 9C 2D 6D
+0160 | 0C 6B D6 68 B3 E1 88 97 53 C2 CC 16 D3 EE CC 8A
+0170 | B9 7D 0A 6D 34 86 7C E2 BA 63 A4 74 42 0A 0C D6
+0180 | 35 FA FE F4 11 07 C8 EA 47 65 E8 39 16 BF B4 66
+0190 | 46 4C 5C EC 2F 4E 08 82 D7 6C 37 23 C7 C4 6F 69
+01A0 | 97 3A 50 A3 C9 AC E3 61 29 A9 C3 17 2E EE 95 20
+01B0 | DF AB A9 36 8A 08 11 0A 20 8B D3 94 71 83 B8 E3
+01C0 | 91 24 81 8B 91 37 71 48 7B EF BB B6 53 CD 62 B3
+01D0 | 1B BF 80 94 BA D9 09 2D 48 21 A3 B4 EF 53 6C 2F
+01E0 | 41 5A A6 B8 C3 59 09 EA F8 C7 A2 C5 44 6B 91 B5
+01F0 | 96 48 4B 30 EE 79 FB 61 4F 1C 15 10 81 08 31 E6
+0200 | DD D4 12 C4 3B 77 DC C2 A3 C7 A7 31 C9 81 EA BE
+0210 | 1F EE 0D C8 EF 40 05 B5 79 36 3C 96 8D AA 0F 0F
+0220 | 8A 7F 23 B2 BF 8A D8 7E 5E 94 BB 93 EE CC 3D 57
+0230 | BF 32 03 A2 41 E8 F1 CD 1B 5E 2B B5 C6 2D 3E B0
+0240 | 49 B5 2C FB 38 16 A4 A8 37 EE 48 4F 69 22 13 F2
+0250 | 3B 8F AB 9B 4E 87 75 3A 16 28 E9 96 93 78 41 30
+0260 | E9 62 67 96 F2 F4 26 AF 46 D6 AA 8D E8 9C 7C 9C
+0270 | 46 53 30 E8 16 11 FD 18 3E 8B 99 AD 65 16 3B 6E
+0280 | A8 99 E8 08 28 14 ED 92 81 F3 96 19
Payload (de)serialization:
server_DH_params_ok#d0e8075c nonce:int128 server_nonce:int128 encrypted_answer:string = Server_DH_Params;
@@ -464,13 +464,13 @@ random_padding_bytes = DAC1BFD8598025A002DC510182ED76EEC0CF5B233022A4D3F0108F831
message_id
8, 8
-015CD8272C926D66
+011C54CA54607066
Message ID generated as specified here » (unixtime() << 32) + (N*4)
message_length
16, 4
-9C020000
(668 in decimal)
+B8020000
(696 in decimal)
Message body length
@@ -482,19 +482,19 @@ random_padding_bytes = DAC1BFD8598025A002DC510182ED76EEC0CF5B233022A4D3F0108F831
nonce
24, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Value generated by client in Step 1
server_nonce
40, 16
-E3025AE465D231FFDA4F258A8CC6D299
+67AFD3E0E0694C75FEF5FFDCA1EEF5BE
Value received from server in Step 2
encrypted_answer
56, 596
-FE5002002F422FF6A0168CF52097A880
2CEB8D7A5B2D745AFE0EF35A434E8905
7832A85FC63B968283CEDECD1886951C
961E8C2C143F3DEB117A5F88DFF1E702
DCBCFB02927BB88DF0CFA03F89093BEC
3DC1AF58A488A52BC5020A924A192106
FADEA5B7FC43C538CDD8C55FE3ABE856
BB4608847D2362996644EB2A77446BA6
B856CC8849CF70D5376F100A62A3BE1F
C982A5F800BDB55B714CD5EA3A6BF534
744CA0CCD68C765A503B5D88649A586D
09D62893E315A04CE47081B7B85A6238
7EF9A91EB6768782E93EB81CD60E27DC
E0018F1B5B716278216D97882BC2ACA8
57DB462C65F40518FCEABAF30A534549
11D49DFA35E8DBAE4C714ECE22113ECE
666815A2C682CB9F55DB9B0C7D3FB9D3
E662CF7A8B084DBD842BABACCA3207AD
C0F8329C4C2C090378F8BEED55EA4038
248162A2A5489D0FA0F69DA758469F4B
7FCCF8887C71D9D30719AB6CE0795E37
55A6A338FF35636FB4715AC393A30D11
DFCD6943489CEC9762A84B6823F13FB3
4938F9D1908361781DDCFA3E7522BA24
0DD70AC67148F635F8E2E4147316DF86
4EF9B1A66FB19AB3898F7DAC4E641F98
FD4455C56D9062B8C95816BDBEE6C473
6B856A0C964D1C6A2FE28690477BEBF3
A0C5CE9FFC1E1AB71360A76F8F106876
021EA13ACE0A424D8A5CF62B0669C60F
EAAABD7CF55A8ADE712FE303A2F64C62
3FDF6C6A3B9C1CAB728BB3AABCB58BFF
C99639220784F08ED0EF58B97B903D73
6C697ABC8CCAD337798A6EC06F6D15B3
9BD4C9D9B058F18800C0D2B4E58F226B
DA33A4224284E72863496BC8527F2F33
05148DA7EC3272E1C18C5E06EEA74BD4
4D08AFCD
+FE5002008CDE11D60A7DC0F039910D3F
E8FF23F2E02A219194E0D5ABE4C8BC74
CC4B8B339D22FFB6A1F1D7FEBE13788D
DD5BB602DC124170A2D424D2B7914FE5
CFEDBBE9DB06F2126EEB6EE60D91CC98
314129A23C631E880892ED7761F2C960
89B639CF7E469BED00D7B67EB61CB219
635707902CA3180DA79F8E88D65330E9
AF92C072B69596CD1603369618AE816A
C959D1162E608EBCC6C28B7DD2361055
C2798CB80AB84BBE661E88576A8590D5
B4BC2AAF280BB7408E0940BE19B94B90
9E5451116CDED4FA3AC199C27933329D
DF4A716CF1598489776C966302ACE242
2ED39F9977FCE4E82991F4C7492AFC39
4AF4B6E7827D3F0D104B02E932841D63
A6FECD7B7243C0A9F56174236086A59A
1AE8B435BE81616A649D80D7F335595A
7B470BCBCD9C2D6D0C6BD668B3E18897
53C2CC16D3EECC8AB97D0A6D34867CE2
BA63A474420A0CD635FAFEF41107C8EA
4765E83916BFB466464C5CEC2F4E0882
D76C3723C7C46F69973A50A3C9ACE361
29A9C3172EEE9520DFABA9368A08110A
208BD3947183B8E39124818B91377148
7BEFBBB653CD62B31BBF8094BAD9092D
4821A3B4EF536C2F415AA6B8C35909EA
F8C7A2C5446B91B596484B30EE79FB61
4F1C1510810831E6DDD412C43B77DCC2
A3C7A731C981EABE1FEE0DC8EF4005B5
79363C968DAA0F0F8A7F23B2BF8AD87E
5E94BB93EECC3D57BF3203A241E8F1CD
1B5E2BB5C62D3EB049B52CFB3816A4A8
37EE484F692213F23B8FAB9B4E87753A
1628E99693784130E9626796F2F426AF
46D6AA8DE89C7C9C465330E81611FD18
3E8B99AD65163B6EA899E8082814ED92
81F39619
See below
@@ -502,20 +502,20 @@ random_padding_bytes = DAC1BFD8598025A002DC510182ED76EEC0CF5B233022A4D3F0108F831
Decrypt encrypted_answer
using the reverse of the process specified in step 6 :
-encrypted_answer = 2F422FF6A0168CF52097A8802CEB8D7A5B2D745AFE0EF35A434E89057832A85FC63B968283CEDECD1886951C961E8C2C143F3DEB117A5F88DFF1E702DCBCFB02927BB88DF0CFA03F89093BEC3DC1AF58A488A52BC5020A924A192106FADEA5B7FC43C538CDD8C55FE3ABE856BB4608847D2362996644EB2A77446BA6B856CC8849CF70D5376F100A62A3BE1FC982A5F800BDB55B714CD5EA3A6BF534744CA0CCD68C765A503B5D88649A586D09D62893E315A04CE47081B7B85A62387EF9A91EB6768782E93EB81CD60E27DCE0018F1B5B716278216D97882BC2ACA857DB462C65F40518FCEABAF30A53454911D49DFA35E8DBAE4C714ECE22113ECE666815A2C682CB9F55DB9B0C7D3FB9D3E662CF7A8B084DBD842BABACCA3207ADC0F8329C4C2C090378F8BEED55EA4038248162A2A5489D0FA0F69DA758469F4B7FCCF8887C71D9D30719AB6CE0795E3755A6A338FF35636FB4715AC393A30D11DFCD6943489CEC9762A84B6823F13FB34938F9D1908361781DDCFA3E7522BA240DD70AC67148F635F8E2E4147316DF864EF9B1A66FB19AB3898F7DAC4E641F98FD4455C56D9062B8C95816BDBEE6C4736B856A0C964D1C6A2FE28690477BEBF3A0C5CE9FFC1E1AB71360A76F8F106876021EA13ACE0A424D8A5CF62B0669C60FEAAABD7CF55A8ADE712FE303A2F64C623FDF6C6A3B9C1CAB728BB3AABCB58BFFC99639220784F08ED0EF58B97B903D736C697ABC8CCAD337798A6EC06F6D15B39BD4C9D9B058F18800C0D2B4E58F226BDA33A4224284E72863496BC8527F2F3305148DA7EC3272E1C18C5E06EEA74BD44D08AFCD
-tmp_aes_key = BDCEDFD7430D9472DBF8537512CE90FC19328E3DFD04886807DEF74CFD121187
-tmp_aes_iv = C74A1AE615CBBB87B43F1CF13C5C7F85E8D7B2D73CFFD9DB621BAA065C0D1AF5
+encrypted_answer = 8CDE11D60A7DC0F039910D3FE8FF23F2E02A219194E0D5ABE4C8BC74CC4B8B339D22FFB6A1F1D7FEBE13788DDD5BB602DC124170A2D424D2B7914FE5CFEDBBE9DB06F2126EEB6EE60D91CC98314129A23C631E880892ED7761F2C96089B639CF7E469BED00D7B67EB61CB219635707902CA3180DA79F8E88D65330E9AF92C072B69596CD1603369618AE816AC959D1162E608EBCC6C28B7DD2361055C2798CB80AB84BBE661E88576A8590D5B4BC2AAF280BB7408E0940BE19B94B909E5451116CDED4FA3AC199C27933329DDF4A716CF1598489776C966302ACE2422ED39F9977FCE4E82991F4C7492AFC394AF4B6E7827D3F0D104B02E932841D63A6FECD7B7243C0A9F56174236086A59A1AE8B435BE81616A649D80D7F335595A7B470BCBCD9C2D6D0C6BD668B3E1889753C2CC16D3EECC8AB97D0A6D34867CE2BA63A474420A0CD635FAFEF41107C8EA4765E83916BFB466464C5CEC2F4E0882D76C3723C7C46F69973A50A3C9ACE36129A9C3172EEE9520DFABA9368A08110A208BD3947183B8E39124818B913771487BEFBBB653CD62B31BBF8094BAD9092D4821A3B4EF536C2F415AA6B8C35909EAF8C7A2C5446B91B596484B30EE79FB614F1C1510810831E6DDD412C43B77DCC2A3C7A731C981EABE1FEE0DC8EF4005B579363C968DAA0F0F8A7F23B2BF8AD87E5E94BB93EECC3D57BF3203A241E8F1CD1B5E2BB5C62D3EB049B52CFB3816A4A837EE484F692213F23B8FAB9B4E87753A1628E99693784130E9626796F2F426AF46D6AA8DE89C7C9C465330E81611FD183E8B99AD65163B6EA899E8082814ED9281F39619
+tmp_aes_key = 41ED86D5625B49E5AD48B6334FCAF9206338B1310F40B11218CE95FE0D8BD3D7
+tmp_aes_iv = 62CC8A87DF311B326FD17693D711769B78AA2670C42F7B76F3448D39FDAD1344
Yielding:
-answer_with_hash = 5220D1E9081BB641872FE1A358D0589AD7DDACF7BA0D89B5056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D29903000000FE000100C71CAEB9C6B1C9048E6C522F70F13F73980D40238E3E21C14934D037563D930F48198A0AA7C14058229493D22530F4DBFA336F6E0AC925139543AED44CCE7C3720FD51F69458705AC68CD4FE6B6B13ABDC9746512969328454F18FAF8C595F642477FE96BB2A941D5BCD1D4AC8CC49880708FA9B378E3C4F3A9060BEE67CF9A4A4A695811051907E162753B56B0F6B410DBA74D8A84B2A14B3144E0EF1284754FD17ED950D5965B4B9DD46582DB1178D169C6BC465B0D6FF9CA3928FEF5B9AE4E418FC15E83EBEA0F87FA9FF5EED70050DED2849F47BF959D956850CE929851F0D8115F635B105EE2E4E15D04B2454BF6F4FADF034B10403119CD8E3B92FCC5BFEFF000087B9FC92547F6E176F85DAFD7FC1D136AACB99C513BF57BE1E9537FC3C4D08A869069B55816E003A95D918A35E86AAA41E961BC673F6AE07255BA52D59DCAEC5ED287D05A7CC101D8E25FD6AA629C4DA1C24398D996449AF28F345203AC28EC66C8B7CB169062217A2A0AE399FBC3958531A389838044239AC399E1FCB6A974C497CE29904F9C973CBF6258E5780D748C6B3BCE9FEE4CC90BD747452BFE44DC391D1513ECB7E5D06A613A27E4940335FE07E2EBF9FE39B78B5E61FBF23C6BEC702A08C4F2CCA791C62F3A40B32B7661F954B8CAE60E2E844C757B403542046421BE8B9BDA5460B0472D3499B189CADE53D9990B868197C3F4B08016DE6D180002C926D667F599CDE3A2C8D2E
-answer = BA0D89B5056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D29903000000FE000100C71CAEB9C6B1C9048E6C522F70F13F73980D40238E3E21C14934D037563D930F48198A0AA7C14058229493D22530F4DBFA336F6E0AC925139543AED44CCE7C3720FD51F69458705AC68CD4FE6B6B13ABDC9746512969328454F18FAF8C595F642477FE96BB2A941D5BCD1D4AC8CC49880708FA9B378E3C4F3A9060BEE67CF9A4A4A695811051907E162753B56B0F6B410DBA74D8A84B2A14B3144E0EF1284754FD17ED950D5965B4B9DD46582DB1178D169C6BC465B0D6FF9CA3928FEF5B9AE4E418FC15E83EBEA0F87FA9FF5EED70050DED2849F47BF959D956850CE929851F0D8115F635B105EE2E4E15D04B2454BF6F4FADF034B10403119CD8E3B92FCC5BFEFF000087B9FC92547F6E176F85DAFD7FC1D136AACB99C513BF57BE1E9537FC3C4D08A869069B55816E003A95D918A35E86AAA41E961BC673F6AE07255BA52D59DCAEC5ED287D05A7CC101D8E25FD6AA629C4DA1C24398D996449AF28F345203AC28EC66C8B7CB169062217A2A0AE399FBC3958531A389838044239AC399E1FCB6A974C497CE29904F9C973CBF6258E5780D748C6B3BCE9FEE4CC90BD747452BFE44DC391D1513ECB7E5D06A613A27E4940335FE07E2EBF9FE39B78B5E61FBF23C6BEC702A08C4F2CCA791C62F3A40B32B7661F954B8CAE60E2E844C757B403542046421BE8B9BDA5460B0472D3499B189CADE53D9990B868197C3F4B08016DE6D180002C926D667F599CDE3A2C8D2E
+answer_with_hash = C0045CD65EBBDF5F7725AAF94217DA495692D6C0BA0D89B52B9BB457488F49544148B3ED2C05346667AFD3E0E0694C75FEF5FFDCA1EEF5BE03000000FE000100C71CAEB9C6B1C9048E6C522F70F13F73980D40238E3E21C14934D037563D930F48198A0AA7C14058229493D22530F4DBFA336F6E0AC925139543AED44CCE7C3720FD51F69458705AC68CD4FE6B6B13ABDC9746512969328454F18FAF8C595F642477FE96BB2A941D5BCD1D4AC8CC49880708FA9B378E3C4F3A9060BEE67CF9A4A4A695811051907E162753B56B0F6B410DBA74D8A84B2A14B3144E0EF1284754FD17ED950D5965B4B9DD46582DB1178D169C6BC465B0D6FF9CA3928FEF5B9AE4E418FC15E83EBEA0F87FA9FF5EED70050DED2849F47BF959D956850CE929851F0D8115F635B105EE2E4E15D04B2454BF6F4FADF034B10403119CD8E3B92FCC5BFE00010030CA71E79409CE75E5E01F0F49D7C331D0EC962A6DC5C0FDA2EC500DD7E977D9B82258AD4519A533CE319AA1FBCE0DD730554FD2CB13CECFD073DE230D90B7BC5A7AEB4D6F89D74486891DB72530BA1696E9DA3F33E6BB0BB3F24943276410BAA650602C1C16A6B88DF8D797E48A6155DB88AC2EC93BB3535521597C519CACECB1AB52FCD1EEA5EC67073BAD76E09ACCFECCF67E8EF9A8BD049BC30E3D277BCB6B8713BC2845CF5404AAC6C1189DFC0575309527FF4ECC21085D87638606036F0482C4739C40D7A15C5F16D1446FF8C1B57AEA5BEE9B87FDCA6B548937014AAD610AC78B0603ACFE1F8C1453504FA019F57ABA05B55FDB6EFE46D71AEAEC98C7546070661A6398BDAABADEF3
+answer = BA0D89B52B9BB457488F49544148B3ED2C05346667AFD3E0E0694C75FEF5FFDCA1EEF5BE03000000FE000100C71CAEB9C6B1C9048E6C522F70F13F73980D40238E3E21C14934D037563D930F48198A0AA7C14058229493D22530F4DBFA336F6E0AC925139543AED44CCE7C3720FD51F69458705AC68CD4FE6B6B13ABDC9746512969328454F18FAF8C595F642477FE96BB2A941D5BCD1D4AC8CC49880708FA9B378E3C4F3A9060BEE67CF9A4A4A695811051907E162753B56B0F6B410DBA74D8A84B2A14B3144E0EF1284754FD17ED950D5965B4B9DD46582DB1178D169C6BC465B0D6FF9CA3928FEF5B9AE4E418FC15E83EBEA0F87FA9FF5EED70050DED2849F47BF959D956850CE929851F0D8115F635B105EE2E4E15D04B2454BF6F4FADF034B10403119CD8E3B92FCC5BFE00010030CA71E79409CE75E5E01F0F49D7C331D0EC962A6DC5C0FDA2EC500DD7E977D9B82258AD4519A533CE319AA1FBCE0DD730554FD2CB13CECFD073DE230D90B7BC5A7AEB4D6F89D74486891DB72530BA1696E9DA3F33E6BB0BB3F24943276410BAA650602C1C16A6B88DF8D797E48A6155DB88AC2EC93BB3535521597C519CACECB1AB52FCD1EEA5EC67073BAD76E09ACCFECCF67E8EF9A8BD049BC30E3D277BCB6B8713BC2845CF5404AAC6C1189DFC0575309527FF4ECC21085D87638606036F0482C4739C40D7A15C5F16D1446FF8C1B57AEA5BEE9B87FDCA6B548937014AAD610AC78B0603ACFE1F8C1453504FA019F57ABA05B55FDB6EFE46D71AEAEC98C7546070661A6398BDAABADEF3
Generated payload (excluding transport headers/trailers):
-0000 | BA 0D 89 B5 05 64 65 F4 C5 3A DA 11 5F 68 C4 39
-0010 | 92 23 7D FB E3 02 5A E4 65 D2 31 FF DA 4F 25 8A
-0020 | 8C C6 D2 99 03 00 00 00 FE 00 01 00 C7 1C AE B9
+0000 | BA 0D 89 B5 2B 9B B4 57 48 8F 49 54 41 48 B3 ED
+0010 | 2C 05 34 66 67 AF D3 E0 E0 69 4C 75 FE F5 FF DC
+0020 | A1 EE F5 BE 03 00 00 00 FE 00 01 00 C7 1C AE B9
0030 | C6 B1 C9 04 8E 6C 52 2F 70 F1 3F 73 98 0D 40 23
0040 | 8E 3E 21 C1 49 34 D0 37 56 3D 93 0F 48 19 8A 0A
0050 | A7 C1 40 58 22 94 93 D2 25 30 F4 DB FA 33 6F 6E
@@ -531,24 +531,24 @@ answer = BA0D89B5056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D29
00F0 | E8 3E BE A0 F8 7F A9 FF 5E ED 70 05 0D ED 28 49
0100 | F4 7B F9 59 D9 56 85 0C E9 29 85 1F 0D 81 15 F6
0110 | 35 B1 05 EE 2E 4E 15 D0 4B 24 54 BF 6F 4F AD F0
-0120 | 34 B1 04 03 11 9C D8 E3 B9 2F CC 5B FE FF 00 00
-0130 | 87 B9 FC 92 54 7F 6E 17 6F 85 DA FD 7F C1 D1 36
-0140 | AA CB 99 C5 13 BF 57 BE 1E 95 37 FC 3C 4D 08 A8
-0150 | 69 06 9B 55 81 6E 00 3A 95 D9 18 A3 5E 86 AA A4
-0160 | 1E 96 1B C6 73 F6 AE 07 25 5B A5 2D 59 DC AE C5
-0170 | ED 28 7D 05 A7 CC 10 1D 8E 25 FD 6A A6 29 C4 DA
-0180 | 1C 24 39 8D 99 64 49 AF 28 F3 45 20 3A C2 8E C6
-0190 | 6C 8B 7C B1 69 06 22 17 A2 A0 AE 39 9F BC 39 58
-01A0 | 53 1A 38 98 38 04 42 39 AC 39 9E 1F CB 6A 97 4C
-01B0 | 49 7C E2 99 04 F9 C9 73 CB F6 25 8E 57 80 D7 48
-01C0 | C6 B3 BC E9 FE E4 CC 90 BD 74 74 52 BF E4 4D C3
-01D0 | 91 D1 51 3E CB 7E 5D 06 A6 13 A2 7E 49 40 33 5F
-01E0 | E0 7E 2E BF 9F E3 9B 78 B5 E6 1F BF 23 C6 BE C7
-01F0 | 02 A0 8C 4F 2C CA 79 1C 62 F3 A4 0B 32 B7 66 1F
-0200 | 95 4B 8C AE 60 E2 E8 44 C7 57 B4 03 54 20 46 42
-0210 | 1B E8 B9 BD A5 46 0B 04 72 D3 49 9B 18 9C AD E5
-0220 | 3D 99 90 B8 68 19 7C 3F 4B 08 01 6D E6 D1 80 00
-0230 | 2C 92 6D 66
+0120 | 34 B1 04 03 11 9C D8 E3 B9 2F CC 5B FE 00 01 00
+0130 | 30 CA 71 E7 94 09 CE 75 E5 E0 1F 0F 49 D7 C3 31
+0140 | D0 EC 96 2A 6D C5 C0 FD A2 EC 50 0D D7 E9 77 D9
+0150 | B8 22 58 AD 45 19 A5 33 CE 31 9A A1 FB CE 0D D7
+0160 | 30 55 4F D2 CB 13 CE CF D0 73 DE 23 0D 90 B7 BC
+0170 | 5A 7A EB 4D 6F 89 D7 44 86 89 1D B7 25 30 BA 16
+0180 | 96 E9 DA 3F 33 E6 BB 0B B3 F2 49 43 27 64 10 BA
+0190 | A6 50 60 2C 1C 16 A6 B8 8D F8 D7 97 E4 8A 61 55
+01A0 | DB 88 AC 2E C9 3B B3 53 55 21 59 7C 51 9C AC EC
+01B0 | B1 AB 52 FC D1 EE A5 EC 67 07 3B AD 76 E0 9A CC
+01C0 | FE CC F6 7E 8E F9 A8 BD 04 9B C3 0E 3D 27 7B CB
+01D0 | 6B 87 13 BC 28 45 CF 54 04 AA C6 C1 18 9D FC 05
+01E0 | 75 30 95 27 FF 4E CC 21 08 5D 87 63 86 06 03 6F
+01F0 | 04 82 C4 73 9C 40 D7 A1 5C 5F 16 D1 44 6F F8 C1
+0200 | B5 7A EA 5B EE 9B 87 FD CA 6B 54 89 37 01 4A AD
+0210 | 61 0A C7 8B 06 03 AC FE 1F 8C 14 53 50 4F A0 19
+0220 | F5 7A BA 05 B5 5F DB 6E FE 46 D7 1A EA EC 98 C7
+0230 | 54 60 70 66
Payload (de)serialization:
server_DH_inner_data#b5890dba nonce:int128 server_nonce:int128 g:int dh_prime:string g_a:string server_time:int = Server_DH_inner_data;
@@ -570,13 +570,13 @@ answer = BA0D89B5056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D29
nonce
4, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Value generated by client in Step 1
server_nonce
20, 16
-E3025AE465D231FFDA4F258A8CC6D299
+67AFD3E0E0694C75FEF5FFDCA1EEF5BE
Value received from server in Step 2
@@ -594,13 +594,13 @@ answer = BA0D89B5056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D29
g_a
300, 260
-FEFF000087B9FC92547F6E176F85DAFD
7FC1D136AACB99C513BF57BE1E9537FC
3C4D08A869069B55816E003A95D918A3
5E86AAA41E961BC673F6AE07255BA52D
59DCAEC5ED287D05A7CC101D8E25FD6A
A629C4DA1C24398D996449AF28F34520
3AC28EC66C8B7CB169062217A2A0AE39
9FBC3958531A389838044239AC399E1F
CB6A974C497CE29904F9C973CBF6258E
5780D748C6B3BCE9FEE4CC90BD747452
BFE44DC391D1513ECB7E5D06A613A27E
4940335FE07E2EBF9FE39B78B5E61FBF
23C6BEC702A08C4F2CCA791C62F3A40B
32B7661F954B8CAE60E2E844C757B403
542046421BE8B9BDA5460B0472D3499B
189CADE53D9990B868197C3F4B08016D
E6D18000
+FE00010030CA71E79409CE75E5E01F0F
49D7C331D0EC962A6DC5C0FDA2EC500D
D7E977D9B82258AD4519A533CE319AA1
FBCE0DD730554FD2CB13CECFD073DE23
0D90B7BC5A7AEB4D6F89D74486891DB7
2530BA1696E9DA3F33E6BB0BB3F24943
276410BAA650602C1C16A6B88DF8D797
E48A6155DB88AC2EC93BB3535521597C
519CACECB1AB52FCD1EEA5EC67073BAD
76E09ACCFECCF67E8EF9A8BD049BC30E
3D277BCB6B8713BC2845CF5404AAC6C1
189DFC0575309527FF4ECC21085D8763
8606036F0482C4739C40D7A15C5F16D1
446FF8C1B57AEA5BEE9B87FDCA6B5489
37014AAD610AC78B0603ACFE1F8C1453
504FA019F57ABA05B55FDB6EFE46D71A
EAEC98C7
g_a
diffie-hellman parameter
server_time
560, 4
-2C926D66
(1718456876 in decimal)
+54607066
(1718640724 in decimal)
Server time
@@ -609,34 +609,34 @@ answer = BA0D89B5056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D29
7) Client computes random 2048-bit number b (using a sufficient amount of entropy) and sends the server a message
First, generate a secure random 2048-bit number b:
-b = 44B411B51835D7F146DC9E759F61E533D1EECACF0F69BE2914276A97E81B372C5D8EDBA01731293BE5B772CD56450777CECDC70C4D89E48339570CB8AF41AF141C47656CE6A5317879BA59E1EFDA8CBC1AB9AB74253CD4A3BE490CCED4848272BB35CA14F319A56B421B57CD0B0B0D4A2CBC2B11F7A8E535CC02682BF5E08DD388B6F56CED4DC1FE5FA76FCB7ADFC924FC05096305326550B117764D4E3D77DB408C289C900FB7F846DC154D212EA6F6F528EE55DF57623E454F92680237BEA7F8790A0314035051487FCCD07D6345D9B68FFE034CB1A24D4849CD0EEB08F5F61B90824B8F35D3BEC9631743E4A07E64DFBE8CA881A321B1291F9078E985363F
+b = 0690B776AF776546FE44775CF3AD1DA0C8C4B98314316F7E5DD6EFAF381154FC720EE12FF2C3E1988176FB141030CF08B9584F3414EAA30FC0D9C27BDF50344B05B30DB8F0E36A0E5D78F80190DC21A3E6AB420B461F7642AD37C1B01C56A480D6168EF2023CB5549BA93D72ACFEC0054E9E2E0BAF844A59FBA955234616AC167181557F75EDADCFCCFD711180F80BE8AC6C4D10CA879A554655B21DC0E6A7216D0CE888FEECD00319971351BA00CFB49CB67189A1EFD2657ACEB568112BB299A728A57358F0AC7AE85F88EEA680D32A069CA74B801959F15E371FB42C164F3F0E5BC1CF44DF655A2A5FB741C0FF1636E506996B648081A20CA274FD1BD2C4AC
Then compute g_b = pow(g, b) mod dh_prime
-g_b = 113A15E3F60347312A76332E78F0F07C7617EC5585CEB4053ECECDB2FCCCF5469E330AF8672C83255BAA1DDDE1990EA62A60FD85B0669878FEEA5587EF105E7D3EA679497EC7D8E98D871306F7F34AFC50CBAF3ACDC416DA5D93A7CCC20171D8B7873315C38EA1ABF07A12EFF70C8972B6547C104216F6AF12EA5BCDC796D1629D3CC324EE031DF9E78B127F372567BC369544F5B6C1A0843452283AD049D27EBF9E68A90A1CD74ABB605C22D7447A347877FAD619822B5854EC0898BF95F4C77FFB0974EDB74607611FE9F9DCCC147E3C4DE70C2FCEC61758B3EE10A6B73E4A80C406F8324204F3DE8B445FE20314A819773CC2268C7950FB1E43A9E44D35AF
+g_b = 787AB5C5BE51BF02428BD5E00C26829DFB4F206711CBB25190AEC1C1A0D5C6D9A94FF350B8DC9C8ADEA5AE35400AD0D6744D722CE74FF5B8E8C9D1F4BF9C8F039753FC6836D8A3A310D9443C623DC241CDFC189522EAF1B4E665C27AE82F43208F45AEB7BEF6F508333A304BC098DFB6B3376116081B8B028F7D254F3369B63034A68CA27DDA5805D03569B2C0EF99A3C86950BF4F470D5E10653AF57B916BB739D7BFFF275934D74CA1A9EE188335C7943B065B6FB6C03F2EB4FC456636621EF7894595264239492CE03E3D77AC23AA1941B29586566EB57F50502333F7B4B0979AC34F51116067A6D28EE8EF38A51670F39D578F979933137185B5E176C49C
7.1) generation of encrypted_data
Generated payload (excluding transport headers/trailers):
-0000 | 54 B6 43 66 05 64 65 F4 C5 3A DA 11 5F 68 C4 39
-0010 | 92 23 7D FB E3 02 5A E4 65 D2 31 FF DA 4F 25 8A
-0020 | 8C C6 D2 99 00 00 00 00 00 00 00 00 FE 00 01 00
-0030 | 11 3A 15 E3 F6 03 47 31 2A 76 33 2E 78 F0 F0 7C
-0040 | 76 17 EC 55 85 CE B4 05 3E CE CD B2 FC CC F5 46
-0050 | 9E 33 0A F8 67 2C 83 25 5B AA 1D DD E1 99 0E A6
-0060 | 2A 60 FD 85 B0 66 98 78 FE EA 55 87 EF 10 5E 7D
-0070 | 3E A6 79 49 7E C7 D8 E9 8D 87 13 06 F7 F3 4A FC
-0080 | 50 CB AF 3A CD C4 16 DA 5D 93 A7 CC C2 01 71 D8
-0090 | B7 87 33 15 C3 8E A1 AB F0 7A 12 EF F7 0C 89 72
-00A0 | B6 54 7C 10 42 16 F6 AF 12 EA 5B CD C7 96 D1 62
-00B0 | 9D 3C C3 24 EE 03 1D F9 E7 8B 12 7F 37 25 67 BC
-00C0 | 36 95 44 F5 B6 C1 A0 84 34 52 28 3A D0 49 D2 7E
-00D0 | BF 9E 68 A9 0A 1C D7 4A BB 60 5C 22 D7 44 7A 34
-00E0 | 78 77 FA D6 19 82 2B 58 54 EC 08 98 BF 95 F4 C7
-00F0 | 7F FB 09 74 ED B7 46 07 61 1F E9 F9 DC CC 14 7E
-0100 | 3C 4D E7 0C 2F CE C6 17 58 B3 EE 10 A6 B7 3E 4A
-0110 | 80 C4 06 F8 32 42 04 F3 DE 8B 44 5F E2 03 14 A8
-0120 | 19 77 3C C2 26 8C 79 50 FB 1E 43 A9 E4 4D 35 AF
+0000 | 54 B6 43 66 2B 9B B4 57 48 8F 49 54 41 48 B3 ED
+0010 | 2C 05 34 66 67 AF D3 E0 E0 69 4C 75 FE F5 FF DC
+0020 | A1 EE F5 BE 00 00 00 00 00 00 00 00 FE 00 01 00
+0030 | 78 7A B5 C5 BE 51 BF 02 42 8B D5 E0 0C 26 82 9D
+0040 | FB 4F 20 67 11 CB B2 51 90 AE C1 C1 A0 D5 C6 D9
+0050 | A9 4F F3 50 B8 DC 9C 8A DE A5 AE 35 40 0A D0 D6
+0060 | 74 4D 72 2C E7 4F F5 B8 E8 C9 D1 F4 BF 9C 8F 03
+0070 | 97 53 FC 68 36 D8 A3 A3 10 D9 44 3C 62 3D C2 41
+0080 | CD FC 18 95 22 EA F1 B4 E6 65 C2 7A E8 2F 43 20
+0090 | 8F 45 AE B7 BE F6 F5 08 33 3A 30 4B C0 98 DF B6
+00A0 | B3 37 61 16 08 1B 8B 02 8F 7D 25 4F 33 69 B6 30
+00B0 | 34 A6 8C A2 7D DA 58 05 D0 35 69 B2 C0 EF 99 A3
+00C0 | C8 69 50 BF 4F 47 0D 5E 10 65 3A F5 7B 91 6B B7
+00D0 | 39 D7 BF FF 27 59 34 D7 4C A1 A9 EE 18 83 35 C7
+00E0 | 94 3B 06 5B 6F B6 C0 3F 2E B4 FC 45 66 36 62 1E
+00F0 | F7 89 45 95 26 42 39 49 2C E0 3E 3D 77 AC 23 AA
+0100 | 19 41 B2 95 86 56 6E B5 7F 50 50 23 33 F7 B4 B0
+0110 | 97 9A C3 4F 51 11 60 67 A6 D2 8E E8 EF 38 A5 16
+0120 | 70 F3 9D 57 8F 97 99 33 13 71 85 B5 E1 76 C4 9C
Payload (de)serialization:
client_DH_inner_data#6643b654 nonce:int128 server_nonce:int128 retry_id:long g_b:string = Client_DH_Inner_Data;
@@ -658,19 +658,19 @@ answer = BA0D89B5056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D29
nonce
4, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Value generated by client in Step 1
server_nonce
20, 16
-E3025AE465D231FFDA4F258A8CC6D299
+67AFD3E0E0694C75FEF5FFDCA1EEF5BE
Value received from server in Step 2
g_b
36, 260
-FE000100113A15E3F60347312A76332E
78F0F07C7617EC5585CEB4053ECECDB2
FCCCF5469E330AF8672C83255BAA1DDD
E1990EA62A60FD85B0669878FEEA5587
EF105E7D3EA679497EC7D8E98D871306
F7F34AFC50CBAF3ACDC416DA5D93A7CC
C20171D8B7873315C38EA1ABF07A12EF
F70C8972B6547C104216F6AF12EA5BCD
C796D1629D3CC324EE031DF9E78B127F
372567BC369544F5B6C1A0843452283A
D049D27EBF9E68A90A1CD74ABB605C22
D7447A347877FAD619822B5854EC0898
BF95F4C77FFB0974EDB74607611FE9F9
DCCC147E3C4DE70C2FCEC61758B3EE10
A6B73E4A80C406F8324204F3DE8B445F
E20314A819773CC2268C7950FB1E43A9
E44D35AF
+FE000100787AB5C5BE51BF02428BD5E0
0C26829DFB4F206711CBB25190AEC1C1
A0D5C6D9A94FF350B8DC9C8ADEA5AE35
400AD0D6744D722CE74FF5B8E8C9D1F4
BF9C8F039753FC6836D8A3A310D9443C
623DC241CDFC189522EAF1B4E665C27A
E82F43208F45AEB7BEF6F508333A304B
C098DFB6B3376116081B8B028F7D254F
3369B63034A68CA27DDA5805D03569B2
C0EF99A3C86950BF4F470D5E10653AF5
7B916BB739D7BFFF275934D74CA1A9EE
188335C7943B065B6FB6C03F2EB4FC45
6636621EF7894595264239492CE03E3D
77AC23AA1941B29586566EB57F505023
33F7B4B0979AC34F51116067A6D28EE8
EF38A51670F39D578F979933137185B5
E176C49C
Single-byte prefix denoting length, a 256-byte (2048-bit) string, and zero bytes of padding
@@ -684,47 +684,47 @@ answer = BA0D89B5056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D29
The serialization of Client_DH_Inner_Data produces a string data . This is used to generate encrypted_data as specified in step 6 , using the following inputs:
-data = 54B64366056465F4C53ADA115F68C43992237DFBE3025AE465D231FFDA4F258A8CC6D2990000000000000000FE000100113A15E3F60347312A76332E78F0F07C7617EC5585CEB4053ECECDB2FCCCF5469E330AF8672C83255BAA1DDDE1990EA62A60FD85B0669878FEEA5587EF105E7D3EA679497EC7D8E98D871306F7F34AFC50CBAF3ACDC416DA5D93A7CCC20171D8B7873315C38EA1ABF07A12EFF70C8972B6547C104216F6AF12EA5BCDC796D1629D3CC324EE031DF9E78B127F372567BC369544F5B6C1A0843452283AD049D27EBF9E68A90A1CD74ABB605C22D7447A347877FAD619822B5854EC0898BF95F4C77FFB0974EDB74607611FE9F9DCCC147E3C4DE70C2FCEC61758B3EE10A6B73E4A80C406F8324204F3DE8B445FE20314A819773CC2268C7950FB1E43A9E44D35AF
-padding = EA2C9A01C2F109A81BB0D563
-tmp_aes_key = BDCEDFD7430D9472DBF8537512CE90FC19328E3DFD04886807DEF74CFD121187
-tmp_aes_iv = C74A1AE615CBBB87B43F1CF13C5C7F85E8D7B2D73CFFD9DB621BAA065C0D1AF5
+data = 54B643662B9BB457488F49544148B3ED2C05346667AFD3E0E0694C75FEF5FFDCA1EEF5BE0000000000000000FE000100787AB5C5BE51BF02428BD5E00C26829DFB4F206711CBB25190AEC1C1A0D5C6D9A94FF350B8DC9C8ADEA5AE35400AD0D6744D722CE74FF5B8E8C9D1F4BF9C8F039753FC6836D8A3A310D9443C623DC241CDFC189522EAF1B4E665C27AE82F43208F45AEB7BEF6F508333A304BC098DFB6B3376116081B8B028F7D254F3369B63034A68CA27DDA5805D03569B2C0EF99A3C86950BF4F470D5E10653AF57B916BB739D7BFFF275934D74CA1A9EE188335C7943B065B6FB6C03F2EB4FC456636621EF7894595264239492CE03E3D77AC23AA1941B29586566EB57F50502333F7B4B0979AC34F51116067A6D28EE8EF38A51670F39D578F979933137185B5E176C49C
+padding = A35B3C5C16B11A1E708EE5C6
+tmp_aes_key = 41ED86D5625B49E5AD48B6334FCAF9206338B1310F40B11218CE95FE0D8BD3D7
+tmp_aes_iv = 62CC8A87DF311B326FD17693D711769B78AA2670C42F7B76F3448D39FDAD1344
Process:
data_with_hash := SHA1(data) + data + padding (0-15 random bytes such that total length is divisible by 16)
encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);
Output:
-encrypted_data = 0937406E008E05A2EC4FD79DEE3E2546C17B665EAB03348E74309D695262E280AC36B98EF69FFECFE5720913C4DC47CED0BD2860F952BCBF37320B32D6FBE004EFC3A310851FB443B6C41902EB58DEF66809D9C0730C04C75F5CB2A059B93FE1249FAFD20673AFD8A5F30C684B6CED4F84E4D02E017C15B57407AC12E3C3C3878D67480CFCC386AA5E4FF41A4F9A37A127961F17D4AB706BE17D8054DB8BE35B71CF6720840758E0A94EB8FDEFE5319F74C356E71111259C798FFBFD9D9B8A250BF2E1D6A827E6A983D92BAAFEAE68733E124091AE79F79383204CC97C44E997B5C867F555B6BDD923F0187257119C09EAC1B1894E9EB4E6F7925BB101FC2855EB1B0D7D3EE3F3971D3D06F34E240BA13BB8C2A067C2631325769129B181888B2824A7D7E257DD5157C7A7E5F8D7E6D1EC55CABA6D5B7ADA40BF31E746EFB791774F4B0EA1514376C75827E340BBB893
+encrypted_data = 9723F7E803156545617954741617E778DEC0AC8097598A2A56CE84AA2DCEADCFED185A2E026E81C87DD98828E17A2C77E6AB162996D0D80962290C1C4162E734CBBC9EBF798FEC4B898D86B6219EB74FFA586EEC9F74219DF198A818C6CD3B6EFACAC69D38760163153884F296430B289110DD45FEC82C598E82D0A7E32E1CAEDD56BFBCDCCDE02C6193A2D70248EAB55B9362C8450C6E30B73CC6C85FAC723E0122044BE7D28E167649060A95DC7DA1D1AF28B971F46C72E031D719FE052497A9C8992CB8A79DACF9DEF2493A579229127C81E0B764172D58A83D3D52051686A93ABBF02709C0D8BFFFEE4AE0F5C4795BF3EEA4480116EFEA1CEA699E839DA70842537208E1F4F2374B3D6E1D00DE80506013B6F12C291F5EC095956C770B6A4C9C74C3ED0685C64167028298BBDC6CC34444D8D2C27528DB4B1AB38AF47FBC69081CD205E55327BE63D22F3DE92304
The length of the final string is 336 bytes.
7.2) set_client_DH_params query
Sent payload (excluding transport headers/trailers):
-0000 | 00 00 00 00 00 00 00 00 D4 B1 0A 00 2C 92 6D 66
-0010 | 78 01 00 00 1F 5F 04 F5 05 64 65 F4 C5 3A DA 11
-0020 | 5F 68 C4 39 92 23 7D FB E3 02 5A E4 65 D2 31 FF
-0030 | DA 4F 25 8A 8C C6 D2 99 FE 50 01 00 09 37 40 6E
-0040 | 00 8E 05 A2 EC 4F D7 9D EE 3E 25 46 C1 7B 66 5E
-0050 | AB 03 34 8E 74 30 9D 69 52 62 E2 80 AC 36 B9 8E
-0060 | F6 9F FE CF E5 72 09 13 C4 DC 47 CE D0 BD 28 60
-0070 | F9 52 BC BF 37 32 0B 32 D6 FB E0 04 EF C3 A3 10
-0080 | 85 1F B4 43 B6 C4 19 02 EB 58 DE F6 68 09 D9 C0
-0090 | 73 0C 04 C7 5F 5C B2 A0 59 B9 3F E1 24 9F AF D2
-00A0 | 06 73 AF D8 A5 F3 0C 68 4B 6C ED 4F 84 E4 D0 2E
-00B0 | 01 7C 15 B5 74 07 AC 12 E3 C3 C3 87 8D 67 48 0C
-00C0 | FC C3 86 AA 5E 4F F4 1A 4F 9A 37 A1 27 96 1F 17
-00D0 | D4 AB 70 6B E1 7D 80 54 DB 8B E3 5B 71 CF 67 20
-00E0 | 84 07 58 E0 A9 4E B8 FD EF E5 31 9F 74 C3 56 E7
-00F0 | 11 11 25 9C 79 8F FB FD 9D 9B 8A 25 0B F2 E1 D6
-0100 | A8 27 E6 A9 83 D9 2B AA FE AE 68 73 3E 12 40 91
-0110 | AE 79 F7 93 83 20 4C C9 7C 44 E9 97 B5 C8 67 F5
-0120 | 55 B6 BD D9 23 F0 18 72 57 11 9C 09 EA C1 B1 89
-0130 | 4E 9E B4 E6 F7 92 5B B1 01 FC 28 55 EB 1B 0D 7D
-0140 | 3E E3 F3 97 1D 3D 06 F3 4E 24 0B A1 3B B8 C2 A0
-0150 | 67 C2 63 13 25 76 91 29 B1 81 88 8B 28 24 A7 D7
-0160 | E2 57 DD 51 57 C7 A7 E5 F8 D7 E6 D1 EC 55 CA BA
-0170 | 6D 5B 7A DA 40 BF 31 E7 46 EF B7 91 77 4F 4B 0E
-0180 | A1 51 43 76 C7 58 27 E3 40 BB B8 93
+0000 | 00 00 00 00 00 00 00 00 50 99 0B 00 54 60 70 66
+0010 | 78 01 00 00 1F 5F 04 F5 2B 9B B4 57 48 8F 49 54
+0020 | 41 48 B3 ED 2C 05 34 66 67 AF D3 E0 E0 69 4C 75
+0030 | FE F5 FF DC A1 EE F5 BE FE 50 01 00 97 23 F7 E8
+0040 | 03 15 65 45 61 79 54 74 16 17 E7 78 DE C0 AC 80
+0050 | 97 59 8A 2A 56 CE 84 AA 2D CE AD CF ED 18 5A 2E
+0060 | 02 6E 81 C8 7D D9 88 28 E1 7A 2C 77 E6 AB 16 29
+0070 | 96 D0 D8 09 62 29 0C 1C 41 62 E7 34 CB BC 9E BF
+0080 | 79 8F EC 4B 89 8D 86 B6 21 9E B7 4F FA 58 6E EC
+0090 | 9F 74 21 9D F1 98 A8 18 C6 CD 3B 6E FA CA C6 9D
+00A0 | 38 76 01 63 15 38 84 F2 96 43 0B 28 91 10 DD 45
+00B0 | FE C8 2C 59 8E 82 D0 A7 E3 2E 1C AE DD 56 BF BC
+00C0 | DC CD E0 2C 61 93 A2 D7 02 48 EA B5 5B 93 62 C8
+00D0 | 45 0C 6E 30 B7 3C C6 C8 5F AC 72 3E 01 22 04 4B
+00E0 | E7 D2 8E 16 76 49 06 0A 95 DC 7D A1 D1 AF 28 B9
+00F0 | 71 F4 6C 72 E0 31 D7 19 FE 05 24 97 A9 C8 99 2C
+0100 | B8 A7 9D AC F9 DE F2 49 3A 57 92 29 12 7C 81 E0
+0110 | B7 64 17 2D 58 A8 3D 3D 52 05 16 86 A9 3A BB F0
+0120 | 27 09 C0 D8 BF FF EE 4A E0 F5 C4 79 5B F3 EE A4
+0130 | 48 01 16 EF EA 1C EA 69 9E 83 9D A7 08 42 53 72
+0140 | 08 E1 F4 F2 37 4B 3D 6E 1D 00 DE 80 50 60 13 B6
+0150 | F1 2C 29 1F 5E C0 95 95 6C 77 0B 6A 4C 9C 74 C3
+0160 | ED 06 85 C6 41 67 02 82 98 BB DC 6C C3 44 44 D8
+0170 | D2 C2 75 28 DB 4B 1A B3 8A F4 7F BC 69 08 1C D2
+0180 | 05 E5 53 27 BE 63 D2 2F 3D E9 23 04
Payload (de)serialization:
set_client_DH_params#f5045f1f nonce:int128 server_nonce:int128 encrypted_data:string = Set_client_DH_params_answer;
@@ -746,7 +746,7 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);<
message_id
8, 8
-D4B10A002C926D66
+50990B0054607066
Message ID generated as specified here » (unixtime() << 32) + (N*4)
@@ -764,19 +764,19 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);<
nonce
24, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Value generated by client in Step 1
server_nonce
40, 16
-E3025AE465D231FFDA4F258A8CC6D299
+67AFD3E0E0694C75FEF5FFDCA1EEF5BE
Value received from server in Step 2
encrypted_data
56, 340
-FE5001000937406E008E05A2EC4FD79D
EE3E2546C17B665EAB03348E74309D69
5262E280AC36B98EF69FFECFE5720913
C4DC47CED0BD2860F952BCBF37320B32
D6FBE004EFC3A310851FB443B6C41902
EB58DEF66809D9C0730C04C75F5CB2A0
59B93FE1249FAFD20673AFD8A5F30C68
4B6CED4F84E4D02E017C15B57407AC12
E3C3C3878D67480CFCC386AA5E4FF41A
4F9A37A127961F17D4AB706BE17D8054
DB8BE35B71CF6720840758E0A94EB8FD
EFE5319F74C356E71111259C798FFBFD
9D9B8A250BF2E1D6A827E6A983D92BAA
FEAE68733E124091AE79F79383204CC9
7C44E997B5C867F555B6BDD923F01872
57119C09EAC1B1894E9EB4E6F7925BB1
01FC2855EB1B0D7D3EE3F3971D3D06F3
4E240BA13BB8C2A067C2631325769129
B181888B2824A7D7E257DD5157C7A7E5
F8D7E6D1EC55CABA6D5B7ADA40BF31E7
46EFB791774F4B0EA1514376C75827E3
40BBB893
+FE5001009723F7E80315654561795474
1617E778DEC0AC8097598A2A56CE84AA
2DCEADCFED185A2E026E81C87DD98828
E17A2C77E6AB162996D0D80962290C1C
4162E734CBBC9EBF798FEC4B898D86B6
219EB74FFA586EEC9F74219DF198A818
C6CD3B6EFACAC69D38760163153884F2
96430B289110DD45FEC82C598E82D0A7
E32E1CAEDD56BFBCDCCDE02C6193A2D7
0248EAB55B9362C8450C6E30B73CC6C8
5FAC723E0122044BE7D28E167649060A
95DC7DA1D1AF28B971F46C72E031D719
FE052497A9C8992CB8A79DACF9DEF249
3A579229127C81E0B764172D58A83D3D
52051686A93ABBF02709C0D8BFFFEE4A
E0F5C4795BF3EEA4480116EFEA1CEA69
9E839DA70842537208E1F4F2374B3D6E
1D00DE80506013B6F12C291F5EC09595
6C770B6A4C9C74C3ED0685C641670282
98BBDC6CC34444D8D2C27528DB4B1AB3
8AF47FBC69081CD205E55327BE63D22F
3DE92304
Encrypted client_DH_inner_data generated previously, serialized as a TL byte string
@@ -785,17 +785,17 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);<
8) Auth key generation
The client computes the auth_key using formula g_a^b mod dh_prime
:
-auth_key = 1130A9D2B325DE9526041AB27CC22AFE2E553DDBDA29C32BDF9EC870EF98F7C8CF3DCB3574CF8B8D9443DC00C48CC43B79116BB9DC614E36ACFDA521A2F7B22ACD01FF9BFE9DCE9764CE9F2714F33EAE0E405C82DF5397BDFEFD2448F63C4478E784022FD97594D9F9F19108D69EE570F3D50D8908288565600AF94F680A68C8A0DDBFF2572D6A175DDB73A4EB36445E9133483D61C817E2B55D0696C9E165E34019A9D54F767C54DA00120BA8333E9A8EAFB5D14C317F6B4A03AFA2264C78FCF3B7EE1F8A3CA7C2A08AD4A5F43170F7478C4DC3CD3DC5B99F198672941F3C2EF1D425D56A6B5765D42C1148784FEC6A3B394330DAB3869B1D4D960F0AFF76F5
+auth_key = 9FD2A5228D4C4A4BA6B752ECE71D28A48FE10E898F3087C69FA44289C008714BA420C9521B43848C31811D1E4AA3B611FBCE1119072FF073FAB0DC471805F5FEFF308AA86C89886DB415BF90C8EE222F65E824EDB627D12C6AEF80899344D228FF80A34C7555F65E932009CDA600D7A7F42985668952055B247BF7F5C9442D1EA3477829D831B8A33850563F1D6EF899EDD5AE0EE95073D3C08E40167B6A2E38E4AE66F621719E8F44AC4A142B4645E4B64A91292710326AD4330337AAFBF31B9B68709077E4250F1C71B71DEB626171255851BDAFA2B34A5FC5BC4AEEDD7F4F91E13F6CCC093F3B32C78388AD886B4FBA4BFBAD283C49B23BAAFB381C2ECB92
9) Final server reply
The server verifies and confirms that auth_key_hash is unique: since it's unique, it replies with the following:
Received payload (excluding transport headers/trailers):
-0000 | 00 00 00 00 00 00 00 00 01 F8 30 15 2D 92 6D 66
-0010 | 50 00 00 00 34 F7 CB 3B 05 64 65 F4 C5 3A DA 11
-0020 | 5F 68 C4 39 92 23 7D FB E3 02 5A E4 65 D2 31 FF
-0030 | DA 4F 25 8A 8C C6 D2 99 ED BD 5A 64 3B 83 89 E5
-0040 | 6E 95 22 D2 24 20 47 DF
+0000 | 00 00 00 00 00 00 00 00 01 1C B8 4D 55 60 70 66
+0010 | 74 00 00 00 34 F7 CB 3B 2B 9B B4 57 48 8F 49 54
+0020 | 41 48 B3 ED 2C 05 34 66 67 AF D3 E0 E0 69 4C 75
+0030 | FE F5 FF DC A1 EE F5 BE BD 8D 2E F0 B7 AD 09 D9
+0040 | 52 2B B8 7D F8 F0 2C FB
Payload (de)serialization:
dh_gen_ok#3bcbf734 nonce:int128 server_nonce:int128 new_nonce_hash1:int128 = Set_client_DH_params_answer;
@@ -817,13 +817,13 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);<
message_id
8, 8
-01F830152D926D66
+011CB84D55607066
Message ID generated as specified here » (unixtime() << 32) + (N*4)
message_length
16, 4
-50000000
(80 in decimal)
+74000000
(116 in decimal)
Message body length
@@ -835,19 +835,19 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);<
nonce
24, 16
-056465F4C53ADA115F68C43992237DFB
+2B9BB457488F49544148B3ED2C053466
Value generated by client in Step 1
server_nonce
40, 16
-E3025AE465D231FFDA4F258A8CC6D299
+67AFD3E0E0694C75FEF5FFDCA1EEF5BE
Value received from server in Step 2
new_nonce_hash1
56, 16
-EDBD5A643B8389E56E9522D2242047DF
+BD8D2EF0B7AD09D9522BB87DF8F02CFB
The 128 lower-order bits of SHA1 of the byte string derived from the new_nonce
string by adding a single byte with the value of 1, 2, or 3, and followed by another 8 bytes with auth_key_aux_hash
. Different values are required to prevent an intruder from changing server response dh_gen_ok into dh_gen_retry.