Skip to content

Cosign - #586

Draft
shawnxie999 wants to merge 17 commits into
XRPLF:masterfrom
shawnxie999:cosign
Draft

Cosign#586
shawnxie999 wants to merge 17 commits into
XRPLF:masterfrom
shawnxie999:cosign

Conversation

@shawnxie999

Copy link
Copy Markdown
Collaborator

High Level Overview of Change

Context of Change

Type of Change

  • New XLS Draft
  • XLS Update (changes to an existing XLS)
  • XLS Status Change (e.g., Draft → Final, Draft → Stagnant)
  • Process/Meta (changes to CONTRIBUTING.md, XLS-1, templates, etc.)
  • Infrastructure (CI, workflows, scripts, website)
  • Documentation (README updates, typo fixes)

@github-actions

Copy link
Copy Markdown

⚠️ Self-Assigned XLS Number Warning

This PR adds a new XLS directory with a self-assigned number. XLS numbers should be assigned by the CI system using the XLS-draft-* naming convention.

Directory Self-Assigned Number
XLS-0103-onchain-cosigner 103

What to do

Please rename your directory to use the draft convention instead (e.g., XLS-draft-my-feature). An XLS number will be automatically assigned after a maintainer approves the PR.


This warning was automatically generated.


### 4.3. Ownership

**Owner:** `Owner` (the proposer).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have a question: As a Proposer, I can gobble up all the Ticket ledger-objects of any target account, at the cost of the TransactionProposal ledger-object-reserve.

While this is not causing any harm to any of the parties, I'd imagine this would be frustrating to the targeted accounts.

Does the design of the Cosigner prevent this aspect?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Proposer doesn't actually gobble up the Tickets from creating proposals - tickets are used only when the proposed transaction is actually submitted.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I understand. However, the TargetAccount is not consulted at the time of TransactionProposalCreate operation, which is initiated by the Proposer.

Suppose TargetAccount (TA) has created 10 tickets, which they intend to use for future Proposals. However, a Malicious-Proposer observes these available 10 tickets and decides to create 10 spurious TransactionProposal ledger-objects with the combination of

{ltTRANSACTION_PROPOSAL, indexHash(TA, 1)},
{ltTRANSACTION_PROPOSAL, indexHash(TA, 2)},
...
{ltTRANSACTION_PROPOSAL, indexHash(TA, 10)},

This prevents the Target-Account (TA) from being able to create genuine Proposals with its tickets. The lack of consent from the TA can lead to spurious TxnProposal objects on the ledger.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants