<div dir="ltr">On 13 June 2014 04:08, Red <<a href="mailto:redwire@riseup.net">redwire@riseup.net</a>> wrote:<br>><br>> If we were to serve a separate file containing the signature over the<br>> raw bytes of the update.json file, wouldn't we also need to provide some<br>

> assurance that the contents of that file haven't been falsified, i.e.,<br>> have a hash available or something, as well? I might not understand the<br>> security requirements in this case well enough, but I get the impression<br>

> that this would effectively lead us to an infinite loop of fetching a<br>> file with some verification data, and then needing a new file to provide<br>> proof of the validity of that data and so on.<br>><br>

> As I understand our requirements, appending the signature to the first<br>> line of update.json might work out, since it'll be a signature of the<br>> content to follow and shouldn't be tamper-able.<br>

<br><div>As far as I understand, there is no difference. I am not a crypo expert, but here is my understanding of the process:</div><div>1) An active attacker can MITM the connection and falsify ANY data being sent, unless the server certificate is pinned (which it is not, by deafult).</div>

<div>2) The signature is verified against EFF public key hardcoded into the extension. The verification will fail if either the data or the signature is tampered with (unless the attacker can modify the hardcoded public key, but then the user is screwed anyway).</div>

<div><br></div><div>Best regards,</div><div>Maxim Nazarenko</div></div>