sdsi
Class SearchProver

java.lang.Object
  |
  +--sdsi.Utility
        |
        +--sdsi.SearchProver

public class SearchProver
extends Utility

Finds the proof of a property in a CertCache without taking a closure.

Author:
Sameer Ajmani

Field Summary
 
Fields inherited from class sdsi.Utility
_cache, DEBUG
 
Constructor Summary
SearchProver()
           
 
Method Summary
 Sequence proveAuth(CertCache cache, SDSIPrincipal issuer, java.lang.String[] names, Tag tag, Subject target)
          Looks in the given cache for a proof that the tag can propagate from the issuer (with optional names) to the target subject.
 Sequence proveDef(CertCache cache, SDSIPrincipal issuer, java.lang.String[] names, Subject target)
          Looks in the given cache for a proof that the given issuer and names are bound to the target subject.
 
Methods inherited from class sdsi.Utility
anyNull, getIssuerKey, getIssuerSig, getKey, getSequence, getSubjectKey, getValidity, onChain, onStack, popStack, pushStack, topStack, validStack
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SearchProver

public SearchProver()
Method Detail

proveDef

public Sequence proveDef(CertCache cache,
                         SDSIPrincipal issuer,
                         java.lang.String[] names,
                         Subject target)
                  throws SDSIException
Looks in the given cache for a proof that the given issuer and names are bound to the target subject.

Parameters:
cache - the cache in which to search
issuer - the issuer of the first name
names - the names that bind to the subject
target - the target subject of the binding
Returns:
a proof sequence or null if no proof is found
Throws:
SDSIException - thrown if the arguments are null or there is an internal error

proveAuth

public Sequence proveAuth(CertCache cache,
                          SDSIPrincipal issuer,
                          java.lang.String[] names,
                          Tag tag,
                          Subject target)
                   throws SDSIException
Looks in the given cache for a proof that the tag can propagate from the issuer (with optional names) to the target subject.

Parameters:
cache - the cache in which to search
issuer - the issuer of the permission or of the first name
names - names for the issuer, may be null
tag - the permission tag
target - the target subject of the permission
Returns:
a proof sequence or null if no proof is found
Throws:
SDSIException - thrown if the arguments are null or there is an internal error