[e-lang] Auditors

Kevin Reid kpreid at mac.com
Wed May 30 13:03:09 EDT 2007


On May 30, 2007, at 10:59, Stephan van Staden wrote:

> I have a couple of questions regarding auditors:
>
> Suppose I create a discriminating, not closely held auditor x in  
> Vat A.
> Does "not closely held" mean that references to x are made freely
> available, such that Vat B can call x <- audit(script)?

Yes, but just invoking an auditor has no relevant effect; an auditor,  
which is an ordinary object, just returns a boolean or throws.  
Approvals happen when *the auditing system* invokes an auditor and  
records the answer.

> Will the result of the audit then be recorded in Vat B such that a  
> guard in Vat B can use local information?

No; an auditor (currently) must be near to the vat creating the  
object which is to be approved.

Auditing with eventual auditors isn't inherently difficult, but it  
would be a source of mutability (an object would transition from not- 
yet-approved-by-X to approved-by-X) which would have to be rejected  
by, e.g., the DeepFrozen auditor.

> Suppose that an object o in Vat B passed an audit by x. If a  
> reference to o is then sent to Vat C, will this reference install  
> information regarding its x audit in Vat C?

No mechanism has currently been designed or implemented for far  
references to have approvals. If o is PassByConstruction in the  
mobile code style then a local audit by the auditors its definition  
carried (which must have arrived near) is by definition part of its  
unserialization.

> Can Vat C trust Vat B on the results of the audit?

If we had support for non-near auditing, then the answer to this  
would depend on the origins of the vats. If they came from the same  
vat-maker and used the similar evaluators, such that their auditing  
subsystems may sensibly be mutually reliant auditing systems, then yes.

> Suppose now that x is instead PassByCopy and that Vat B can execute  
> the audit locally. To which extent can Vat B trust that x is  
> auditing what it claims to audit? In other words, is there an  
> auditing system for auditors?

PassByCopy objects are transparent by definition; a PassByCopy  
auditor can indeed be relied upon to audit for the property which it  
can be observed to implement auditing for.

-- 
Kevin Reid                            <http://homepage.mac.com/kpreid/>




More information about the e-lang mailing list