Well, if you're using system perl (and you trust the operating system in the first place), than you can use the system perl provided key as a first resource. Otherwise, that depends on how you obtained perl.

Clearly, we're always reaching a point of no-trust. This is an unavoidable "chicken and egg" problem, because cryptography doesn't magically create trust, despite what many folks out there say about this. Making such assumptions might cause more trouble than not using cryptography at all.

For it to work we must know the complexities and limits involved.

Trust depends on the physical world, and cannot be virtually provided. So, however we use cryptography, it must be backed by physical bounds. That's why we have some reasonable trust on integrated circuit cards, while (hopefully) not so much on a credit card "security code", which could be somehow leaked.

That said, you should only trust a key if:

If such a trust chain cannot be created, then you must be willing to accept some level of risk. Some measures can be taken to reduce that risk, but it'll exist nonethless. One such measure is to disseminate your public key over many channels, so that all of them would have to be compromised by an attacker. Again, I'll mention OpenBSD with signify on this:

... If you have either the chicken or the egg, you're all set. But what about people with neither?

There are no key servers for signify. No web of trust. Just keys. The good news is the keys are pretty small. As demonstrated. We can stick them just about everywhere, and we do. They're on the web site, they're on twitter, they're on the top side of CD. 56 base64 characters. You can read it out loud over the phone in under a minute. Wide dispersion makes it harder and harder to intercept all the ways you may get the key and increases the risk of detection should anybody try some funny business.

Hopefully, key rotation will help on that. If you can't verify the next key, then at least you know you had a compromised key. If you follow its trail (how you obtained it), you might help to strenghten the key distribution process.

return on_success() or die;


In reply to Re^5: cpan/cpanm integrity and authenticy checks concerns by hrcerq
in thread cpan/cpanm integrity and authenticy checks concerns by hrcerq

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.