* Extended public keys are stored on the server. This allow the server to easily check wallet's balances, send offline notifications to copayers, etc.
* During wallet creation a wallet secret is created by the initial copayer containg a private key. Following copayers need to proof the have the secret by signing their information with it to join the wallet. The secret should be shared using secured channels.
## All server responses are verified:
* Addresses, change addresses are derived independently and locally by the copayers from their local data.
* A copayer could join the wallet more that one time, and there is not mechanism to prevent it. Copayers should use the command 'confirm' to check others copayer's identity.
## In case the server is compromised
* It could be possible to see past (and future) wallet's transactions.
* It is not possible to spend wallet's funds, since private keys are never send or stored at the server
* It is not possible to tamper tx proposal or wallet addresses since they are computed and verified by copayers
* Copayers could switch to other server using their local data (see `recreate` command). In this case only the wallet extended data will be lost. (Decorated TX History, some copayer metadata, pending transaction proposals, transacion proposal metadata).
Exporting a wallet will expose copayer's extended private key and other's copayers extended public keys. This information is enough to extract funds from the wallet, given the required quorum is meet.