Add telemetry for DH use in WebCrypto API
Categories
(Core :: DOM: Web Crypto, enhancement, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox68 | --- | fixed |
People
(Reporter: jcj, Assigned: jcj)
References
Details
(Whiteboard: [psm-assigned])
Attachments
(2 files)
Our WebCrypto implementation supports using DH as an algorithm in generateKey
, which is not one of the recognized algorithms in the published specification [0].
We should seek to remove it from Firefox, but before we do, it'd be good to gather some telemetry on whether it's used at all, even in its' non-standard form.
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 1•6 years ago
|
||
Our WebCrypto implementation supports using DH as an algorithm in generateKey,
which is not one of the recognized algorithms in the published specification [0].
We should seek to remove it from Firefox, but before we do, it'd be good to
gather some telemetry on whether it's used at all, even in its' non-standard
form.
Assignee | ||
Comment 2•6 years ago
|
||
This patch adds a new bucket ID for an existing telemetry histogram.
Comment 3•6 years ago
|
||
Assignee | ||
Comment 4•6 years ago
|
||
(In reply to Chris H-C :chutten from comment #3)
Comment on attachment 9054488 [details]
Data Collection ReviewOhhhhh, this is what you meant by "add a bucket".
This is fine without an update to the data collection review. The collection
was "counting which webcrypto algorithms are used" and covers this nicely.(( I will go through and review this if you'd like, but in that case you
should add this bug's number to the bug_numbers field in its definition in
Histograms.json ))
Awesome. Then we will proceed! Happy Friday, Chris. :)
Comment 6•6 years ago
|
||
Backed out changeset e356ebea641d (bug 1539578) for causing browser_WebCrypto_telemetry.js to perma fail
push that caused the failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&resultStatus=testfailed%2Cbusted%2Cexception&classifiedState=unclassified&revision=e356ebea641d36d5285b058b53b4ecc4e6eb3eff
backout: https://hg.mozilla.org/integration/autoland/rev/bd03a5a96bde1398d881c364c96cc06ec7d30de7
Assignee | ||
Comment 8•6 years ago
|
||
I've tried a variety of adjustments to the tests, with a bunch of try runs:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=22165f8e66bda2e72cc5a9ff7482e26b3a241705
https://treeherder.mozilla.org/#/jobs?repo=try&revision=56f6a10da278413cbea7f74c8b17765e19d1e64f
https://treeherder.mozilla.org/#/jobs?repo=try&revision=8fe021da45a1d58ba7d0588ec3b5ff4587e505ed
https://treeherder.mozilla.org/#/jobs?repo=try&revision=078a2c4444698017cbca2723641c91132ba1feca
https://treeherder.mozilla.org/#/jobs?repo=try&revision=c34cfc3d253945920c45329d103d2042da54a442
All of them fail to verify. I'm leaning towards landing this without adding the new dom/crypto/test/browser/browser_WebCrypto_telemetry.js
test.
Comment 10•6 years ago
|
||
Backed out changeset 37530e362d32 (Bug 1539578) for browser_WebCrypto_telemetry.js failures
Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=37530e362d329083cb3d1a57e2c735252a1b3b83&selectedJob=237704589
Backout link: https://hg.mozilla.org/integration/autoland/rev/576e8aa7f48ce4bc64a9fa64a7459b030fa8bcd4
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=237704589&repo=autoland&lineNumber=12976
[task 2019-04-02T21:36:03.478Z] 21:36:03 INFO - TEST-START | dom/crypto/test/browser/browser_WebCrypto_telemetry.js
[task 2019-04-02T21:36:03.522Z] 21:36:03 INFO - GECKO(4238) | ++DOMWINDOW == 2 (0x7fcd28c98400) [pid = 4357] [serial = 2] [outer = 0x7fcd29bbaf20]
[task 2019-04-02T21:36:03.768Z] 21:36:03 INFO - TEST-INFO | started process screentopng
[task 2019-04-02T21:36:04.696Z] 21:36:04 INFO - TEST-INFO | screentopng: exit 0
[task 2019-04-02T21:36:04.696Z] 21:36:04 INFO - Buffered messages logged at 21:36:03
[task 2019-04-02T21:36:04.696Z] 21:36:04 INFO - Entering test bound ecdh_key
[task 2019-04-02T21:36:04.696Z] 21:36:04 INFO - TEST-PASS | dom/crypto/test/browser/browser_WebCrypto_telemetry.js | Should be 16 bytes derived -
[task 2019-04-02T21:36:04.697Z] 21:36:04 INFO - Buffered messages finished
[task 2019-04-02T21:36:04.698Z] 21:36:04 INFO - TEST-UNEXPECTED-FAIL | dom/crypto/test/browser/browser_WebCrypto_telemetry.js | Should have found an entry for WEBCRYPTO_ALG at index 20 - false == true - JS frame :: resource://testing-common/TelemetryTestUtils.jsm :: assertHistogram :: line 242
[task 2019-04-02T21:36:04.699Z] 21:36:04 INFO - Stack trace:
[task 2019-04-02T21:36:04.699Z] 21:36:04 INFO - resource://testing-common/TelemetryTestUtils.jsm:assertHistogram:242
[task 2019-04-02T21:36:04.700Z] 21:36:04 INFO - chrome://mochitests/content/browser/dom/crypto/test/browser/browser_WebCrypto_telemetry.js:ecdh_key:23
[task 2019-04-02T21:36:04.700Z] 21:36:04 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1106
[task 2019-04-02T21:36:04.700Z] 21:36:04 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1134
[task 2019-04-02T21:36:04.700Z] 21:36:04 INFO - chrome://mochikit/content/browser-test.js:nextTest/<:995
[task 2019-04-02T21:36:04.701Z] 21:36:04 INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:803
[task 2019-04-02T21:36:04.702Z] 21:36:04 INFO - Leaving test bound ecdh_key
[task 2019-04-02T21:36:04.702Z] 21:36:04 INFO - Entering test bound dh_key
[task 2019-04-02T21:36:04.702Z] 21:36:04 INFO - TEST-PASS | dom/crypto/test/browser/browser_WebCrypto_telemetry.js | Should be 16 bytes derived -
[task 2019-04-02T21:36:04.703Z] 21:36:04 INFO - Not taking screenshot here: see the one that was previously logged
[task 2019-04-02T21:36:04.703Z] 21:36:04 INFO - TEST-UNEXPECTED-FAIL | dom/crypto/test/browser/browser_WebCrypto_telemetry.js | Should have found an entry for WEBCRYPTO_ALG at index 24 - false == true - JS frame :: resource://testing-common/TelemetryTestUtils.jsm :: assertHistogram :: line 242
[task 2019-04-02T21:36:04.703Z] 21:36:04 INFO - Stack trace:
[task 2019-04-02T21:36:04.704Z] 21:36:04 INFO - resource://testing-common/TelemetryTestUtils.jsm:assertHistogram:242
[task 2019-04-02T21:36:04.705Z] 21:36:04 INFO - chrome://mochitests/content/browser/dom/crypto/test/browser/browser_WebCrypto_telemetry.js:dh_key:40
[task 2019-04-02T21:36:04.705Z] 21:36:04 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1106
[task 2019-04-02T21:36:04.706Z] 21:36:04 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1134
[task 2019-04-02T21:36:04.706Z] 21:36:04 INFO - chrome://mochikit/content/browser-test.js:nextTest/<:995
[task 2019-04-02T21:36:04.707Z] 21:36:04 INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:803
[task 2019-04-02T21:36:04.708Z] 21:36:04 INFO - Leaving test bound dh_key
[task 2019-04-02T21:36:04.712Z] 21:36:04 INFO - GECKO(4238) | MEMORY STAT vsizeMaxContiguous not supported in this build configuration.
[task 2019-04-02T21:36:04.719Z] 21:36:04 INFO - GECKO(4238) | MEMORY STAT | vsize 1742MB | residentFast 332MB | heapAllocated 126MB
[task 2019-04-02T21:36:04.720Z] 21:36:04 INFO - TEST-OK | dom/crypto/test/browser/browser_WebCrypto_telemetry.js | took 516ms
Assignee | ||
Comment 11•6 years ago
|
||
I wish I had any idea why this doesn't work. Welp, disable tests-o-clock.
Comment 12•6 years ago
|
||
Comment 13•6 years ago
|
||
bugherder |
Description
•