38 lines
1.4 KiB
Python
Executable file
38 lines
1.4 KiB
Python
Executable file
#! /usr/bin/env python
|
|
|
|
from subprocess import Popen, PIPE
|
|
from distutils.core import setup, Extension
|
|
|
|
version = Popen(["git", "describe", "--tags"], stdout=PIPE).communicate()[0]\
|
|
.strip().decode("utf8")
|
|
|
|
ext_modules = [Extension("curve25519._curve25519",
|
|
["python-src/curve25519/curve25519module.c",
|
|
"curve25519-donna.c"],
|
|
)]
|
|
|
|
short_description="Python wrapper for the Curve25519 cryptographic library"
|
|
long_description="""\
|
|
Curve25519 is a fast elliptic-curve key-agreement protocol, in which two
|
|
parties Alice and Bob each generate a (public,private) keypair, exchange
|
|
public keys, and can then compute the same shared key. Specifically, Alice
|
|
computes F(Aprivate, Bpublic), Bob computes F(Bprivate, Apublic), and both
|
|
get the same value (and nobody else can guess that shared value, even if they
|
|
know Apublic and Bpublic).
|
|
|
|
This is a Python wrapper for the portable 'curve25519-donna' implementation
|
|
of this algorithm, written by Adam Langley, hosted at
|
|
http://code.google.com/p/curve25519-donna/
|
|
"""
|
|
|
|
setup(name="curve25519-donna",
|
|
version=version,
|
|
description=short_description,
|
|
long_description=long_description,
|
|
author="Brian Warner",
|
|
author_email="warner-pycurve25519-donna@lothar.com",
|
|
license="BSD",
|
|
packages=["curve25519", "curve25519.test"],
|
|
package_dir={"curve25519": "python-src/curve25519"},
|
|
ext_modules=ext_modules,
|
|
)
|