2.4 KiB
2.4 KiB
title | description | image |
---|---|---|
req_DH_params | Requests Diffie-hellman parameters for key exchange | https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png |
Method: req_DH_params
Requests Diffie-hellman parameters for key exchange
Parameters:
Name | Type | Description | Required |
---|---|---|---|
nonce | int128 | Random number for cryptographic security | Yes |
server_nonce | int128 | Random number for cryptographic security, given by server | Yes |
p | bytes | Factorized p from pq | Yes |
q | bytes | Factorized q from pq | Yes |
public_key_fingerprint | long | Server RSA fingerprint | Yes |
encrypted_data | bytes | Encrypted key exchange message | Yes |
Return type: Server_DH_Params
Can bots use this method: YES
MadelineProto Example:
if (!file_exists('madeline.php')) {
copy('https://phar.madelineproto.xyz/madeline.php', 'madeline.php');
}
define('MADELINE_BRANCH', '');
include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
$Server_DH_Params = $MadelineProto->req_DH_params(['nonce' => int128, 'server_nonce' => int128, 'p' => 'bytes', 'q' => 'bytes', 'public_key_fingerprint' => long, 'encrypted_data' => 'bytes', ]);
PWRTelegram HTTP API example (NOT FOR MadelineProto):
As a bot:
POST/GET to https://api.pwrtelegram.xyz/botTOKEN/madeline
Parameters:
- method - req_DH_params
- params -
{"nonce": int128, "server_nonce": int128, "p": {"_": "bytes", "bytes":"base64 encoded bytes"}, "q": {"_": "bytes", "bytes":"base64 encoded bytes"}, "public_key_fingerprint": long, "encrypted_data": {"_": "bytes", "bytes":"base64 encoded bytes"}, }
As a user:
POST/GET to https://api.pwrtelegram.xyz/userTOKEN/req_DH_params
Parameters:
nonce - Json encoded int128
server_nonce - Json encoded int128
p - Json encoded bytes
q - Json encoded bytes
public_key_fingerprint - Json encoded long
encrypted_data - Json encoded bytes
Or, if you're into Lua:
Server_DH_Params = req_DH_params({nonce=int128, server_nonce=int128, p='bytes', q='bytes', public_key_fingerprint=long, encrypted_data='bytes', })