Skip to content

Commit 39d37b2

Browse files
committed
Several important changes
- actually, Firefox's btoa base64 encoder seemed Crazily Broken. - add a "testing" about:config var, which sends the fingerprints even though they aren't strictly necessary
1 parent 9d4efc3 commit 39d37b2

2 files changed

Lines changed: 10 additions & 3 deletions

File tree

src/components/ssl-observatory.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -281,15 +281,18 @@ SSLObservatory.prototype = {
281281
for (var i = 0; i < certArray.length; i++) {
282282
var len = new Object();
283283
var derData = certArray[i].getRawDER(len);
284-
base64Certs.push(browserWindow.btoa(derData));
285-
//this.log(DBUG, "encoding is"+ browserWindow.btoa(derData));
284+
//var encoded = browserWindow.btoa(derData); // seems to not be a real base 64 encoding!
285+
base64Certs.push(this.base64_encode(derData, false, false));
286286
}
287287

288288
// TODO: Server ip??
289289
var reqParams = [];
290290
reqParams.push("domain="+domain);
291291
reqParams.push("server_ip=-1");
292-
//reqParams.push("fplist="+this.compatJSON.encode(fps));
292+
if (this.prefs.getBoolPref("extensions.https_everywhere._observatory_prefs.testing")) {
293+
// The server can compute these, but they're a nice test suite item!
294+
reqParams.push("fplist="+this.compatJSON.encode(fps));
295+
}
293296
reqParams.push("certlist="+this.compatJSON.encode(base64Certs));
294297
// XXX: Should we indicate if this was a wifi-triggered asn fetch vs
295298
// the less reliable offline/online notification-triggered fetch?

src/defaults/preferences/preferences.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
// SSl Observatory preferences
22
pref("extensions.https_everywhere._observatory_prefs.enabled",true);
33

4+
// "testing" currently means send unecessary fingerprints and other test-suite
5+
// type stuff
6+
pref("extensions.https_everywhere._observatory_prefs.testing",false);
7+
48
pref("extensions.https_everywhere._observatory_prefs.use_tor_proxy",true);
59
pref("extensions.https_everywhere._observatory_prefs.submit_during_tor",true);
610
pref("extensions.https_everywhere._observatory_prefs.submit_during_nontor",true);

0 commit comments

Comments
 (0)