Для этого метода:
ISteamUserAuth
AuthenticateUser
Версия: 1
HTTP-метод: POST
Параметры:
Имя: стим
Тип: uint64
По желанию:
Описание: Должен быть незашифрованный SteamID пользователя.
Параметры:
Имя: сеансовый ключ
Тип: необработанный двоичный файл
По желанию:
Описание: Должен быть 32-байтным случайным блоком данных, который затем шифруется с помощью RSA с использованием открытого ключа системы Steam. Случайность важна здесь для безопасности.
Параметры:
Имя: зашифрованный_логинкей
Тип: необработанный двоичный файл
По желанию:
Описание: Должен быть хэшированный ключ входа пользователя, зашифрованный AES с помощью сеансового ключа.
Мне нужно 3 параметра. Для второго параметра sessionkey
мне нужно зашифровать его с помощью открытого ключа системы Steam. Как именно я могу это получить?
После некоторых исследований я понял, что мне нужно получить открытый ключ с помощью сертификата, и он должен выглядеть как это.
Я использую php, и поэтому я использую этот код для получения открытого ключа из сертификата:
<?php
$pub_key = openssl_pkey_get_public(file_get_contents('./cert.crt'));
$keyData = openssl_pkey_get_details($pub_key);
file_put_contents('./key.pub', $keyData['key']);
?>
Я смущен тем, какой сертификат я использую. Использую ли я сертификат сайта Steam? (cert.crt
будет сертификатом)