Highly-opinionated (ex-bullshit-free) MTPROTO proxy for Telegram. If you use v1.0 or upgrade broke you proxy, please read the chapter Version 2
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

client_handshake_frame.go 724B

123456789101112131415161718192021222324252627282930
  1. package obfuscated2
  2. import "crypto/cipher"
  3. type clientHandhakeFrame struct {
  4. handshakeFrame
  5. }
  6. func (c *clientHandhakeFrame) decryptor(secret []byte) cipher.Stream {
  7. hasher := acquireSha256Hasher()
  8. defer releaseSha256Hasher(hasher)
  9. hasher.Write(c.key()) // nolint: errcheck
  10. hasher.Write(secret) // nolint: errcheck
  11. return makeAesCtr(hasher.Sum(nil), c.iv())
  12. }
  13. func (c *clientHandhakeFrame) encryptor(secret []byte) cipher.Stream {
  14. arr := clientHandhakeFrame{}
  15. invertByteSlices(arr.data[:], c.data[:])
  16. hasher := acquireSha256Hasher()
  17. defer releaseSha256Hasher(hasher)
  18. hasher.Write(arr.key()) // nolint: errcheck
  19. hasher.Write(secret) // nolint: errcheck
  20. return makeAesCtr(hasher.Sum(nil), arr.iv())
  21. }