What is the SilentVault Wallet Client?

The SilentVault client is an encrypted cloud wallet used to contain and manipulate digital vouchers representing various assets such as bitcoin, silver, or dollars. It uses the Voucher-Safe network technology to perform payments between wallets, and to store wallet data in the cloud. Voucher-Safe is built on extensions to the XMPP protocol, so the client can be thought of as a special-purpose Jabber chat client.

The SilentVault wallet client also supports an escrow-backed private exchange, the SVX, through which users can anonymously trade vouchers for different asset types, e.g. dollars for bitcoins. This trading platform is built right into the wallet, on a separate tab.

SilentVault wallets provide a new level of privacy, security, convenience, and inter-operability between asset types, in an easily downloaded, user-friendly client with published source code. The client is presently available both as a plugin deployment inside a full-blown Jabber chat client, and also as a single-purpose signed Java webstart application. A port to Android is planned.

A SilentVault wallet resembles wallets for Bitcoin or altcoins in that there is no account or user identity associated with it, merely a public/private key pair and an identifying address. The wallet contains vouchers, which are cryptographically signed digital bearer certificates analogous to coins. It also holds receipts for incoming or outgoing payments, which provide a downloadable (and deletable) transaction history. There are however some important differences between a SilentVault wallet and a regular crypto-coin wallet, which we will examine here:

  • Vouchers represent assets, they are not the assets themselves. While this is obvious for gold or silver, which are not digital assets, the distinction is also important for bitcoin, even though it is digital. Silent Bitcoin vouchers (asset type SBC) circulate against bitcoins stored in the Silent Bitcoin Issuer's bitcoin wallet(s). Unlike coins, vouchers are always destroyed and replaced with fresh vouchers in every transaction. This provides "off blockchain" circulation of bitcoins, with no footprints left on the blockchain. (Hence the descriptive designation "silent.") Bitcoins can be spent to purchase SBC vouchers, or SBC vouchers redeemed for bitcoins, via the SVX tab. (These in/out transactions are of course recorded on the public blockchain.) The same situation exists for Silent Litecoin (SLC), which at present is the only altcoin supported.

  • Because wallet-to-wallet transactions are verified and cleared by a Voucher Publisher, transactions are settled in seconds, with no need to wait for confirmations. This brings one of the benefits of a centralized payment system to a decentralized currency, but without the usual drawbacks. The Publisher does have access to essentially the same information that is published on the Bitcoin blockchain, as to the wallet hashes involved and the amount transferred. However, this data is not published to other users, and there is no public transaction ledger. Moreover the wallet clients never communicate directly with the Publisher, but only through one or more client proxy gateways using end-to-end encryption. The Publisher therefore sees no IP addresses or other identifying information for the users.

  • The SilentVault wallet is heterogeneous: vouchers for bitcoins, US dollars, euros, silver, litecoins, gold, and potentially any number of other assets, can all co-exist simultaneously in the same wallet. This is analogous to a physical cash wallet in which bills of different national currencies can exist side by side. This prevents users from needing to manage many separate single-currency clients. The only requirement is that each supported asset type must have an Issuer within the Voucher Publisher's network. These Issuers exist independent of one another, and separate from the Publisher, and are responsible for their own governance and exchange policies.

  • Wallet-to-wallet payments are a two-step process: the payer sends, and the payee must receive. The payer can specify from 1 to 7 days for the payee to pick up their voucher. If the payee does not do so, the payment becomes reclaimable by the payer. This makes it impossible to lose value by spending it to a "dead wallet." Also, since all wallet public keys are stored on a public key server, it is possible to close out a wallet. Closing a wallet revokes its key, which thereafter makes it impossible for other wallets to spend to it. Bitcoin wallets lack this capability.

  • Receipts are also generated on a p2p basis. That is, a payee wallet sends back a receipt to the payer signed with its private key. This receipt provides non-repudiable proof that the payee received the payment. This approach makes it unnecessary for the clearing Publisher to sign off on transactions with its own key. The Publisher merely signs individual vouchers, so that wallets can establish their validity, and prevents double spending by communicating with the voucher's Issuer to confirm its amount, serial number, and circulation status.

  • Unlike other "thin client" wallets which interface to accounts, a SilentVault wallet encrypts all of its data that is stored in the cloud. When the owner logs in, an encrypted data block containing the wallet's key pair and hashes is retrieved, and decrypted only on the user's own computer, using the wallet's passphrase. This unlocks the keys for use by the client. All vouchers and receipts contained in the wallet are encrypted using the wallet's public key. This means that the cloud servers storing the data, and their operators, do not need to be trusted. Also, it would be pointless to hack into them, as no unencrypted data is stored on those servers. Messages for payments or other operations routed to the Voucher Publisher are likewise encrypted with each party's public key, so that the servers in between cannot read the data. Cloud servers and gateways thus have no idea which wallets are logging in, what they are doing, or what any stored records may contain or to whom they belong. Even the Publisher cannot view or alter vouchers stored in a wallet, except for those vouchers decrypted and handed to it by a wallet client in the context of a particular transaction. (This implies that the Publisher cannot determine a wallet's balance.)

  • Bitcoin and altcoin wallets are frequently used in conjunction with websites, where trading or exchanging takes place. This means that either a separate browser must also be used (which is inconvenient), or else the wallet client must exist as a plugin within the browser (which is insecure). The Silent-Vault wallet is the first to take the opposite approach: build the marketplace into the wallet as an extension. This is possible because the communications are based on top of XMPP, which is extensible, rather than HTTP, which generally is not.

  • Bitcoin and altcoin payments are paid for by means of transaction fees offered to miners. Voucher payments are paid for by means of usage tokens, purchased in advance using vouchers of the same type. (The client automatically manages purchases using a configurable token lot size.) The value of tokens are set by their respective Issuers, and vary with the market prices of the underlying asset. Transaction fees are split between payer and payee. On average it costs around 50 US cents to make a payment, and less than 20 cents to receive one. (SBC and SLC transactions cost a bit more.) Because this fee is independent of the payment amount, it will be seen that the network is not suited for use with micro-payments, but compares very favorably with most other international mechanisms. Payment tokens are distributed to the Publisher and other network components, providing them with an economic incentive to support the system. (An aspect missing from TOR and BitTorrent, for example, with respect to running exit nodes and seeds.) Also, since spent tokens are redeemable for vouchers, the implication is that the server operators are paid in the same asset types offered to the wallet users, and in proportion to the popularity of the asset.

The current version of the SilentVault clients can be obtained from this site via the Downloads menu above. The recommended client is the Spark-based client. You can also use the pre-built WebApp, or build one of the clients yourself from source. (The WebApp is much simpler to build.)

You will need Java-7 or better. The WebApp will install (if you permit) an icon on your desktop, which will automatically download future updates.

Note that, in the Connection menu, you can set one of five OFS Gateways, as follows:

ofs.silentvault.com - the live network (real wallets @vouchi.com) {the default}
pks.vm.to - the live network (real wallets @vouchi.com) {alternate path} - the live network (real wallets @vouchi.com) {alternate path}
sds.vm.to - the live network (real wallets @vouchi.com) {alternate path}
ofs.voucher-safe.org - the test network (test wallets @voucher-safe.org)

Using the test network, you can create a wallet and issue your own vouchers for faux SBC, SLC, and SSV (Silent Silver). Please note that no real value circulates on the @voucher-safe.org network; it is analogous to the Bitcoin TestNet.