Skip to content

Spurious 'Mismatched wrapping key algorithm' warning during encrypt #882

Description

@marythought

Summary

When calling createTDF or createZTDF without explicitly specifying wrappingKeyAlgorithm, the SDK logs a confusing warning:

Mismatched wrapping key algorithm: [rsa:2048] is not requested type, [undefined]

Encryption succeeds — the SDK correctly uses whatever algorithm the KAS provides — but the warning is misleading and alarming to users.

Cause

In tdf3/src/client/index.ts, wrappingKeyAlgorithm is destructured from the options object. When not provided, it's undefined. The comparison at line ~286:

if (kasPublicKey.algorithm !== wrappingKeyAlgorithm) {
    console.warn(`Mismatched wrapping key algorithm: [${kasPublicKey.algorithm}] is not requested type, [${wrappingKeyAlgorithm}]`);
}

...fires because "rsa:2048" !== undefined.

Suggested fix

Skip the warning when wrappingKeyAlgorithm is not specified:

if (wrappingKeyAlgorithm && kasPublicKey.algorithm !== wrappingKeyAlgorithm) {

Context

Found while testing the JS/TypeScript SDK quickstart guide (opentdf/docs#241).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions