苹果签名

iphoneqm
首页 > 苹果签名 > 正文内容

[iOS逆向]2、HASH&AED、DES&双向验证

admin2周前 (12-10)苹果签名6

  把任意长度的输入通过散列算法变成固定长度的输出,该输出就是散列值

[iOS逆向]2、HASH&AED、DES&双向验证

  1.1、相关命令

  1、32个字符的MD5散列字符串

  2、40个字符的SHA1散列字符串

  3、64个字符的SHA256散列字符串

  4、128个字符的SHA 512散列字符串

  5、32个字符的HMAC MD5散列字符串

  6、40个字符的HMAC SHA1散列字符串

  7、64个字符的HMAC SHA256散列字符串

  8、128个字符的HMAC SHA512散列字符串

  9、32个字符的MD5散列字符串

  散列运算消息认证码;运算使用散列算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出

  如下:

  1、用户登录,使用md5(pwd+salt)加密获得一个字符串,也叫pwd_md5。

  2、客户端有了pwd_md5,如果每次都以这个字符串上传,黑客就不需要你的pwd,直接截取到这个字符串,然后就能模拟你的登录。

  3、客户端需要在pwd_md5的基础上,在加入一个随机的字符串的md5,这个随机字符串得是服务器返回 , 有效时间为2分钟 。校验规则md5(pwd_md5+随机串) , 然后md5(pwd_md5+随机串)+账号 上传给服务器。

  4、服务器拿到了客户端的账号和md5(pwd_md5+随机串)后,从数据库取出此账号注册时的pwd_md5,也用同样的规则 md5(数据库的pwd_md5+随机串)生成一个字符串, 如果是时间戳的话,校验当前分钟和前一分钟 , 最后本地生成的字符串和客户端上传的字符串进行校验,如果匹配成功,则登陆成功。

  HMAC加密

  3.1、常见的加密方式

  1、DES

  DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半。使用子密钥对其中一半应用循环功能,然后将输出与另一半进行“异或”运算;接着交换这两半,这一过程会继续下去,但最后一个循环不交换。DES 使用 16 个循环,使用异或,置换,代换,移位操作四种基本运算。

  1)、DES(ECB)加密

  DES(ECB)解密

  2)、DES(CBC)加密

  DES(CBC)解密

  2、3DES

  DES 的常见变体是三重 DES,使用 168 位的密钥对资料进行三次加密的一种机制;它通常(但非始终)提供极其强大的安全性。如果三个 56 位的子元素都相同,则三重 DES 向后兼容 DES。

  3、AES

  1)、ECB:电子密码本模式。每一块数据,独立加密。

  加密:

  查看二进制文件:

  解密:

  2)、CBC:密码分组链接模式。使用一个密钥和一个初始化向量对数据执行加密

  明文被加密前要与前面的密文进行异或运算后再加密,因此只要选择不同的初始向量,相同密文加密后会形成不同的密文。

  加密:

  解密:

  4.1、苹果签名认证

  1、Mac电脑的公钥+开发者信息发送给苹果服务器(电脑上的私钥相当于p12证书)

  2、苹果服务器对公钥+开发者信息进行签名颁发证书返回给苹果电脑

  3、Mac电脑通过私钥(p12)对App包进行签名+证书通过Xcode安装到苹果手机

  4、苹果手机的公钥在验证证书

  苹果双向验证

  4.2、苹果权限管理

  1、描述文件

  描述文件一般包括三样东西:证书、AppID、设备。当我们在真机运行或者打包一个项目的时候,证书用来证明我们程序的安全性和合法性

  2、苹果为了解决应用滥用的问题,所有苹果又加了两个限制

  1)、苹果后台注册过的设备才可以安装

  2)、签名只能针对某一个具体的App

  苹果还控制App里面的iCloud/PUSH/后台运行/调试器附加这些权限,所以苹果把这些权限开关统一称为Entitlements(授权文件).并将这个文件放在叫做Provisioning Profile(描述文件)文件中

  描述文件是在AppleDevelop网站创建的(在Xcode中填上AppleID它会代办创建),Xcode运行时会打包进入APP内.所以我们使用CSR申请证书时,我们还要申请一个东西!! 就是描述文件!

  在开发时,编译完一个 APP 后,用本地的私钥M对这个APP进行签名,同时把从苹果服务器得到的 Provisioning Profile 文件打包进APP里,文件名为embedded.mobileprovision,把 APP 安装到手机上.最后系统进行验证。

  双向验证+权限管理

扫描二维码推送至手机访问。

版权声明:本文由MDM苹果签名,IPA签名,苹果企业签名,苹果超级签,ios企业签名,iphoneqm.com发布,如需转载请注明出处。

转载请注明出处https://iphoneqm.com/iphoneqm/454.html

分享给朋友:

相关文章

app苹果超级签名

app苹果超级签名

  作为一名网站博主,我很高兴与你分享关于App苹果超级签名的原理和详细介绍。在开始之前,我先来解释一下什么是超级签名。   超级签名是一种为iOS设备上的应用程序提供签名的方法,允许用户在不通...

腾讯电竞亮相TGC:亚运会电竞表演赛中国团队奖牌签名服线下首展

腾讯电竞亮相TGC:亚运会电竞表演赛中国团队奖牌签名服线下首展

  2019年 1月,万众瞩目的腾讯TGC数字文创即将于在蓉城成都盛大举办。届时,海量IP和创意展台将与玩家们相约成都环球中心,打破次元的壁垒,造就全城狂欢的数字文化盛典。   经过二十年的探索...

apktool签名失败如何处理?

apktool签名失败如何处理?

  APKTool是一款用于反编译和重新编译Android APK文件的工具。在进行反编译和重新编译过程中,可能会遇到签名失败的情况。签名是APK文件的一个重要组成部分,用于验证APK文件的来源和完整...

ios苹果企业签名过期一般原因是什么?

ios苹果企业签名过期一般原因是什么?

  iOS苹果企业签名的过期一般是由以下几个原因造成的。   首先,苹果为了保护iOS生态系统的安全和稳定,设置了签名证书的有效期限。苹果企业签名一般有两种,一种是开发者签名,用于个人或公司发布...

苹果免签怎么实现?

苹果免签怎么实现?

  免签主要指的是在无需经过苹果公司(Apple)审核或者获得苹果的情况下,直接将iOS应用分发给用户的过程。苹果免签的方法一般会利用漏洞或者其他非官方手段来实现。以下是苹果免签的一些实现方式和原理介...

苹果企业签名到底比超级签名好在哪里播报文章

苹果企业签名到底比超级签名好在哪里播报文章

  苹果企业签名是使用苹果企业开发者账号进行签名的,超级签名是使用个人开发者账号进行签名的,苹果企业开发者账号是不需要上架App Store的,但是个人开发者账号是需要上架App Store的。苹果企...

现在,非常期待与您的又一次邂逅

我们努力让每一次邂逅总能超越期待