CN112071390A - 去中心化的处方再配药 - Google Patents
去中心化的处方再配药 Download PDFInfo
- Publication number
- CN112071390A CN112071390A CN202010406164.XA CN202010406164A CN112071390A CN 112071390 A CN112071390 A CN 112071390A CN 202010406164 A CN202010406164 A CN 202010406164A CN 112071390 A CN112071390 A CN 112071390A
- Authority
- CN
- China
- Prior art keywords
- blockchain
- prescription
- patient
- transaction
- data
- 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
Links
- 206010020751 Hypersensitivity Diseases 0.000 claims abstract description 27
- 208000026935 allergic disease Diseases 0.000 claims abstract description 26
- 230000007815 allergy Effects 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims description 62
- 239000003814 drug Substances 0.000 claims description 46
- 229940079593 drug Drugs 0.000 claims description 45
- 238000012857 repacking Methods 0.000 claims description 2
- 230000015654 memory Effects 0.000 description 20
- 230000006870 function Effects 0.000 description 15
- 230000004044 response Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 13
- 238000002483 medication Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000012795 verification Methods 0.000 description 6
- 238000013475 authorization Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000012163 sequencing technique Methods 0.000 description 5
- 230000036541 health Effects 0.000 description 4
- 238000010200 validation analysis Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- NOESYZHRGYRDHS-UHFFFAOYSA-N insulin Chemical compound N1C(=O)C(NC(=O)C(CCC(N)=O)NC(=O)C(CCC(O)=O)NC(=O)C(C(C)C)NC(=O)C(NC(=O)CN)C(C)CC)CSSCC(C(NC(CO)C(=O)NC(CC(C)C)C(=O)NC(CC=2C=CC(O)=CC=2)C(=O)NC(CCC(N)=O)C(=O)NC(CC(C)C)C(=O)NC(CCC(O)=O)C(=O)NC(CC(N)=O)C(=O)NC(CC=2C=CC(O)=CC=2)C(=O)NC(CSSCC(NC(=O)C(C(C)C)NC(=O)C(CC(C)C)NC(=O)C(CC=2C=CC(O)=CC=2)NC(=O)C(CC(C)C)NC(=O)C(C)NC(=O)C(CCC(O)=O)NC(=O)C(C(C)C)NC(=O)C(CC(C)C)NC(=O)C(CC=2NC=NC=2)NC(=O)C(CO)NC(=O)CNC2=O)C(=O)NCC(=O)NC(CCC(O)=O)C(=O)NC(CCCNC(N)=N)C(=O)NCC(=O)NC(CC=3C=CC=CC=3)C(=O)NC(CC=3C=CC=CC=3)C(=O)NC(CC=3C=CC(O)=CC=3)C(=O)NC(C(C)O)C(=O)N3C(CCC3)C(=O)NC(CCCCN)C(=O)NC(C)C(O)=O)C(=O)NC(CC(N)=O)C(O)=O)=O)NC(=O)C(C(C)CC)NC(=O)C(CO)NC(=O)C(C(C)O)NC(=O)C1CSSCC2NC(=O)C(CC(C)C)NC(=O)C(NC(=O)C(CCC(N)=O)NC(=O)C(CC(N)=O)NC(=O)C(NC(=O)C(N)CC=1C=CC=CC=1)C(C)C)CC1=CN=CN1 NOESYZHRGYRDHS-UHFFFAOYSA-N 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 102000004877 Insulin Human genes 0.000 description 1
- 108090001061 Insulin Proteins 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- NDAUXUAQIAJITI-UHFFFAOYSA-N albuterol Chemical compound CC(C)(C)NCC(O)C1=CC=C(O)C(CO)=C1 NDAUXUAQIAJITI-UHFFFAOYSA-N 0.000 description 1
- 208000030961 allergic reaction Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 208000006673 asthma Diseases 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 229940124558 contraceptive agent Drugs 0.000 description 1
- 239000003433 contraceptive agent Substances 0.000 description 1
- 239000000599 controlled substance Substances 0.000 description 1
- 229940125368 controlled substance Drugs 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 229940125396 insulin Drugs 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 240000004308 marijuana Species 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000003237 recreational drug Substances 0.000 description 1
- 229960002052 salbutamol Drugs 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 208000011117 substance-related disease Diseases 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000003204 tranquilizing agent Substances 0.000 description 1
- 230000002936 tranquilizing effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H20/00—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
- G16H20/10—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/88—Medical equipments
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Epidemiology (AREA)
- Public Health (AREA)
- Primary Health Care (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Accounting & Taxation (AREA)
- Chemical & Material Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Medicinal Chemistry (AREA)
- Computing Systems (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Medical Treatment And Welfare Office Work (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
示例操作可以包括以下操作中的一个或多个:由药房节点连接到被配置为将患者的数据存储在区块链分类账上的区块链网络;由药房节点从患者节点接收对处方再配药的请求,该请求包含患者的秘密密钥;由药房节点从该请求中提取秘密密钥以核实患者的身份;和由药房节点执行智能合约以:(a)通过应用秘密密钥对位于分类帐上的处方数据进行解密;(b)从分类账中检索患者的过敏记录,以对照处方数据检查该过敏记录;(c)根据处方数据确定剩余的再配药的数量;(d)基于到期日期检查处方数据的有效性;以及基于(b)‑(d)的成功执行,向区块链提交处方再配药交易。
Description
技术领域
本申请总体上涉及数据库存储系统,并且更具体地,涉及去中心化的处方再配药(prescription refill)。
背景技术
集中式数据库在位于一个位置处的单一数据库(例如,数据库服务器)中存储和维护数据。该位置通常是中央计算机,例如,台式中央处理单元(central processing unit,CPU)、服务器CPU或大型计算机。存储在集中式数据库中的信息通常可以从多个不同的点进行访问。多个用户或客户端工作站可以在集中式数据库上同时工作,例如,基于客户端/服务器配置在集中式数据库上同时工作。集中式数据库因为它的单个位置而易于管理、维护和控制,特别是出于安全目的。在集中式数据库中,数据冗余被最小化,因为所有数据的单个存储位置也意味着给定的数据集合只有一个主记录。
然而,集中式数据库存在明显的缺点。例如,集中式数据库具有单点故障。特别是,如果没有容错考虑并且出现硬件故障(例如,硬件、固件和/或软件故障),则数据库中的所有数据都会丢失,并且所有用户的工作都会中断。此外,集中式数据库高度依赖于网络连接。因此,连接越慢,每次数据库访问所需的时间量就会增加。另一缺点是,当集中式数据库由于单个位置而经历高流量时,会出现瓶颈。此外,集中式数据库提供对数据的有限访问,因为数据库只维护数据的一个副本。因此,多个设备无法在不造成重大问题或不具有覆盖所存储的数据的风险的情况下同时访问同一条数据。此外,由于数据库存储系统的数据冗余很少甚至没有,所以意外丢失的数据难以从备份存储中恢复,除非通过手动操作。
传统上,集中式数据库受到搜索能力低、缺乏安全性和交易速度慢的限制。因此,需要一种基于区块链的解决方案来克服这些重大缺陷。
出国旅行或在不熟悉的地方时获取药物可能既困难又昂贵。出国旅行的人有时会忘记为他们即将到来的旅行购买药物,或者可能在他们的旅行期间用完药物,或者可能丢失他们的药物。人们可能会在旅行之前赶时间并且最终为他们的药物支付更多的费用。在一些情况下,人们甚至可能决定不带药物就去旅行,这会使他或她的健康处于危险境地。当不能通过柜台获得药物时,为处方再配药就变得昂贵且耗时,因为在不同的国家或患者不熟悉的地方,一些药物可能需要医生的问诊来获取处方。此外,虽然在一些地方特定药物可以通过柜台获得,但在另一地方可能会受到限制。例如,在加拿大,PiralvexTM可以通过柜台进行购买,而在美国,这种药物却需要处方。因此,即使旅行者已经仔细地计划了旅行,但他或她在尝试购买他们最初认为可以通过柜台获取的药物时仍然会遇到问题。在即使该药物在本国需要开处方,但在目的地国家却可以通过柜台获取的情况下,仍然期望具有一种系统,其向旅行者通知关于通过柜台的可获得性。重要的是要确保人们能够以最低的成本及时获取药物,而不会危害他们的健康,也不会带来麻烦。例如,需要胰岛素、哮喘吸入剂、沙丁胺醇或者甚至避孕药的人,即使他们在国外时也应该能够在没有任何问题的情况下获取他们的药物。
因此,期望使用区块链作为一种安全地处理与医疗保险、医疗状况、过敏史相关的信息并且提供所需的识别机制来证明患者的身份的方式来使得旅行者在他们出国旅行或到不熟悉的地方旅行时能够容易地为他们的处方再配药。
发明内容
一个示例实施例提供了一种方法,该方法包括以下操作中的一个或多个:由药房节点连接到区块链网络,区块链网络被配置为将患者的数据存储在区块链分类账上;由药房节点从患者节点接收对处方再配药的请求,该请求包含患者的秘密密钥;由药房节点从该请求中提取秘密密钥以核实患者的身份;以及由药房节点执行智能合约,以:(a)通过应用秘密密钥对位于分类帐上的处方数据进行解密;(b)从分类账中检索患者的过敏记录,以对照处方数据检查过敏记录;(c)根据处方数据确定剩余的再配药的数量;(d)基于到期日期检查处方数据的有效性;以及基于(b)-(d)的成功执行,向区块链提交处方再配药交易。
另一示例实施例提供了一种非暂时性计算机可读介质,其包括指令,当指令由处理器读取时,使得处理器执行以下操作中的一个或多个:连接到区块链网络,区块链网络被配置为将患者的数据存储在区块链分类账上;从患者节点接收对处方再配药的请求,请求包含患者的秘密密钥;从请求中提取秘密密钥以核实患者的身份;以及执行智能合约,以:(a)通过应用秘密密钥对位于分类帐上的处方数据进行解密;(b)从分类账中检索患者的过敏记录,以对照处方数据检查过敏记录;(c)根据处方数据确定剩余的再配药的数量;(d)基于到期日期检查处方数据的有效性;以及基于(b)-(d)的成功执行,向区块链提交处方再配药交易。
又一示例实施例提供了一种方法,该方法包括以下操作中的一个或多个:由药房节点从患者节点接收对处方再配药的请求,请求包含患者的秘密密钥;由药房节点从请求中提取秘密密钥以核实患者的身份;以及由药房节点执行智能合约,以:(a)通过应用秘密密钥对位于分类帐上的处方数据进行解密;(b)从分类账中检索患者的过敏记录,以对照处方数据检查该过敏记录;(c)根据处方数据确定剩余的再配药的数量;(d)基于到期日期检查处方数据的有效性;以及基于(b)-(d)的成功执行,向区块链提交处方再配药交易。
附图说明
图1示出了根据示例实施例的包括分类账数据库的系统的网络图。
图2A示出了根据示例实施例的示例对等节点配置。
图2B示出了根据示例实施例的另一对等节点配置。
图3示出了根据示例实施例的许可网络。
图4A示出了根据示例实施例的流程图。
图4B示出了根据示例实施例的另一流程图。
图5A示出了根据示例性实施例的被配置为执行本文描述的一个或多个操作的示例系统。
图5B示出了根据示例性实施例的被配置为执行本文描述的一个或多个操作的另一示例系统。
图5C示出了根据示例实施例的合约方之间的智能合约配置和被配置为在区块链上强制执行智能合约条款的中介服务器。
图5D示出了根据示例实施例的另一附加示例系统。
图6A示出了根据示例实施例的将新数据添加到数据库的过程。
图6B示出了根据示例实施例的包括新数据的数据区块的内容。
图7示出了支持示例实施例中的一个或多个的示例系统。
具体实施方式
容易理解的是,如本文附图中总体描述和示出的当前组件可以以多种不同的配置来布置和设计。因此,如附图中所示的方法、装置、非暂时性计算机可读介质和系统中的至少一个的实施例的以下详细描述不旨在限制所要求保护的本申请的范围,而仅仅是所选实施例的代表。
贯穿本说明书描述的当前特征、结构或特性可以在一个或多个实施例中以任何合适的方式组合。例如,贯穿说明书,短语“示例实施例”、“一些实施例”或其它类似语言的使用指的是结合实施例描述的特定特征、结构或特性可以被包括在至少一个实施例中的事实。因此,贯穿说明书出现的短语“示例实施例”、“在一些实施例中”、“在其它实施例中”或其它类似的语言不一定都指同一组实施例,并且所描述的特征、结构或特性可以在一个或多个实施例中以任何合适的方式组合。
此外,虽然术语“消息”可能已经在实施例的描述中使用,但是本申请可以应用于许多类型的网络数据,诸如分组、帧、数据报等。术语“消息”还包括分组、帧、数据报及其任何等同物。此外,虽然在示例性实施例中可以描绘某些类型的消息和信令,但是它们不限于某些类型的消息,并且本申请不限于某些类型的信令。
示例实施例提供了方法、系统、组件、非暂时性计算机可读介质、设备和/或网络,其提供通过区块链网络进行去中心化的处方再配药。
去中心化的数据库是一种分布式存储系统,其包括相互通信的多个节点。区块链是去中心化的数据库的示例,其包括只追加(append-only)的不可变数据结构,类似于能够维护相互不信任的各方之间的记录的分布式分类账。不信任的各方在本文中被称为对等体或对等节点。每个对等体维护数据库记录的副本,并且在分布式对等体之间没有达成共识的情况下,没有单个对等体可以修改数据库记录。例如,对等体可以执行共识协议来验证区块链存储交易,将存储交易分组到区块中,并且通过区块构建散列链(hash chain)。为了一致性,该过程通过根据需要对存储交易进行排序来形成分类账。在公共区块链或无许可(permission-less)区块链中,任何人都可以参与而无需特定的身份。公共区块链通常涉及原生加密货币,并使用基于各种协议(诸如工作证明(Proof of Work,PoW))的共识。另一方面,许可区块链数据库提供可以确保实体的组之间的互动的系统,其中这些实体共享共同的目标,但彼此之间并不完全信任,诸如交换资金、货物、信息等的企业。
区块链操作任意的可编程逻辑,该可编程逻辑被定制用于去中心化的存储方案,并且被称为“智能合约”或“链码”。在一些情况下,可能存在专门的链码用于管理函数和参数,其被称为系统链码。智能合约是可信任的分布式应用,其利用区块链数据库的防篡改属性和节点之间的底层协议(称为背书或背书策略)。一般来说,区块链交易在被提交给区块链之前通常必须被“背书”,而未经背书的交易则被忽略。典型的背书策略允许链码以背书所必需的对等节点的集合的形式来指定交易的背书者。当客户端将交易发送到背书策略中指定的对等体时,执行交易以验证交易。在验证之后,交易进入排序阶段,在该阶段中使用共识协议来产生被分组到区块中的经背书交易的排序序列。
节点是区块链系统的通信实体。“节点”可以执行在某种意义上来说不同类型的多个节点可以在同一物理服务器上运行的逻辑功能。节点被分组在信任域中,并且以各种方式与控制它们的逻辑实体相关联。节点可以包括不同的类型,诸如向背书者(例如,对等体)递交交易调用(transaction-invocation)并且向排序服务(例如,排序节点)广播交易提案(transaction-proposal)的客户端或递交客户端节点。另一类型的节点是对等节点,其可以接收客户端递交的交易、提交交易、并维护区块链交易的分类账的状态和副本。对等体也可以具有背书者的角色,尽管这不是要求的。排序服务节点或排序者是为所有节点运行通信服务的节点,并且其实施传递保证,诸如在提交交易和修改区块链的世界状态时向系统中的对等节点中的每一个进行的广播,其中区块链的世界状态是通常包括控制和设置信息的初始区块链交易的另一名称。
分类账是区块链的所有状态转换的有序的、防篡改的记录。状态转换可以从由参与方(例如,客户端节点、排序节点、背书者节点、对等节点等)递交的链码调用(chaincodeinvocation)(即,交易)产生。交易可以使资产键-值对的集合作为一个或多个操作数被提交到分类账,其中操作数诸如创建、更新、删除等。分类账包括区块链(也称为链),其用于在区块中存储不可变的、有序的记录。分类账还包括维护区块链的当前状态的状态数据库。每通道通常有一个分类账。每个对等节点为其所属的每个通道维护分类账的副本。
链是交易日志,该交易日志被构造成散列链接的(hash-linked)区块,并且每个区块包含N个交易的序列,其中N等于或大于1。区块头(block header)包括区块的交易的散列,以及前一个区块的头部的散列。这样,分类账上的所有交易都可以顺序排列并被加密链接在一起。因此,在不破坏散列链接的情况下篡改分类账数据是不可能的。最近添加的区块链区块的散列表示链上的在它之前已经到来的每个交易,这使得可以确保所有对等节点处于一致和可信任的状态。链可以存储在对等节点文件系统(即,当地、附加存储、云等)上,有效地支持区块链工作负载的只追加性质。
不可变分类账的当前状态表示链交易日志中包括的所有键的最新值。因为当前状态表示通道已知的最新键值,所以当前状态有时被称为世界状态。链码调用根据分类账的当前状态数据执行交易。为了使这些链码交互有效,键的最新值可以存储在状态数据库中。状态数据库可以只是到链的交易日志中的索引视图,因此可以在任何时候根据链重新生成状态数据库。状态数据库可以在对等节点启动时以及交易被接受之前自动恢复(或生成,如果需要的话)。
本文描述和描绘的当前解决方案的一些益处包括用于通过区块链网络进行的去中心化的处方再配药的方法和系统。示例性实施例通过扩展数据库的特征(诸如不可变性、数字签名、以及作为真实情况的单个来源)来解决时间和信任的问题。示例性实施例提供了一种用于在基于区块链的网络中进行的去中心化的处方再配药的解决方案。基于资产类型和基于智能合约管理资产的规则,区块链网络可以是同质的。
区块链与传统数据库的不同之处在于,区块链不是一个中央存储,而是去中心化的、不可变的、安全的存储,其中节点必须共享对存储中的记录的改变。在区块链中固有的并且有助于实施区块链的一些属性包括但不限于,不可变分类账、智能合约、安全性、隐私性、去中心化、共识、背书、可访问性等,这些将在本文中进一步描述。根据各个方面,由于区块链所固有的和独特的不可变责任制(accountability)、安全性、隐私性、许可的去中心化、智能合约的可用性、背书和可访问性,用于在区块链网络上进行的去中心化的处方再配药的系统得以实施。特别是,区块链分类账数据是不可变的,并且这提供了用于在区块链网络上进行的去中心化的处方再配药的有效方法。此外,在区块链中使用加密提供了安全性并建立了信任。智能合约管理资产的状态以完成生命周期。示例区块链是许可去中心化的。因此,每个最终用户都可以有自己的分类账副本以供访问。区块链网络上可以有多个组织(和对等体)。键组织(key organization)可以充当背书对等体,以验证智能合约执行结果、读取集合和写入集合。换句话说,区块链固有的特征提供了用于去中心的化处方再配药的方法的有效实施。
示例实施例的益处之一是,其通过实施用于在基于区块链的系统中进行的去中心化的处方再配药的方法来改进计算系统的功能。通过本文描述的区块链系统,计算系统可以通过提供对诸如分布式分类账、对等体、加密技术、MSP、事件处理等的能力的访问来执行用于通过区块链网络进行的去中心化处方再配药的功能。此外,区块链能够创建商业网络,并且使任何用户或组织都可以参与进来。因此,区块链不仅仅是数据库。区块链具备创建用户和场内/场外组织的商业网络的能力,从而以智能合约的形式协作和执行服务过程。
示例实施例提供了优于传统数据库的许多益处。例如,通过区块链,这些实施例提供了区块链所固有的和独特的不可变责任制、安全性、隐私性、允许的去中心化、智能合约的可用性、背书以及可访问性。
同时,传统数据库不能用于实施示例实施例,因为其不将所有各方带到商业网络上,其不创建可信任的协作,并且不提供数字资产的有效存储。传统数据库不提供防篡改存储,并且不提供对正被存储的数字资产的保护。因此,所提出的用于通过区块链网络进行的去中心化的处方再配药的方法不能在传统数据库中实施。
同时,如果要使用传统数据库来实施示例实施例,则示例实施例将遭受不必要的缺点,诸如搜索能力、缺乏安全性和交易速度慢。此外,根本不可能简单地实施用于通过区块链网络进行的去中心化的处方再配药的自动化方法。
因此,示例实施例提供了对通过区块链网络进行的处方再配药的领域中的问题的特定解决方案。
示例实施例还改变了数据如何存储在区块链的区块结构内。例如,数字资产数据可以安全地存储在数据区块的特定部分内(即,在头部内、在数据段内或在元数据内)。通过将数字资产数据存储在区块链的数据区块内,数字资产数据可以通过区块的散列链接的链被附加到不可变的区块链分类账。在一些实施例中,通过使与数字资产相关联的个人数据不与资产一起存储在区块链的传统区块结构内,数据区块可以不同于传统的数据区块。通过移除与数字资产相关联的个人数据,区块链可以基于不可变责任制和安全性提供匿名的优势。
根据示例性实施例,提供了一种方法和系统,用于当旅行者出国旅行或去不熟悉的地方旅行时,使得他们能够为他们的处方再配药。示例性实施例可以使用区块链来处理和存储与医疗保险、医疗状况、患者的过敏史等相关的信息。区块链还可以提供所需的识别机制,以核实需要处方再配药的患者的身份。通过区块链强制执行的合约,该系统可以确保只有被认为是安全和紧急的药物才能被正提出请求的患者获取。此外,示例性实施例可以使用特殊合约来确保不会意外地向患者提供由于过敏反应而对患者造成伤害的药物。一个示例性实施例可以确保当为(多个)旅行患者进行处方配药时遵循当地(即外国)法规。
示例性实施例可以有利地提供药物可获得性的即时性,并且可以最小化健康风险。在一个实施例中,系统可以利用包含诸如正在分发的(多种)药物的全球记录的相关信息的其他区块链。智能合约可用于计算给定的旅行的持续时间内要提供的适当的药物量。示例性实施例可以使得更容易地实施/更新药品供应链安全法(Drug Supply ChainSecurity Act,DSCSA)条例,并且可以提供药物的优化分发。一个示例性实施例可以并入用于跟踪药物的物联网(IoT)的元素。
示例性实施例的方法和系统通过区块链不仅可以将患者的处方/病史链接起来,而且还可以绑定药品供应链保证(药品质量的来源/和证明点)。因此,系统可以提供在由用户同意管理的不可变分类账上的处方授权与根据当地法律的当地药品供应的来源的药品供应链保证之间的链接,以符合受控物质使用等。系统可以基于在药房节点上执行智能合约来提供再配药/不再配药确定。可以采取特定的行动/批准,包括有信誉的“救灾组织”。基于示例性系统的“无国界药房”可以向受自然灾害或流行病等影响的特定地方提供某些药品的紧急触发批准。将可以为特定药物及其传递筹集资金,并跟踪分发到特定药房或“虚拟启用的药房”。在发生灾难的情况下,移动药房/分发中心可能位于战略位置。该系统可以实现定向筹集资金,即跟踪“救灾组织”在给定药物上花费的资金。
根据示例性实施例,存在可能被涉及的多个区块链实体:药房(对等节点)、开处方的医生、为处方付费的保险公司以及需要为他们的处方再配药的患者。患者对等体可以在移动设备(例如,智能电话)上实施。这些实体可能不完全信任彼此,并且可能是高度分布式的。此外,存在处方等效表,药房节点可以使用处方等效表来提供具有与原始处方相同或等效成分的通用药物。保险覆盖表可用于确定每份保险策略覆盖的药物。为了实现“无国界药房”,有必要核实患者的身份,并促进可能彼此不完全信任的、在地理上呈分布式的实体之间相关医疗信息(过敏史或早先存在的状况)的交换。此外,与医疗保健相关的数据需要严格的隐私保护,因此有必要在需要知道的基础上加强信息传播的保密性,并确保对患者的适当授权。在该服务中,某些药物可能会因为非预期人群的潜在滥用(例如,娱乐性药品)而受到限制。每个处方都具有有效期,过了有效期,任何药店都不能为该处方配药。最后,在一个实施例中,为了核实患者确实在旅行,可以从区块链检索外部信息(例如,登机牌、购票证明、机场登记证明、信用卡账单等)。其他选项可以包括一组凭证、证书、收据,并且最后还有某种“现场证明”,诸如发送到患者手机的按需代码(on-demand code)(其难以伪造)。
根据一个实施例,区块链被用作分类账来发布关于不同患者的处方的信息。出于隐私原因,关于医疗状况和处方的信息可以对所有药房隐藏,直到患者请求处方再配药。为此,每个患者都被分配了加密的秘密(即密钥),当他或她向药房发送请求以得到处方再配药时,该加密的秘密将揭露患者的信息。根据示例性实施例,方法可以包括:
-医生给患者开处方。使用患者拥有的密钥对处方进行加密保护。该处方在区块链中发布。区块链记录可以包括:
a.从医学记录中检索到的患者过敏史。对于每一种过敏史,合约中的规则被规定为表明不能针对该患者为某一成分/药物再配药;
b.多少再配药和能对它们进行再配药的频率;
c.截止日期,表明认购有效到何时;
d.识别方法,用于核实患者是否正在请求再配药。
-患者可以在区块链中添加领取药物的委托(delegation),具有在地理区域内的有效委托截止日期;
-可以定义处方-验证智能合约,以核实某人X现在可以在位置Z获得处方Y。
处方验证智能合约可以包括:
a.识别方法,用于核实正请求再配药的患者或核实授权的第三方(证明患者在那里的N个因素中的k个)。在一个实施例中,这可以不是合约的一部分,并且在离链(off-chain)认证过程中由药剂师验证;
b.从医学记录中检索到的患者过敏史。对于每一种过敏史,合约中的规则被规定为表明不能针对该患者为某一成分/药物再配药;
c.对于这张处方可以有多少再配药;
d.对该处方进行再配药的频率;
e.截止日期,指示订购有效到何时;
f.根据位置调用法规智能合约的合约;
g.灵活的规则:
i.如果患者忘记/丢失药物,可以使用不同的信息;
ii.无法及时再配药。
-当地-法规-验证智能合约,其中每个参与国/地区/州可以添加监管所在地的合约。每个国家/州/位置可能都有无法通过无国界药房系统获取的药物清单。例如,即使患者具有有效的外国处方,也可能无法获取大麻或安定药TM。这些限制也可以放置在区块链上。
-考虑到患者的过敏而协商化学等效物和保险覆盖的智能合约;
-当患者旅行并且需要为其药物再配药时:
a.他/她可以去“无国界药店”;
b.患者或授权人员提供合约所需的标识;
c.患者可以提供阅读处方和医疗记录的受保护内容所需的密钥。
-处方被检索:
a.对基于处方的智能合约进行验证;
b.作为该验证的一部分,执行基于当地法规的智能合约;
c.药剂师验证所请求的药物的可获得性;
d.如果药物不可获得(或太贵),可在处方等效表中核实是否可使用通用药物。
-只有满足所有条件时交易才会被记录到区块链上。
可以发生以下操作:
a.为处方配药的商店会被记录到区块链上;和
b.处方已经被再配药的次数被更新。
-可以通过另一笔交易通知保险公司节点,以扣除全部费用并计算患者节点的自付费用。
图1示出了根据示例实施例的用于通过区块链网络进行的去中心化的处方再配药的逻辑网络图。
参考图1,示例网络100包括药房节点102,药房节点102可以连接到其他区块链节点(患者节点105、(多个)医生节点107和(多个)保险公司节点109)。药房节点102可以连接到区块链106,区块链106具有用于存储患者的数据和处方再配药交易110的分类帐108。虽然该示例仅详细描述了一个药房节点102,但是多个这种节点可以连接到区块链106。应当理解,药房节点102可以包括附加组件,并且在不脱离本文公开的药房节点102的范围的情况下,可以移除和/或修改本文描述的组件中的一些。药房节点102可以是计算设备或服务器计算机等,并且可以包括处理器104,处理器104可以是基于半导体的微处理器、中央处理单元(CPU)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)和/或另一硬件设备。尽管描绘了单个处理器104,但是应当理解,在不脱离药房节点102系统的范围的情况下,药房节点102可以包括多个处理器、多个核等。
药房节点102还可以包括非暂时性计算机可读介质112,其上可以存储可由处理器104执行的机器可读指令。机器可读指令的示例被示为114-120,并在下面进一步讨论。非暂时性计算机可读介质112的示例可以包括包含或存储可执行指令的电子、磁、光或其它物理存储设备。例如,非暂时性计算机可读介质112可以是随机存取存储器(Random Accessmemory,RAM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、硬盘、光盘或其它类型的存储设备。
处理器104可以获取、解码和执行机器可读指令114,以连接到被配置为将患者的数据存储在区块链分类账上的区块链网络。如上所述,区块链分类账108可以存储处方再配药交易110。区块链106网络可以被配置为使用管理多个参与节点的交易的一个或多个智能合约。
处理器104可以获取、解码和执行机器可读指令116,以从患者节点105接收对处方再配药的请求,该请求包含患者的秘密密钥。处理器104可以获取、解码和执行机器可读指令118,以从请求中提取秘密密钥以核实患者的身份。处理器104可以获取、解码和执行机器可读指令120以执行智能合约,以:(a)通过应用秘密密钥对位于分类帐上的处方数据进行解密;(b)从分类帐108中检索患者的过敏记录,以对照处方数据检查该过敏记录;(c)根据处方数据确定剩余的再配药的数量;(d)基于到期日期检查处方数据的有效性;并且基于(b)-(d)的成功执行向区块链106提交处方再配药交易。
图2A示出了根据示例实施例的区块链架构配置200。参考图2A,区块链架构200可以包括某些区块链元素,例如,一组区块链节点202。区块链节点202可以包括一个或多个节点204-210(这四个节点仅通过示例来描绘)。这些节点参与许多活动,诸如区块链交易添加和验证过程(共识)。区块链节点204-210中的一个或多个可以基于背书策略对交易进行背书,并且可以为架构200中的所有区块链节点提供排序服务。区块链节点可以初始化区块链认证,并寻求对存储在区块链层216中的区块链不可变分类账进行写入,该区块链不可变分类账的副本也可以存储在基础物理基础设施214上。区块链配置可以包括一个或多个应用224,一个或多个应用224链接到应用编程接口(application programming interface,API)222以访问和执行存储的程序/应用代码220(例如,链码、智能合约等),程序/应用代码220可以根据参与者所寻求的定制配置来创建,并且可以维护它们自己的状态、控制它们自己的资产以及接收外部信息。这可以作为交易来部署,并且经由附加到分布式分类账来安装在所有区块链节点204-210上。
区块链基础或平台212可以包括区块链数据、服务(例如,加密的信任服务、虚拟执行环境等)以及基础物理计算机基础设施的各种层,这些层可用于接收和存储新交易,并为寻求访问数据条目的审计员提供访问。区块链层216可以暴露接口,该接口提供对处理程序代码和参与物理基础设施214所必需的虚拟执行环境的访问。加密的信任服务218可用于核实交易(诸如资产交换交易),并且保持信息私有。
图2A的区块链架构配置可以经由区块链平台212暴露的一个或多个接口和提供的服务来处理和执行程序/应用代码220。代码220可以控制区块链资产。例如,代码220可以存储和传送数据,并且可以由节点204-210以智能合约的形式执行,并且该链码与受制于其执行的条件或其它代码元素相关联。作为非限制性示例,可以创建智能合约来执行提醒、更新和/或受制于改变、更新等的其它通知。智能合约本身可用于识别与授权和访问要求以及分类账的使用相关联的规则。例如,处方请求信息226可以由被包括在区块链层216中的一个或多个处理实体(例如,虚拟机)处理。结果228可以包括反映在该处方下可用的剩余的再配药数量的数据区块。物理基础设施214可用于获取本文描述的任何数据或信息。
在链码内,可以经由高级应用和编程语言创建智能合约,并且然后将其写入区块链的区块中。智能合约可以包括利用区块链(例如,区块链对等体的分布式网络)注册、存储和/或复制的可执行代码。交易是智能合约代码的执行,智能合约代码可以响应于与满足智能合约相关联的条件而执行。智能合约的执行可以触发对数字区块链分类账的状态的(多个)可信任的修改。由智能合约执行引起的对区块链分类账的(多个)修改可以通过一个或多个共识协议在区块链对等体的分布式网络中自动复制。
智能合约可以将数据以键-值对的格式写入区块链。此外,智能合约代码可以读取存储在区块链中的值,并在应用操作中使用它们。智能合约代码可以将各种逻辑运算的输出写入区块链。该代码可用于在虚拟机或其它计算平台中创建临时数据结构。写入区块链的数据可以是公共的和/或可以被加密并且被维护为私有。由智能合约使用/生成的临时数据由所供应的执行环境保存在存储器中,并且一旦识别出区块链所需的数据,就将其删除。
链码可以包括智能合约的代码解释,并具有附加特征。如本文所述,链码可以是部署在计算网络上的程序代码,在该计算网络上,链码由多个链验证器在共识过程期间一起执行和验证。链码接收散列,并从区块链获取与通过使用先前存储的特征提取器创建的数据模板相关联的散列。如果散列标识符的散列和从存储的标识符模板数据创建的散列匹配,则链码发送对所请求的服务的授权密钥。链码可以向区块链写入与加密细节相关联的数据。在图2A中,处方再配药交易可以包括智能合约的执行。一个功能可以是在用于记录处方再配药数据的分类账上提交与执行智能合约相关的交易,该处方再配药数据可以提供给节点204-210中的一个或多个。
图2B示出了根据示例实施例的区块链的节点之间的交易流250的示例。参考图2B,交易流可以包括由应用客户端节点260向背书对等节点281发送的交易提案291。背书对等体281可以核实客户端签名并执行链码函数来初始化交易。输出可能包括链码结果、在链码中读取的键/值版本的集合(读取集合),以及在链码中写入的键/值的集合(写入集合)。如果被批准,提案响应292连同背书签名一起被发送回客户端260。客户端260将背书组装到交易有效载荷293中,并将其广播到排序服务节点284。排序服务节点284然后将排序的交易作为区块传递给通道上的所有对等体281-283。在提交到区块链之前,每个对等体281-283可以验证交易。例如,对等体可以检查背书策略,以确保指定对等体的正确分配已经对结果签名并且针对交易有效载荷293认证了签名。
再次参考图2B,客户端节点260通过构造请求并将请求发送到作为背书者的对等节点281来初始化交易291。客户端260可以包括利用支持的软件开发工具包(softwaredevelopment kit,SDK)(诸如NODE、JAVA、PYTHON等)的应用,该工具包利用可用的API来生成交易提案。该提案是用于调用链码函数的请求,以便可以读取数据和/或将其写入分类账(即,为资产编写新的键值对)。SDK可以用作shim,以将交易提案打包成适当架构的格式(例如,对于远程过程调用(remote procedure call,RPC)的协议缓冲区),并且利用客户端的加密凭证来产生交易提案的唯一签名。
作为响应,背书对等节点281可以核实(a)交易提案是良好形成的,(b)交易在过去还没有被递交(重放攻击保护),(c)签名是有效的,以及(d)递交者(在示例中,是客户端260)被适当授权在该通道上执行提出的操作。背书对等节点281可以将交易提案输入作为调用的链码函数的参数。然后,针对当前状态数据库执行链码,以产生包括响应值、读取集合和写入集合的交易结果。但是,此时不会对分类账进行更新。在292中,值的集合连同背书对等节点281的签名作为提案响应292被传递回客户端260的SDK,客户端260解析应用要消耗的有效载荷。
作为响应,客户端260的应用检查/核实背书对等体的签名,并比较提案响应以确定提案响应是否相同。如果链码仅查询分类账,则应用将检查查询响应,并且通常不会将交易递交给排序节点服务284。如果客户端应用打算将交易递交给排序节点服务284以更新分类账,则该应用在递交之前确定指定的背书策略是否已被满足(即,交易所需的所有对等节点是否都对该交易进行了背书)。这里,客户端可以只包括交易的多方中的一方。在这种情况下,每个客户端可能都有自己的背书节点,并且每个背书节点将需要对交易进行背书。该架构是这样的,即使应用选择不检查响应或以其他方式转发未经背书的交易,背书策略仍将由对等体强制执行并且在提交验证阶段维持。
在成功检查之后,在步骤293中,客户端260将背书组装(assemble)到交易中,并在交易消息内向排序节点284广播交易提案和响应。交易可以包含读取/写入集合、背书对等体的签名和通道ID。排序节点284不需要检查交易的全部内容来执行其操作。相反,排序节点284可以简单地从网络中的所有通道接收交易,按通道按时间顺序对它们排序,并为每个通道创建交易的区块。
交易的区块在通道上从排序节点284传递到所有对等节点281-283。区块内的交易294被验证,以确保满足任何背书策略,并确保自交易执行生成读取集合以来,对于读取集合变量的分类账状态没有改变。区块中的交易被标记为有效或无效。此外,在步骤295中,每个对等节点281-283将区块附加到通道的链,并且对于每个有效交易,写入集合被提交到当前状态数据库。发出一个事件,以向客户端应用通知交易(调用)已经不可变地附加到链,并且通知该交易是经验证的还是未经验证的。
图3示出了许可区块链网络300的示例,其特征在于分布式的、去中心化的对等的架构,以及管理用户角色和许可的证书授权机构318。在该示例中,区块链用户302可以向许可区块链网络310递交交易。在该示例中,交易可以是部署、调用或查询,并且可以通过利用SDK的客户端侧应用、直接通过REST API等来发放。可信任商业网络可以提供对监管者系统314的访问,诸如审计员(例如美国股票市场中的证券交易委员会)。同时,节点308的区块链网络运营商系统管理成员许可,诸如将监管者系统310注册为“审计员”并且将区块链用户302注册为“客户端”。审计员可以被限制为只能查询分类账,而客户端可以被授权部署、调用和查询某些类型的链码。
区块链开发者系统316编写链码和客户端侧应用。区块链开发者系统316可以通过REST接口将链码直接部署到网络。为了在链码中包括来自传统数据源330的凭证,开发者系统316可以使用带外连接来访问数据。在该示例中,区块链用户302通过对等节点312连接到网络。在进行任何交易之前,对等节点312从证书授权机构318获取用户的注册和交易证书。在一些情况下,区块链用户必须拥有这些数字证书,以便在许可区块链网络310上进行交易。同时,尝试驱动链码的用户可能需要在传统数据源330上核实他们的凭证。为了确认用户的授权,链码可以通过传统处理平台320对该数据使用带外连接。
图4A示出了根据示例实施例的通过区块链网络进行的去中心化的处方再配药的示例方法的流程图400。参考图4A,方法400可以包括下面描述的步骤中的一个或多个。
图4A示出了由药房节点102(参见图1)执行的示例方法的流程图。应当理解,图4A中描述的方法400可以包括附加的操作,并且在不脱离方法400的范围的情况下,可以移除和/或修改其中描述的操作中的一些。出于说明的目的,也参考图1中描绘的特征进行对方法400的描述。特别地,药房节点102的处理器104可以执行方法400中包括的操作中的一些或全部。
参考图4A,在框412,处理器104可以连接到被配置为将患者的数据存储在区块链分类账中的区块链网络。在框414,处理器104可以从患者节点接收对处方再配药的请求。该请求可以包含患者的秘密密钥。在框416,处理器104可以从请求中提取秘密密钥来核实患者的身份。在框418,处理器104可以执行智能合约,以:(a)通过应用秘密密钥对分类帐上的处方数据进行解密;(b)从分类账中检索患者的过敏记录,以对照处方数据检查该过敏记录;(c)根据处方数据确定剩余的再配药的数量;(d)基于到期日期检查处方数据的有效性;并且基于(b)-(d)的成功执行向区块链106提交处方再配药交易。
图4B示出了根据示例实施例的在区块链网络中进行的去中心化的处方再配药的示例方法的流程图450。参考图4B,方法450还可以包括一个或多个以下操作。在框452,处理器104可以执行智能合约以检查是否可通过柜台获得处方再配药,并且通知患者节点。在框454,处理器104可以执行智能合约以基于处方再配药交易来更新区块链上的剩余的再配药的数量。在框456,处理器104可以执行智能合约以基于从区块链分类账中检索的旅行的持续时间来计算待分配的药物量。在框458,处理器104可以执行智能合约以在向区块链提交处方再配药交易之前检查当地法规。在框460,处理器104可以执行智能合约以基于从区块链分类账中检索的患者的保险数据来计算针对该处方再配药的自付费用。在框462,处理器104可以执行智能合约以确定针对该处方再配药是否存在通用替代物。
请注意,虽然处方可以是再配药并且原籍国司法管辖可能已经允许组合,但所在国可能反映对当地司法管辖的依从性并建议替代的通用药物。这一决定和处方履行情况可记录在区块链上的患者健康记录中,并可随后用于医疗保健服务提供商进行分析,并可在患者返回其原籍国时触发纠正措施。
图5A示出了根据示例实施例的示例系统500,其包括被配置为执行各种操作的物理基础设施510。参考图5A,物理基础设施510包括模块512和模块514。模块514包括区块链520和智能合约530(其可以驻留在区块链520上),区块链520和智能合约530可以执行示例实施例中的任何一个中包括的操作步骤508(在模块512中)中的任何一个。步骤/操作508可以包括所描述或描绘的实施例中的一个或多个,并且可以表示从一个或多个智能合约530和/或区块链520读取的输出信息或向其写入的写入信息。物理基础设施510、模块512和模块514可以包括一个或多个计算机、服务器、处理器、存储器和/或无线通信设备。此外,模块512和模块514可以是相同的模块。
图5B示出了根据示例实施例的被配置为执行各种操作的示例系统540。参考图5B,系统540包括模块512和模块514。模块514包括区块链520和智能合约530(其可以驻留在区块链520上),区块链520和智能合约530可以执行示例实施例中的一个中包括的操作步骤508(在模块512中)中的任何一个。步骤/操作508可以包括所描述或描绘的实施例中的一个或多个,并且可以表示从一个或多个智能合约530和/或区块链520读取的输出信息或向其写入的写入信息。物理基础设施510、模块512和模块514可以包括一个或多个计算机、服务器、处理器、存储器和/或无线通信设备。此外,模块512和模块514可以是相同的模块。
图5C示出了根据示例实施例的合约方之间的示例智能合约配置和被配置为在区块链上强制执行智能合约条款的中介服务器。参考图5C,配置550可以表示通信会话、资产转移会话或由明确标识一个或多个用户设备552和/或556的智能合约530驱动的过程或进程。智能合约执行的执行、操作和结果可以由服务器554管理。智能合约530的内容可能需要智能合约交易的各方的一个或多个实体552和556的数字签名。智能合约执行的结果可以作为区块链交易写入区块链520。智能合约530驻留在区块链520上,该区块链520可以驻留在一个或多个计算机、服务器、处理器、存储器和/或无线通信设备上。
图5D示出了根据示例实施例的用于访问区块链的逻辑和数据的公共接口560。参考图5D的示例,应用编程接口(API)网关562提供用于访问区块链逻辑(例如,智能合约530或其它链码)和数据(例如,分布式分类账等)的公共接口。在这个示例中,API网关562是用于通过将一个或多个实体552和556连接到区块链对等体(即,服务器554)来在区块链上执行交易(调用、查询等)的公共接口。这里,服务器554是区块链网络对等组件,其持有世界状态和分布式分类账的副本,从而允许客户端552和556查询关于世界状态的数据以及将交易递交到区块链网络中,其中,根据智能合约530和背书策略,背书对等体将运行智能合约530。
上述实施例可以用硬件、由处理器执行的计算机程序、固件或上述的组合来实施。计算机程序可以体现在计算机可读介质(诸如存储介质)上。例如,计算机程序可以驻留在随机存取存储器(“RAM”)、闪存、只读存储器(“ROM”)、可擦除可编程只读存储器(“EPROM”)、电可擦除可编程只读存储器(“EEPROM”)、寄存器、硬盘、可移动磁盘、光盘只读存储器(“CD-ROM”)或本领域已知的任何其它形式的存储介质中。
示例性存储介质可以耦合到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。或者,存储介质可以集成到处理器中。处理器和存储介质可以驻留在专用集成电路(“ASIC”)中。或者,处理器和存储介质可以作为分立组件驻留。例如,图6示出了示例计算机系统架构600,其可以表示任何上述组件或集成在任何上述组件中,等等。
图6A示出了根据示例实施例的将新的区块添加到分布式分类账630的过程600,并且图6B示出了根据示例实施例的区块链的区块结构650的内容。参考图6A,客户端(未示出)可以向区块链节点621、622和/或623递交交易。客户端可以是从任何来源接收的指令,以在区块链630上执行活动。作为示例,客户端可以是代表请求者(诸如设备、个人或实体)行动的应用,以提出针对区块链的交易。多个区块链对等体(例如,区块链节点621、622和623)可以维护区块链网络的状态和分布式分类账630的副本。不同类型的区块链节点/对等体可以存在于区块链网络中,该不同类型的区块链节点/对等体包括:背书对等体,其对客户端提出的交易进行模拟和背书;和提交对等体,其核实背书、验证交易,并将交易提交到分布式分类账630。在该示例中,区块链节点621、622和623可以执行背书者节点、提交者节点或这两者的角色。
分布式分类账630包括:区块链632,该区块链632在区块中存储不可变的、有序的记录;以及状态数据库634(当前世界状态),该状态数据库634维护区块链632的当前状态。每个通道可以存在一个分布式分类账630,并且每个对等体为它们所属的每个通道维护其自己的分布式分类账630的副本。区块链632是交易日志,被构造成散列链接的区块,其中每个区块包含N个交易的序列。区块可以包括各种组件,诸如图6B所示。区块的链接(由图6A中的箭头所示)可以通过在当前区块的区块头内添加前一个区块的头部的散列来生成。以这种方式,区块链632上的所有交易被顺序排列并被加密地链接在一起,从而防止在不破坏散列链接的情况下篡改区块链数据。此外,由于链接,区块链632中的最新区块表示该最新区块之前出现的每个交易。区块链632可以存储在对等文件系统(本地存储或附接的存储)上,该对等文件系统支持只追加的区块链工作负载。
区块链632的当前状态和分布式分类账632可以存储在状态数据库634中。这里,当前状态数据表示区块链632的链交易日志中包括的所有键的最新值。链码调用针对状态数据库634中的当前状态执行交易。为了使这些链码交互非常有效,所有键的最新值被存储在状态数据库634中。状态数据库634可以包括到区块链632的交易日志中的索引视图,因此可以在任何时候根据链重新生成状态数据库634。在交易被接受之前,状态数据库634可以在对等体启动时自动恢复(或者被生成,如果需要的话)。
背书节点接收来自客户端的交易,并基于模拟结果对交易进行背书。背书节点持有对交易提案进行模拟的智能合约。当背书节点对交易进行背书时,背书节点创建交易背书,该交易背书是从背书节点到客户端应用的签名响应,该签名响应指示对所模拟的交易的背书。对交易进行背书的方法取决于可以在链码中指定的背书策略。背书策略的示例是“大多数背书对等体必须对交易进行背书。”不同的通道可能有不同的背书策略。客户端应用将经背书的交易转发给排序服务610。
排序服务610接受经背书的交易,将它们排序到区块中,并将区块传递给提交对等体。例如,当达到交易阈值时、定时器超时或另一条件时,排序服务610可以初始化新区块。在图6A的示例中,区块链节点622是提交对等体,其已经接收到新的数据区块650以存储在区块链630上。
排序服务610可以由排序者的聚类组成。排序服务610不处理交易、智能合约或维护共享分类账。相反,排序服务610可以接受经背书的交易,并且指定向分布式分类账630提交这些交易的顺序。区块链网络的架构可以被设计成使得“排序”的具体实施(例如,Solo、Kafka卡、BFT等)成为可插拔组件。
交易以一致的顺序被写入到分布式分类账630。建立交易的顺序以确保对状态数据库634的更新在被提交给网络时是有效的。与加密货币区块链系统(例如比特币等)不同,在通过解决密码难题(cryptographic puzzle)或挖掘而发生排序的情况下,在该示例中,分布式分类账630的各方可以选择最适合该网络的排序机制。
当排序服务610初始化新区块650时,新区块650可以被广播给提交对等体(例如,区块链节点621、622和623)。作为响应,每个提交对等体通过检查以确保读取集合和写入集合仍然匹配状态数据库634中的当前世界状态,来验证新区块650内的交易。具体地,提交对等体可以确定当背书者对交易进行模拟时所存在的读取数据是否与状态数据库634中的当前世界状态相同。当提交对等体验证交易时,交易被写入分布式分类账630上的区块链632,并且状态数据库634用来自读取-写入集合的写入数据更新。如果交易失败,也就是说,如果提交对等体发现读取-写入集合与状态数据库634中的当前世界状态不匹配,则被排序到区块中的交易仍将被包括在该区块中,但是该交易将被标记为无效,并且状态数据库634将不被更新。
参考图6B,存储在分布式分类账630的区块链632上的区块650(也称为数据区块)可以包括多个数据段,诸如区块头660、区块数据670和区块元数据680。应当理解,各种所描绘的区块及其内容,诸如区块650及其内容。图6B所示仅仅是为了示例的目的,并不意味着限制示例实施例的范围。在一些情况下,区块头660和区块元数据680两者都可以小于存储交易数据的区块数据670,然而,这不是必需的。区块650可以在区块数据670内存储N个交易(例如,100、500、1000、2000、3000个等)的交易信息。区块650还可以在区块头660内包括到前一区块(例如,在图6A的区块链632上)的链接。具体而言,区块头660可以包括前一区块的头部的散列。区块头660还可以包括唯一的区块号、当前区块650的区块数据670的散列等等。区块650的区块号可以是唯一的,并且从零开始以递增/有序的顺序来分配。区块链中的第一区块可以被称为创世区块(genesis block),其包括关于区块链、其成员、存储在其中的数据等的信息。
区块数据670可以存储记录在区块650中的每个交易的交易信息。例如,交易数据可以包括以下各项中的一个或多个:交易类型、版本、时间戳、分布式分类账630的通道ID、交易ID、时期、有效载荷可见性、链码路径(部署交易(tx))、链码名称、链码版本、输入(链码和函数)、诸如公共密钥和证书的客户端(创建者)身份、客户端的签名、背书者的身份、背书者签名、提案散列、链码事件、响应状态、名称空间、读取集合(交易读取的键和版本的列表)、写入集合(键和值的列表等)、开始键、结束键、键的列表、默克尔树查询摘要等等。可以为N个交易中的每一个存储交易数据。
在一些实施例中,区块数据670还可以存储数据672,数据672将附加信息添加到区块链632中的区块的散列链接的链。因此,数据672可以存储在分布式分类账630上的区块的不可变日志中。存储这种数据672的一些益处反映在本文公开和描绘的各种实施例中。
区块元数据680可以存储元数据的多个字段(例如,作为字节数组等)。元数据字段可以包括关于区块创建时的签名、对最后一个配置区块的引用、标识区块内的有效和无效交易的交易过滤器、对区块进行排序的排序服务的最后保持的偏移量等。签名、最后一个配置块和排序者元数据可以由排序服务610添加。同时,区块的提交者(诸如区块链节点622)可以基于背书策略、读取/写入集合的验证等来添加有效性/无效性信息。交易过滤器可以包括大小等于区块数据670中的交易的数量的字节数组和标识交易是否有效/无效的验证码。
图7并不旨在对本文描述的本申请的实施例的使用范围或功能提出任何限制。无论如何,计算节点700能够实施和/或执行上文阐述的任何功能。
在计算节点700中,存在计算机系统/服务器702,计算机系统/服务器702可与许多其它通用或专用计算系统环境或配置一起操作。适用于计算机系统/服务器702的众所周知的计算系统、环境和/或配置的示例包括但不限于个人计算机系统、服务器计算机系统、瘦客户机、胖客户机、手持或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机系统、大型计算机系统以及包括以上系统或设备中的任何一个的分布式云计算环境等。
计算机系统/服务器702可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般上下文中描述。通常,程序模块可以包括执行特定任务或实施特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算机系统/服务器702可以在分布式云计算环境中实践,其中任务由通过通信网络链接的远程处理设备来执行。在分布式云计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机系统存储介质中。
如图7所示,云计算节点700中的计算机系统/服务器702以通用计算设备的形式表现。计算机系统/服务器702的组件可以包括但不限于:一个或者多个处理器或者处理单元704,系统存储器706,连接不同系统组件(包括系统存储器706和处理单元704)的总线。
总线表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些架构包括但不限于工业标准架构(ISA)总线,微通道架构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器702典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器702访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。在一个实施例中,系统存储器706实现其他附图中的流程图。系统存储器706可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)710和/或高速缓存存储器712。计算机系统/服务器702可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统714可以用于读写不可移动的、非易失性磁介质(图中未显示,通常称为“硬盘驱动器”)。尽管图中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线相连。存储器806可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块718的程序/实用工具716,可以存储在例如存储器706中,这样的程序模块718包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块718通常执行本申请所描述的各实施例中的功能和/或方法。
如本领域技术人员将理解的,本申请的各方面可以体现为系统、方法或计算机程序产品。因此,本申请的各方面可以采取完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)的形式或结合软件和硬件方面的实施例,软件和硬件方面在本文中可以统称为“电路”、“模块”或“系统”。此外,本申请的各方面可以采取体现在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质具有体现在其上的计算机可读程序代码。
计算机系统/服务器702也可以与一个或多个外部设备720(例如键盘、指向设备、显示器722等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器702交互的设备通信,和/或与使得该计算机系统/服务器702能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口724进行。并且,计算机系统/服务器702还可以通过网络适配器726与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器726通过总线与计算机系统/服务器702的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器702使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
尽管在附图中示出了系统、方法和非暂时性计算机可读介质中的至少一个的示例性实施例,并且在前面的详细描述中进行了描述,但是应当理解,本申请不限于所公开的实施例,而是能够进行由所附权利要求所阐述和定义的许多重新布置、修改和替换。例如,各种附图的系统的能力可以由本文描述的模块或组件中的一个或多个来执行,或者在分布式架构中执行,并且可以包括发送器、接收器或这两者的对。例如,由各个模块执行的功能中全部或部分可以由这些模块中的一个或多个来执行。此外,本文描述的功能可以在模块或组件的内部或外部、在不同时间以及与不同事件相关地执行。此外,在各种模块之间发送的信息可以经由数据网络、互联网、语音网络、互联网协议网络、无线设备、有线设备中的至少一个和/或经由多个协议在模块之间发送。此外,由模块中的任何一个发送或接收的消息可以直接和/或经由其它模块中的一个或多个来发送或接收。
本领域技术人员将会理解,“系统”可以体现为个人计算机、服务器、控制台、个人数字助理(personal digital assistant,PDA)、蜂窝电话、平板计算设备、智能电话或任何其它合适的计算设备,或者设备的组合。将上述功能呈现为由“系统”执行并不旨在以任何方式限制本申请的范围,而是旨在提供许多实施例的一个示例。实际上,本文公开的方法、系统和装置可以以与计算技术一致的本地化和分布式形式来实施。
应该注意的是,在本说明书中描述的系统特征中的一些已经被呈现为模块,以便更特别地强调它们的实施独立性。例如,模块可以被实施为硬件电路,该硬件电路包括定制的超大规模集成(very large-scale integration,VLSI)电路或门阵列,以及诸如逻辑芯片、晶体管或其它分立组件的现成半导体。模块也可以在可编程硬件设备(诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备、图形处理单元等)中实施。
模块也可以至少部分地在软件中实施,以用于由各种类型的处理器执行。可执行代码的被标识单元可以例如包括计算机指令的一个或多个物理或逻辑块,计算机指令可以例如被组织为对象、过程或功能。然而,标识的模块的可执行文件不需要物理上位于一起,而是可以包括存储在不同位置的不同指令,当这些指令在逻辑上结合在一起时,构成该模块并实现该模块的所述目的。此外,模块可以存储在计算机可读介质上,该介质可以是例如硬盘驱动器、闪存设备、随机存取存储器(RAM)、磁带或用于存储数据的任何其它这种介质。
实际上,可执行代码的模块可以是单个指令或多个指令,甚至可以分布在几个不同的代码段上、分布不同的程序中以及分布在几个存储设备中。类似地,操作数据在本文中可以在模块中被标识和示出,并且可以以任何合适的形式来体现,并且被组织在任何合适类型的数据结构中。操作数据可以作为单个数据集合来收集,或者可以分布在不同的位置(包括分布在不同的存储设备上),并且可以至少部分地仅仅作为电子信号存在于系统或网络上。
很容易理解,如本文的附图中一般描述和示出的,本申请的组件可以以各种不同的配置来布置和设计。因此,实施例的具体实施方式并不旨在限制所要求保护的本申请的范围,而是仅仅表示所选择的本申请实施例。
本领域普通技术人员将容易理解,可以用不同顺序的步骤和/或不同于所公开的配置的硬件组件来实践上述内容。因此,尽管已经基于这些优选实施例描述了本申请,但是对于本领域技术人员来说,某些修改、变化和替代结构将是显而易见的。
虽然已经描述了本申请的优选实施例,但是应当理解,所描述的实施例仅是说明性的,并且当考虑到全部范围的等同物和对其的修改(例如,协议、硬件设备、软件平台等)时,本申请的范围仅由所附权利要求来限定。
Claims (23)
1.一种方法,包括:
由药房节点连接到区块链网络,所述区块链网络被配置为将患者的数据存储在区块链分类账上;
由药房节点从患者节点接收对处方再配药的请求,所述请求包含患者的秘密密钥;
由药房节点从所述请求中提取所述秘密密钥以核实患者的身份;以及
由药房节点执行智能合约,以:
(a)通过应用所述秘密密钥对位于所述分类帐上的处方数据进行解密;
(b)从所述分类账中检索患者的过敏记录,以对照所述处方数据检查所述过敏记录;
(c)根据所述处方数据确定剩余的再配药的数量;
(d)基于到期日期检查所述处方数据的有效性;以及
基于(b)-(d)的成功执行,向区块链提交处方再配药交易。
2.根据权利要求1所述的方法,还包括执行所述智能合约,以检查是否可通过柜台获得所述处方再配药,并且通知所述患者节点。
3.根据权利要求1所述的方法,还包括执行所述智能合约,以基于所述处方再配药交易来更新所述区块链上的剩余的再配药的数量。
4.根据权利要求1所述的方法,还包括执行所述智能合约,以基于从所述区块链分类账中检索的旅行的持续时间来计算待分配的药物量。
5.根据权利要求1所述的方法,还包括执行所述智能合约,以在向所述区块链提交所述处方再配药交易之前检查当地法规。
6.根据权利要求1所述的方法,还包括执行所述智能合约,以基于从所述区块链分类账中检索的患者的保险数据来计算针对所述处方再配药的自付费用。
7.根据权利要求1所述的方法,包括执行所述智能合约,以确定针对所述处方再配药是否存在通用替代物。
8.一种非暂时性计算机可读介质,其包括指令,当所述指令由处理器读取时,使得所述处理器执行:
连接到区块链网络,所述区块链网络被配置为将患者的数据存储在区块链分类账上;
从患者节点接收对处方再配药的请求,所述请求包含患者的秘密密钥;
从所述请求中提取所述秘密密钥以核实患者的身份;以及
执行智能合约,以:
(a)通过应用所述秘密密钥对位于分类帐上的处方数据进行解密;
(b)从所述分类账中检索患者的过敏记录,以对照所述处方数据检查所述过敏记录;
(c)根据所述处方数据确定剩余的再配药的数量;
(d)基于到期日期检查所述处方数据的有效性;以及
基于(b)-(d)的成功执行,向区块链提交处方再配药交易。
9.根据权利要求8所述的非暂时性计算机可读介质,还包括指令,当所述指令由所述处理器读取时,使得所述处理器执行所述智能合约,以检查是否可通过柜台获得所述处方再配药,并且通知所述患者节点。
10.根据权利要求8所述的非暂时性计算机可读介质,还包括指令,当所述指令由所述处理器读取时,使得所述处理器执行所述智能合约,以基于所述处方再配药交易来更新区块链上的剩余的再配药的数量。
11.根据权利要求8所述的非暂时性计算机可读介质,还包括指令,当所述指令由所述处理器读取时,使得所述处理器执行所述智能合约,以基于从所述区块链分类账中检索的旅行的持续时间来计算待分配的药物量。
12.根据权利要求8所述的非暂时性计算机可读介质,还包括指令,当所述指令由所述处理器读取时,使得所述处理器执行所述智能合约,以在向所述区块链提交所述处方再配药交易之前检查当地法规。
13.根据权利要求8所述的非暂时性计算机可读介质,还包括指令,当所述指令由所述处理器读取时,使得所述处理器执行所述智能合约,以基于从所述区块链分类账中检索的患者的保险数据来计算针对所述处方再配药的自付费用。
14.一种方法,包括:
由药房节点从患者节点接收对处方再配药的请求,所述请求包含患者的秘密密钥;
由药房节点从所述请求中提取所述秘密密钥以核实患者的身份;以及
由药房节点执行智能合约,以:
(a)通过应用所述秘密密钥对位于分类帐上的处方数据进行解密;
(b)从所述分类账中检索患者的过敏记录,以对照所述处方数据检查所述过敏记录;
(c)根据所述处方数据确定剩余的再配药的数量;
(d)基于到期日期检查所述处方数据的有效性;以及
基于(b)-(d)的成功执行,向区块链提交处方再配药交易。
15.根据权利要求14所述的方法,还包括执行所述智能合约,以检查是否可通过柜台获得所述处方再配药,并且通知所述患者节点。
16.根据权利要求14所述的方法,还包括执行所述智能合约,以基于所述处方再配药交易来更新所述区块链上的剩余的再配药的数量。
17.根据权利要求14所述的方法,还包括执行所述智能合约,以基于从所述区块链分类账中检索的旅行的持续时间来计算待分配的药物量。
18.根据权利要求14所述的方法,还包括执行所述智能合约,以在向所述区块链提交所述处方再配药交易之前检查当地法规。
19.根据权利要求14所述的方法,还包括执行所述智能合约,以基于从所述区块链分类账中检索的患者的保险数据来计算针对所述处方再配药的自付费用。
20.根据权利要求14所述的方法,还包括执行所述智能合约,以确定针对所述处方再配药是否存在通用替代物。
21.一种计算机系统,包括:
一个或多个处理器;
耦合到所述一个或多个处理器的计算机可读存储介质,所述计算机可读存储介质包括指令,当所述指令由所述一个或多个处理器执行时实施如权利要求1-7、14-20中任意一项所述的方法。
22.一种非暂时性计算机可读介质,包括指令,当所述指令由处理器读取时,使得所述处理器执行权利要求1-7、14-20中的任意一项所述的方法。
23.一种系统,所述系统包括分别用于执行如权利要求1-7,14-20中任意一项所述的方法的各个步骤的模块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/436,904 US11862313B2 (en) | 2019-06-10 | 2019-06-10 | Decentralized prescription refills |
US16/436,904 | 2019-06-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112071390A true CN112071390A (zh) | 2020-12-11 |
Family
ID=73651569
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010406164.XA Pending CN112071390A (zh) | 2019-06-10 | 2020-05-14 | 去中心化的处方再配药 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11862313B2 (zh) |
CN (1) | CN112071390A (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11539506B2 (en) | 2019-01-18 | 2022-12-27 | Janssen Pharmaceutica Nv | System and method for healthcare security and interoperability |
US11532385B2 (en) | 2019-01-18 | 2022-12-20 | Janssen Pharmaceutica Nv | System and method for healthcare security and interoperability |
US11862313B2 (en) | 2019-06-10 | 2024-01-02 | International Business Machines Corporation | Decentralized prescription refills |
US11917088B2 (en) * | 2020-09-21 | 2024-02-27 | International Business Machines Corporation | Integrating device identity into a permissioning framework of a blockchain |
JP2024503065A (ja) * | 2021-01-14 | 2024-01-24 | ヤンセン ファーマシューティカ エヌ.ベー. | ヘルスケアの相互運用性のためのシステム及び方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120150562A1 (en) * | 2010-12-09 | 2012-06-14 | Lerner Keith S | Health care product triage administered closed system |
US20170169186A1 (en) * | 2015-12-11 | 2017-06-15 | Srinivas TUMMA | System and method for prescription drug management |
US20170300627A1 (en) * | 2016-04-13 | 2017-10-19 | Accenture Global Solutions Limited | Distributed healthcare records management |
US20180253464A1 (en) * | 2017-03-03 | 2018-09-06 | Mastercard International Incorporated | Method and system for storage and transfer of verified data via blockchain |
WO2018197739A1 (en) * | 2017-04-24 | 2018-11-01 | Nokia Technologies Oy | Medicine supply control |
US20190156938A1 (en) * | 2017-11-20 | 2019-05-23 | Michael Brunner | System, method and data model for secure prescription management |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7072840B1 (en) | 1994-10-28 | 2006-07-04 | Cybear, L.L.C. | Prescription management system |
WO2002086655A2 (en) | 2001-04-03 | 2002-10-31 | Rx-Connect, Inc. | Permission based marketing for use with medical prescriptions |
JP2005500099A (ja) * | 2001-06-22 | 2005-01-06 | ロナルド・ディ・セクラ | 服薬遵守デバイスおよびデバイスの使用方法 |
CN101689241B (zh) | 2007-06-27 | 2013-06-26 | 皇家飞利浦电子股份有限公司 | 电子处方的安全认证 |
US20090164376A1 (en) | 2007-12-20 | 2009-06-25 | Mckesson Financial Holdings Limited | Systems and Methods for Controlled Substance Prescription Monitoring Via Real Time Claims Network |
US20130191137A1 (en) | 2012-01-23 | 2013-07-25 | James F. Chen | Systems and methods for electronically prescribing controlled substances |
US20130218586A1 (en) | 2012-02-21 | 2013-08-22 | Frederic J. Huser | Methods and elements for identifying the appropriate patient populations who can safely use prescription chronic care drugs that are switched to an over-the-counter regulatory status |
US20180094953A1 (en) * | 2016-10-01 | 2018-04-05 | Shay C. Colson | Distributed Manufacturing |
US20150261934A1 (en) | 2014-03-14 | 2015-09-17 | Roby Miller | System and Method for Providing Pharmacy Services |
US20160117471A1 (en) | 2014-10-22 | 2016-04-28 | Jan Belt | Medical event lifecycle management |
JP2019502215A (ja) | 2015-11-10 | 2019-01-24 | ウォルマート アポロ,エルエルシー | 処方薬の宅配 |
WO2018037148A1 (en) | 2016-08-22 | 2018-03-01 | Nokia Technologies Oy | Method and apparatus for blockchain verification of healthcare prescriptions |
US10942956B2 (en) | 2016-10-27 | 2021-03-09 | International Business Machines Corporation | Detecting medical fraud and medical misuse using a shared virtual ledger |
US20180165416A1 (en) | 2016-12-09 | 2018-06-14 | Cognitive Scale, Inc. | Method for Providing Healthcare-Related, Blockchain-Associated Cognitive Insights Using Blockchains |
US11200971B2 (en) * | 2017-08-17 | 2021-12-14 | Health2047, Inc. | Secure token identification and medical rule-based authorization system |
CN107835182B (zh) | 2017-11-16 | 2020-02-21 | 重庆忠昇数据处理服务有限公司 | 基于区块链的电子处方系统及处理方法 |
US11393568B2 (en) | 2017-12-27 | 2022-07-19 | Prescryptive Health, Inc. | Blockchain prescription management system |
US20190206536A1 (en) | 2018-01-01 | 2019-07-04 | Brian Hausman | System and method for prescription monitoring and drug dispensation utilizing a distributed ledger |
US20190237178A1 (en) | 2018-01-29 | 2019-08-01 | Norman Shaye | Method to reduce errors, identify drug interactions, improve efficiency, and improve safety in drug delivery systems |
US11558178B2 (en) | 2018-01-31 | 2023-01-17 | Walmart Apollo, Llc | System and method for prescription security and authentication |
US11862313B2 (en) | 2019-06-10 | 2024-01-02 | International Business Machines Corporation | Decentralized prescription refills |
US11195605B2 (en) | 2019-08-26 | 2021-12-07 | Mark Lamoncha | Providing global accessibility to prescribed medications |
-
2019
- 2019-06-10 US US16/436,904 patent/US11862313B2/en active Active
-
2020
- 2020-05-14 CN CN202010406164.XA patent/CN112071390A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120150562A1 (en) * | 2010-12-09 | 2012-06-14 | Lerner Keith S | Health care product triage administered closed system |
US20170169186A1 (en) * | 2015-12-11 | 2017-06-15 | Srinivas TUMMA | System and method for prescription drug management |
US20170300627A1 (en) * | 2016-04-13 | 2017-10-19 | Accenture Global Solutions Limited | Distributed healthcare records management |
US20180253464A1 (en) * | 2017-03-03 | 2018-09-06 | Mastercard International Incorporated | Method and system for storage and transfer of verified data via blockchain |
WO2018197739A1 (en) * | 2017-04-24 | 2018-11-01 | Nokia Technologies Oy | Medicine supply control |
US20190156938A1 (en) * | 2017-11-20 | 2019-05-23 | Michael Brunner | System, method and data model for secure prescription management |
Also Published As
Publication number | Publication date |
---|---|
US11862313B2 (en) | 2024-01-02 |
US20200388366A1 (en) | 2020-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11972004B2 (en) | Document redaction and reconciliation | |
US11088826B2 (en) | Managing assets with expiration on a blockchain | |
EP3864816B1 (en) | Blockchain notification board storing blockchain resources | |
US11693840B2 (en) | Database storing authenticated skill-based attributes | |
US11195180B2 (en) | Virtual blockchain | |
US20200394321A1 (en) | Document redaction and reconciliation | |
US11862313B2 (en) | Decentralized prescription refills | |
US11489672B2 (en) | Verification of conditions of a blockchain transaction | |
US11048689B2 (en) | Consensus transaction scheduler | |
US11188521B2 (en) | Flexible transaction validation | |
US11270296B2 (en) | Protection of data trading | |
CN110674128B (zh) | 区块链的链上治理 | |
US10944565B2 (en) | Consented authentication | |
US20200151266A1 (en) | Data processing using external information | |
US20200142693A1 (en) | Transparent code processing | |
US10943003B2 (en) | Consented authentication | |
US11637691B2 (en) | Management of a size of a ledger | |
US11176093B2 (en) | Defensible disposition of data | |
US11032083B2 (en) | Atomic transactional processing | |
CN111831739A (zh) | 数据库复合背书 | |
CN111798233A (zh) | 令牌的链接 | |
US11893554B2 (en) | Secure smart note | |
US11769147B2 (en) | Secure smart note | |
US20210256512A1 (en) | Provisioning Of Assets Based On Content Usage | |
CN112071389A (zh) | 去中心化的处方再配药 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |