spki.demo
Class run

java.lang.Object
  |
  +--spki.demo.run

public class run
extends Object

this program demonstrate the Authorization Management Framework's Infrastructure Implementation Guidelines. run 'java spki.demo.run -h' to see run-time options available.

Version:
$Id: run.java,v 1.13 2002/07/30 19:51:58 tep Exp $
Author:
Tep Narula <tep@win.trlabs.ca>
See Also:
Initialization(), Personalization(), Registration(), Propagation(), Utilization()

Field Summary
(package private) static String __ME
           
(package private) static Sequence authchain
           
(package private) static Sequence[] authchains
           
(package private) static Tag cap
           
(package private) static Certifier certifier
           
(package private) static Date finish
           
(package private) static RootIssuer issuer
           
(package private) static KeyChain[] keychains
           
(package private) static KeyChainManager[] managers
           
(package private) static int MAX_CHAINS
           
(package private) static Monitor monitor
           
(package private) static String[] passcodes
           
(package private) static boolean PAUSE
           
(package private) static Date start
           
 
Constructor Summary
run()
           
 
Method Summary
static void Initialization()
          the Initialization phase.
static void main(String[] args)
           
static void Personalization()
          the Personalization phase.
static void Propagation()
          the Propagation phase.
static void Registration()
          the Registration phase.
static void Utilization()
          the Utilization phase.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

__ME

static String __ME

PAUSE

static boolean PAUSE

MAX_CHAINS

static int MAX_CHAINS

start

static Date start

finish

static Date finish

certifier

static Certifier certifier

keychains

static KeyChain[] keychains

passcodes

static String[] passcodes

managers

static KeyChainManager[] managers

issuer

static RootIssuer issuer

authchains

static Sequence[] authchains

cap

static Tag cap

authchain

static Sequence authchain

monitor

static Monitor monitor
Constructor Detail

run

public run()
Method Detail

main

public static void main(String[] args)

Initialization

public static void Initialization()
                           throws Exception
the Initialization phase.
  • construct a Key-chain Certifier.
  • construct a number of key-chains and measure averaged construction time.
  • initialize each key-chain with the Certifier's public-key and measure averaged initialization time.
    See Also:
    Certifier, KeyChain

  • Personalization

    public static void Personalization()
                                throws Exception
    the Personalization phase.
  • construct a Key-chain Manager for eac key-chain.
  • personalize each key-chain by changing to a new passcode and creating a key-pool and measure averaged personalization time.
    See Also:
    KeyChainManager

  • Registration

    public static void Registration()
                             throws Exception
    the Registration phase.
  • construct a root Issuer.
  • construct register each key-chain with the root Issuer for a capability and measure averaged registration time.
    See Also:
    RootIssuer, RegistrationRequest, KeyChainManager.register(spki.demo.RootIssuer,Tag)

  • Propagation

    public static void Propagation()
                            throws Exception
    the Propagation phase.
  • transfer capability from one key-chain to the next, beginning with the first key-chain and continue the last key-chain to creat an authorization chain.
    See Also:
    KeyChainManager.getChain(Principal,Tag), KeyChainManager.reduce(Sequence), KeyChainManager.transfer(Sequence,RegistrationRequest), KeyChainManager.addAuthChain(Sequence)

  • Utilization

    public static void Utilization()
                            throws Exception
    the Utilization phase.
  • constructing an access-control Monitor that trusts the root Issuer constructed earlier during Registration.
  • construct an authorization request for a capability.
  • submit the authorization request to the monitor to get the authorizaiton result.
    See Also:
    Monitor, KeyChainManager.request(Monitor,Principal,Tag), AuthorizationRequest, Monitor.authorize(AuthorizationRequest)