LINUX.ORG.RU

hashlib и hmac в python3

 , ,


0

1

собственно пишу софтину на python3 + pyqt5. Потребовалось заюзать hmac, ставлю через pip3, выдает:

 sudo pip3 install hmac   
Collecting hmac
  Using cached hmac-20101005.tar.gz
Requirement already satisfied: setuptools in /usr/lib/python3.6/site-packages (from hmac)
Collecting hashlib (from hmac)
  Using cached hashlib-20081119.zip
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/usr/lib/python3.6/site-packages/setuptools/__init__.py", line 12, in <module>
        import setuptools.version
      File "/usr/lib/python3.6/site-packages/setuptools/version.py", line 1, in <module>
        import pkg_resources
      File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 36, in <module>
        import email.parser
      File "/usr/lib/python3.6/email/parser.py", line 12, in <module>
        from email.feedparser import FeedParser, BytesFeedParser
      File "/usr/lib/python3.6/email/feedparser.py", line 27, in <module>
        from email._policybase import compat32
      File "/usr/lib/python3.6/email/_policybase.py", line 9, in <module>
        from email.utils import _has_surrogates
      File "/usr/lib/python3.6/email/utils.py", line 28, in <module>
        import random
      File "/usr/lib/python3.6/random.py", line 46, in <module>
        from hashlib import sha512 as _sha512
      File "/tmp/pip-build-a92_mbm3/hashlib/hashlib.py", line 80
        raise ValueError, "unsupported hash type"
                        ^
    SyntaxError: invalid syntax
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-a92_mbm3/hashlib/

openssl в арче стоит, pyopenssl так же стоит через pip3

★★★

hmac

Разве это не встроенная либа?

~ python                    
Python 3.6.0 (default, Jan 16 2017, 12:12:55) 
[GCC 6.3.1 20170109] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hmac
>>> 
grazor ()

Серьёзно? Модуль 2010 года? В описании которого написано: «This is a stand alone packaging of the hashlib compatible hmac library included with Python 2.5 so that it can be used together with the hashlib backport on older versions of Python (tested on 2.4). Not needed with Python 2.5 or later»?

Этот модуль уже есть в Python 2.5 и более поздних версиях. Есть он и в Python 3: https://docs.python.org/3/library/hmac.html

i-rinat ★★★★★ ()
Python 3.4.3 (default, Nov 17 2016, 01:08:31) 
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import hmac
>>> hmac.__doc__
'HMAC (Keyed-Hashing for Message Authentication) Python module.\n\nImplements the HMAC algorithm as described by RFC 2104.\n'
>>>
I-Love-Microsoft ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

да, с питоном дело в том что был плохо знаком, пришлось за день на нем запилить одну прилагу, получилось, теперь понял почему питонисты все ругают python3, вернулся на python2 ))))

foozzi ★★★ ()
Ответ на: комментарий от I-Love-Microsoft

имхо скажу так, я заюзал в работе python наверное впервые (не считая фиксов мелких), сразу взял python3 + pyqt5, дофигища мелких изменений, которые вообще не знаю зачем были сделаны в python 3, не удобно доки гуглить к примеру. Как мне показалось он менее удобен чем python 2... как то так. И кстате например с тем же hmac, он вообще по другому практически работает, в плане создания хеша самого...

foozzi ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.