About the Open-Transactions project.
Financial cryptography software.
What is Open-Transactions?
- Open-Transactions is an easy-to-use, financial crypto, digital cash and transaction library.
- Open-Transactions includes a client API, a working server, a GUI test wallet (in Java) and a command-line wallet utility.
- Open-Transactions features: a large variety of financial instruments, markets, basket currencies, unforgeable account balances, digital cash, destruction of account history, Ricardian contracts, Smart Contracts (scriptable clauses), and more.
What does it do?
- Open-Transactions allows users to issue and manipulate digital assets.
- Any issuer can sign and distribute new currency contracts in order to create new digital asset types.
- Users may create many pseudonyms (public keys), each of which may own asset accounts of various types, on OT servers.
- Users can operate "cash-only" (without accounts) for maximum anonymity, using unlinkable digital cash.
- Users can transfer digital assets securely and provably, with receipts signed by all parties.
- Even an OT server cannot change balances, or forge transactions--since it cannot forge your signature on your receipt.
- Open-Transactions supports a range of financial instruments such as account transfer, cheques and vouchers (aka "cashier's cheques" or "banker's cheques"), in addition to cash.
- These instruments are all analogous to the same financial instruments that we all use at normal banks today. Everyone already has an intuitive understanding of these financial instruments, because we use them regularly in our normal daily lives.
Markets, Basket Currencies, and Smart Contracts
- Open-Transactions also implements higher-level, contract-based transactions such as payment plans and markets with trades.
- The markets on Open-Transactions support market orders, limit orders, fill-or-kill orders, day orders, stop orders, and stop limits, just like trading on a real market.
- Basket currencies are also supported, as well as payment plans (recurring payments.)
- Smart contracts: Multi-party agreements with scriptable clauses... including hooks, callbacks, internal state, etc.
- Client-side scripting:
!/usr/bin/env ot The entire (mostly) high and low level OT API is available within your scripts.
Triple Signed Receipts
- All of this is accomplished in such a way that all parties are able to prove, at all times, which transactions have cleared and which instruments are authorized, without having to store their entire transaction history, but instead by merely keeping the last signed receipt.
- Without the special mechanism that makes this possible, all parties would otherwise be forced to store all receipts forever.
- Nyms and Asset Types have consistent IDs across all OT servers, since the ID is formed by hashing the relevant contract or public key.
In More Detail...
The server itself is a transaction processor in the cypherpunk tradition. In more detail:
The intention is for this software to be integrated as many places as possible... Games, digital cash wallets, distributed data stores, secure voip apps, anonymous bit torrent networks, mixnets, remailers, nym servers, etc. There are many other potential uses.