________________________________________________________________________________
BillBlocker
*** What is it?
BillBlocker is a simple drag-and-drop utility for
removing the PID_GUID data from files created with
Microsoft Office.
Sounds wonderful. I've been looking for something like
that. Er ... what's PID_GUID data?
OK. Starting with Microsoft Office '98 (on the
Macintosh), Microsoft Office applications (Word, Excel,
| PowerPoint) write a unique identifying code into each
| file that they create. This code - called the PID_GUID -
is built out of a variety of different bits of
information, and its purpose is apparently to provide a
| unique reference number for every document (Microsoft's
documentation suggests that the time format they use
will roll over in the year 3400, which means that we can
look forward to a Year 3.4K problem; on the other hand,
if anyone's still using Microsoft Office in 1400 years
time, the possibility of non-unique document identifiers
is probably not the worst of their problems).
The presence of the PID_GUID isn't necessarily sinister
- there can be valid reasons for wanting a unique
identifier for every document. However, among the data
| that Office uses to build the PID_GUID is the 'hardware
| address' of your computer. The hardware address is
| actually the identifying number assigned to the Ethernet
| card in your machine (if you have one; if you don't have
an Ethernet card, the code will use a random number
| instead). Every Ethernet device made has a unique ID
| number, so effectively Office applications are encoding
| information in your files that says "This document was
| made on such-and-such a computer and no other."
This raises certain issues. Not everybody is likely to
be happy with the idea that every document they create
using Office can be traced to them. Imagine the case of
someone who lives under an oppressive regime writing
| articles that criticise the government. Or someone who
| works for an organization that is breaking the law in
| some way, and wants to write a memo about what they've
seen. And so on.
Add to this the fact that Office also apparently stores
| registry information - the name of the owner etc. - in
your documents. It's not clear quite how much
information Office stores in each document, but taken
together, it adds up to quite a detailed picture of the
document author. Whether or not Microsoft's intentions
were sinister, there is a potential for abuse. Everyone
should have the right to write anonymous documents.
That's where BillBlocker comes in. BillBlocker is a drag
and drop application that copies any Office document
dropped on it. In the process of copying the document,
it overwrites the PID_GUID with zeroes. That's all. It
doesn't change anything else in the document, and the
document should open normally with all its data intact.
Zeroing the PID_GUID should not affect the actual
content or functionality of the document in any way
(unless, of course, you use some document indexing
scheme that relies on unique document references). For
safety, BillBlocker also keeps a copy of the original
document, which is renamed by adding the extension
'.old'.
*** How do I use it?
Simply drag the Office document you want to 'anonymize'
onto BillBlocker's icon. BillBlocker will read it, zero
the PID_GUID, and write it out. The new copy of the
document will be created in the same place as the
original.
*** Preferences
The Preferences menu item under the File menu brings up
a dialog that allows you to specify some simple
preferences for controlling BillBlocker's behaviour.
At present, the only item shown is the Stay Open
checkbox. If you check the Stay Open checkbox,
BillBlocker will not quit automatically when it has
finished processing, but will remain open. This may or
may not be useful to you.
*** Some questions and answers
Q: Will BillBlocker damage my documents?
A: It shouldn't. It changes only the PID_GUID, and
doesn't touch any other data in the document. Your
documents should work normally afterwards. For safety,
however, you should keep copies of the original
documents in a safe place.
Q: Does it remove all the secret personal information
in my documents?
A: No. It doesn't touch the registry information. It
doesn't change any other information that Microsoft may
have tucked away in the file somewhere. The only thing
it changes is the PID_GUID (but if I can get any
documentation for the Office format, then I'll try to
provide the option to zap the registry information as
well).
Q: Does it do anything about the Office bug by which
Office documents may end up including fragments of other
files, potentially including confidential information?
A: No. You can get a fix for that particular problem
from Microsoft themselves. Look for the Microsoft Office
for Macintosh update on their Web site
().
Q: Will BillBlocker always work?
A: Not always. BillBlocker is a crude hack, written
at high speed late at night by a sloppy programmer.
Under some relatively rare circumstances, it might fail
to find the PID_GUID. If this happens, it will, however,
issue a warning. I hope to fix this in a later release.
Q: Do older versions of Office also store identifying
information in documents?
A: Apparently not. BillBlocker will copy such files,
but won't change them, and it will issue a warning to
say that no PID_GUID was found.
Q: How much does it cost?
A: BillBlocker is freeware. It would be silly to ask
money for such a trivial application. However, if you
like it and want to make me happy, go and take a look at
the Web site of my friends from The Serious Road Trip -
Connexion Humanitaire Francaise at
. If you like the
sound of what they're doing and want to support their
efforts in any way, that would be great.
*** Warnings and disclaimer
BillBlocker is currently development software. Software
is developed in cycles, with each cycle bringing new
versions that contain more features and fewer bugs (at
least that's the way it's supposed to work). In the
hierarchy of development cycles, development comes
before alpha, which comes before beta, which comes
before final candidate, which comes before release. What
this means is that BillBlocker is likely to be very soft
and crumbly, and it may generate the wrong results,
crash unpredictably, or destroy your data, your hard
disc, and all life as we know it.
If it does, I'm afraid that's your problem. I'm hereby
warning you that it may do bad things; if you go ahead
and use it despite this warning, then that means that
you're prepared to accept the possibility of damage.
While I do my best to ensure that BillBlocker behaves
itself, I will not be liable for anything it may do to
you or your data, software or hardware. If you can't
live with this, don't run BillBlocker.
BillBlocker seems mostly stable, although it hasn't been
extensively tested in abnormal situations such as low
memory conditions.
One potential danger: BillBlocker is currently not fussy
about the kind of files that it accepts. Moreover, it
only copies file data forks (since Microsoft Office
apparently doesn't use the resource fork for anything).
If you drag a file that has a resource fork onto
BillBlocker, the copy created will not contain a
resource fork, and thus may not be a complete or correct
file. Use BillBlocker only on Office files.
BillBlocker has been tested on a PowerMac 7600/120
running MacOS 8.1 (Int'l English). It should
theoretically run on any Macintosh running System 7 or
later, including 68K machines (BillBlocker is a 68K
application). However, it has not been tested on other
configurations.
*** History
v0.1d - 11.03.99
First release. Crude and basic implementation, not
extensively tested or debugged. Limited error-checking.
*** Still to do
Extend BillBlocker to remove other personal information
such as registry data.
Fix bug that causes BillBlocker to occasionally miss the
PID_GUID.
Make BillBlocker copy Word resource forks, just for the
sake of completeness (even though they're not used for
anything).
Limit BillBlocker to accepting only Microsoft Office
files (currently it will process any file dropped on
it).
Allow BillBlocker to process folders recursively.
Improve handling of overlong filenames, disk full errors
etc.
Make default extension for backup files
user-customizable.
Try to get Balloon Help working on the dialogs.
Make BillBlocker write plausible PID_GUID's (according
to the definition) instead of simply zeroing everything.
*** Feedback
Comments, suggestions and questions can be sent to:
angus@pobox.com
I'd be interested to hear from anyone using the program,
just so that I know which machines it does/doesn't work
on. I'd also be interested in any suggestions that you
may have for improving it. The latest version of this
program and any other programs I write can be found at:
*** http://www.raingod.com/
Legal stuff
The program is © Angus McIntyre 1999. It can be freely
copied and distributed, provided that no more than
reasonable distribution/media costs are charged. It may
not be sold either separately or as part of a software
collection except by prior arrangement. It may not be
modified, and this note must always be included with the
application. Any use of BillBlocker is at your own risk
- I accept no liability for any direct or consequential
loss or damage resulting from use of or inability to use
this program. By using it, you agree to these terms.
Because BillBlocker is currently under development,
please do not upload it to any archive servers or
distribute it as part of any software collection. If you
want to distribute it, mail me and I will notify you
when a stable version is available.
BillBlocker was developed with MetroWerks CodeWarrior
Pro 4. Parts of the finished application may thus be ©
MetroWerks. It is based on DropShell 2.0, written by
Leonard Rosenthol, Marshall Clow and Stephan Somogyi.
Their contribution is gratefully acknowledged, and it
should be understood that all the bugs in the program
are mine, not theirs (well, almost all).
All trademarks are the property of their respective
owners.
*** Envoi
"We are forces of chaos and anarchy. Everything they say
we are, we are. And we are very proud of ourselves ..."
["We can be together", Jefferson Airplane]
________________________________________________________________________________
no copyright 1999 rolux.org - no commercial use without permission. is a
moderated mailing list for the advancement of minor criticism. more information:
mail to: majordomo@rolux.org, subject line: , message body: info. further
questions: mail to: rolux-owner@rolux.org. archive: http://www.rolux.org