[e-lang] [ANN] E-on-Common-Lisp now available

David Wagner daw at cs.berkeley.edu
Sat May 14 20:31:01 EDT 2005


Mark Miller wrote:
>Kevin Reid wrote:
>> I think it depends on the kind of usage, and for some cases it makes 
>> sense to have weak references to selfless objects: for example, a 
>> memoizing cache might like to have a weak key map with keys like 
>> 94879235673890167528934765389046784935067453986.
>
>I agree that this would be useful, if we could define a semantics for this 
>which is clean, implementable, and useful. The problem is, what is such a weak 
>pointer allowed to do if there exists an independently calculated instance of 
>the same integer in the vat? Must this cause the weak pointer to retain it?

Is there a danger of side channels here?

Let's take a scenario.  Alice is implementing a cache that holds a
weak pointer to a four-digit PIN X (which should be kept secret).
Mallet guesses that the PIN is 1234.  Mallet creates the integer
1234 (an object).  Now Mallet interacts with Alice to test her guess.
It seems like the cache might behave differently in the case where X =
1234 than in the case where it doesn't: in the former case, the weak
pointer might be retained, and the cache operation might complete more
quickly than in the latter case.

Is this what you were thinking of when you asked the question?


More information about the e-lang mailing list