Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
ESTABLISHING COMMUNICATIONS CHANNELS
Document Type and Number:
WIPO Patent Application WO/2023/083449
Kind Code:
A1
Abstract:
In an embodiment, a method (300) is described. The method facilitates communications in a computing network (100) between a first computing device (108a) associated with an owner (106a, 212a) of a first asset (210a) and a second computing device (108b) associated with an owner (106b, 212b) of a second asset (210b). A first identifier (204a) is associated with the first asset. A second identifier (204b) is associated with the second asset. A blockchain (104, 200) accessible to the computing network is indicative of: an association (208a) between the first identifier and the owner of the first asset; and an association (208b) between the second identifier and the owner of the second asset. The method comprises determining (302) whether a communications channel (430) between the first computing device and the second computing device can be established for facilitating communications in the computing network by using the blockchain to verify that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset. If this is verified, the method further comprises causing (304) the communications channel to be established between the first computing device and the second computing device for facilitating the communications.

Inventors:
RICHMOND LEO GRAYSON (GB)
KAMMER FREDERIK (DE)
GRONEWOLD SEBASTIAN (DE)
Application Number:
PCT/EP2021/081359
Publication Date:
May 19, 2023
Filing Date:
November 11, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ELBSTACK GMBH (DE)
LG MEMORABILIA LTD (GB)
International Classes:
H04L9/32; G06F21/64; G06Q20/10; G06Q20/36; H04L9/00
Foreign References:
US20210248214A12021-08-12
US20210271508A12021-09-02
Other References:
MA CHAO ET AL: "Research on Collaborative Security Based on On-blockchain and Off-blockchain in the Scenario of Power Data Acquisition", 2021 IEEE 21ST INTERNATIONAL CONFERENCE ON COMMUNICATION TECHNOLOGY (ICCT), IEEE, 13 October 2021 (2021-10-13), pages 876 - 881, XP033995578, DOI: 10.1109/ICCT52962.2021.9658051
Attorney, Agent or Firm:
HASELTINE LAKE KEMPNER LLP (GB)
Download PDF:
Claims:
25

CLAIMS

1. A computer-implemented method (300) for facilitating communications in a computing network (100) between a first computing device (108a) associated with an owner (106a, 212a) of a first asset (210a) and a second computing device (108b) associated with an owner (106b, 212b) of a second asset (210b), wherein: a first identifier (204a) is associated with the first asset; a second identifier (204b) is associated with the second asset; and a blockchain (104, 200) accessible to the computing network is indicative of: an association (208a) between the first identifier and the owner of the first asset; and an association (208b) between the second identifier and the owner of the second asset, the method comprising: determining (302) whether a communications channel (430) between the first computing device and the second computing device can be established for facilitating communications in the computing network by using the blockchain to verify that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset; and in response to verifying that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset, causing (304) the communications channel to be established between the first computing device and the second computing device for facilitating the communications.

2. The method of claim 1, wherein: the first identifier identifies a first non-fungible token, NFT, (202a) representative of the first asset and the owner of the first asset; and the second identifier identifies a second NFT (202b) representative of the second asset and the owner of the second asset.

3. The method of claim 2, wherein the first NFT and the second NFT is stored on the blockchain.

4. The method of any of claims 2 to 3, wherein: the association between the first identifier and the owner of the first asset is represented by the first NFT; and the association between the second identifier and the owner of the second asset is represented by the second NFT.

5. The method of any of claims 1 to 4, wherein at least one of the first and second computing devices comprise User Equipment, UE, accessible to the respective owner(s) of the first and second assets.

6. The method (500) of any of claims 1 to 5, comprising: receiving (502) information about sending of an encrypted message via the communications channel; and causing (504) a message record to be stored in a computing node associated with the computing network, wherein the message record is representative of the information about the sending of the encrypted message.

7. The method of claim 6, wherein the information comprises the first and second identifiers.

8. The method of any of claims 6 to 7, wherein the information comprises a timestamp associated with a send time and/or receive time of the encrypted message.

9. The method of any of claims 6 to 8, wherein the computing node is one of: a node of a peer-to-peer, P2P, network associated with the computing network; or a node of the computing network authorized to store the message record.

10. The method of any of claims 6 to 9, wherein causing the message record to be stored in the computing node comprises causing the message record to added to the blockchain.

11. The method of any of claims 6 to 10, wherein the encrypted message comprises data associated with the owner of the first asset, and wherein the data is encrypted using a cryptographic key associated with the second computing device. 12. The method of claim 11, wherein the cryptographic key comprises a public key of a key pair associated with the second computing device.

13. The method (600) of any of claims 11 to 12, comprising: receiving (604) a request, associated with the owner of the first asset, for the cryptographic key, wherein the request is indicative of at least one of: the first identifier and/or the second identifier; and causing (606) the cryptographic key associated with the second computing device to be made available to the first computing device; and

14. The method (600) of claim 13, further comprising: prior to causing the cryptographic key to be made available to the first computing device, verifying (602) that the request is valid by checking an identity of the first computing device.

15. The method of any of claims 13 to 14, wherein the cryptographic key is made available by using the blockchain to at least one of: store the cryptographic key; indicate where in the computing network the cryptographic key can be obtained; provide access to the cryptographic key; and/or implement a handshake procedure between the first and second computing devices based on information about how to establish the communications channel stored in the blockchain.

16. The method of any of claims 6 to 15, wherein the received information about the sending of the encrypted message via the communications channel comprises: a confirmation that the second computing device received the encrypted message; and a signature applied, by the second computing device, to the confirmation.

17. The method of any of claims 6 to 16, wherein the received information about the sending of the encrypted message via the communications channel comprises: a confirmation that the first computing device sent the encrypted message; and 28 a signature applied, by the first computing device, to the confirmation.

18. The method (700) of any of claims 1 to 17, comprising: minting (702) a plurality of assets, the plurality of assets comprising the first and second assets; deploying (704) a smart contract to enforce transactions on the blockchain; receiving (706) a transaction request associated with a first proposed owner to record that the first proposed owner is to take ownership of a selected one of the plurality of assets; in response to verifying that the transaction request satisfies the smart contract, causing (708) a transaction record to be added to the blockchain to link the first proposed owner to the selected one of the plurality of assets.

19. The method (700) of claim 18, comprising: receiving (710) an additional transaction request associated with a second proposed owner to record that the second proposed owner is to take ownership of the selected one of the plurality of assets; in response to verifying that the additional transaction request satisfies the smart contract, causing (712) an additional transaction record to be added to the blockchain to link the second proposed owner to the selected one of the plurality of assets

20. The method of any of claims 1 to 19, wherein the communications channel is established by providing information needed to set up the communications channel to the first and/or second computing device, wherein the provided information comprises information about at least one of: how to access a peer-to-peer, P2P, network associated with the computing network for facilitating the communications channel; a security procedure to be implemented between the first and second computing device in order to establish the communications channel; a cryptographic key; how to access the cryptographic key; and/or an identity of and/or link to the first and/or second computing device. 29

21. A non-transitory machine-readable medium (800) storing instructions (802) which, when executed by processing circuitry (804), cause the processing circuitry to implement the methods of any of claims 1 to 20.

22. Apparatus (900) for facilitating communications in a computing network (100) between a first computing device (108a) associated with an owner (106a, 212a) of a first asset (210a) and a second computing device (108b) associated with an owner (106b, 212b) of a second asset (210b), wherein: a first identifier (204a) is associated with the first asset; a second identifier (204b) is associated with the second asset; and a blockchain (104, 200) accessible to the computing network is indicative of: an association (208a) between the first identifier and the owner of the first asset; and an association (208b) between the second identifier and the owner of the second asset, the apparatus comprises: processing circuitry (902) communicatively coupled to an interface (904) for communicating with the computing network; and a machine-readable medium (906) storing instructions (908) which, when executed by the processing circuitry, cause the processing circuitry to: determine (302) whether a communications channel (430) between the first computing device and the second computing device can be established for facilitating communications in the computing network by using the blockchain to verify that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset; and in response to verifying that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset, cause (304) the communications channel to be established between the first computing device and the second computing device for facilitating the communications.

23. A computer-implemented method (1000) for facilitating communications in a computing network (100) between a first computing device (108a) associated with an 30 owner (106a, 212a) of a first asset (210a) and a second computing device (108b) associated with an owner (106b, 212b) of a second asset (210b), wherein: the method (1000) is implemented by the first computing device; a first identifier (204a) is associated with the first asset; a second identifier (204b) is associated with the second asset; and a blockchain (104, 200) accessible to the computing network is indicative of: an association (208a) between the first identifier and the owner of the first asset; and an association (208b) between the second identifier and the owner of the second asset, the method (1000) comprising: receiving (1002): an indication that a communications channel (430) can be established between the first computing device and the second computing device based on verification, using the blockchain, that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset; and data for sending to the second computing device; establishing (1004) the communications channel; and sending (1006) the data securely to the second computing device via the communications channel.

24. The method (1100) of claim 23, further comprising sending (1102), to a computing node associated with the computing network, information about the sending of the data, wherein the computing node is configured to store a message record representative of the information about the sending of the data.

25. The method of any of claims 23 to 24, wherein the information comprises the first and second identifiers.

26. A non-transitory machine-readable medium (1200) storing instructions (1202) which, when executed by processing circuitry (1204), cause the processing circuitry to implement the methods of any of claims 23 to 25. 31

27. Apparatus (1300) for facilitating communications in a computing network (100) between a first computing device (108a) associated with an owner (106a,212a) of a first asset (210a) and a second computing device (108b) associated with an owner (106b, 212b) of a second asset (210b), wherein: the apparatus (1300) is implemented by the first computing device; a first identifier (204a) is associated with the first asset; a second identifier (204b) is associated with the second asset; and a blockchain (104, 200) accessible to the computing network is indicative of: an association (208a) between the first identifier and the owner of the first asset; and an association (208b) between the second identifier and the owner of the second asset, the apparatus comprising: processing circuitry (1302) communicatively coupled to an interface (1304) for communicating with the computing network; and a machine-readable medium (1306) storing instructions (1308) which, when executed by the processing circuitry, cause the processing circuitry to: receive (1002): an indication that a communications channel (430) can be established between the first computing device and the second computing device based on verification, using the blockchain, that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset; and data for sending to the second computing device; establish (1004) the communications channel; and send (1006) the data securely to the second computing device via the communications channel

28. A computer-implemented method (1400) for facilitating communications in a computing network (100) between a first computing device (108a) associated with an owner (106a, 212a) of a first asset (210a) and a second computing device (108b) associated with an owner (106b, 212b) of a second asset (210b), wherein: the method (1400) is implemented by the second computing device; a first identifier (204a) is associated with the first asset; a second identifier (204b) is associated with the second asset; and 32 a blockchain (104, 200) accessible to the computing network is indicative of: an association (208a) between the first identifier and the owner of the first asset; and an association (208b) between the second identifier and the owner of the second asset, the method comprising: receiving (1402) an indication that a communications channel (430) can be established between the first computing device and the second computing device based on verification, using the blockchain, that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset; establishing (1404) the communications channel; and receiving (1406) data sent securely by the first computing device via the communications channel.

29. The method (1500) of claim 28, further comprising sending (1502), to a computing node associated with the computing network, information about the receiving of the data, wherein the computing node is configured to store a message record representative of the information about the receiving of the data.

30. A non-transitory machine-readable medium (1600) storing instructions (1602) which, when executed by processing circuitry (1604), cause the processing circuitry to implement the methods of any of claims 28 to 29.

31. Apparatus (1700) for facilitating communications in a computing network (100) between a first computing device (108a) associated with an owner (106a, 212a) of a first asset (210a) and a second computing device (108b) associated with an owner (106b, 212b) of a second asset (210b), wherein: the apparatus (1700) is implemented by the second computing device; a first identifier (204a) is associated with the first asset; a second identifier (204b) is associated with the second asset; and a blockchain (104, 200) accessible to the computing network is indicative of: an association (208a) between the first identifier and the owner of the first asset; and 33 an association (208b) between the second identifier and the owner of the second asset, the apparatus comprising: processing circuitry (1702) communicatively coupled to an interface (1704) for communicating with the computing network; and a machine-readable medium (1706) storing instructions (1708) which, when executed by the processing circuitry, cause the processing circuitry to: receive (1402) an indication that a communications channel (430) can be established between the first computing device and the second computing device based on verification, using the blockchain, that the first computing device is associated with the owner of the first asset and the second computing device associated with the owner of the second asset; establish (1404) the communications channel; and receive (1406) data sent securely by the first computing device via the communications channel.

Description:
ESTABLISHING COMMUNICATIONS CHANNELS

BACKGROUND

[0001] Tokens referred to as non-fungible tokens (NFTs) may be used to represent ownership of assets including digital assets such as artwork and tangible assets such as objects in the real world. Blockchain technology may be used to enforce the ownership of such assets and provide confidence in terms of who owns which NFT.

SUMMARY

[0002] Aspects or embodiments may relate to establishing and/or using a communications channel in order to facilitate communications between verified owner(s) of assets based a blockchain.

[0003] A first aspect of the invention is a method defined by independent claim 1. Embodiments relating to the first aspect and other related aspects are defined by dependent claims 2 to 20. A second aspect of the invention is a machine-readable medium defined by independent claim 21. A third aspect of the invention is an apparatus defined by independent claim 22. A fourth aspect of the invention is a method defined by independent claim 23. Embodiments relating to the fourth aspect and other related aspects are defined by dependent claims 24 to 25. A fifth aspect of the invention is a machine- readable medium defined by independent claim 26. A sixth aspect of the invention is an apparatus defined by independent claim 27. A seventh aspect of the invention is a method defined by independent claim 28. An embodiment relating to the seventh aspect and other related aspects is defined by dependent claim 29. An eighth aspect of the invention is a machine-readable medium defined by independent claim 30. A ninth aspect of the invention is an apparatus defined by independent claim 31.

BRIEF DESCRIPTION OF DRAWINGS

[0004] Non-limiting examples will now be described with reference to the accompanying drawings, in which:

[0005] Figure 1 is a simplified schematic drawing of a computing network in which various embodiments are implemented; [0006] Figure 2 is a simplified schematic drawing of part of a blockchain for facilitating the functionality of various embodiments;

[0007] Figure 3 is a flowchart of a method for facilitating communications in a computing network according to an embodiment;

[0008] Figure 4 is a simplified schematic drawing of part of a computing network in which various embodiments are implemented;

[0009] Figure 5 is a flowchart of a method relating to use of a communications channel according to an embodiment;

[0010] Figure 6 is a flowchart of a method relating to messaging using a communications channel according to an embodiment;

[0011] Figure 7 is a flowchart of a method relating to use of a blockchain according to an embodiment;

[0012] Figure 8 schematically illustrates a machine-readable medium for implementing various embodiments described herein;

[0013] Figure 9 is a simplified schematic drawing of an apparatus for implementing various embodiments described herein;

[0014] Figure 10 is a flowchart of a method for facilitating communications in a computing network according to an embodiment;

[0015] Figure 11 is a flowchart of a method relating to use of a communications channel according to an embodiment;

[0016] Figure 12 schematically illustrates a machine-readable medium for implementing various embodiments described herein;

[0017] Figure 13 is a simplified schematic drawing of an apparatus for implementing various embodiments described herein;

[0018] Figure 14 is a flowchart of a method for facilitating communications in a computing network according to an embodiment;

[0019] Figure 15 is a flowchart of a method relating to use of a communications channel according to an embodiment;

[0020] Figure 16 schematically illustrates a machine-readable medium for implementing various embodiments described herein; and [0021] Figure 17 is a simplified schematic drawing of an apparatus for implementing various embodiments described herein.

DETAILED DESCRIPTION

[0022] Figure 1 is a simplified schematic drawing of a computing network 100 in which various embodiments described herein may be implemented.

[0023] In this implementation, the computing network 100 comprises a cloud 102. The cloud 102 may be implemented in various ways and may comprise any of the entities depicted in Figure 1. However, other implementations are possible and Figure 1 is merely given as one possible implementation for implementing various embodiments described herein.

[0024] In some cases, the cloud 102 may comprise or be communicatively coupled to a plurality of nodes, which may be software and/or hardware implemented (e.g., using virtual machines, physical machines, etc.). The plurality of nodes may be used to implement the functionality of various features described herein.

[0025] In some cases, the computing network 100 may have a different architecture such as based on at least one server (not shown) controlled by at least one entity such as a service provider, admin, manager, etc.

[0026] In some case, the computing network 100 may have a different architecture such as a centralized set-up in which a computing device such as a server (e.g., controlled by one entity) manages various functions of the various entities described herein.

[0027] In some cases, the computing network may have a different architecture such as a de-centralized set-up in which multiple computing nodes may be communicatively coupled in a distributed/de-centralized arrangement. This could be part of a peer-to-peer (P2P) network.

[0028] Various parts of these potential implementations and other infrastructure possibilities may be combined in order to provide the functionality as described herein.

[0029] The computing network 100 stores a blockchain 104 in the cloud 102 (which may include multiple computing nodes as already mentioned). Although in other implementations, the blockchain 104 may be stored in a different way such as in a centralized set-up. In some cases, any of the computing nodes may implement a blockchain client for interacting with any blockchain platform(s) implemented by the computing network 100.

[0030] The blockchain 104 comprises a plurality of records 104a, 104b, 104c (three are depicted but there may be fewer or many more records). To avoid confusion with later use of the term “block”, the term “record” is used herein to represent the term “block” that may be otherwise associated with blockchain technology. The records in the blockchain 104 may represent various information such as transactions that have occurred. The blockchain 104 may implement a smart contract in order to enforce such transactions. Such a smart contract may be deployed by an entity that sets-up the blockchain 104. In some cases there may be a plurality of blockchains 104 (e.g. , for serving different purposes in addition to registering transactions such as storing data, providing links to information and/or identifying various information). The blockchain 104 may be public or private. In some cases, trusted entities (e.g., implementing blockchain clients (not shown) for accessing the blockchain 104) may be permitted to have certain access rights to a private blockchain 104 (such as for performing read, write, consensus operations, etc.).

[0031] In use of the blockchain 104, any new transactions may be verified/approved/rejected by a computing node with access to the blockchain 104 using any appropriate protocol such as by consensus.

[0032] As noted above, blockchain 104 records (104a, 104b, 104c) may be used to represent ownership (or changes of ownership) of certain assets such as digital assets such as artwork and tangible assets such as objects in the real world. NFTs are examples of tokens which can be recorded on the blockchain 104 to indicate such ownership/change of ownership. These are discussed in more detail below.

[0033] As shown in Figure 1 , there are two owners 106a, 106b depicted (i.e., “first” and “second” owners 106a, 106b, respectively) although there may be one owner or many more owners that may interact with the computing network 100. Each owner 106a, 106b is associated with a User Equipment (UE) 108a, 108b, respectively. A UE 108a, 108b may be any device (such as a personal computer, laptop, smart phone, smart wearable such as a watch, tablet, Internet of Things (loT) device, etc.) that an owner 106a, 106b can use to access the computing network 100. For example, the UE 108a, 108b may provide access to a “digital wallet” (or other mechanism) hosted by a platform such as a service provider for managing payments, accessing digital marketplaces and/or registering/checking ownership of assets. Examples of such assets include digital (cryptographic) coins, NFTs, etc. Access to the digital wallet may be provided in various ways in order to ensure that the owner 106a, 106b can interact securely with the platform. For example, a passcode may need to be entered by the owner 106a, 106b and/or 2/multi- factor authentication (e.g., via a message code signaled to a device in the owner’s possession, through use an authentication “app”, a smart card, etc.) may be implemented in various ways in order to prove the identity of the owner.

[0034] As used herein, the term “first computing device” may refer to any computing node within the computing network 100 that is associated with the first owner 106a. The term “second computing device” may refer to any computing node within the computing network 100 that is associated with the second owner 106b. In the implementation of Figure 1 , the first computing device corresponds to the first UE 108a and the second computing device corresponds to the second UE 108b. However, there may be implementations where the functionality of the first and/or second computing devices may be implemented by different computing nodes in the computing network 100 (such as in the form of virtual machines, etc.). Thus, in such implementations, the owners 106a, 106b may interact with their UEs 108a, 108b. However, such UEs 108a, 108b may be communicatively coupled to the first and/or second computing device(s) as referred to herein.

[0035] As used herein, the term “owner” may refer to the actual/direct owner of a particular asset or may refer to a different entity that may be authorized to use/interact with various functionality described herein. For example, the “owner” could be a licensee where the actual owner has provided a license to the licensee to use certain functionality as defined by the license.

[0036] Some computing nodes of the computing network 100 are now described. These are exemplary and any number or combination of these computing nodes may be used, omitted or otherwise implemented in a different way to that shown. As highlighted already, the computing nodes may be implemented in the cloud (via a virtual machine or physical machine) or in a different part of the computing network 100. In other similar words, the computing nodes may be remote to the entities to which they are associated or such entities may implement the computing nodes (e.g., on a local computing device).

[0037] A computing node 110 associated with an admin 112 is communicatively coupled to the computing network 100. The admin 112 may be an entity that has set-up, manages or otherwise controls the access to the blockchain 104. In some cases, the admin 112 could implement or facilitate access to a blockchain platform for making use of the functionality of the blockchain 104. [0038] A computing node 114 associated with a repository 116 is communicatively coupled to the computing network 100. The repository 116 may store any information relevant to various functions described herein. In some cases, the repository 116 may store or provide links to assets. For example, if the assets comprise a set of digital files (e.g., documents, artworks such as representations of “retro phones”, images, videos, etc.), the repository 116 may store or provide links to such data files. In some cases, the repository 116 could store and/or provide access to minted digital assets. The repository 116 may or may not be public. In some cases, the repository 116 may store any other information such as cryptographic keys (e.g., public keys), digital certificates, etc.

[0039] A computing node 118 associated with a manager 120 is communicatively coupled to the computing network 100. The manager 120 may control or implement the functionality of various embodiments described herein. For example, the manager 120 may set-up, control access to or facilitate the use of a communications channel such as described herein. The role of the manager 120 may depend on how the communications channel is to be implemented. For example, the communications may be sent via the manager 120 (i.e., the computing node 118 itself) or the communications may be sent directly or indirectly between the computing nodes taking part in the communications (e.g., within a P2P network associated with the computing network 100).

[0040] In some cases, the manager 120 may implement at least some functionality of the admin 112 and/or repository 116, and vice versa.

[0041] As used herein, the term “computing node” may refer to any entity of the computing network 100 as depicted by Figure 1. The computing node may implement at least one of the various layers of a computing architecture such as comprising an application layer, transport layer and a physical layer. For example, a reference to a computing node could refer to a computing device of the physical layer, a node that implements functionality of the transport layer and/or a node that implements functionality of the application layer. Thus, a computing node may be software and/or hardware implemented (e.g., using virtual machines, physical machines, etc.).

[0042] Figure 2 is a simplified schematic drawing of part of a blockchain 200 for facilitating the functionality of various embodiments. As depicted, the blockchain 200 comprises two records. In this case, a first NFT 202a and a second NFT 202b. Each NFT 202a, 202b has its own unique identifier, referred to here as Tokenldl 204a and Tokenld2 204b, respectively. These unique identifiers may refer to the “tokenld” specified by a standard such as ERC-721 that can be used on the Ethereum blockchain as ERC-721 on Ethereum Virtual Machine (EVM) compatible blockchains. However, the unique identifiers may refer to any identifiers that can be used in any type of blockchain or under any standard associated with such blockchains to implement the functionality as recited herein. As used herein, the term “first identifier” may refer to Tokenldl 204a and the term “second identifier” may refer to Tokenld2 204b.

[0043] The unique identifiers 204a, 204b provide a link to the assets referred to in Figure 1. For ease of reference, the “repository” mentioned in relation to Figure 1 is depicted as repository 206 in Figure 2. There is a (first) association “Associationl” 208a between the first NFT 202a and a first asset, “Filel ” 210a stored or otherwise linked in the repository 206. Similarly, there is a (second) association “Association2” 208b between the second NFT 202b and a second asset, “File2” 210b stored or otherwise linked in the repository 206. In the depicted example, Filel 210a and File2 210b are artworks such as “retro phones” and each artwork is unique (e.g., each artwork may have different features or “rarity” factors).

[0044] As also depicted by Figure 2, the Associationl 208a provides a link between the (first) owner 212a (corresponding to owner 106a) and the Filel 210a via the Tokenldl 204a specified by the NFT 202a. Similarly, the Association2 208b provides a link between the (second) owner 212b (corresponding to owner 106b) and the File2 210b via the Tokenld2 204b specified by the NFT 202b.

[0045] In some cases, an owner may own more than one asset but the unique identifier is different for each asset.

[0046] Whenever a transaction occurs e.g., where there is a transfer of ownership, this is recorded in the blockchain 200. Other information relating to use of the communications channel may or may not be recorded in the blockchain 200. In some cases, there may be different blockchains used for different purposes such as storing small amounts of information (e.g., relating to ownership) or relatively larger amounts of information (such as asset files, cryptographic keys, etc.). The (processing) cost of using a blockchain may vary on its implementation and therefore the functionality of the blockchain in relation to the different purposes may vary depending on the cost.

[0047] As already noted, NFTs may be used to represent ownership of assets including digital assets such as artwork and tangible assets such as objects in the real world. Blockchain technology may be used to enforce the ownership of such assets and provide confidence in terms of who owns which NFT. [0048] Communications may be performed in the computing network 100. Various embodiments described herein may make use of the blockchain 104, 200 in various ways in order to facilitate such communications.

[0049] In some cases, there may be circumstances where an entity may wish to control/manage the number of entities able to communicate with one another. In some cases, there may be need for secure messaging without needing to make use of an identity such as a mobile phone number for setting up such secure messaging. In some cases, there may be need for maintaining privacy and/or security in messaging. Various embodiments described may address at least one of these problems and/or other problems such as described or highlighted below.

[0050] Figure 3 is a flowchart of a method 300 for facilitating communications in a computing network 100 according to an embodiment. The method 300 may be implemented by a computing node in the computing network 100. For example, the method 300 may be implemented by the manager 120 depicted by Figure 1 or any other entity that is authorized to facilitate communications in the computing network 100 and/or has access to the blockchain 104. Reference is made to Figures 1 and 2 in the description that follows.

[0051] The method 300 is a computer-implemented method (i.e., implemented by processing circuitry associated with the computing node). The method 300 facilitates communications in a computing network 100 between a first computing device 108a associated with an owner 106a, 212a of a first asset 210a and a second computing device 108b associated with an owner 106b, 212b of a second asset 210b.

[0052] A first identifier 204a is associated with the first asset 210a.

[0053] A second identifier 204b is associated with the second asset 210b.

[0054] A blockchain 104, 200 accessible to the computing network 100 is indicative of an association 208a between the first identifier 204a and the owner 212a of the first asset 210a. The blockchain 104, 200 is further indicative of an association 208b between the second identifier 204b and the owner 212b of the second asset 210b.

[0055] The method 300 comprises, at block 302, determining whether a communications channel between the first computing device 108a and the second computing device 108b can be established for facilitating communications in the computing network 100. The determining is performed by using the blockchain 104 to verify that the first computing device 108a is associated with the owner 212a of the first asset 210a and that the second computing device 108b is associated with the owner 212b of the second asset 210b.

[0056] In response to verifying that the first computing device 108a is associated with the owner 212a of the first asset 210a and the second computing device 108b is associated with the owner 212b of the second asset 210b, the method 300 further comprises, at block 304, causing the communications channel to be established between the first computing device 108a and the second computing device 108b for facilitating the communications.

[0057] The verifying may be implemented in various ways. For example, an indication may be received from and/or provided by a computing node with access to the blockchain 104 that the blockchain 104 has verified the association. In the former case, this may involve sending a request to the computing node to check whether the first computing device 108a is associated with the owner 212a of the first asset 210a and that the second computing device 108b is associated with the owner 212b of the second asset 210b. The computing node may then use the first and second identifier 204a, 204b (e.g., as provided or linked by the request) to establish whether the request is valid based on a check/reading of the blockchain 104. If the request is valid, the computing node may generate the indication. In the latter case, this may involve the computing node performing the verification itself. In some cases, the verification may be performed by a plurality of computing nodes (such as based on a consensus approach).

[0058] The computing node that performs the verification may depend on the architecture. For example, it could be envisaged that the method 300 is implemented by the computing node that has access to the blockchain 104 and can perform the check itself. On the other hand, the method 300 could be implemented by a different computing node that is communicatively coupled to the computing node that has access to the blockchain 104. In any case, the blockchain 104 may be “used” directly or indirectly by the computing node that implements the method 300.

[0059] In this manner, the communications channel may be established so that certain entities can communicate with each other. That is, the computing devices 108a, 108b associated with the respective owners 212a, 212b may communicate with each other. The blockchain 104 may facilitate such communication and prevent third parties from communicating with each other. This could be implemented as an exclusive messaging service. For example, any owner that owns an asset may communicate using the communications channel and third parties may not use the communications channel (unless they subsequently become an owner of one of the (minted) assets). The “minting” process may be controlled such that there is a fixed number of assets. Thus, an entity that controls the minting process may control how many entities can use the communications channel and other features and no new “members” may be allowed to use this service. Any entity that tries to do so may be detected/rejected based on the implementation of the smart logic of the blockchain 104, 200. As used herein, an “entity” may refer to a computing node or an individual/member with access to, attempting to access, or forming part of the computing network 100 (e.g., via the computing node). Different entities have different roles. For example, Figure 1 depicts various entities such as the owners 106a, 106b, the UEs 108a, 108b, as well as the various computing nodes such as associated with the admin 112, the repository 116 and the manager 120 (which are themselves “entities”). As used herein, a “member” may refer to an owner or a proposed owner.

[0060] Thus, it may be possible to control/manage the number of members (e.g., owners via their computing devices) able to communicate with one another. In some cases, secure messaging services may be implemented without needing to make use of an identity such as a mobile phone number for setting up such secure messaging. This may be useful where an owner does not have access to their device and/or they have privacy concerns about using a device that implements a device identifier or user identifier. Such a communications channel may maintain/ensure privacy and/or security in messaging. Various embodiments (including method 300) described may provide such technical benefits and/or other technical benefits such as highlighted below.

[0061] Figure 4 is a simplified schematic drawing of part of a computing network 400 in which various embodiments are implemented. Figure 4 depicts part of the computing network 100. In this regard, reference signs for like or similar features as in Figure 1 are incremented by 300.

[0062] As depicted by Figure 4, the computing network 400 comprises a cloud 402 (or any other infrastructure as discussed in relation to Figure 1). A first owner 406a is associated with a first UE 408a and a second owner 406b is associated with a second UE 408b. By implementing the method 300, a communications channel 430 is established between the first UE 408a and the second UE 408b.

[0063] The implementation of this communications channel 430 may vary according to the architecture of the computing network 400. For example, in some cases, the communications channel 430 may be directly between the first UE 408a and the second UE 408b (i.e. , a direct link without involving other computing nodes). In some cases, the communications channel 430 may be implemented indirectly between the first UE 408a and the second UE 408b (e.g., an indirect link involving at least one other computing node).

[0064] In some cases, the establishing of the communications channel 430 may involve a “handshake” procedure where upon verifying that the first UE 408a and the second UE 408b have associated assets 210a, 210b, they can then communicate with each other.

[0065] In some cases, the establishing of the communications channel 430 may involve connecting to at least one computing node in the computing network 400 and using such at least one computing node to route communications.

[0066] In some cases, a cryptographic procedure may be implemented such as using cryptographic keys to encrypt and/or verify communications.

[0067] In some cases, establishing the communications channel may involve setting up or establishing a “transport” layer where the method 300 is implemented by a higher layer such as an “application” layer. The application layer and/or application layer may interact with other, lower, layers such as the physical layer represented by the physical architecture of the computing network 400.

[0068] Any number, variation or combination of the above implementations may be used by various embodiments described herein, as now described with reference to the following embodiments (which may relate to method 300 and other embodiments implemented by other entities in the computing network 100). Reference is made to various features of Figures 1 to 4.

[0069] In some embodiments, the first identifier 204a identifies a first non-fungible token (NFT) 202a representative of the first asset 210a and the owner 212a of the first asset 210a. The second identifier 204b identifies a second NFT 202b representative of the second asset 210b and the owner 212b of the second asset 210b.

[0070] In some embodiments, the first NFT 202a and the second NFT 202b is stored on the blockchain 200.

[0071] In some embodiments, the association 208a between the first identifier 204a and the owner 212a of the first asset 210a is represented by the first NFT 202a. Further, the association 208b between the second identifier 204b and the owner 212b of the second asset 210b is represented by the second NFT 202b. [0072] In some embodiments, at least one of the first and second computing devices 108a, 108b comprise User Equipment (UE) accessible to the respective owner(s) 212a, 212b of the first and second assets 210a, 210b.

[0073] Figure 5 is a flowchart of a method 500 relating to use of a communications channel according to an embodiment. The method 500 may be implemented by a computing node in the computing network 100 in the same or similar way as described above in relation to Figure 3. Reference is made to Figures 1 to 4 in the description that follows.

[0074] The method 500 comprises, at block 502, receiving information about sending of an encrypted message via the communications channel 430.

[0075] The method 500 further comprises, at block 504, causing a message record to be stored in a computing node associated with the computing network 100. The message record is representative of the information about the sending of the encrypted message.

[0076] The method 500 may provide a record of the sending of the encrypted message (i.e. , between the first and second UEs 408a, 408b via the communications channel 430). Various information may be included in the record such as described below. Various entities in the computing network 100 may store the record and the record may or may not be accessible to the owners 106a, 106b and/or other entities. The record may or may not include the content of the encrypted message, e.g., in encrypted format.

[0077] Some embodiments relating to the method 500 and other embodiments are described below.

[0078] In some embodiments, the information comprises the first and second identifiers 204a, 204b.

[0079] In some embodiments, the information comprises a timestamp associated with a send time and/or receive time of the encrypted message.

[0080] In some embodiments, the computing node is a (computing) node of a peer-to- peer (P2P) network associated with the computing network 100 (e.g., the P2P network may be part of the computing network 100 or otherwise communicatively coupled to the computing network 100).

[0081] In some embodiments, the computing node is a (computing) node of the computing network 100 authorized to store the message record. [0082] In some embodiments, causing the message record to be stored in the computing node comprises causing the message record to added to the blockchain 104, 200 (e.g., providing the smart contract is satisfied). In some cases, the message record could be stored in the same blockchain 104 as used to enforce ownership. In some cases, the message record could be stored in a different blockchain. For ease of reference, any reference to storing any information on the blockchain (where it is not an NFT), the blockchain 104, 200 is mentioned. However, it is to be appreciated that such information could be stored on a different blockchain accessible to the computing network 100.

[0083] In some embodiments, the encrypted message comprises data (such as a written message, a character string, image, video or any other type of data) associated with the owner 212a of the first asset 210a. Further, the data is encrypted using a cryptographic key associated with the second computing device 108b.

[0084] In some embodiments, the cryptographic key comprises a public key of a key pair associated with the second computing device 108b.

[0085] For example, in order to use the communications channel for encrypted communications, a cryptographic protocol may be used. There may be various implementations. In a possible implementation, any entity (e.g., the first and second computing devices 108a, 108b) may generate cryptographic keys using an application on their respective computing device 108a, 108b. Such cryptographic keys may be a publicprivate key pair. The public key may be shared while the private key may be stored, or otherwise generated on demand from a unique seed using a one-way key generation protocol, on the respective computing device 108a, 108b. The public key may be used by another entity to encrypt communications while the private key may be used to sign communications (i.e. , by appending a digital signature). Any appropriate entity in Figure 1 may store/transport public keys to other computing nodes so that they can encrypt their communications to a target computing device.

[0086] Figure 6 is a flowchart of a method 600 relating to messaging using a communications channel 430 according to an embodiment. The method 600 may be implemented by a computing node in the computing network 100 in the same or similar way as described above in relation to Figure 3. Reference is made to Figures 1 to 4 in the description that follows. Certain blocks of the method 600 may be omitted according to the embodiments described below.

[0087] In some embodiments, the method 600 comprises, at block 602, verifying that a request associated with the owner 212a of the first asset 210a is valid by checking an identity of the first computing device 108a. In some cases, such a check may be performed prior to causing a cryptographic key to be made available to the first computing device 108a. The identity of the first computing device 108a may refer to some indication as to the device identity such as a cryptographic identity (e.g., specified by a digital signature). In such a case, the verification may be performed by using a corresponding (public) key associated with the private key used to sign the request in the case that the request was signed by the owner 212a of the first asset 210a.

[0088] In some embodiments, the method 600 comprises, at block 604, receiving a request (as described above), associated with the owner 212a of the first asset 210a, for the cryptographic key. The request may be indicative of at least one of: the first identifier 204a and/or the second identifier 204b. The method 600 further comprises, at block 606, causing the cryptographic key associated with the second computing device 108b to be made available to the first computing device 108a.

[0089] In some embodiments, the cryptographic key is made available by using the blockchain 104, 200 to store the (e.g., public) cryptographic key. For example, an entity wishing to retrieve the cryptographic key may read the blockchain 104, 200 if authorized to do so in order to retrieve the key.

[0090] In some embodiments, the cryptographic key is made available by using the blockchain 104, 200 to indicate where in the computing network the cryptographic key can be obtained. For example, the blockchain 104, 200 may store an address or provide some other link to a computing node in the computing network 100 (e.g., a certificate authority or similar) in which the cryptographic key is stored. In some cases, such a computing node may release the cryptographic key on demand or implement a protocol that checks the identify the entity requesting the key.

[0091] In some embodiments, the cryptographic key is made available by using the blockchain 104, 200 to provide access to the cryptographic key. For example, an entity requesting the key may check the blockchain 104, 200 for information to enable the entity to obtain the key (e.g., from a computing node in the computing network 100).

[0092] In some embodiments, the cryptographic key is made available by using the blockchain 104, 200 to implement a handshake procedure between the first and second computing devices 108a, 108b based on information about how to establish the communications channel, where such information is stored in the blockchain. For example, the information may specify or facilitate control of a handshake protocol comprising instructions on how the first and second computing devices 108a, 108b are to connect with each other to form the communications channel 430. For example, a protocol such as based on a Secure Sockets Layer (SSL) handshake and/or a Transport Layer Security (TLS) handshake may be implemented. In another example, the blockchain 104, 200 may point to a computing node through which communications can be routed between the first and second computing devices 108a, 108b as part of the handshake procedure.

[0093] In some embodiments, a smart contract implemented by the blockchain 104, 200 may enforce that cryptographic key is to be made available and/or otherwise establish the communications channel. For example, an attempt, whether successful or not, to establish the communications channel may be recorded in the blockchain 104, 200. As part of the interaction between the first and second computing devices 108a, 108b and the blockchain 104, 200, the smart contract may check that the first and/or second computing devices 108a, 108b are authorized to receive the key. If authorized, as part of recording a transaction, the interaction may involve the first and/or second computing devices 108a, 108b receiving the cryptographic key, a link to the key or another key to facilitate access to a repository containing the key.

[0094] In some embodiments, the received information about the sending of the encrypted message via the communications channel 430 comprises a confirmation that the second computing device 108b received the encrypted message; and/or a signature applied, by the second computing device 108b, to the confirmation. Such a confirmation may be a binary indicator, text string or otherwise. Further, such a confirmation may be recorded in any appropriate way in the blockchain 104, 200 (e.g., the actual received information itself or a representation of such information).

[0095] In some embodiments, the received information about the sending of the encrypted message via the communications channel 430 comprises: a confirmation that the first computing device 108a sent the encrypted message; and/or a signature applied, by the first computing device 108a, to the confirmation.

[0096] Such confirmation(s) may be a binary indicator, text string or otherwise. Further, such confirmation(s) may be recorded in any appropriate way in the blockchain 104, 200 (e.g., the actual received information itself or a representation of such information).

[0097] The confirmation(s) may allow the blockchain 104, 200 to store a record of the communications that have happened. The level of information stored and whether such information is anonymous/public may depend on the implementation. [0098] Figure 7 is a flowchart of a method 700 relating to use of a blockchain 104 according to an embodiment. The method 700 may be implemented by a computing node in the computing network 100 in the same or similar way as described above in relation to Figure 3. Reference is made to Figures 1 to 4 in the description that follows. Certain blocks of the method 700 may be omitted according to the embodiments described below.

[0099] In some embodiments, the method 700 comprises, at block 702, minting a plurality of assets, the plurality of assets comprising the first and second assets 210a, 210b.

[00100] The method 700 further comprises, at block 704, deploying a smart contract to enforce transactions on the blockchain.

[00101] The method 700 further comprises, at block 706, receiving a transaction request associated with a first proposed owner to record that the first proposed owner is to take ownership of a selected one of the plurality of assets.

[00102] In response to verifying that the transaction request satisfies the smart contract, the method 700 further comprises, at block 708, causing a transaction record to be added to the blockchain 104 to link the first proposed owner to the selected one of the plurality of assets.

[00103] Thus, in such embodiments, a plurality of assets (such as a fixed number of unique assets with varying rarity features) may be minted and when a proposed owner wishes to acquire an asset, they may cause their computing device to send the transaction request to the relevant computing node (e.g., through use of their digital wallet and/or application on their device). The first proposed owner may have selected one of the assets or otherwise have the asset assigned to them, depending on the implementation. If the transaction request satisfies the smart contract (e.g., if payment has been made and/or the request is deemed valid), the transaction is recorded as the transaction record. The transaction record may associate the owner with the asset (e.g., in some cases, the transaction record may comprise or represent an NFT).

[00104] In some embodiments, the method 700 comprises, at block 710, receiving an additional transaction request associated with a second proposed owner to record that the second proposed owner is to take ownership of the selected one of the plurality of assets.

[00105] In response to verifying that the additional transaction request satisfies the smart contract, the method 700 further comprises, at block 712, causing an additional transaction record to be added to the blockchain to link the second proposed owner to the selected one of the plurality of assets.

[00106] Such embodiments refer to the change of ownership of a selected asset and how this may be reflected within the blockchain (e.g., via an additional transaction record or NFT). Each transaction record associate with a particular asset uses the same unique identifier. However, the transaction record may provide the link to the owner at that time.

[00107] In some embodiments, the communications channel 430 is established by providing information needed to set up the communications channel 430 to the first and/or second computing device 108a, 108b.

[00108] In some embodiments, the provided information comprises information about how to access a peer-to-peer, P2P, network associated with the computing network 100 for facilitating the communications channel 430. Such information may include network addresses, access codes and/or other data that allows communications to be routed via the P2P network.

[00109] In some embodiments, the provided information comprises information about a security procedure to be implemented between the first and second computing device 108a, 108b in order to establish the communications channel 430. This may refer to the handshake procedure, information about a security protocol that needs to be followed or other information that allows the first and second computing device 108a, 108b to determine what needs to be done to establish the communications channel 430 therebetween.

[00110] In some embodiments, the provided information comprises information about a cryptographic key such as described above.

[00111] In some embodiments, the provided information comprises information about how to access the cryptographic key such as described above.

[00112] In some embodiments, the provided information comprises information about an identity of and/or link to (e.g., a device identifier/address) the first and/or second computing device 108a, 108b.

[00113] In some embodiments, any number, variation or combination of such provided information may allow the first and second computing device 108a, 108b to “locate” each other within the computing network 100 and thereby initiate communications with each other provided they have followed the protocol specified or enforced via the blockchain 104. [00114] Figure 8 schematically illustrates a (non-transitory) machine-readable medium 800 for implementing various embodiments described herein. The machine-readable medium 800 may be implemented by (e.g., processing circuitry of) a computing node such as described in relation to Figure 3 (and with reference to Figure 1) and/or processing circuity of a different computing node communicatively coupled to the computing node implementing the machine-readable medium 800.

[00115] The non-transitory machine-readable medium 800 stores instructions 802 which, when executed by processing circuitry 804, cause the processing circuitry 804 to implement the methods of any of the embodiments described in relation to Figures 3 to 8.

[00116] Figure 9 is a simplified schematic drawing of an apparatus 900 for implementing various embodiments described herein. The apparatus 900 may be implemented by a computing node such as described in relation to Figure 3.

[00117] In this embodiment, the apparatus 900 provides the same functionality as the method 300. The apparatus 900 comprises processing circuitry 902 communicatively coupled to an interface 904 (such as a communications interface like a port, wireless channel, wired channel, etc.) for communicating with the computing network 100. The apparatus 900 further comprises a machine-readable medium 906 (e.g., non-transitory or otherwise) storing instructions 908 which, when executed by the processing circuitry 902, cause the processing circuitry 902 to implement the method 300.

[00118] In other embodiments, the apparatus 900 provides the same functionality as any of the embodiments relating to Figures 3 to 8.

[00119] Figure 10 is a flowchart of a method 1000 for facilitating communications in a computing network 100 according to an embodiment. Whereas method 300 refers to a computing node (other than the first or second computing device 108a, 108b), the method 1000 is implemented by the first computing device 108a. Reference is made to the above description with regards to the implementation of the method 1000 and related embodiments. The functionality provided by embodiments relating to Figures 3 to 8 may have corresponding functionality and/or applicability to the method 1000/related embodiments, and vice versa.

[00120] The method 1000 is computer-implemented method for facilitating communications in a computing network 100 between a first computing device 108a associated with an owner 106a, 212a of a first asset 210a and a second computing device 108b associated with an owner 106b, 212b of a second asset 210b. [00121] A first identifier 204a is associated with the first asset 210a.

[00122] A second identifier 204b is associated with the second asset 210b.

[00123] A blockchain 104, 200 accessible to the computing network 100 is indicative of: an association 208a between the first identifier 204a and the owner 212a of the first asset 210a; and an association 208b between the second identifier 204b and the owner 212b of the second asset 210b.

[00124] The method 1000 comprises, at block 1002, receiving an indication that a communications channel 430 can be established between the first computing device 108a and the second computing device 108b based on verification, using the blockchain 104, that the first computing device 108a is associated with the owner 212a of the first asset 210a and the second computing device 108b is associated with the owner 212b of the second asset 210a. This part of block 1002 is related to the applicable part of the method 300.

[00125] Block 1002 further comprises receiving data for sending to the second computing device. This data may refer to a message or other data input by the owner 212a.

[00126] The method 1000 further comprises, at block 1004, establishing the communications channel 430 (as described above).

[00127] The method 1000 further comprises, at block 1006, sending the data securely to the second computing device 108b via the communications channel 430.

[00128] The method 1000 may facilitate the functionality mentioned above in relation to the other embodiments and/or provide the same, similar or corresponding technical benefits. For example, the method 1000 may provide a way to connect the two owners 212a, 212b via their respective assets 210a, 210b.

[00129] Some embodiments relating to the method 1000 are described below.

[00130] Figure 11 is a flowchart of a method 1100 relating to use of a communications channel according to an embodiment. The method 1100 may be implemented in the same way as the method 1000.

[00131] In some embodiments, the method 1100 further comprises, at block 1102, sending, to a computing node associated with the computing network, information about the sending of the data. The computing node (e.g., as referred to in the method 300) is configured to store a message record representative of the information about the sending of the data. This storing of the message record may be in the recipient computing node itself or another computing node.

[00132] In some embodiments, the information comprises the first and second identifiers 204a, 204b.

[00133] In some embodiments, corresponding functionality relating to the embodiments mentioned in relation to Figures 3 to 8 may be implemented by the first computing device 108a.

[00134] Figure 12 schematically illustrates a (non-transitory) machine-readable medium 1200 for implementing various embodiments described herein. The machine- readable medium 1200 may be implemented by (e.g., processing circuitry of) the first computing device 108a.

[00135] The non-transitory machine-readable medium 1200 stores instructions 1202 which, when executed by processing circuitry 1204, cause the processing circuitry 1204 to implement the methods relating to any of the embodiments described in relation to Figures 11 to 12.

[00136] Figure 13 is a simplified schematic drawing of an apparatus 1300 for implementing various embodiments described herein. The apparatus 1300 is implemented by the first computing device 108a.

[00137] In this embodiment, the apparatus 1300 provides the same functionality as the method 1000. The apparatus 1300 comprises processing circuitry 1302 communicatively coupled to an interface 1304 (such as a communications interface like a port, wireless channel, wired channel, etc.) for communicating with the computing network 100. The apparatus 1300 further comprises a machine-readable medium 1306 (e.g., non-transitory or otherwise) storing instructions 1308 which, when executed by the processing circuitry 1302, cause the processing circuitry 1302 to implement the method 1000.

[00138] In other embodiments, the apparatus 1300 provides the same functionality as any of the embodiments relating to Figures 11 to 12.

[00139] Figure 14 is a flowchart of a method 1400 for facilitating communications in a computing network 100 according to an embodiment. Whereas method 1000 refers to the first computing device 108a, the method 1400 is implemented by the second computing device 108b. Reference is made to the above description with regards to the implementation of the method 1000 and related embodiments. The functionality provided by embodiments relating to Figures 3 to 8 may have corresponding functionality and/or applicability to the method 1400/related embodiments, and vice versa.

[00140] The method 1400 is computer-implemented method for facilitating communications in a computing network 100 between a first computing device 108a associated with an owner 106a, 212a of a first asset 210a and a second computing device 108b associated with an owner 106b, 212b of a second asset 210b.

[00141] A first identifier 204a is associated with the first asset 210a.

[00142] A second identifier 204b is associated with the second asset 210b.

[00143] A blockchain 104, 200 accessible to the computing network 100 is indicative of: an association 208a between the first identifier 204a and the owner 212a of the first asset 210a; and an association 208b between the second identifier 204b and the owner 212b of the second asset 210b.

[00144] The method 1400 comprises, at block 1402, receiving an indication that a communications channel 430 can be established between the first computing device 108a and the second computing device 108b based on verification, using the blockchain 104, that the first computing device 108a is associated with the owner 212a of the first asset 210a and the second computing device 108b is associated with the owner 212b of the second asset 210b.

[00145] The method 1400 further comprises, at block 1404, establishing the communications channel 430.

[00146] The method 1400 further comprises, at block 1406, receiving data sent securely by the first computing device 108a (as in method 1000) via the communications channel 430.

[00147] The method 1400 is thus related to the method 1000 and may facilitate the functionality mentioned above in relation to the other embodiments and/or provide the same, similar or corresponding technical benefits. For example, the method 1400 may provide a way to connect the two owners 212a, 212b via their respective assets 210a, 210b.

[00148] Some embodiments relating to the method 1400 are described below.

[00149] Figure 15 is a flowchart of a method 1500 relating to use of a communications channel according to an embodiment. The method 1500 may be implemented in the same way as the method 1400. [00150] The method 1500 further comprises, at block 1502, sending, to a computing node associated with the computing network, information about the receiving of the data. The computing node is configured to store a message record representative of the information about the receiving of the data. This storing of the message record may be in the recipient computing node itself or another computing node.

[00151] Figure 16 schematically illustrates a (non-transitory) machine-readable medium 1600 for implementing various embodiments described herein. The machine- readable medium 1600 may be implemented by (e.g., processing circuitry of) the second computing device 108b.

[00152] The non-transitory machine-readable medium 1600 stores instructions 1602 which, when executed by processing circuitry 1604, cause the processing circuitry 1604 to implement the methods relating to any of the embodiments described in relation to Figures 14 to 15.

[00153] Figure 17 is a simplified schematic drawing of an apparatus 1700 for implementing various embodiments described herein. The apparatus 1700 is implemented by the second computing device 108b.

[00154] In this embodiment, the apparatus 1700 provides the same functionality as the method 1400. The apparatus 1700 comprises processing circuitry 1702 communicatively coupled to an interface 1704 (such as a communications interface like a port, wireless channel, wired channel, etc.) for communicating with the computing network 100. The apparatus 1700 further comprises a machine-readable medium 1706 (e.g., non-transitory or otherwise) storing instructions 1708 which, when executed by the processing circuitry 1702, cause the processing circuitry 1702 to implement the method 1400.

[00155] In other embodiments, the apparatus 1700 provides the same functionality as any of the embodiments relating to Figures 14 to 15.

[00156] Any of the blocks, nodes, instructions or modules described in relation to the figures may be combined with, implement the functionality of or replace any of the blocks, nodes, instructions or modules described in relation to any other of the figures. For example, methods may be implemented as machine-readable media or apparatus, machine-readable media may be implemented as methods or apparatus, and apparatus may be implemented as machine-readable media or methods. Further, any of the functionality described in relation to any one of a method, machine readable medium or apparatus described herein may be implemented in any other one of the method, machine readable medium or apparatus described herein. Any claims written in single dependent form may be re-written, where appropriate, in multiple dependency form since the various examples described herein may be combined with each other.

[00157] Examples in the present disclosure can be provided as methods, systems or as a combination of machine-readable instructions and processing circuitry. Such machine-readable instructions may be included on a non-transitory machine (for example, computer) readable storage medium (including but not limited to disc storage, CD-ROM, optical storage, flash storage, etc.) having computer readable program codes therein or thereon.

[00158] The present disclosure is described with reference to flow charts and block diagrams of the method, devices and systems according to examples of the present disclosure. Although the flow charts described above show a specific order of execution, the order of execution may differ from that which is depicted. Blocks described in relation to one flow chart may be combined with those of another flow chart. It shall be understood that each block in the flow charts and/or block diagrams, as well as combinations of the blocks in the flow charts and/or block diagrams can be realized by machine readable instructions.

[00159] The machine-readable instructions may, for example, be executed by a general-purpose computer, a special purpose computer, an embedded processor or processors of other programmable data processing devices to realize the functions described in the description and diagrams. In particular, a processor or processing circuitry, or a module thereof, may execute the machine-readable instructions. Thus, functional nodes, modules or apparatus of the system and other devices may be implemented by a processor executing machine readable instructions stored in a memory, or a processor operating in accordance with instructions embedded in logic circuitry. The term ‘processor’ is to be interpreted broadly to include a CPU, processing unit, ASIC, logic unit, or programmable gate array etc. The methods and functional modules may all be performed by a single processor or divided amongst several processors.

[00160] Such machine-readable instructions may also be stored in a computer readable storage that can guide the computer or other programmable data processing devices to operate in a specific mode.

[00161] Such machine readable instructions may also be loaded onto a computer or other programmable data processing devices, so that the computer or other programmable data processing devices perform a series of operations to produce computer-implemented processing, thus the instructions executed on the computer or other programmable devices realize functions specified by block(s) in the flow charts and/or in the block diagrams.

[00162] Further, the teachings herein may be implemented in the form of a computer program product, the computer program product being stored in a storage medium and comprising a plurality of instructions for making a computer device implement the methods recited in the examples of the present disclosure.

[00163] While the method, apparatus and related aspects have been described with reference to certain examples, various modifications, changes, omissions, and substitutions can be made without departing from the scope of the present disclosure. It is intended, therefore, that the method, apparatus and related aspects be limited by the scope of the following claims and their equivalents. It should be noted that the above- mentioned examples illustrate rather than limit what is described herein, and that many implementations may be designed without departing from the scope of the appended claims. Features described in relation to one example may be combined with features of another example.

[00164] The word “comprising” does not exclude the presence of elements other than those listed in a claim, “a” or “an” does not exclude a plurality, and a single processor or other unit may fulfil the functions of several units recited in the claims.

[00165] The features of any dependent claim may be combined with the features of any of the independent claims or other dependent claims.