Skip to content

Secure against interception of RevealSecret messages #473

@hackaugusto

Description

@hackaugusto

Problem Definition

For a mediated transfer ABC, where B is the attacker, B is choosing the expiration for the lock BC and is in a position to choose a low expiration time, given that C receives the BC mediated transfer and send a SecretRequest to A, followed by the SecretReveal message from A to C, if B is in a position to intercept the message he can learn the secret while making sure that C won't, that means B can wait for the BC lock to expire and then unlock the AB lock.

Note: Assuming that an attacker can intercept and drop messages and that we don't have guaranteed delivery of messages.

Solution

Possible solutions:

  1. Use transport provided E2E encryption
  2. Encrypt the secret with C's public key
  3. Allow C to choose the secret (or part of it, related Provide a receipt for payments #368 )
  4. Enforce constant lock expiration through out the path

Tasklist

  • Implement a test case where the attack is simulated
    • Implement one fix

Related

Provide a receipt for payments #368
Add Ack authentication #44

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions