org.ccnx.ccn.profiles.security.access.group.GroupAccessControlProfile.PrincipalInfo Class Reference

This class records information about a CCN principal. More...

List of all members.

Public Member Functions

 PrincipalInfo (GroupAccessControlManager accessControlManager, ContentName publicKeyName) throws VersionMissingException, ContentEncodingException
 Parse the principal info for a specified public key name.
 PrincipalInfo (byte[] principalInfoNameComponent)
byte[] toNameComponent ()
 Principal names for links to wrapped key blocks take the form: {GROUP_PRINCIPAL_PREFIX | PRINCIPAL_PREFIX} COMPONENT_SEPARATOR distinguisingHash COMPONENT_SEPARATOR friendlName COMPONENT_SEPARATOR timestamp as 12-bit binary This allows a single enumeration of a wrapped key directory to determine not only which principals the keys are wrapped for, but also what versions of their private keys the keys are wrapped under (also determinable from the contents of the wrapped key blocks, but to do that you have to pull the wrapped key block).
boolean isGroup ()
String friendlyName ()
byte[] distinguishingHash ()
CCNTime versionTimestamp ()
String toString ()

Static Public Member Functions

static boolean isPrincipalNameComponent (byte[] nameComponent)
 Returns whether a specified name component is the name of a principal.
static byte[] contentPrefixToDistinguishingHash (ContentName name)
 A first stab.

Static Public Attributes

static final int DISTINGUISHING_HASH_LENGTH = 8


Detailed Description

This class records information about a CCN principal.

This information includes:

We define a mapping between name components and principals: <TYPE_PREFIX>:<NAMESPACE_HASH>:<FRIENDLY_NAME>:<VERSION>


Constructor & Destructor Documentation

org.ccnx.ccn.profiles.security.access.group.GroupAccessControlProfile.PrincipalInfo.PrincipalInfo ( GroupAccessControlManager  accessControlManager,
ContentName  publicKeyName 
) throws VersionMissingException, ContentEncodingException

Parse the principal info for a specified public key name.

Parameters:
isGroup whether the principal is a group
publicKeyName the public key name
Returns:
the corresponding principal info
Exceptions:
VersionMissingException 
ContentEncodingException 


Member Function Documentation

byte [] org.ccnx.ccn.profiles.security.access.group.GroupAccessControlProfile.PrincipalInfo.toNameComponent (  ) 

Principal names for links to wrapped key blocks take the form: {GROUP_PRINCIPAL_PREFIX | PRINCIPAL_PREFIX} COMPONENT_SEPARATOR distinguisingHash COMPONENT_SEPARATOR friendlName COMPONENT_SEPARATOR timestamp as 12-bit binary This allows a single enumeration of a wrapped key directory to determine not only which principals the keys are wrapped for, but also what versions of their private keys the keys are wrapped under (also determinable from the contents of the wrapped key blocks, but to do that you have to pull the wrapped key block).

These serve as the name of a link to the actual wrapped key block.

static boolean org.ccnx.ccn.profiles.security.access.group.GroupAccessControlProfile.PrincipalInfo.isPrincipalNameComponent ( byte[]  nameComponent  )  [static]

Returns whether a specified name component is the name of a principal.

Parameters:
nameComponent the name component
Returns:

static byte [] org.ccnx.ccn.profiles.security.access.group.GroupAccessControlProfile.PrincipalInfo.contentPrefixToDistinguishingHash ( ContentName  name  )  [static]

A first stab.

Exceptions:
ContentEncodingException 


The documentation for this class was generated from the following file:

Generated on Thu Feb 16 00:45:05 2012 for Content-Centric Networking in Java by  doxygen 1.5.6