We recast here the story of The Confused Deputy into a modern setting.

Suppose that I trust Whit Diffie to write Java code that wields my signing key. Diffie’s code:

I have Diffie’s public key.

I shall initially ignore questions of:

The Plan

I arrange that code signed by Diffie’s key can read The code must be able to write: I think that the Netscape technology supports these narrow authorities. I arrange that BPS (the Bill Paying Software) be able to invoke an instance of Diffie’s code.

When BPS invokes Diffie’s code it passes the name of the file where the signed checks are to be written. When Diffie’s code returns BPS sends off the signed checks to the payees.