This present invention is in the technology of processes for negotiating and implementing agreements, contracts and transactions, and pertains more particularly to a new type of smart contracts and a system for integrating parties involved in such a contract type and its related transactions into a cooperative and secure system, and for distributing this new type of contracts across business and consumer network.
Legal contracts have had a slow evolution in the last few thousand years. The technology in producing, managing and executing contracts continues to be antiquated. The traditional contract system of creating, reviewing, negotiating, signing, executing, publishing and storing agreements and contracts is time-consuming and wasteful. Contracts presented in the structured data format, which is the majority of how so called “digital” contracts are being handled, makes contracts hard to track, verify, find terms within, audit or transfer. In addition this hinders advancement in the contract world by not being able to adequately apply technologies such as artificial intelligence and analytics.
In the 1990's, a new type of contract called smart contract was born. A smart contract is a computer protocol intended to digitally facilitate, verify, or enforce the negotiation or performance of a contract. Smart contracts allow performance of credible transactions without third parties. These transactions are trackable and irreversible. In addition, cryptography used by smart contracts ensures security—an important requirement for contract management in a digitized world.
Although smart contracts in the conventional art undoubtedly provide some distinct benefits over traditional contract technology, they fall short by not being presented in a way that is human-readable. Human readability is a foremost attribute of any contract technology because a contract is a legally binding agreement which governs rights and duties of the parties to the agreement. Without human readability, applications of smart contracts is very limited.
There was an attempt to combine cryptography with contracts by Ian Grigg, a renowned financial cryptographer, when he invented the Ricardian Contract in 1996. The Ricardian contract is a method of recording a document as a contract at law, and linking it securely to other systems, such as accounting, for the contract as an issuance of value. According to Grigg, “a Ricardian contract can be defined as a single document that is a) a contract offered by an issuer to holders, b) for a valuable right held by holders, and managed by the issuer, c) easily readable by people (like a contract on paper), d) readable by computer programs (parsable like a database), e) digitally signed, f) carries keys and server information, and g) is allied with a unique and secure identifier.”
There are important differences between Smart Contracts and Ricardian Contracts meaning that it's possible to implement a Ricardian contract as a smart contract, but not every Ricardian contract is a smart contract. Accordingly, not any smart contract is a Ricardian contract. Smart contracts refer to a type of digital agreement that has already been agreed upon and can be executed automatically. Meanwhile, a Ricardian contract follows the contract model which records the so-called ‘intentions’ and ‘actions’ of a particular contract, whether it has been executed or not. Using the hashes referring to external docs, Ricardian contracts can refer to code as well.”
Benefits provided by Ricardian Contracts include security, transparency, efficiency and trust which is lacking in conventional contract technology, as well as human readability which is missing in conventional smart contracts.
However, Ricardian Contract is unknown by the general public and has only been attempted by a small number of projects for implementation. One of the main challenges of the Ricardian Contract is its lack of usability, consumability and transferability. Like many great inventions, if there is no application, nor ecosystem built around them, they are very quickly forgotten or abandoned.
Therefore, what is clearly needed are:
In one embodiment of the invention a system is provided for creating, negotiating, and ratifying smart contracts, the system comprising an Internet-connected server executing software (SW) on a processor, the SW providing a web presence with interactive interfaces, a data repository coupled to the server, storing user information, contract templates, and completed contracts, a port to a blockchain service, a registration interface for registering users, each user sat registration issued a digital blockchain wallet for either a personal account or a business account, and a communication service whereby registered users communicate. A registered user initiates a smart contract either by manually authoring the smart contract by an on-line editor, or by accessing a smart contract template from the data repository, the new contract, submitted to blockchain, being associated with a Mithra token defining all contract terms, and wherein, with the issuing token in place, the contract issuer engages one or more counterparties to join the smart contract, a counterparty, by active engagement creating a counter token defining rights and obligations under the contract for the counterparty, and, through the communication service the initiator and the counterparties negotiate contract terms to agreement, and the contract is signed and published to either a public store or a private store.
In one embodiment the contract is both human-readable and machine readable. Also, in one embodiment a counterparty is invited to join a contract by a direct email or text invitation from the initiator. Also, in one embodiment the issuer assigns user permissions to each invited counterparty, including but not limited to administration privileges, view only, edit and/or comment, or sign only. And in one embodiment, upon receiving the invitation via email or SMS, the invitee signs into the system, or registers, if a first-time user.
In one embodiment the initiator and a counterparty negotiate contract terms via a chat communication system, with terms codified in the respective Mithra tokens. Also, in one embodiment the initiator and the counterparty each are provided a human-readable version of the smart contract in a side-by-side presentation, such that each party may propose changes in terms, which may be reviewed and accepted or countered by the other party, until agreement is reached. In one embodiment the system further comprises a search function whereby users may search templates in the data repository to select a template for initiating a contract. In one embodiment the system further comprises a search function whereby a user may search published contracts and join a selected contract by submitting an offer or a proposal. In one embodiment, upon a user selecting a contract in a result of a search, a submission form is presented to the user, whereby the user may enter terms, which are entered in the smart contract, and a negotiation is initiated between the issuer and the submitting user. And in one embodiment the submitting user is issued a counter Mithra token defining rights and obligations for that user, who is now admitted to the negotiation process.
In another aspect of the invention a method for creating, negotiating, and ratifying smart contracts comprising initiating a smart contract either by manually authoring by an on-line editor operating by execution of software on a processor of an Internet-connected server, providing a system of interactive interfaces, or by accessing a smart contract template from a data repository coupled to the server, associating the new smart contract with a Mithra token defining all contract terms, by submitting the contract to a blockchain service, engaging a counterparty to join the smart contract, the counterparty issued a counter Mithra token defining rights and obligations for the counterparty, negotiating smart contract terms to agreement by the initiator and the counterparty using on-line communication service, and signing and publishing the smart contract to a public store or a private store.
In one embodiment the method comprises providing the contract as both human-readable and machine readable. Also in one embodiment the method comprises inviting a counterparty to join a contract by a direct email or text invitation from the initiator. In one embodiment the method comprises assigning user permissions to each invited counterparty, including but not limited to administration privileges, view only, edit and/or comment, or sign only.
In one embodiment of the method, upon receiving the invitation via email or SMS, signing into the system or registering by the invitee. Also, in one embodiment the method comprises negotiating contract terms between the initiator and a counterparty via a chat communication system, with terms codified in the respective Mithra tokens. In one embodiment the method comprises providing in an interactive a human-readable version of the smart contract in a side-by-side presentation for the initiator and the counterparty, such that each party may propose changes in terms, which may be reviewed and accepted or countered by the other party, until agreement is reached.
In one embodiment the method further comprises a user searching by a search function for templates in the data repository to select a template for initiating a contract. In one embodiment the method further a user searching by a search function for published contracts and joining a selected contract by submitting an offer or a proposal. In one embodiment the method comprises resenting a submission form to a user whereby the user may enter terms, which are entered in the smart contract, and a negotiation is initiated between the issuer and the submitting user. And in one embodiment the method comprises issuing a counter Mithra token defining rights and obligations for the submitting user, who is now admitted to the negotiation process.
The present invention comprises two major components:
1. A new type of smart contract referred to herein as a Mithra Contract; and
2. A system for integrating parties involved in Mithra Contract and its related transactions into a cooperative and secure system, and for distributing this new type of contracts across business and consumer network.
Unlike Ricardian Contract, the human readability of a Mithra Contract is achieved by making a World Wide Web (WWW) representation of each MC, creating a unique shareable link to the said MC, verifiable by its hash, as shown in
Mithra Contract further tokenizes a contract by representing each term or set of terms defined in a contract between contractual parties on a special form of token called Mithra Token (MT). Each party involved in a contract, not only contractual parties, but also legal representatives, power of attorney, agents and other authorized parties, will hold a Mithra Token with its respective permissions and rights. In
A complete set of terms, represented by Mithra Tokens, is grouped together to form a Mithra Group (MG). Therefore, a Mithra Contract can comprise an infinite number of Mithra Groups and each Group can comprise an infinite number of Mithra Tokens until it reaches finality triggered by either a signature from all required parties or when contract terms match between a single pair of tokens in the group. Since each MT is a set of rights and obligations, it represents an asset that can have a value and thus the owner of a MT can charge or pay money for changing the MT's ownership. In
To further define, a contract governs the rights and obligations of the parties to the agreement. A right on one side of a contract is equivalent to a correlative obligation on the other side, and vice versa. Therefore, terms represented by a Mithra Token can sometimes be further categorized as a right, obligation or other. This is particularly useful when a Mithra Token carries an intrinsic value for which the rights can be transferred or monetized. A Mithra Contract comprises the entire set of negotiated right and obligations represented by the tokens and associated with persons.
Consequently, the Mithra Token becomes a fully tradable token on its own, that can be transferred to another party along with all its rights and obligations regarding the Mithra Group in the Mithra Contract.
The Mithra platform is made up of a range of novel technology components that are integrated and highly consumable by individuals and businesses alike creating an ecosystem for Mithra Contracts.
A third-party server 204 is meant to represent a substantial plurality of servers and domains in the Internet network with which the Mithra domain may interact is performance of services for registered members. One such service may be a connection to a blockchain service, such as Ethereum™, for example.
Users 205(1-n) are users who connect with the Mithra domain via computers, such as pad devices, laptop computers, tower systems, and integrated systems having internal LANs. Connection is typically through one or another sort of Internet Service Provider (ISP) 207. Users 206(1-n) represent users connecting through mobile devices, such as smartphones and the like, via wireless networks, through for example network hubs 208.
In one embodiment users, through computerized devices executing a web browser are enabled to interact with the Mithra domain. In an alternative embodiment, each user platform may download and execute an application that communicates with a compatible application executing at the Mithra domain.
Exemplary interactive interfaces are described below for a variety of purposes.
To participate in the system, a user needs to first register or sign in by either importing a seed phrase assigned to the user's existing wallet or having a new Blockchain wallet created by the system. The system assigns a highly secure private key (seed phrase) to a new wallet address enabling the participation and accessing the new wallet. The system also provides helpful tips on how to safe guide the private key.
A user wallet will be used for two main purposes:
Due to the enterprise nature of the system and its business and consumer target market, the system must overcome the existing distributed ledger model which lacks meaningful structure and permission management to carry out agreement, contract and transaction processes. For example, as a business user, contracts and transactions created by the user belongs to his respective organization, not to him personally.
Therefore, in one embodiment of the system, two user account types are provided-one business account, one personal account.
The interface shown is operable for a new user to register, and to provide necessary information to the system to instantiate the registering person or business as a registered user. Input fields are provided in area 303 of the interface for such as name, address, email, and so on as is common in this sort of interface. Other functionality related to registration is provided by a menu list at the near left in area 303, including, for example, personal information, Email and connected accounts, Security, Notifications, and so on. These are links that redirect the user to other interfaces.
At time of registration to the Mithra ecosystem, a user is asked to create a business account or a personal account. If a new user chooses a business account, the system will issue a new wallet for the user instead of allowing the user to use an existing wallet even though it may be compatible. The purpose is that a business account associated wallet will remain within the business and will be used solely for the business. An individual can hold two system accounts with two separate wallets, one for his business and one for his personal use.
Business and personal account types share several common functions, and both contain:
For a business account, a few additional fields will be required, such as User role, which may be Administrator, user or other roles required. Also, an Organization Unit Identifier (searchable from a registered organization list)—users from the same organization should have the same value in this field.
The first person to create a business account for a specific organization fills in the details of an organization such as its name, address, contact details and industry. This person is automatically granted an Administrator role. In addition, the system will automatically generate an organization unit identifier.
An admin user is given a purposeful admin dashboard to perform a set of operations. This dashboard is a set of interactive interfaces each providing as needed input fields and links to other interfaces, the functionality of which is described herein, without explicitly illustrating individual fields and links in the interfaces.
The system does not allow a wallet access associated with a revoked account. However, there is a possibility that a revoked user will try to port the wallet to another compatible blockchain network to use. A global system switch is in place to ensure a disabled business wallet does not regain access to any Mithra system associated data.
Templates in Mithra Contracts are, as the term implies, structured digital documents that define the nature of a term, a contract or a project. As an example, to create a contract for the sale of a business building, the nature of the contract is that there will be certain fixed language, and a number of variables. The facts that the transaction represented by the sale of the building is a sale, with rights transferring from one party or organization to another party or organization is fixed. Who the parties to the transaction are, the sale price, the means and terms of payment, these are all variables to be negotiated and finalized in the evolution of the contract. But once such a contract is finalized, a template may be created that defines the fixed elements and the location of the variable elements. One who develops such a contract may own the template and may charge for use of the template by another to create a contract for sale of a different building, in which the variables to be negotiated may be the same.
The Mithra ecosystem is heavily driven by template usage. There are three hierarchical levels of templates available, namely term template, contract template and project template.
Each project template is made up of one or multiple contract templates, which is made up of one or multiple term templates.
Templates can be defined within a hierarchy:
All templates are reusable, searchable and analyzable. Breaking templates down to the term level enables digital terms to be reused in multiple contracts and contract templates and makes templates searchable via keywords and/or other search criteria. More importantly, terms may be analyzed and may become valuable to contract users. For example, the system now has a way to analyze how many times one particular term has been used across the ecosystem. This enables contract users to gain insights such as if a term is a standard term used by many users, or a customized term to which they need to pay a special attention. The system marks a green traffic light for standard terms and a red light for terms that require careful review.
A template can be created via a user's library by simply adding a new template. Alternatively, it can be generated via the saving-a-template feature when a project, contract or term is created or updated.
All templates will appear in a user's library dashboard which enables a user to organize in various categories such as Recent Files, Favorites, Downloads, Archive and Published.
A template can be saved in a user's library on the dashboard, and organized in various categories such as Recent Files, Favorites, Downloads, Archive and Published.
A template owner can choose to either publish a template to a private setting or to a public store. Once it is made available to the public, the template becomes searchable in the template marketplace on the Mithra platform, downloadable and usable by other users. The template owner can decide whether or not a payment is required for a public user to download his template. The system facilitates a payment process for a template purchase.
A user can choose any appropriate payment method. On the Mithra platform, ShelterZoom Mithra Coin (SMC) utility tokens are typically used for a template trade. Therefore, SMCs will be paid from a buyer's wallet to a template seller's wallet.
In a scenario where a template is published to a private store, all users who have access to the private store can also download and use the template. For example, it is common for a company or an association to publish a template for their respective employees or members to use their organization standard templates. This will significantly reduce template replication across an organization. Once a digital template is created once, all authorized users can download from the same source without re-creating it by each individual.
Those privately published templates are often free for members to use but can also require a payment from their template users.
A template user is also able to subscribe to template notifications. For instance, when a new template is made available to their subscribed industry or category, or a new version is published for a template the user has downloaded, she will receive a system notification. In addition, a contract template is one of the main starting points to initiate a contract creation.
Project Management, sometimes referred as Transaction Management in the system, is the starting point of a Mithra Contract creation. A project can be any type of projects or transactions such as a procurement project, a real estate transaction, a financial transaction or a supply chain project.
From the Project Summary dashboard, a user can:
All projects in a user's wallet are presented in this dashboard in Card View, in area 604, with each project in a small, card-size icon. In this example only a title is shown, but in some embodiments considerably more information, status, such as signed or not, dates, and the like, may be displayed as well.
Each icon is a link to the project indicated, and selection of one project redirects the user to other interfaces where the project may be further managed, as is described further below.
In an alternative embodiment the Project Summary Dashboard is presented in a Line View, with each project represented in a line rather than as a card. The functionality is the same.
Once a user selects an existing project, the user is redirected to a Project Detail dashboard.
This dashboard is also used to initiation the creation of a new contract for a new project or an existing project.
Contract management is a critically important feature of the invention in many embodiments.
The contract process starts with the creation of a new contract based on either a pre-defined template or an entirely new contract. In the latter scenario, the contract author can use an inline editor to add terms manually one by one, or to find appropriate terms via searching a term template library and inserting them into a contract.
Upon completion, the contract author can submit the contract to blockchain which in turn generates a smart contract with an issuing token (Mithra Token) that carries all the defined terms.
Publishing a Contract—Public Store vs. Private Store
The contract issuer can choose to publish a contract either to a public store or to a private store. Contracts published to a public store are available at the global search area so that everyone can browse those contracts and have an opportunity to join a contract. Contracts held in a private store are not searchable by the public. Users can only join a contract by invitation.
With the issuing token in place, the contract issuer can now engage a counterparty or multiple counterparties to join the contract according to the publication method:
1. Invite a counterparty via a private invite
Mithra Contracts, fully digitized and tokenized contracts, give rise to an unprecedented capability in contract negotiation. By holding respective contract terms on a Mithra Token, each party can fully participate in real time contract negotiation and view counter terms as they are presented. With distributed ledger technology, parties can be assured that all the changes are verifiable and tamper-proof. This procedure creates trust among all contract participants. In addition, the system provides a powerful side-by-side review dashboard illustrated as
In a situation, e.g., an RFC or a property sale, where multiple offers are received from participants, the system allows a contract issuer to shortlist a number of offers so that the issuer can concentrate his negotiation on those selected offers. He will further choose the contract winner by signing the smart contract.
Once all terms are matched between an issuing token and its counter token carried by their respective holders, the smart contract can be signed and executed.
A Mithra Token can carry rights and obligations of an asset. Under certain circumstances, the token can be transferred from one party to another so that all the rights and obligations that are inherent within the token would be transferred along. For instance, before closing a property sale, a buyer's financial situation changes suddenly due to loss of job. He can no longer afford to buy the property. However, he is able to find a new buyer who is willing to carry over all rights and obligations, represented by the Mithra Token, held by the buyer. With seller's permission, the buyer can simply transfer the token to the new buyer, thus transferring the token ownership.
Due to Mithra Contact being presented in a human readable format via a www representation, this new type of smart contract becomes shareable via a unique and verifiable link. This inventive smart contract link in which a smart contract is represented by a link can now be privately shared within a group of people, or publically shared across social media or a broader network, based on the visibility setting of a contract.
Mithra Contract architecture has opened a door for contract search and match in a way that has never been done before.
Due to the searchable nature of Mithra Contracts, coupled with the information searchability controlled by contract issuers, a user can now perform a search via searching the open information of Mithra Contract web representation. Mithra Contract issuers will be in full control of their information and will be able to control whether such information should be open, partially open, or completely hidden.
Each participant carries permissions and rights at various levels to enable certain operations such as contract edit, review, sign, attach document or transfer token. Rights are divided into two groups:
Once a user who has default rights to create any object produces this object, the rights from the Default are copied to the Rights to this object for this user.
In the case when the address of the user to whom we want to grant default rights is not known, Default Rights for All (Everyone) are granted.
Each field in each structure is a specific right to a specific object.
The below example shows permissions for a Mithra Contract Rights Structure
permissions [0] grantRevoke—the right to grant/revoke rights to actions with this MC
permissions [1] viewing—the right to view data in this MC
permissions [2] editMetadata—right to edit metadata in this MC
permissions [3] createMG—right to create MG in this MC
permissions [4] editMGDefaultRights—the right to edit the default rights for MGs created in this MC
permissions [5] deactivateReactivate—right to delete/restore this MC
permissions [6] attachDocument—the right to add documents to this MC
The user can obtain rights either by creating an object or by being granted rights by another user who is entitled to grant rights.
To grant rights to an object, the initiator of the transaction must himself have the right grantRevoke to this object.
(!) Msg.sender of the transaction can grant only those rights to a specific object that itself possesses. That is, if the initiator of the transaction does not have any right, then he cannot grant rights to other users.
In one embodiment, the dashboards provide enabled participants communication channels, record management and/or a simplified method to create a contract.
Participants can chat via three different types of chat methods:
The chat function described above is supported by messaging chat, voice chat and video chat. However, for the legally binding agreement part of the chat, all media must be converted to text.
The system provides several other important functions to support the contract process.
There are a number of common underlying capabilities shared between Template Management and Contract Management or Project Management. They are:
Due to Mithra Contracts being presented in a human readable format via a www representation, this new type of smart contract becomes shareable via a unique and verifiable link. This inventive smart contract link in which a smart contract is represented by a link can now be privately shared within a group of people, or publicly shared across social media or a broader network, based on the visibility setting of a contract.
The skilled person, reading and understanding the many and varied descriptions in this specification will also understand that all of the descriptions of specific embodiments are exemplary, and simply representative of many other descriptions not provided that may fall within the scope of the inventions enabled herein. The scope of the invention is limited only by the claims.
The present application claims priority to provisional application 62/738,848, filed Sep. 28, 2018, and all disclosure of the parent document is incorporated at least by reference.
Number | Date | Country | |
---|---|---|---|
62738848 | Sep 2018 | US |