diff --git a/cryptography/__about__.py b/cryptography/__about__.py
new file mode 100644
index 0000000..16d631f
--- /dev/null
+++ b/cryptography/__about__.py
@@ -0,0 +1,32 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+from __future__ import absolute_import, division, print_function
+
+__all__ = [
+    "__title__", "__summary__", "__uri__", "__version__", "__author__",
+    "__email__", "__license__", "__copyright__",
+]
+
+__title__ = "cryptography"
+__summary__ = ("cryptography is a package designed to expose cryptographic "
+               "primitives and recipes to Python developers.")
+__uri__ = "https://github.com/alex/cryptography"
+
+__version__ = "0.1.dev1"
+
+__author__ = ("Alex Gaynor, Donald Stufft, Laurens van Houvten, "
+              "Jean-Paul Calderone, Chris Heime, and Indivdual Contributors")
+__email__ = "cryptography-dev@python.org"
+
+__license__ = "Apache License, Version 2.0"
+__copyright__ = "Copyright 2013 Donald Stufft"
diff --git a/cryptography/__init__.py b/cryptography/__init__.py
index e69de29..f37bd22 100644
--- a/cryptography/__init__.py
+++ b/cryptography/__init__.py
@@ -0,0 +1,22 @@
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+from cryptography.__about__ import (
+    __title__, __summary__, __uri__, __version__, __author__, __email__,
+    __license__, __copyright__
+)
+
+
+__all__ = [
+    "__title__", "__summary__", "__uri__", "__version__", "__author__",
+    "__email__", "__license__", "__copyright__",
+]
diff --git a/setup.py b/setup.py
index fe23f30..7fe90d9 100644
--- a/setup.py
+++ b/setup.py
@@ -10,18 +10,35 @@
 # implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
-
 from setuptools import setup
 
+about = {}
+with open("cryptography/__about__.py") as fp:
+    exec(fp.read(), about)
+
+
+CFFI_DEPENDENCY = "cffi>=0.6"
+
+install_requires = [
+    CFFI_DEPENDENCY,
+]
+
+setup_requires = [
+    CFFI_DEPENDENCY,
+]
+
+
 setup(
-    name="cryptography",
-    description="cryptography is a package designed to expose cryptographic "
-                "primitives and recipes to Python developers.",
-    license="Apache License, Version 2.0",
-    url="https://github.com/alex/cryptography",
-    # for cffi
-    zip_safe=False,
-    setup_requires=["cffi>=0.6"],
+    name=about["__title__"],
+    version=about["__version__"],
+
+    description=about["__summary__"],
+    license=about["__license__"],
+    url=about["__uri__"],
+
+    author=about["__author__"],
+    author_email=about["__email__"],
+
     classifiers=[
         "Development Status :: 2 - Pre-Alpha",
         "Intended Audience :: Developers",
@@ -44,4 +61,10 @@
         "Programming Language :: Python :: Implementation :: PyPy",
         "Topic :: Security :: Cryptography",
     ],
+
+    install_requires=install_requires,
+    setup_requires=setup_requires,
+
+    # for cffi
+    zip_safe=False,
 )
