iOS超级签名流程及代码(php版本)

本文介绍了如何使用PHP进行iOS超级签名的过程。首先通过代码获取设备的UDID,然后利用证书对UDID对应的IPA进行签名,提到了sign和zsign两个开源签名工具的使用。签名完成后,文件即可供下载安装。作者提供了源码和交流方式。
摘要由CSDN通过智能技术生成

1,首先要获取用户唯一识别码udid,代码如下:
//获取UDID
public function get_udid()
{
$data = file_get_contents(‘php://input’);

    //file_put_contents('./udid.txt', $data);
    $plistBegin = '<?xml version="1.0"';
    $plistEnd = '</plist>';
    $pos1 = strpos($data, $plistBegin);
    $pos2 = strpos($data, $plistEnd);
    $data2 = substr($data, $pos1, $pos2 - $pos1);
    $xml = xml_parser_create();
    xml_parse_into_struct($xml, $data2, $vs);
    xml_parser_free($xml);
    $UDID = "";
    $CHALLENGE = "";
    $DEVICE_NAME = "";
    $DEVICE_PRODUCT = "";
    $DEVICE_VERSION = "";
    $iterator = 0;
    $arrayCleaned = array();
    foreach ($vs as $v) {
        if ($v['level'] == 3 && $v['type'] == 'complete') {
            $arrayCleaned[] = $v;
        }
        $iterator++;
    }
    $data = "";
    $iterator = 0;
    foreach ($arrayCleaned as $elem) {
        $data .= "\n==" . $elem['tag'] . " -> " . $elem['value'] . "<br/>";
        switch ($elem['value']) {
            case "CHALLENGE":
                $CHALLENGE = $arrayCleaned[$iterator + 1]['value'];
                break;
            case "DEVICE_NAME":
                $DEVICE_NAME = $arrayCleaned[$iterator + 1]['value'];
                break;
            case "PRODUCT":
                $DEVICE_PRODUCT = $arrayCleaned[$iterator + 1]['value'];
                break;
            case "UDID":
                $UDID = $arrayCleaned[$iterator + 1]['value'];
                break;
            case "VERSION":
                $DEVICE_VERSION = $arrayCleaned[$iterator + 1]['value'];
                break;
        }
        $iterator++;
    }

    $app_id = intval(input('param.app_id'));

    $this->redirect(get_site_url() . "/user/install/udid_redirect?udid=" . $UDID . '&app_id=' . $app_id, 301);

}
注意:一定要做301中转

2,拿到udid后就可以把这个udid进行签名:
echo ‘export PATH= P A T H : / u s r / l o c a l / s b i n : / u s r / l o c a l / b i n : / u s r / s b i n : / u s r / b i n : / r o o t / b i n ; i s i g n − c ′ . PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin;isign -c '. PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin;isign

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值