Accepting CryptoKey
in node:crypto
APIs
#55293
Labels
crypto
Issues and PRs related to the crypto subsystem.
discuss
Issues opened for discussions and feedbacks.
never-stale
Mark issue so that it is never considered stale
webcrypto
The following APIs accept a
CryptoKey
instance and process the operation despite the restrictions put forth on theCryptoKey
instance (e.g. algorithm, usages, extractable)extractable
)This list is according to the docs, but i suspect it's possible that hkdf and pbkdf2 allow this too.
This issue is to discuss a way forward to deal with this issues.
KeyObject.from
#37240 attempted to do something about KeyObject.from but i think the outcome would not solve the issues above.
I believe that converting key representations is not an issue so long as the more restrictive key representation's properties are upheld.
We can take a drastic stance and deprecate / in due time remove KeyObject.from entirely, or make KeyObject.from respect the
extractable
property and duly document that once the key is converted the CryptoKey restrictions are not upheld anymore. I'd much rather see the latter.Another possible approach would be to disable KeyObject.export on keys that came from non-extractable CryptoKey.
APIs accepting CryptoKey but ignoring its parameters.
We could deprecate the use of CryptoKey in these APIs entirely or emulate WebCryptoAPI behaviour and check the CryptoKey usages and algorithm slots, either way this would be a doc-only deprecation at first, then --pending-deprecation, runtime deprecation, throw behaviour at the end.
The text was updated successfully, but these errors were encountered: