Archive for the ‘iSpy’ Category

Taking inqueries for iSpy

Wednesday, April 8th, 2009

Espionage owes its existence and unique capabilities to a little known system that we’ve developed in-house called iSpy.

iSpy is a low-level, generic system for detecting and moderating events on the filesystem. It is comprised of three main components: a kernel extension, a system-wide daemon, and an application framework.

Brief History

I originally became interested in the problem of watching the filesystem when I had an idea for an application that would automatically clean your Desktop as files were added to it, moving downloaded files to their proper locations for you, thus resulting in an uncluttered Desktop. It would be possible to generalize such an application to perform various other tasks as well. It wasn’t until I discovered that such an application already existed that I turned my sights to another problem: password protected folders.

As I studied the available systems that I might be able to use to solve this problem (fs_usage, FSEvents, Spotlight, and others), I realized why this problem hadn’t been solved before: none of these systems allowed you to detect when a file or folder was accessed. And “just like that”, iSpy was born.

Not only can iSpy detect when a folder or file is accessed, written to, read from, executed, or deleted, but it actually detects and reports these events before they happen. This gives iSpy the unique capability of allowing events on the filesystem to be moderated by a user-land application.

Using iSpy

Using it is actually very simple. The API consists primarily of only 3 significant functions that register, modify, and unregister events, respectively.

Licensing iSpy

Originally we were planning on keeping iSpy firmly in the hands of Tao Effect, but we’ve recently decided to head in a new direction. That is why we are considering licensing this system to trustworthy third-party developers, so that it may be used to create more unique software instead of being monopolized by Espionage.

This does not mean that we will be abandoning its development, to the contrary an update to it is scheduled for the near future, and it will continue to be supported and maintained by Tao Effect for quite some time. However, as we are working on software that will not make use of the system, it is unlikely for the time being that Tao Effect will create any significant new software using it (other than Espionage, which is in active development, and will continue to be for quite some time).

While we haven’t hammered out exactly how we plan to license it, we’re curious to see if there’s any interest out there. Whatever the final terms, we’ll do our best to make sure that they are fair to both parties, and that the cost of licensing would be less than developing it in-house. If you’re wondering whether iSpy is the right event system for your project, let us know by sending email and any questions to:

To:      contact (at) taoeffect (dot) com
Subject: Interested in iSpy

What is this “iSpy” anyway?

Monday, October 27th, 2008

See this post if you are interested in licensing iSpy.

iSpy is the magic behind Espionage’s amazing capabilities.

Despite its sinister sounding name, iSpy has absolutely nothing to do with “spyware” whatsoever.  iSpy gets its name from its ability to spy on events in the filesystem.

What does that mean?

Well, let’s look at how Espionage uses iSpy.  Espionage asks iSpy to send it events whenever any of the folders that it’s monitoring are accessed.  So when a user double-clicks on a folder under Espionage’s protection, iSpy sends Espionage an event.  As far as I’m aware, it is currently the only system on the Mac OS X platform that has this capability.

But the magic doesn’t stop there.  iSpy can also moderate file operations. This is how Espionage’s non-encrypted protection works.

P.S. Tao Effect (and you can consider this a company philosophy) will never include any form of spyware in any of its applications.