Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(27)

Issue 789733009: Implement HKDF for WebCrypto (blink-side) (Closed)

Created:
6 years ago by nharper
Modified:
5 years, 11 months ago
CC:
arv+blink, blink-reviews, blink-reviews-bindings_chromium.org, dglazkov+blink
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Add support for HKDF WebCryptoAlgorithm This is for implementing the HKDF algorithm for WebCrypto (https://www.w3.org/Bugs/Public/show_bug.cgi?id=27425). The main parts of this are creating a new key type for KDFs, and adding a new class WebCryptoHkdfParams. It also includes various bits of plumbing including parsing HKDF params and serialization/deserialization of HKDF keys. https://codereview.chromium.org/803173010/ is the chromium-side CL, and https://codereview.chromium.org/822083003/ are the layout tests. BUG=399095 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=188247

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : rebase #

Total comments: 20

Patch Set 4 : #

Patch Set 5 : add serialization/deserialization #

Total comments: 10

Patch Set 6 : remove unnecessary param, clean up comment, re-write description #

Total comments: 5

Patch Set 7 : iff -> if #

Patch Set 8 : KdfKeyTag -> NoParamsKeyTag and associated semantic changes #

Total comments: 4

Patch Set 9 : move ASSERT(), add break #

Unified diffs Side-by-side diffs Delta from patch set Stats (+157 lines, -5 lines) Patch
M Source/bindings/modules/v8/ScriptValueSerializerForModules.h View 1 2 3 4 5 6 7 2 chunks +2 lines, -0 lines 0 comments Download
M Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp View 1 2 3 4 5 6 7 8 8 chunks +31 lines, -2 lines 0 comments Download
M Source/modules/crypto/NormalizeAlgorithm.cpp View 1 2 3 4 5 3 chunks +35 lines, -0 lines 0 comments Download
M Source/platform/exported/WebCryptoAlgorithm.cpp View 1 2 3 4 4 chunks +49 lines, -1 line 0 comments Download
M Source/platform/exported/WebCryptoKeyAlgorithm.cpp View 1 2 3 4 5 6 7 2 chunks +9 lines, -1 line 0 comments Download
M public/platform/WebCryptoAlgorithm.h View 1 2 3 4 5 6 4 chunks +7 lines, -1 line 0 comments Download
M public/platform/WebCryptoAlgorithmParams.h View 1 2 3 1 chunk +23 lines, -0 lines 0 comments Download
M public/platform/WebCryptoKeyAlgorithm.h View 1 2 3 4 5 6 7 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 27 (6 generated)
nharper
6 years ago (2014-12-23 20:36:46 UTC) #2
eroman
Also can you link to the accompanying LayoutTests (which will land later). https://codereview.chromium.org/789733009/diff/40001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp ...
6 years ago (2014-12-23 20:58:24 UTC) #3
eroman
https://codereview.chromium.org/789733009/diff/40001/Source/platform/exported/WebCryptoKeyAlgorithm.cpp File Source/platform/exported/WebCryptoKeyAlgorithm.cpp (right): https://codereview.chromium.org/789733009/diff/40001/Source/platform/exported/WebCryptoKeyAlgorithm.cpp#newcode98 Source/platform/exported/WebCryptoKeyAlgorithm.cpp:98: return WebCryptoKeyAlgorithm(id, nullptr); On 2014/12/23 20:58:24, eroman wrote: > ...
6 years ago (2014-12-23 22:03:54 UTC) #4
nharper
https://codereview.chromium.org/803173010 is the chromium CL to implement hkdf and https://codereview.chromium.org/822083003 is the blink CL with ...
6 years ago (2014-12-23 22:46:59 UTC) #5
eroman
https://codereview.chromium.org/789733009/diff/40001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp (right): https://codereview.chromium.org/789733009/diff/40001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp#newcode126 Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp:126: ASSERT_NOT_REACHED(); On 2014/12/23 22:46:59, nharper wrote: > On 2014/12/23 ...
6 years ago (2014-12-23 23:34:29 UTC) #6
eroman
https://codereview.chromium.org/789733009/diff/40001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp (right): https://codereview.chromium.org/789733009/diff/40001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp#newcode126 Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp:126: ASSERT_NOT_REACHED(); On 2014/12/23 23:34:29, eroman wrote: > On 2014/12/23 ...
5 years, 12 months ago (2014-12-24 00:38:28 UTC) #7
nharper
https://codereview.chromium.org/789733009/diff/40001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp (right): https://codereview.chromium.org/789733009/diff/40001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp#newcode126 Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp:126: ASSERT_NOT_REACHED(); On 2014/12/24 00:38:27, eroman wrote: > On 2014/12/23 ...
5 years, 11 months ago (2015-01-06 21:53:00 UTC) #8
eroman
Please provide more detail in the change description on what this is implementing. Link to ...
5 years, 11 months ago (2015-01-07 00:40:31 UTC) #9
nharper
https://codereview.chromium.org/789733009/diff/80001/Source/modules/crypto/NormalizeAlgorithm.cpp File Source/modules/crypto/NormalizeAlgorithm.cpp (right): https://codereview.chromium.org/789733009/diff/80001/Source/modules/crypto/NormalizeAlgorithm.cpp#newcode780 Source/modules/crypto/NormalizeAlgorithm.cpp:780: // The WebCrypto spec hasn't been updated yet to ...
5 years, 11 months ago (2015-01-08 00:58:40 UTC) #10
eroman
FYI I don't expect to re-review this until tomorrow. Cheers
5 years, 11 months ago (2015-01-08 01:16:09 UTC) #11
eroman
looksgood after my naming nits https://codereview.chromium.org/789733009/diff/100001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp (right): https://codereview.chromium.org/789733009/diff/100001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp#newcode128 Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp:128: doWriteKdfKey(key); Given the switch ...
5 years, 11 months ago (2015-01-09 03:07:29 UTC) #12
nharper
https://codereview.chromium.org/789733009/diff/100001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp (right): https://codereview.chromium.org/789733009/diff/100001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp#newcode128 Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp:128: doWriteKdfKey(key); On 2015/01/09 03:07:29, eroman wrote: > Given the ...
5 years, 11 months ago (2015-01-09 04:45:52 UTC) #13
nharper
https://codereview.chromium.org/789733009/diff/100001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp (right): https://codereview.chromium.org/789733009/diff/100001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp#newcode128 Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp:128: doWriteKdfKey(key); On 2015/01/09 04:45:52, nharper wrote: > On 2015/01/09 ...
5 years, 11 months ago (2015-01-09 21:21:09 UTC) #14
eroman
Please link to the corresponding LayoutTests in the CL description. LGTM https://codereview.chromium.org/789733009/diff/140001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp (right): ...
5 years, 11 months ago (2015-01-09 22:12:46 UTC) #15
nharper
https://codereview.chromium.org/789733009/diff/140001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp File Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp (right): https://codereview.chromium.org/789733009/diff/140001/Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp#newcode127 Source/bindings/modules/v8/ScriptValueSerializerForModules.cpp:127: ASSERT(WebCryptoAlgorithm::isKdf(key.algorithm().id())); On 2015/01/09 22:12:45, eroman wrote: > Can you ...
5 years, 11 months ago (2015-01-09 22:29:02 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/789733009/160001
5 years, 11 months ago (2015-01-09 22:29:28 UTC) #18
commit-bot: I haz the power
Try jobs failed on following builders: blink_presubmit on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/blink_presubmit/builds/23872)
5 years, 11 months ago (2015-01-09 22:38:15 UTC) #20
nharper
Adding jochen@ to review for OWNERS approval.
5 years, 11 months ago (2015-01-09 22:54:44 UTC) #23
jochen (gone - plz use gerrit)
lgtm
5 years, 11 months ago (2015-01-12 12:17:44 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/789733009/160001
5 years, 11 months ago (2015-01-12 20:04:17 UTC) #26
commit-bot: I haz the power
5 years, 11 months ago (2015-01-12 21:10:04 UTC) #27
Message was sent while issue was closed.
Committed patchset #9 (id:160001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=188247

Powered by Google App Engine
This is Rietveld 408576698