Overview Design Goals Using transient to Protect Important System Resources Writing Class-Specific Serializing Methods Encrypting a Bytestream