Skip to content

Commit

Permalink
docs: add section elaborating on signed transactions for chch/watcher
Browse files Browse the repository at this point in the history
  • Loading branch information
Piotr Dobaczewski Imapp committed Jan 7, 2020
1 parent 1c2e460 commit 401dff6
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions plasma_framework/docs/integration-docs/integration-doc.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,30 @@ The current implementation supports only the `Payment` transaction type.

Support for additional transaction types, such as ERC721, is reserved for future development.

### Signed transaction format (child chain and watcher only)
A note on encoding of signed transactions (transactions including witnesses) when handled in the [child chain and watcher implementations](github.com/omisego/elixir-omg).

Signed transactions are:

```
signedTransaction ::= [signature] rawTransaction
```

Where
```
signatures ::= bytes
rawTransaction ::= transaction
```

and are transferred and stored RLP-encoded.

Child chain and watcher both expect, for a signed transaction to be valid, that:
- every input corresponds to a signature by the respective output's owner (`outputGuard`)
- every signature is a 65-byte long binary

**NOTE** Only signature witnesses are operative now, because only payment transactions are supported.
A signature is a specific form of a `witness` and is called as such throughout this document.

## Payment transaction format
Payment transactions are used to transfer fungible tokens, such as ETH and ERC20 tokens. A Payment transaction's output is as described in [FungibleTokenOutputModel](../contracts/FungibleTokenOutputModel.md)

Expand Down

0 comments on commit 401dff6

Please sign in to comment.