3.0.10 • Published 4 years ago

steam-crypto-esm v3.0.10

Weekly downloads
-
License
MIT
Repository
-
Last release
4 years ago

Node.js implementation of Steam connection crypto. This is a fork from @doctormckay/steam-crypto. Rewritten in Typescript with @types and converted to ESM Updated to use crypto .update() and cipher.final() instead of piped streams.

generateSessionKey(nonce)

  • Generate a 32-byte symmetric sessionkey and encrypt it with Steam's public "System" key.
  • nonce - If provided, will be appended to the sessionKey when encrypting.
  • This is usually the webNonce provided by Steam CM upon on logon

symmetricEncryptWithHmacIv(data, sessionKey)

  • Encrypt data with AES and prepend an HMAC IV
  • This is the encryption protocol Steam uses in the client connection.

symmetricDecrypt(input, sessionKey)

  • Decrypt the data from Steam

sha1(input, sessionKey)

  • Hash input with sha1 algorithm
3.0.10

4 years ago

3.0.9

4 years ago

3.0.8

4 years ago