بايثون العربي | Python Arabe 🇵🇸: post #1338 — TG.ME

🛡️ تشويش كود Python باستخدام marshal

يمكن استخدام marshal لتحويل كود Python إلى bytecode ثنائي ثم تشغيله لاحقًا، وهذا يجعل قراءة السورس مباشرة أصعب قليلًا.

الفكرة: نقرأ ملف Python، نعمل له compile، ثم نخزن الناتج بصيغة marshal داخل ملف تشغيل صغير.

التثبيت:
marshal مدمجة مع Python ولا تحتاج تثبيت

مثال مبسط:
import marshal

source = 'print("Protected code")'
code = compile(source, "app.py", "exec")

with open("app_protected.bin", "wb") as f:
f.write(marshal.dumps(code))


تشغيل الملف لاحقًا:
import marshal

with open("app_protected.bin", "rb") as f:
code = marshal.loads(f.read())

exec(code)


مهم: هذا ليس تشفيرًا حقيقيًا ولا حماية كاملة. هو مجرد Obfuscation يجعل القراءة أصعب، ويمكن عكسه أو تحليله من شخص خبير.

للحماية الأفضل: لا تضع أسرارًا داخل الكود، واستخدم متغيرات البيئة، ووزّع التطبيق بصيغة مناسبة مثل PyInstaller عند الحاجة.

#Python #CyberSecurity #Obfuscation
🎉1
June 29, 2026 511 1