Почему PyCrypto требует компилятор C?

Есть ли скриптовая библиотека python, которая не полагается ни на что кроме python? Или предустановленные пакеты PyCrypto для Linux?

One Solution collect form web for “Почему PyCrypto требует компилятор C?”

Криптография включает в себя интенсивные численные вычисления, которые значительно быстрее реализуются на языке низкого уровня, таком как C и скомпилированы для машинного кода, чем при реализации на языке высокого уровня, таком как Python, и исполняются как интерпретируемый байт-код. Вот почему вы должны ожидать, что любая библиотека, которая предоставляет базовые криптографические примитивы, должна быть хотя бы частично записана на C (или даже на ассемблере).

Однако Python включает некоторые криптографические примитивы: модули hashlib и hmac предоставляют наиболее общие алгоритмы дайджеста (MD5, SHA-1, SHA-2) и соответствующие алгоритмы HMAC.

Кроме того, Python имеет встроенную арифметику с произвольной точностью, которая позволяет эффективно реализовывать некоторые асимметричные алгоритмы в чистом Python (по крайней мере, подписание и верификация, не обязательно генерация ключей). Python-RSA ( rsa ) – это чистая реализация Python RSA PKCS # 1 1.5.

Python не поставляется с любыми алгоритмами шифрования (в частности, AES), поскольку распространение кода шифрования юридически ограничено во многих частях мира. Официально рекомендуемая внешняя библиотека – PyCrypto .

Вы должны установить PyCrypto. Это было бы в стандартной библиотеке, если бы не юридические ограничения. Большинство дистрибутивов включает пакет Pycrypto. Если у вас нет (я не знаком с Levinux), вам нужно будет установить gcc. Если в вашем дистрибутиве отсутствует gcc (или система кросс-компиляции, чтобы легко компилировать пакеты в более полной системе), это не подходит для серьезной работы.

Linux и Unix - лучшая ОС в мире.