登入/建立新帳號
導航
主頁
討論區
新手入門
中文輸入
解鎖疑難
好用軟體
勁爆遊戲
程式開發
周邊產品
維修
熱心捐款
原始碼
頁面
討論
原始碼
歷史
原始碼
出自iPhone.org.hk
Decryptipsw.sh
的原始碼
跳轉到:
導航
,
搜尋
根據以下的原因,您並無權限去做以下的動作:
您剛才的請求只有user使用者組的使用者才能使用。
你可以檢視並複製本頁面的原始碼。
<code> <pre> #!/bin/sh #v0.3 if [ $# -lt 1 ] then echo "usage : $0 iPhone1,1_2.0_5A274d_Restore.ipsw" exit 0 else IPSWNAMES=$@ fi DDONE=0 for IPSWNAME in $IPSWNAMES do if [ -f "$IPSWNAME" ] then PWD=`pwd` rm -f Restore.plist unzip -o $IPSWNAME Restore.plist > /dev/null 2>/dev/null if [ -f Restore.plist ]; then DEVICECLASS=`defaults read $PWD/Restore DeviceClass` PRODUCTVERSION=`defaults read $PWD/Restore ProductVersion` BUILDVERSION=`defaults read $PWD/Restore ProductBuildVersion` RESTORERAMDISK=`defaults read $PWD/Restore RestoreRamDisks | awk '/User/ { split($0, line, "\""); printf("%s\n", line[2]); }'` SYSTEMRESTOREIMAGE=`defaults read $PWD/Restore SystemRestoreImages | awk '/User/ { split($0, line, "\""); printf("%s\n", line[2]); }'` unzip -o $IPSWNAME $RESTORERAMDISK > /dev/null 2>/dev/null FILEFORMAT=`hexdump -n4 -e '"%c%c%c%c\n"' $RESTORERAMDISK` if [ "$FILEFORMAT" == "8900" ] then DECRYPTKEY=`strings $RESTORERAMDISK | egrep "^[0-9a-fA-F]{72}\$"` if [ "$DECRYPTKEY" == "" ]; then RAMDISKLENGTH=`hexdump -s12 -n4 -e '"%d\n"' $RESTORERAMDISK` RAMDISKCOUNT=`echo $RAMDISKLENGTH / 512 | bc` dd if=$RESTORERAMDISK of=$DEVICECLASS$PRODUCTVERSION$BUILDVERSION.stripped.dmg bs=512 skip=4 count=$RAMDISKCOUNT conv=sync > /dev/null 2>/dev/null openssl enc -d -in $DEVICECLASS$PRODUCTVERSION$BUILDVERSION.stripped.dmg -out $DEVICECLASS$PRODUCTVERSION$BUILDVERSION.ramdisk.dmg -aes-128-cbc -K 188458A6D15034DFE386F23B61D43774 -iv 0 > /dev/null 2>/dev/null rm -f $DEVICECLASS$PRODUCTVERSION$BUILDVERSION.stripped.dmg else dd if=$RESTORERAMDISK of=$DEVICECLASS$PRODUCTVERSION$BUILDVERSION.ramdisk.dmg bs=512 skip=4 conv=sync > /dev/null 2>/dev/null fi else RAMDISKLENGTH=`hexdump -s12 -n4 -e '"%d\n"' $RESTORERAMDISK` RAMDISKCOUNT=`echo $RAMDISKLENGTH / 32 | bc` dd if=$RESTORERAMDISK of=$DEVICECLASS$PRODUCTVERSION$BUILDVERSION.ramdisk.dmg bs=32 skip=1 count=$RAMDISKCOUNT conv=sync > /dev/null 2>/dev/null fi rm -f $RESTORERAMDISK DECRYPTKEY=`strings $DEVICECLASS$PRODUCTVERSION$BUILDVERSION.ramdisk.dmg | egrep "^[0-9a-fA-F]{72}\$"` if [ "$DECRYPTKEY" == "" ]; then echo "Decrypt failed : $IPSWNAME" else unzip -o $IPSWNAME $SYSTEMRESTOREIMAGE > /dev/null 2>/dev/null ./vfdecrypt -i $SYSTEMRESTOREIMAGE -o $DEVICECLASS$PRODUCTVERSION$BUILDVERSION.decrypted.dmg -k $DECRYPTKEY > /dev/null 2>/dev/null rm -f $SYSTEMRESTOREIMAGE echo md5 $IPSWNAME echo "RAMDISK = $DEVICECLASS$PRODUCTVERSION$BUILDVERSION.ramdisk.dmg" echo "FILESYSTEM = $DEVICECLASS$PRODUCTVERSION$BUILDVERSION.decrypted.dmg" echo "DECRYPTKEY = $DECRYPTKEY" DDONE=1 fi else echo "Invalid ipsw file $IPSWNAME" fi else echo "$IPSWNAME NOT FOUND" fi done if [ "$DDONE" == "1" ]; then echo "Job Completed!!!" fi </pre> </code>
返回到
Decryptipsw.sh
。