专题:基于IOS上MDM技术相关资料整理及汇总mobileconfig文件的签名和认证(signed、verified)

一、功能描述:
鉴于我们的设备和MDM
server之间已经可以通信,并能完成相应的锁屏、擦除数据、查询设备信息等功能,但是,我们在安装了mobileconfig后,返现配置描述文件打
开显示“unsigned” 或者“尚未签名”这样的情况,所以接下来的工作就是让我们的mobileconfig文件看起来更加安全一些。

二、操作步骤:
1、确保我们有如下文件:
  (1)、mbaike.crt(https服务器端使用证书文件)
  (2)、mbaike.key(https服务器端使用证书对应的密钥)
  (3)、ca-bundle.pem(startssl官网下载的跟证书文件,具体的在哪里下载,请在startssl控制面板中查找)
  (4)、unsigned.mobilecofig文件(IOS端生成的未签名的配置描述文件)

2、在linux上通过openssl命令生成签名后的signed.mobileconfig文件:
openssl smime -sign -in
unsigned.mobileconfig -out signed.mobileconfig -signer mbaike.crt -inkey
mbaike.key -certfile ca-bundle.pem -outform der -nodetach

注意:在使用上面的openssl命令的时候会要求输入key文件的密码,我们这里不建议使用这种方式,我们把key文件的密码写入到key文件中,这样就不需要输入密码了,详见第三步;

3、将key的密码写入key文件:
openssl rsa -in mbaike.key -out mbaikenopass.key
故,第二步中的命令变成了:
openssl smime -sign -in
unsigned.mobileconfig -out signed.mobileconfig -signer mbaike.crt -inkey
mbaikenopass.key -certfile ca-bundle.pem -outform der -nodetach

这样就不需要输入密码了,这一步,我们得到了signed.mobileconfig这个文件,这个文件就是我们得到的签名和认证后的文件,我们安装到移动设备中,mobileconfig配置描述文件变成了绿色的“Verified”了。

备注:因为我们的mobileconfig配置描述文件一般都是动态生成的,因为文件中含有“Check In URL” 和“Server URL ”两个动态的地址,所以需要通过java程序动态调用openssl命令来生成签名后的文件,这里我们后面介绍。

转载自:移动互联百科
本文固定链接:http://www.mbaike.net/ios/1578.html

mobileconfig文件的签名和认证(signed、verified)的更多相关文章

  1. 为iOS的mobileconfig文件进行签名

    本文主要讲,使用苹果开发者证书进行签名达到目的,本文两种方法,一种是刀耕火种的一步步操作,一种使用脚本签名 一.导出苹果证书进行签名 1.从钥匙串(keychain)中导出证书 实用工具->钥匙 ...

  2. 对于iPhone描述文件的签名认证

    1.购买SSL证书验证(跟https认证一样) 2.iphone 签名.mobileconfig文件 company.mobileconfig 未签名的mobileconfig文件 server.cr ...

  3. linux SElinux防护 加密解密 gpg签名与认证

    SElinux Security-Enhanced Linux由美国国家安全局主导开发一套强化linux安全的mac扩展模块 selinux的运作机制:集成到linux内核上(2.6及以上)操作系统提 ...

  4. C#实现RSA加密与解密、签名与认证(转)

    一.RSA简介 RSA公钥加密算法是1977年由Ron Rivest.Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的.RSA取名来自开发他们三者的名字.RSA是目前最有影响力 ...

  5. C#实现RSA加密与解密、签名与认证

    一.RSA简介 RSA公钥加密算法是1977年由Ron Rivest.Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的.RSA取名来自开发他们三者的名字.RSA是目前最有影响力 ...

  6. C# 动态修改dll的签名 以及修改引用该dll文件的签名

    在读取RedisSessionStateProvider配置 提到用mono ceil 来修改程序集以及它的签名,里面GetPublicKey 和GetPubliKeyToken 方法里面那个字符串的 ...

  7. kali更新源相关 -- 没有release文件、签名无效、404

    kali更新源相关 -- 没有release文件.签名无效.404 这个随笔主要是处理Mac下使用VMare虚拟机安装Kali时候我遇到的一些关于更新源的问题 (因为本人为了这个问题折腾了四五个小时, ...

  8. [Android Pro] 查看 keystore文件的签名信息 和 检查apk文件中的签名信息

    1: 查看 keystore文件的签名信息 keytool -list -v -keystore keystoreName -storepass keystorePassword 2: 检查apk文件 ...

  9. iOS包重签名工具,ipa文件重签名,快速签名,SignTool签名工具,好用的签名工具,App重签名

    新工具 ProjectTool 已上线 这是一款快速写白包工具,秒级别写H5游戏壳包,可视化操作,极易使用,支持Swift.Objecive-C双语言 QQ交流群:811715780 进入 Proje ...

随机推荐

  1. Soft Renderer的乐趣

    最近这一个月的闲暇时间在边学习<3D编程大师技巧>边做自己的Soft Renderer,一个月下来总算有了个“基本原型”的样子.主要是在编写图形管线的过程式代码,简单明了为第一个阶段的目标 ...

  2. 给指针malloc分配空间后就等于数组吗?

    首先回答这个的问题:严格的说不等于数组,但是可以认为它是个数组一样的使用而不产生任何问题.不过既然这样,那它应该算是个数组吧.所以,一般我们都用“动态数组”这种名字来称呼这种东西. 要讲清楚这个东西, ...

  3. NHibernate讲解

    第1章 NHibernate体系结构 总览 对NHibernate体系结构的非常高层的概览: 这幅图展示了NHibernate使用数据库和配置文件数据来为应用程序提供持久化服务(和持久化的对象). 我 ...

  4. windows和linux中检查端口是否被占用

    一.windows 1.查询端口占用情况 cmd > netstat -ano 2.查询8080端口是否被占用 cmd > netstat -ano|findstr 8080 3.查询哪个 ...

  5. 类型推导:函数模板与auto

    1.从函数模板谈起 函数模板的类型推导机制是在c++98时代就有的,auto的类型推导机制与其基本一致,所以先理解函数模板类型推导. 函数模板可以用如下代码框架表示: #template<typ ...

  6. 基于C#实现的HOOK键盘钩子实例代码

    本文所述为基于C#实现的HOOK实例,该实例可用来屏蔽系统热键.程序主要实现了安装钩子.传递钩子.卸载钩子等功能.在传递钩子中:<param name="pHookHandle&quo ...

  7. Maximum repetition substring 后缀数组

    Maximum repetition substring Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7578   Acc ...

  8. 函数查询(Function Query)

    函数查询 可以利用 numeric字段的值 或者 与字段相关的的某个特定的值的函数,来对文档进行评分. 1.    使用函数查询的方法 这里主要有三种方法可以使用函数查询,这三种s方法都是通过solr ...

  9. 在MVC中要实现Ajax

    在MVC中要实现Ajax有很多的方式,有微软自己的MicrosoftAjax,也可以用JQuery的AJax来实现,如果对其他的JavaScript框架熟悉,还可以采用其他的实现方案,比如说Proto ...

  10. asp.net mvc 从数据库中读取图片的实现代码

    首先是创建一个类,继承于ActionResult,记住要引用System.Web.Mvc命名空间,如下: public class ImageResult : ActionResult { publi ...