System and method of enforcing and monitoring contracts

There is provided a method of enforcing a contract for the access of content, using a blockchain comprising a unique identifier of the content, a one or more digital contracts for the use of the content, and a public key. Tokens are generated with a private key associated with the public key and used to provide access to the content. A chain of ownership can be identified from the digital contracts on the blockchain.

TECHNICAL FIELD

The following relates to computer-implemented systems and methods for monitoring and validating transactions.

BACKGROUND

Intellectual property (“IP”), such as copyrights, trademarks, and patents, may be transferred or licensed by a creator of the intellectual property to one or more licensees. For example, media properties such as video files or music may be licensed by the creator for use in a multimedia production produced by a licensee. The transfers and/or licenses have terms and conditions set out in a paper contract, and every agreement between the creator and one licensee may be written out in a separate contract. The licensees may integrate the intellectual property into a product or project or sell the intellectual property directly to other companies or consumers, requiring additional terms and conditions to be set out in contracts between the licensees and the other companies or consumers.

Various challenges can arise when using paper contracts to enforce the terms and conditions for the use of intellectual property. For example, it is common for the terms and conditions describing the allowable use of one piece of intellectual property to be set out in a plurality of different contracts, as would be the case when the creator of the intellectual property licenses it to a plurality of distributors, where each distributor sublicenses the intellectual property to one or more other sub-distributors. Validation of the transfer and ownership may be time consuming, expensive, and/or prone to failure if the intellectual property is licensed and sublicensed to many parties, as the plurality of different contracts are not linked and/or in communication. As such, the creator of the intellectual property may be unable to effectively monitor and enforce the sublicenses between the distributors and sub-distributors or the agreements between sub-distributors and end users. Additionally, it may be difficult for parties to respond to changes to contracts or licenses between other parties. For example, if a license between the creator and a distributor is cancelled prematurely, a sub-distributor sublicensing the intellectual property from the distributor may continue to use the intellectual property if they are unaware that the license has been prematurely cancelled.

A licensee licensing the intellectual property from the creator may further license the intellectual property to other parties. As such, it can be difficult to track and prove the full ownership of the intellectual property and the chain of licenses between the creator and an end user, as the chain of ownership may be fragmented between multiple contracts between the creator, licensee, sub-licensees, and the end user. It may similarly be difficult for a party to access information regarding the terms and conditions agreed to by other parties.

Different parties may be required to abide by different terms and/or conditions, complicating the creator's ability to monitor the use of the intellectual property and assert ownership rights to enforce the correct terms and conditions. As such, the chain of ownership may be rendered unenforceable, and the ability of the creator to monetize the intellectual property may be limited.

In existing blockchain platforms, one may have difficulty or be unable to validate that a traditional contract exists, create a chain of ownership between contract to contract, validate the chain of contracts as valid, send money that is filtered by a series of contracts among multiple participants in a single transaction, or have an off-chain transaction token.

It is an object of the following to address at least one of the above-noted disadvantages.

SUMMARY

In a first aspect, there is provided a system for enforcing a contract for the use of intellectual property comprising: content stored on or accessible to a content server; an interface for an end user; and a blockchain on a distributed ledger; wherein: the blockchain comprises a unique identifier of the content, one or more digital contracts for the use of the content, and a public key; one or more tokens generated with a private key associated with the public key, the one or more tokens being provided by the end user to the content server; the content server is configured to validate the one or more tokens provided by the end user and provide access to the content; the content server is configured to identify a chain of ownership from the blockchain; and the blockchain is configured to transfer payment from the end user to parties in the chain of ownership.

In another aspect, there is provided a method of enforcing a contract for the use of intellectual property, the method comprising: receiving content at a content server and assigning a unique identifier to the content; uploading the unique identifier to a blockchain comprising a distributed ledger; uploading the contract between a licensor and a licensee to the blockchain; generating a public key and a private key; uploading the public key to the blockchain; providing the licensee with the private key; receiving a transaction token that has been generated using the private key; and enabling access to the content using the transaction token.

In yet another aspect, there is provided a computer readable medium storing instructions for performing the method.

In yet another aspect, the token is added to the blockchain after being used to access the content.

In yet another aspect, the one or more digital contracts encode the terms and conditions of one or more first written contracts between a creator of the content and one or more licensees.

In yet another aspect, the one or more digital contracts also encode the terms and conditions of a written contract between the one or more licensees and one or more sub-licensees.

In yet another aspect, the one or more licensees generate the one or more tokens

In yet another aspect, the one or more digital contracts specify different prices for different distribution rights and different geographic regions.

DETAILED DESCRIPTION

To monitor and monetize the use of intellectual property; a system comprising a blockchain network, distributed ledger, or other decentralized network can be utilized, in which the blockchain network is configured to implement an electronic contract or other computer protocol that allows the self-execution, verification, and enforcement of a written legal contract through the encoding of a set of contractual clauses set out in the written contract into the blockchain.

Turning now to the figures,FIG. 1provides an example of a computing environment for implementing an intellectual property (“IP”) access control system10in which a blockchain18is configured to monitor and verify the access of an element or piece of content16by one or more users14. The blockchain18is a secured, immutable ledger on a distributed network comprising a plurality of nodes, for example Ethereum and R3, that is, ledger or computation blockchains18. However, it should be appreciated that any other immutable ledger and/or distributed network configurations may also be utilized.

The user14may require access to the content16owned by a creator12. The creator12is understood to be the individual or party that generated the content16and/or the individual or party that owns the content16. The content16may be protected by a patent, trademark, copyright, or any other type of intellectual property that is capable of being licensed. For example, the content16may be a copyrighted image.

A third party may wish to license the content16from the creator12, for example a consumer may wish to listen to music produced by an artist. Another party may wish to license the content16from the creator12to sell to other parties, for example a music distribution service may license music from a collection of artists and charge consumers a monthly fee for access to the music.

FIG. 2provides a flow diagram illustrating a workflow executed by the system10. At step102, the creator12of the content16uploads the content16onto a content server22. The content16is assigned a unique identification (UID)202. The UID is added to the blockchain18at104, such that one blockchain18is associated with each element or piece of content16through the unique identification202.

At106, the creator12agrees to a contract with a licensee13for the use of the content16. The contract includes terms and conditions describing how the creator12allows the licensee13to use the content16. For example, the contract may allow the licensee13to use the content16in a specific geographic location, in a specific language, and at a certain time. The contract may also allow the licensee13to further sub-license the content16, for example the licensee13may be allowed to sub-license the content to one or more sub-licensors15who sell the content. Such licensing and sub-licensing creates a chain of ownership from the creator12to the end user14. The contract may also include an agreement of the compensation provided by the licensee13to the creator12for the use of the content16.

At step108, the terms and conditions of the contract are encoded into a digital contract32, which is uploaded to the blockchain18. The creator16generates one or more encryption keys at110. In this example, a public key24and a private key26are generated. The public key24is added to the blockchain18at112. At114, the creator16provides the licensee13with the private key26.

The licensee13can use the private key26to generate a transaction token28at118, as described in greater detail below. The transaction token28can be used once by the licensee13to access the content16at116. The licensee may access the content16multiple times by generating additional transaction tokens28. The transaction token28may also be used by other parties to access the content16. For example, the licensee13may sell the transaction token to an end user14, who uses the transaction token28to access the content16. The licensee13may also allow the other parties to generate the transaction tokens28. For example, if the licensee13has a sub-licensing agreement with the sub-licensor15, the sub-licensor15may be allowed to generate the license token28.

As can be seen inFIG. 1, the transaction token28comprises a signature206generated by the private key26, such that the token18may be verified by any device having access to the public key24on the blockchain18. In this example, the transaction token28comprises the UID202of the content16, a set of random data204, and the digital signature206. The signature206is generated at208by signing the random data204with the private key26. However, it should be appreciated that the transaction token28may comprise any other information such that it is associated to the blockchain18corresponding to the specific content16and may be validated by the public key24.

The generation of the token28at118may be done offline by the licensee13such that the token28remains private. The licensee13may also assign the right to generate tokens to other parties, such as the sub-licensor15. The token28may be generated at any time, and stored indefinitely until used to access the content16. Upon receiving the private key26, the licensee13can generate multiple transaction tokens28and provide one transaction token28to the end user14each time that the end user14accesses the content16.

FIG. 3provides a flow diagram illustrating the process of the end user14accessing the content16by performing a transaction with the content server22at step116. The token holder stores one or more tokens28at120, until the access to the content16is requested. The token holder may be the party that generated the token28, for example the licensee13or the sub-licensor15. The token holder may also be a party provided with tokens28from the party that generated the token28, for example a sub-licensor15who is provided tokens generated by the licensee13. At122, the token holder identifies the party that is requesting access to the content16. If the token holder is accessing the content16, then the token holder keeps the transaction token28and becomes the end user14at124. However, if another party is accessing the content16, for example if the content16is a soundtrack included in a multimedia production produced by the token holder for sale to an end user14, the token holder provides the end user14with the transaction token28at126.

At128the end user14provides the transaction token28to the content server22. The content server22validates the token28at130, as described in greater detail below. If the token28provided by the end user14is invalid, the transaction is cancelled at132. If the token28is determined to be valid, the content server22opens a data stream to the end user14, allowing the end user14to access the content16. The access granted to the end user14may be limited by the digital contract32, for example the end user14may only be allowed to access the content16once for a certain length of time. When the end user14has received access to the content16, payment is transferred between all involved parties at step136, as described in greater detail below. The used transaction token28is added to the blockchain18at step150, such that the same token28cannot be used more than once to access the content16.

FIG. 4provides a flow diagram illustrating the process of validating the transaction token28at step130. Upon receiving the transaction token28from the end user14at128, the content server22checks the blockchain18for identical transaction tokens at137. If an identical transaction token28is on the blockchain18, the transaction is cancelled at132as the transaction token28was previously used to access the content16. If the transaction token28is not found on the blockchain18, the transaction token28represents a unique access to the content16and the content server22retrieves the public key24from the blockchain28at138. The content server22is configured to verify the signature206of the token28with the public key at140. If at142, the signature206is not verified by the public key24, the transaction is cancelled at132. If the signature is verified by the public key24, the content server22verifies that the requested use meets the terms and conditions set out in the digital contract32at146. The content server22records information related to the requested access of the content16, for example the time or the geographic location of the user14, and compares the information to the digital contract32recorded on the blockchain18. The content server22may also verify the chain of ownership against the digital contract32on the blockchain18, as described in greater detail below. If the requested access of the content16is allowed by the digital contract32, the transaction is confirmed at148.

FIG. 5is a schematic diagram of the blockchain18used to verify the access to the content16. One blockchain18is associated with one piece of content16, and comprises blocks containing information related to the one piece of content16, for example its allowed uses and records of all previous uses.

In this example, the blockchain18comprises the unique ID202, the digital contract32, a license token34, the public key24, and one or more used transaction tokens28. The Unique ID202of the content16associates the blockchain18with the correct piece of content16. The digital contract32and the license token34represent an agreement between two or more parties on the allowed uses of the content16. For example, the digital contract32and the license token34can be between the creator12and the licensee13, specifying the time and locations that the content16may be accessed. It should be understood that more than one digital contract32and/or license token34may exist on the blockchain18if multiple agreements for the use of the content16exist, for example if there is a first agreement between the creator12and the licensee13and a second agreement between the licensee13and the sub-licensor15. The public key24allows the content server22to use the blockchain18to validate the transaction token28, as described above. The used transaction tokens28allow the content server22to prevent the end user from using one transaction token28to access the content16multiple times.

The blockchain18may be stored as a decentralized ledger over several nodes which may be located around the world. The system10can be implemented such that the end user14provides the content server22with the transaction token28such that the content server22accesses the blockchain18to determine if the end user14is allowed to access the content16. In such a system, the end user14does not access the blockchain18.

The content server22can use the blockchain18to validate the chain of ownership when the end user14requests access to the content16. In this example, the end user14requests access to the content16by providing the content server22with a transaction token28. The content server22retrieves the public key24from the blockchain18at step138(FIG. 4) and validates the signature206of the transaction token28using the public key24at step140. Upon validation of the signature206using the public key24, the content server22can identify the licensor13that generated the transaction token28by checking the blockchain18to determine which licensor13was provided with the corresponding private key26. The content server22can then compare the requested use of the content16to the allowed uses of the content16set out in the digital contract32and/or license token34.

FIG. 6is a schematic diagram of the license token34used to verify that the use of the content16meets the terms and conditions set out in the digital contract32. In this example, the license token34comprises a geographical region component212, a display medium component214, a time component216, and a language component218. The geographical region component212specifies the geographic regions in which the content16may be accessed. The display medium component214specifies the medium that may be used to display the content16, for example a video on a mobile device or audio on any device. The time component216specifies the time or range of times during which the content16can be accessed. The language component218specifies the language that the content16can be displayed in, for example English or French.

FIG. 7is an example of a chain of ownership of the content16. In this example, the creator12licenses the content16to two licensors13, in this example a first licensor702and a second licensor704. The first licensor702generates a first transaction token728, which may be provided to the content server22to access the content16. The second licensor704further licenses the content16to a first sub-licensor706, which subsequently licenses the content to a second sub-licensor708. The second sub-licensor708generates a second transaction token828, which may be provided to the content server22to access the content16.

As described above, the content server22is able to identify the chain of ownership when provided with a transaction token28. In this example, when the first transaction token728is provided to the content server22, the content server22identifies that the first transaction token728was generated by the first licensor702. The content server22is also able to collect information from the digital contracts32on the blockchain18to identify that the creator12licensed the content16to the first licensor702. When the second transaction token728is provided to the content server22, the content server22identifies that the second transaction token828was generated by the second sub-licensor708. The content server22is also able to collect information from the digital contracts32on the blockchain18to identify that the creator12licensed the content16to the second licensor704, who sub-licensed the content16to the first sub-licensor706, who further sub-licensed the content16to the second sub-licensor708. Such identification of the chain of ownership allows the distribution of payment between the involved parties, as described below.

Each party in the chain of ownership may be required to pay one or more dependents upon receiving funds from access to the content16. In this example, the creator is required to pay a first dependent710, a second dependent712, and a third dependent714.

FIG. 8illustrates one example of the distribution of payments for different rights in different regions. The creator12may set different prices for different uses of the content16. For example, the creator12may have different prices for different distribution rights, such as physical rights222or the rights to sell a physical unit containing the content16, streaming rights224or the rights to view the content16online, and broadcasting rights226. The creator12may also set different prices for different geographic regions. In this example, the creator12set a price of $1.00 for physical rights in North America.

The licensor13may similarly set different prices for different uses of the content16. In this example, the licensor13set a price of $0.10 for physical rights222in all regions, and does not sell streaming rights224and broadcasting rights226. Such a licensing agreement may allow the licensor13to specialize in distributing physical rights, and the creator12to distribute usage rights to a plurality of licensors13each specializing in different forms of distribution.

In this example, the licensor13sells physical rights222to the sub-licensor15. The sub-licensor15distributes the physical rights222to the content16to end users14in North America. The sub-licensor15charges $4.00 for the physical rights222in this example. The end user14pays the sum of the prices set by the creator12, licensor13, and sub-licensor15for the North American physical rights, in this example $5.10. The payment from the end user14is automatically deducted from the user14and distributed between the parties in the chain of ownership by the blockchain18.

The prices set by each party are set in the digital contracts32. For example, the digital contract32between the creator12and the licensee13can specify that any streaming access224to the content16by the licensee13and/or any party sub-licensing the content16from the licensee13will result in the creator12being paid $0.01. As such, the prices may dynamically change, as described below. When the transaction token28is used to access the content16, the content server22identifies the chain of ownership as described above and identifies the price set by each party in the chain of ownership.

In the example illustrated inFIG. 8, the chain of ownership starts from the creator12, who licenses the content16to the licensee13, who further sub-licenses the content16to the sub-licensor15. The sub-licensor15sells the physical rights222in North America to the end user14. When the end user14accesses the content16by using the transaction token28, the content server retrieves the price charged by each party for physical rights222in North America from the digital contracts32on the blockchain18. In this example the creator charges $1.00 for physical rights222in North America, the licensee13charges $0.10 for physical rights222in North America, and the sub-licensor15charges $4.00 for physical rights222in North America. As such, a total of $5.10 is deducted from the end user14and distributed among the creator12, licensee13, and sub-licensor15by the blockchain18.

FIG. 9illustrates an example of a tiered payment distribution. The payment of dependents by the parties on the chain of ownership may depend on the total revenue earned by the party on the chain of ownership. In this example, the creator is required to divide the payment between the first dependent710, the second dependent712, and the third dependent714differently when earning different revenue for different rights. The revenue from physical rights222is divided into three tiers: $0 to $9,000 of revenue, $10,000 to $99,999 of revenue, and $100,000 to $999,999 of revenue. In each tier, the revenue is divided between the dependents710,712,714differently. For example, when the creator12receives $0 to $9,000 in revenue, 5% of the earned revenue is paid to the first dependent710, 5% of the earned revenue is paid to the second dependent712, and 90% of the earned revenue is paid to the third dependent714. Similar tiered payment distributions may also exist for streaming rights224and broadcast rights226. The tiered payment distribution may be specified in the digital contract32, and implemented by the content server22and/or the blockchain18.