It uses the Zero G installer. http://www.zerog.com The bytecode for this installer has been obscured, UNLIKE britannica's java code. It shouldnt matter since I'm not interested in the installer code.
There is an HtmlRenderLib.jar, so I'm wondering if the articles are stored in html. That would be real cool. Makes sense according to something else that I've seen, cept I can't remember what. Call it a zen thing.
There is so much crud in this thing, no wonder its slow as fuck.
Bloody likely that its in html... there is a movie player class and a class for each html element, all in that html lib i mentioned earlier.
The UI looks spliced into a bunch of pix. I wonder if the UI is in html itself. Most likely not, as I can't see that working for its active code. prolly just spliced pix via swing.
There is some unholy combination of html rewriting, java, xml, a dedicated client-side wwwserver + client side sql server that all loads up and crushes the will of the client computer.
I'm going to focus on getting the articles and forgetting about the maps for now, plus dictionary and all that... just the articles m'aam.
While I'm here i might as well turn off the register nag window... britannica.ini:
# if false, prompt the user to register after startup
com.britannica.cd.hasAttemptedRegistration=false
oops I set it to true.
lax is a java xml processing thing.
CDconfigurator & britannica.ini are related.
data is held in http://hsqldb.sourceforge.net/ a 'lightweight 100% java sql database engine' sounds about right.
These fucks are using every gnu + freeware + free as in beer lib they can get their grubby little hands on. No wonder its slow as fuck.
Makes you realize that commercial ppl really use a ton of free tools to make their shit. Its just more obvious with java because java is very easy to reverse.
hsqldb docs: http://hsqldb.sourceforge.net/web/hsqlDocsFrame.html http://hsqldb.sourceforge.net/doc/hsqlBeginnersGuide.html
oecdata is in this format. a hunch.
they are using log4j everywhere and thus i have more information to crack, since literal debug strings are stored everywhere, as comments. thx
i have to find this: com.britannica.contentfactory.ContentFactory
that is where the gold is, methinks. maybe contentfactory-lib.jar
calls' w3c's tidy on html -- their own html? now thats nasty. can you say cleaning data at runtime instead of at assemble time
Lets try another tack -- that i was trying before i started writing this stuff -- look where articles are stored on disk: Ultimate Reference Suite CD\data\eb
they are using TEA encryption on .gz files in the articles. They are not .gz files (maybe after being decrypted first). TEA is insecure, even if I didnt already have their passphrase. Ooops. TEA\com\britannica\crypt\tea
40e858f86df9b909a8c88cb8d9ad599 stored as a literal in EncryptDecryptStreamer.class blighters
TEA, a Tiny Encryption Algorithm http://www.ftp.cl.cam.ac.uk/ftp/papers/djw-rmn/djw-rmn-tea.html
teacrypt for windows http://users.interfriends.net/Maurid/TEACrypt80x86.htm