content: {
    "$defs": {
      "byte_array": {
        "items": {
          "maximum": 255,
          "minimum": 0,
          "type": "integer"
        },
        "type": "array"
      }
    },
    "$id": "https://raw.githubusercontent.com/lowRISC/opentitan/master/sw/host/cryptotest/testvectors/data/schemas/ecdh_schema.json",
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "description": "A list of testvectors for ECDH Key Derivation testing",
    "items": {
      "additionalProperties": false,
      "properties": {
        "algorithm": {
          "description": "Should be ecdh",
          "enum": [
            "ecdh"
          ],
          "type": "string"
        },
        "curve": {
          "description": "Curve type",
          "enum": [
            "p256",
            "p384"
          ],
          "type": "string"
        },
        "d": {
          "$ref": "#/$defs/byte_array",
          "description": "Private key d, in big-endian two's-complement notation"
        },
        "operation": {
          "description": "ECDH operation",
          "enum": [
            "derive"
          ],
          "type": "string"
        },
        "qx": {
          "$ref": "#/$defs/byte_array",
          "description": "Peer's public key x coordinate"
        },
        "qy": {
          "$ref": "#/$defs/byte_array",
          "description": "Peer's public key y coordinate"
        },
        "result": {
          "description": "Derivation result",
          "type": "boolean"
        },
        "test_case_id": {
          "description": "Test case ID from test vector source -- used for debugging",
          "type": "integer"
        },
        "vendor": {
          "description": "Test vector vendor name",
          "type": "string"
        },
        "z": {
          "$ref": "#/$defs/byte_array",
          "description": "Shared key Z"
        }
      },
      "type": "object"
    },
    "minItems": 1,
    "title": "Cryptotest ECDH Key Derivation Test Vector",
    "type": "array"
  }