Changeset 9598517 in git


Ignore:
Timestamp:
2012-02-12T15:05:37Z (13 years ago)
Author:
Brian Warner <warner@…>
Branches:
master
Children:
04fd403
Parents:
d9c02d1
git-author:
Brian Warner <warner@…> (2012-02-09 22:47:13)
git-committer:
Brian Warner <warner@…> (2012-02-12 15:05:37)
Message:

Add Ed25519 signatures, in pycryptopp.publickey.ed25519 . Closes #75.

This copies in version 1.0 of python-ed25519, from
https://github.com/warner/python-ed25519 (or pypi), with minor source-code
rearrangement to match pycryptopp's build process. It includes unit tests,
power-on self-tests, and full known-answer tests. The standard 'setup.py
test' target only exercises 10% of the test vectors, to let the suite run in
about 1.0s on my laptop. The API documentation is in README.ed25519 .

Tests have been run successfully on Linux, OS-X and windows.

Files:
29 added
4 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified .gitignore

    rd9c02d1 r9598517  
    2121/pycryptopp/_pycryptopp.so
    2222/MANIFEST
     23/pycryptopp/publickey/ed25519/_ed25519.so
  • TabularUnified README.rst

    rd9c02d1 r9598517  
    2222See the file COPYING.TGPPL.html for the terms of the Transitive Grace
    2323Period Public Licence, version 1.0.
     24
     25The Ed25519 code comes from the python-ed25519 distribution [3]_, for which
     26the basic C code is in the public domain, and the Python bindings are under
     27the MIT license. See COPYING.ed25519 for details.
    2428
    2529BUILDING
     
    4751a Python interpreter use "help(pycryptopp)",
    4852"help(pycryptopp.cipher)", "help(pycryptopp.cipher.aes)" and so on.
     53
     54The documentation for pycryptopp.publickey.ed25519 is in README.ed25519,
     55adapted from the upstream python-ed25519 library [3].
    4956
    5057CONTACT
     
    7885.. [1] http://peak.telecommunity.com/DevCenter/setuptools
    7986.. [2] http://groups.google.com/group/cryptopp-users
     87.. [3] https://github.com/warner/python-ed25519
  • TabularUnified pycryptopp/publickey/__init__.py

    rd9c02d1 r9598517  
    1 import ecdsa, rsa
     1import ecdsa, rsa, ed25519
    22
    3 quiet_pyflakes=[ecdsa, rsa]
     3quiet_pyflakes=[ecdsa, rsa, ed25519]
  • TabularUnified setup.py

    rd9c02d1 r9598517  
    202202    Extension('pycryptopp._pycryptopp', extra_srcs + srcs, include_dirs=include_dirs, library_dirs=library_dirs, libraries=libraries, extra_link_args=extra_link_args, extra_compile_args=extra_compile_args, define_macros=define_macros, undef_macros=undef_macros)
    203203    )
     204
     205# python-ed25519
     206sources = [os.path.join("src-ed25519","glue","ed25519module.c")]
     207sources.extend([os.path.join("src-ed25519","supercop-ref",s)
     208                for s in os.listdir(os.path.join("src-ed25519","supercop-ref"))
     209                if s.endswith(".c") and s!="test.c"])
     210m = Extension("pycryptopp.publickey.ed25519._ed25519",
     211              include_dirs=[os.path.join("src-ed25519","supercop-ref")],
     212              sources=sources)
     213ext_modules.append(m)
     214
    204215
    205216if TEST_DOUBLE_LOAD:
Note: See TracChangeset for help on using the changeset viewer.