UltraSn0w vs PurpleSn0w
Δημοσίευση 16/07/2009 - 17:49
Η νέα version του UltraSn0w (0.9) υιοθετεί τα θετικά στοιχεία από την πρόταση του GeoHot (απουσία daemon, 7000x μικρότερο μέγεθος κ.α) και πλέον αποτελεί την προτεινόμενη λύση για το unlock του iPhone 3GS αλλά και του iPhone 3G καθώς λειτουργεί και σε hacktivated συσκευές.
Ultrasn0w version 0.9 is out! We believe it solves pretty much all of the various random issues that have been reported. Its features include:
Works on both 3G and 3GS
Works on hacktivated devices
Works regardless of how you jailbroke your device
Doesn’t patch any mach-o binary whatsoever. (Doesn’t require a separate patch as each new firmware comes out).
Doesn’t install any additional daemon
Has no race conditions, no popups about “Missing SIM”, no network issues
Is almost 7000 times smaller than its nearest competition
Is available now via Cydia. Source repo is http://repo666.ultrasn0w.com (that last “0” in ultrasn0w is a zero!)
Στη συνέχεια, η devTeam αποφάσισε να απαντήσει στις προκλήσεις του GeoHot περί "καλύτερου και πιό καθαρού unlock" με ένα μακροσκελή αναλυτικό δημοσίευμα το οποίο μπορείτε να διαβάσετε παρακάτω:
The day before yesterday, some fellow named geohot released a program called “purplesn0w” which claims to be a better unlock than our ultrasn0w unlock released last month, and our yellowsn0w unlock released 7 months ago. He was kind enough to provide source, which we naturally took apart to try to validate his claims.
We’ve found he had come up with two pretty neat ideas, one more pragmatic than the other for the iPhone.
1. The first is a way of patching the actual text of the baseband code by copying it over to RAM and then using the MMU and page tables to have the baseband pretend it is part of the original bootrom. Of course, like yellowsn0w and ultrasn0w, this code has to be reloaded with every reboot of the baseband. However, the advantage of this is that developing unlocking payloads is a lot simpler… in fact, geohot used the same payload in AnySim and BootNeuter.
We kicked around this idea ourselves before, but eventually found a work-around for the same problem with the yellowsn0w/ultrasn0w payload. The two pieces of code have the exact same effect on the baseband… with the difference that geohot’s exploit overwrites an arbitrary block of memory one megabyte in size. The baseband has a total of eight megabytes of memory and every bit of it is earmarked for use (except for 485212 bytes of it which we haven’t accounted for yet, but that’s still less than 1 MB). This means that eventually the area of memory geohot is using will be corrupted and 1 MB of baseband code will be corrupted (until the next reboot). How soon will this happen? Will it even matter in day-to-day use? We don’t know, because we haven’t spent much time looking. However, why take the risk when the yellowsn0w/ultrasn0w payload accomplishes the same job with no corruption?
To put it into perspective, ultrasn0w uses 152 bytes of properly malloc’d baseband RAM, which is 0.015% of what purplesn0w uses. Put another way, purplesn0w uses 6900 times more RAM than ultrasn0w (and doesn’t let the O/S know that it’s using it, so the O/S still thinks it’s free to use. When it does use it, the baseband will crash).
2. Now, the second new idea he had was to patch CommCenter rather than use a daemon. At first, this idea seemed pretty distasteful to us. Binary patches are messy and difficult to maintain (we figure it’s partly why he only made a version for 3G S and not 3G as well). In addition, the stated reason of reduced battery life with a daemon is factually incorrect, since any computer science student who’s taken a course in operating systems will tell you that a sleeping task takes up exactly NO CPU resources and NO power (it’s merely skipped over during context switches). That’s right: not “only a little” power, but absolutely NO power. However, ultrasn0w 0.6 did have a problem where the STK refresh command it used crashed the baseband in 3G S. This caused the baseband to continually come up and then restart. That DOES take power and so may explain the issues that people have been seeing. ultrasn0w 0.8 was supposed to have fixed this issue, but perhaps not completely. This is because the STK refreshes we used are inherently unreliable… but we thought they were necessary to avoid people having to reinsert their SIM. Turns out we were wrong on that score. geohot’s method shows that we can perform the unlock before CommCenter polls for lock state. When we do it before (instead of after), the STK refreshs are no longer necessary! The only way to do it before the polling, however, is to modify CommCenter.
We’ve tried to make the best of a bad situation by using MobileSubstrate to perform the modification. This lets us modify the behavior of CommCenter without touching the actual binary. We also used a method to dynamically locate the patch location so that it should work on both 3G and 3G S (and should need to be updated less frequently). We also do it in a different way so that hactivated phones will work with the unlock (unlike purplesn0w). You’ll find that this update is now available through Cydia as ultrasn0w 0.9 We thank geohot for contributing to the scene once again. We don’t think purplesn0w is the right path, but it has certainly helped us improve ultrasn0w!
P.S. geohot, seriously, stop dicking around and look at the bootrom instead kthx. =P
Σημείωση: Το παρόν δημοσίευμα αναφέρεται σε iPhone 3GS τα οποία έχουν αγοραστεί από το εξωτερικό και είναι κλειδωμένα στον εκάστοτε πάροχο κινητής τηλεφωνίας. Όταν κυκλοφορήσει το iPhone 3GS στην Ελλάδα, στις 31 Ιουλίου (Vodafone - Cosmote) θα πωλείται ξεκλείδωτο, όπως ακριβώς και το iPhone 3G.
Δημοσίευση 16/07/2009 - 18:55
Δημοσίευση 16/07/2009 - 18:57
Δημοσίευση 16/07/2009 - 21:42
Αν κ' είναι προτιμότερο να υπάρχει συνεργασία....
Respect στην DevTeam χωρίς την οποία θα έπρεπε να "παίζουμε" με τις "σάντουιτς" κάρτες (rebelsim universalsim xxxsim....)
Δημοσίευση 17/07/2009 - 11:17
Δημοσίευση 20/07/2009 - 09:52
It looks like version 0.9 of ultrasn0w fixed up the vast majority of any problems people were seeing with the 3G/3GS carrier unlock. But here’s a brief list of fixes for anyone still seeing problems:
* Unusual battery depletion is almost always caused by people choosing to “Restore from backup” instead of “Setup as new iPhone” when iTunes asks you. This isn’t caused by either the jailbreak or the unlock, but it’s a common 3.0 snafu. The fix is to just re-run the official 3.0 restore and choose “Setup as new” this time. Your music and apps and all that will still be synced, but you’ll get rid of any conflicting wifi, bluetooth, or carrier settings. Then just re-run redsn0w and install ultrasn0w.
* Remember, ultrasn0w works with hacktivated phones too, but don’t outsmart redsn0w into thinking you don’t need hacktivation! If you don’t plan on using an official sim, don’t activate via iTunes with such a sim. Just keep your unofficial sim at all times and let redsn0w and ultrasn0w handle hacktivation :-)
* T-Mobile in the USA doesn’t use the 3G frequencies that the iPhones support, so turn off 3G in Settings->General->Network. (Some T-Mobile territories gracefully hand down to Edge mode, but most do not).
* Certain unofficial plans have limitations on whether you can make calls and use data at the same time. That’s not unlock-related.
* Some people have installed previous versions of ultrasn0w using non-standard techniques. While the ultrasn0w 0.9 update should have removed all previous versions of ultrasn0w, these users may have outsmarted our removal. So make sure you don’t still see /usr/bin/ultrasn0w present if you’re at ultrasn0w 0.9 (which doesn’t have such a binary anymore).
* If you don’t need or plan to update to ultrasn0w 0.9 from a previous version, you can avoid having that red badge over Cydia by removing repo666 as a Cydia source. Don’t worry, you can always add it back later :-) If you follow us on twitter you’ll be advised of any new updates anyway.
Χρήστες που διαβάζουν αυτό το θέμα: 0
0 μέλη, 0 επισκέπτες, 0 ανώνυμοι χρήστες