DDJ, October 2005
Computer Security



FEATURES

Preventing Piracy While Preserving Privacy
Michael O. Rabin and Dennis E. Shasha
The security approach presented here is a privacy-preserving, flexible, antipiracy solution that does not suffer from "Break Once, Run Everywhere."

Reestablishing Trust in the Web
Amir Herzberg and Ahmad Jbara
The TrustBar browser extension provides improved security, identification, and trust indicators.

Extended Visual Cryptography Schemes
Daniel Stoleru
Visual cryptography is a graphical form of information concealing.

Inside the SmartDongle USB Security Key
Joel Gyllenskog
Joel lifts the hood on his USB security key.

Developing JSR-168 Portlets
Ted O'Connor and Martin Snyder
The JSR-168 portlet specification defines APIs for building applications viewed inside portal frameworks.

The Eclipse Test and Performance Tools Platform
Andy Kaylor
The Eclipse Test and Performance Tools Platform provides open Standards for interoperability.

The Mac's Move to Intel
Tom Thompson
Steve Jobs dropped a bombshell when he told software developers that the Macintosh will switch from PowerPC to Intel x86 processors.

Calling C Library DLLs from C#
Shah Datardina
Need to utilize legacy software? Here are techniques for calling unmanaged code written in C from C#.

Removing Memory Errors from 64-Bit Platforms
Rich Newman
It's crucial to address potential memory errors before porting to 64-bit platforms.

Pointer Containers
Thorsten Ottosen
Smart containers are useful and safe utilities that can lead to flawless object-oriented programming.


EMBEDDED SYSTEMS

Using Hardware Trace for Performance Analysis
Michael Lindahl
Michael examines embedded-systems performance-analysis techniques, and discusses some of their inherent limitations.


COLUMNS

Programming Paradigms
Michael Swaine
Ringtones are where the money is—for now anyway.

Embedded Space
Ed Nisley
Large, complex embedded systems have more places for things to go wrong.

Chaos Manor
Jerry Pournelle
Jerry looks back when inventing the future, and looks forward to the world of 64-bit computing.

Programmer's Bookshelf
Michelle Levesque
Michelle examines Greg Wilson's Data Crunching: Solving Everyday Problems Using Java, Python, and More.


FORUM

Editorial
Jonathan Erickson

Letters
by you

Dr. Ecco's Omniheurist Corner
Dennis E. Shasha

News & Views
DDJ Staff

Pragmatic Exceptions
Benjamin Booth

Of Interest
DDJ Staff

Swaine's Flames
Michael Swaine