---
title: "Update enterprise ECDSA MPC challenge"
method: PUT
path: "/api/v2/enterprise/{enterpriseId}/tssconfig/ecdsa/challenge"
tags: ["Enterprise"]
---

# Update enterprise ECDSA MPC challenge

`PUT /api/v2/enterprise/{enterpriseId}/tssconfig/ecdsa/challenge`

This api is used to upload a new ECDSA challenge for the enterprise. This will replace the existing challenge if one exists.

## Path parameters

- `enterpriseId` string, required

## Request body

- object
  - `enterprise` UpdateEnterpriseChallenge, required
    - `ntilde` string, required — Range proof challenge value.
    - `h1` string, required — Range proof challenge value.
    - `h2` string, required — Range proof challenge value.
    - `verifiers` object, required
      - `adminSignature` string, required — The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge.
    - `paillierBlumProof` PaillierBlumProof — The paillierBlumProof value is only required when creating the initial config.
      - `w` string, required — The w value of the Paillier Blum proof
      - `x` string[], required
      - `z` string[], required
    - `ntildeProof` NtildeProof — The ntildeProof value is only required when creating the initial config.
      - `h1WrtH2` object, required
        - `alpha` string[], required
        - `t` string[], required
      - `h2WrtH1` object, required
        - `alpha` string[], required
        - `t` string[], required
  - `bitgoNitroHsm` UpdateBitgoChallenge, required
    - `verifiers` object, required
      - `adminSignature` string, required — The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge.
  - `bitgoInstitutionalHsm` UpdateBitgoChallenge, required
    - `verifiers` object, required
      - `adminSignature` string, required — The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge.

## Response `200`

OK

- ChallengePartyConfig
  - `enterprise` TssConfigPartyChallenge, required
    - `verifiers` ChallengeVerifiers, required
      - `adminSignature` string, required — The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge.
      - `bitgoNitroHsmSignature` string
      - `bitgoInstitutionalHsmSignature` string
    - `paillierBlumProof` PaillierBlumProof — The paillierBlumProof value is only required when creating the initial config.
      - `w` string, required — The w value of the Paillier Blum proof
      - `x` string[], required
      - `z` string[], required
    - `ntildeProof` NtildeProof — The ntildeProof value is only required when creating the initial config.
      - `h1WrtH2` object, required
        - `alpha` string[], required
        - `t` string[], required
      - `h2WrtH1` object, required
        - `alpha` string[], required
        - `t` string[], required
    - `ntilde` string, required — Range proof challenge value
    - `h1` string, required — Range proof challenge value
    - `h2` string, required — Range proof challenge value
  - `bitgoNitroHsm` TssConfigPartyChallenge, required
    - `verifiers` ChallengeVerifiers, required
      - `adminSignature` string, required — The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge.
      - `bitgoNitroHsmSignature` string
      - `bitgoInstitutionalHsmSignature` string
    - `paillierBlumProof` PaillierBlumProof — The paillierBlumProof value is only required when creating the initial config.
      - `w` string, required — The w value of the Paillier Blum proof
      - `x` string[], required
      - `z` string[], required
    - `ntildeProof` NtildeProof — The ntildeProof value is only required when creating the initial config.
      - `h1WrtH2` object, required
        - `alpha` string[], required
        - `t` string[], required
      - `h2WrtH1` object, required
        - `alpha` string[], required
        - `t` string[], required
    - `ntilde` string, required — Range proof challenge value
    - `h1` string, required — Range proof challenge value
    - `h2` string, required — Range proof challenge value
  - `bitgoInstitutionalHsm` TssConfigPartyChallenge, required
    - `verifiers` ChallengeVerifiers, required
      - `adminSignature` string, required — The admin signature is a hex string. Users should verify that the admin signature matches for the range proof challenge.
      - `bitgoNitroHsmSignature` string
      - `bitgoInstitutionalHsmSignature` string
    - `paillierBlumProof` PaillierBlumProof — The paillierBlumProof value is only required when creating the initial config.
      - `w` string, required — The w value of the Paillier Blum proof
      - `x` string[], required
      - `z` string[], required
    - `ntildeProof` NtildeProof — The ntildeProof value is only required when creating the initial config.
      - `h1WrtH2` object, required
        - `alpha` string[], required
        - `t` string[], required
      - `h2WrtH1` object, required
        - `alpha` string[], required
        - `t` string[], required
    - `ntilde` string, required — Range proof challenge value
    - `h1` string, required — Range proof challenge value
    - `h2` string, required — Range proof challenge value
  - `createdBy` string, required — The ID of the user who created and verified the config

## Other responses

- `400` — Bad Request
- `404` — Not Found

---

[API](https://skmtc.net/bitgo/apis/bitgo-api.md) · [All operations](https://skmtc.net/bitgo/apis/bitgo-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bitgo/bitgo-api/revisions/e445c15e5bee/schema)
