matrix-fuzz

git clone git://archive.git.mtrnord.blog/MTRNord/matrix-fuzz.git
Log | Files | Refs | README | LICENSE

synapse_generate_mac.py (786B)


      1 import hashlib
      2 import hmac
      3 import os
      4 
      5 
      6 def generate_mac(nonce, user, password, admin=False, user_type=None):
      7     mac = hmac.new(
      8         key=b"sahZae3yahjaequ8boh2cae5uo5eiciede2hoa9eew8mai1oy4iiChietheequ9U",
      9         digestmod=hashlib.sha1,
     10     )
     11 
     12     mac.update(nonce.encode('utf8'))
     13     mac.update(b"\x00")
     14     mac.update(user.encode('utf8'))
     15     mac.update(b"\x00")
     16     mac.update(password.encode('utf8'))
     17     mac.update(b"\x00")
     18     mac.update(b"admin" if admin else b"notadmin")
     19     if user_type:
     20         mac.update(b"\x00")
     21         mac.update(user_type.encode('utf8'))
     22 
     23     return mac.hexdigest()
     24 
     25 
     26 hmac = generate_mac(os.environ['NONCE'], "fuzzer",
     27                     "Chu8chool0dooqueiwo0lohviegho6ieveuNg3Ohcio2aekaiw0ioF6waifo8eep")
     28 print(f"::set-output name=hmac::{hmac}")