import base64 from Crypto.Cipher import AES from Crypto.Util import Counter import struct def decrypt_aes128_ctr(enc_b64: str, key_b64: str, id_val: int, from_val:int) -> bytes: # Декодируем ключ и шифротекст из base64 key = base64.b64decode(key_b64) # 16 байт для AES-128 encrypted_data = base64.b64decode(enc_b64) # Формируем вектор инициализации (IV) аналогично pack('P', $id) . pack('P', $from) в PHP # 'P' в PHP — это беззнаковое 64-битное целое в little-endian iv = struct.pack('") AO = "1PG7OiApB1nwvP+rz05pAQ==" if __name__ == "__main__": ciphertext_b64 = "LDsNJgdxZzQntg3KmvaRWRXwt39JAMkRq35RRZoK6lQ/0PnbQ4HJnXBYIjx+B5Y+k3ukq6cLevjra8ky1ANcLANGJTjH92lMbyu3rvwwfyO+4eJNOezJWoE=" id = 2876191354 fr0m = 313608604 key_b64 = AO d = decrypt_aes128_ctr(ciphertext_b64, key_b64, id, fr0m) _print_result(d) print()