This terminate our RicardianContract implemented in OA.
A contract offered by an issuer to holders.
The contract is hosted by the issuer, unalterable, and signed every time the Issuer issues a new asset,
For a valuable right held by holders, and managed by the issuer.
The right in this sample is a voting right for candidate A,B,C to redeem before 10 jan 2015.
Easily readable by people (like a contract on paper.)
The human readable contract is in the contract_url, but the JSON might be enough.
Readable by programs, (parsable like a database.)
The details of the vote are inside the AssetDefinitionFile, in JSON format, the authenticity of the contract is verified by software with the IssuerScript, and the hash in the ScriptPubKey.
The ScriptPubKey is signed when the issuer issues the asset, thus, also the hash of the contract, and by extension, the contract itself.
Carries the keys and server. informationIssuerScript is included in the contract
Allied with a unique and secure identifier.
The AssetId is defined by Hash(ScriptPubKey) that can’t be changed and is unique.
What is it for?
Without Ricardian Contract, it is easy for a malicious issuer to modify or repudiate an Asset Definition File.
Ricardian Contract enforces non-repudiation, make a contract unalterable, so it facilitate arbitration matter between redeemers and issuers.
Also, since the Asset Definition File can’t be changed, it becomes possible to save it on redeemer’s own storage, preventing rupture of access to the contract by a malicious issuer.