Help - Search - Members - Calendar
Full Version: Disabler & AppleDecrypt - Are They Necessary?
Project OS X Forums > Previous Releases > Mac OS X Leopard 10.5 > Leopard Guides & Tutorials > New Users Discussion
Keds
Hi guys, been lurking around the OS X 86 forums for a while now, but this is my first post.

I've successfully installed 10.5 Retail and updated via software update.
The only Kexts I have added are:
AppleAzaliaAudio
NVInject
NVDANV50Hal
NVDAResman

Some people advise installing Disabler & AppleDecrypt, do I need them or am I fine without them?
(My hardware is in my sig)

Thanks
realityiswhere
QUOTE (Keds @ Jul 18 2009, 11:34 AM) *
Hi guys, been lurking around the OS X 86 forums for a while now, but this is my first post.

I've successfully installed 10.5 Retail and updated via software update.
The only Kexts I have added are:
AppleAzaliaAudio
NVInject
NVDANV50Hal
NVDAResman

Some people advise installing Disabler & AppleDecrypt, do I need them or am I fine without them?
(My hardware is in my sig)

Thanks


AppleAzaliaAudio, how cute and retro of you wink.gif (quite an old kext with only 2channel functionality, you'd be better off with something newer like VoodooHDA which offers 6channel and loads of other features.

To answer your question.. AppleDecrypt is unnecessary if you're using dsmos.kext, but you do need either AppleDecrypt.kext or dsmos.kext unless you're using some sort of patched kernel which decrypts already.. for more info on why/how these work see this thread.

Disabler is only used to stop AppleIntelCPUPowerManagement.kext from loading (which is what causes OS X to panic on PC's during updates), which is also offered by some patched kernels, so the answer to your question can be determined by which kernel you're using (which you haven't told us). So if you're using the retail, vanilla kernel, the situation you described is practically impossible without some sort of patched kexts being installed either in /Extra/Extensions/ or /System/Library/Extensions/, otherwise you're definitely using a patched kernel.
nawcom
QUOTE (Keds @ Jul 18 2009, 03:34 PM) *
Hi guys, been lurking around the OS X 86 forums for a while now, but this is my first post.

I've successfully installed 10.5 Retail and updated via software update.
The only Kexts I have added are:
AppleAzaliaAudio
NVInject
NVDANV50Hal
NVDAResman

Some people advise installing Disabler & AppleDecrypt, do I need them or am I fine without them?
(My hardware is in my sig)

Thanks


Here's my explanation of the purposes of Disabler and AppleDecrypt, if anyone wants to add on or correct me, go ahead.

Disabler.kext

Since first running 10.5 on PCs, we noticed a new kernel extension which would create a little havoc with many PCs - AppleIntelCPUPowerManagement. The basic purpose of this kext to to help managing the CPU state with its voltage and frequencies via the thermal zones that are set up for it. However, the timer which is specifically uses is HPET, a much more optimized and effective timer compared to the RTC and 8254 timers which are commonly preferred as of now in PCs. Though Windows is starting to take advantage of HPET from what I've read recently. HPET also never needs to use the CPU's time stamp counter, which is an advantage of freeing up the CPU a little more.

Anyways, most PCs either don't have this, or do have this but isn't set up to be used in the ACPI's DSDT table. Even when patching up the DSDT so the HPET is correctly setup, it may not work correctly with the AppleIntelCPUPowerManagement kernel extension. So, as a result, we need a way to prevent the fucker from loading. This is where Disabler.kext, or the original kext by dfe, NullCPUPowerManagement.kext comes into play.

The kext is written to match AppleIntelCPUPowerManagement in the IOResources management, so since it is loaded before AppleIntelCPUPowerManagement (and has a high enough IOProbeScore value to override the kext) when the point in time has reached when booting that AppleIntelCPUPowerManagement attempts to load, it sees that it has already been loaded, so there's no reason to load it a second time.

The most common situation that this kext causes issues is when people install system version updates, which contains a new version of AppleIntelCPUPowerManagement. As soon as it is correctly installed, the system attempts to load it. If it is not listed in IOResources, it thinks, "Hey, I'm not loaded yet, so I might as well load right now" (yes in my own little world, kernel extensions talk lol), but as a result people get a kernel panic; a kernel panic before the update is completed as well which sucks.

If you take a look at the old trick of preventing the kp, it is running a looping bash script to make sure the kext is deleted as soon as it's installed. with Disabler.kext, AppleIntelCPUPowerManagement is already loaded in IOResources, so there is no need to it to load when the new version gets installed.

Note that Disabler.kext can also be used to prevent a number of other kexts from loading.

AppleDecrypt.kext

Apple uses an AES encryption scheme with a few of the binaries in their software - Dock, Finder, loginwindow, SystemUIServer, mds, ATSServer, translate and translated for rosetta. Google them if you don't know their purposes. On regular Mac computers these are decrypted via the SMC included in the computer, and is used as a (very weak imo) implementation of making sure that only Apple computers run OS X. I can tell you that many people who use boot-132 CDs find out they forgot to include a copy of dsmos.kext or AppleDecrypt.kext when they attempt to run the OS and when they finally get to the GUI screen, nothing start up. That's because loginwindow is segfaulting.

Basically AppleDecrypt.kext is one of the 3 common kexts used to execute dsmos_page_transform_hook and return the 2 32 byte values that is needed to completely decrypt the binary. What these kexts do is they are a replacement for the vanilla kext that gets installed with system version updates, called "Dont Steal Mac OS X.kext" - its difference is they perform the same purpose but returns the known decryption key itself. Without overriding this, you wouldn't be able to use the OS, or at least the GUI end, as it is only used with a minimal list of binaries.

I could go on and on about explaining this regarding the specifics, but this is pretty easy to understand by reading it yourself. Here's a list of links that should complete the explanation, as many people feel lost in completely understanding how it works. Just know that it's Apple's weak implementation of preventing other computers which they didn't make from running their OS, regardless of whether or not the person has the legal license to use the OS.

Amit Singh - Understanding Apple's Binary Protection in Mac OS X - October 2006
Amit Singh - "TPM DRM" In Mac OS X: A Myth That Won't Die - December 2007
dfe - Darwin/x86: Mac OS X Binary Protection

I hope this helps in understanding what these kexts are that you need, as well as a little bit about how this OS works.

-nawcom
nawcom
Ever responded to a question and then later re-read the question and felt like an ass for giving too much info? That's me right now hehe. I do think the most would be helpful for understanding these 2 kexts and their purpose more in depth, so perhaps a thread by itself is better.
Keds
Thanks a lot guys, that really helps me.

QUOTE (nawcom @ Jul 18 2009, 06:11 PM) *
Ever responded to a question and then later re-read the question and felt like an ass for giving too much info? That's me right now hehe. I do think the most would be helpful for understanding these 2 kexts and their purpose more in depth, so perhaps a thread by itself is better.

That explanation was just what I was looking for. I'd rather try to understand what kexts I'm using and why - instead of just using them "blindly".
Your reply helped me to understand these two kexts.
Thanks! smile.gif
Keds
@realityiswhere:

I took your advice and installed VoodoHDA then I thought I'd start over again with a completely clean slate!

So, I disconnected all hard drives except for one, erased it and installed the Vanilla 10.5 Retail from a USB memory stick, using the latest Boot Think release.
I then updated to 10.5.7 via Software Update.

Following that I used OSX86Tools to install the three GFX kexts; NVInject, NVDANV50Hal,NVDAResman.
Then installed VoodooHDA, OpenHaltResart and Boot Think, but not Disabler and AppleDecrypt.
Lastly, I enabled OpenGL with OSX86Tools.

The system seems to be working really well, as good as my real Mac.(Powermac G5 Dual 2.0Ghz)
The display calibration assistant runs, but the sliders to alter the gamma, etc do not have any effect. sad.gif

I haven't added any other kexts, hacks, etc, to OS X or Boot Think. Absolutely nothing at all.

Maybe you could offer further advice or just pass comment on my installation?

Is anyone aware of a method to get the Display Calibration Assistant sliders fully working? This is the problem that really bothers me the most.

BTW I got 9/10 in the Quiz! smile.gif
realityiswhere
QUOTE (Keds @ Jul 20 2009, 08:25 AM) *
Following that I used OSX86Tools


This taints everything in my eyes.

dropping the kext into the /System/Library/Extensions/ or /Extra/Extensions/ and then doing

CODE
sudo chown -R root:wheel /System/Library/Extensions/*
sudo chmod -R 755 /System/Library/Extensions/*
sudo rm -rf /System/Library/Extensions.mkext


to manually repair permissions is not so complicated that it merits the use of a badly authored "program" known to cause problems and kill entire installs.

The reason it's able to update without disabler/appledecrypt is because of boot think, which has those functions integrated, I had never used it before so I just looked it up.
Keds
QUOTE (realityiswhere @ Jul 20 2009, 03:11 PM) *
..a badly authored "program" known to cause problems and kill entire installs.

I didn't realise that, thanks for the heads up.

QUOTE (realityiswhere @ Jul 20 2009, 03:11 PM) *
The reason it's able to update without disabler/appledecrypt is because of boot think, which has those functions integrated, I had never used it before so I just looked it up.

That explains it then, cheers.

No fix available for the monitor calibration assistant sliders, then?
Keds
QUOTE (Keds @ Jul 20 2009, 04:19 PM) *
No fix available for the monitor calibration assistant sliders, then?

Scratch that - I've got it sorted out.
dsouza
i just installed ma snow leopard onto ma pc with high configuration ,downloaded from d torrent nd d system boots up at one point of time ets says appledecrypt starts......... nd then ets hangs on no further move at al can anyone suggest wat cud be d problem for dat and how resolve it pls help me
18seven
QUOTE (dsouza @ Sep 23 2009, 03:55 AM) *
i just installed ma snow leopard onto ma pc with high configuration ,downloaded from d torrent nd d system boots up at one point of time ets says appledecrypt starts......... nd then ets hangs on no further move at al can anyone suggest wat cud be d problem for dat and how resolve it pls help me
Use fakesmc instead.
dsouza
if I replace any kext on the disc I need to rebuild the driver cache file something
whats dat fakesmc actually hwe shud i work on dat ???
GRINbeit
You are not right. I am assured. I can prove it.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2012 Invision Power Services, Inc.