4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync================================================================================
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Introduction
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync================================================================================
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync OpenSSL is a well-known open source implementation of SSL and TLS protocols.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncThe core library implements the basic cryptographic functions and provides various
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncutility functions. The OpenSSL library is widely used in variety of security
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncproducts development as base crypto provider. (See http://www.openssl.org for more
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncinformation for OpenSSL).
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UEFI (Unified Extensible Firmware Interface) is a specification detailing the
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncinterfaces between OS and platform firmware. Several security features were
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncintroduced (e.g. Authenticated Variable Service, Driver Signing, etc) from UEFI
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync2.2 (http://www.uefi.org). These security features highly depends on the
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynccryptography. This patch will enable openssl building under UEFI environment.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync================================================================================
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync OpenSSL-Version
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync================================================================================
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Current supported OpenSSL version for UEFI Crypto Library is 0.9.8w.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync http://www.openssl.org/source/openssl-0.9.8w.tar.gz
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync================================================================================
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync HOW to Install Openssl for UEFI Building
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync================================================================================
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync1. Download OpenSSL 0.9.8w from official website:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync http://www.openssl.org/source/openssl-0.9.8w.tar.gz
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync NOTE: Some web browsers may rename the downloaded TAR file to openssl-0.9.8w.tar.tar.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync When you do the download, rename the "openssl-0.9.8w.tar.tar" to
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync "openssl-0.9.8w.tar.gz" or rename the local downloaded file with ".tar.tar"
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync extension to ".tar.gz".
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync2. Extract TAR into CryptoPkg/Library/OpenSslLib/openssl-0.9.8w
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync NOTE: If you use WinZip to unpack the openssl source in Windows, please
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync uncheck the WinZip smart CR/LF conversion option (WINZIP: Options -->
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Configuration --> Miscellaneous --> "TAR file smart CR/LF conversion").
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync3. Apply this patch: EDKII_openssl-0.9.8w.patch, and make installation
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync For Windows Environment:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ------------------------
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 1) Make sure the patch utility has been installed in your machine.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Install Cygwin or get the patch utility binary from
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync http://gnuwin32.sourceforge.net/packages/patch.htm
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 2) cd $(WORKSPACE)\CryptoPkg\Library\OpensslLib\openssl-0.9.8w
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 3) patch -p0 -i ..\EDKII_openssl-0.9.8w.patch
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 4) cd ..
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 5) Install.cmd
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync For Linux* Environment:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync -----------------------
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 1) Make sure the patch utility has been installed in your machine.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Patch utility is available from http://directory.fsf.org/project/patch/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 2) cd $(WORKSPACE)/CryptoPkg/Library/OpensslLib/openssl-0.9.8w
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 3) patch -p0 -i ../EDKII_openssl-0.9.8w.patch
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 4) cd ..
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 5) ./Install.sh
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync