Also there is the issue of what to do about existing KDF keys that may have been structured-cloned with extractable=true. Could either:
(a) Fail deserialization
(b) De-serialize it as it was originally imported (extractable=true)
(c) De-serialize it and simply change the property to "extractable=false"
Both (b) and (c) are plausible solutions, with tradeoffs.
Leaning towards (b) since it is less magical, and there isn't any real threat from having extractable=true keys (other than it being nonsensical since they can't actually be exported).
* De-serialization for structure clone is not an issue (old keys will continue to work)
* However code that was calling importKey(extractable=true) will now break and need to be updated.
* We are hoping that this breakage is noticed and resolved during the dev/beta phase of testing (by web sites)
Comment 1 by eroman@chromium.org
, Jul 20 2016