专题:基于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. cpio备份命令

    cpio是一个比较古老的备份命令,也是用于磁带机备份的工具.虽然如此,现在许多时候仍然需要使用这个命令.例如定制系统内存映像盘时等. 小知识:系统内存映像盘通常位于引导分区/root中,文件名以ini ...

  2. 深入分析 Linux 内核链表--转

    引用地址:http://www.ibm.com/developerworks/cn/linux/kernel/l-chain/index.html 一. 链表数据结构简介 链表是一种常用的组织有序数据 ...

  3. IIS 之 HTTP 错误 403.14 - Forbidden

    错误如下图所示: 其实,这个提示下面已经交代了怎么解决问题,现在告诉大家具体的详细步骤. 方法一:配置" 默认文档 " 方法二:启用" 目录浏览 "

  4. 1.4.2 solr字段类型--(1.4.2.4)使用Dates(日期)

    1.4.2 solr字段类型 (1.4.2.1) 字段类型定义和字段类型属性. (1.4.2.2) solr附带的字段类型 (1.4.2.3) 使用货币和汇率 (1.4.2.4) 使用Dates(日期 ...

  5. [Java] Web开发HTTP状态码整理

    HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码.它由 RFC 2616 规范定义的,并得到RFC 2518.RFC 2817.RFC 2295.R ...

  6. Gradle实战:不同编译类型的包同设备共存

    查看原文:http://blog.csdn.net/u010818425/article/details/52335844 Gradle实战系列文章: <Gradle基本知识点与常用配置> ...

  7. 关于onClick 提交数据问题

    我在添加 民工考勤表,用ajax 自动读取数据添加到相应模块之后 进行 OnClick="btnSubmit_Click" 保存,结果无法保存,之后我将光标锁定到某一个文本框内,就 ...

  8. ant 命令学习详解

    ant -verbose  //输出  ant编译时的详情

  9. 六、Android学习笔记_JNI_c调用java代码

    1.编写native方法(java2c)和非native方法(c2java): package com.example.provider; public class CallbackJava { // ...

  10. C#常用的字符串操作, 包括截取

    1.取字符串的前i个字符 (1)string str1=str.Substring(0,i); (2)string str1=str.Remove(i,str.Length-i); 2.去掉字符串的前 ...