ddk-messages 1.0.10

Structs and serialization for the Discreet Log Contract (DLC) protocol.
Documentation
{
  "protocolVersion": 1,
  "contractFlags": 0,
  "chainHash": "06226e46111a0b59caaf126043eb5bbf28c34f3a5e332a1fc7b2b73cf188910f",
  "temporaryContractId": "1212121212121212121212121212121212121212121212121212121212121212",
  "contractInfo": {
    "singleContractInfo": {
      "totalCollateral": 200000000,
      "contractInfo": {
        "contractDescriptor": {
          "numericOutcomeContractDescriptor": {
            "numDigits": 13,
            "payoutFunction": {
              "payoutFunctionPieces": [
                {
                  "endPoint": {
                    "eventOutcome": 0,
                    "outcomePayout": 0,
                    "extraPrecision": 0
                  },
                  "payoutCurvePiece": {
                    "polynomialPayoutCurvePiece": {
                      "payoutPoints": [
                        {
                          "eventOutcome": 3,
                          "outcomePayout": 100000000,
                          "extraPrecision": 0
                        }
                      ]
                    }
                  }
                },
                {
                  "endPoint": {
                    "eventOutcome": 5,
                    "outcomePayout": 200000000,
                    "extraPrecision": 0
                  },
                  "payoutCurvePiece": {
                    "polynomialPayoutCurvePiece": {
                      "payoutPoints": []
                    }
                  }
                }
              ],
              "lastEndpoint": {
                "eventOutcome": 8191,
                "outcomePayout": 200000000,
                "extraPrecision": 0
              }
            },
            "roundingIntervals": {
              "intervals": [
                {
                  "beginInterval": 0,
                  "roundingMod": 1
                }
              ]
            }
          }
        },
        "oracleInfo": {
          "multi": {
            "threshold": 2,
            "oracleAnnouncements": [
              {
                "announcementSignature": "73c2527f0f3e4242d1760c5a820f0105c82a4ff29f202f5ad8855fb18687f75b7033b04770045a6c9706f359c43bd20cfe5aac02758f4461fe60e0fa12b2bcf5",
                "oraclePublicKey": "06e18c3cd49e7e88d005939851fc0ddfa86a29cfc9558209eca5e7b215e4383d",
                "oracleEvent": {
                  "oracleNonces": [
                    "e3b3de00f863b7fb3b96b3a8adf467c62fb49e124ceb5fa6a1c79367bce29a44",
                    "defa8e0871fbd252932b55f86e93d0120d96637f31a473e9eb6035a485d4fe39",
                    "22bdc3445196e8a9fc265d7396114ad83dd2a24fdf7dd74712e819eb3a278253",
                    "321aff557147cc4183b1cbff165ffb6c78c7bc578bfcbe6c4c326cbd7a3c0454",
                    "bec7a3d6b29dd9ae657a058a81f179cf9289531cfae136a6436459a41830fc02",
                    "0f84f13c5b8503d5185075fa0bc71114a78f00584916690709cc76967e9b7c39",
                    "23eec1564021188145014b67b9e73c0c45e8258c151b3802075fc9cfc43efae5",
                    "5a9564e744944c4b3b8c26e4c05faaeaa2af848bbd72dd3fb603db70582031ca",
                    "8551dbebe5a6190e461289d1386a31afc284d240edc658524c20a198f8a74075",
                    "27e1d53c62bb8bc479098fbeb32c2377f10faea3f5765991db4139635b433c61",
                    "093950d372759aaf717b1d8720d7393963846c347f8ead33b4b5da94b38a323b",
                    "0c904b72cf75f5b4b08e4da246895eb6bbce4b03677f7cbe26764e3b99c22085",
                    "a2f7647133f8bd04d0a9395110b7d05aa59a36a2ed97313b6d5a20017a277e27"
                  ],
                  "eventMaturityEpoch": 1623133104,
                  "eventDescriptor": {
                    "digitDecompositionEvent": {
                      "base": 2,
                      "isSigned": false,
                      "unit": "sats/sec",
                      "precision": 0,
                      "nbDigits": 13
                    }
                  },
                  "eventId": "Test"
                }
              },
              {
                "announcementSignature": "73c2527f0f3e4242d1760c5a820f0105c82a4ff29f202f5ad8855fb18687f75b7033b04770045a6c9706f359c43bd20cfe5aac02758f4461fe60e0fa12b2bcf5",
                "oraclePublicKey": "06e18c3cd49e7e88d005939851fc0ddfa86a29cfc9558209eca5e7b215e4383d",
                "oracleEvent": {
                  "oracleNonces": [
                    "e3b3de00f863b7fb3b96b3a8adf467c62fb49e124ceb5fa6a1c79367bce29a44",
                    "defa8e0871fbd252932b55f86e93d0120d96637f31a473e9eb6035a485d4fe39",
                    "22bdc3445196e8a9fc265d7396114ad83dd2a24fdf7dd74712e819eb3a278253",
                    "321aff557147cc4183b1cbff165ffb6c78c7bc578bfcbe6c4c326cbd7a3c0454",
                    "bec7a3d6b29dd9ae657a058a81f179cf9289531cfae136a6436459a41830fc02",
                    "0f84f13c5b8503d5185075fa0bc71114a78f00584916690709cc76967e9b7c39",
                    "23eec1564021188145014b67b9e73c0c45e8258c151b3802075fc9cfc43efae5",
                    "5a9564e744944c4b3b8c26e4c05faaeaa2af848bbd72dd3fb603db70582031ca",
                    "8551dbebe5a6190e461289d1386a31afc284d240edc658524c20a198f8a74075",
                    "27e1d53c62bb8bc479098fbeb32c2377f10faea3f5765991db4139635b433c61",
                    "093950d372759aaf717b1d8720d7393963846c347f8ead33b4b5da94b38a323b",
                    "0c904b72cf75f5b4b08e4da246895eb6bbce4b03677f7cbe26764e3b99c22085",
                    "a2f7647133f8bd04d0a9395110b7d05aa59a36a2ed97313b6d5a20017a277e27"
                  ],
                  "eventMaturityEpoch": 1623133104,
                  "eventDescriptor": {
                    "digitDecompositionEvent": {
                      "base": 2,
                      "isSigned": false,
                      "unit": "sats/sec",
                      "precision": 0,
                      "nbDigits": 13
                    }
                  },
                  "eventId": "Test"
                }
              }
            ],
            "oracleParams": {
              "maxErrorExp": 2,
              "minFailExp": 1,
              "maximizeCoverage": false
            }
          }
        }
      }
    }
  },
  "fundingPubkey": "03c12e81303c79abf90a81b900aa3bd3ba8f47ef84c860cb314fc58d531a4d37c6",
  "payoutSpk": "0014f65cd6349437fe1f35cb27628f112d7885a5c644",
  "payoutSerialId": 4752179201940702056,
  "offerCollateral": 100000000,
  "fundingInputs": [
    {
      "inputSerialId": 3784123604127642354,
      "prevTx": "020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03520101ffffffff0200f2052a010000001600143d7834074191c93d7fc2c0a54a6d40efbbfe76430000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000",
      "prevTxVout": 0,
      "sequence": 4294967295,
      "maxWitnessLen": 107,
      "redeemScript": "",
      "dlcInput": {
        "localFundPubkey": "03c06fd4dee6502848b937840019effbab0856a227d984785367b079969471a6ed",
        "remoteFundPubkey": "03c12e81303c79abf90a81b900aa3bd3ba8f47ef84c860cb314fc58d531a4d37c6",
        "contractId": [
          0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
          0, 0, 0, 0, 0, 0, 0, 0, 0
        ]
      }
    }
  ],
  "changeSpk": "0014bf1b2161a681add692a326ace320bc4d8451ee81",
  "changeSerialId": 11805380369894479502,
  "fundOutputSerialId": 17245645112901355593,
  "feeRatePerVb": 2,
  "cetLocktime": 1623133104,
  "refundLocktime": 1623737904
}