grafana/k6 · error

modulus (n) is required

Error message

modulus (n) is required

What it means

Error "modulus (n) is required" thrown in grafana/k6.

Source

Thrown at internal/js/modules/k6/webcrypto/jwk.go:313

type rsaJWK struct {
	Kty string `json:"kty"`          // Key Type
	N   string `json:"n"`            // Modulus
	E   string `json:"e"`            // Exponent
	D   string `json:"d,omitempty"`  // Private exponent
	P   string `json:"p,omitempty"`  // First prime factor
	Q   string `json:"q,omitempty"`  // Second prime factor
	Dp  string `json:"dp,omitempty"` // Exponent1
	Dq  string `json:"dq,omitempty"` // Exponent2
	Qi  string `json:"qi,omitempty"` // Coefficient
}

func (jwk *rsaJWK) validate() error {
	if jwk.Kty != "RSA" {
		return fmt.Errorf("invalid key type: %s", jwk.Kty)
	}

	if jwk.N == "" {
		return errors.New("modulus (n) is required")
	}

	if jwk.E == "" {
		return errors.New("exponent (e) is required")
	}

	// TODO: consider validating the other fields in future
	return nil
}

func importRSAJWK(jsonKeyData []byte) (any, CryptoKeyType, int, error) {
	var jwk rsaJWK
	if err := json.Unmarshal(jsonKeyData, &jwk); err != nil {
		return nil, UnknownCryptoKeyType, 0, fmt.Errorf("failed to parse input as RSA JWK key: %w", err)
	}

	if err := jwk.validate(); err != nil {
		return nil, UnknownCryptoKeyType, 0, fmt.Errorf("invalid RSA JWK key: %w", err)

View on GitHub (pinned to 93accf6570)

When it happens

Trigger: Thrown at internal/js/modules/k6/webcrypto/jwk.go:313 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of grafana/k6@93accf6570 (2026-08-15). Data as JSON: /api/errors/54376863a20663f8. Report an issue: GitHub.