Skip to main content

lshlhom

Encrypt Python files with 6 layers of protection. تشفير ملفات Python بـ 6 طبقات حماية.

بالإنجليزية، مكتبة تشفير ملفات بايثون بطريقة تقنية، مبنية على 6 طبقات حماية متتالية. عندك أداة بايثون وعايز توزعها للناس، بس ما بدك حد يشوف الكود أو يعدله؟ هذه المكتبة تسوي لك هذا الشي.


Install / التثبيت

pip install lshlhom

ما تحتاج أي مكتبة خارجية. كل شي مدمج داخل المكتبة.


Usage / الاستخدام

import lshlhom

lshlhom.tshfer("my_tool.py")

بعد ما تشغل هذا الكود، بتحصل على ملف جديد اسمه:

my_tool_shlhom.py

هذا الملف هو نفس الأداة بس مشفرة. وزعه للناس. يشتغل عندهم عادي، بس ما يقدرون يشوفون الكود الأصلي ولا يعدلونه.


Advanced Usage / الاستخدام المتقدم

تغيير اسم الملف الناتج

lshlhom.tshfer("my_tool.py", output="protected.py")

تغيير حجم الملف الناتج (كيلوبايت)

lshlhom.tshfer("my_tool.py", size_kb=1200)

الحجم الافتراضي هو 800 كيلوبايت. زيده إذا بدك حماية أكبر.

استخدام دالة بديلة بنفس الوظيفة

lshlhom.protect("my_tool.py")

نفس الشي بالضبط، بس الاسم بالإنجليزي.


What actually happens / شو يصير بالضبط

المكتبة تطبق 6 طبقات حماية على ملفك، بالترتيب التالي:

1. تحويلات AST (Abstract Syntax Tree)

  • إعادة تسمية المتغيرات: كل متغير في الكود يتحول إلى اسم عشوائي مبني على hash
  • تشويش تدفق التحكم: كل دالة تتحول إلى loop مع state machine
  • تشفير النصوص: كل string أو bytes في الكود يتشفر بـ SM4-CBC

2. Marshal Serialization

تحويل الكود إلى bytecode بايثون عبر ، ثم ضغطه بـ .

3. XOR Stream مزدوج

طبقتين من XOR بمفاتيح عشوائية، طبقة فوق طبقة.

4. تشفير SM4-CBC

خوارزمية SM4 هي التشفير الوطني الصيني الرسمي، بديل AES في الصين. قوية وسريعة.

5. ضغط Huffman

ضغط البيانات بطريقة Huffman tree مخصصة.

6. ترميز Base91

ترميز Base91 بدل Base64 — أكثر كثافة وأقل حجماً.

7. ELF Binary (اختياري)

إذا كان عندك و أو مثبتين، المكتبة تبني ELF binary حقيقي من الكود المشفر، وتضيفه داخل الملف الناتج. إذا ما كانوا مثبتين، تستخدم بديل.


How the output file works / كيف يشتغل الملف الناتج

الملف الناتج () يشتغل بأي مكان فيه Python 3.7 أو أحدث. ما يحتاج مكتبات. لما يشغله المستخدم:

  1. الملف يفتح نفسه
  2. يفك الطبقات الست
  3. يشغل الكود الأصلي

كل هذا يصير في الذاكرة فقط. الكود الأصلي ما يحفظ في أي مكان.


Requirements / المتطلبات

  • Python 3.7 أو أحدث
  • لا يحتاج أي مكتبة خارجية
  • للحماية الأقصى (ELF binary): يحتاج و أو
  • المدعوم رسمياً: Termux, Linux, Android
  • يعمل على Windows و macOS في الوضع بدون ELF

Use Cases / متى تنفعك

  • عندك أداة بايثون وبدك توزعها للناس
  • ما بدك حد يشوف المنطق الداخلي
  • ما بدك حد يعدل الكود
  • ما بدك حد يسرق الفكرة
  • بدك تحمي كودك من النسخ

When not to use / متى ما تنفعك

  • إذا الكود يحتاج أداء عالي جداً (التشفير يأخذ ثواني عند التشغيل الأول)
  • إذا الملف فيه بيانات ضخمة مدمجة (رح يكبر حجم الملف)
  • إذا بتوزع الكود مفتوح المصدر (هذه المكتبة ضد الفكرة)

Author / المؤلف


License

MIT

Release files for lshlhom 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lshlhom 1.0.0
File Size Uploaded
lshlhom-1.0.0.tar.gz 13.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for lshlhom 1.0.0
File Interpreter ABI Platform
lshlhom-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 27.0 kB

Release files / lshlhom-1.0.0.tar.gz

Download URL lshlhom-1.0.0.tar.gz
Size 13.8 kB
Tags Source
SHA-256 checksum
How to use checksums
a6be2941e5a8c0e893b77760df9fdaf6ef55d755777149bae2b39b4f72900837
BLAKE2b-256 checksum
How to use checksums
01c8cac5ada8bcd1a85e12c3ca969928c4a578d87a0e42d0b78f05a53a073b7a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / lshlhom-1.0.0-py3-none-any.whl

Download URL lshlhom-1.0.0-py3-none-any.whl
Size 13.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1bac17027c1517cca04d046b9db742c1c51289f8de91413ed7f63799278c6ec8
BLAKE2b-256 checksum
How to use checksums
e80861d35ccebb73d70aa1a0c7e758b489ad730661af55ee7f2ace2b023cf247
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page