| import base64 |
|
|
| SECRET_KEY = b"my-simple-key" |
|
|
| def xor_encrypt(data: bytes, key: bytes) -> bytes: |
| return bytes([b ^ key[i % len(key)] for i, b in enumerate(data)]) |
|
|
| def encrypt_video_id(video_id: str) -> str: |
| encrypted = xor_encrypt(video_id.encode(), SECRET_KEY) |
| return base64.urlsafe_b64encode(encrypted).decode().rstrip("=") |
|
|
| def decrypt_video_id(enc_id: str) -> str: |
| padded = enc_id + "=" * (-len(enc_id) % 4) |
| encrypted = base64.urlsafe_b64decode(padded.encode()) |
| decrypted = xor_encrypt(encrypted, SECRET_KEY) |
| return decrypted.decode() |