This morning KaKaRoTo announced on his twitter that he has jailbroken OFW 3.73. There is not much information available yet about this jailbreak but he already stated that this is no CFW and doesn’t allow backup managers to run. But it should allow you to run your favorite homebrew and still play the latest games. For people who are not aware who KaKaRoTo is, he is the person that released the first CFW ever for Playstation 3 and always released his methods and software.
And it looks like everyone is in luck because KaKaRoTo is planning to release his work and method (as always). But we all have to wait for a while because according to KaKaRoTo it won’t be out in the next two weeks and there is still some work left to do.
UPDATE 1:[07:28:39] <KaKaRoTo> heri, docpaul showtime would work fine
[07:28:58] <sandungas> kakaroTo, this means new tcl patches for mfw and some changes to manage 3.73 ?
[07:29:17] <KaKaRoTo> ddoo, and no I didn’t fix the npdrm algo, that’s what I’m missing (hence the “kind of”) but I’m not
working on that, that’s someone else’s job
[07:30:05] <middleman> gonna debut it at ccc kakaroto or before?
[07:30:06] <KaKaRoTo> ddoo, and even if npdrm signing worked.. how do you install your pkg on an OFW 3.73 ?
[07:30:22] <heri> so KaKaRoTo, once the NPDRM algo is fixed, a release will come?
[07:31:14] <KaKaRoTo> heri, another missing bit, but once that’s fixed, yes
[07:31:23] <KaKaRoTo> but I’ll probably be off country for the next 2 weeks
[07:31:30] <KaKaRoTo> so all work will have to be paused
[07:31:52] <heri> oh, fair enough. we can all wait 2 weeks hey :P we have waited months anyways
[07:32:06] <KaKaRoTo> ddoo, that might work.. you could also just install your pkg on 3.55 then upgrade…
[07:32:20] <KaKaRoTo> ddoo, upgrading doesn’t delete any of your packages
[07:32:37] <KaKaRoTo> ddoo, issue is, you’re lost if you didn’t do it before upgrading
[07:32:53] <ddoo> but they fail because the npdrm algo is spoted by the checks in 3.56+
[07:33:13] <KaKaRoTo> heri, also note, I “announced” it because I was excited to see it work as expected
[07:33:22] <KaKaRoTo> doesn’t mean it’s ready for release
[07:33:31] <KaKaRoTo> ddoo, exactly
[07:33:36] <heri> yeh thats what we were saying just before you came
[07:33:43] <KaKaRoTo> so you need : 1 – npdrm algo fixed, 2 – a way to install stuff
[07:33:53] <heri> you only announce when you are confident it works
[07:33:58] <KaKaRoTo> 1 has been done by someone else (don’t know if he’ll share it), and 2.. well, I just did it
[07:34:37] <KaKaRoTo> heri, well, I was testing on 3.60 and it worked, but yes, I did upgrade to 3.73 to test that it still
works just to make sure I don’t tweet any false hopes
[07:34:46] <middleman> but you cant run what you installed until 1 is fixed correct?
[07:34:59] <KaKaRoTo> middleman, exactly
[07:36:17] <middleman> interesting
[07:36:19] <docpaul> nice, thx KaKaRoTo
[07:36:40] * KaKaRoTo needs to hide now if he wants to get any work done
[07:36:42] <KaKaRoTo> ttyl
It seems as tho developer kakaroto has been flooded with questions regarding his 3.73 jailbreak that he announced late last night.
UPDATE 2:Hi all,
I’ve been flooded with questions on twitter and I’ve read many posts on news sites and I’ve seen some stuff being said on IRC and I thought I needed to clarify a few things…
First of all, I didn’t expect to see my tweet front paged on all ps3 hacking news sites.. although I should have expected it.. but anyways, the “jailbreak” is not ready to be used, at all. I only tweeted that because I was excited having it working and I wanted to share my excitement with everyone. But this is a bit equivalent to the day I released that create_cfw.sh script that created the very first CFW/MFW but it still took a couple of months before a real, easy, multiplatform and fully fledged solution was released : PS3MFW.
We are currently at the same state, I have the proof of concept, it works, but a solution that anyone can use where they just click a button and their PS3 gets jailbroken is still far from ready.
I’ve seen people say (and even write it in their front page news) that I’ll release it in two weeks after I come back from vacation. That is not true and I never said that. What I said was that for the next 2 weeks, the project is on hold until I get back.. but when I get back, then I will continue working on it, and it will then take some more time before it’s ready and released.
Some asked if it’s based on what gitbrew was doing/suggesting or if I used someone else’s exploit or work. No, this solution is my own idea and 100% my own implementation. However, the actual solution for the full jailbreak involves some components on which I will not work, and I expect/hope that someone else will provide the solution for that.
Some speculated it might be what I spoke about back in March which I later said I wasn’t pursuing by lack of motivation.. and yes, you are right. The same hack I had in March is still valid today, I told a few people about it (rms, Mathieulh, an0nym0us, and a couple more), but no one was interested in pursuing it further and actually exploiting that flaw (mainly because it requires a huge amount of work to get a proof of concept working). 10 days ago (I started on the 11th), I got bored and decided to start poking at it again, and yesterday (a lot faster than I thought it would take), I got my first pkg installed on 3.73 firmware.
On twitter, I said “do not update if you are on 3.55″, I said that in response to someone who said he would update. Because of that, people speculated that you need to be on 3.55 first, and then install something before doing the upgrade. No, that’s not it, that would be useless. The purpose of my solution is to jailbreak a ps3 that is already on 3.73 firmware and which had never been jailbroken before. I told people not to update because, first of all, it’s not yet ready, and second of all, the 3.55 firmware gives you a lot more possibilities than what can be achieved on 3.73.
So what is this jailbreak? I won’t say because I don’t want Sony to block it in a firmware update (and yes, they potentially could) before it’s even released (and yes, I will release it when it’s ready). But I will explain this to you : in order to run your homebrew apps, you need two things. First, to be able to install them on the ps3, and second to be able to run it once installed. I did only one of these two things.
Some may say it’s not a real jailbreak, but the way I see it, there are three ‘jails’ on the ps3, I broke the first one which prevents you from installing anything, so now you can install your .pkg, great, but it won’t run, that’s the second jail. The third jail is being able to modify the firmware (peek&poke).
The second jail (running apps) is something that can be done, but it’s not my area of expertise (npdrm algo), so I will not be working on that. I am waiting for someone else to achieve it (some have succeeded but do not wish to release it, at least not for now) then I will release.
The third jail (modifying the firmware) is not possible with my method, this means that you will not have a “CFW”, you will run your homebrew applications and games on an official firmware. This also means that without peek&poke support, none of the backup managers will work. So, again, my solution is piracy-free, and as always, I do not plan on working on a way to enable piracy (or even legal backups).
Overall, the purpose will be to allow people who are on 3.73 firmware to enjoy the homebrew games that were released, to play a bit with Eskiss, and to use Showtime for playing their movies. This should be more than enough for everyone.
Finally, I will conclude by replying to another question I received : Do you accept donations? The answer is yes. I do accept donations but I do not seek them out. I will include a donate button to the bottom of this post, so if anyone wishes to donate, they can do so, however, I want to make it clear that whether or not you donate does not and will not affect in any way, the release, or the progress of the work I’m doing. If you donate, you would do it as a sign of appreciation of my efforts, and not in exchange of any favors or anything crazy like that.
That’s about it I think… If you have any more questions, please refrain from asking them, I get enough as it is already.. I also said everything I needed to say and I don’t want to give any more information than that (for now).
A small F.A.Q created by euss.
Q: Will I need special hardware?
Q: Will homebrew work?
A: With NPDRM fixed, yes. Showtime would certainly be possible.
Q: Will recent games play correct
A: Yes, its 3.7x, sure it plays all 1.00 – 3.7x games.
Q: Does it have Peek& Poke?
Q: Do Backup manangers work?
A: No, see previous answer.
Q: Does it gets us keys
Q: Does it gets us “CFW”/MFW?
Q: Will it allow downgrade?
Q: So why are all the newssites hyping this that it does?
A: Because they don’t read wiki’s/blog’s xD Besides, every minor news gets ‘prolly CFW soon!’ tagged by the bad ones.
Q: Is there a release date?
A: No, besides KaKaRoTo not able to work on it for 2 weeks, it also relies on (other people?) fixing NPDRM.
Newest tweet from KaKaRoToKS says that his current WIP jailbreak works with PS3 FW 4.0. There is no current release date, or time frame for the JB release.
KaKaRoTo has just recently updated his blog, with this message:
Update 5:I tested the jailbreak on the latest firmware 4.0 since it was released and I can confirm that it still works. Mathieulh also confirmed that the NPDRM algo that he has still allows applications to run on 4.0, although he still doesn’t want to share that with us/me at the moment.
Mathieulh is still thinking about whether or not to share it, so I’m hopeful he’ll help us move forward with the release.
He has however received so many hate messages and so many flaming that he is completely disgusted with the scene and the way it treated him. He is so disgusted that he does not want to share or help anymore. He thinks that all those haters do not deserve to be given something that they are so ungrateful for, and I perfectly understand his position. Receiving all that hate towards me a while back also made me depressed to the point I stopped looking at the PS3 entirely.
Next time you want to insult a dev, thinking it’s “fun” or that he deserved it, think about it some more, you are poisoning the scene without even realizing it. We are all doing this for fun, the only reward we get is people’s gratitude, and all you do is hate and disrespect us, so why continue to do what we do?
For those who hate and insult : Mathieulh may not be acting the way you want him to, you may think he’s a jerk or hate him for teasing without releasing, but the simple fact remains that he has done more to the scene that you did, so you should just shut up and show him respect. When you have your little ‘hate fun’, you are actually contributing to the scene, but in the wrong way, you are killing it by killing the developer’s motivation.
For now, Mathieulh doesn’t want to share his work with me, and I’m not mad or disappointed at all at him, I am mad and disgusted at those who made him make that decision. So please, if you are just as mad as I am, do NOT make this an opportunity to hate even more on Mathieulh for not sharing, make this an opportunity to show gratitude where it’s due and educate those who are ungrateful on what their role is/was in this scene.
PS3 Developer KaKaRoTo has given a status update regarding his work on getting homebrew running on 3.56 PS3′s, there are quite a few revelations, none of which are a shock, so here is a quote from KaKaRoTo’s blog
Here’s a “quick” status update on the 4.00 HEN (Homebrew ENabler) for PS3.
Following my clarifications from almost 2 months ago here, there has been a lot of progress. We have not been slacking off, we’re a group of about 10 developers working together for the last 2 months, for sometimes 15 hours everyday in order to bring back homebrew support to the latest version of the PS3.
There are three major parts to the HEN, first, getting the packages to install on the PS3, that part is done, completed, tested, debugged, etc.. the second part is to get the apps to run, that one still has major issues… the last part is something I will not discuss for now (it’s a surprise) but it’s about 60% to 70% done (and it has nothing to do with peek&poke and has nothing to do with backup managers or anything like that. This is and will stay a piracy-free solution for the PS3).
Now, running apps is the biggest challenge that we’ve been working on for the past 2 months. As some of you know, if you’ve been following me on Twitter, we originally had hoped for Mathieulh to give us the “npdrm hash algorithm” that was necessary to run the apps, but he was reluctant, he kept doing his usual whore so people would kiss his feet (or something else) so he’d feel good about himself. But in the end, he said that he refuses to give us the needed “npdrm hash algorithm” to make it work… So what I initially thought would be “this will be released next week” ended up taking a lot more time than expected, and we’re still nowhere near ready to make it work.
Mathieulh kept tossing his usual “riddles” which he thinks are “very helpful for those who have a brain”, and which pisses off anyone who actually does… so he told us that the solution to all our problems was to look in appldr of the 3.56 firmware.. and that it was something lv1 was sending appldr which made the “hash check” verified or not… so we spent one month and a lot of sweat and after killing a few of our brain cells out of exhaustion, we finally concluded that it was all bullshit. After one month of reading assembly code and checking and double-checking our results, we finally were able to confirm that that hash algorithm was NOT in the 3.56 firmware like he told us (at all).
He said that it was an AES OMAC hash, but after tracking all the uses of the OMAC functions in appldr, we found that it was not used for the “hash”… he then said “oh, I meant HMAC“, so we do that again and again come up with the same conclusion, then we’re sure it’s not in appldr, and then he says “ah no, it’s in lv1“.. have a look for yourself to what he decided to write :
That happened after the huge twitter fight I had with him for being his usual arrogant ass and claiming that he “shared” something (For your information, the code that he shared was not his own, I have proof of that too (can’t show you the proof because even if I don’t respect him, I gave him my word to not share what he gave me, and I respect my word) since he forgot to remove the name of the original developer from one of the files… also it was completely useless and was not used at all, just made me waste a day reading the crappy undocumented code. So why is he still trying to force his “advice” through these riddles even after we had that fight? Well to sabotage us and make us lose all those months of hard work!
So anyways, we had all accepted that Mathieulh was full of shit (we knew before, but we gave him the benefit of the doubt) and decided to continue working without considering any of his useless riddles. So we then tried to exploit/decrypt the 3.60+ firmware in order to get the algorithm from there.
Now, a few more weeks later, we finally have succeeded in fully understanding that missing piece from the “npdrm hash algorithm”, and here it is for everyone’s pleasure with some prerequisite explanation :
A game on the PS3 is an executable file in a format called a “SELF“file (kind of like .exe on windows), those “self” files are cryptographically signed and encrypted.. For PSN games (games that do not run from a bluray disc), they need to have an additional security layer called “NPDRM”. So a “npdrm self” is basically an executable that is encrypted and signed, then re-encrypetd again with some additional information. On 3.55 and lower, we were able to encrypt and sign our own self files so they would look like original (made by sony) “npdrm self” files, and the PS3 would run them without problem. However, it wasn’t really like an original file.. a real NPDRM self file had some additional information that the PS3 simply ignored, it did not check for that information, so we could put anything in it, and it worked. Since the 3.60 version, the PS3 now also validates this additional information, so it can now differentiate between NPDRM self files created by sony and the ones that we create ourselves for homebrew. That’s the “npdrm hash algorithm” that we have been trying to figure out, because once we can duplicate that information in the proper manner, then the PS3 will again think that those files are authentic and will let us play them.
Another important point to explain, I said a few times that the files are “signed”.. this means that there is an “ECDSA signature” in the file which the PS3 can verify. The ECDSA signature is something that allows the PS3 to verify if the file has been modified or not.. it is easy to validate the signature, but impossible to create one without having access to the “private keys” (think of it like a real signature, you can see your dad’s signature and recognize it, but you can’t sign it exactly like him, and you can recognize if your brother tried to forge his signature). So how were we able to sign the self files that were properly authenticated on 3.55? That’s because this “ECDSA signature” is just a very complicated mathematical equation (my head still hurts trying to fully understand it, but I might blog about it in the future and try to explain it in simple terms if people are interested you can learn about it here), and one very important part of this mathematical equation is that you need to use a random number to generate the signature, but Sony had failed and used the same number every time.. by doing that, it was easy to just find the private key (which allows us to forge perfectly the signature) by doing some mathematical equation on it. So to summarize, a “signed file” is a file which is digitally signed with an “ECDSA signature” that cannot be forged, unless you have the “private key” for it, which is impossible to obtain usually, but we were able to obtain it because Sony failed in implementing it properly.
Now, back on topic.. so what is this missing “npdrm hash algorithm” that we need? well it turns out that the “npdrm self” has a second signature, so it’s a “encrypted and signed self file” with an additional layer of security (the NPDRM layer) which re-encrypts it and re-signs it again. That second signature was not verified in 3.55 and is now verified since the 3.60 version of the PS3 firmware.
One important thing to note is that Sony did NOT make the same mistake with this signature, they always used a random number, so it it technically impossible to figure out the private key for it. To be more exact, this is the exact same case as the .pkg packages you install on the PS3, you need to patch the firmware (making it cfw) so that those .pkg files can be installed, and that’s because the .pkg files are signed with an ECDSA signature for which no one was able to get the private key. That’s why we call them “pseudo-retail packages” or “unsigned packages”.
The signature on the NPDRM self file uses the exact same ECDSA curve and the same key as the one used in PS3 .pkg files, so no one has (or could have) the private key for it. What this means is that, even though we finally figured out the missing piece and we now know how the NPDRM self is built, we simply cannot duplicate it.
The reason we wasted 2 months on this is because Mathieulh lied by saying that he can do it.. remember when the 4.0 was out and I said “I can confirm that my method still works” then he also confirmed that his “npdrm hash algorithm” still works too? well he didn’t do anything to confirm, he just lied about it because there is no way that he could have verified it because he doesn’t have the private key.
I said I will provide proof of the lies that Mathieulh gave us, so here they are : he said it’s in 3.56, that was a lie, he said it’s an AES OMAC, that was a lie, he said it’s an HMAC, that was a lie, he said it’s in appldr, that was a lie, he said it’s in lv1, that was a lie, he said that he can do it, that was a lie, he said that “it takes one hour to figure it out if you have a brain”, that was a lie, he said that he verified it to work on 4.0, that was a lie, he said that he had the algorithm/keys, that was a lie, he said that once we know the algorithm used, we can reproduce it, that was a lie, he kept referring to it as “the hash”, that was wrong. The proof ? It’s an ECDSA signature, it’s not a hash (two very different terms for different things), it was verified by vsh.self, it was not in lv2, or lv1, or appldr, and the private key is unaccessible, so there is no way he could build his own npdrm self files. Now you know the real reason why he refused to “share” what he had.. it’s because he didn’t have it…
So why do all this? was it because his arrogance didn’t allow him to admit not knowing something? or was it because he wanted to make us lose all this time? To me, it looks like pure sabotage, it was misleading information to steer us away from the real part of the code that holds the solution…. That is of course, if we are kind enough to assume that he knew what/where it was in the first place. In the end, he wasn’t smart enough to only lie about things that we could not verify.. now we know (we always knew, but now we have proof to back it) that he’s a liar, and I do not think that anyone will believe his lies anymore.
Enough talking about liars and drama queens, back to the 4.0 HEN solution… so what next? well, we now know that we can’t sign the file, so we can’t run our apps on 3.60+ (it can work on 3.56 though). What we will do is look for a different way, a completely new exploit that would allow the files we install to actual run on the PS3. We will also be looking for possible “signature collisions” and for that we will need the help of the community, hopefully there is a collision (same random number used twice) which will allow us to calculate the private key, and if that happens, then we can move forward with a release.
When will the “jailbreak” be released? If I knew, I’d tell you, but I don’t know.. I would have said in last november, then december, then before christmas, then before new year, etc… but as you can see, it’s impossible to predict what we will find.. we might get lucky and have it ready in a couple of days, or we may not and it will not be ready for another couple of months.. so all you need to do is : BE PATIENT (and please stop asking me about an estimated release date)!
I would like to thank the team who helped on this task for all this time and who never got discouraged, and I’d like to thank an anonymous contributor who recently joined us and who was instrumental in figuring it all out. We all believe that freedom starts with knowledge, and that knowledge should be open and available to all, that is why we are sharing this information with the world. We got the confirmation (by finding the public key used and verifying the signatures) yesterday and since sharing this information will not help Sony in any way to block our efforts in a future release, we have decided to share it with you. We believe in transparency, we believe in openness, we believe in a free world, and we want you to be part of it.
If you want to know more about this ECDSA signature algorithm, I tried to explain it in a blog post here, also, you can read this interesting paper that explains it in detail, and you can also watch Team Fail0verflow’s CCC presentation that first explained Sony’s mistake in their implementation, which made custom firmwares possible.
Thanks for reading,