Lew said:
To add to Roedy's point, a vendor is not under obligation to base their
price on the cost of production, contrary to what Gerald seems to
think. They are under obligation to charge the price that will maximize
profits; that means to increase price as far as possible until it tilts
past the profit that demand will bear. Price is a function of both
demand and production cost; those who try to narrow it to only one or
the other misrepresent the situation.
I have no intention of misrepresenting anything. In fact, I asked a
question, rather than stated something.
It looks like one problem is that the market for certificates is
currently not competitive. In a competitive market, prices do not tend
to be much higher than costs. It sounds like Thawte and Verisign have
pretty fat margins though. Perhaps because a duopoly is not much better
than a monopoly; it seems to take three vendors to get decent
competition, if not more, in most markets.
There is also a problem with Roedy's claim for why they insist on
expirations and renewals, namely that you could have moved.
First of all, you might move just after a renewal.
Second of all, the purpose of code signing certs is to prove that the
code is from who it says its from. If the code is certified as being
from Gerald Murdock, for example, then it doesn't magically need
recertifying if I move from New York to LA or something. That same old
code is still code that was written (or at least vetted and endorsed) by
Gerald Murdock. It can't magically become virus-infested code from J.
Random Script Kiddie just because I moved house or got a different job.
My suspicion is that the renewal stuff is just to lock coders into
paying a Verisign yearly tax for life if they ever release code signed
with one of their certs into the wild, because if they ever stop paying,
that code magically reverts to unsigned (and nevermind that it's by then
proven to be safe, still of proven provenance, and so forth) and all its
users will be inconvenienced or worse.
My prescription: we need some more competing certificate-signing
companies. The barrier to entry for producing signed jars and similarly
should not be so high. Right now it's prohibitive for a hobbyist
programmer and onerous for a small business, thus favoring big
businesses like Microsoft.
Perhaps the whole concept of code signing, or even of personal identity,
needs rethinking too. Surely there's a mechanism by which someone could
get a cheap, for-life identity to use for such things, which would
resist attack? I don't notice many people having to pay over and over
again for their birth certificate, and most other kinds of ID tend to
have good reasons for needing renewal; for example, a driver's license
has a good reason in that a formerly good driver might go blind or
something. (Even then, there's a possible time lag between the condition
and the next renewal; renewal really isn't the best way to handle that
sort of thing IMO -- immediate conditional revocation is.)