diff --git a/recipes/openssl/__init__.py b/recipes/openssl/__init__.py
new file mode 100644
index 0000000..38a27f2
--- /dev/null
+++ b/recipes/openssl/__init__.py
@@ -0,0 +1,49 @@
+from toolchain import Recipe, shprint
+from os.path import join, exists
+import sh
+import os
+
+
+arch_mapper = {'i386': 'darwin-i386-cc',
+               'x86_64': 'darwin64-x86_64-cc',
+               'armv7': 'iphoneos-cross',
+               'arm64': 'iphoneos-cross'}
+
+
+class OpensslRecipe(Recipe):
+    version = "1.0.2d"
+    url = "http://www.openssl.org/source/openssl-{version}.tar.gz"
+    libraries = ["libssl.a", "libcrypto.a"]
+    include_dir = "include"
+    include_per_arch = True
+
+    def build_arch(self, arch):
+        options_iphoneos = (
+            "-isysroot {}".format(arch.sysroot),
+            "-DOPENSSL_THREADS",
+            "-D_REENTRANT",
+            "-DDSO_DLFCN",
+            "-DHAVE_DLFCN_H",
+            "-fomit-frame-pointer",
+            "-fno-common",
+            "-O3"
+        )
+        build_env = arch.get_env()
+        target = arch_mapper[arch.arch]
+        shprint(sh.env, _env=build_env)
+        sh.perl(join(self.build_dir, "Configure"),
+                target,
+                _env=build_env)
+        if target == 'iphoneos-cross':
+            sh.sed("-ie", "s!^CFLAG=.*!CFLAG={} {}!".format(build_env['CFLAGS'],
+                   " ".join(options_iphoneos)),
+                   "Makefile")
+            sh.sed("-ie", "s!static volatile sig_atomic_t intr_signal;!static volatile intr_signal;! ",
+                   "crypto/ui/ui_openssl.c")
+        else:
+            sh.sed("-ie", "s!^CFLAG=!CFLAG={} !".format(build_env['CFLAGS']),
+                   "Makefile")
+        shprint(sh.make, "clean")
+        shprint(sh.make, "-j4", "build_libs")
+
+recipe = OpensslRecipe()
diff --git a/recipes/python/ModulesSetup b/recipes/python/ModulesSetup
index f78bdb0..2504628 100644
--- a/recipes/python/ModulesSetup
+++ b/recipes/python/ModulesSetup
@@ -51,3 +51,5 @@ pyexpat expat/xmlparse.c expat/xmlrole.c expat/xmltok.c pyexpat.c -I$(srcdir)/Mo
 
 # Future (used by numpy)
 future_builtins future_builtins.c
+
+_ssl _ssl.c -DUSE_SSL -lssl -lcrypto