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 is open-source.
- Open-Transactions includes a client API, a working server, a cross-platform GUI 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" for maximum anonymity, using untraceable 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.
Is Open-Transactions centralized?
- No—quite the opposite. Open-Transactions is highly decentralized.
- Typical centralized servers have power over their users, but in OT, no server has power over the clients it serves, because:
- An OT server does not control user transactions—it merely notarizes them.
- Anyone can operate an OT server, and users can go to any OT server to notarize transactions. Thus OT servers compete with each other to attract users to use their notary services.
- Anyone can download an OT client, and use it to execute transactions on any OT server, or any group of OT servers.
- OT uses triple-signed receipts, so transaction parties have independent cryptographic proof of transactions and balances.
- OT servers do not store user assets. Rather, cryptocurrencies are stored in voting pools so the server can't steal them.
In every way, the user is in control, not the server—even when you're using servers you do not trust. These characteristics generate a federated network architecture—similar to the internet, and it has the same virtues as the internet—openness, decentralization, resilience, censorship-resistance, and user control.
The community behind OT is strongly committed to developing systems that give users full control over their own assets and information.
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.