Sky Watch

IPhone Jailbreak

正在 Dev-team 忙着整 3.1 jailbreak 的时候,惊闻某大牛已经搞出了 3.1 和 3.1.2 都能用的 jailbreak,Blackra1n。遂装,成功。然后第一件事就是装了个 MobileTerminal 和 OpenSSH,呵呵。不过 jailbreak 了以后还是不能运行自己写的代码,有两个问题:

  1. Xcode 只能编译在 simulator 运行的代码,编译 iPhone 上运行的代码还需要 sign。
  2. IPhone 还是需要检查 SHA1 hash。

第一个问题很好解决,编辑文件 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.sdk/SDKSettings.plist,把 CODE_SIGNING_REQUIRED 下面的 YES 改成 NO,然后在 Xcode 里设置项目的 certificate identity 为不需要签名。第二个问题比较麻烦。Cydia 的网站里提到可以在 iPhone 里运行一条命令 sysctl -w security.mac.proc_enforce=0 \ security.mac.vnode_enforce=0 就搞定了。我这里执行以后的确可以运行没有签名的程序了,但是副作用是一旦重启 SpringBoard 就连不上 wifi。不过这个倒是不麻烦,把这两个值都恢复成原来的就行了。其实最好的解决办法是 self-signing。但是我用 codesign 老是出错... 嗯。不废话了,上 pp~~

IPhone Jailbreak