什么是数字签名 什么是数字签名技术(数字签名有哪些特点和必要性)

编辑:
发布时间: 2021-02-28 08:56:05
分享:

数字签名的作用是我标记某一段数据,表示我认可该数据,然后发给其他人,其他人可以知道该数据已经过我的认证,没有被篡改。

通过上述非对称加密,可以实现这一要求:

ios签名的目的和算法

首先用一种算法,算出原始数据的摘要,需要满足:a. 若原始数据有任何变化,计算出来的摘要值也要有变化。b. 摘要要够短,这里常用的算法是MD5。生成一份非对称加密的公钥和私钥,私钥自己拿着,公钥发布出去。对一份数据,算出摘要之后,用私钥加密这个摘要,得到一份加密后的数据,称为原始数据的签名。把它跟原始数据一起发送给用户。用户收到数据和签名后,用公钥解密得到摘要,同时用户用同样的算法计算原始数据的摘要,比对这里计算出来的摘要和公钥解密签名得到的摘要是否相等,若相等则表示这份数据中途没有被篡改过,因为如果有篡改,摘要会变化。

之所以第一步是计算摘要,是因为非对称加密的原理限制了可以加密的内容太大,所以想要对任何大的数据进行签名,都需要对其特征值进行签名来代替,效果是一样的。

好了,有了非对称加密和数字签名的基础,如何保证一段数据在某处得到认证?我们来看看如何通过数字签名的机制来保证iOS中安装的每一个App都是苹果授权的。

最简单的签名

要达到这个要求,非常简单直接。苹果官方生成一对公钥私钥,iOS内置一个公钥。私钥是苹果后台保存的。当我们在App上传递AppStore时,苹果的后台使用私钥对App数据进行签名。iOS系统下载App后,用公钥验证签名。如果签名正确,App必须经过苹果后台认证且未被修改,符合苹果的需求:确保安装的每个应用都是

如果我们的iOS安装App只能从AppStore下载,那就可以不用做任何复杂的事情,只需要一个数字签名,解决问题非常简单。

但实际上,因为安装app是从AppStore下载的,所以我们也可以通过三种方式安装App:

开发App时可以直接把开发中的应用安装进手机调试;In-House企业内部分发,可以直接安装企业证书签名后的App;AD-Hoc相当于企业分发的限制版,限制安装设备数量,较少用。

如果苹果想控制这三种方式安装的应用,会有新的要求,不能像上面这种简单。

提供具有推送功能的长期稳定的ios企业签名服务,跳过漫长而艰难的审核流程,直接为用户提供高速下载和安装服务

相关阅读
热门精选
孩子 孕妇