English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
مقدمة
أولاً، كنت أرغب في محاولة تثبيت Python 3.6 في Windows، رغم أن تثبيت Python كان ناجحًا، لكنني واجهت أخطاء عند محاولة تثبيت مكون Crypto باستخدام pip3 install pycrypto. بعد جهد كبير، قررت القيام بذلك على نظام Linux.
هذه الخطوات محدودة بنظام Linux:
Crypto ليست مكونة مسبقًا، تحتاج إلى التحميل.http://www.voidspace.org.uk/python/modules.shtml#pycrypto
بعد تثبيتي، وجدت أنني قمت بتحميل crypto بدلاً من Crypto (فقط يختلف الحرف الأول في الحالة)
لكن لم يتم تشغيل crypto.Cipher، وتقارير الأخطاء، وأخيرًا في:https://stackoverflow.com/questions/31485110/no-module-named-crypto-cipher/31485157 لإيجاد الحل، يجب تغيير اسم ملف crypto في مجلد Python27\Lib\site-packages. نعم، فقط قم بتغيير الاسم إلى Crypto. بعد ذلك، يمكنك استخدامه...
بسبب أنني كنت أستخدم إصدار لا يتطلب التثبيت، لم أقوم بتثبيت VS2008. كنت قد استخدمت pip، لكنني لم أتمكن من تحميل Crypto. تثبيت هذه المكونات في نظام Windows يسبب المشاكل، وإذا كان جهازي أفضل قليلاً لما كنت قد أقوم بإنشاء نظام تشغيل مزدوج.. أضفت شيئًا..
0x00 安装python
apt-get install python3.6
0x01 安装pip3
1.首先安装setuptool
wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26 tar -zxvf setuptools-19.6.tar.gz cd setuptools-19.6.tar.gz python3 setup.py build python3 setup.py install
2.然后直接安装pip就搞定了
wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb tar -zxvf pip-8.0.2.tar.gz cd pip-8.0.2 python3 setup.py build python3 setup.py install
0x02 安装crypto
apt-get install python3-dev pip3 install Crypto pip3 install --upgrade pycrypt
下面主要介绍一下Crypto.Cipher的AES算法。
代码如下:
from Crypto.Cipher import AES import base64 secret = "12345678912345678912345678912345" #由用户输入的16位或24位或32位长的初始密码字符串 cipher = AES.new(secret) #通过AES处理初始密码字符串,并返回cipher对象 s = cipher.encrypt("1234567891234567") #输入需要加密的字符串,注意字符串长度要是16的倍数。16,32,48.. print s # output the encrypted string print base64.b64encode(s) # output the base64 encoding of the encrypted string. print cipher.decrypt(s) # decrypt
هذا هو لفهم البداية للبداية (أنا)، يمكن الرجوع إلى الطريقة العامة للمعالجة في https://ar.oldtoolbag.com/article/114364.htm
حول لماذا يتم تشفير النص المشفرة مرة أخرى باستخدام base64، أعتقد أن معالجة النص هي قائمة على الثنائي، والفكرة الأساسية لـ base64 هي إضافة زيرين أمام كل ستة أرقام ثنائية، مما يجعل كل رمز ASCII في النص المعالج مرئيًا (على الأقل ليست那些 رموز الاستفهام..)، وإذا قمت باختبار charset، فإنه يظهر أيضًا كما قلت.
خوارزمية DES تستخدم مثل استخدام AES، ولكن يجب الانتباه إلى أن رمز البداية للسرية يجب أن يكون من 8 أحرف، والآخر يجب أن يتم استبدال AES بخوارزمية DES (إذا لم تكن تتذكر إعداد البيئة، فإن Python سهل جدًا..)
هذا المodule Crypto يحتوي أيضًا على خوارزميات تشفير مثل خوارزمية الهاش، إذا كان هناك مبدع أو صديق قد استكشف هذا المodule، فأنا أرحب بترك تعليق أدناه، وأيضًا تعليمي كيفية استخدامه، شكرًا جزيلاً لكم.
هذا هو محتوى المقال الكامل، آمل أن يكون هذا المقال مفيدًا للعديد منكم، وأتمنى أن تدعموا ونتصرخ لتعليم.
البيان: محتوى هذا المقال تم جمعه من الإنترنت، يحق لصاحب الحقوق أن يكون مالكًا له، تم جمع المحتوى من قبل المستخدمين على الإنترنت الذين قدموا المساهمات بأنفسهم وأرسلواها بأنفسهم، هذا الموقع لا يملك حقوق الملكية، لم يتم تعديل المحتوى بشكل يدوي، ولا يتحمل أي مسؤولية قانونية. إذا كنت قد وجدت محتوى يشتبه في حقوق النسخ، فنرجو منك إرسال بريد إلكتروني إلى: notice#oldtoolbag.com (عند إرسال البريد الإلكتروني، يرجى استبدال # ب @) للإبلاغ، وتقديم الدليل، إذا تم التحقق من ذلك، فإن هذا الموقع سيقوم بإزالة المحتوى المزعوم بسرعة.