The Open-Transactions project is a collaborative effort to develop a robust, commercial-grade, fully-featured, free-software toolkit implementing the OTX protocol as well as a full-strength financial cryptography library, API, CLI, and prototype server. The project is managed by a worldwide community of volunteers that use the Internet to communicate, plan, and develop the Open-Transactions toolkit and its related documentation.
Financial cryptography means using using strong cryptographic techniques, such as digital signing to create non-repudiable contracts and encryption to create anonymous digital cash, to create secure financial instruments.
Open-Transactions implements financial instruments as Richardian Contracts, contracts which can be understood both by humans and manipulated by software.
All contracts in Open-Transactions use the same basics structure: all parties involved sign an agreement which is notarized by an independent third party witness. This technique is known as triple signed receipts.
This basic structure can be built upon to create many types of financial instruments.
Financial instruments are any representation of a financial agreement between two or more parties.
The simplest financial instrument is a deposit agreement. A custodian of some asset (legal tender, or maybe gold) stores it on behalf of a depositor and agrees to redeem it on demand when presented with proof of a valid claim on the asset.
Other types of financial instruments include securities, of which there can be many variations. A security is an instrument that entitles the bearer to a certain revenue stream, either because it represents a loan or perhaps because it represents equity in a business.
Financial instruments in Open-Transactions have an issuer, who creates the contracts and is responsible for fulfilling the terms, and one or more bearers. Financial instruments are liabilities of the issuer owed to the bearers.
Working with Financial Instruments
Open-Transactions is designed to provide the highest security possible for both the issuers and bearers of financial instruments. Servers in Open-Transactions act as notaries which can witness and confirm balances, but can not change them. Every party associated in a financial instrument can prove their balance to any other party and no party can alter the balance of any other party without their agreement.
Open-Transactions represents quantities of a given financial instrument as deposit agreements, which are signed by the bearer and a notary.
Portions of a balance my be transferred between users via several asset-independent transaction types, including:
- An atomic movement of funds from one account to a different account, like a bank account-to-account transfer.
- A payment which is not deducted from the sender's account until the recipient claims it.
- A payment which is deducted from the senders account at the time of creation.
- Anonymous cryptographic tokens which can be securely redeemed by the recipient without revealing who sent them.
- Market offers
- Open agreements to exchange a given quantity of one instrument type for a given quantity of another instrument type.
- About Open-Transactions
- Using the command-line tool
- Using the API
- Using the server
- Moneychanger (Qt-based Desktop Client)
This product includes software developed by Ben Laurie for use in the Lucre project.
Credit for the OT logo goes to: moltenmich
Mailing list and IRC
Mailing list: [email protected]
IRC channel: #opentransactions on irc.freenode.net