Difference between revisions of "Auditor (voting pools)"

From Open Transactions
Jump to navigation Jump to search
m (Justusranvier moved page Audit Server (voting pools) to Auditor (voting pools): Update terminology)
m
Line 1: Line 1:
 
== Introduction ==
 
== Introduction ==
  
When an audit server operates as part of a [[Voting Pools|voting pool]], additional requirements apply on top of its existing functionality.
+
When an [[auditor]] operates as part of a [[Voting Pools|voting pool]], additional requirements apply on top of its existing functionality.
  
 
== Responsibilities ==
 
== Responsibilities ==
  
The audit server listens to the audit streams broadcast by all the [[Transaction Server (voting pools)|transaction servers]] and independently verifies them for correctness. The same stream which carries regular OT transaction information also contains the OT receipts for Bitcoin withdrawal requests from the pool. The audit server initiates or authorizes a blockchain withdrawal transaction via the wallet if and only if the audit for that service is clean (verified correct).
+
The auditor listens to the audit streams broadcast by all the [[Transaction Server (voting pools)|transaction servers]] and independently verifies them for correctness. The same stream which carries regular OT transaction information also contains the OT receipts for Bitcoin withdrawal requests from the pool. The auditor initiates or authorizes a blockchain withdrawal transaction via the wallet if and only if the audit for that service is clean (verified correct).
  
The audit server is responsible for maintaining an independent copy of the same deposit database as the transaction server. It also tracks withdrawals from the time at which it receives an OT receipt, containing a withdrawal request, until the corresponding Bitcoin transaction is fully confirmed on the blockchain.
+
The auditor is responsible for maintaining an independent copy of the same deposit database as the transaction server. It also tracks withdrawals from the time at which it receives an OT receipt, containing a withdrawal request, until the corresponding Bitcoin transaction is fully confirmed on the blockchain.
  
All messages which must travel between the transaction server and the blockchain wallet pass through the audit server.
+
All messages which must travel between the transaction server and the blockchain wallet pass through the auditor.
  
In order to create withdrawal transactions, wallets must be able to select inputs and change outputs, and calculate the minimum required transaction fee deterministically. In order to achieve determinism, the sequence of withdrawals must be globally consistent. Before sending any withdrawal request to the wallet, the audit servers are responsible for achieving consensus on a serialization order for withdrawals.
+
In order to create withdrawal transactions, wallets must be able to select inputs and change outputs, and calculate the minimum required transaction fee deterministically. In order to achieve determinism, the sequence of withdrawals must be globally consistent. Before sending any withdrawal request to the wallet, the auditors are responsible for achieving consensus on a serialization order for withdrawals.
  
 
[[Category:Voting Pool Components]]
 
[[Category:Voting Pool Components]]

Revision as of 13:51, 23 September 2014

Introduction

When an auditor operates as part of a voting pool, additional requirements apply on top of its existing functionality.

Responsibilities

The auditor listens to the audit streams broadcast by all the transaction servers and independently verifies them for correctness. The same stream which carries regular OT transaction information also contains the OT receipts for Bitcoin withdrawal requests from the pool. The auditor initiates or authorizes a blockchain withdrawal transaction via the wallet if and only if the audit for that service is clean (verified correct).

The auditor is responsible for maintaining an independent copy of the same deposit database as the transaction server. It also tracks withdrawals from the time at which it receives an OT receipt, containing a withdrawal request, until the corresponding Bitcoin transaction is fully confirmed on the blockchain.

All messages which must travel between the transaction server and the blockchain wallet pass through the auditor.

In order to create withdrawal transactions, wallets must be able to select inputs and change outputs, and calculate the minimum required transaction fee deterministically. In order to achieve determinism, the sequence of withdrawals must be globally consistent. Before sending any withdrawal request to the wallet, the auditors are responsible for achieving consensus on a serialization order for withdrawals.