Subject: Re: Some -15 comments

From: [email-masked] ("Hal Finney")
Date: Mon, 14 Nov 2005 22:41:29 -0800 (PST)

Daniel Nagy writes:
> I understand that and even agree with it in the light of the fact that
> there's already notation in wide use that is not intended for human
> interpretation. But I think that a flag indicating that some notation IS
> intended to be interpreted by humans is still warranted, using a wording
> similar to the original definition of the text flag, perhaps with some
> clarification added. Like this:
>
>         First octet: 0x80 = displayable. This note value is text.
>
>                      0x40 = human-readable. This note value is text, a
>                             note from one person to another, and need
>                             not have meaning to software. If critical,
>                             it MUST be displayed whenever the successful
>                             verification of the signature is reported to
>                             the user

Your 0x40 is more than "human-readable", it is "should be displayed".  I
don't like the idea of putting in a feature which burdens implementations
to do certain things in the UI, unless we have a very good reason.
Our PGP software might have to pop up dialog boxes to deliver these
notification messages, which I'm sure would bring objections from our
UI guys.

If and when we come up with a compelling reason to add such a UI mandate
in our data-format specification, then we could consider it.  We would
also need to clarify when it should be displayed for key signatures: if
a web of trust is used, should we display all notations for all keys in
the chain that were used to establish the trustworthiness of a target key?
Should this happen on both encryption and signature verification?  And is
it enough to do it once and consider the user "notified", or should it be
done every time?

The answers to questions like these are likely to be application specific.
That is, for some kinds of notations we would do it one way, and for other
types of notations we would do it another way.  Maybe some would only be
for data signatures and not key signatures, or vice versa.  Maybe some
would only be displayed for signatures on the key being used, while others
should be displayed for the whole trust chain.  It depends on the purpose.

Putting in this 0x40 flag now, or any mandate for notation packet display,
will require possibly substantial change to every OpenPGP implementation
in existence.  Sure, it potentially gives you a lot of leverage to
implement your desired new feature.  But it is at a great expense.
We can't go forward with something like this without an extensive
discussion involving many groups, including UI experts.

Hal Finney

---

From: [email-masked] (Daniel A. Nagy)
Date: Tue, 15 Nov 2005 16:34:50 +0100

> notification messages, which I'm sure would bring objections from our

Unless it already doesn't pop up dialog boxes then it shouldn't pop up new
ones. All I suggest is adding text to the report about successful
verification, if such a report exists.
 
> the chain that were used to establish the trustworthiness of a target key?

Definitely not. You only display the notation, if the successful
verification of the signature is explicitly reported to the user.

> should be displayed for the whole trust chain.  It depends on the purpose.

But isn't that dependence on signature type already resolved by the
different ways in which applications report on successful signature
verification? I was a bit sloppy first by saying that such notation should
be displayed upon successful verification. That is obviously wrong. What I
really have in mind is that such notation should be included in reports of
successful verification, if such reports are provided.

> discussion involving many groups, including UI experts.

Okay, there is no urgency. But I still think, it is a legitimate feature
which does not require dramatic changes on implementations' part. At the
same time, it substantially decreases the roll-out costs of many
applications, not just mine. Basically, it would enable people to do more
things without having to write sofware. The "note from one person to
another" is a nice feature to be included in signatures. If, for obvious
reasons, 0x80 cannot carry this semantics, some other flag should.

The true issue here, as I see it, is that indeed, one can change the
semantics of notation wihout owning it. If notation flags are not
considered part of the notation (that is, their use is not restricted by the
notation specification), then such flags are more or less part of the
notation value, and should convey information only about the value part
(e.g. whether it is text, image, boolean, etc.). If this is the case, it
should be included in the wording of the standard.

In that case, the feature I would like to see will have to be implemented in
a completely different fashion, but still preferably in the standard, as it
is generally useful. On the other hand, I think that notation flags should
be part of the notation spec; you cannot put binary  data where the spec
requires text, so the spec may as well specify what flags to use and how
with the notation, even though the flags' semantics is the same across all
notations.

-- 
Daniel

---

From: Ian G <[email-masked]>
Date: Tue, 15 Nov 2005 18:27:37 +0000

> reasons, 0x80 cannot carry this semantics, some other flag should.

In dealing with signatures-of-legal-import, you may
be saying that you want a "please-display-me" feature
in order to complete this process at the UI level.
But, the notion of a human signature is substantially (*)
more complex than that;  just displaying a comment
attached to a signature is unlikely to bring us close
enough to making the signature work as a legal one.

Which is to say I think this short-changes the subject
matter somewhat.  A full treatment of this will require
many more things than just one extra bit or just one
nice well written specification entry, and until
someone a) has a real need for it and b) does the extra
work to define all of the (wider, legal) aspects of
legally important signatures either in general or in
particular, we won't be able to predict it from here,
and (I claim) it is foolhardy to try.

> with the notation, even though the flags' semantics is the same across all

Hmm, not entirely sure I followed all that, and it
would probably help if I read the parts in as much
detail as others!  Having said that, if you are
suggesting that these semantics are better off left
to a higher layer called the "notation spec", then
I'd whole-heartedly agree.

iang

PS: (*) C.f., the Ricardian Contract <insert blah blah etc etc here>.