Bug 129928 - WebCrypto should be available in workers
Summary: WebCrypto should be available in workers
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
Keywords: InRadar
: 157900 (view as bug list)
Depends on:
Blocks: 160883
  Show dependency treegraph
Reported: 2014-03-07 15:08 PST by Alexey Proskuryakov
Modified: 2016-12-01 14:04 PST (History)
7 users (show)

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Proskuryakov 2014-03-07 15:08:21 PST
SubtleCrypto algorithms just got exposed on workers.

Probably the most notable part of work here is to make structured clone work with CryptoKeys in workers.

Also from the WG resolution:

The previous blocking issues were:
1) Should we define sync interfaces
2) How do we handle multi-threaded Key access

We resolved point 1 by saying "No"
  - In the future, if we wish to do so, it can be as part of / extension to the Promise interface" (eg: imagine a promise.wait() method)
We resolved point 2 by removing the Key Storage (long ago), allowing Keys to be handled in IDB. 
  - All cryptographic state is handled within the Promise, which isn't transferrable between workers
  - Key tainting is no longer required, by virtue of moving the hashed attributes into key generation, so we don't have synchronization risks there
  - Regardless, by virtue of the Promises() interface, implementations can take their own approach to scheduling the work for promises
Comment 1 Alexey Proskuryakov 2016-05-19 19:15:34 PDT
*** Bug 157900 has been marked as a duplicate of this bug. ***
Comment 2 Radar WebKit Bug Importer 2016-07-14 15:19:24 PDT
Comment 3 Brent Fulgham 2016-11-16 11:22:57 PST
Is this already working with the new SubtleCrypto changes?
Comment 4 Jiewen Tan 2016-11-16 11:55:42 PST
(In reply to comment #3)
> Is this already working with the new SubtleCrypto changes?

I think so. However, I will prefer to close this bug when all methods are in place.