谈谈iOS 的加密技术

来源:互联网 发布:诺基亚6220c软件 编辑:程序博客网 时间:2024/05/21 10:32

ios常用加密方式

AES加密

aes(The Advanced Encryption Standard)是美国国家标准与技术研究所用于加密电子数据的规范。它被预期能成为人们公认的加密包括金融、电信和政府数字信息的方法。本文展示了AES的概貌并解析了它使用的算法。包括一个完整的C#实现和加密.NET数据的举例。在读完本文后你将能用AES加密、测试 基于AES的软件并能在你的系统中使用AES加密。
美国国家标准与技术研究所(NIST)在2002年5月26日建立了新的高级数据加密标准(AES)规范。将提供一个用C#编写的的能运行的 AES 实现,并详细解释到底什么是 AES 以及编码是如何工作的。同时展示如何用 AES 加密数据并扩展本文给出的代码来开发一个商业级质量的 AES 类。解释了怎样把 AES 结合到你的软件系统中去和为什么要这么做,以及如何测试基于 AES 的软件。
  AES 是一个新的可以用于保护电子数据的加密算法。明确地说,AES 是一个迭代的、对称密钥分组的密码,它可以使用128、192 和 256 位密钥,并且用 128 位(16字节)分组加密和解密数据。与公共密钥密码使用密钥对不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数据 的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换(permutations )和替换(substitutions)输入数据。Figure 1 显示了 AES 用192位密钥对一个16位字节数据块进行加密和解密的情形。

BASE64编码

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。Base64编码可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码具有不可读性,即所编码的数据不会被人用肉眼所直接看到。

MD5加密

MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。
由于MD5算法的使用不需要支付任何版权费用的,所以在一般的情况下(非绝密应用领域。但即便是应用在绝密领域内,MD5也不失为一种非常优秀的中间技术),MD5怎么都应该算得上是非常安全的了。
在一些初始化处理后,MD5以512位分组来处理输入文本,每一分组又划分为16个32位子分组。算法的输出由四个32位分组组成,将它们级联形成一个128位散列值。
首先填充消息使其长度恰好为一个比512位的倍数仅小64位的数。填充方法是附一个1在消息后面,后接所要求的多个0,然后在其后附上64位的消息长度(填充前)。这两步的作用是使消息长度恰好是512位的整数倍(算法的其余部分要求如此),同时确保不同的消息在填充后不相同。

安卓与ios系统安全对比

安卓系统:
安卓系统是开放的,应用程序可以去读取SD的全局公开目录,换句话说,应用之间是可以相互之间读取数据的,只要知道各自的数据位置和格式就可以去读取或者修改。因此,应用之间相互会产生大量的数据交集,相互之间被委托调用的内容会很多,这也就解释了为什么一些用户出现流量、花费激增或者安装带有病毒应用暗扣费的情况出现。
iOS系统:
iOS系统是一个封闭的系统,在iOS应用的开发中,开发者需要遵循苹果为其设定开发者协议,没有遵循规定协议而开发的应用不会通过App Store审核,这样就使得开发者在开发应用的时候必须遵守一定的协议,没有权限操作任何非本程序目录下的内容。

iOS应用加密问题

众所周知,苹果App Store上架审核很严格,但每天有着成千上万款应用程序审核提交,同时恶意软件的伪装越来越好,也还是让一些恶意软件从审核的夹缝中进入App Store中。就苹果而言,所面临的困难也是十分恶劣的。
根据国外某安全服务商的最新调查,iOS前100名付费应用中87%均遭黑客破解。[5] 除了免费iOS应用被破解以外,越来越多收费应用被破解,破解的应用类型包含各个类型,包括游戏、商业、生产、金融、社交、娱乐、教育、医疗等。这些收费应用原本是需要付费下载的,而被破解之后,用户不需要付费也能下载。内购破解、源代码破解、本地数据窃取,网络安全风险,iOS应用风险无处不在。
从2013年开始,移动互联网圈内涌现了不少从事移动应用安全服务的公司,其中不乏互联网大佬,但遗憾的是,这些公司更多的重心一直都在安卓应用安全,提供的服务都是为安卓应用加密服务,没有对iOS应用提供安全服务的公司。到底是因为iOS系统的封闭性还是因为iOS加密技术比较难而导致这些公司一直止步于前呢?原因不得而知,我们知道的是iOS应用安全一直处于空白。

安全风险

1、内购破解
插件法(仅越狱)、iTools工具替换文件法(常见为存档破解)、八门神器修改
2、应用程序函数PATCH破解
利用FLEX 补丁软件通过派遣返回值来对应用进行patch破解
3、网络安全风险
截获网络请求,破解通信协议并模拟客户端登录,伪造用户行为,对用户数据造成危害
4、源代码安全风险
通过使用ida等反汇编工具对ipa进行逆向汇编代码,导致核心代码逻辑泄漏与被修改,影响应用安全

ios应用加密已实现

在这种安全形势下,爱加密通过对大量的案例进行详细分析,针对iOS的技术原理和破解原理,强势推出iOS应用加密技术,分别从本地数据、方法体/方法名、URL编码、程序结构、网络数据传输等几个方面对iOS应用进行全方位的保护,并可以根据iOS应用用户的需求提供定制解决方案,从而实现iOS防破解保护。
爱加密CTO林魏表示,作为全球首家推出的iOS应用防破解技术的平台,爱加密的技术在全球都是遥遥领先。整个加密过程纯净简单,没有技术底子的人也能完成,也不需要额外开发。加密过程融入到编译源码的过程,操作简单,而且加密过程更不会嵌入任何插件,用户不需要担心任何风险。对于用户比较担心的应用性能问题,林魏也表示无需担心,加密不会影响应用性能,无论是大型游戏、小型应用还是企业级应用,加密后的应用都能达到完美适配。更值得一提的是,因为加密后的应用更加安全,所以在AppStore上架的时候审核也会更快,让用户毫无后顾之忧。
爱加密作为国内最专业的移动应用保护平台,提供涉及APP开发、APP定制保护服务、APP运营等环节的一站式安全服务。凭借优异的安全技术及优质服务一直以来都是业内公认的知名安全平台。此次又全球首家率先推出了iOS应用防破解技术,结合原有的安卓应用加密服务,爱加密针对整个移动端应用的安全,已经拥有了提供全面保护的能力。相信在将来,爱加密会在更多的领域进行创新、探索,以建立更加完善的移动互联网安全体系。



0 0
原创粉丝点击