对于这种方法:
ISteamUserAuth
的authenticateUser
版本:1
HTTP方法:POST
参数:
姓名:steamid
输入:uint64
可选:
描述:用户应该是加密的,未加密的。
参数:
名称:sessionkey
输入:rawbinary
可选:
描述:应该是一个32字节的随机blob数据,然后是 使用Steam系统的公钥使用RSA加密。随机性是 对于安全起见很重要。
参数:
名称:encrypted_loginkey
输入:rawbinary
可选:
描述:应该是用户哈希登录密钥,AES加密的 sessionkey。
我需要3个参数。对于第二个参数sessionkey
,我需要使用Steam系统的公钥对其进行加密。我到底该怎么做?
经过一些研究后我发现我必须使用证书获取公钥,它应该看起来像this。
我正在使用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
将是证书)
答案 0 :(得分:0)
我有同样的疑问。我还没试过,但是:
curl -X POST "http://store.steampowered.com/login/getrsakey/"
-d username="your_username"
给你RSA密钥......