iOS 在Xcode中使用OpenSSL库
最近要做一个密码键盘,想内置一些加密算法,所以就想到了添加OpenSSL库,现在mac也自带了OpenSSL库,但是每次都从终端是生成是很麻烦的。网上找了很多文档、博客去介绍如何编译可以在Xcode中使用的OpenSSL静态库文件,但是写的都不是很清楚,并且年代久远,最终在一个看着很简单的博客上发现了一个很好用的方法。
下面我就简单的介绍一下,亲测有效。
首先我们先去下载 https://github.com/x2on/OpenSSL-for-iPhone.git
下载完成后,我们就要用终端了,去编译需要的静态库。
打开终端 输入 cd /Users/<username>/<path>/OpenSSL-for-iPhone-master
然后输入./build-libssl.sh 会出现配置的一些相关东西
这个过程大概需要三分钟。
最终是
到这里我们就编译好需要的静态文件了。
然后就去下载好的OpenSSL-for-iPhone-master项目中拉取
这是我们需要的lib crypto.a 和libssl.a。到这编译需要的.a文件就算完成了。
下面我们就要去使用它。
点击libssl.a -->show in finder 我们还会看到一个include文件夹。把我们需要的.a文和include文件夹copy出来,放到我们自己的工程中去。
然后就是配置一下Xcode了。Build setting 下 搜索 Header search path ,添加路径。其实就是拖着项目中的include文件夹放上去就行。
到这我们就可以在项目中使用强大的OpenSSL了。
给大家提供一个在线生成公私钥的网站:http://web.chacuo.net/netrsakeypair
iOS 在Xcode中使用OpenSSL库的更多相关文章
- iOS App中 使用 OpenSSL 库
转自:http://blog.csdn.net/kmyhy/article/details/6534067 在你的 iOS App中 使用 OpenSSL 库 ——译自x2on的“Tutorial: ...
- xcode中的第三方库配置问题总结
xcode中的第三方库配置总结 在导入第三方库的时候,总是会遇到许多的问题.在这里,我记录一下学到的一些知识点.写得比较乱.只要是想要记录下来,在第三方库导入的时候,遇到的一些问题. 参考网址: ht ...
- iOS——Xcode中添加第三方库
一.只有.h和.a文件的库 1.向项目中添加三方库文件 如果添加的第三方库只有.h和.a文件,直接把文件夹拖进项目下面,这时会弹出下面的提示框,一定要勾选下面选择的选项: 这里要注意,在Add to ...
- iOS 在 Xcode 中重命名项目名称
本教程使用的 Xcode 版本是Xcode 6.3.1,网上有好多的教程,都是在 Xcode 4 上做的讲解,现以本文章讲解一下如何在 Xcode 6.3.1 中重命名你的项目名称,包括你的应用名称. ...
- iOS - Xcode中从动态库剥离不需要的架构
自从iOS 8发布以来,开发人员已经能够利用动态库对iOS开发的好处.对于一般开发,为所有需要的架构设置一个单一的动态库是非常好的,所以您可以在所有设备和iOS模拟器上运行,而无需更改任何东西.然而, ...
- iOS开发 Xcode中的Info.plist字段含义
Info.plist用于向iOS提供关于app,bundle或者framework的一些重要信息.它指定了比如一个应用应该怎样启动,它如何被本地化,应用的名称,要显示的图标,还有更多.Info.pli ...
- ios开发xcode中设置代码块
在开发中有很多重复的代码,很多开发者把常用的代码做成代码块提高开发效率. 在xcode里选中代码块的时候总是很不容易,点击选中的代码(文字),不要移动和松开鼠标左键,当竖线变成像拉长了的x(我也不知道 ...
- Xcode 中 Git 的配置与使用
Xcode 中 Git 的配置与使用主要围绕下面几个问题展开阐述: 问题1,如何在Xcode中创建本地代码库,并添加和提交代码到本地代码库? 问题2,如何在Xcode中提交推送给远程服务器代码库? 问 ...
- Git在Xcode中的配置与使用常见问题总结
书接上回提出的Git在Xcode中的配置与使用常见问题4个问题 问题1,如何在Xcode中创建代码库,并添加和提交代码到代码库? 问题2,如何在Xcode中提交推送给远程服务器代码库? 问题3,如何在 ...
随机推荐
- 用Python 3写的一个Spider小爬虫(使用内置urllib模块and正则表达式)
用Python写了一个Spider小爬虫,爬一爬斗鱼“王者荣耀”在线直播的主播及人气
- 【转】利用Behavior Designer制作敌人AI
http://www.unity.5helpyou.com/3112.html 本篇unity3d教程,我们来学习下利用Behavior Designer行为树插件来制作敌人AI,下面开始! Beha ...
- 【转】手动写一个Behavior Designer任务节点
http://blog.csdn.net/qq_33747722/article/details/53539532 自己手写一个类似于CanSeeObject.Seek等任务节点并不是一件难事 下面我 ...
- “取出数据表中第10条到第20条记录”的sql语句+selecttop用法
1.首先,select top用法: 参考问题 select top n * from和select * from的区别 select * from table -- 取所有数据,返回无序集合 sel ...
- AngularJs 特性 之 双向数据绑定
<!DOCTYPE html> <html lang="en" ng-app> <head> <meta charset="UT ...
- [canvas入坑1]canvas 画布拖拽效果
查看效果请到 http://philippica.github.io/ 点击drag 和上一篇画图很像,所以有些部分做了省略 当鼠标按下时保存当前画布上的内容到ppImgData中,并且记录下初始点 ...
- set和dict
dict属于mapping类型 from collections.abc import Mapping,MutableMapping from collections.abc import __all ...
- vue-cli打包之后页面为空的问题。
做了一个demo,想看一下打包之后的样子,发现页面是空的. 发现问题就要解决: 1.首先看控制台没有报任何错误,那就证明我们的代码是没有任何问题的. 只能是路径问题造成的. 2.在路由router/i ...
- 标准IO与文件IO 的区别
先来了解下什么是标准IO以及文件IO. 标准IO:标准I/O是ANSI C建立的一个标准I/O模型,是一个标准函数包和stdio.h头文件中的定义,具有一定的可移植性.标准IO库处理很多细节.例如缓存 ...
- 移动WEB前端开发资源的一些素材
meta篇: <meta name="viewport" content="width=device-width,initial-scale=1.0,user-sc ...