Essentials:
   Overview
   Design

Packages:
   Nym
   Reputation
   RCE
   Query
   Communications
   Store

Resources:
   Download
   Browse CVS
   Javadoc
   Mailing Lists
   Talon
   Bugzilla

Sierra
An OpenPrivacy Reputation Management Framework

The Nym Package

Sierra defines a Nym Package that defines an abstract interface with a set of properties required by the Reputation Management Framework. These requirements include, but are not limited to:
Public-key based
Nyms use public key cryptography for security, non-repudiation, authentication, signature and other operations
Cryptographic provider transparency
The Nym interface supports multiple cryptographic providers in much the same way the the Java Cryptography Extension (JCE) does. This enables a Reputation Management Framework to have a clear separation between a particular cryptographic implementation and the abstract way it handles signed/encrypted Reputations. Sierra's Nym component package uses Talon to set the specific crypto provider at runtime.
"Current Nym" concept
The ability to switch between Nyms to allow domain-specific Reputation accrual. Also, the Nym management interface will set the "Current" Nym when working with a set of that Nym's children.
Transparent local maintenance and key-store
While the actual user interface is outside the scope of Sierra per se, tools and APIs for managing Nyms are provided
Validation
Ensure Nym legality with respect to Certificate Revocation Lists (CRLs), expiry dates, and structure
Verification
Check that contents of a Nym are correct and signatures match
Parent-child relationship support
Parent Nyms can anonymously prove properties of the Child Nyms. (See the draft Reputation Capital working paper for more.)

Components

Nym:
A Nym is a public object/certificate that can sign Reputations as well as have Reputations grafted to it.
+getPublicKey(): PublicKey
Get the public key for this Nym. Other components within the system can use this as a handle for further operations.

+getNym(): Nym
Create and return a child Nym using the current Nym as parent.
NymBuilder:
Responsible for creating Nyms. This is the mechanism that is used to create a Nym based on each Crypto provider implementation.
+getNym(): Nym
Get the Nym created by this Nym builder.

More Information

Sierra has additional documentation for this package.

Sierra implements the OpenPrivacy Reputation Management Framework