BLOCKCHAIN SYSTEMS AND METHODS FOR REMOTE MONITORING
20220165384 · 2022-05-26
Assignee
Inventors
Cpc classification
H04L9/3239
ELECTRICITY
H04L9/0825
ELECTRICITY
G06F21/64
PHYSICS
G16H10/60
PHYSICS
H04L67/12
ELECTRICITY
International classification
H04L9/08
ELECTRICITY
H04L9/32
ELECTRICITY
Abstract
Methods and systems are provided to generate and obtain data from mobile medical devices such as nebulizers and mobile monitors such as pacemakers and to store provenance parameters for the data in a distributed ledger for use in verifying the source and accuracy of the data. The methods and systems may further be used to reduce readmittance rates at healthcare facilities.
Claims
1-27. (canceled)
28. A system for remote management of patient compliance, comprising: a mobile medical device, comprising: i) a processor; ii) a non-transitory computer readable memory in communication with the processor; iii) a data source in communication with the processor; iv) a reference to predetermined network coordinates stored in the memory; v) use instructions for treating a medical condition stored in the memory, and vi) program code stored in the memory, the program code executable by the processor to perform data communication operations, the data communication operations comprising: a) processing signals from the data source to obtain device data; b) inserting dual payloads and device signatures applied to the dual payloads into network packets, first payloads of the dual payloads comprising at least portions of the device data, second payloads of the dual payloads comprising hashes of the at least portions of the device data and device signatures applied to the hashes; and c) pushing the network packets to the predetermined network coordinates in response to internally-generated prompts.
29. The system of claim 28, wherein the system further comprises: a computing infrastructure comprising: i) the predetermined network coordinates; ii) a privacy-compliant database configured to receive the device data; and iii) a list of public keys containing a public key for the mobile medical device, the public key for the mobile medical device effective to recover the hashes from the device signatures applied to the hashes; and iv) at least one access point for communication with a distributed ledger network, the at least access point configured to push instructions to a distributed ledger to add the hashes to the distributed ledger without any patient identification information.
30. The system of claim 29, the computing infrastructure further comprising program code stored in a non-transitory computer readable memory, the program code executable by a processor to perform remote monitoring of the device data received by the privacy-compliant database.
31. The system of claim 30, wherein the remote monitoring comprises: adjusting a schedule for one or more of the pulling, downloading, and processing if the determined risk of readmission exceeds a first threshold; and optionally triggering an intervention protocol if the determined risk of readmission exceeds a second threshold.
32. The system of claim 30, wherein the remotely monitoring further comprises: a) pulling the hash and the device signature applied to the hash from the distributed ledger; b) authenticating the hash by recovering the hash from at least the device signature applied to the hash; c) verifying the accuracy of the downloaded at least a portion of the device data against the pulled hash; and d) processing the at least a portion of the device data in combination with the use instructions to obtain the at least one patient compliance parameter.
33. The system of claim 32, wherein the at least one patient compliance parameter comprises a measure of patient compliance with the use instructions.
34. The system of claim 33, wherein the at least one patient compliance parameter comprises: a measure of patient non-compliance with the use instructions, a cumulative number of missed treatments by the mobile medical device, a cumulative quantity of medication dispensed by the mobile medical device, a probability of readmission of the patient to a healthcare facility to treat the medical condition, an estimate of an excess readmission rate, or any combination thereof.
35. The system of claim 28, wherein the dual payloads are recovered from the device signatures applied to the dual payloads using a public key.
36. The system of claim 35, wherein the public key is created by a manufacturer of the mobile medical device.
37. The system of claim 28, wherein the mobile medical device further comprises a private key embedded in an onboard key signing chip.
38. The system of claim 37, wherein the communication operations further comprise using the private key to generate the device signatures applied to the hashes.
39. The system of claim 28, wherein the second payloads contains no patient identification information.
40. The system of claim 28, wherein the second payload comprises one or more instructions for inserting the hash into a distributed ledger.
41. The system of claim 40, wherein the one or more instructions are recovered from the device signature applied to the hash.
42. The system of claim 29, wherein the computing infrastructure further comprises: i) a further processor; ii) a private key; and iii) instructions executable by the further processor to use the private key to generate digital signatures applied to the device signatures applied to the hashes.
43. The system of claim 42, wherein the mobile medical device comprises a key signing chip that generates the private key.
44. The system of claim 28, wherein the device data comprises a log of mobile medical device usage data including one or more of time-of-use, frequency of use, and use-duration data for the mobile medical device.
45. The system of claim 44, wherein the log of mobile medical device usage data comprises at least one of time, duration, and frequency of usage of the mobile medical device.
46. The system of claim 28, wherein a first threshold is triggered when the log of mobile medical device usage indicates non-compliant usage, lack of usage, and/or overusage of the mobile medical device by the intended user.
47. The system of claim 28, comprising further mobile medical devices that are drug delivery devices, wherein the mobile medical device gathers and transmit data from the further mobile medical devices.
48. The system of claim 28, wherein the mobile medical device comprises a sensor or a dispenser.
49. The system of claim 48, wherein the mobile medical device comprises a mechanical actuator.
50. The system of claim 49, wherein the mechanical actuator is configured for operation by the patient.
51. The system of claim 28, wherein the mobile medical device is a nebulizer.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0158]
[0159]
[0160]
[0161]
[0162]
[0163]
[0164]
[0165]
[0166]
[0167]
DETAILED DESCRIPTION
[0168] In the description herein, the US Health Insurance Portability and Accountability Act (HIPAA)-compliant databases and frameworks are described as exemplary privacy-complant databases. However, the invention is not limited to HIPPA-compliant databases, but, rather, can be applied to any privacy-compliant databases, such as Europe's General Data Protection Regulations (GDPR), Japan's Act on the Protection of Personal In-formation (APPI), Canada's Personal Information Protection and Electronic Documents Act (PIPEDA), Austrailia's Privacy Act 1988, and the like.
[0169] A schematic illustration of a framework (for example a HIPAA-compliant framework) for storing data and data provenance parameters is shown in
[0170] The data source 100 may be a mobile medical device, for example a hand-held nebulizer equipped with a cellular radio. The mobile medical device may comprise a processor, a memory, one or more private cryptographic keys, and necessary program code in order to compute the hash and the digital signature, and to form the network packet. The network packet 102 may traverse one or more of a cellular network, the public Internet, and an enterprise network to reach the server. The data source 100 and the server 104 may negotiate a network connection for communication of the network packet. The network connection may comprise one or more of a Transmission Control Protocol (TCP) connection, a User Datagram Protocol (UDP) connection, a Bluetooth connection, a Wi-Fi connection, a cellular network connection, or a connection according to a different network protocol. The network connection may be encrypted, for example the connection may be encrypted according to Transport Layer Security (TLS) protocol. The network packet 102 may comprise additional headers to enable transport according to one or more protocol for navigating one or more of a cellular network, the public Internet, and an enterprise network to reach the server. The proprietary list of public keys 116 may specify public keys for data sources that have been registered by one or more patients who have provided an executed HIPAA release form and a registration code for the data source 100. The message may contain a digital signature provided by the data source 100 and required by the distributed ledger network 116. One or more of the server 104, the database 120, the peer 122 of the distributed ledger network, and the entire distributed ledger network 116 may be contained in one or more enterprise networks (for example one enterprise network). The digital ledger network 116 may be a private distributed ledger. The digital ledger network 116 may be a public distributed ledger. The peer 122 may execute a smart contract in response to receiving the message.
[0171]
[0172] Certain embodiments (for example the embodiment disclosed in
[0173] In certain embodiments, for example, the mobile medical device may be a continuous positive airway pressure (CPAP) device. In certain embodiments, for example, the mobile medical device may be a bilevel positive airway pressure device. In certain embodiments, for example, the mobile medical device may be a glucometer. In certain embodiments, for example, the mobile medical device may be a pulse oximeter. In certain embodiments, for example, the mobile medical device may be an oxygen delivery system. In certain embodiments, for example, the mobile medical device may be a blood pressure monitor/cuff.
[0174] Certain embodiments (for example the embodiment disclosed in
[0175] Certain embodiments (for example the embodiment disclosed in
[0176] Certain embodiments (for example the embodiment disclosed in
[0177] In certain embodiments, for example, a distributed ledger may provide a number of advantages over traditional databases. In certain embodiments, for example, information may be added to the distributed ledger in blocks, wherein the blocks are added in an ordered sequence (or chain). In certain embodiments, for example, the chain of blocks (i.e., the blockchain) may be maintained to provide a history of the information added to the distributed ledger. In certain embodiments, for example, each added block may store a reproducible signature (for example a hash) indicative of a previous state of the blockchain, whereby any alteration of information in a previously-added block in the blockchain will be detected because the resulting signatures in subsequent blocks would not match previously stored signatures. In certain embodiments, for example, records in the distributed ledger may secure trusted data by hashing the data into an ongoing chain of hash-based proof-of-work, forming a record that cannot be changed without redoing the proof-of-work.
[0178] In certain embodiments, for example, plural nodes hosting the distributed ledger may reach a consensus regarding the validity of information maintained with a block of the blockchain, e.g., a transaction contained on a transaction ledger, financial information or the like. Additionally, when multiple versions of information exist on the ledger, multiple nodes can converge on the most up-to-date version of the transaction. For example, in the case of a virtual currency transaction, any node within the distributed ledger that creates a transaction can determine within a level of certainty whether the transaction can take place and become final by confirming that no conflicting transactions (i.e., the same currency unit has not already been spent) confirmed by the distributed ledger elsewhere.
[0179] In certain embodiments, for example, a distributed ledger may comprise two types of records. The first type of record is the information type, which consists of the actual data stored in the distributed ledger. The second type of record is the block type, which confirms when and in what sequence certain information became recorded as part of the distributed ledger. In certain embodiments, for example, information may be created by participants using the distributed ledger in the normal course of business, for example, when someone sends a resource to another person. In certain embodiments, for example, blocks are created by users known as “miners” who use specialized software/equipment to create blocks. In certain embodiments, for example, nodes in possession of a block of the distributed ledger may communicate with other nodes to validate added information based on a set of rules that are defined by the particular system implementing the distributed ledger. For example, in the case of financial information, such as cryptocurrencies or the like, valid information may be digitally signed, conducted from a valid digital wallet and, in some cases, meet other criteria.
[0180] In certain embodiments, for example, a distributed ledger may be decentralized—meaning that a distributed ledger is maintained on multiple nodes of the distributed ledger. One node in the distributed ledger may have a complete or partial copy of the entire ledger or set of information and/or blocks on the distributed ledger. Transactions may be initiated at a node of a distributed ledger and communicated to the various other nodes of the distributed ledger. Any of the nodes can validate information, add the information to its copy of the distributed ledger, and/or broadcast the information, its validation (in the form of a block) and/or other data to other nodes. This other data may include time-stamping, such as is used in financial resource distributed ledgers. Various other specific-purpose implementations of distributed ledgers have been developed. These include distributed domain name management, decentralized crowd-funding, synchronous/asynchronous communication, decentralized real-time ride sharing and even a general purpose deployment of decentralized applications.
[0181] In certain embodiments, for example, the distributed ledger may be public (for example a distributed ledger like Bitcoin, Litecoin, Ethereum, Zcash, Monero, Dash, Litecoin, Dodgecoin, or Hyperledger). In certain embodiments, for example, the distributed ledger may be private (for example a distributed ledger like Bankchain, MONAX, or Multichain). In certain embodiments, for example, the ledger may be permissionless (for example a ledger like blockchain). In certain embodiments, for example, the ledger may be permissioned (for example like Hyperledger, Kaleido, or PBFT). In certain embodiments, for example, the distributed ledger may be a consortium distributed ledger (for example a ledger like R3, EWF, B3i, or Corda).
[0182] In certain embodiments, for example, the distributed ledger may be an open-source distributed computing platform. In certain embodiments, for example, the distributed ledger may be a blockchain-based distributed computing platform and operating system. In certain embodiments, for example, the distributed ledger may utilize scripting functionality. In certain embodiments, for example, the distributed ledger may utilize smart contract functionality. In certain embodiments, for example, the distributed ledger may support a modified version of Nakamoto consensus via transaction-based state. In certain embodiments, for example, the distributed ledger may be an open-source, public, blockchain-based distributed computing platform and operating system utilizing smart contract functionality, and support a modified version of Nakamoto consensus via transaction-based state transitions (for example Ethereum).
[0183] Certain embodiments (for example the embodiment disclosed in
[0184] Certain embodiments (for example the embodiment disclosed in
[0185] Certain embodiments may provide, for example, a method, a system, a product (for example a computer program product), a distributed system (for example a distributed computer program), software, middleware, computing infrastructure and/or apparatus (or a combination of two or more of the foregoing) comprising a data protocol used in transmission of data. In certain embodiments, for example, the data protocol may be used in transmission of data (for example device data, hash data, or messages configured for delivery to a distributed ledger network) from a data source (for example a mobile medical device) to a server. In certain embodiments, for example, the data protocol may be used in transmission of data (for example device data) from the server to a database. In certain embodiments, for example, the data protocol may be used in transmission of data (for messages configured for delivery to a distributed ledger network) from a server to a peer in a distributed ledger network. In certain embodiments, for example, the data protocol may be a machine-to-machine protocol. In certain embodiments, for example, the data protocol may be an Internet of Things (IoT) protocol. In certain embodiments, for example, the data protocol may comprise an MQ Telemetry Transport (MQTT) protocol. In certain embodiments, for example, the data protocol may comprise an Advanced Message Queuing Protocol (AMQP). In certain embodiments, for example, the data protocol may comprise a Simple/Streaming Text Oriented Messaging Protocol (STOMP). In certain embodiments, for example, the data protocol may comprise a Data Distribution Service DDS. In certain embodiments, for example, the data protocol may comprise a Constrained Application Protocol (CoAP). In certain embodiments, for example, the data protocol may comprise an Open Platform Communications Unified Architecture (OPC UA) protocol. In certain embodiments, for example, the data protocol may comprise a Java Message Service (JMS) protocol. In certain embodiments, for example, the data protocol may comprise an eXtensible Messaging and Presence Protocol (XMPP). In certain embodiments, for example, the data protocol may comprise a Representational State Transfer (REST) protocol. In certain embodiments, for example, the data protocol may comprise an Open Mobile Alliance Light Weight Machine-to-Machine (OMA LWM2M) protocol. In certain embodiments, for example, the data protocol may comprise a JavaScript Object Notation (JSON) protocol. In certain embodiments, for example, the data protocol may comprise a Simple Network Management Protocol (SNMP). In certain embodiments, for example, the data protocol may comprise a protocol conforming to Technical Report 069: CPE WAN Management Protocol (TR-069-CWMP). In certain embodiments, for example, the data protocol may conform to a Health Level 7 (HL7) specification. In certain embodiments, for example, the data protocol may conform to a Fast Healthcare Interoperability Resources (FHIR) specification. In certain embodiments, for example, the data protocol may conform to Continua Design Guidelines (CDG). In certain embodiments, for example, the data protocol may comprise Hypertext Transfer Protocol (HTTP). In certain embodiments, for example, the data protocol may conform to the Alljoyn framework. In certain embodiments, for example, the data protocol may comprise Modbus protocol (for example Modbus over TCP and UDP). In certain embodiments, for example, the data protocol may conform to VITA 49 radio transport packet specification. In certain embodiments, for example, the data protocol may conform to Edgent protocol. In certain embodiments, for example, the data protocol may comprise a file transfer protocol. In certain embodiments, for example, the data protocol may comprise a domain name server protocol. In certain embodiments, for example, the data protocol may comprise an Internet Control Message Protocol (ICMP). In certain embodiments, for example, the data protocol may comprise a structured query language protocol. In certain embodiments, for example, the data protocol may comprise a publish-subscribe messaging pattern protocol. In certain embodiments, for example, the data protocol may comprise a data distribution service protocol. In certain embodiments, for example, the data protocol may comprise a data structure identifier. In certain embodiments, for example, the data protocol may comprise a data topic. In certain embodiments, for example, the data protocol may comprise a data type (for example “string”, “integer”, “unsigned integer”, “Boolean”, “floating point”, “double precision”, etc.). In certain embodiments, for example, the data protocol may indicate an allowed range (for example a continuous range or a list of allowed values) of values for a data payload. In certain embodiments, for example, the data protocol may comprise a data definition identifier.
[0186] Certain embodiments may provide, for example, a method, a system, a product (for example a computer program product), a distributed system (for example a distributed computer program), software, middleware, computing infrastructure and/or apparatus (or a combination of two or more of the foregoing) comprising a command syntax, command type, and/or command type identifier accompanying transmitted data (for example a packet of data sent to a database may be accompanied by a command instructing the database how to format or operate on the data). In certain embodiments, for example, the command type may comprise a SQL command and/or statement, for example the command type may comprise SQLread, SQLwrite, AND/OR, ALTER TABLE, AS (alias), BETWEEN, CREATE DATABASE, CREATE TABLE, CREATE INDEX, CREATE VIEW, DELETE, DROP DATABASE, DROP INDEX, DROP TABLE, EXISTS, GROUP BY, HAVING, IN, INSERT INTO, INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN, LIKE, ORDER BY, SELECT, SELECT *, SELECT DISTINCT, SELECT INTO, SELECT TOP, TRUNCATE TABLE, UNION, UNION ALL, UPDATE, WHERE, or a combination of two or more of the foregoing commands. In certain embodiments, for example, the command type may comprise a DNS command, for example the command type may comprise ipconfig, trace route, netstat, arp, route, hostname, control netconnections, or a combination of two or more of the foregoing commands. In certain embodiments, for example, the command type may comprise an FTP command, for example the command type may comprise !, $, ?, account, append, ascii, beep, binary, bye, case, cd, cdup, chmod, close, cr, debug, delete, dir, disconnect, exit, form, get, glob, hash, help, idle, image, ipany, ipv4, ipv6, lcd, ls, macdef, mdelete, mdir, mget, mkdir, mls, mode, modtime, mput, newer, nlist, nmap, ntrans, open, passive, prompt, proxy, put, pwd, qc, quit, quote, recv, reget, rename, reset, restart, rhelp, rmdir, rstatus, runique, send, sendport, site, size, status, struct, sunique, system, tenex, tick, trace, type, umask, user, verbose, or a combination of two or more of the foregoing commands. In certain embodiments, for example, the command type may comprise a Telnet, an Rlogin, an Rsh, or a Secure Shell command. In certain embodiments, for example, the command type may comprise an ICMP command, for example the command type may comprise PING, TRACEROUTE, ICMP PERMIT, ICMP DENY, or a combination of two or more of the foregoing commands. In certain embodiments, for example, the command type may comprise an MQTT command. In certain embodiments, for example, the command type may be a function call. In certain embodiments, for example, the function call may be a call to or from a smart contract. In certain embodiments, for example, the function call may be signed.
[0187] A schematic illustration of an approach to device registration to support subsequent data collection for use compliance monitoring is shown in
[0188] A schematic illustration of an approach to remote patient compliance monitoring incorporating a distributed ledger is depicted in
[0189] The distributed ledger 316 may be a private ledger or a public ledger such as Ethereum configured to provide an immutable record of the time series data by storing a reference to the addition of the hash to an immutability construct such as a block in a blockchain The first server 314 may be a secure server that is purpose-configured to receive data exclusively from predetermined devices based on a pre-populated list of device identification codes and/or proprietary list 320 of public keys, with write access to the device database 322 otherwise strictly limited to predetermined administrative functions (for example, pre-populating device identification codes), and data export from the device database 322 may be limited to predefined internal report generation and requests from authorized third parties via a second server 326.
[0190] Remote compliance monitoring of an intended patient's use of the mobile device 300 comprises (a) using a compliance device 328 (for example a computer at a healthcare facility 330) to obtain the device identification code and access credentials for a patient from a HIPPA-compliant EHR database 332, (b) supplying a data request with access credentials to the second server 326 to obtain time series of operating data, (c) verifying access (for example by a smart contract) by confirming the access credentials are present on a list of valid access credentials, and (d) obtaining one or more hashes of the time series of operating data from a peer 334 (for example a peer assigned to the healthcare facility 330) in the distributed ledger network 316. The time series of operating data are run through a hash function on the compliance device 328 and the results are confirmed to match the one or more hashes obtained from the distributed ledger network 316. Upon confirmation, the compliance device 328 compares the time series of operating data with the operating instructions for the intended user and determines whether the course of use of the mobile device 300 complies with the instructions. If the use is non-compliant and a risk is detected that exceeds a predetermined threshold, remote compliance monitoring may trigger communication with the intended patient, for example to provide updated instructions for operating the device 300.
[0191]
[0192] A schematic illustration of an approach to remote patient compliance monitoring incorporating a distributed ledger and a compliance reporting service is depicted in
[0193] Remote compliance monitoring of an intended patient's use of the mobile device 300 comprises a compliance service 400 (a) using a compliance device 328 (for example a computer at a healthcare facility 330) to obtain the device identification code and access credentials for a patient from a HIPPA-compliant EHR database 332, (b) supplying a data request with access credentials to the second server 326 to obtain the time series of operating data, (c) verifying access (for example by a smart contract) by confirming the access credentials are present on a list of valid access credentials, and (d) obtaining the recorded hash of the operating data from a peer 334 (for example a peer assigned to the healthcare facility 330) in the distributed ledger network 316. The time series is run through a hash function on the compliance device 328 and the result is confirmed to match the hash obtained from the distributed ledger network 316. Upon confirmation, the compliance service 400 compares the time series of operating data with the operating instructions for the intended user and generates a report which is transmitted to the compliance device 328 where it is utilized to perform the remote compliance monitoring to determine whether the course of use of the mobile device 300 complies with the instructions. If the use is non-compliant (for example the use comprises over-use or underuse) and a risk is detected that exceeds a predetermined threshold (for example over-use indicates a risk of disease deterioration), remote compliance monitoring may trigger communication with the intended patient, for example to provide updated instructions for operating the device 300.
[0194] A schematic illustration of an approach to remote patient compliance monitoring is depicted in
[0195] Subsequently, remote compliance monitoring of an intended patient's use of the mobile device 500 comprises a compliance device 520 obtaining the identification code for the device 500 and operating instructions for the device 500 (for example a doctor's prescription) from a HIPPA-compliant EHR database 522 via a network 524, and uses the identification code for the device 500 as an index to retrieve the time series of operating data from the device database 518 via the network 524. The remote compliance monitoring compares the time series of operating data with the operating instructions for the intended user and determines whether the course of use of the mobile device 500 complies with the instructions. If the use is non-compliant and a risk is detected that exceeds a predetermined threshold, remote compliance monitoring may trigger communication with the intended patient, for example to provide updated instructions for operating the device 500.
[0196]
[0197] A schematic illustration of an approach to remote patient compliance monitoring incorporating a distributed ledger is depicted in
[0198] Subsequently, the time series of operating data (or one or more hashes derived from the time series of operating data) is published to a distributed ledger 600 via a network 524. The distributed ledger 600 may be a private ledger or a public ledger such as Ethereum configured to provide an immutable and optionally encrypted) record of the time series data. The server 514 may be a secure server that is purpose-configured to receive data exclusively from predetermined devices based on a pre-populated list of device identification codes, with write access to the device database 518 otherwise be strictly limited to predetermined administrative functions (for example, pre-populating device identification codes), and data export from the device database 518 may be limited to the publication to the distributed ledger 600 (e.g., according to a predefined protocol such as pre-approved JSON messages) and to predefined internal report generation.
[0199] Remote compliance monitoring of an intended patient's use of the mobile device 500 comprises a compliance device 520 obtaining the identification code for the device 500 and operating instructions for the device 500 (for example a doctor's prescription) from a HIPPA-compliant EHR database 522 via the network 524, and uses the identification code for the device 500 as an index to retrieve the time series of operating data (and/or one or more hashes (for example one hash for each data transmission from the mobile device) derived from the time series of operating data) from the distributed ledger 600 via the network 524. The one or more hashes may be used to generate a request for one or more dates associated with the time series. The remote compliance monitoring compares the time series of operating data with the operating instructions for the intended user and determines whether the course of use of the mobile device 500 complies with the instructions. If the use is non-compliant and a risk is detected that exceeds a predetermined threshold, remote compliance monitoring may trigger communication with the intended patient, for example to provide updated instructions for operating the device 500.
[0200]
[0201] A schematic illustration of an approach to remote patient compliance monitoring incorporating a distributed ledger and a compliance reporting service is depicted in
[0202] Subsequently, the time series of operating data is published to a distributed ledger 600 via the network 524. The distributed ledger 600 may be a private ledger or a public ledger such as Ethereum configured to provide an immutable and optionally encrypted) record of the time series data. The server 514 may be a secure server that is purpose-configured to receive data exclusively from predetermined devices based on a pre-populated list of device identification codes, with write access to the device database 518 otherwise be strictly limited to predetermined administrative functions (for example, pre-populating device identification codes), and data export from the device database 518 may be limited to the publication to the distributed ledger 600 (e.g., according to a predefined protocol such as pre-approved JSON messages) and to predefined internal report generation.
[0203] Remote compliance monitoring of an intended patient's use of the mobile device 500 comprises a compliance service 700 obtaining the identification code for the device 500 and operating instructions for the device 500 (for example a doctor's prescription) from a HIPPA-compliant EHR database 522 via a network 524, and uses the identification code for the device 500 as an index to retrieve the time series of operating data from the distributed ledger 600 via the network 524. The compliance service 700 compares the time series of operating data with the operating instructions for the intended user and generates a report which is transmitted to a compliance device 520 utilized to perform the remote compliance monitoring to determine whether the course of use of the mobile device 500 complies with the instructions. If the use is non-compliant and a risk is detected that exceeds a predetermined threshold, remote compliance monitoring may trigger communication with the intended patient, for example to provide updated instructions for operating the device 500.
[0204]
[0205]
[0206]
[0207]
[0208] In operation, a user node 1008 (for example a node at a law firm) deploys a copy of the first smart contract to a consensus node 1000A, which then shares the first smart contract with the other nodes. Once the first smart contract is added to the distributed ledger 1002A-D, a node at a bank 1010 may send a message to one of the consensus nodes 1000B to execute a function of the first smart contract to distribute a quantity of cryptocurrency (or other assets, as defined by the smart contract) to user accounts named in the first smart contract. To trigger the distribution, the consensus nodes 1000A-D will independently execute said function and communicate with one another to reach consensus about the correct result.
[0209] In another example of the ecosystem in operation, a node 1012 at a department of motor vehicles may transmit a message to a consensus node 1000A to execute a function of the second smart contract to upload updated car registry information to the distributed ledger 1002A-D. The distributed 1002A-D ledger is updated once the consensus nodes 1000A-D verify the message and reach consensus on the result of said function. A separate node 1014 (for example a node at a car dealership or a police department) may send a message with proper authenticating credentials to a consensus node 1000D to query and read a portion of the uploaded vehicle registry information from a copy 1002D of the distributed ledger.
[0210] In addition to the foregoing transactions related to smart contracts, a client wallet 1016 (for example a wallet present on a smart phone) may submit a transaction to a consensus node 1000C to transfer a quantity of cryptocurrency from one address to another address. The cryptocurrency transaction may be embedded into a smart contract function call whereby specified transactions may only occur if valid amounts of cryptocurrency are included in said transactions. Similarly to the previous transactions, prior to executing the transaction and updating the distributed ledger 1002A-D, the consensus nodes 1000A-D will receive and verify the transaction, followed by reaching consensus on the correct state of the distributed ledger 1002A-D.
[0211] All publications and patent applications mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication or patent application was specifically and individually indicated to be incorporated by reference.
[0212] While preferred embodiments of the present invention have been shown and described herein, it will be obvious to those skilled in the art that such embodiments are provided by way of example only. It is intended that the following claims define the scope of the invention and that methods and structures within the scope of these claims and their equivalents be covered thereby.