魔推mpush:IOS开发之数字证书及其原理

IOS开发者通常需要跟各种数字证书、公钥和密钥打交道。相信各位开发者经常会在开发的过程当中经常会被这些证书啊、密钥啊、公钥之类弄的心力憔悴了。今儿,就这个问题跟大家啰嗦两句关于IOS数字证书的问题。

什么是数字证书?

数字证书是互联网的数字形式的标识认证,与护照或驾驶证的智能非常相似。数字证书是一种凭据。提供了某个实体的标识和其他支持信息。数字证书由颁发机构(CA)的权威机构发布的。因此,该权威机构负责担保证书信息的有效性。而且数字证书通常情况下只在特定的时段内有效。

数字证书包含证书中所标识的实体的公钥(就是说你的证书里有你的公钥),由于证书将公钥与特定的个人匹配,并且该证书的真实性由颁发机构保证(就是说可以让大家相信你的证书是真的),因此,数字证书为如何找到用户的公钥并知道它是否有效这一问题提供了解决方案。

数字证书的基本加密原理

数字证书是采用了公钥体制,利用一堆互相匹配的密钥进行加密、解密的一种认证文件。每个用户自己设定一把特定的只属于自己所有的私钥,用它进行解密和签名;同时设定一把公开的密钥(既公钥)由本人公开,为某一组用户共享,用于加密和签名验证。

通俗来说,在IOS开发中,每一个用户都需要有一对公钥和私钥,私钥给自己用,公钥由自己公开给别人用。这样。当用户发送文件时,用私钥签名,而持有公钥的用户可以确保该信息或文件是由提供公钥用户发送的。这个过程就是数字签名。

而当用户接收文件时,他人使用公钥加密,该用户可以用私钥解密,这样就确保了该信息和文件只能用持有私钥的用户接收到。可以避免信息和文件的泄露。

关于公钥、私钥的解释

公钥和私钥是一种不对称的加密方式,相对应的还有对称性加密的方式——如我们大家通常用到的用户名和密码登陆的方式。公钥和私钥的加密方式目的是为了实现数据的安全传输。适用于发送方发送给接收方的信息需要加密,数据传输过程中不可见是加密的。采用公钥和私钥的数据加密传输是为了保证发送方的准确性,他人无法冒充发送方发送信息。要实现这一目的,就必须发送方和接收方都有公钥和私钥。

一般而言,公钥是给公众用户使用的,可以通过下载、邮件等方式公布给使用者,公钥的作用在于加密和验证。私钥则是给自身的,需要小心保存。私钥是用来解密和签章的,首先就KEY的所有权来说,私钥只能是个人拥有。

举个例子大家可能就更明白了。比如说,现在我要给你发送一个加密的消息:

首先,我必须拥有你的公钥,你也必须拥有我的公钥。

其次,我用你的公钥给这个消息加密,这样就保证这个消息不被别人看到,而且保证这个消息在传送过程中没有被修改。你收到消息后,用你的私钥就可以解密,就能看到内容。

最后,我用我的私钥给这个消息加密,发送到你手里后,你可以用我的公钥解密。因为私钥只有我手里有,这样就保证了这个消息是我发送的。

当A->B发送资料时,A会使用B的公钥加密,这样才能确保只有B能解开,否则普罗大众都能解开加密的讯息,就是去了资料的保密性。验证方面则是使用签 验章的机制,A传资料给大家时,会以自己的私钥做签章,如此所有收到讯息的人都可以用A的公钥进行验章,便可确认讯息是由 A 发出来的了。

IOS的安全性在于其严密而强大的认证体系和数字证书之上,不过这对开发者也造成了一定困惑。希望大家在看了上述的介绍之后,对数字证书和认证能够拥有一个较为清晰的人是。特别是苹果公司经常会更改其数字认证条款。各位开发者还要多关注这方面的相关报道。避免在开发过程中耗费大量精力。

时间: 2024-10-10 14:38:29

魔推mpush:IOS开发之数字证书及其原理的相关文章

魔推mpush:实现精准智能消息推送的五个关键

前沿:因为工作性质的关系,笔者会接触到很多非常资深的移动开发商.大部分技术工程师出身的CEO对技术本身的知识产权非常敏感.<KK的预言>一文中提出一个观点:"当拥有知识产权不在能够保证盈利,拥有精准只能的信息推送能力是今后APP开发公司盈利的保证". 魔推MPUSH是一款消息推送类SDK插件,它专门为开发者使用.目前,采取免费开放的运作模式.消息推送是天下最麻烦的事情.韩剧往往有这样的情节:女生哭着说:你不要走.我知道你要什么.男生大吼一声:我自己都不知道自己要什么,你怎么

魔推MPUSH开发者程凯征:好的消息推送技术是磨出来的

开发一款程序员喜欢用的SDK不容易.也许有些开发者还不知道能够使用方便易用的消息推送平台接口服务.但是像百度.网龙.去哪儿等APP应用都是在使用消息平台接口的服务.魔推MPUSH开发者程凯征以一位标准研发人员的视角,将研发和产品设计之间的关系用"与.或.非"来阐述他对消息推送技术是如何诞生的. 目前,魔推MPUSH已经向应用开发者开放,支持包括安卓.IOS.JAVA.PHP的主流系统.从原理上来说,为应用开发者提供的SDK包嵌入到应用程序当中,就可以实现信息的推送功能.目前,广泛的做法

XE6 &amp; IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相)

XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相) 2014-08-25 21:26 网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 1.自己给自己颁发证书,用于给App签名.(如果还没有MAC环境,请参照"XE6移动开发环境搭建之IOS篇"进行配置.)---------------------------------------------------------

XE6 &amp; IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相)

XE6 & IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相) 2014-08-26 21:26 网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 连接真机前,请先确保真机已越狱,并已安装好AppSync.--------------------------------------------------------------- 1.确保iPhone已越狱,可以看到并成功运行cydia为准. 2.并且安

XE6 &amp; IOS开发之免证书真机调试(3):生成iPA文件并安装到其它苹果设备上(有图有真相)

XE6 & IOS开发之免证书真机调试(3):生成iPA文件并安装到其它苹果设备上(有图有真相) 2014-08-27 20:51 网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 1.既然我们已经在真机上运行过App了,那么现在就来生成一下.--------------------------------------------------------------- 1.在虚拟机下,点一下桌面(星空图随便某个地方),在F

XE6 /XE8 &amp; IOS开发之免证书真机调试三步走,生成iPA文件并安装到其它苹果设备上

XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相) XE6 & IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相) XE6 & IOS开发之免证书真机调试(3):生成iPA文件并安装到其它苹果设备上(有图有真相) XE8 & IOS开发之免费证书真机调试:开发证书.AppID.开发授权profile的申请,附Debug真机调试演示(XCode7 Beta版或以上版本适用,有图有真相)

魔推mpush:消息推送的大学问,别把用户惹毛了!

从开发者和开发商的角度来说,消息推送越来越受到他们的重视.因此,个推.极光.百度云平台.信鸽.魔推mpush等等消息推送类服务平台应运而生,这受到了运营商们的重视.但是,对信息推送服务的调查我们发现,很多运营商只是单纯的将这个渠道视为一种信息下发通道,并未很好的了解.运用这一个有效的提高APP打开率和活跃度的工具. 根据Flurry公布的数据显示,智能手机用户每天平均2个半小时在看手机,而其中86%的时间都在使用各种各样的APP.而Urban Airship过去6个月内5亿次推送的数据统计结果表

IOS 开发环境,证书和授权文件等详解

一.成员介绍 1.    Certification(证书) 证书是对电脑开发资格的认证,每个开发者帐号有一套,分为两种: 1)    Developer Certification(开发证书) 安装在电脑上提供权限:开发人员通过设备进行真机测试. 可以生成副本供多台电脑安装: 2)      Distribution Certification(发布证书) 安装在电脑上提供发布iOS程序的权限:开发人员可以制做测试版和发布版的程序. 不可生成副本,仅有配置该证书的电脑才可使用:(副本制做介绍在

IOS 开发环境,证书和授权文件是什么?

一.成员介绍 1.    Certification(证书) 证书是对电脑开发资格的认证,每个开发者帐号有一套,分为两种: 1)    Developer Certification(开发证书) 安装在电脑上提供权限:开发人员通过设备进行真机测试. 可以生成副本供多台电脑安装: 2)      Distribution Certification(发布证书) 安装在电脑上提供发布iOS程序的权限:开发人员可以制做测试版和发布版的程序. 不可生成副本,仅有配置该证书的电脑才可使用:(副本制做介绍在