Sunday, March 18, 2007

The Illusion of Privacy

Because scripting forces you to understand the "details" of how Second Life works, it sometimes reveals that more is possible than one might previously have thought.

"Privacy" in Second Life is somewhat of an illusion, especially when compared to real life. (Although, privacy in RL is also somewhat illusory as well.)

Most of us know that "talking" in SL can be heard by everybody within ~20 meters or so (and whisper within 10 meters, shout within 100 meters). Most of us also know that even if there are no other avatars within 20 meters, chat still might not be private, if there's a scripted object, a "bug" so to speak, within 20 meters that can "hear" your chat and then either record or relay it (although this is against LL's Terms of Service).

As far as I know, IM's are the only way to communicate privately in SL. There were some forum posts that even suggested that IM's are transmitted to and from the client program encrypted, so even packet sniffers should not easily be able to read chat.

But what about visual privacy? Unlike in RL, with a little facility, SL has camera controls that allow you to look around corners, through walls, etc. By default, this range is limited to about 50 meters, but that's still a lot of freedom. Sensors in SL can detect avatars within 96 meters, so some people think that if there are no other avatars within 96 meters, they have a semblance of "visual privacy."

I learned recently that this, too, is an illusion. It is possible to remove camera distance constraints completely. On quick testing, it seems that you can see anything within the same Sim, regardless of distance. You can also view the terrain / parcel boundaries many Sims away (but apparently not avatars or prims). So, even if there are no avatars within 96 meters, any avatar within the same Sim as you can see anything you are doing.

I think the bottom line is it would be good to assume that privacy (except, as far as we know, private IM's) in SL is purely an illusion.

How did I stumble upon these issues? Well, I've continued to play with my avatar sensor + radar HUD. It evolved because although I love my MystiTool, knowing simply distance to avatars seemed limiting, so I wrote the HUD radar.

But then I thought that only having relative position information was also limiting. If you were trying to find a friend you were following, and had gotten separated, wouldn't it be nice to be able to have a quick glimpse at their surroundings, to try to get oriented?

So, I updated the HUD / AV radar so that if you clicked on an avatar radar "blip", the script would take control of your camera and move it to a few meters from the avatar, pointing at them. Even at this point, the thought about privacy issues made me uncomfortable, so I hard-coded into the script a 5 second maximum "look time". But, this is a purely arbitrary limit.

Of course, I'm always tweaking and experimenting, and trying to see how far I can push something... So, I then learned about movement controls, and looked at some freely available scripts, and found that you could also very easily have the camera respond to your movement controls, to look around. But, I initially hit the 50 meter camera distance limit.

But, then I found that the 50 m limit is also arbitrary, and easily removed it.

Well, now I have an HUD / avatar radar that detects any avatar within 96 meters, allow clicking on a radar blip to move the camera to them, and then freely control the camera at its new position. So much for visual privacy in SL.

I'm sure some people will consider all this essentially public knowledge, but it was a minor revelation to me.

I still want to release my avatar radar HUD, but think it might be best to release it in a crippled form, with only quick-glimpse capability and without camera movement controls. But, it still makes me uncomfortable.