Как установить модуль crypto в python
Перейти к содержимому

Как установить модуль crypto в python

  • автор:

crypto

crypto requires the Gnu Privacy Guard executable ( gpg ).

Mac OSX GPG Install

Mac OSX users can install gpg with Homebrew

$ brew install gpg

with the Mac GPG Tools Suite installer, or by compiling and installing from the source.

You can install either the ‘classic’ (v1.x) or ‘modern’ (v2.x) versions of gpg. If your install uses the executable gpg2 rather than gpg , please create the following alias:

alias gpg="gpg2"

Confirm your install by typing:

$ gpg --version

The installed gpg version should be displayed.

Linux GPG Install

If gpg is not installed on your Linux distro, you can install it with your package manager or download, compile, and install from the source.

You can install either the ‘classic’ (v1.x) or ‘modern’ (v2.x) versions of gpg. If your install uses the executable gpg2 rather than gpg , please create the following alias:

alias gpg="gpg2"

Confirm your install by typing:

$ gpg --version

The installed gpg version should be displayed.

Step 2: Install crypto

You can install crypto with the Python package manager pip:

pip install crypto

or download the source, unpack it, navigate to the top level source directory and run:

python setup.py install

ModuleNotFoundError: No module named crypto

Вы получаете эту ошибку, так как пытаетесь импортировать модуль crypto, но он не был установлен в Вашем python окружении.

Чтобы установить модуль, напишите в терминале:

 pip install crypto 

Чтобы установить модуль в интерактивной среде инструментов Google Colab, Kaggle/Jupyter Notebook или ipython, запустите такую ячейку/строчку:

 !pip install crypto 
А теперь немного деталей:

pip — это стандартный пакетный менеджер для python. Эта программа должна установить недостающий пакет в Вашем окружении / текущей сессии Google Colab, Kaggle/Jupyter Notebook или ipython.

! — восклицательный знак в интерактивных оболочках применяется для отправки команд не в интерпретатор python, а в shell оболочку. В ней исполняются команды вроде cd, ls, pwd, и в том числе pip. Статья на Хабре про основы работы в shell оболочке

Вы уже сделали 2 правильные вещи — засели за питон и загуглили ошибку. Эти 2 действия определяют программиста. Все что осталось — повторять их достаточно долго, и успех неизбежен. Подпишитесь на наш телеграм, чтобы узнавать о новых материалах — они помогут Вам в освоении новой области.

crypto 1.4.1

crypto provides a simple interface to symmetric Gnu Privacy Guard (gpg) encryption and decryption for one or more files on Unix and Linux platforms. It runs on top of gpg and requires a gpg install on your system. Encryption is performed with the AES256 cipher algorithm. Benchmarks relative to default gpg settings are available for text and binary file mime types.

crypto provides a number of options including automated tar archives of multiple files prior to encryption, portable ASCII armored encryption formatting, and SHA256 hash digest generation for your encrypted files. You can view all available options in the usage documentation or with the —help option.

Tested in cPython 2.7.x, 3.4.x, and pypy 2.6.x (Python version 2.7.9)

Install

Install with pip using the command:

$ pip install crypto

or download the source repository, unpack it, and navigate to the top level of the repository. Then enter:

$ python setup.py install

Upgrade

You can upgrade your crypto version with the command:

$ pip install --upgrade crypto

Usage

Encryption (crypto)

$ crypto path Decryption (decrypto)

$ decrypto   path 
$ crypto --help decrypto --help

Frequently Asked Questions

Issue Reporting

Issue reporting is available on the GitHub repository

pycrypto 2.6.1

This is a collection of both secure hash functions (such as SHA256 and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal, etc.). The package is structured to make adding new modules easy. This section is essentially complete, and the software interface will almost certainly not change in an incompatible way in the future; all that remains to be done is to fix any bugs that show up. If you encounter a bug, please report it in the Launchpad bug tracker at

An example usage of the SHA256 module is:

>>> from Crypto.Hash import SHA256 >>> hash = SHA256.new() >>> hash.update('message') >>> hash.digest() '\xabS\n\x13\xe4Y\x14\x98+y\xf9\xb7\xe3\xfb\xa9\x94\xcf\xd1\xf3\xfb"\xf7\x1c\xea\x1a\xfb\xf0+F\x0cm\x1d'

An example usage of an encryption algorithm (AES, in this case) is:

>>> from Crypto.Cipher import AES >>> obj = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456') >>> message = "The answer is no" >>> ciphertext = obj.encrypt(message) >>> ciphertext '\xd6\x83\x8dd!VT\x92\xaa`A\x05\xe0\x9b\x8b\xf1' >>> obj2 = AES.new('This is a key123', AES.MODE_CBC, 'This is an IV456') >>> obj2.decrypt(ciphertext) 'The answer is no'

One possible application of the modules is writing secure administration tools. Another application is in writing daemons and servers. Clients and servers can encrypt the data being exchanged and mutually authenticate themselves; daemons can encrypt private data for added security. Python also provides a pleasant framework for prototyping and experimentation with cryptographic algorithms; thanks to its arbitrary-length integers, public key algorithms are easily implemented.

As of PyCrypto 2.1.0, PyCrypto provides an easy-to-use random number generator:

>>> from Crypto import Random >>> rndfile = Random.new() >>> rndfile.read(16) '\xf7.\x838#>\xc6\xc2jJU'

A stronger version of Python’s standard “random” module is also provided:

>>> from Crypto.Random import random >>> random.choice(['dogs', 'cats', 'bears']) 'bears'

Caveat: For the random number generator to work correctly, you must call Random.atfork() in both the parent and child processes after using os.fork()

Installation

PyCrypto is written and tested using Python version 2.1 through 3.3. Python 1.5.2 is not supported.

The modules are packaged using the Distutils, so you can simply run “python setup.py build” to build the package, and “python setup.py install” to install it.

If the setup.py script crashes with a DistutilsPlatformError complaining that the file /usr/lib/python2.2/config/Makefile doesn’t exist, this means that the files needed for compiling new Python modules aren’t installed on your system. Red Hat users often run into this because they don’t have the python2-devel RPM installed. The fix is to simply install the requisite RPM. On Debian/Ubuntu, you need the python-dev package.

To verify that everything is in order, run “python setup.py test”. It will test all the cryptographic modules, skipping ones that aren’t available. If the test script reports an error on your machine, please report the bug using the bug tracker (URL given above). If possible, track down the bug and include a patch that fixes it, provided that you are able to meet the eligibility requirements at http://www.pycrypto.org/submission-requirements/.

It is possible to test a single sub-package or a single module only, for instance when you investigate why certain tests fail and don’t want to run the whole suite each time. Use “python setup.py test –module=name”, where ‘name’ is either a sub-package (Cipher, PublicKey, etc) or a module (Cipher.DES, PublicKey.RSA, etc). To further cut test coverage, pass also the option “–skip-slow-tests”.

To install the package under the site-packages directory of your Python installation, run “python setup.py install”.

If you have any comments, corrections, or improvements for this package, please report them to our mailing list, accessible via the PyCrypto website:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *