How to Cross Compile OpenSSL a Step by Step Guide 首先下载OpenSSL的源代码: wget http://www.openssl.org/source/openssl-0.9.8g.tar.gz 解压并进入目录 $ tar-xzf openssl-0.9.8g.tar.gz$ cd openssl-0.9.8g ./config no-asm shared 更改Makefile CROSS_COMPILE= /usr/local/arm/4.4.3-eabi/bin/arm-linux- 定位到以下行 CC= cc 改成 CC= $(CROSS_COMPILE)gcc 定位到以下行 AR=ar $(ARFLAGS) rRANLIB= /usr/bin/ranlib 改成 AR=$(CROSS_COMPILE)ar $(ARFLAGS) rRANLIB= $(CROSS_COMPILE)ranlib 然后修改安装的路劲,定位到以下两行 INSTALLTOP=/usr/local/sslOPENSSLDIR=/usr/local/ssl 改成实际安装路径,由于不是在本机运行,所以可以任意指定位置 INSTALLTOP= /someplace/opensslOPENSSLDIR= /someplace/openssl 可以了,这就是所做的所有改动。 $ make&&makeinstall 到此为止,openssl已经编译好了,接下来就是要把它打包到ARM板上面。 $ cd/someplace 打包 $ tar-czf openssl.tar.gz openssl 然后复制到开发板上(用U盘,用网络都可以) $ tar-xzf openssl.tar.gz$ cd openssl 把OpenSSL 加入到系统路径 exportPATH=$PATH:/someplace/openssl/bin 下面用RSA算法加密一个文件做测试。 $ echo"they came from nowhere,and they have a plan"> secret.txt 创建一个RSA密钥 $ openssl genrsa -out private.pem 1024 当前目录会生成一个private.pem,它包含了密钥和公钥, $ openssl rsa -in private.pem -out public.pem -outform PEM -pubout 将会生成一个public.pem的文件,就是公钥 $ openssl rsautl -encrypt-inkey public.pem -pubin-in secret.txt -out secret.enc 将会生成一个secret.enc 文件,就是加密后的secret.txt,可以尝试查看文件的内容,如果加密成功就会是一些无意义的字符。 $ openssl rsautl -decrypt-inkey private.pem -in secret.enc -out secret.org 查看解密后的文件 $ cat secret.org
|
openssl交叉编译
最新推荐文章于 2025-03-08 09:00:00 发布