Try this - it worked for me (found on the web and quoted verbatim).
PROCEDURE 1:
1. Click Start, Run, type: cmd and press Enter. Please run the following command in the opened window.
Net stop Cryptsvc
2. Manually rename Edb.log to Edb.txt under C:\Windows\system32\catroot2.
3. Click Start, Run, type: cmd and press Enter. Please run the following command to start service in the opened window.
Net start Cryptsvc
4. Reboot the server. [Note: I added this step. In my original attempt, I did not reboot prior to applying the service pack and it failed with an error message ("Setup could not verify the integrity of the file Update.inf. Make sure the Cryptographic service is running on this computer"). So I tried the second proceedure also without rebooting and got the same error message. It was at that point I decided to reboot and attempt the SP2 install immediately after coming up and the installation went fine. Please note that I had dowloaded the full SP2 install and was not using Windows Update.]
5. After the above steps, please try to install Service Pack 2 again.
If the issue persists, try moving all the catalog files using the following procedure.
PROCEDURE 2:
1. Locate C:\WINDOWS\system32\CatRoot Folder
2. Right Click on the folder and select Search.
3. Expand the More Advanced Options and verify that the Type of file says "(All Files and Folders)" and that the advanced search options for system folders, hidden files and folder and search subfolders are checked.
4. Under the "All or part of the name" box, enter "tmp*.cat, KB*.cat." (without the quotes)
5. Move all the files to another folder. [Note: I created a cleanup folder on my desktop prior to doing the search].
6. Reboot the system [Note: Again, this is an added step. See my note in Step 4 of procedure 1]
7. After moving the catalog files, attempt to install the Service Pack again.
EggHeadCafe.com - .NET Developer Portal of Choice
http://www.eggheadcafe.com