Information processing method, information processing apparatus, and information processing system
By issuing NFTs in a distributed ledger system to manage the use permissions of the device, the shortcomings in the granting and management of permissions in the prior art are solved, and safe and efficient permission control is achieved.
Patent Information
- Application Number
- CN202380070195.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-10-19
- Filing Date
- 2023-10-18
- Publication Date
- 2025-05-13
AI Technical Summary
In the prior art, it is impossible to effectively control the allocation and management of the use rights of the device, especially at the system level, it is difficult to transfer the use rights, obtain contact address and grant the cost value information between friends.
Manage the device's usage rights by issuing non-fungible tokens (NFTs) in a distributed ledger system. The specific steps include obtaining the owner's address and permission information, controlling the distributed ledger system to issue corresponding NFTs, and thus implementing control of device functions.
Appropriate control over device usage permissions is achieved, ensuring the management security and automation of permissions, and reducing costs and energy consumption.
Smart Images

Figure CN119998806A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing method, an information processing device and an information processing system. Background Art
[0002] Currently, standards are being developed for using information terminals such as smartphones as authentication keys (also called digital keys) for various devices. One example of such standards is the Car Connectivity Consortium standard (see Non-Patent Document 1).
[0003] (Prior art literature)
[0004] (Non-patent literature)
[0005] Non-Patent Literature 1: Car Connectivity Consortium, [September 1, 2023], website <URL: https: / / carconnectivity.org / > Summary of the invention
[0006] Problems to be solved by the invention
[0007] However, in the above-mentioned conventional authentication, there is a problem that the granting of the use authority of the device and the like cannot be appropriately controlled.
[0008] Therefore, the present invention provides an information processing method that helps to appropriately control the use authority of a device.
[0009] Means for solving problems
[0010] An information processing method involved in one embodiment of the present invention is an information processing method executed by a device. In the information processing method, an owner address and first permission information are obtained, the owner address is the address of the owner of the device in the distributed ledger, and the first permission information includes information related to the authority of the owner of the device to use the device. The distributed ledger system is controlled to issue a first NFT (Non-Fungible Token) including the first permission information to the owner address.
[0011] In addition, these general or specific methods may be implemented by a system, device, integrated circuit, computer program, or a computer-readable recording medium such as a CD-ROM, or by any combination of systems, devices, integrated circuits, computer programs, and recording media.
[0012] Effects of the Invention
[0013] The present invention helps to properly control the use authority of a device. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] Figure 1 It is a schematic diagram showing the overall configuration of the information processing system in the embodiment.
[0015] Figure 2 It is a block diagram showing the functional configuration of a vehicle in the embodiment.
[0016] Figure 3 It is a block diagram showing the functional configuration of a terminal in the embodiment.
[0017] Figure 4 This is a block diagram showing the functional configuration of the ledger server in the embodiment.
[0018] Figure 5A This is an explanatory diagram showing the data structure of the blockchain in the embodiment.
[0019] Figure 5B It is an explanatory diagram showing the data structure of transaction data in the embodiment.
[0020] Figure 6 This is an explanatory diagram showing an example of information related to authority to use a vehicle in the embodiment.
[0021] Figure 7 This is an explanatory diagram showing an example of information included in the NFT in the embodiment.
[0022] Figure 8 This is an explanatory diagram showing an example of the hierarchical structure of NFT in the implementation method.
[0023] Fig. 9 This is a sequence diagram showing the processing of the information processing system when a user purchases a vehicle according to the embodiment.
[0024] Fig.10 This is a sequence diagram showing the processing of the information processing system when the owner uses the vehicle in the embodiment.
[0025] Fig.11 This is a first sequence diagram showing the process of the information processing system when the owner grants the use authority in the embodiment.
[0026] Fig.12 This is a second sequence diagram showing the process of the information processing system when the owner grants the use authority in the embodiment.
[0027] Fig.13A This is a third sequence diagram showing the process of the information processing system when the owner grants the use authority in the embodiment.
[0028] Fig. 13B This is a sequence diagram showing the processing of the information processing system when a friend uses the vehicle in the embodiment.
[0029] Fig.14 This is a first sequence diagram showing the process of the information processing system when a friend grants usage authority in the embodiment.
[0030] Fig.15 This is a second sequence diagram showing the process of the information processing system when a friend grants usage authority in the embodiment.
[0031] Fig.16A This is a third sequence diagram showing the process of the information processing system when a friend grants usage authority in the embodiment.
[0032] Fig. 16B 1 is a sequence diagram showing the processing of the information processing system when a secondary friend uses the vehicle in the embodiment.
[0033] Fig.17 This is a first sequence diagram showing the processing of the information processing system when the owner transfers the vehicle in the embodiment.
[0034] Fig.18 This is a second sequence diagram showing the processing of the information processing system when the owner transfers the vehicle in the embodiment.
[0035] Fig.19 It is a sequence diagram showing the processing of the information processing system when registering revocation information in a modification of the embodiment.
[0036] Fig. 20 This is a sequence diagram showing the processing of the information processing system when the owner uses the vehicle in a modified example of the embodiment. DETAILED DESCRIPTION
[0037] (Foundation that forms the basis of the present invention)
[0038] Regarding the technology of using an information terminal as an authentication key described in the "Background Art" section, the inventors of the present invention have discovered the following problems.
[0039] By using information terminals such as smartphones as authentication keys for various devices, it is possible to easily authenticate when using a device using an information terminal without using a physical key. Furthermore, since the above authentication can be easily performed using an information terminal, the owner of the device (also called the object owner) can easily grant the right to use the device to a person who is different from the owner (also called a friend) who is going to use the device.
[0040] Furthermore, it becomes easy to manage the usage history of the key and to track the person who used the key in the past (in other words, the person who used the key to use the device).
[0041] However, in the conventional authentication when using a device, there is a problem that the granting of the use authority of the device cannot be properly controlled. Specifically, as problems in the conventional authentication when using a device, there are the following problems.
[0042] That is, as a problem in authentication when using a device in the past, there is a problem that a friend cannot grant usage rights to another friend on the system. Also, there is a problem that it is not easy to obtain the contact address of the person with usage rights (owner or friend) on the system when granting usage rights. Also, there is a problem that it is not easy to transfer value information as the price when granting usage rights on the system when granting usage rights. Also, there is a problem that the transfer of ownership of the device cannot be managed on the system. Also, there is a problem that a server that manages usage rights for each provider of the device (manufacturer or seller, etc.) is needed, which leads to increased costs or increased power consumption.
[0043] Therefore, the present invention provides an information processing method that helps to appropriately control the use authority of a device.
[0044] Hereinafter, inventions obtained from the disclosure of this specification are exemplified, and effects obtained from the inventions are described.
[0045] (1) An information processing method is an information processing method executed by a device, in which an owner address and first permission information are obtained, wherein the owner address is the address of the owner of the device in a distributed ledger, and the first permission information includes information related to the permission of the owner of the device to use the device, and the distributed ledger system is controlled to issue a first NFT (Non-Fungible Token) including the first permission information to the owner address.
[0046] In the above manner, the device causes the distributed ledger system to issue the first NFT, thereby appropriately managing information related to the device owner's authority to use the device in a manner that is substantially tamper-proof through the distributed ledger. Accordingly, the device's use authority can be appropriately controlled based on the device owner's authority to use the device. In this way, the information processing method helps to appropriately control the device's use authority.
[0047] (2) The information processing method as described in (1), further comprising: when the device controls a function, obtaining the owner address, obtaining a first storage address, where the first storage address is an address at which the first NFT is stored in the distributed ledger, determining whether the owner address and the first storage address are consistent, and controlling the function if it is determined that the owner address and the first storage address are consistent.
[0048] In the above manner, the device controls the function of the device based on confirming that the first NFT is stored in the owner address in the distributed ledger. The first NFT that is properly managed through the distributed ledger can be used to properly control the function of the device. Since the first NFT is properly managed through the distributed ledger, the function of the device can be properly controlled using the first NFT. In this way, the information processing method helps to properly control the use rights of the device.
[0049] (3) An information processing method as described in (1) or (2), wherein further in the information processing method, when the owner grants the user the authority to use the device, second permission information is obtained, the second permission information includes information related to the user's authority to use the device, and the distributed ledger system is controlled to issue a second NFT including the second permission information to the user address, the user address being the address of the user in the distributed ledger.
[0050] In the above manner, the device causes the distributed ledger system to issue a second NFT, thereby appropriately managing information related to the user's authority to use the device in a manner that is substantially tamper-proof through the distributed ledger. Accordingly, the use authority of the device can be appropriately controlled based on the user's authority to use the device. In this way, the information processing method helps to appropriately control the use authority of the device.
[0051] (4) The information processing method as described in (3), further comprising: when the device controls a function, obtaining the user address, obtaining a second storage address, where the second storage address is an address where the second NFT is stored in the distributed ledger, determining whether the user address and the second storage address are consistent, and controlling the function if it is determined that the user address and the second storage address are consistent.
[0052] In the above manner, the device controls the function of the device based on confirming that the second NFT is stored in the user address in the distributed ledger. The second NFT that is properly managed through the distributed ledger can be used to properly control the function of the device. Since the second NFT is properly managed through the distributed ledger, the function of the device can be properly controlled using the second NFT. In this way, the information processing method helps to properly control the use rights of the device.
[0053] (5) The information processing method as described in (3) or (4), when controlling the distributed ledger system to issue the second NFT, controls the distributed ledger system to issue the second NFT through a smart contract.
[0054] In the above manner, since the device performs information processing to issue the second NFT through a smart contract, it can automatically perform the above information processing with higher security than if the information processing is performed by other software or manual. Therefore, the information processing method helps to properly control the use authority of the device.
[0055] (6) An information processing method as described in any one of (3) to (5), further in which, when the user grants the secondary user the authority to use the device, third permission information is obtained, and the third permission information includes information related to the secondary user's authority to use the device, and the distributed ledger system is controlled to issue a third NFT including the third permission information to the secondary user address, and the secondary user address is the address of the secondary user in the distributed ledger.
[0056] In the above manner, the device causes the distributed ledger system to issue the third NFT, thereby appropriately managing information related to the user's authority to use the device in a manner that is substantially tamper-proof through the distributed ledger. Accordingly, the device's use authority can be appropriately controlled based on the user's authority to use the device. In this way, the information processing method helps to appropriately control the device's use authority.
[0057] (7) The information processing method as described in (6), further comprising: when the device controls a function, obtaining the secondary user address, obtaining a third storage address, wherein the third storage address is an address at which the third NFT is stored in the distributed ledger, determining whether the secondary user address and the third storage address are consistent, and controlling the function if it is determined that the secondary user address and the third storage address are consistent.
[0058] In the above manner, the device controls the function of the device based on confirming that the third NFT is stored in the user address in the distributed ledger. The third NFT that is properly managed through the distributed ledger can be used to properly control the function of the device. Since the third NFT is properly managed through the distributed ledger, the function of the device can be properly controlled using the third NFT. In this way, the information processing method helps to properly control the use rights of the device.
[0059] (8) The information processing method described in (6) controls the distributed ledger system when issuing the third NFT, thereby issuing the third NFT through a smart contract.
[0060] In the above manner, since the device performs information processing to issue the third NFT through a smart contract, it can automatically perform the above information processing with higher security than if the information processing is performed by other software or manual. Therefore, the information processing method helps to properly control the use authority of the device.
[0061] (9) An information processing method as described in any one of (1) to (8), wherein further in the information processing method, when the private key of the owner is leaked, control is performed in a manner such that expiration information that makes the private key of the owner invalid is stored in the distributed ledger, and the expiration information is also information given a digital signature using the private key of the owner.
[0062] In this way, the device can invalidate the private key when the owner's private key is leaked. Since the invalid private key cannot function as a private key after that, the use of the device using the leaked private key can be prevented in advance. In this way, the information processing method helps to properly control the use authority of the device.
[0063] (10) The information processing method as described in (9), further comprising: when the device controls a function, obtaining the owner address, obtaining a first storage address, wherein the first storage address is an address at which the first NFT is stored in the distributed ledger, and determining whether the expiration information of the owner's private key has been stored in the distributed ledger. If it is determined that the expiration information has been stored in the distributed ledger, even if it is determined that the owner address and the first storage address are consistent, control of the function is prohibited.
[0064] In this way, the device can use the expiration information of the private key stored in the distributed ledger to prohibit the control of the function performed by using the leaked private key. In this way, the information processing method helps to properly control the use authority of the device.
[0065] (11) In the information processing method according to any one of (1) to (10), the first authority information includes information indicating that use of the device by the owner is restricted.
[0066] In the above manner, since the information indicating that the owner is restricted from using the device is included in the first permission information and further stored in the distributed ledger, the device can appropriately restrict the owner from using the device. In this way, the information processing method helps to appropriately control the use authority of the device.
[0067] (12) In the information processing method described in (11), the first permission information includes the validity period of the first NFT.
[0068] In the above manner, since the information showing the validity period of the first NFT is included in the first permission information and further stored in the distributed ledger, the device can use the validity period of the first NFT to appropriately restrict the owner from using the device. In this way, the information processing method helps to appropriately control the use authority of the device.
[0069] (13) In the information processing method described in (11), the first permission information includes information indicating whether the user has the authority to issue a second NFT including second permission information, and the second permission information includes information related to the user's authority to use the device.
[0070] In the above manner, since the information indicating whether the user has the authority to issue the second NFT is included in the first authority information and further stored in the distributed ledger, the device can use the information indicating whether the user has the authority to issue the second NFT to appropriately restrict the owner from using the device. In this way, the information processing method helps to appropriately control the use authority of the device.
[0071] (14) In the information processing method according to (11), the first authority information includes permission information indicating control of a function determined for each of the devices.
[0072] In the above manner, since the permission information showing the control of the function is included in the first permission information and further stored in the distributed ledger, the device can use the permission information showing the control of the function to appropriately restrict the owner from using the device. In this way, the information processing method helps to appropriately control the use authority of the device.
[0073] (15) An information processing method as described in any one of (1) to (14), further in which, when the first NFT is transferred in the distributed ledger system, the distributed ledger system is controlled so that the value information is transferred as the cost of the first NFT.
[0074] In the above manner, the device can control the following through the distributed ledger: while transferring the first NFT, the value information is also transferred as the cost of the first NFT. Accordingly, since the transfer of the first NFT and the transfer of the value information as the cost of the first NFT can be managed together through the distributed ledger, it is easier and more appropriate to process the information than if the transfer of the first NFT and the transfer of the value information as the cost of the first NFT are managed separately. In this way, the information processing method helps to properly control the use rights of the device.
[0075] (16) The information processing method as described in (15), when controlling the distributed ledger system to transfer the value information, controls the distributed ledger system to transfer the value information through a smart contract.
[0076] In the above manner, since the device performs information processing to transfer the value information as the price of the first NFT through the smart contract, it can automatically perform the above information processing with higher security than if the information processing is performed by other software or manual. Therefore, the information processing method helps to properly control the use authority of the device.
[0077] (17) In the information processing method according to any one of (1) to (16), the address in the distributed ledger is an address calculated in advance using a private key of the owner.
[0078] In this way, the device can use the owner's private key to easily calculate the owner's address in the distributed ledger. Therefore, the information processing method can more easily and appropriately control the use authority of the device.
[0079] (18) The information processing method described in (17), wherein the information processing method is a method of controlling the distributed ledger system using the private key which is a digital key defined by CCC (Car Connectivity Consortium).
[0080] In this way, the distributed ledger system can be controlled more easily using the private key as a digital key defined by the CCC. Therefore, the information processing method can control the use authority of the device more easily and appropriately.
[0081] (19) An information processing device, comprising: an acquisition unit, which acquires an owner address and first permission information, wherein the owner address is the address of the owner of the device in a distributed ledger, and the first permission information includes information related to the permission of the owner of the device to use the device; and a processing unit, which controls the distributed ledger system to issue a first NFT including the first permission information to the owner address, wherein the NFT refers to a Non-Fungible Token.
[0082] Through the above-mentioned manner, the information processing device can achieve the same effect as the above-mentioned information processing method.
[0083] (20) An information processing system comprising: the information processing device described in (19); an information processing terminal held by the owner; and the distributed ledger system.
[0084] Through the above manner, the information processing system can achieve the same effect as the above information processing method.
[0085] In addition, these general or specific methods may be implemented by a system, device, integrated circuit, computer program, or a computer-readable recording medium such as a CD-ROM, or by any combination of systems, devices, integrated circuits, computer programs, and recording media.
[0086] Hereinafter, the embodiments will be described in detail with reference to the drawings.
[0087] In addition, the embodiments to be described below are all general or specific examples. The values, shapes, materials, components, configuration positions of components, connection methods, steps, and order of steps shown in the following embodiments are all examples, and their purpose is not to limit the present invention. Moreover, the components of the following embodiments that are not recorded in the independent technical solutions showing the highest concept will be described as arbitrary components.
[0088] (Implementation Method)
[0089] In the present embodiment, an information processing method, an information processing device, and an information processing system that contribute to appropriate control of device usage authority are described.
[0090] Figure 1 Schematic diagram showing the overall configuration of the information processing system 1 in this embodiment.
[0091] like Figure 1 As shown, the information processing system 1 includes a vehicle 10, a distributed ledger system 20, and terminals T0 and T1. The information processing system 1 may further include a terminal T2.
[0092] The vehicle 10 is a vehicle that can be used by the user U0, etc. More specifically, the user U0, etc. uses the vehicle 10, including riding in the vehicle 10 or driving the vehicle 10, and includes locking or unlocking the doors of the vehicle 10 or starting the power device (engine or motor, etc.) of the vehicle 10. The energy source of the vehicle 10 can be gasoline, electricity, or other energy sources (hydrogen or natural gas, etc.).
[0093] The vehicle 10 is an example of a device that requires a digital key when used. When the authentication using the digital key is successful, the device that requires a digital key can perform the function of the device. In addition to the vehicle 10, examples of devices that require a digital key when used may also include residences, gate devices that control access to people, lockers (i.e., storage equipment) that can store luggage, etc.
[0094] For example, among the functions of the vehicle 10 , the functions executed when the authentication based on the digital key succeeds include locking or unlocking the doors of the vehicle 10 or starting the power device (engine or motor, etc.) of the vehicle 10 .
[0095] In addition, among the functions of the residence, the functions executed when the authentication based on the digital key is successful include locking or unlocking the entrance door of the residence. Moreover, among the functions of the gate device, the functions executed when the authentication based on the digital key is successful include opening and closing control of the gate. Moreover, among the functions of the locker, the functions executed when the authentication based on the digital key is successful include locking or unlocking the door of the locker.
[0096] Assume that the vehicle 10 is owned by user U0. Furthermore, user U0 grants user U1 the right to use the vehicle 10, and user U1 grants user U2 the right to use the vehicle 10. In this case, user U0 can be equivalent to the owner. User U1 can be equivalent to a friend. User U2 can be equivalent to a secondary friend.
[0097] The distributed ledger system 20 is a system that owns and manages a distributed ledger. The distributed ledger stores NFTs including information related to the authority to use the vehicle 10 and stores various transaction data related to the authority to use the vehicle 10.
[0098] The distributed ledger system 20 includes ledger servers 21, 22, and 23 as a server group having a distributed ledger. In addition, the number of ledger servers included in the server group is not limited to three, and may be more than three.
[0099] The ledger server 21 is a server device that owns and manages a distributed ledger. The ledger server 21 owns a distributed ledger and updates the distributed ledger while synchronizing the distributed ledger with other ledger servers 22 and the like.
[0100] The ledger servers 22 and 23 are respectively the same servers as the ledger server 21 and operate independently of the ledger server 21 .
[0101] The terminal T0 is an information terminal device owned by the user U0. The user U0 is a user who owns the vehicle 10, that is, an owner. The information terminal device is, for example, a smartphone, a tablet computer, or a personal computer. The same applies to the following.
[0102] The terminal T1 is an information terminal device owned by a user U1 . The user U1 is a user (also referred to as a friend) who is granted the right to use the vehicle 10 by the user U0 who is the owner of the vehicle 10 .
[0103] The terminal T2 is an information terminal device owned by the user U2. The user U1 is a user (also referred to as a secondary user or a secondary friend) who is granted the right to use the vehicle 10 by the user U1 who is a friend.
[0104] Figure 2 It is a block diagram showing the functional configuration of the vehicle 10 in the present embodiment.
[0105] The vehicle 10 includes a communication unit 101, an acquisition unit 102, an authentication unit 103, a transaction processing unit 104, a function control unit 105, and a storage unit 106 as functional units. The acquisition unit 102, the authentication unit 103, the transaction processing unit 104, and the function control unit 105 can be implemented by a processor (e.g., a CPU (Central Processing Unit)) included in the vehicle 10 executing a predetermined program using a memory.
[0106] The communication unit 101 has a communication interface connected to the terminal T0. The communication interface connected to the terminal T0 is, for example, a communication interface of a communication standard for short-range wireless communication (for example, Bluetooth (registered trademark) or NFC (Near Field Communication)), but may also be a communication interface of wireless communication of other standards.
[0107] Furthermore, the communication unit 101 has a communication interface connected to the network N. The communication interface connected to the network N may be, for example, a communication interface of a communication standard of wireless communication (for example, a mobile communication system (3G (3rd Generation), 4G (4th Generation) or 5G (5th Generation)). The communication unit 101 is used when the functional unit of the vehicle 10 communicates with other devices.
[0108] The acquisition unit 102 acquires the wallet address (also referred to as address) of the user U0 etc. in the distributed ledger, and the authority information including information on the authority of the user U0 etc. to use the vehicle 10. The wallet address is a user-specific address showing the account of the user in the distributed ledger.
[0109] Specifically, the acquisition unit 102 acquires the address of the user U0 who is the owner of the vehicle 10 (also referred to as the owner address or the owner address) in the distributed ledger from the terminal T0 via the communication unit 101, and the permission information (also referred to as the first permission information) including information related to the owner's authority to use the vehicle 10.
[0110] In addition, the first permission information may include information indicating restrictions on the owner's use of the vehicle 10. Specifically, the first permission information may include the validity period of the first NFT. Furthermore, the first permission information may include information indicating whether the owner has permission to issue the second NFT. Furthermore, the first permission information may include information indicating whether control of functions determined for each vehicle 10 is permitted or not.
[0111] In addition, the acquisition unit 102 is able to acquire the address of the user U1 who is a friend of the vehicle 10 (also referred to as a friend address or a user address) in the distributed ledger, and the permission information (also referred to as the second permission information) including information related to the friend's permission to use the vehicle 10 from the terminal T1 via the communication unit 101.
[0112] In addition, the acquisition unit 102 is able to acquire the address of the user U2 who is a secondary friend of the vehicle 10 in the distributed ledger (also referred to as a secondary friend address or a secondary user address), and permission information (also referred to as third permission information) including information related to the permission of the secondary friend to use the vehicle 10 from the terminal T2 via the communication unit 101.
[0113] The authentication unit 103 is a processing unit that performs authentication processing for the owner, friend, or secondary friend (also referred to as the owner, etc.) The authentication unit 103 performs the above authentication processing when issuing an NFT including information related to the owner's authority to use the vehicle 10 or when controlling the function of the vehicle 10.
[0114] The transaction processing unit 104 controls the distributed ledger system 20 by processing transactions. The transaction processing unit 104 is also referred to as a processing unit.
[0115] Specifically, the transaction processing unit 104 generates transaction data including information, and sends the generated transaction data to the distributed ledger system 20, whereby the transaction data is stored in the distributed ledger. The transaction data may include, for example, issuance transaction data for issuing NFT.
[0116] For example, the transaction processing unit 104 generates transaction data that issues an NFT (equivalent to the first NFT) including information related to the owner's authority to use the vehicle 10 to the owner's address, and controls the distributed ledger system 20 to store the generated transaction data in the distributed ledger.
[0117] Furthermore, when transferring the first NFT in the distributed ledger system 20, the transaction processing unit 104 can control the distributed ledger system 20 so as to transfer the value information as the cost of the first NFT. At this time, the transaction processing unit 104 can also control the distributed ledger system 20 to transfer the value information through a smart contract.
[0118] Furthermore, for example, the transaction processing unit 104 generates transaction data that causes an NFT (equivalent to a second NFT) including information related to a friend's authority to use the vehicle 10 to be issued to a friend's address, and controls the distributed ledger system 20 to store the generated transaction data in the distributed ledger, where the friend's address is the address of the friend in the distributed ledger.
[0119] And for example, the transaction processing unit 104 generates transaction data that causes an NFT (equivalent to a third NFT) including information related to the secondary friend's authority to use the vehicle 10 to be issued to a secondary friend's address, and controls the distributed ledger system 20 to store the generated transaction data in the distributed ledger, and the secondary friend address is a secondary friend address in the distributed ledger.
[0120] The above NFTs (specifically, the first NFT, the second NFT, and the third NFT) are managed by the distributed ledger system 20 in a hierarchical manner (see Figure 8 ).
[0121] The function control unit 105 controls the functions of the vehicle 10. For example, the function control unit 105 controls locking or unlocking of doors of the vehicle 10 or starting of a power device (engine, motor, etc.) of the vehicle 10.
[0122] When controlling the above functions, the function control unit 105 can control the above functions after confirming that the first NFT is stored in the owner address.
[0123] Specifically, when controlling the above functions, the function control unit 105 obtains the owner address and obtains the address where the first NFT is stored in the distributed ledger, i.e., the first storage address. Then, the function control unit 105 determines whether the owner address and the first storage address are consistent. If it is determined that the owner address and the first storage address are consistent, the above functions can be controlled.
[0124] Furthermore, when controlling the above functions, the function control unit 105 can control the above functions based on confirming that the second NFT is stored in the friend's address.
[0125] Specifically, when controlling the above functions, the function control unit 105 obtains the friend's address and obtains the address where the second NFT is stored in the distributed ledger, i.e., the second storage address. Then, the function control unit 105 determines whether the friend's address and the second storage address are consistent. If it is determined that the friend's address and the second storage address are consistent, the above functions can be controlled.
[0126] Furthermore, when controlling the above functions, the function control unit 105 can control the above functions based on confirming that the third NFT is stored in the secondary friend address.
[0127] Specifically, when controlling the above functions, the function control unit 105 obtains the secondary friend address and obtains the address where the third NFT is stored in the distributed ledger, i.e., the third storage address. Then, the function control unit 105 determines whether the secondary user address and the third storage address are consistent. If it is determined that the secondary user address and the third storage address are consistent, the above functions can be controlled.
[0128] The storage unit 106 is a storage device for storing information. Specifically, the storage unit 106 can store authority information and public keys of the user U0, etc. The storage unit 106 is implemented by a semiconductor storage device (RAM (Random Access Memory) or SSD (Solid State Drive) etc.) or a magnetic storage device (HDD (Hard Disk Drive) etc.).
[0129] Figure 3 It is a block diagram showing the functional configuration of the terminal T0 in this embodiment.
[0130] The terminal T0 includes a communication unit 121, an authentication request unit 122, a permission management unit 123, and a storage unit 124. The authentication request unit 122 and the permission management unit 123 can be implemented by a processor (e.g., CPU) included in the terminal T0 executing a predetermined program using a memory. In addition, the terminals T1 and T2 also each include the same components as the terminal T0.
[0131] The communication unit 121 has a communication interface for connecting to the vehicle 10. The communication interface for connecting to the vehicle 10 is, for example, a communication interface of a near-field wireless communication standard (for example, Bluetooth (registered trademark) or NFC), but may be a communication interface of wireless communication of other standards.
[0132] Furthermore, the communication unit 121 has a communication interface connected to the network N. The communication interface connected to the network N may be, for example, a communication interface of a wireless communication standard (for example, a mobile communication system (3G, 4G, or 5G, etc.).
[0133] The communication unit 121 is used when the functional unit included in the terminal T0 communicates with other devices.
[0134] The authentication request unit 122 issues an authentication request for the user U0 who owns the terminal T0. The authentication request unit 122 issues the authentication request when issuing an NFT including information on the owner's authority to use the vehicle 10 or when controlling a function of the vehicle 10.
[0135] The authority management unit 123 manages the authority information related to the authority to use the vehicle 10. Specifically, the authority management unit 123 receives input of information related to the authority to use the vehicle 10 from the user U0 using the user interface (operation unit and display unit, etc.) of the terminal T0, and generates or updates the authority information. In addition, the authority management unit 123 sends the authority information held to the vehicle 10.
[0136] The storage unit 124 is a storage device for storing information. The storage unit 124 stores the private key of the user U0 holding the terminal T0. In addition, the storage unit 124 stores the public key of the vehicle 10. The storage unit 124 is implemented by a semiconductor storage device (RAM or SSD, etc.) or a magnetic storage device (HDD), etc.
[0137] Alternatively, the storage unit 124 may include a security element with high security strength, and the private key of the user U0 may be stored in the security element. In this way, the risk of leakage of the private key of the user U0 can be reduced.
[0138] Figure 4 It is a block diagram showing the functional configuration of the account server 21 in this embodiment.
[0139] The account server 21 includes a communication unit 201 , an account processing unit 202 , an execution unit 203 , and a storage unit 204 .
[0140] The communication unit 201 is a communication interface that is connected to the network N so that communication can be performed. The communication unit 201 may be a communication interface of a communication standard for wired communication (e.g., Ethernet (registered trademark) or the like), or a communication interface of a communication standard for wireless communication (e.g., Wi-Fi (registered trademark) or a mobile communication system (3G, 4G, or 5G, etc.). The communication unit 201 is used when the functional unit of the account server 21 communicates with other devices.
[0141] The ledger processing unit 202 performs processing related to the distributed ledger or transaction data. Specifically, when the ledger processing unit 202 receives transaction data from the vehicle 10 or the terminal T0, etc., it verifies the signature of the received transaction data, and controls to store the transaction data after successful verification in the distributed ledger owned by the storage unit 204. When storing the transaction data in the distributed ledger, the ledger processing unit 202 controls to generate a block including the transaction data to be stored, and for the generated block, the ledger processing unit 202 executes a consensus algorithm with the ledger servers 22 and 23 as other ledger servers, and stores the block in the distributed ledger when a consensus is reached. In addition, as a consensus algorithm, PBFT (Practical Byzantine Fault Tolerance), PoW (Proof of Work) or PoS (Proof of Stake) can be used. In addition, when Hyperledger fabric is used as an example of distributed ledger technology, the consensus algorithm may not be executed.
[0142] The execution unit 203 executes the smart contract. Specifically, when transaction data including an instruction to execute the smart contract is stored in the distributed ledger 211, the execution unit 203 reads the contract code of the smart contract from the distributed ledger 211 and executes the smart contract.
[0143] The storage unit 204 is a storage device for storing information. The storage unit 204 stores a distributed ledger 211. The storage unit 204 is implemented by a non-volatile storage device (SSD or HDD) or the like.
[0144] The distributed ledger 211 includes data having a structure connected in a chain by blocks including one or more transaction data.
[0145] Transaction data includes transaction data showing the transfer of tokens between users. As an example of a token, there is general value information (information with monetary value or equivalent value). And, as another example of a token, there is an NFT (Non-Fungible Token) equivalent to a digital key. An NFT equivalent to a digital key can also be considered as an NFT that shows the validity of a digital key or an NFT that proves the validity of a digital key.
[0146] Furthermore, the transaction data includes: transaction data including the contract code of the smart contract; transaction data including instructions for executing the smart contract; or transaction data including other information.
[0147] Figure 5A An explanatory diagram showing the data structure of a blockchain.
[0148] The blockchain is constructed by connecting blocks, which are recording units, into a chain. Each block has multiple transaction data and a hash value of the block immediately before it. Specifically, block B2 includes the hash value of block B1 in front of it. In addition, the hash value calculated based on the multiple transaction data included in block B2 and the hash value of block B1 is included in block B3 as the hash value of block B2. In this way, by including the content of the previous block as a hash value and connecting the blocks into a lock shape, it is possible to effectively prevent the recorded transaction data from being tampered with.
[0149] If the previous transaction data is changed, the hash value of the block will be different from the value before the change. In order to disguise the tampered block as the authentic one, all subsequent blocks must be remade, which is very difficult from a practical point of view. By using this property, it is possible to ensure the difficulty of tampering with the blockchain.
[0150] Figure 5B It is an explanatory diagram showing the data structure of transaction data.
[0151] Figure 5B The transaction data shown includes a transaction subject P1 and a digital signature P2. The transaction subject P1 is the data subject included in the transaction data. The digital signature P2 is obtained by signing with the signature key of the producer of the transaction data relative to the hash value of the transaction subject P1, and more specifically, is generated by encrypting with the producer's private key.
[0152] Since the transaction data has the digital signature P2, it is virtually impossible to tamper with it, thereby preventing the transaction subject from being tampered with.
[0153] Figure 61 is an explanatory diagram showing an example of information related to authority to use the vehicle 10 in the present embodiment.
[0154] Figure 6 The information 30 shown is, for example, information related to authority to use the vehicle 10 received by the acquisition unit 102 of the vehicle 10 from the owner (ie, the user U0 ).
[0155] like Figure 6 As shown, the information 30 includes a company id, a product id, a maximum number of depth, and a maximum number of friend NFTs.
[0156] The company id is an identifier of a company that provides the vehicle 10. The company that provides the vehicle 10 may be a company that manufactures the vehicle 10 or a company that sells the vehicle 10.
[0157] The product ID is an identifier that can uniquely identify the vehicle 10 .
[0158] The maximum number of depth is the upper limit of the depth of the levels in the hierarchy.
[0159] The maximum number of friend NFTs is the upper limit of the total number of friends (i.e. the total number of friend NFTs and sub-friend NFTs).
[0160] Figure 7 It is an explanatory diagram showing the information included in the NFT in this embodiment.
[0161] Figure 7The NFT40 shown includes a token id, a name, a token URI, an image, a company id, a product id, a signer address, a destination address, a current depth level, a maximum number of depth, a maximum number of friend NFTs, user info, an effective date, and an expiration date.
[0162] Among the information included in NFT 40 , information 40A (ie, token id, name, token URI, and image) is information included in a general NFT, and thus detailed description thereof is omitted.
[0163] Information 40B (i.e., company ID, product ID, signer address, destination address, current depth, maximum number of depth, maximum number of friend NFTs, user info, effective date, and expiration date) included in NFT 40 is unique information in NFT equivalent to a digital key. This is described in detail below.
[0164] The company id is an identifier of a company that provides the vehicle 10. The company that provides the vehicle 10 may be a company that manufactures the vehicle 10 or a company that sells the vehicle 10.
[0165] The product ID is an identifier that can uniquely identify the vehicle 10 .
[0166] The signature address is the address of the user who has given a signature to the NFT 40. The user who has given a signature to the NFT 40 is equivalent to the address of the user who has been given the right to use the NFT 40.
[0167] The destination address is the address to which the NFT 40 is issued. The address to which the NFT 40 is issued is equivalent to the address of the user to whom the use right is granted through the NFT 40.
[0168] The current depth is the depth of the NFT 40. The deeper the depth, the larger the value. For example, the owner's NFT's depth can be 0, the friend's NFT's depth can be 1, and the secondary friend's NFT's depth can be 2. This case is used as an example for explanation.
[0169] The maximum number of depth is the upper limit of the depth of the layer.
[0170] The maximum number of friend NFTs is the upper limit of the number of friend NFTs.
[0171] User information (user info) is information related to the person who issued the NFT, and may include, for example, an email address or SNS (Social Networking Service) account information that is the contact address of the person who issued the NFT.
[0172] The effective date is information indicating the date on which the NFT is issued.
[0173] The expiration date is information indicating the scheduled date when the NFT becomes invalid, and is information indicating the validity period of the NFT.
[0174] In addition, NFT40 may further include information indicating whether a friend or a secondary friend is allowed to exclusively use the vehicle 10 (e.g., exclusive use of friend). Exclusive use of friend can take one of two values, "allowed (e.g., 1)" and "not allowed (e.g., 0)". When exclusive use of friend is "allowed", when the friend NFT is valid, only the friend to whom the friend NFT is issued has the right to use the vehicle 10, and other owners or friends cannot use the vehicle 10.
[0175] Figure 8 This is an explanatory diagram showing the hierarchical structure of NFT in this embodiment.
[0176] Figure 8 A plurality of NFTs 41 , 42 , 43 , 44 , 45 , 46 , and 47 are shown having a hierarchical structure. Figure 8 The multiple NFTs 41 shown are recorded at a lower level as the level is deeper (in other words, the greater the depth).
[0177] The NFT 41 is an example of an owner NFT including information on the owner's authority to use the vehicle 10. The NFT 41 is stored at 0xAA, which is the address of the user U0 who is the owner.
[0178] In the company id, product id, maximum number of depth, and maximum number of friend NFTs of NFT 41, values determined by the owner can be set as permission information.
[0179] The signature address of NFT 41 is set to 0x00. This means that the person who grants the user U0 the right to use the vehicle 10 does not exist, that is, the user U0 is the owner.
[0180] The destination address of NFT41 is set to 0xAA, which indicates that NFT41 is an NFT issued to user U0.
[0181] The level (current depth) of NFT41 is 0. This is consistent with the fact that user U0 is the owner.
[0182] In the user information (user info) of the NFT 41, an e-mail address is set as a contact address of the user U0 having the address to which the NFT 41 is issued.
[0183] The NFT 42 is an example of a friend NFT including information on the friend's authority to use the vehicle 10. The NFT 42 is stored at 0xBB, which is the address of the user U1 who is the friend.
[0184] In the company id, product id, maximum number of depth, and maximum number of friend NFTs of NFT42, values determined by the owner can be set as permission information, similar to NFT41.
[0185] The signature address of NFT42 is set to 0xAA. This means that the person who granted the user U1 the right to use the vehicle 10 is the user U0 who is the owner. This is consistent with the user U1 being a friend.
[0186] The destination address of NFT42 is set to 0xBB, which indicates that NFT42 is an NFT issued to user U1.
[0187] The level (current depth) of NFT42 is 1. This is consistent with user U1 being a friend.
[0188] In the user information (user info) of the NFT 42 , an e-mail address is set as a contact address of the user U1 having the address to which the NFT 42 is issued.
[0189] NFT43 is the same as NFT42 and includes information related to the friend's authority to use the vehicle 10. NFT43 is stored in 0xCC, which is the address of a friend (not shown) different from the user U1. The information included in NFT43 is as follows: Figure 8 The information shown is information that can be set in the same way as NFT42, so the description is omitted.
[0190] NFT 44 is an example of a secondary friend NFT including information on the authority of the secondary friend to use the vehicle 10. NFT 44 is stored in 0xDD, which is the address of the user U2 as the secondary friend.
[0191] In the company id, product id, maximum number of depth, and maximum number of friend NFTs of NFT44, values determined by the owner can be set as permission information, similar to NFT41.
[0192] The signature address of NFT 44 is set to 0xBB. This means that the person who granted the user U2 the right to use the vehicle 10 is the user U1 who is a friend.
[0193] The destination address of NFT44 is set to 0xDD, which means that NFT44 is an NFT issued to user U2.
[0194] The level (current depth) of NFT44 is 2. This is consistent with the user U2 being a secondary friend.
[0195] In the user information (user info) of the NFT 44, an e-mail address is set as a contact address of the user U2 having the address to which the NFT 44 is issued.
[0196] NFT45, 46 and 47 are the same as NFT44 and include information related to the secondary friend's authority to use the vehicle 10. For example, NFT46 is stored at 0xFF, which is the address of a secondary friend (not shown) different from the user U2. The information included in NFT46 is as follows: Figure 8 The information shown in the figure can be set in the same way as NFT44, so the description is omitted.
[0197] Next, the processing of the information processing system 1 will be described.
[0198] First, the process of issuing the owner NFT to the user U0 who purchased the vehicle 10 by the information processing system 1 will be described.
[0199] Fig. 9 1 is a sequence diagram showing the processing of the information processing system 1 when the user U0 purchases the vehicle 10 in the present embodiment.
[0200] In step S101, the authentication request unit 122 of the terminal T0 calculates the address of the user U0. The authentication request unit 122 can calculate the address of the user U0 using the private key of the user U0 stored in the storage unit 124. Calculating the address using the private key can be achieved by using well-known techniques (for example, using an elliptic curve equation to calculate a public key from a private key, using a hash operation, etc. to calculate an address from a public key, etc.).
[0201] In step S102, the authentication request unit 122 of the terminal T0 receives a password from the user U0. The password received by the authentication request unit 122 from the user U0 may be a password provided by the sales company or the like when the user U0 purchases the vehicle 10 from the sales company. The fact that the user U0 obtains the password provided by the sales company or the like indicates that the user U0 is indeed the user who purchased the vehicle 10. The password received by the authentication request unit 122 from the user U0 may be used to authenticate that the user U0 is the user who purchased the vehicle 10.
[0202] In step S103A, the authentication request unit 122 of the terminal T0 requests user authentication from the vehicle 10. In the user authentication request, the authentication request unit 122 requests password authentication of the user U0 by sending an authentication request including the address of the user U0 and the password received in step S102 to the vehicle 10. And, the authentication request unit 122 of the terminal T0 receives an authentication response including the authentication result from the vehicle 10.
[0203] In step S103B, the authentication unit 103 of the vehicle 10 receives the authentication request sent in step S103A, and uses the address and password of the user U0 included in the authentication request to perform authentication (password authentication) of the user U0. The authentication unit 103 of the vehicle 10 sends an authentication response including the authentication result (specifically, authentication success or failure) to the terminal T0.
[0204] In step S104A, the authentication request unit 122 of the terminal T0 determines whether the authentication in step S103B is successful based on the authentication response received in step S103A. If it is determined that the authentication is successful ("Yes" in step S104A), the process proceeds to step S105, otherwise ("No" in step S104A), the process proceeds to step S104C.
[0205] In step S104C, the terminal T0 performs an exception process. For example, as an exception process, the terminal T0 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Fig. 9 A series of processing is shown.
[0206] In step S104B, the authentication unit 103 of the vehicle 10 determines whether the authentication in step S103B is successful. If it is determined that the authentication is successful ("Yes" in step S104B), the process proceeds to step S106, otherwise ("No" in step S104B), the process proceeds to step S104D.
[0207] In step S104D, the vehicle 10 performs an exception process. For example, as an exception process, the vehicle 10 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Fig. 9 A series of processing is shown.
[0208] In step S105, the authority management unit 123 of the terminal T0 sends information related to the authority to use the vehicle 10. The information related to the authority to use the vehicle 10 includes, for example, a company ID, a product ID, a maximum number of depth, and a maximum number of friend NFTs (see Figure 6 ). The vehicle 10 receives the transmitted information.
[0209] In step S106, the transaction processing unit 104 of the vehicle 10 executes control of issuing the owner NFT to the user U0. Specifically, the transaction processing unit 104 of the vehicle 10 generates transaction data (also referred to as issuance transaction data) including information on issuing the owner NFT to the user U0, and sends it to the distributed ledger system 20. The distributed ledger system 20 receives the sent issuance transaction data.
[0210] In addition, when the transaction data is sent to the distributed ledger system 20, it is sufficient to send the transaction data to one of the multiple ledger servers 21 and the like constituting the distributed ledger system 20. The sent transaction data is shared by the multiple ledger servers 21 and the like through the distributed ledger system 20 and stored in the distributed ledger. The same applies to the following.
[0211] In step S107, the authority management unit 123 of the terminal T0 stores the public key of the vehicle 10 in the storage unit 124. By storing the public key of the vehicle 10 in the terminal T0, the verification of the signature can be accelerated next time and thereafter. Since the stored public key is a public key of the vehicle 10 with high reliability, it can be used without verifying the legitimacy of the public key again. In other words, the process of verifying legitimacy can be omitted.
[0212] Furthermore, by storing the public key of the vehicle 10 in the terminal T0, when the owner NFT is transferred to another person, the stored public key of the vehicle 10 can be delivered. The public key of the vehicle 10 controls the functions of the vehicle 10 (see step S126, Fig.10 When the owner NFT is transferred to another person, the public key of the vehicle 10 is sent to the terminal held by the other person (i.e., the transferee). Since the terminal does not need to perform the process of obtaining the public key of the vehicle 10 from the vehicle 10 and verifying the obtained public key of the vehicle 10, it helps to reduce the processing load of the terminal.
[0213] In addition, the case of simply referring to "the public key of the vehicle 10" may also mean a public key certificate including the public key of the vehicle 10. The same applies to the following. The same applies to "the public key of the user", that is, "the public key of the user U0", "the public key of the user U1", "the public key of the user U2", and "the public key of the user U10".
[0214] In step S108, the vehicle 10 stores the public key of the user U0 in the storage unit 106. By storing the public key of the user U0 in the vehicle 10, it is possible to speed up the verification of the signature generated by the private key of the user U0 next time and thereafter.
[0215] In step S109 , the distributed ledger system 20 issues the owner NFT to the address of user U0 based on the receipt of the issuance transaction data in step S106 .
[0216] pass Fig. 9 Through the series of processing shown, the information processing system 1 can issue an owner NFT to the user U0 who purchases the vehicle 10.
[0217] Next, a description will be given of a process of controlling the functions of the vehicle 10 in accordance with the owner's request when the owner uses the vehicle 10 .
[0218] Fig.10 1 is a sequence diagram showing the processing of the information processing system 1 when the owner uses the vehicle 10 in the present embodiment.
[0219] In step S121 , the vehicle 10 receives a request for control of a function from the user U0 . The above-mentioned function is a function to be controlled by the function control unit 105 .
[0220] As an example, when the above function is to lock or unlock the door of the vehicle 10, receiving a request for control of the function from the user U0 is equivalent to receiving information indicating that the user U0 has performed an operation for locking or unlocking the door on the terminal T0 through short-range wireless communication. In addition, receiving a request for control of the function from the user U0 may also be the user U0 operating an operation button for locking or unlocking the door on the terminal T0.
[0221] In step S122A, the authentication request unit 122 of the terminal T0 requests user authentication from the vehicle 10. For example, the authentication request unit 122 of the terminal T0 requests authentication of the user U0 by a challenge-response method. Then, the authentication request unit 122 of the terminal T0 receives an authentication response including the authentication result from the vehicle 10.
[0222] In step S122B, the authentication unit 103 of the vehicle 10 receives the authentication request sent in step S122A and performs authentication of the user U0 in a challenge response manner. The authentication unit 103 of the vehicle 10 sends an authentication response including the authentication result (specifically, authentication success or failure) to the terminal T0.
[0223] In step S123A, the authentication request unit 122 of the terminal T0 determines whether the authentication in step S122B is successful based on the authentication response received in step S122A. If it is determined that the authentication is successful ("Yes" in step S123A), the terminal T0 ends the authentication. Fig.10 The series of processing shown is performed, otherwise ("No" in step S123A) proceeds to step S123C.
[0224] In step S123C, the terminal T0 performs an exception process. For example, as an exception process, the terminal T0 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Fig.10 A series of processing is shown.
[0225] In step S123B, the authentication unit 103 of the vehicle 10 determines whether the authentication in step S122B is successful. If the authentication is successful ("Yes" in step S123B), the process proceeds to step S124, otherwise ("No" in step S123B), the process proceeds to step S123D.
[0226] In step S123D, the vehicle 10 performs an exception process. For example, as an exception process, the vehicle 10 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Fig.10 A series of processing is shown.
[0227] In step S124, the transaction processing unit 104 of the vehicle 10 inquires the distributed ledger system 20 about the address in the distributed ledger where the owner's NFT is stored (also referred to as the storage address), and receives a response including the above storage address.
[0228] In step S125, the transaction processing unit 104 of the vehicle 10 determines whether the storage address included in the response received in step S124 is the address of the user U0. If it is determined that the storage address is the address of the user U0 ("Yes" in step S125), the process proceeds to step S126, otherwise ("No" in step S125), the process proceeds to step S125A.
[0229] In step S126 , the function control unit 105 of the vehicle 10 controls the function of the vehicle 10 according to the request received in step S121 .
[0230] pass Fig.10 Through the series of processing shown, the information processing system 1 can control the functions of the vehicle 10 according to the owner's request when the vehicle 10 is about to be used.
[0231] Next, the processing of the information processing system 1 when the user U0 as the owner grants the user U1 the right to use the vehicle 10 will be described. In addition, the user U1 becomes a friend of the vehicle 10 by being granted the right to use the vehicle 10.
[0232] Fig.11 , Fig.12 as well as Fig.13A 1 is a sequence diagram showing the processing of the information processing system 1 when the owner grants the use authority in this embodiment.
[0233] In step S201 (refer to Fig.11 ), the terminal T1 inquires the vehicle 10 about the address of the owner of the vehicle 10, and receives a response including the address of the owner of the vehicle 10. The terminal T1 can send the above inquiry and receive the above response by using short-range wireless communication.
[0234] In step S202, the rights management unit 123 of the terminal T1 obtains the contact address of the owner included in the owner NFT. Specifically, the rights management unit 123 of the terminal T1 uses the address of the owner of the vehicle 10 included in the response received in step S201 to send a reference request for referring to the address of the owner in the distributed ledger owned by the distributed ledger system 20, and receives a response including the information included in the owner NFT. The rights management unit 123 of the terminal T1 can obtain the contact address of the owner (e.g., email address) from the user information (user info) in the information included in the owner NFT.
[0235] In step S203, the rights management unit 123 of the terminal T1 obtains the rights information included in the owner NFT. Specifically, the rights management unit 123 of the terminal T1 uses the address of the owner of the vehicle 10 included in the response received in step S201 to send a reference request for referring to the address of the owner in the distributed ledger owned by the distributed ledger system 20, and receives a response including the information included in the owner NFT.
[0236] In step S204, the authority management unit 123 of the terminal T1 uses the authority information obtained in step S203 to determine whether a new friend can be set under the owner. If it is determined that a new friend can be set under the owner ("Yes" in step S204), the process proceeds to step S205; otherwise ("No" in step S204), the process proceeds to step S204A.
[0237] In step S204A, the terminal T1 performs an exception process. For example, as an exception process, the terminal T1 may display the result of the above judgment on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 11 to 13A A series of processing is shown.
[0238] For example, the authority management unit 123 of the terminal T1 refers to the maximum number of depth level, and assuming that when a new friend is set up as a subordinate of the owner, if the level of the new friend is below the maximum number of depth level, it can be determined that the new friend can be set up as a subordinate of the owner; otherwise, it can be determined that the new friend cannot be set up as a subordinate of the owner.
[0239] Furthermore, for example, the authority management unit 123 of the terminal T1 refers to the maximum number of friend NFTs, and assuming that when a new friend is set up under the owner, when the total number of friends and secondary friends is less than the maximum number of friend NFTs, it can be determined that a new friend can be set up under the owner; otherwise, it can be determined that a new friend cannot be set up under the owner.
[0240] In step S205, the authority management unit 123 of the terminal T1 sends a setting request to set a new friend to the terminal T0. The setting request includes the public key certificate of the user U1. The terminal T0 receives the sent setting request.
[0241] In step S206 , the authority management unit 123 of the terminal T0 verifies the public key certificate of the user U1 received in step S205 .
[0242] In step S207, the authority management unit 123 of the terminal T0 determines whether the verification performed in step S206 is successful. If it is determined that the verification is successful ("Yes" in step S207), the process proceeds to step S211 (see Fig.12 ), otherwise ("No" in step S207) proceed to step S207A.
[0243] In step S207A, the terminal T0 performs an exception process. For example, as an exception process, the terminal T0 may display the result of the above verification through a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 11 to 13A A series of processing is shown.
[0244] In step S211 (refer to Fig.12 ), the right management unit 123 of the terminal T0 sends a payment request for the price to the terminal T1. The terminal T1 receives the sent payment request for the price.
[0245] In step S212, the rights management unit 123 of the terminal T1 generates transaction data (also referred to as payment transaction data) indicating the payment price in response to receiving the payment request of the price in step S211, and sends the transaction data to the distributed ledger system 20. Specifically, the price may be a token (information having a monetary value or a value equivalent to a monetary value).
[0246] In step S213, the authority management unit 123 of the terminal T0 confirms whether the payment transaction data is stored in the distributed ledger. Specifically, the authority management unit 123 of the terminal T0 sends a reference request for referencing the distributed ledger owned by the distributed ledger system 20, and receives a response including information indicating whether the payment transaction data is stored in the distributed ledger, thereby being able to confirm whether the payment transaction data is stored in the distributed ledger.
[0247] In step S214, the rights management unit 123 of the terminal T0 determines whether the payment transaction data is stored in the distributed ledger. If it is determined that the payment transaction data is stored in the distributed ledger ("Yes" in step S214), the process proceeds to step S215, otherwise ("No" in step S214), the process proceeds to step S214A.
[0248] In step S214A, the terminal T0 performs an exception process. For example, as an exception process, the terminal T0 may display the result of the above confirmation on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 11 to 13A A series of processing is shown.
[0249] In step S215 , the authority management unit 123 of the terminal T0 adds the signature of the user U0 to the public key of the user U1 .
[0250] In step S216, the authority management unit 123 of the terminal T0 transmits the public key of the user U1 to which the signature of the user U0 is given in step S215 to the terminal T1. The terminal T1 receives the transmitted public key of the user U1.
[0251] In step S217 , the authority management unit 123 of the terminal T1 stores the public key of the user U1 to which the signature of the user U0 is given and received in step S216 .
[0252] In step S221A (refer to Fig.13A ), the authentication request unit 122 of the terminal T1 requests user authentication from the vehicle 10. For example, the authentication request unit 122 of the terminal T1 requests authentication of the user U1 by a challenge response method. And, the authentication request unit 122 of the terminal T1 receives an authentication response including the authentication result from the vehicle 10.
[0253] In step S221B, the authentication unit 103 of the vehicle 10 receives the authentication request sent in step S221A and performs authentication of the user U1 in a challenge response manner. The authentication unit 103 of the vehicle 10 sends an authentication response including the authentication result (specifically, authentication success or failure) to the terminal T1.
[0254] In step S222A, the authentication request unit 122 of the terminal T1 determines whether the authentication in step S221B is successful based on the authentication response received in step S221A. If it is determined that the authentication is successful ("Yes" in step S222A), the process proceeds to step S224, otherwise ("No" in step S222A), the process proceeds to step S222C.
[0255] In step S222C, the terminal T1 performs an exception process. For example, as an exception process, the terminal T1 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 11 to 13A A series of processing is shown.
[0256] In step S222B, the authentication unit 103 of the vehicle 10 determines whether the authentication performed in step S221B is successful. If it is determined that the authentication is successful ("Yes" in step S222B), the process proceeds to step S223, otherwise ("No" in step S222B), the process proceeds to step S222D.
[0257] In step S222D, the vehicle 10 performs an exception process. For example, as an exception process, the vehicle 10 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 11 to 13A A series of processing is shown.
[0258] In step S223 , the transaction processing unit 104 of the vehicle 10 executes control of issuing a friend NFT to the user U1 . Specifically, the transaction processing unit 104 of the vehicle 10 generates transaction data (also referred to as issuance transaction data) including information on issuing a friend NFT to the user U1 and sends it to the distributed ledger system 20 .
[0259] In step S224, the authority management unit 123 of the terminal T1 stores the public key of the vehicle 10 in the storage unit 124. By storing the public key of the vehicle 10 in the terminal T1, the verification of the signature can be accelerated next time and thereafter. Since the stored public key is a public key of the vehicle 10 with high reliability, it can be used without verifying the legitimacy of the public key again. In other words, the process of verifying legitimacy can be omitted.
[0260] In step S225, the vehicle 10 stores the public key of the user U1 in the storage unit 106. By storing the public key of the user U1 in the vehicle 10, it is possible to speed up the verification of the signature generated by the private key of the user U1 next time and thereafter.
[0261] In step S226, the distributed ledger system 20 issues a friend NFT to the address of user U1 based on the receipt of the issuance transaction data in step S223.
[0262] Alternatively, when controlling the distributed ledger system 20 to issue the second NFT, the distributed ledger system 20 is controlled to issue the second NFT through a smart contract. Specifically, the judgment processing included in steps S202 to S204 or the processing included in steps S212 to S214 can also be executed through a smart contract. In this case, transaction data including the contract code that describes the above processing will be pre-stored in the distributed ledger, and transaction data for executing the above contract code will be generated by terminal T1 and sent to the distributed ledger system 20, so that the above processing can be executed through a smart contract.
[0263] In addition, the processing SA of steps S211 to S214 and S214A (see Fig.12 ) is a process that is executed when the owner requests the friend to pay the price when the owner sets the friend (in other words, the owner accepts the price in place of setting the friend), and is not executed when the owner does not request the friend to pay the price when the owner sets the friend.
[0264] pass Figures 11 to 13A In the series of processes shown, the information processing system 1 allows the user U0 as the owner to grant the user U1 the right to use the vehicle 10 , thereby making the user U1 a friend. The user U1 who has become a friend can use the vehicle 10 .
[0265] Fig.13A 1 is a sequence diagram showing the processing of the information processing system 1 when a friend uses the vehicle 10 in the present embodiment.
[0266] The information processing system 1 is granted the use right of the vehicle 10 by the user U0 as the owner through the user U1, so that the functions of the vehicle 10 can be controlled according to the request of the friend. Fig.10 Terminal T0 is changed to terminal T1, user U0 is changed to user U1, and owner NFT is changed to friend NFT (refer to Fig. 13B ) processing.
[0267] pass Fig. 13B Through the series of processing shown, the information processing system 1 can control the functions of the vehicle 10 according to the friend's request when the friend uses the vehicle 10. At this time, whether the friend has the right to use the vehicle 10 is properly managed by whether the distributed ledger system 20 has issued a friend NFT to the friend, so the friend's use of the vehicle 10 is appropriate based on the right to use. In addition, when the friend uses the vehicle 10, by referring to the validity period of the owner NFT managed by the distributed ledger system 20, the friend can be allowed to use the vehicle 10 based on whether the owner NFT is valid. In other words, the use of the vehicle 10 can be prohibited when the owner NFT has expired.
[0268] Next, the information processing system 1 will describe a process in which the user U1 as a friend grants the user U2 the right to use the vehicle 10 . In addition, the user U2 becomes a secondary friend of the vehicle 10 by being granted the right to use the vehicle 10 .
[0269] Fig.14 , Fig.15 as well as Fig.16A This is a sequence diagram showing the process of the information processing system 1 when a friend grants usage authority in this embodiment.
[0270] In step S301 (refer to Fig.14 ), the terminal T2 inquires the vehicle 10 about the address of the friend of the vehicle 10, and receives a response including the address of the friend of the vehicle 10. The terminal T2 can send the above inquiry and receive the above response by using short-range wireless communication.
[0271] In step S302, the rights management unit 123 of the terminal T2 obtains the contact address of the owner included in the friend NFT. Specifically, the rights management unit 123 of the terminal T2 uses the address of the friend of the vehicle 10 included in the response received in step S301, sends a reference request for referring to the address of the friend in the distributed ledger owned by the distributed ledger system 20, and receives a response including the information included in the friend NFT. The rights management unit 123 of the terminal T2 can obtain the contact address (e.g., email address) of the friend from the user information (user info) in the information included in the friend NFT.
[0272] In step S303, the authority management unit 123 of the terminal T2 obtains the authority information included in the friend NFT. Specifically, the authority management unit 123 of the terminal T2 uses the address of the friend of the vehicle 10 included in the response received in step S301, sends a reference request for referring to the address of the friend in the distributed ledger owned by the distributed ledger system 20, and receives a response including the information included in the friend NFT.
[0273] In step S304, the authority management unit 123 of the terminal T2 uses the authority information obtained in step S303 to determine whether a new secondary friend can be set under the friend. If it is determined that a new secondary friend can be set under the friend ("Yes" in step S304), the process proceeds to step S305; otherwise ("No" in step S304), the process proceeds to step S304A.
[0274] In step S304A, the terminal T2 performs an exception process. For example, as an exception process, the terminal T2 may display the result of the above judgment on a display screen or output it as a sound through a speaker. After this, the information processing system 1 ends. Figures 14 to 16A A series of processing is shown.
[0275] For example, the authority management unit 123 of the terminal T2 refers to the maximum number of depth, and assuming that a new secondary friend is set under the friend, when the level of the new secondary friend is below the maximum number of depth, it can be determined that the new secondary friend can be set under the friend, otherwise it is determined that the new secondary friend cannot be set under the friend.
[0276] For example, the authority management unit 123 of the terminal T1 refers to the maximum number of friend NFTs, and assuming that a new secondary friend is set up under a friend, when the total number of friends and secondary friends is less than the maximum number of friend NFTs, it can be determined that a new secondary friend can be set up under the friend; otherwise, it is determined that a new secondary friend cannot be set up under the friend.
[0277] In step S305, the authority management unit 123 of the terminal T2 sends a setting request to set a new secondary friend to the terminal T1. The setting request includes the public key certificate of the user U2. The terminal T1 receives the sent setting request.
[0278] In step S306 , the authority management unit 123 of the terminal T1 verifies the public key certificate of the user U2 received in step S305 .
[0279] In step S307, the authority management unit 123 of the terminal T1 determines whether the verification performed in step S306 is successful. If it is determined that the verification is successful ("Yes" in step S307), the process proceeds to step S311 (see Fig.15 ), otherwise ("No" in step S307) go to step S307A.
[0280] In step S307A, the terminal T1 performs an exception process. For example, as an exception process, the terminal T1 may display the result of the above verification on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 14 to 16A A series of processing is shown.
[0281] In step S311 (refer to Fig.15 ), the authority management unit 123 of the terminal T1 sends a payment request for the price to the terminal T2. The terminal T2 receives the payment request for the price sent from the terminal T1.
[0282] In step S312, the rights management unit 123 of the terminal T2 generates transaction data (also referred to as payment transaction data) indicating the payment of the price in response to receiving the payment request of the price in step S311, and sends the transaction data to the distributed ledger system 20. In addition, the price may be a token (information having a monetary value or a value equivalent to a monetary value).
[0283] In step S313, the authority management unit 123 of the terminal T1 confirms whether the payment transaction data is stored in the distributed ledger. Specifically, the authority management unit 123 of the terminal T1 sends a reference request for referencing the distributed ledger owned by the distributed ledger system 20, and receives a response including information indicating whether the payment transaction data is stored in the distributed ledger, thereby being able to confirm whether the payment transaction data is stored in the distributed ledger.
[0284] In step S314, the authority management unit 123 of the terminal T1 determines whether the payment transaction data is stored in the distributed ledger. If it is determined that the payment transaction data is stored in the distributed ledger ("Yes" in step S314), the process proceeds to step S315; otherwise ("No" in step S314), the process proceeds to step S314A.
[0285] In step S314A, the terminal T1 performs an exception process. For example, as an exception process, the terminal T1 may display the result of the above confirmation on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 14 to 16A A series of processing is shown.
[0286] In step S315 , the authority management unit 123 of the terminal T1 adds the signature of the user U1 to the public key of the user U2 .
[0287] In step S316, the authority management unit 123 of the terminal T1 transmits the public key of the user U2 to which the signature of the user U1 is given in step S315 to the terminal T2. The terminal T2 receives the transmitted public key of the user U2.
[0288] In step S317, the authority management unit 123 of the terminal T1 stores the public key of the user U2 to which the signature of the user U1 is given and received in step S316.
[0289] In step S321A (refer to Fig.16A ), the authentication request unit 122 of the terminal T2 requests user authentication from the vehicle 10. For example, the authentication request unit 122 of the terminal T2 requests authentication of the user U2 by means of a challenge response method. And, the authentication request unit 122 of the terminal T2 receives an authentication response including the authentication result from the vehicle 10.
[0290] In step S321B, the authentication unit 103 of the vehicle 10 receives the authentication request sent in step S321A and performs authentication of the user U2 in a challenge response manner. The authentication unit 103 of the vehicle 10 sends an authentication response including the authentication result (specifically, authentication success or failure) to the terminal T2.
[0291] In step S322A, the authentication request unit 122 of the terminal T2 determines whether the authentication in step S321B is successful based on the authentication response received in step S321A. If it is determined that the authentication is successful ("Yes" in step S322A), the process proceeds to step S324, otherwise ("No" in step S322A), the process proceeds to step S322C.
[0292] In step S322C, the terminal T2 performs an exception process. For example, as an exception process, the terminal T2 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 14 to 16A A series of processing is shown.
[0293] In step S322B, the authentication unit 103 of the vehicle 10 determines whether the authentication performed in step S321B is successful. If it is determined that the authentication is successful ("Yes" in step S322B), the process proceeds to step S323, otherwise ("No" in step S322B), the process proceeds to step S322D.
[0294] In step S322D, the vehicle 10 performs an exception process. For example, as an exception process, the vehicle 10 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Figures 14 to 16A A series of processing is shown.
[0295] In step S323, the transaction processing unit 104 of the vehicle 10 performs control of issuing a secondary friend NFT to the user U2. Specifically, the transaction processing unit 104 of the vehicle 10 generates transaction data (also referred to as issuance transaction data) including information on issuing a secondary friend NFT to the user U2 and sends it to the distributed ledger system 20. The distributed ledger system 20 receives the sent issuance transaction data.
[0296] In step S324, the authority management unit 123 of the terminal T2 stores the public key of the vehicle 10 in the storage unit 124. By storing the public key of the vehicle 10 by the terminal T2, the verification of the signature can be accelerated next time and thereafter. Since the stored public key is a public key of the vehicle 10 with high reliability, it can be used without verifying the legitimacy of the public key again. In other words, the verification process of legitimacy can be omitted.
[0297] In step S325, the vehicle 10 stores the public key of the user U2 in the storage unit 106. By storing the public key of the user U2 in the vehicle 10, it is possible to speed up the verification of the signature generated by the private key of the user U2 next time and thereafter.
[0298] In step S326, the distributed ledger system 20 issues a secondary friend NFT to the address of user U2 based on the receipt of the issuance transaction data in step S323.
[0299] Alternatively, when controlling the distributed ledger system 20 to issue the third NFT, the distributed ledger system 20 is controlled to issue the third NFT through a smart contract. Specifically, the judgment processing included in steps S302 to S304 or the processing included in steps S312 to S314 can also be executed through a smart contract. In this case, transaction data including the contract code that describes the above processing will be pre-stored in the distributed ledger, and transaction data for executing the above contract code will be generated by terminal T2 and sent to the distributed ledger system 20, so that the above processing can be executed through a smart contract.
[0300] In addition, the processing SB of steps S311 to S314 and S314A (see Fig.15 ) is a process that is executed when the friend requests the secondary friend to pay the price when the friend sets the secondary friend (in other words, the friend accepts the price in place of setting the secondary friend), and is not executed when the owner does not request the secondary friend to pay the price when the friend sets the secondary friend.
[0301] pass Figures 14 to 16A In the series of processes shown, the information processing system 1 allows the user U1 who is a friend to grant the user U2 the right to use the vehicle 10 , thereby making the user U2 a secondary friend. The user U2 who has become the secondary friend can use the vehicle 10 .
[0302] Fig. 16B 1 is a sequence diagram showing the processing of the information processing system when a secondary friend uses the vehicle in the present embodiment.
[0303] The information processing system 1 is granted the use right of the vehicle 10 by the user U1 who is a friend through the user U2, so that the functions of the vehicle 10 can be controlled according to the request of the secondary friend. Fig.10 Terminal T0 is changed to terminal T2, user U0 is changed to user U2, and owner NFT is changed to secondary friend NFT (refer to Fig. 16B ) processing.
[0304] pass Fig. 16BThrough the series of processing shown, the information processing system 1 can control the functions of the vehicle 10 according to the request of the secondary friend when the secondary friend uses the vehicle 10. At this time, whether the secondary friend has the right to use the vehicle 10 is properly managed by whether the distributed ledger system 20 has issued the secondary friend NFT to the secondary friend, so the use of the vehicle 10 by the secondary friend is appropriate based on the right to use. In addition, when the secondary friend uses the vehicle 10, by referring to the validity period of the owner NFT and the friend NFT managed by the distributed ledger system 20, the secondary friend can be allowed to use the vehicle 10 based on whether the owner NFT or the friend NFT is valid. In other words, the use of the vehicle 10 can be prohibited when the owner NFT or the friend NFT has expired.
[0305] Next, the processing of the information processing system 1 when the owner transfers the vehicle 10 to the user U10 will be described. In addition, the user U10 becomes the new owner by accepting the transfer of the vehicle 10 from the owner.
[0306] Fig.17 as well as Fig.18 1 is a sequence diagram showing the processing of the information processing system 1 when the owner transfers the vehicle 10 in the present embodiment.
[0307] Fig.17 as well as Fig.18 The terminal T10 shown is an information terminal device owned by the user U10. The terminal T10 has the same components as the terminal T0.
[0308] In step S401 (refer to Fig.17 ), the terminal T10 inquires the vehicle 10 about the address of the owner of the vehicle 10, and receives a response including the address of the owner of the vehicle 10. The terminal T10 can send the above inquiry and receive the above response by using short-range wireless communication.
[0309] In step S402, the rights management unit 123 of the terminal T10 obtains the contact address of the owner included in the owner NFT. Specifically, the rights management unit 123 of the terminal T10 uses the address of the owner of the vehicle 10 included in the response received in step S401 to send a reference request for referring to the address of the owner in the distributed ledger owned by the distributed ledger system 20, and receives a response including the information included in the owner NFT. The rights management unit 123 of the terminal T10 can obtain the contact address of the owner (e.g., an email address) from the user information (user info) in the information included in the owner NFT.
[0310] In step S403, the authority management unit 123 of the terminal T10 transmits a transfer request from the user U10 to the terminal T0 for transferring the vehicle 10. The terminal T0 receives the transmitted transfer request.
[0311] In step S404, the right management unit 123 of the terminal T0 transmits a payment request for the price to the terminal T10. The terminal T10 receives the transmitted payment request for the price.
[0312] In step S405, the rights management unit 123 of the terminal T10 generates transaction data (also referred to as payment transaction data) indicating the payment of the price in response to receiving the payment request of the price in step S404, and transmits the transaction data to the distributed ledger system 20. Specifically, the price may be a token (information having a monetary value or a value equivalent to a monetary value).
[0313] In step S406, the authority management unit 123 of the terminal T0 confirms whether the payment transaction data is stored in the distributed ledger. Specifically, the authority management unit 123 of the terminal T0 sends a reference request for referencing the distributed ledger owned by the distributed ledger system 20, and receives a response including information indicating whether the payment transaction data is stored in the distributed ledger, thereby being able to confirm whether the payment transaction data is stored in the distributed ledger.
[0314] In step S407, the rights management unit 123 of the terminal T0 determines whether the payment transaction data is stored in the distributed ledger. If it is determined that the payment transaction data is stored in the distributed ledger ("Yes" in step S407), the process proceeds to step S408, otherwise ("No" in step S407), the process proceeds to step S407A.
[0315] In step S407A, the terminal T0 performs an exception process. For example, as an exception process, the terminal T0 may display the result of the above confirmation on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Fig.17 as well as Fig.18 A series of processing is shown.
[0316] In step S408 , the authority management unit 123 of the terminal T0 generates transaction data indicating the transfer of the vehicle 10 (also referred to as transfer transaction data), and transmits the data to the distributed ledger system 20 .
[0317] In step S411 (refer to Fig.18), the authority management unit 123 of the terminal T0 sends the public key of the vehicle 10 to the terminal T10. The terminal T10 receives the sent public key of the vehicle 10. In addition, in step S411, the terminal T10 may also obtain the public key of the vehicle 10 by a method other than receiving it from the terminal T0. In this case, the authority management unit 123 of the terminal T0 does not need to send the public key of the vehicle 10 to the terminal T10.
[0318] In step S412 , the terminal T10 stores the public key of the vehicle 10 received in step S411 in the storage unit 124 .
[0319] In step S413, the authority management unit 123 of the terminal T10 transmits an owner change notification to the vehicle 10. The owner change notification is a notification indicating that the owner of the vehicle 10 has been changed from the user U0 to the user U10. The vehicle 10 receives the transmitted owner change notification.
[0320] In step S414, the transaction processing unit 104 of the vehicle 10 calculates the address of the user U10. The transaction processing unit 104 of the vehicle 10 can calculate the address of the user U10 using the public key of the user U10. Calculating the address using the private key can be achieved by using well-known techniques (using hash operations, etc. to calculate the address from the public key, etc.).
[0321] In step S415 , the transaction processing unit 104 of the vehicle 10 inquires the distributed ledger system 20 about the address in the distributed ledger where the owner's NFT is stored (also referred to as the storage address), and receives a response including the storage address.
[0322] In step S416, the transaction processing unit 104 of the vehicle 10 determines whether the storage address included in the response received in step S415 is the address of the user U10. If it is determined that the storage address is the address of the user U10 ("Yes" in step S416), the process proceeds to step S417; otherwise ("No" in step S416), the process proceeds to step S416A.
[0323] In step S416A, the vehicle 10 performs an exception process. For example, as an exception process, the vehicle 10 may display the result of the above authentication on a display screen or output it as sound through a speaker. After this, the information processing system 1 ends. Fig.17 as well as Fig.18 A series of processing is shown.
[0324] In step S417, the transaction processing unit 104 of the vehicle 10 performs control of issuing the owner NFT to the user U10. Specifically, the transaction processing unit 104 of the vehicle 10 generates transaction data (also referred to as issuance transaction data) including information on issuing the owner NFT to the user U10, and sends it to the distributed ledger system 20. The distributed ledger system 20 receives the sent issuance transaction data.
[0325] In step S418 , the vehicle 10 stores the public key of the user U10 in the storage unit 106 .
[0326] In step S419 , the distributed ledger system 20 issues the owner NFT to the address of the user U10 based on the receipt of the issuance transaction data in step S417 .
[0327] In addition, although the information processing system 1 has been described here as issuing a new owner NFT to the user U10 as the new owner, the user U10 as the new owner can also continue to hold the owner NFT issued by the user U1 as the old owner. In this case, step S417 is not executed, and as a result, step S419 is not executed either.
[0328] In addition, whether the new owner continues to use the owner NFT issued by the old owner can be determined in advance by the information processing system 1, or the terminal T10 can notify the vehicle 10. The notification of whether the new owner continues to use the owner NFT issued by the old owner can also be included in the owner change notification (see Fig.18 In step S413).
[0329] As described above, the information processing system 1 of the present embodiment can appropriately control the use authority of the vehicle 10 .
[0330] (Variation of the embodiment)
[0331] In this variation, a technology that helps appropriately control the use authority of a device even when a private key is leaked is described regarding an information processing method, an information processing device, and an information processing system that help appropriately control the use authority of a device.
[0332] The configuration of the information processing system 1 in this modification is the same as that of the information processing system 1 in the above-described embodiment.
[0333] Fig.19 1 is a sequence diagram showing the processing of the information processing system 1 when registering revocation information in this modification.
[0334] Fig.19 The following shows a process of registering the revocation information of a private key when the private key of the user U0 who is the owner is leaked.
[0335] When the owner's private key is leaked, the information processing system 1 controls by storing the expiration information that invalidates the owner's private key in the distributed ledger. The expiration information is also information that is digitally signed using the owner's private key. In this case, when the vehicle 10 controls the function, it is further determined whether the expiration information of the owner's private key is stored in the distributed ledger. Then, when it is determined that the expiration information has been stored in the distributed ledger, even if it is determined that the owner's address is consistent with the storage address of the first NFT (that is, the NFT including information related to the owner's authority to use the vehicle 10), control of the function is prohibited.
[0336] The specific description is given below.
[0337] Fig.19 The user U9 shown is an example of a user who has obtained the leaked private key of the user U0. The terminal T9 is an information terminal device owned by the user U9. The terminal T9 has the same components as the terminal T0.
[0338] In step S501 , it is assumed that the private key of user U0 is leaked, and terminal T9 obtains the leaked private key.
[0339] In step S502, the terminal T9 controls in such a way that the expiration information of the private key of the user U0 is stored in the distributed ledger. Specifically, the terminal T9 generates transaction data (also referred to as expiration transaction data) including information for expiration of the private key of the user U0 and sends it to the distributed ledger system 20. The distributed ledger system 20 receives the sent expiration transaction data and stores it in the distributed ledger.
[0340] Fig. 20 1 is a sequence diagram showing the processing of the information processing system 1 when the owner uses the vehicle 10 in this modification.
[0341] like Fig. 20 As shown, although the processing of the information processing system 1 when the owner uses the vehicle 10 is different from Fig.10 The processes shown are the same, but the difference is that the revocation information of the private key of the user U0 is used. This point will be mainly described below.
[0342] Steps S121 to S125 and Fig.10 The processing shown is the same.
[0343] In step S125B, the transaction processing unit 104 of the vehicle 10 inquires the distributed ledger system 20 whether the revocation information of the private key of the user U0 is stored in the distributed ledger, and receives a response including whether the revocation information of the private key of the user U0 is stored in the distributed ledger.
[0344] In step S126, the transaction processing unit 104 of the vehicle 10 determines whether the expiration information of the private key of the user U0 is stored in the distributed ledger based on the response received in step S125B. If it is determined that the expiration information of the private key of the user U0 is stored in the distributed ledger ("Yes" in step S125C), the process proceeds to step S125D; otherwise ("No" in step S125C), the process proceeds to step S126.
[0345] In step S126 , the function control unit 105 of the vehicle 10 controls the function of the vehicle 10 according to the request received in step S121 .
[0346] pass Fig. 20 Through the series of processes shown, the information processing system 1 can control the functions of the vehicle 10 according to the owner's request when the owner uses the vehicle 10, and can prohibit the control of the functions when the owner's private key has expired.
[0347] In addition, in the above-mentioned embodiments, each component may be constituted by dedicated hardware, or may be implemented by executing a software program suitable for each component. Each component may also be implemented by a program execution unit such as a CPU or a processor reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory. Here, the software that implements the information processing device of the above-mentioned embodiments is the following program.
[0348] That is, the program is a program that causes a computer to execute the following information processing method, which is an information processing method executed by a device. In the information processing method, an owner address and first permission information are obtained, the owner address is the address of the owner of the device in the distributed ledger, the first permission information includes information related to the authority of the owner of the device to use the device, and the distributed ledger system is controlled to issue a first NFT (Non-Fungible Token) including the first permission information to the owner address.
[0349] Although the information processing method and the like involved in one or more embodiments are described above according to the embodiments, the present invention is not limited to the embodiments. Without departing from the gist of the present invention, the embodiments obtained by performing various modifications that can be thought of by those skilled in the art on the present embodiments and the embodiments formed by combining the constituent elements in different embodiments may also be included in the scope of one or more embodiments.
[0350] Industrial Availability
[0351] The present invention can be used in a device that controls the use authority of a device.
[0352] Explanation of symbols
[0353] 1 Information Processing System
[0354] 10 Vehicles
[0355] 20Distributed Ledger System
[0356] 21, 22, 23 ledger servers
[0357] 30, 40A, 40B Information
[0358] 40, 41, 42, 43, 44, 45, 46, 47NFT
[0359] 101, 121, 201 Communications Department
[0360] 102 Acquisition Department
[0361] 103 Certification Department
[0362] 104 Transaction Processing Department
[0363] 105 Function Control Department
[0364] 106, 124, 204 storage unit
[0365] 122 Certification Request Department
[0366] 123 Rights Management Department
[0367] 202 Accounting Processing Department
[0368] 203 Executive Department
[0369] 211 Distributed Ledger
[0370] Blocks B1, B2, and B3
[0371] N Network
[0372] P1 transaction subject
[0373] P2 Digital Signature
[0374] T0, T1, T2, T9, T10 terminals
[0375] U0, U1, U2, U9, U10 users
Claims
1. An information processing method is an information processing method performed by a device, In the information processing method, obtaining an owner address and first permission information, wherein the owner address is an address of the owner of the device in the distributed ledger, and the first permission information includes information related to the permission of the owner of the device to use the device, Control the distributed ledger system to issue a first NFT including the first permission information to the owner address, wherein the NFT refers to a Non-Fungible Token.
2. The information processing method according to claim 1, In the information processing method, further, when the device controls a function, Get the owner address, Obtain a first storage address, where the first storage address is an address where the first NFT is stored in the distributed ledger, Determine whether the owner address is consistent with the first storage address, When it is determined that the owner address is consistent with the first storage address, the one function is controlled.
3. The information processing method according to claim 1, In the information processing method, further, When the owner grants the user the authority to use the device, second authority information is obtained, wherein the second authority information includes information related to the user's authority to use the device. Control the distributed ledger system to issue a second NFT including the second permission information to a user address, wherein the user address is an address of the user in the distributed ledger.
4. The information processing method according to claim 3, In the information processing method, further, when the device controls a function, Get the user address, Obtain a second storage address, where the second storage address is an address where the second NFT is stored in the distributed ledger, determining whether the user address and the second storage address are consistent, When it is determined that the user address is consistent with the second storage address, the one function is controlled.
5. The information processing method according to claim 3, When controlling the distributed ledger system to issue the second NFT, Control the distributed ledger system to issue the second NFT through a smart contract.
6. The information processing method according to claim 3, In the information processing method, further, When the user grants the secondary user the authority to use the device, third authority information is obtained, wherein the third authority information includes information related to the authority of the secondary user to use the device. Control the distributed ledger system to issue a third NFT including the third permission information to a secondary user address, wherein the secondary user address is the address of the secondary user in the distributed ledger.
7. The information processing method according to claim 6, In the information processing method, further, when the device controls a function, Obtain the secondary user address, Obtain a third storage address, where the third storage address is the address where the third NFT is stored in the distributed ledger, Determine whether the secondary user address is consistent with the third storage address, When it is determined that the secondary user address is consistent with the third storage address, the one function is controlled.
8. The information processing method according to claim 6, When issuing said third NFT, Control the distributed ledger system to issue the third NFT through a smart contract.
9. The information processing method according to any one of claims 1 to 8, In the information processing method, further, In the event that the private key of the owner is leaked, control is performed in a manner such that revocation information for invalidating the private key of the owner is stored in the distributed ledger, and the revocation information is also information given a digital signature using the private key of the owner.
10. The information processing method according to claim 9, In the information processing method, further, when the device controls a function, Get the owner address, Obtain a first storage address, where the first storage address is an address where the first NFT is stored in the distributed ledger, Determine whether the expiration information of the owner's private key is stored in the distributed ledger, When it is determined that the revocation information has been stored in the distributed ledger, even if it is determined that the owner address is consistent with the first storage address, control of the one function is prohibited.
11. The information processing method according to claim 1, The first authority information includes information showing that the owner is restricted from using the device.
12. The information processing method according to claim 11, The first permission information includes the validity period of the first NFT.
13. The information processing method according to claim 11, The first authority information includes information indicating whether the user has authority to issue a second NFT including second authority information, and the second authority information includes information related to the user's authority to use the device.
14. The information processing method according to claim 11, The first authority information includes permission information indicating control of a function determined for each of the devices.
15. The information processing method according to claim 1, In the information processing method, further, When transferring the first NFT in the distributed ledger system, controlling the distributed ledger system so that the value information is transferred as the cost of the first NFT.
16. The information processing method according to claim 15, When controlling the distributed ledger system to transfer the value information, Control the distributed ledger system to transfer the value information through a smart contract.
17. The information processing method according to claim 1, The address in the distributed ledger is an address pre-calculated using the owner's private key.
18. The information processing method according to claim 17, The information processing method is a method for controlling the distributed ledger system using the private key as a digital key defined by CCC, where CCC refers to the Car Connectivity Consortium.
19. An information processing device comprising: an acquisition unit, configured to acquire an owner address and first permission information, wherein the owner address is an address of the owner of the information processing device in a distributed ledger, and the first permission information includes information related to the permission of the owner of the information processing device to use the information processing device; and The processing unit controls the distributed ledger system to issue a first NFT including the first permission information to the owner address, where the NFT refers to a Non-Fungible Token.
20. An information processing system comprising: The information processing device according to claim 19; an information processing terminal held by the owner; and The distributed ledger system.