<div><span style="color: rgb(160, 160, 168); ">On Tuesday, November 20, 2012 at 2:17 PM, M.-A. Lemburg wrote:</span></div>
                <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
                    <span><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); ">I wonder how systems like Debian or the various RPM-based ones</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); ">deal with the problem.</div></span>
                 
                 
                 
                 
                </blockquote>
                 
                <div>
                    OS packages are a little different since they use one key to sign
                </div><div>the entire repository. They tend to use a rolling key so that they</div><div>can expire keys overtime without having to deal with forcing everyone</div><div>to find out how to get a key over insecure means.</div><div><br></div><div>If they needed to revoke a key there should be other keys that</div><div>can sign the package, and if they needed to revoke all the keys</div><div>then they'd need to start over for the original trust distribution. I'm</div><div>not aware if they have any contingencies in place for "need to fix</div><div>the entire trust database".</div><div><br></div><div>Since there are fewer keys they can also make better assertions</div><div>about how secure those keys are. Since every author has a key</div><div>it's important to be able to revoke them because the chances</div><div>of any one individual author needing to do so is larger than that</div><div>of Debian.</div><div><br></div><div>As a side note, this type of system also needs to know who</div><div>is allowed to sign for what particular package names. This data</div><div>must be communicated securely, and it must require authorization</div><div>from the existing keys to confirm the additional (or allow the user</div><div>to force it to override). This cannot simply be a flag in PyPI.</div>