This site will look better if you upgrade to a browser that supports web standards.
On another page, I detail how XL's internal password protection works, and how it can be removed. These Worksheet and Workbook passwords are very different from File and VBA Project passwords.
File protection (applied when the file is originally saved using newsgroup archives to find a recent list of providers. XL MVP Chip Pearson also has a list of providers (though, like me, he's never used them).
and clicking on the button) is quite a bit more robust than XL's internal protection. However, relatively inexpensive commercial password crackers are available, either as stand-alone applications (all for Windows, currently) or as a service that you send the workbook to. Dictionary attacks can be very quick (seconds to hours). Brute force attacks can take much longer - and probably aren't worth it if the password is likely to be over 8 characters. Do a Google search or check theDecryptum.com guarantees free on-line removal of most file passwords, usually within 3 minutes. You can then pay to download the unprotected file. (Disclaimer:while I've never paid for a download myself, if you follow this link and end up paying to get the download, I may receive a commission.)
Note that file protection is not encryption - you can use a hex editor to examine files and, while the result isn't entirely human-readable, one can often view the general layout, as well as any text.
In principle, VBA Project protection (applied by choosing
in the VBE, checking the Lock Project for Viewing checkbox and entering a password) is also more robust than worksheet/workbook protection. Unfortunately, while the technique is not well known, VBA Project protection can be bypassed easily with a hex editor. Commercial services also are able to remove such protection in a heartbeat.As with file protection, a hex editor can also lay bare your VBA macros. Macro keywords are tokenized, so it's not directly human-readable, but it's often easy to figure out program flow, look at constants, etc.
This page last updated
© Copyright 2001 - 2004 McGimpsey and Associates. Except where noted, all code on this site may be distributed under the Gnu GPL. Acknowledgement is appreciated.