Pycrypto как установить linux

Обновлено: 01.07.2024

Я читал все другие источники google и так поток, ничего не работает.

Python 2.7.3 32bit установлен на Windows 7 64bit . Загрузка, извлечение, а затем попытка установить PyCrypto приводит к "Unable to find vcvarsall.bat".

поэтому я устанавливаю MinGW и прикрепляю его в строке установки в качестве компилятора по выбору. Но тогда я получаю ошибку "RuntimeError: chmod error".

как же мне это обойти? Я пробовал использовать pip, что дает тот же результат. Я нашел готовый двоичный файл PyCrypto 2.3 и установил это, но его нигде не найти в системе (не работает).

Microsoft недавно выпустила автономный, выделенный компилятор Microsoft Visual C++ для Python 2.7. Если вы используете Python 2.7, просто установите этот компилятор и Setuptools 6.0 или более поздней версии, и большинство пакетов с расширениями C теперь будут легко компилироваться.

В общем

vcvarsall.bat является частью компилятора Visual C++, вам нужно, чтобы установить то, что вы пытаетесь установить. Даже не пытайтесь иметь дело с MingGW, если ваш Python был скомпилирован с помощью Visual Studio toolchain и наоборот. Даже версия из цепочки инструментов Microsoft имеет важное значение. Питон компилируется с VS 2008 не будет работать с расширениями, составленный с VS 2010!

вы должны скомпилировать PyCrypto с тем же компилятором, что и версия Python был составлен С. Google для " не удалось найти vcvarsall.летучая мышь" потому что это корень вашей проблемы, это очень распространенная проблема с компиляцией расширений Python на Windows.

есть много информации и много читать, чтобы получить это право, на какой системе вы находитесь на этой ссылке.

остерегайтесь использовать Visual Studio 2010 или не использовать Visual Studio 2008

мнение: это одна из причин, по которой я отказался от Windows для всех серьезных разработок для OSX!

PyCryptodome является почти совместимой вилкой PyCrypto с колесами Windows, доступными на pypi.

вы можете установить его с простого:

веб-сайт содержит инструкции по его сборке из источников с компиляторами Microsoft.

и pycrypto для компиляции с помощью MinGW32 и MSYS . Это предполагает, что у вас есть pip или easy_install установлен.

вот как я это сделал:

1) установить MinGW32. Ради этого объяснения предположим, что он установлен в C:\MinGW . При использовании установщика, который я рекомендую, выберите компилятор C++ . MSYS должен установить с MinGW

2) Добавить c:\mingw\bin,c:\mingw\mingw32\bin,C:\MinGW\msys.0, c:\mingw\msys.0\bin and c:\mingw\msys.0\sbin на %PATH% . Если это не так знакомо,в этой статье очень полезная.

3) в строке поиска запустите msys и откроется терминал MSYS. Для тех, кто знаком с Cygwin , он работает аналогичным образом.

4) из терминала MSYS pip install pycrypto должно работать без ошибок после этого.

для тех из вас, кто ищет python 3.4 я нашел git repo с установщиком, который просто работает. Вот прямые ссылки для x64 и x32

можно построить PyCrypto с помощью Windows 7 SDK toolkits. Существует две версии Windows 7 SDK. Исходная версия (для .Net 3.5) включает компиляторы командной строки VS 2008. Можно установить как 32 -, так и 64-разрядные компиляторы.

первым шагом является компиляция mpir для обеспечения быстрой арифметики. Я задокументировал процесс, который я использую в gmpy библиотека. Подробные инструкции по созданию mpir с помощью компилятора SDK можно найти по адресу sdk_build

ключевыми шагами для использования компиляторов SDK из приглашения DOS являются:

1) Запустите либо vcvars32.летучая мышь или vcvars64.летучая мышь по мере необходимости.

2) в командной строке выполните команду "set MSSdk=1"

3) в командной строке выполните команду "set DISTUTILS_USE_SDK=1"

Это должно позволить "python setup.py установите", чтобы добиться успеха, предполагая, что нет никаких других проблем с кодом C. Но я смутно помню, что мне пришлось отредактировать пару PyCrypto файлы для включения mpir и поиска библиотек mpir, но на данный момент у меня нет моей системы Windows. Это будет через пару дней, прежде чем у меня будет время, чтобы воссоздать шаги. Если вы не сообщили об успехе к тому времени, я опубликую шаги PyCrypto. Шаги будут предполагать, что вы смогли скомпилировать mpir.

Я надеюсь, что это помогает.

Для Windows 7:

чтобы установить Pycrypto в Windows,

попробуйте это в командной строке

Set path=C:\Python27\Scripts (т. е. путь, где находится easy_install)

затем выполните следующие действия,

pycrypto easy_install

Для Ubuntu:

попробуйте это,

скачать Pycrypto из "https://pypi.python.org/pypi/pycrypto"

затем измените свой текущий путь на загруженный путь с помощью вашего терминала, и пользователь должен быть root:

например: root@xyz-virtual-machine:

ошибка "RuntimeError: chmod error" происходит потому, что скрипт установки не нашел .

решение

вам нужно только добавьте двоичные файлы MSYS в путь и повторно запустите установку скрипт.

(N. B: обратите внимание, что MinGW поставляется с MSYS so)

пример

например, если мы находимся в папке C:\<..>\pycrypto-2.6.1\dist\pycrypto-2.6.1>

C:\. > set PATH=C:\MinGW\msys.0\bin;%PATH%
C:\. > python setup.py install

необязательно: перед повторным запуском скрипта может потребоваться очистка:


Поговорим немного про средства электронной подписи (ЭП) с использованием отечественных ГОСТ-алгоритмов в Linux. Несмотря на то, что различные средства и интерфейсы по работе с ЭП в Linux развиты даже лучше, чем в Windows, использовать их не так просто.

Такое положение вещей сохранялось последние несколько лет. Но с конца 2016 года ситуация изменилась в лучшую сторону. Появилось сразу два продукта, которые позволяют работать с электронной подписью по стандарту ГОСТ и шифрованием без использования консоли – это Rosa Crypto Tool и Trusted eSign. Оба эти продукта для работы с криптографией используют «КриптоПро CSP» для Linux. Поэтому, перед тем как обратиться к описанию самих продуктов, поговорим немного про «КриптоПро CSP».

«КриптоПро CSP» под Linux — неоднозначный продукт. С одной стороны, это одно из самых распространенных и мощных сертифицированных средств по работе с криптографией как в Windows, так и в Linux. С другой стороны, для простого человека пользоватся его интерфейсами даже в Windows не так-то просто. А в Linux доступен только консольный интерфейс. Надеюсь, что компания «КриптоПро» в курсе этой ситуации, и в будущем нас ждут новые красивые и удобные интерфейсы, как для Windows, так и для Linux.

Для настройки нам понадобится:

  • Любимый дистрибутив Linux. Я использовал Ubuntu Linux 16.04 LTS и ROSA Fresh GNOME R8;
  • Сертифицированная версия КриптоПро CSP 4.0 R2 для Windows, UNIX и macOS;
  • Рутокен ЭЦП 2.0.

Настройка «КриптоПро» CSP

Несмотря на то, что есть несколько неплохих статей по настройке «КриптоПро CSP» под Linux (например, тут или тут), я опишу здесь свой вариант. Основная причина в том, что большинство инструкций написаны для «Крипто Про CSP» версии 3.x. А современная версия «КриптоПро CSP» 4.0 не является 100% совместимой с 3.x. Дополнительная причина – всегда приятно иметь полную инструкцию по настройке в одном месте, а не переключаться с одного окна на другое.

Приступаем к настройке.

Распаковываем «КриптоПро CSP» для Linux:


Далее у нас есть 2 варианта – автоматическая установка и установка вручную. Автоматическая установка запускается командой:


Здесь надо отдать должное разработчикам «КриптоПро» – автоматическая установка для большинства дистрибутивов отрабатывает успешно. Хотя бывают и нюансы. Например, если у вас не хватает некоторых пакетов, то установка будет успешно завершена, хотя некоторый функционал работать не будет.

Если что-то пошло не так, или вы по тем или иным причинам хотите использовать установку в ручном режиме, то вам необходимо выполнить:


Для установки пакетов в ROSA используйте urpmi, вместо dpkg -i.

Устанавливаем лицензию для «КриптоПро CSP» для Linux и проверяем, что все работает нормально:


Мы должны получить что-то вроде:

Настройка работы с Рутокен ЭЦП 2.0

Сделаем небольшое отступление. Для работы с электронной подписью и шифрованием нам не обойтись без ключевых пар и сертификатов. Надежное хранение закрытых ключей – один из основных факторов безопасности. А более надежных средств хранения, чем токен или смарт-карта, человечество пока не придумало. Я буду использовать Рутокен ЭЦП 2.0, который имеет сертификат ФСБ и поддерживает работу как с новыми, так и со старыми ГОСТами.


Для работы с токенами в ОС Linux есть масса различных средств и драйверов. Для описания всех этих средств понадобится отдельная статья. Поэтому я не буду подробно описывать, как это работает, и почему нам нужны именно эти пакеты.

Устанавливаем пакеты для работы с Рутокен ЭЦП 2.0:


Нам также необходимо установить пакеты КриптоПро CSP для поддержки работы с токенами:

Получаем тестовый сертификат

Перед тем как перейти непосредственно к работе с подписью, надо сгенерировать ключевую пару и создать сертификат электронной подписи. Если у вас уже есть Рутокен с контейнером «КриптоПро», то эту часть можно смело пропустить.


Проверим, что сертификат получен успешно.

Чтобы убедиться, что «КриптоПро CSP» успешно увидел токен, выполним:


Мы должны получить что-то вроде:


Теперь проверяем, что сертификат на токене видится успешно:


Записываем в хранилище сертификатов КриптоПро информацию об этом сертификате:


Проверим, что сертификат успешно сохранился в хранилище:


На этом основная настройка завершена, и мы можем начинать подписывать или шифровать файлы с использованием различных средств. Переходим к тому, зачем задумывалась эта статья.

Подпись средствами «КриптоПро CSP»

В составе «КриптоПро CSP» есть утилита csptestf, позволяющая выполнять различные криптографические операции. Как я уже писал выше, у этой утилиты есть 2 недостатка:

  • Отсутствие хорошей документации;
  • Отсутствие графического интерфейса.


Здесь,
my — параметр, в котором надо указать часть Common Name сертификата для подписи;
detached — позволяет создать открепленную подпись;
alg GOST94_256 — задает алгоритм хэширования, который будет использоваться при создании подписи.

Более подробную информацию о возможных параметрах вы можете получить, выполнив команду:


Такой интерфейс отлично подходит для подготовленного пользователя или для автоматизации операций в скриптах.

Поговорим теперь об утилитах, которые облегчают жизнь обычным пользователям при работе с подписью и шифрованием в Linux.

Rosa Crypto Tool

Как следует из названия, это утилита для работы с электронной подписью и шифрованием для дистрибутива ROSA Linux. В данный момент утилита доступна в репозиториях Rosa Linux и Alt Linux.

Эта утилита разрабатывается одним человеком – Михаилом Вознесенским. У нее простой, но удобный интерфейс. На данный момент утилита находится в активной разработке – с ноября 2016 года мне удалось протестировать три версии. Последняя версия, доступная на момент написание статьи — 0.2.2. Сейчас утилита поддерживает работу только с «КриптоПро CSP» для Linux, однако в ближайшее время будет добавлена поддержка других криптопровайдеров.

Что внутри? Утилита написана на Python с использованием PyQt4 для графического интерфейса.

Установить ее можно, использовав «Управление программами» в Rosa Linux.


Вставляем токен и запускаем утилиту.


Видим, что токен определился успешно и был найден наш сертификат.

Интерфейс программы настолько прост, что описывать и показывать в статье все его функции не имеет смысла. Попробуем только подписать файл.

Выбираем файл и жмем “Подписать файл”. Получаем вот такое предупреждение.


Нажимаем «OK» и получаем информацию о том, что файл был подписан успешно.


Основное достоинство этой утилиты в том, что она совершенно бесплатная, в отличии нашего следующего продукта.

По сравнению с использованием «КриптоПро CSP» из консоли:

+ На порядок проще использовать;
— Отсутствуют различные параметры подписи.

Исходный код программы доступен в публичном репозитории на ABF:
abf.io/uxteam/rosa-crypto-tool-devel
Система контроля версий, которую использует «НТЦ ИТ РОСА», интегрирована в сборочную среду и базируется на Git. Можно вполне использовать любой клиент git.

Надеюсь, разработчики других отечественных дистрибутивов Linux, таких как Astra Linux, GosLinux и другие добавят в свои дистрибутивы пакеты с rosa-crypto-tool.

Trusted eSign

Второй продукт, про который мы поговорим, это Trusted eSign от компании “Цифровые технологии”. Она известна на российском рынке ИБ как разработчик средства по работе с подписью и шифрованием для ОС Windows – «КриптоАРМ».

Главное, не путать этот продукт с Trusted.eSign – web-сервисом по работе с подписью этой же компании.

К сожалению, продукт пока доступен только в виде deb пакета для 64-битных систем. С чем связано такое ограничение, непонятно. Будем надеяться, что в ближайшее время компания выпустит и rpm пакет, а также версии для 32-битных дистрибутивов Linux.

Скачиваем с официального сайта deb-пакет и устанавливаем командой:


Запускаем Trusted eSign.


Сразу видно, что разработка не обошлась без дизайнера. Никакого сарказма. Все действия делаются просто и логично, а внешний вид радует глаз. К сожалению, большинство средств и программ в области ИБ от российских разработчиков разработаны без привлечения UX-специалистов и дизайнеров и заставляют своих пользователей страдать и плакать кровавыми слезами. Создается впечатление, что другими средства информационной безопасности просто не могут быть. “Цифровые технологии” опровергают это. Плата за красоту и удобство – необходимость платить за лицензию.

Но вернемся к подписи.

Выбираем раздел “Электронная подпись”:


Выбираем «Сертификат для подписи»:


Выбираем файлы для подписи и жмем «Подписать»:


Что под капотом? Процитирую с сайта: “Приложение создано на современном движке Electron, для вызова криптографических операций применяется библиотека OpenSSL. Совместимо с СКЗИ “КриптоПро CSP 4.0” и поддерживает все криптографические алгоритмы, реализованные в нем.” Для тех, кто ещё не в курсе Electron — это фреймворк для создания десктопных приложений на платформе node.js.

Сравним Trusted eSign с Rosa crypto tool:

+ Более удобный и красивый интерфейс
— Платная лицензия

Резюме

Подведем итог. В конце 2016 – начале 2017 года наметился неплохой прогресс в средствах по работе с электронной подписью под Linux. Информационная безопасность начинает поворачиваться к пользователю лицом, и с каждым годом требуется все меньше действий для такого простого действия, как подписать или зашифровать файл с использованием отечественных алгоритмов.

Хочется дополнительно отметить такое развитие отечественных продуктов, учитывая современный тренд на замену Windows на Linux в государственных и муниципальных организациях. В рамках этого тренда становится актуальным использование средств криптографической защиты информации под Linux. Хорошие и удобные продукты российских разработчиков помогут государственным организациям и структурам нормально работать и выполнять требования по импортозамещению.

Такое развитие не может не радовать, особенно когда это происходит под Linux.

Работа с электронной подписью (ЭЦП) в Linux (Debian / Ubuntu)

Электронно-цифровая подпись (ЭЦП) давно уже стала неотъемлемой частью нашей жизни, позволяя удаленно взаимодействовать с органами власти, сдавать отчетность, участвовать в системах электронного документооборота (ЭДО). Все это стало особенно актуально в последнее время, когда сложная эпидемиологическая обстановка внесла серьезные коррективы в рабочий процесс, сделав упор на дистанционные технологии. Особый интерес работа с ЭЦП вызывает у пользователей Linux, действительно, данная тема пока не нашла широкого отражения, поэтому постараемся восполнить этот пробел.

Начнем с того, что в техническом плане представляет электронно-цифровая подпись, а говоря об ЭДО и взаимодействии с государственными органами под этим термином мы будем иметь ввиду усиленную квалифицированную электронную подпись, которая выдается аккредитованным удостоверяющим центром и приравнивается к "живой" подписи.

ЭЦП состоит из двух частей: закрытого и открытого ключей. Закрытый ключ (часто просто "ключ") является секретным, его утрата ведет к полной компрометации подписи, так как завладевшее им лицо имеет возможность подписывать любые документы от имени владельца ЭЦП. Открытый ключ, вместе с некоторыми сведениями о владельце ключа оформляется в виде сертификата. Он не является секретным и используется для аутентификации владельца ЭЦП на многих ресурсах, а также для проверки подписи, сделанной закрытым ключом.

Среди обычных пользователей ЭЦП называется "сертификатом", но если вы являетесь специалистом, то должны различать и понимать разницу между составляющими частями ЭЦП и не путать закрытый и открытый ключ (сертификат). Сертификаты хранятся в системном хранилище ОС, а вот для хранения закрытых ключей есть варианты:

  • Токен - аппаратное устройство для хранения ключей, чаще всего без возможности их экспорта, является наиболее безопасным способом хранения, угрозу представляет только физическая утеря ключа.
  • Съемный носитель - обычно флеш-карта на которой расположен контейнер закрытого ключа, менее безопасный способ, так как ключ может быть легко скопирован физически.
  • Реестр или жесткий диск - самый небезопасный способ, но в тоже время самый удобный, особенно когда нужно работать с большим количеством ЭЦП, вполне приемлем на доверенных устройствах, но требует более серьезного подхода в разграничении прав доступа.

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

Второй вопрос - браузеры. Так повелось, что основная разработка средств электронной подписи ориентируется на браузеры на основе WebKit, поэтому мы рекомендуем использовать для работы Google Chrome, для используемого по умолчанию Firefox мы так и не смогли нормально настроить работу с отечественной криптографией. Также можно использовать Яндекс.Браузер или Спутник, хотя последний может нестабильно работать в последних выпусках Linux, например, в Xubuntu 20.04.

e-sign-linux-001.jpg

На этом, пожалуй, закончим вводную часть и перейдем к практическим примерам.

Госуслуги

Основной по своей значимости портал для взаимодействия с государственными органами. Для входа на Госуслуги в Linux можно использовать только аппаратные ключи (токены), криптопровайдеры не поддерживаются. Поэтому если вам нужны только Госуслуги, то Крипто-Про вам устанавливать не нужно. Для работы с Госуслугами вам потребуется IFCPlugin, который можно загрузить со следующей страницы, на нее же вы будете перенаправлены автоматически при попытке входа с помощью электронной подписи без установленного плагина.

e-sign-linux-002.jpg

Система корректно распознает текущую ОС и автоматически предлагает к скачиванию нужную версию плагина в виде DEB-пакета. Но не будем спешить с его установкой, для работы с токенами нам потребуется установить дополнительные библиотеки, в частности pcscd:

Если вы используете токены, то мы рекомендуем установить данную библиотеку вне зависимости от того, будете ли вы использовать Госуслуги или нет, она вам потребуется для работы с аппаратным ключом.

Затем откройте терминал в директории со скачанным плагином, повысьте права до суперпользователя и установите его командой:

Перезапустите браузер и снова попробуйте войти на портал Госуслуг, в этот раз все должно увенчаться успехом.

e-sign-linux-003.jpg

Установка Крипто-Про

Крипто-Про самый распространенный и популярный отечественный криптопровайдер. Это коммерческое ПО и для установки вам понадобится серийный номер, без него будет активирована триальная версия на три месяца. Обычно лицензия на Крипто-Про выдается вместе с ЭЦП, либо использующим его ПО (например, система сдачи отчетности), поэтому если вы затрудняетесь найти лицензию, то обратитесь к своему поставщику ЭЦП.

Теперь пару слов о ключах, если они располагаются на токене или флеш-карте, то ничего делать не надо, а вот если они находятся в реестре, то их нужно скопировать на переносной носитель (флешку). Для этого откройте Крипто-Про и перейдите на вкладку Сервис, в разделе Контейнер закрытого ключа нажмите Скопировать и в открывшемся окне выберите нужный контейнер из реестра.

e-sign-linux-004.jpg

Затем укажите новый носитель для закрытого ключа, в этом качестве можно использовать любую флеш-карту, в т.ч. с данными, также рекомендуем установить на контейнер ключа надежный пароль.

e-sign-linux-005.jpg

На этом подготовительные моменты закончились и перейдем непосредственно к установке Крипто-Про в среде Linux. Прежде всего нам потребуется получить дистрибутив, это не такая простая задача, как кажется на первый взгляд, проще всего это сделать с главной страницы официального сайта, нажав на ссылку в правой колонке.

e-sign-linux-006.jpg

В этом случае вам не потребуется полноценной регистрации, достаточно будет заполнить несколько полей, сайт корректно определяет ОС клиента и сразу предлагает скачать нужный пакет, обратите внимание, что Крипто-Про для Linux поддерживает только 64-разрядные системы.

e-sign-linux-007.jpg

Распакуйте полученный архив в любое удобное место и перейдите в терминал, этом можно сделать, кликнув правой кнопкой мыши в любом свободном месте и выбрав Открыть терминал.

И запустим установку Крипто-Про командой:

Продукт имеет текстовый установщик, который последовательно проведет вас по всем этапам. Набор установки по умолчанию следует дополнить пунктом Поддержка токенов и смарт-карт, также у вас должна быть установлена библиотека pcscd.

e-sign-linux-009.jpg

При отсутствии лицензионного ключа этап его ввода можно пропустить, впоследствии, для активации лицензии потребуется запустить программу установки еще раз.

После успешной установки запустите графическое приложение Инструменты КриптоПро, при старте оно автоматически находит и отображает все доступные контейнеры, и вы сразу можете выполнить необходимые действия, например, установить сертификат в системное хранилище ОС.

e-sign-linux-010.jpg

Альтернативой хранения ключей на флешке может быть размещение контейнеров на жестком диске, для этого нажмите Скопировать контейнер и выберите в качестве носителя Directory:

e-sign-linux-011.jpg

На этом установку Крипто-Про можно считать законченной.

Установка КриптоПро ЭЦП Browser plug-in

Но одного криптопровайдера нам будет недостаточно, для работы с ЭЦП на различных государственных порталах нам потребуется плагин для поддержки со стороны браузера, его можно скачать на следующей странице. Распакуем полученный архив в удобное место, он содержит по три пакета для DEB и RPM-систем. Для установки выполним в терминале с правами суперпользователя:

e-sign-linux-012.jpg

Затем перезапустим браузер и проверим работу плагина. Для этого нажмите на значок плагина на панели браузера и выберите в выпадающем меню Проверить работу плагина, если все сделано правильно вы увидите следующую страницу:

e-sign-linux-013.jpg

Теперь вы можете использовать Крипто-Про для входа по ЭЦП на сайты, поддерживающие работу с данным криптопровадером.

когда я пытаюсь запустить app.py (Python 3.3, PyCrypto 2.6) мой virtualenv продолжает возвращать ошибку, указанную выше. Мой оператор импорта просто from Crypto.Cipher import AES . Я искал дубликаты, и вы можете сказать, что есть некоторые, но я попробовал решения (хотя большинство из них даже не решения), и ничего не сработало.

вы можете увидеть, что файлы как для PyCrypto ниже:


У меня была такая же проблема (хотя и в Linux). Решение было довольно простым - добавить:

в моем приложении.файл yaml. Поскольку это работало правильно в прошлом, я предполагаю, что это новое требование.

у меня была такая же проблема на моем Mac при установке с pip . Затем я удалил pycrypto и установил его снова с easy_install , например:

также, Как прокомментировал Люк: если у вас возникли проблемы с запуском этих команд, обязательно запустите их как admin (sudo)

надеюсь, что это помогает!

я столкнулся с этим на Mac, и, похоже, это связано с тем, что, к сожалению, аналогичный модуль "crypto" (не уверен, для чего это) установлен рядом с pycrypto через pip.

исправление, похоже, удаляет как crypto, так и pycrypto с pip:

и переустановка pycrypto:

Теперь он работает, как ожидалось, когда я делаю что-то вроде:

на mac. если ты столкнешься с этим.. попробуйте посмотреть, можете ли вы импортировать crypto вместо этого?

Если это так.. имя пакета является проблемой C vs c . Чтобы обойти это.. просто добавьте эти строки в начало сценария.

вы знаете, что должны иметь возможность успешно импортировать paramiko.

Я нашел решение. проблема, вероятно, в чувствительности к регистру (в Windows).

просто измените имя папки:

  • C:\Python27\Lib\site-packages\crypto
  • в: C:\Python27\Lib\site-packages\Crypto

enter image description here

вот как папка была названа после установки pycrypto:

enter image description here

Я изменил его на:

enter image description here

и теперь следующие код работает нормально:

у меня была такая же проблема 'ImportError: No module named Crypto.Cipher' , начиная с использования GoogleAppEngineLauncher (версия > 1.8.X) с шаблоном GAE на OSX 10.8.5 (Mountain Lion). В Google App Engine SDK с python 2.7 runtime, pyCrypto 2.6 является предлагаемой версией. Решение, которое сработало для меня, было.

1) pycrypto2 скачать.6 источник где-то распакуйте его(

3) выполните следующую команду терминала внутри предыдущей папки для установки pyCrypto 2.6 вручную в папке GAE.

Если вы используете redhat, fedora, centos:

sudo yum install pycrypto

в моем случае я coouldnot установить его с помощью pip

удаление crypto и pycrypto работает на меня. Тогда установите только pycrypto. pip удалить crypto pip удалить pycrypto pip установить pycrypto

попробовать pip3:

это может быть проблема загрузки модулей python, установленных через pip. Обратитесь к этому ответу не удается загрузить модули Python, установленные через pip из каталога site-packages и попробуйте что-то вроде

Для Windows 7:

Я прошел через эту ошибку " Ошибка модуля Crypo.Шифр импорта AES"

для установки Pycrypto в Windows,

попробуйте это в командной строке

задать путь=C:\Python27\Scripts (i.e путь, где находится easy_install)

затем выполните следующие действия,

Для Ubuntu:

затем измените текущий путь на загруженный путь с помощью терминала:

например: root@xyz-виртуальная машина:

затем выполните следующие действия с помощью терминала:

python setup.py установить

Это сработало для меня. Надежда работает на всех..

Я решаю эту проблему, меняя первый буквенный регистр на верхний. Убедитесь ,что " из Crypto.Шифр импорта AES" не " из крипто.Шифр импорт AES".

для CentOS 7.4 я сначала установил pip, а затем pycrypto с помощью pip:

работал на меня (Ubuntu 17.10)

удаление venv и создание его снова с помощью python v3.6

Pycrypto устарел, имел проблемы с ним, использовал Pycryptodome

На сегодняшний день, у меня такая же проблема при импорте from Crypto.Cipher import AES даже я установил/переустановил pycrypto несколько раз. В конечном итоге это потому, что pip по умолчанию python3.

pip --version pip 18.0 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

Читайте также: