CA3035253A1 - Dynamic distributed smart contracting for product transport within a supply chain - Google Patents

Dynamic distributed smart contracting for product transport within a supply chain

Info

Publication number
CA3035253A1
CA3035253A1 CA3035253A CA3035253A CA3035253A1 CA 3035253 A1 CA3035253 A1 CA 3035253A1 CA 3035253 A CA3035253 A CA 3035253A CA 3035253 A CA3035253 A CA 3035253A CA 3035253 A1 CA3035253 A1 CA 3035253A1
Authority
CA
Canada
Prior art keywords
terms
way
shipment
digital
way station
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CA3035253A
Other languages
French (fr)
Inventor
Vassileios Karakostas
Yash Chadha
Ioanna Fergadiotou
Patrick J. O'sullivan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inlecom Systems Ltd
Original Assignee
Inlecom Systems Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US16/285,804 priority Critical patent/US20200272985A1/en
Priority to FR1901949A priority patent/FR3093213A1/en
Priority to FR1901949 priority
Priority to US16/285,804 priority
Application filed by Inlecom Systems Ltd filed Critical Inlecom Systems Ltd
Publication of CA3035253A1 publication Critical patent/CA3035253A1/en
Pending legal-status Critical Current

Links

Abstract

A smart contracting method includes receiving in an intermediate way station disposed on a route between an originator and destination of shipment of an item, digital terms of shipment for the transport of the item, and a digital contract of transport of the item from the originator to the destination, and matching the terms to pre-stored data indicating an ability of the way station to meet the terms. Thereafter, portions of the contract are identified corresponding to the way station and requirements of the identified portions are matched to pre-stored rules indicating a willingness of the way station to agree to particular terms. Finally, a digital signature for the way station is affixed to the contract and, on condition that the terms and requirements match, a next way station on the route is selected, and transmission of the contract and the terms are directed to the selected next way station.

Description

DYNAMIC DISTRIBUTED SMART CONTRACTING FOR PRODUCT TRANSPORT
WITHIN A SUPPLY CHAIN
Vassileios Karakostas Yash Chadha Ioanna Fergadiotou Patrick J. O'Sullivan BACKGROUND OF THE INVENTION
100011 Field of the Invention
[0002] The present invention relates to the field of product transport in a supply chain and more particularly to smart contracting for product transport within a supply chain.
[0003] Description of the Related Art
[0004] A supply chain is a network between a company and its suppliers to produce and distribute a specific product, and the supply chain represents the steps it takes to get the product or service to the customer. Supply chain management is a crucial process because an optimized supply chain results in lower costs and a faster production cycle.
Business logistics management refers to the production and distribution process within the company, while supply chain management includes suppliers, manufacturers, logistics and transportation companies and retailers that distribute the product to the end customer. Supply chains include every business that comes in contact with a particular product, including companies that assemble and deliver parts to the manufacturer.
[0005] Because the traditional supply chain involves many different actors utilizing many different disparate information systems, information sharing amongst the different 1 6200-007U Patent Application actors can be challenging. Transparency into the state of affairs of a given transaction depends largely upon the willingness and diligence of each actor in the supply chain of the transaction to provide accurate and timely information to one another. In a single transaction, so much seems not so daunting, but in a supply chain ecosystem of hundreds if not thousands of transactions are ongoing at any given time and much of the resources available within the ecosystem--particularly in respect to transportation and logistics--remain dependent upon the state of multiple different transactions.
[0006] A supply chain information sharing system aims to provide some transparency into the state of affairs of different transactions in a corresponding supply chain. As part of the transparency, the supply chain information system ingests data from different actors in the supply chain, processes the ingested data in order to produce a result reflective of a state of the supply chain, and exposes the produced result to one or more of the actors in order to improve the flow of goods in industrial processes. In a supply chain spanning a single jurisdiction amongst only a handful of actors, so much is not of tremendous consequence, but in a supply chain that spans different jurisdictional boundaries and involves many different actors with different policies regarding the privacy of data, maintaining both transparency of transactions in the supply chain while not running afoul of the data privacy policies of both the private actors in the supply chain and the public governmental interests in which the actors reside can be challenging.
2 6200-007U Patent Application BRIEF SUMMARY OF THE INVENTION
[0007] Embodiments of the present invention address deficiencies of the art in respect to contracting for product transit in a supply chain and provide a novel and non-obvious computer-implemented method, computer system and computer program product for dynamic distributed smart contracting in the transport of product within a supply chain to thereby improve the flow of goods in industrial processes. In an embodiment of the invention, a smart contracting method includes receiving in an intermediate way station disposed on a route between an originator of shipment of an item and a destination indicated for the item, digital terms of shipment for the transport of the item, and a digital contract of transport of the item from the originator to the destination. The method also includes matching the terms of the shipment to pre-stored data indicating an ability of the way station to meet the terms of the shipment. Optionally, the digital terms may be verified by decrypting the digital contract with a public key of the originator and comparing the decrypted digital contract with a hash of the digital terms.
[0008] Thereafter, portions of the contract are identified that correspond to the way station and requirements of the identified portions are then matched to pre-stored rules indicating a willingness of the intermediate way station to agree to particular contract terms. Finally, a digital signature for the intermediate way station is affixed to the digital contract. In one aspect of the embodiment, the digital signature is a hash of the digital contract encrypted with a private key of the intermediate way station. On condition that the terms and requirements match, a next way station on the route selected, and transmission of the digital contract and terms of shipment directed to the selected next 3 6200-007U Patent Application way station. To the extent that the pre-stored rules do not indicate a willingness of the intermediate way station to agree to particular terms, though, a message is transmitted to the originator rejecting the digital contract.
[0009] In yet another aspect of the embodiment, the next way station is selected by retrieving from a cache, different capabilities of a multiplicity of different way stations, comparing the different capabilities with the terms of the shipment, and selecting one of the multiplicity of the different way stations that has capabilities which match a greatest number of the terms of the shipment. In even yet another aspect of the embodiment, the next way station is selected by querying each of a multiplicity of different way stations for a list of corresponding capabilities, comparing each list received from the multiplicity of different way stations, and selecting one of the multiplicity of the different way stations that has capabilities which match a greatest number of the terms of the shipment.
In even yet another aspect of the embodiment, the next way station is selected by retrieving from a cache, different capabilities of a multiplicity of different way stations, comparing the different capabilities with the terms of the shipment, filtering the multiplicity of different way stations to a subset, querying each way station in the subset for a list of updated capabilities, and selecting one of the way stations in the subset that has capabilities which match a greatest number of the terms of the shipment.
100101 In another embodiment of the invention, a data processing system is configured for dynamic distributed smart contracting. The system includes a host computing platform of one or more computers, each with memory and at least one 4 6200-0071J Patent Application processor. The host computing platform includes a communicative coupling over a computer communications network to different remote computing systems. Each of the different remote computing systems corresponds to a different way station on a route between an originator of a shipment of an item and a destination indicated for the item.
Of note, the host computing platform corresponds to an intermediate way station disposed on the route.
[0011] The system also includes a smart contracting module. The module includes computer program instructions executing in the memory of the host computing platform and enabled to perform receiving in the intermediate way station digital terms of shipment for the transport of the item, and a digital contract of transport of the item from the originator to the destination and matching the terms of the shipment to pre-stored data indicating an ability of the way station to meet the terms of the shipment.
The instructions also are enabled to perform identifying portions of the contract corresponding to the way station and matching requirements of the identified portions to pre-stored rules indicating a willingness of the intermediate way station to agree to particular contract term(s). Finally, the instructions are enabled to perform affixing a digital signature for the intermediate way station to the digital contract on condition that the terms and requirements match and then selecting a next way station on the route and, directing transmission of the digital contract and terms of shipment to the selected next way station, but otherwise transmitting a message to the originator rejecting the digital contract.
6200-007U Patent Application . .
[0012] Additional aspects of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The aspects of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
[0013] The accompanying drawings, which are incorporated in and constitute part of this specification, illustrate embodiments of the invention and together with the description, serve to explain the principles of the invention. The embodiments illustrated herein are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown, wherein:
[0014] Figure 1 is a pictorial illustration of a process for dynamic distributed smart contracting;
[0015] Figure 2 is a schematic illustration of a data processing system configured for dynamic distributed smart contracting;
[0016] Figure 3 is a flow chart illustrating a process for dynamic distributed smart contracting;
6 6200-007U Patent Application . .
[0017] Figure 4 is a block diagram showing an exemplary computer system in respect of which aspects of the present technology may be implemented; and [0018] Figure 5 is a block diagram showing an exemplary smartphone in respect of which aspects of the present technology may be implemented.
DETAILED DESCRIPTION OF THE INVENTION
[0019] Embodiments of the invention provide for dynamic distributed smart contracting for product transport within a supply chain. In accordance with an embodiment of the invention, a smart contract includes one or more digital terms of shipment for the transport of an item, and one or more digital signatures indicating acquiescence to the digital terms by each party to the transport of the item.
The smart contract is propagated from a source way station disposed on a route between an originator of shipment of the item and a destination indicated for the item, to each intermediate way station on the route. At each way station, the terms of the shipment are matched to pre-stored data indicating an ability of the way station to meet the terms of the shipment. To that end, each way station identifies portions of the contract corresponding to the way station and matches requirements of the identified portions to pre-stored rules indicating a willingness of the way station to agree to particular contract terms. If agreeable, then a digital signature for the way station is affixed to the digital contract and a next way station on the route selected. Finally, the digital contract and terms of shipment are transmitted to the selected next way station. The flow of goods in industrial processes is thereby improved. Importantly, in reading the present specification it is to be 7 6200-0071J Patent Application understood that the invention does not envision, encompass or embody implementation by pencil/pen and paper or a mere series of mental steps. The nature of the present invention is such that as a practical matter it cannot be implemented within realistic timeframes without the use of computer technology. As such, the person skilled in the art will understand that the use of a computer to implement the embodiments described herein is essential.
[0020] In further illustration, Figure 1 pictorially shows a process for dynamic distributed smart contracting. As shown in Figure 1, different way stations 130A, 130B, 130N are provided in sequence so as to define a transportation route of a shipping container from an origin way station 130A to a destination way station 130N
with one or more intermediate way stations 130B disposed therebetween. Each of the way stations 130A, 130B, 130N include a digital hub 140, and are associated with one or more prospective modes of transport 150, such as rail, truck, ship and airplane such that containers received in a corresponding one of the different way stations 130A, 130B, 130N may be received in one of the modes of transport 150 and forwarded to a next one of the different way stations 130A, 130B, 130N by a same or different one of the modes of transport 150. Each of the way stations 130A, 130B, 130N includes a set of rules 170 defining parameters within which a corresponding one of the way stations 130A, 130B, 130N is able to agree to transport an item. Those parameters may range from minimum pricing to transport an item, to minimum transport times in transporting an item, to geographic range parameters within which an item may be transported, to a specified mode of transport 150, and so forth.
8 6200-007U Patent Application 100211 In operation, a smart contract 110 is received in a first one of the way stations 130A. The smart contract 110 includes a set of digital terms 120, with portions of the digital terms 120 being assigned to different ones of the way stations 130A, 130B, 130N.
The digital terms 120 specify conditions on the transport of an item, such as a minimum time permitted to transport the item, a price of transport, a required mode of transport, and the like. The digital hub 140 of the way station 130A receives the smart contract 110 and parses the digital terms 120 in order to identify a portion of the digital terms 120 directed to the way station 130A. The digital hub 140 then applies the terms of the identified portion to the way station term rules 170 in order to determine if all of the terms of the identified portion are able to be supported by the way station 130A. If so, the digital hub 140 signs the smart contract 110 by encrypting the identified portion of the digital terms 120 with a private key 160A of the way station 130A making the agreed upon terms of the identified portion, immutable.
[0022] Thereafter, the way station 130A selects a next way station 130B
to receive the smart contract 110. In this regard, the next way station 130B is selected, for instance, by querying each of a selection of prospective next way stations 130B to determine which is able to acquiesce to the most number of the digital terms 120. Alternatively, a cache of known capabilities of a selection of prospective next way stations 130B may be queried to determine which is able to acquiesce to the most number of the digital terms 120. As yet another alternative, a cache of known capabilities of a selection of prospective next way stations 130B may be queried to determine which is able to acquiesce to the most number of the digital terms 120 in order to produce a subset of the way stations 130B and 9 6200-007U Patent Application the way stations 130B in the subset may then be queried to determine which is able to acquiesce to the most number of the digital terms 120. In any event, once a next way station 130B is selected, the smart contract 110 is transmitted to the next way station 130B in the transport route and the process continues. When the smart contract 110 has been processed and signed by the destination way station 130N, the smart contract 110 is then returned to the originator with the knowledge that every term of the digital terms 120 has been agreed to by each one of the way stations 130A, 130B, 130N in the transportation route.
100231 The process described in connection with Figure 1 can be implemented in a data processing system. In further illustration, Figure 2 schematically shows a data processing system configured for dynamic distributed smart contracting. The system includes a host computing platform that includes one or more computers, each with memory and at least one processor and corresponding to a specific way station in a route for transportation of an item, for an origin way station to a destination way station. The host computing platform 210 supports the operation of a smart contracting module 300.
As well, the host computing platform 210 is communicatively coupled to different remote server computers 230, each supporting a corresponding smart contracting module and each corresponding to another way station in the route.
[0024] Each smart contracting module 300 includes computer program instructions operable upon execution in memory of a corresponding computer, to receive a smart contract 250 and to extract digital terms from the smart contract 250. The program 6200-007U Patent Application instructions additionally are operable to apply pre-stored rules 240 to the extracted digital terms in order to identify any terms not acceptable to a corresponding one of the way stations. The program instructions are further operable to sign the smart contract 250 with a private key 270 of the corresponding one of the way stations to the extent that all of the digital terms are deemed acceptable by the pre-stored rules. Finally, the program instructions are operable to select a next one of the way stations on the route and to forward the signed smart contract to the selected next one of the way stations. In this regard, the program instructions are enabled to retrieve from cache 260, known capabilities of a selection of prospective next way stations to determine which is able to acquiesce to the most number of the terms of the smart contract 250 so as to select the way station to receive the smart contract 250 most likely to be able to acquiesce to the terms of the smart contract 250.
[0025] In even yet further illustration of the operation of the smart contracting module 300, Figure 3 is a flow chart illustrating a process for dynamic distributed smart contracting. Beginning in block 310, a smart contract is received in a digital hub of a recipient way station in the route from origin way station to destination way station. In block 320, the digital terms of the smart contract are extracted and the smart contract is verified by decrypting the smart contract with the public key of the originator of the smart contract and comparing the decrypted smart contract with a hash of the digital terms accompanying the smart contract. In block 330, pre-stored rules for the recipient way station are retrieved and applied to those of the digital terms of the smart contract pertaining to the recipient way station in order to identify any terms unacceptable to the 11 6200-007U Patent Application recipient way station. In decision block 340, if all terms are acceptable based upon the application of the rules, the process continues through block 350. Otherwise, the smart contract is rejected in block 400.
[0026] In block 350, to the extent that the pre-stored rules when applied to the digital terms fails to identify any unacceptable terms, the smart contract is signed by the recipient way station by encrypting the digital terms of the smart contract pertaining to the recipient way station with a private key of the recipient way station.
Thereafter, in block 360 a list of next potential way stations in the route is determined and in block 370, each of the way stations in the list is queried for respective capabilities in transporting the item to the destination way station. In block 380, one of the way stations best matching the digital terms of the smart contract is selected and in block 390, the smart contract is forwarded to the selected way station.
[0027] As can be seen from the above description, the dynamically distributed smart contracting for product transport within a supply chain, as described herein, represents significantly more than merely using categories to organize, store and transmit information and organizing information through mathematical correlations. The technology for dynamically distributed smart contracting for product transport within a supply chain is in fact an improvement to the technology of supply chain management, as it facilitates improved transportation and logistics to effectively and optimally bring products from source to sink in order to improve the flow of goods in industrial processes. As such, the technology for dynamically distributed smart contracting for 12 6200-007U Patent Application product transport within a supply chain is not merely a business method, but an improvement to an aspect of the industrial processing of goods. The presently described dynamically distributed smart contracting for product transport within a supply chain manifests a physical effect by controlling the physical path traversed by goods (e.g. a package or a container such as an ISO container) from origin through one or more way stations to an ultimate destination. Moreover, the dynamically distributed smart contracting for product transport within a supply chain described in the present specification is a solution in the field of computer technology, as it implements digital smart contracts in a particular technical context, namely product transport within a supply chain, to achieve the specific result of improved transport of physical objects.
[0028] The present technology may be embodied within a system, a method, a computer program product or any combination thereof. The computer program product may include a computer readable storage medium or media having computer readable program instructions thereon for causing a processor to carry out aspects of the present technology. The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
[0029] A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a 13 6200-007U Patent Application random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
[0030] Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network.
The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A
network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.
[0031] Computer readable program instructions for carrying out operations of the 14 6200-007U Patent Application present technology may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language or a conventional procedural programming language. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to implement aspects of the present technology.
100321 Aspects of the present technology have been described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to various embodiments. In this regard, the flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program 15 6200-007U Patent Application products according to various embodiments of the present technology. For instance, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the Figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. Some specific examples of the foregoing may have been noted above but any such noted examples are not necessarily the only such examples. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
[0033] It also will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or 16 6200-0071J Patent Application blocks.
[0034] These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable storage medium produce an article of manufacture including instructions which implement aspects of the functions/acts specified in the flowchart and/or block diagram block or blocks. The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
[0035] An illustrative computer system in respect of which the technology herein described may be implemented is presented as a block diagram in Figure 4. The illustrative computer system is denoted generally by reference numeral 400 and includes a display 402, input devices in the form of keyboard 404A and pointing device 404B, computer 406 and external devices 408. While pointing device 404B is depicted as a mouse, it will be appreciated that other types of pointing device, or a touch screen, may also be used.
[0036] The computer 406 may contain one or more processors or microprocessors, 17 6200-007U Patent Application such as a central processing unit (CPU) 410. The CPU 410 performs arithmetic calculations and control functions to execute software stored in an internal memory 412, preferably random access memory (RAM) and/or read only memory (ROM), and possibly additional memory 414. The additional memory 414 may include, for example, mass memory storage, hard disk drives, optical disk drives (including CD and DVD
drives), magnetic disk drives, magnetic tape drives (including LTO, DLT, DAT
and DCC), flash drives, program cartridges and cartridge interfaces such as those found in video game devices, removable memory chips such as EPROM or PROM, emerging storage media, such as holographic storage, or similar storage media as known in the art.
This additional memory 414 may be physically internal to the computer 406, or external as shown in Figure 4, or both.
100371 The computer system 400 may also include other similar means for allowing computer programs or other instructions to be loaded. Such means can include, for example, a communications interface 416 which allows software and data to be transferred between the computer system 400 and external systems and networks.

Examples of communications interface 416 can include a modem, a network interface such as an Ethernet card, a wireless communication interface, or a serial or parallel communications port. Software and data transferred via communications interface 416 are in the form of signals which can be electronic, acoustic, electromagnetic, optical or other signals capable of being received by communications interface 416.
Multiple interfaces, of course, can be provided on a single computer system 400.
18 6200-007U Patent Application [0038] Input and output to and from the computer 406 is administered by the input/output (I/O) interface 418. This I/O interface 418 administers control of the display 402, keyboard 404A, external devices 408 and other such components of the computer system 400. The computer 406 also includes a graphical processing unit (GPU) 420. The latter may also be used for computational purposes as an adjunct to, or instead of, the (CPU) 410, for mathematical calculations.
[0039] The various components of the computer system 400 are coupled to one another either directly or by coupling to suitable buses.
[0040] Figure 5 shows an illustrative networked mobile wireless telecommunication computing device in the form of a smartphone 500. The smartphone 500 includes a display 502, an input device in the form of keyboard 504 and an onboard computer system 506. The display 502 may be a touchscreen display and thereby serve as an additional input device, or as an alternative to the keyboard 504. The onboard computer system 506 comprises a central processing unit (CPU) 510 having one or more processors or microprocessors for performing arithmetic calculations and control functions to execute software stored in an internal memory 512, preferably random access memory (RAM) and/or read only memory (ROM) is coupled to additional memory 514 which will typically comprise flash memory, which may be integrated into the smartphone 500 or may comprise a removable flash card, or both. The smartphone 500 also includes a communications interface 516 which allows software and data to be transferred between the smartphone 500 and external systems and networks. The communications interface 19 6200-007U Patent Application 516 is coupled to one or more wireless communication modules 524, which will typically comprise a wireless radio for connecting to one or more of a cellular network, a wireless digital network or a Wi-Fi network. The communications interface 516 will also typically enable a wired connection of the smartphone 500 to an external computer system. A microphone 526 and speaker 528 are coupled to the onboard computer system 506 to support the telephone functions managed by the onboard computer system 506, and a location processor 522 (e.g. including GPS receiver hardware) may also be coupled to the communications interface 516 to support navigation operations by the onboard computer system 506. One or more cameras 530 (e.g. front-facing and/or rear facing cameras) may also be coupled to the onboard computer system 506, as may be one or more of a magnetometer 532, accelerometer 534, gyroscope 536 and light sensor 538.
Input and output to and from the onboard computer system 506 is administered by the input/output (I/O) interface 518, which administers control of the display 502, keyboard 504, microphone 526, speaker 528, camera 530, magnetometer 532, accelerometer 534, gyroscope 536 and light sensor 538. The onboard computer system 506 may also include a separate graphical processing unit (GPU) 520. The various components are coupled to one another either directly or by coupling to suitable buses.
[0041] The terms "computer system", "data processing system" and related terms, as used herein, is not limited to any particular type of computer system and encompasses servers, desktop computers, laptop computers, networked mobile wireless telecommunication computing devices such as smartphones, tablet computers, as well as other types of computer systems.
20 6200-007U Patent Application [0042] Thus, computer readable program code for implementing aspects of the technology described herein may be contained or stored in the memory 512 of the onboard computer system 506 of the smartphone 500 or the memory 412 of the computer 406, or on a computer usable or computer readable medium external to the onboard computer system 506 of the smartphone 500 or the computer 406, or on any combination thereof.
[0043] Finally, the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "includes", "including", "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
100441 The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the form disclosed.
Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the claims. The embodiment was chosen and 21 6200-0071J Patent Application described in order to best explain the principles of the technology and the practical application, and to enable others of ordinary skill in the art to understand the technology for various embodiments with various modifications as are suited to the particular use contemplated.
[0045] One or more currently preferred embodiments have been described by way of example. It will be apparent to persons skilled in the art that a number of variations and modifications can be made without departing from the scope of the claims. In construing the claims, it is to be understood that the use of a computer to implement the embodiments described herein is essential.
22 6200-007U Patent Application

Claims (18)

We claim:
1. A computer-implemented method for dynamic distributed smart contracting comprising:
receiving in an intermediate way station disposed on a route between an originator of shipment of an item and a destination indicated for the item, digital terms of shipment for the transport of the item, and a digital contract of transport of the item from the originator to the destination;
matching the terms of the shipment to pre-stored data indicating an ability of the way station to meet the terms of the shipment;
identifying portions of the contract corresponding to the way station and matching requirements of the identified portions to pre-stored rules indicating a willingness of the intermediate way station to agree to particular contract terms;
affixing a digital signature for the intermediate way station to the digital contract on condition that the terms and requirements match and then selecting a next way station on the route; and, directing transmission of the digital contract and terms of shipment to the selected next way station, but otherwise transmitting a message to the originator rejecting the digital contract;
wherein computer-implementation is essential.
2. The method of claim 1, wherein the digital signature is a hash of the digital contract encrypted with a private key of the intermediate way station.
3. The method of claim 1, wherein the digital terms are verified by decrypting the digital contract with a public key of the originator and comparing the decrypted digital contract with a hash of the digital terms.
4. The method of claim 1, wherein the next way station is selected by retrieving from a cache, different capabilities of a multiplicity of different way stations, comparing the different capabilities with the terms of the shipment, and selecting one of the multiplicity of the different way stations that has capabilities which match a greatest number of the terms of the shipment.
5. The method of claim 1, wherein the next way station is selected by querying each of a multiplicity of different way stations for a list of corresponding capabilities, comparing each list received from the multiplicity of different way stations, and selecting one of the multiplicity of the different way stations that has capabilities which match a greatest number of the terms of the shipment.
6. The method of claim 1, wherein the next way station is selected by retrieving from a cache, different capabilities of a multiplicity of different way stations, comparing the different capabilities with the terms of the shipment, filtering the multiplicity of different way stations to a subset, querying each way station in the subset for a list of updated capabilities, and selecting one of the way stations in the subset that has capabilities which match a greatest number of the terms of the shipment.
7. A
data processing system configured for dynamic distributed smart contracting, the system comprising:
a host computing platform of one or more computers, each with memory and at least one processor, the host computing platform comprising a communicative coupling over computer communications network to different remote computing systems, each of the different remote computing systems corresponding to a different way station on a route between an originator of a shipment of an item and a destination indicated for the item, the host computing platform corresponding to an intermediate way station disposed on the route; and, a smart contracting module comprising computer program instructions executing in the memory of the host computing platform and enabled to perform:
receiving in the intermediate way station digital terms of shipment for the transport of the item, and a digital contract of transport of the item from the originator to the destination;
matching the terms of the shipment to pre-stored data indicating an ability of the way station to meet the terms of the shipment;

identifying portions of the contract corresponding to the way station and matching requirements of the identified portions to pre-stored rules indicating a willingness of the intermediate way station to agree to particular contract terms;
affixing a digital signature for the intermediate way station to the digital contract on condition that the terms and requirements match and then selecting a next way station on the route; and, directing transmission of the digital contract and terms of shipment to the selected next way station, but otherwise transmitting a message to the originator rejecting the digital contract;
wherein the host computing platform and the smart contracting module are essential.
8. The system of claim 7, wherein the digital signature is a hash of the digital contract encrypted with a private key of the intermediate way station.
9. The system of claim 7, wherein the digital terms are verified by decrypting the digital contract with a public key of the originator and comparing the decrypted digital contract with a hash of the digital terms.
10. The system of claim 7, wherein the next way station is selected by retrieving from a cache, different capabilities of a multiplicity of different way stations, comparing the different capabilities with the terms of the shipment, and selecting one of the multiplicity of the different way stations that has capabilities which match a greatest number of the terms of the shipment.
11. The system of claim 7, wherein the next way station is selected by querying each of a multiplicity of different way stations for a list of corresponding capabilities, comparing each list received from the multiplicity of different way stations, and selecting one of the multiplicity of the different way stations that has capabilities which match a greatest number of the terms of the shipment.
12. The system of claim 7, wherein the next way station is selected by retrieving from a cache, different capabilities of a multiplicity of different way stations, comparing the different capabilities with the terms of the shipment, filtering the multiplicity of different way stations to a subset, querying each way station in the subset for a list of updated capabilities, and selecting one of the way stations in the subset that has capabilities which match a greatest number of the terms of the shipment.
13. A computer program product for dynamic distributed smart contracting, the computer program product including a tangible computer readable storage medium having program instructions embodied therewith, the program instructions executable by a device to cause the device to perform a method including:
receiving in an intermediate way station disposed on a route between an originator of shipment of an item and a destination indicated for the item, digital terms of shipment for the transport of the item, and a digital contract of transport of the item from the originator to the destination;
matching the terms of the shipment to pre-stored data indicating an ability of the way station to meet the terms of the shipment;
identifying portions of the contract corresponding to the way station and matching requirements of the identified portions to pre-stored rules indicating a willingness of the intermediate way station to agree to particular contract terms;
affixing a digital signature for the intermediate way station to the digital contract on condition that the terms and requirements match and then selecting a next way station on the route; and, directing transmission of the digital contract and terms of shipment to the selected next way station, but otherwise transmitting a message to the originator rejecting the digital contract;
wherein the computer readable storage medium is essential.
14. The computer program product of claim 13, wherein the digital signature is a hash of the digital contract encrypted with a private key of the intermediate way station.
15. The computer program product of claim 13, wherein the digital terms are verified by decrypting the digital contract with a public key of the originator and comparing the decrypted digital contract with a hash of the digital terms.
16. The computer program product of claim 13, wherein the next way station is selected by retrieving from a cache, different capabilities of a multiplicity of different way stations, comparing the different capabilities with the terms of the shipment, and selecting one of the multiplicity of the different way stations that has capabilities which match a greatest number of the terms of the shipment.
17. The computer program product of claim 13, wherein the next way station is selected by querying each of a multiplicity of different way stations for a list of corresponding capabilities, comparing each list received from the multiplicity of different way stations, and selecting one of the multiplicity of the different way stations that has capabilities which match a greatest number of the terms of the shipment.
18. The computer program product of claim 13, wherein the next way station is selected by retrieving from a cache, different capabilities of a multiplicity of different way stations, comparing the different capabilities with the terms of the shipment, filtering the multiplicity of different way stations to a subset, querying each way station in the subset for a list of updated capabilities, and selecting one of the way stations in the subset that has capabilities which match a greatest number of the terms of the shipment.
CA3035253A 2019-02-26 2019-02-28 Dynamic distributed smart contracting for product transport within a supply chain Pending CA3035253A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US16/285,804 US20200272985A1 (en) 2019-02-26 2019-02-26 Dynamic distributed smart contracting
FR1901949A FR3093213A1 (en) 2019-02-26 2019-02-26 Process of distributed dynamic award of smart contract, associated system and computer program product
FR1901949 2019-02-26
US16/285,804 2019-02-26

Publications (1)

Publication Number Publication Date
CA3035253A1 true CA3035253A1 (en) 2020-08-26

Family

ID=72237663

Family Applications (1)

Application Number Title Priority Date Filing Date
CA3035253A Pending CA3035253A1 (en) 2019-02-26 2019-02-28 Dynamic distributed smart contracting for product transport within a supply chain

Country Status (1)

Country Link
CA (1) CA3035253A1 (en)

Similar Documents

Publication Publication Date Title
US10776398B2 (en) Platform data lifecycle management
US20190019090A1 (en) Field services platform
US10972267B2 (en) Deterministic verification of digital identity documents
US20130132296A1 (en) Networked business object sharing
CN108985784A (en) Method and apparatus for storing information
US20200389301A1 (en) Supply chain management system
US9122733B2 (en) Generation of electronic pedigree
US20190287117A1 (en) Automated receipt parsing to generate recall, warranty, and return notifications
US20180285799A1 (en) Automated goods-received note generator
CA3035253A1 (en) Dynamic distributed smart contracting for product transport within a supply chain
US10671972B2 (en) Automated zone location characterization
US11061982B2 (en) Social media tag suggestion based on product recognition
US20190296895A1 (en) Shipping platform
CA3000268A1 (en) Ad hoc supply chain community node
US20200272985A1 (en) Dynamic distributed smart contracting
CA3036868A1 (en) Blockchain assisted asset pedigree traceback
CA3035257A1 (en) Intelligent dynamic container routing
EP3419727A1 (en) Systems and methods for resolving conflicts in order management of data products
US20180285911A1 (en) Optimizing profitability in fulfilling website-based order
CA3035213A1 (en) Cooperative stock optimization for integrative supply chain management
US20220129839A1 (en) System and method to attribute expiration dates and quantities of a product to a sku code for pricing purposes
CA3000281A1 (en) Content based message routing for supply chain information sharing
Rao et al. Reimagining the Fashion Retail Industry Through the Implications of COVID-19 in the Gulf Cooperation Council (GCC) Countries
US11257029B2 (en) Pickup article cognitive fitment
EP3427116B1 (en) Method and system of analyzing and controlling a cold chain system