mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-05-28 09:46:50 +00:00

* Update constants * Add to transaction SigOpCount * Update mass calculation, and move it from InContext to InIsolation * Update block validation accordingly * Add SigOpCount validation during TransactionInContext * Remove checking of mass vs maxMassAcceptedByBlock from consensusStateManager * Update mining manager with latest changes * Add SigOpCount to MsgTx.Copy() * Fix initTestTransactionAcceptanceDataForClone * Fix all tests in transaction_equal_clone_test.go * Fix TestBlockMass * Fix tests in transactionvalidator package * Add SigOpCount to sighash * Fix TestPruningDepth * Fix problems in libkaspawalelt * Fix integration tests * Fix CalculateSignatureHash tests * Remove remaining places talking about block size * Add sanity check to checkBlockMass to make sure all transactions have their mass filled * always add own sigOpCount to sigHash * Update protowire/rpc.md * Start working on removing any remaining reference to block/tx size * Update rpc transaction verbose data to include mass rather then size * Convert verboseData and block size check to mass * Remove remaining usages of tx size in mempool * Move transactionEstimatedSerializedSize to transactionvalidator * Add PopulateMass to fakeRelayInvsContext * Move PopulateMass to beggining of ValidateAndInsertTransaction + fix in it * Assign mass a new number for backward-compatibility
61 lines
1.2 KiB
Protocol Buffer
61 lines
1.2 KiB
Protocol Buffer
syntax = "proto3";
|
|
package protoserialization;
|
|
|
|
option go_package = "github.com/kaspanet/kaspad/cmd/kaspawallet/libkaspawallet/serialization/protoserialization";
|
|
|
|
message PartiallySignedTransaction{
|
|
TransactionMessage tx = 1;
|
|
repeated PartiallySignedInput partiallySignedInputs = 2;
|
|
}
|
|
|
|
message PartiallySignedInput{
|
|
bytes redeemScript = 1;
|
|
TransactionOutput prevOutput = 2;
|
|
uint32 minimumSignatures = 3;
|
|
repeated PubKeySignaturePair pubKeySignaturePairs = 4;
|
|
string derivationPath = 5;
|
|
}
|
|
|
|
message PubKeySignaturePair{
|
|
string extendedPubKey = 1;
|
|
bytes signature = 2;
|
|
}
|
|
|
|
message SubnetworkId{
|
|
bytes bytes = 1;
|
|
}
|
|
|
|
message TransactionMessage{
|
|
uint32 version = 1;
|
|
repeated TransactionInput inputs = 2;
|
|
repeated TransactionOutput outputs = 3;
|
|
uint64 lockTime = 4;
|
|
SubnetworkId subnetworkId = 5;
|
|
uint64 gas = 6;
|
|
bytes payload = 8;
|
|
}
|
|
|
|
message TransactionInput{
|
|
Outpoint previousOutpoint = 1;
|
|
bytes signatureScript = 2;
|
|
uint64 sequence = 3;
|
|
uint32 sigOpCount = 4;
|
|
}
|
|
|
|
message Outpoint{
|
|
TransactionId transactionId = 1;
|
|
uint32 index = 2;
|
|
}
|
|
|
|
message TransactionId{
|
|
bytes bytes = 1;
|
|
}
|
|
message ScriptPublicKey {
|
|
bytes script = 1;
|
|
uint32 version = 2;
|
|
}
|
|
|
|
message TransactionOutput{
|
|
uint64 value = 1;
|
|
ScriptPublicKey scriptPublicKey = 2;
|
|
} |