KR20240050180A - System and method for trading based on blockchain technologies - Google Patents
System and method for trading based on blockchain technologies Download PDFInfo
- Publication number
- KR20240050180A KR20240050180A KR1020220130057A KR20220130057A KR20240050180A KR 20240050180 A KR20240050180 A KR 20240050180A KR 1020220130057 A KR1020220130057 A KR 1020220130057A KR 20220130057 A KR20220130057 A KR 20220130057A KR 20240050180 A KR20240050180 A KR 20240050180A
- Authority
- KR
- South Korea
- Prior art keywords
- seller
- electronic device
- consumer
- transaction
- prescription
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 145
- 238000005516 engineering process Methods 0.000 title description 7
- 238000009826 distribution Methods 0.000 claims abstract description 201
- 230000008569 process Effects 0.000 claims abstract description 56
- 238000012795 verification Methods 0.000 claims abstract description 34
- 238000003860 storage Methods 0.000 claims description 76
- 238000012545 processing Methods 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 14
- 238000013475 authorization Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 9
- 238000000151 deposition Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 description 215
- 241000218236 Cannabis Species 0.000 description 116
- 239000003814 drug Substances 0.000 description 115
- 229940079593 drug Drugs 0.000 description 69
- 238000004891 communication Methods 0.000 description 50
- 238000010586 diagram Methods 0.000 description 39
- 238000012790 confirmation Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 18
- 238000012546 transfer Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000008520 organization Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 4
- YSCNMFDFYJUPEF-OWOJBTEDSA-N 4,4'-diisothiocyano-trans-stilbene-2,2'-disulfonic acid Chemical compound OS(=O)(=O)C1=CC(N=C=S)=CC=C1\C=C\C1=CC=C(N=C=S)C=C1S(O)(=O)=O YSCNMFDFYJUPEF-OWOJBTEDSA-N 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 239000004081 narcotic agent Substances 0.000 description 3
- 230000036541 health Effects 0.000 description 2
- 239000004615 ingredient Substances 0.000 description 2
- 229940127554 medical product Drugs 0.000 description 2
- 230000000506 psychotropic effect Effects 0.000 description 2
- 238000004549 pulsed laser deposition Methods 0.000 description 2
- 244000025254 Cannabis sativa Species 0.000 description 1
- 235000012766 Cannabis sativa ssp. sativa var. sativa Nutrition 0.000 description 1
- 235000012765 Cannabis sativa ssp. sativa var. spontanea Nutrition 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 235000009120 camo Nutrition 0.000 description 1
- 235000005607 chanvre indien Nutrition 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 229940126534 drug product Drugs 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 239000011487 hemp Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 210000004072 lung Anatomy 0.000 description 1
- 238000002483 medication Methods 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 239000000825 pharmaceutical preparation Substances 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 229940001470 psychoactive drug Drugs 0.000 description 1
- 239000004089 psychotropic agent Substances 0.000 description 1
- 230000009469 supplementation Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000002255 vaccination Methods 0.000 description 1
Images
Classifications
-
- 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
- G16H40/00—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
- G16H40/20—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management or administration of healthcare resources or facilities, e.g. managing hospital staff or surgery rooms
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- 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/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0609—Buyer or seller confidence or verification
-
- 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
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/3247—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 involving digital signatures
-
- 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
Abstract
상기 소비자가 관리대상 제품의 구매권한이 있는 것을 나타낸 처방인증VC를 상기 소비자의 전자장치로 발행하고, 상기 소비자의 전자장치에서 소비자의 관리대상 제품의 구매권한 여부에 대한 VP를 생성하고, 상기 판매자의 전자장치로 상기 관리대상 제품의 구매권한 여부에 대한 VP를 전송하며, 상기 판매자의 전자장치에서 상기 제1 블록체인 네트워크에 저장된 제품유통관리기관의 식별자와 상기 관리대상 제품의 구매권한 여부에 대한 VP에 포함된 제품유통관리기관의 디지털 서명을 기초로 정당한 제품유통관리기관에 의하여 발급된 처방인증VC인 것을 검증하고, 그리고 상기 검증 결과에 기초하여 상기 처방인증VC 내 처방전 정보 중 적어도 일부를 획득하고, 관리대상 제품을 구매하기 위한 거래 프로세스를 수행하는, 소비자가 관리대상 제품을 구매하는 시스템 및 방법에 관련된다. A prescription authentication VC indicating that the consumer has the right to purchase the product subject to management is issued to the consumer's electronic device, a VP is generated on the electronic device of the consumer regarding whether the consumer has the right to purchase the product subject to management, and the seller A VP is transmitted to the electronic device of the seller regarding the purchase authority of the product subject to management, and the identifier of the product distribution management agency stored in the first blockchain network is transmitted from the electronic device of the seller to the electronic device of the seller regarding the authority to purchase the product subject to management. Verify that the prescription certification VC was issued by a legitimate product distribution management agency based on the digital signature of the product distribution management agency included in the VP, and obtain at least part of the prescription information in the prescription certification VC based on the verification results. It is related to a system and method for a consumer to purchase a management target product, and performing a transaction process to purchase the management target product.
Description
본 출원의 실시 예들은 소비자의 신원 및 구매 이력을 투명하게 관리하기 위해 블록체인 기술에 기반하여 관리대상제품을 판매자로부터 구매하는 기술과 관련된다. Embodiments of this application relate to technology for purchasing products subject to management from sellers based on blockchain technology in order to transparently manage the identity and purchase history of consumers.
의약품을 비롯한 의료 관련 제품은 사람의 생명 또는 건강에 직접적으로 영향을 미칠 수 있으므로 유통 또는 최종 소비 과정이 권한이 있는 관리 기관에 의하여 감독이 될 필요가 있다. 특별히 향정신성 의료 관련 제품, 마약류 또는 중독성 의약품은 오용 또는 남용으로 인한 피해가 크므로 생산 과정, 유통 과정 및 처방 과정이 정확하고 투명하게 확인이 되어 관리가 될 필요가 있다. 그러나 이러한 특별 관리 대상이 되는 의약품을 비롯하여 다양한 의료 관련 제품은 각각의 유통 과정 또는 처방 과정에서 서로 독립적으로 관리가 되고, 관리 결과가 독립적으로 예를 들어 식품의약안전처와 같은 감독 또는 관리 기관에 보고가 된다. 이로 인하여 유통 과정에서 오류가 발생 되면 차후 확인이 어려운 것은 물론, 불법 유통에 대한 추적이 어려운 문제가 있다. Medical products, including pharmaceuticals, may directly affect human life or health, so the distribution or final consumption process needs to be supervised by a competent management agency. In particular, psychotropic medical products, narcotics, or addictive medicines are subject to significant damage from misuse or abuse, so the production process, distribution process, and prescription process need to be accurately and transparently confirmed and managed. However, various medical-related products, including medicines subject to such special management, are managed independently from each other during each distribution or prescription process, and the management results are independently reported to a supervisory or management agency, such as the Ministry of Food and Drug Safety. It becomes. As a result, if an error occurs during the distribution process, it is difficult to confirm later, and it is also difficult to track illegal distribution.
추가로 수량이 제한되는 중독성 의약품의 경우 각각의 개인에게 최종적으로 정해진 기간 내에 처방된 전체 양의 확인이 어렵다. 그러므로 모든 유통 또는 처방 과정이 자동으로 확인 또는 추적될 수 있도록 하는 구매 서비스를 제공하는 시스템이 개발될 필요가 있다. Additionally, in the case of addictive drugs whose quantity is limited, it is difficult to confirm the total amount ultimately prescribed to each individual within a given period of time. Therefore, there is a need to develop a system that provides a purchasing service that allows all distribution or prescription processes to be automatically verified or tracked.
상술한 문제점을 해결하기 위해, 관리대상제품의 구매 권한이 인증된 소비자에 대해서만 상기 관리대상제품의 구매를 허용하고 구매 이력을 투명하게 관리하는 시스템 및 방법을 제공하고자 한다. In order to solve the above-mentioned problems, we would like to provide a system and method that allows the purchase of management target products only for consumers who are certified to purchase the management target products and transparently manages purchase history.
본 출원의 일 측면에 따른, 시스템에 의해 수행되는 소비자가 관리대상 제품을 구매하는 방법은 분산 원장을 갖는 제1 블록체인 네트워크를 포함하는 블록체인 기반 구매 시스템에 의해 운영되는 것이고, 상기 시스템은 소비자의 전자장치, 판매자의 전자장치 및 의료기관 전자장치와 통신하고, 상기 제1 블록체인 네트워크는, 소비자의 식별자, 상기 시스템의 식별자 및 의료기관의 식별자를 저장할 수 있다. According to one aspect of the present application, a method for a consumer to purchase a managed product performed by the system is operated by a blockchain-based purchasing system including a first blockchain network with a distributed ledger, wherein the system is operated by the consumer. communicates with the electronic device of, the seller's electronic device, and the medical institution's electronic device, and the first blockchain network may store the consumer's identifier, the system's identifier, and the medical institution's identifier.
이때, 상기 방법은, 상기 시스템에서 상기 소비자가 관리대상 제품의 구매권한이 있는 것을 나타낸 처방인증VC를 상기 소비자의 전자장치로 발행하는 단계; 상기 소비자의 전자장치에서 소비자의 관리대상 제품의 구매권한 여부에 대한 VP를 생성하고, 상기 판매자의 전자장치로 상기 관리대상 제품의 구매권한 여부에 대한 VP를 전송하는 단계 ? 상기 관리대상 제품의 구매권한 여부에 대한 VP는 소비자의 신원인증VC 와 처방 인증VC 에 포함되는 정보들 중에서 일부 또는 전부를 포함할 수 있다. At this time, the method includes the steps of issuing, in the system, a prescription authentication VC indicating that the consumer has the right to purchase a management target product to the consumer's electronic device; Generating a VP on whether the consumer has the right to purchase the product subject to management on the consumer's electronic device, and transmitting the VP on whether the consumer has the right to purchase the product subject to management to the electronic device of the seller? The VP regarding the purchase authority of the product subject to management may include some or all of the information included in the consumer's identity authentication VC and prescription authentication VC.
이때, 상기 판매자의 전자장치에서 상기 제1 블록체인 네트워크에 저장된 제품유통관리기관의 식별자와 상기 관리대상 제품의 구매권한 여부에 대한 VP에 포함된 제품유통관리기관의 디지털 서명을 기초로 정당한 제품유통관리기관에 의하여 발급된 처방인증VC인 것을 검증하는 단계 및 상기 검증 결과에 기초하여 상기 처방인증VC 내 처방전 정보 중 적어도 일부를 획득하고, 관리대상 제품을 구매하기 위한 거래 프로세스를 수행하는 단계 ? 상기 거래 프로세스는 관리대상 제품의 거래를 위한 상기 판매자의 전자장치와 소비자의 전자 장치 간의 미리 설정된 일련의 동작으로 이루어진 것;을 포함할 수 있다. At this time, legitimate product distribution is based on the identifier of the product distribution management agency stored in the first blockchain network on the seller's electronic device and the digital signature of the product distribution management agency included in the VP regarding purchase authority for the product subject to management. Verifying that it is a prescription certification VC issued by a management institution, obtaining at least part of the prescription information in the prescription certification VC based on the verification results, and performing a transaction process to purchase a product subject to management? The transaction process may include a series of preset operations between the seller's electronic device and the consumer's electronic device for transaction of a product subject to management.
일 실시 예에서, 상기 시스템에서 상기 소비자가 관리대상 제품의 구매권한이 있는 것을 나타낸 처방인증VC를 상기 소비자의 전자장치로 발행하는 단계는, 의료기관 전자장치에서 소비자에 대한 처방전 정보, 상기 소비자의 신원인증 VC 및 의료기관의 공인처방기관VC를 상기 의료기관 식별자로 디지털 서명하여 처방인증VC 발급을 요청하는 단계 ? 상기 처방전 정보는 상기 소비자가 처방 대상이고 상기 관리대상 제품이 처방 제품인 처방 내용과 관련된 정보를 포함할 수 있으며, 상기 처방인증VC 발급의 요청에 반응하여, 상기 시스템에서 상기 공인처방기관 VC에 포함된 의료기관의 디지털 서명과 상기 제1 블록체인 네트워크에 저장된 의료기관의 식별자에 기초하여 처방인증VC의 발급 요청이 공인처방기관인 의료기관에 의한 디지털 서명인 것인지 검증하는 단계 및 상기 처방인증VC의 발급 요청이 공인처방기관인 의료기관에 의한 디지털 서명인 것인지 검증된 경우 상기 시스템에서 상기 처방전 정보, 상기 소비자의 신원인증VC에 포함된 적어도 일부 데이터를 디지털 서명한 처방인증VC를 발행하는 단계를 포함할 수 있다. In one embodiment, the step of issuing, in the system, a prescription authentication VC indicating that the consumer has the right to purchase a management target product to the consumer's electronic device, includes prescription information about the consumer from the medical institution's electronic device, and the consumer's identity. Step of requesting issuance of prescription certification VC by digitally signing the authentication VC and the medical institution's authorized prescribing organization VC with the medical institution identifier? The prescription information may include information related to prescriptions in which the consumer is the subject of the prescription and the product subject to management is a prescription product, and in response to the request for issuance of the prescription certification VC, the VC included in the authorized prescription agency in the system Verifying whether the request for issuance of a prescription authentication VC is a digital signature by a medical institution that is an authorized prescribing institution based on the digital signature of the medical institution and the identifier of the medical institution stored in the first blockchain network, and the request for issuance of the prescription certification VC is an authorized prescription If it is verified that it is a digital signature by a medical institution, the system may include issuing a prescription authentication VC that digitally signs the prescription information and at least some data included in the consumer's identity authentication VC.
일 실시 예에서, 상기 방법은, 상기 시스템에서 상기 판매자가 상기 관리대상 제품의 판매권한이 있는 것을 나타낸 공인판매자VC를 상기 판매자의 전자장치로 발행하는 단계, 상기 관리대상 제품에 대한 구매권한 여부에 대한 VP를 상기 판매자의 전자장치로 전송하기 이전에, 상기 판매자의 전자장치에서 상기 판매자의 판매권한 여부에 대한 VP를 생성하고, 상기 소비자의 전자장치로 상기 관리대상 제품에 대한 판매권한 여부에 대한 VP를 전송하는 단계 ? 상기 관리대상 제품의 구매권한 여부에 대한 VP는 상기 판매자의 신원인증VC 와 처방인증VC 에 포함되는 정보들 중에서 일부 또는 전부를 포함함 및 상기 소비자의 전자장치에서 상기 제1 블록체인 네트워크에 저장된 제품유통관리기관의 식별자와 상기 관리대상 제품의 판매권한 여부에 대한 VP에 포함된 제품유통관리기관의 디지털 서명을 기초로 정당한 제품유통관리기관에 의하여 발급된 공인판매자VC인 것을 검증하는 단계;를 더 포함할 수 있다. In one embodiment, the method includes issuing, in the system, an authorized seller VC indicating that the seller has the authority to sell the management subject product to the seller's electronic device, determining whether the seller has the authority to purchase the management subject product. Before transmitting the VP for the product to the seller's electronic device, a VP on whether the seller has the sales authority is created on the seller's electronic device, and a VP on whether the seller has the sales authority for the management target product is generated on the consumer's electronic device. Steps to transfer VP? The VP on whether the product subject to management is authorized to purchase includes some or all of the information included in the seller's identity authentication VC and prescription authentication VC, and the product stored in the first blockchain network on the consumer's electronic device. Verifying that the VC is an authorized seller issued by a legitimate product distribution management agency based on the identifier of the distribution management agency and the digital signature of the product distribution management agency included in the VP regarding whether or not the product is authorized to sell the product subject to management; It can be included.
이때, 상기 정당한 제품유통관리기관에 의하여 발급된 공인판매자VC인 것을 검증된 경우, 상기 소비자의 전자장치에서 소비자의 관리대상 제품의 구매권한 여부에 대한 VP를 생성하거나 또는 상기 판매자의 전자장치로 상기 관리대상 제품의 구매권한 여부에 대한 VP를 전송할 수 있다. At this time, if it is verified that it is an authorized seller VC issued by the legitimate product distribution management agency, a VP on whether the consumer has the right to purchase the product subject to management is generated on the consumer's electronic device, or the VP is generated on the seller's electronic device. VP can be sent regarding the purchase authority of the management target product.
일 실시 예에서, 상기 시스템에서 상기 판매자가 상기 관리대상 제품의 판매권한이 있는 것을 나타낸 공인판매자VC를 상기 판매자의 전자장치로 발행하는 단계는, 판매자의 전자장치에서 상기 판매자의 신원인증 VC 를 상기 판매자의 식별자로 디지털 서명하여 공인판매자VC 발급을 요청하는 단계, 상기 공인판매자VC발급의 요청에 반응하여, 상기 시스템에서 상기 판매자의 신원인증VC에 포함된 상기 판매자의 디지털 서명과 상기 제1 블록체인 네트워크에 저장된 판매자의 식별자에 기초하여 상기 공인판매자VC의 발급 요청이 정당한 판매자로부터 전송된 것인지 검증하는 단계, 상기 정당한 판매자로부터 전송된 것인지 검증된 경우 상기 시스템에서 공인판매자 DB의 정보와 판매자인증VC의 정보를 비교하는 단계 및 상기 공인판매자DB에 상기 판매자인증VC와 일치하는 정보가 있는 경우 상기 공인판매자VC의 발급을 요청한 판매자의 전자장치로 상기 공인판매자VC를 발행하는 단계를 포함할 수 있다. In one embodiment, the step of issuing, in the system, an authorized seller VC indicating that the seller has the authority to sell the product subject to management to the seller's electronic device is to obtain the seller's identity authentication VC from the seller's electronic device. Requesting issuance of an authorized seller VC by digitally signing with the seller's identifier, in response to the request for issuance of an authorized seller VC, the digital signature of the seller and the first blockchain included in the identity authentication VC of the seller in the system Verifying whether the request for issuance of the authorized seller VC was transmitted from a legitimate seller based on the identifier of the seller stored in the network; if it is verified that the request is sent from the legitimate seller, the information of the authorized seller DB and the seller authentication VC in the system It may include comparing information and, if there is information matching the seller authentication VC in the authorized seller DB, issuing the authorized seller VC to the electronic device of the seller who requested issuance of the authorized seller VC.
일 실시 예에서, 상기 검증 결과에 기초하여 상기 처방인증VC 내 처방전 정보 중 적어도 일부를 획득하고, 관리대상 제품을 구매하기 위한 거래 프로세스를 수행하는 단계는, 상기 소비자에 대한 관리대상 제품의 복용 기간, 일별 복용 회수, 1회당 복용량에 기초하여 구매 허용된 전체 복용량을 산출하는 단계 및 상기 전체 복용량만큼의 관리대상 제품을 구매하기 위한 거래 프로세스를 수행하는 단계를 포함할 수 있다. In one embodiment, the step of obtaining at least some of the prescription information in the prescription authentication VC based on the verification result and performing a transaction process for purchasing the product to be managed includes, the period of taking the product to be managed for the consumer. , calculating the total dose allowed for purchase based on the number of daily doses, the dose per time, and performing a transaction process to purchase the product to be managed as the total dose.
일 실시 예에서, 상기 전체 복용량만큼의 관리대상 제품을 구매하기 위한 거래 프로세스를 수행하는 단계는, 상기 거래 프로세스를 위한 소비자의 구매 주문을 생성하여 거래 시스템에 전송하는 단계 ?상기 소비자의 구매 주문은 상기 소비자의 전자장치 또는 판매자의 전자장치에서 생성되는 것임; 상기 판매자의 전자장치에서 상기 거래 프로세스를 위한 상기 판매자의 판매 주문을 생성하여 상기 거래 시스템에 전송하는 단계 및 상기 거래 시스템에서 상기 소비자의 구매 주문 및 판매자의 구매 주문에 기초하여 거래 트랜잭션을 처리하는 단계를 포함하고, 상기 거래 시스템은 자산 거래를 위한 복수의 트랜잭션을 처리하도록 구성된 것으로서, 복수의 컴퓨팅 장치를 포함한 제2 블록체인 네트워크 ? 상기 제2 블록체인 네트워크는 상기 복수의 컴퓨팅 장치에 포함된 상기 소비자의 전자장치 및 판매자의 전자장치에 연결되고, 상기 소비자의 전자장치, 판매자의 전자장치에 블록체인이 저장됨; 상기 블록체인 네트워크와 통신하는 거래소 서버 및 분산 저장소를 포함하고, 상기 방법은, 상기 판매자의 전자장치에서 판매할 관리대상 제품을 등록하는 것에 따라서 자산 지분 스마트컨트랙트를 통해 상기 관리대상 제품에 연관된 자산 지분 토큰을 발행하는 단계 및 상기 소비자의 전자장치에서 법정화폐를 입금하는 것에 따라서 통화 토큰 스마트컨트랙트를 통해 상기 통화 토큰을 발행하는 단계를 더 포함할 수 있다. In one embodiment, performing a transaction process to purchase the entire dose of the managed product comprises: generating a consumer's purchase order for the transaction process and transmitting it to a transaction system; wherein the consumer's purchase order is Generated on the consumer's electronic device or the seller's electronic device; Generating the seller's sales order for the transaction process on the seller's electronic device and transmitting it to the transaction system, and processing a transaction transaction based on the consumer's purchase order and the seller's purchase order in the transaction system. Includes, and the transaction system is configured to process a plurality of transactions for asset trading, and a second blockchain network including a plurality of computing devices. The second blockchain network is connected to the consumer's electronic device and the seller's electronic device included in the plurality of computing devices, and a blockchain is stored in the consumer's electronic device and the seller's electronic device; It includes an exchange server and a distributed storage in communication with the blockchain network, wherein the method registers a product to be managed for sale on the electronic device of the seller, thereby registering an asset share associated with the product to be managed through an asset share smart contract. It may further include issuing a token and issuing the currency token through a currency token smart contract in accordance with depositing fiat currency on the consumer's electronic device.
일 실시 예에서, 상기 거래 프로세스를 위한 소비자의 구매 주문을 생성하는 단계는, 상기 판매자의 전자장치 또는 소비자의 전자장치에서 상기 관리대상 제품에 연관된 자산 지분 토큰을 결제 대상으로 지정하고 상기 관리대상 제품의 전체 복용량을 결제 수량으로 지정하여 상기 소비자의 구매 주문을 생성하는 것이고, 상기 거래 프로세스를 위한 상기 판매자의 판매 주문을 생성하는 단계는, 상기 판매자의 전자장치에서 상기 통화 토큰을 결제 수단으로 지정하고 상기 결제 대상 및 결제 수량에 대응한 통화 토큰의 개수를 결제 금액으로 지정하여 상기 판매자의 판매 주문을 생성할 수 있다. In one embodiment, the step of creating a consumer's purchase order for the transaction process includes designating an asset equity token associated with the managed product as a payment target on the seller's electronic device or the consumer's electronic device and Creating the consumer's purchase order by specifying the entire dose as the payment quantity, and creating the seller's sales order for the transaction process includes specifying the currency token as a payment method on the seller's electronic device; A sales order for the seller can be created by specifying the number of currency tokens corresponding to the payment object and payment quantity as the payment amount.
일 실시 예에서, 항에 있어서, 상기 관리대상 제품에 연관된 자산 지분 토큰을 발행하는 단계는, 판매자의 전자장치에서 관리대상 제품을 거래 시스템의 자산으로 등록하여 자산 지분 토큰 입금 요청이 발생하면, 상기 자산 지분 토큰 입금 요청을 판매자의 개인 키로 암호화 서명하여 상기 자산 지분 스마트컨트랙트로 전송하는 단계, 상기 자산 지분 스마트컨트랙트에서 자산 지분 토큰 입금 트랙잭션에 응답하여 등록된 상기 관리대상 제품에 연관된 자산 지분 토큰을 거래 스마트컨트랙트로 이동시키는 단계 및 상기 거래 스마트컨트랙트에서 상기 자산 지분 토큰의 입금 이벤트 로그를 생성하고, 상기 제2 블록체인 네트워크 내 블록체인에 저장하는 단계를 포함할 수 있다. In one embodiment, the step of issuing an asset equity token associated with the product to be managed includes registering the product to be managed as an asset in a transaction system on the seller's electronic device and receiving a request for depositing an asset equity token. Cryptographically signing an asset share token deposit request with the seller's private key and transmitting it to the asset share smart contract, trading the asset share token associated with the managed product registered in response to the asset share token deposit transaction in the asset share smart contract. It may include moving to a smart contract, generating a deposit event log of the asset equity token in the transaction smart contract, and storing it in a blockchain in the second blockchain network.
일 실시 예에서, 상기 통화 토큰을 발행하는 단계는, 상기 소비자의 전자장치에서 법정화폐를 입금하여 통화 토큰 입금 요청이 발생하면, 상기 통화 토큰 입금 요청을 상기 소비자의 개인 키로 암호화 서명하여 상기 통화 토큰 컨트랙트로 전송하는 단계, 상기 통화 토큰 스마트컨트랙트에서 통화 토큰 입금 트랜잭션에 응답하여 상기 통화 토큰을 상기 거래 스마트컨트랙트로 이동하는 단계, 상기 거래 스마트컨트랙트에서 상기 통화 토큰의 입금 이벤트 로그를 생성하고, 상기 제2 블록체인 네트워크 내 블록체인에 저장하는 단계를 포함할 수 있다. In one embodiment, the step of issuing the currency token includes, when a currency token deposit request occurs by depositing fiat currency on the consumer's electronic device, cryptographically signing the currency token deposit request with the consumer's private key to obtain the currency token. Transferring to a contract, moving the currency token to the transaction smart contract in response to a currency token deposit transaction in the currency token smart contract, generating a deposit event log of the currency token in the transaction smart contract, and 2 It may include the step of storing on the blockchain within the blockchain network.
일 실시 예에서, 상기 거래 시스템에서 상기 소비자의 구매 주문 및 판매자의 구매 주문에 기초하여 거래 트랜잭션을 처리하는 단계는, 상기 판매자의 전자장치에서 판매자의 개인 키로 암호화 서명된 판매자의 판매 주문을 거래소 서버 및 분산 저장소로 송신하고 상기 소비자의 전자장치에서 소비자의 개인 키로 암호화 서명된 소비자의 구매 주문을 상기 거래소 서버 및 상기 분산 저장소로 송신하는 단계, 거래소 서버에서 소비자의 거래 요청인 구매 주문, 판매자의 거래 요청인 판매 주문에 대응되는 트랜잭션을 처리하고, 상기 분산 저장소에서 상기 거래 요청에 대응되는 암호화 서명된 트랜잭션을 저장하는 단계; 및 상기 소비자의 구매 주문 및 상기 판매자의 판매 주문을 매칭하여, 상기 결제 금액만큼의 상기 통화 토큰의 수량이 상기 소비자의 거래소 계좌에서 상기 판매자의 거래소 계좌로 전송되고 상기 판매자의 거래소 계좌에서 상기 결제 수량만큼의 상기 자산 지분 토큰의 수량이 상기 판매자의 거래소 계좌에서 상기 소비자의 거래소 계좌로 전송되도록 하는 상기 거래 트랜잭션을 생성하고, 상기 거래 트랜잭션을 상기 거래소 서버의 개인 키로 암호화 서명하여 상기 분산 저장소에 저장하는 단계를 포함할 수 있다. In one embodiment, the step of processing a transaction based on the consumer's purchase order and the seller's purchase order in the trading system includes sending the seller's sales order, which is cryptographically signed with the seller's private key, on the seller's electronic device to the exchange server. and transmitting to the distributed storage the consumer's purchase order, which is cryptographically signed with the consumer's private key on the consumer's electronic device, to the exchange server and the distributed storage, a purchase order that is the consumer's transaction request in the exchange server, and the seller's transaction. Processing a transaction corresponding to a requesting sales order and storing a cryptographically signed transaction corresponding to the transaction request in the distributed storage; and matching the consumer's purchase order and the seller's sell order, so that a quantity of the currency token equivalent to the payment amount is transferred from the consumer's exchange account to the seller's exchange account and the payment quantity is transferred from the seller's exchange account. Creating the transaction transaction such that a quantity of the asset equity token is transferred from the seller's exchange account to the consumer's exchange account, cryptographically signing the transaction transaction with the private key of the exchange server and storing it in the distributed storage. Steps may be included.
본 출원의 다른 일 측면에 따른 컴퓨터 판독가능한 기록매체는 상술한 실시 예들에 따른 소비자가 관리대상 제품을 구매하는 방법을 수행하기 위한, 프로그램을 기록할 수도 있다. A computer-readable recording medium according to another aspect of the present application may record a program for performing a method for a consumer to purchase a management target product according to the above-described embodiments.
본 출원의 일 측면에 따른 구매 시스템은 소비자의 신원 및 구매 이력을 투명하게 관리할 수 있다. 특히, 상기 구매 시스템은 유효한 구매권한이 인증된 소비자에 한해 관리대상제품의 구매를 허용하고 거래 이력을 추적할 수 있어, 결국 소비자의 관리대상 제품의 구매를 엄격하게 관리할 수 있다.The purchasing system according to one aspect of the present application can transparently manage the consumer's identity and purchase history. In particular, the purchasing system allows the purchase of products subject to management only to consumers with certified valid purchase authority and can track transaction history, ultimately making it possible to strictly manage consumers' purchases of products subject to management.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당해 기술분야에서의 통상의 기술자가 명확하게 이해할 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.
본 발명 또는 종래 기술의 실시 예의 기술적 해결책을 보다 명확하게 설명하기 위해, 실시 예에 대한 설명에서 필요한 도면이 아래에서 간단히 소개된다. 아래의 도면들은 본 명세서의 실시 예를 설명하기 목적일 뿐 한정의 목적이 아니라는 것으로 이해되어야 한다. 또한, 설명의 명료성을 위해 아래의 도면들에서 과장, 생략 등 다양한 변형이 적용된 일부 요소들이 도시될 수 있다.
도 1은, 본 출원의 일 측면에 따른, 블록체인 기술에 기반하여 관리대상제품을 구매하는 시스템(1)의 개략도이다.
도 2는, 본 출원의 일 측면에 따른, 블록체인 기반 인증 시스템의 개략도이다.
도 3a 및 도 3b는, 본 출원의 일 실시 예에 따른 신원인증시스템(100) 및 제품유통관리시스템(200)의 블록도이다.
도 4a 내지 도 4c는, 본 출원의 일 실시 예에 따른 의료기관 전자장치(300), 소비자의 전자장치(400) 및 판매자의 전자장치(500)의 블록도이다.
도 5는, 본 출원의 일 실시 예에 따른 신원인증시스템(100)가 소비자의 전자장치(400)에 소비자 신원 인증서를 발급하는 방법에 대한 신호 흐름도이다.
도 6은, 본 출원의 일 실시 예에 따른, 제품유통관리시스템(200)이 의료기관 전자장치(300)에 처방권한 인증서를 발급하는 방법에 대한 신호 흐름도이다.
도 7은, 본 출원의 일 실시 예에 따른, 제품유통관리시스템(200)에 처방 권한 의료진을 등록하는 방법에 대한 신호 흐름도이다.
도 8은, 본 출원의 일 실시 예에 따른, 처방 인증서를 발급하는 방법에 대한 신호 흐름도이다.
도 9는, 본 출원의 일 실시 예에 따른, 제품유통관리시스템(200)이 판매자의 전자장치(500)에 판매권한 인증서를 발급하는 방법에 대한 신호 흐름도이다.
도 10은, 본 출원의 또 다른 일 측면에 따른, 대마약품을 구매하는 방법의 신호 흐름도이다.
도 11a 및 도 11b는, 본 출원의 일 측면에 따른, 블록체인 기반 거래 시스템의 개략도이다.
도 12은 다양한 실시 예에 따른 블록체인 네트워크의 구조를 설명하기 위한 도면이다.
도 13은, 본 출원의 일 실시 예에 따른 거래소 서버의 블록도이다.
도 14는, 본 출원의 일 실시 예에 따른 거래 시스템에서 발생하는 거래 트랜잭션의 시퀀스의 일 예시와, 출금 요청 발생에 따라 수행되는 정산 절차를 설명하기 위한 도면이다.
도 15는, 본 출원의 일 실시 예에 따라 분산 저장소에 저장되는 거래 이력에 대한 불변성과 투명성을 보장하는 거래 이력 저장 방법을 설명하기 위한 도면이다.
도 16은, 본 출원의 다양한 실시 예에 따른 거래 시스템으로의 입금 방법의 신호 흐름도다.
도 17은, 본 출원의 다양한 실시 예에 따른 자산 거래 방법의 신호 흐름도다.
도 18은, 본 출원의 다양한 실시 예에 따른 거래 시스템으로부터의 출금 방법의 신호 흐름도다.In order to more clearly explain the technical solutions of the embodiments of the present invention or the prior art, drawings necessary in the description of the embodiments are briefly introduced below. It should be understood that the drawings below are for illustrative purposes only and not for limiting purposes of the present specification. Additionally, for clarity of explanation, some elements may be shown in the drawings below with various modifications, such as exaggeration or omission.
Figure 1 is a schematic diagram of a
Figure 2 is a schematic diagram of a blockchain-based authentication system, according to one aspect of the present application.
3A and 3B are block diagrams of the
4A to 4C are block diagrams of a medical institution's
Figure 5 is a signal flow diagram of a method by which the
Figure 6 is a signal flow diagram of a method by which the product
Figure 7 is a signal flow diagram of a method of registering a medical staff member with prescribing authority in the product
Figure 8 is a signal flow diagram of a method for issuing a prescription certificate according to an embodiment of the present application.
Figure 9 is a signal flow diagram of a method by which the product
Figure 10 is a signal flow diagram of a method of purchasing cannabis medicine according to another aspect of the present application.
11A and 11B are schematic diagrams of a blockchain-based transaction system, according to one aspect of the present application.
Figure 12 is a diagram to explain the structure of a blockchain network according to various embodiments.
Figure 13 is a block diagram of an exchange server according to an embodiment of the present application.
FIG. 14 is a diagram illustrating an example of a sequence of transaction transactions occurring in a transaction system according to an embodiment of the present application and a settlement procedure performed upon occurrence of a withdrawal request.
Figure 15 is a diagram for explaining a transaction history storage method that ensures immutability and transparency of transaction history stored in distributed storage according to an embodiment of the present application.
Figure 16 is a signal flow diagram of a deposit method to a transaction system according to various embodiments of the present application.
Figure 17 is a signal flow diagram of an asset trading method according to various embodiments of the present application.
18 is a signal flow diagram of a withdrawal method from a trading system according to various embodiments of the present application.
이하에서, 도면을 참조하여 본 출원의 실시 예들에 대하여 상세히 살펴본다.Hereinafter, embodiments of the present application will be examined in detail with reference to the drawings.
그러나, 이는 본 개시(disclosure)를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.However, this disclosure is not intended to limit the disclosure to specific embodiments, and should be understood to include various modifications, equivalents, and/or alternatives to the embodiments of the disclosure. . In connection with the description of the drawings, similar reference numbers may be used for similar components.
본 명세서에서, “가진다,” “가질 수 있다,”“포함한다,” 또는 “포함할 수 있다” 등의 표현은 해당 특징(예: 수치, 기능, 동작, 단계, 부품, 요소 및/또는 성분 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재나 부가를 제외시키는 것이 아니다. In this specification, expressions such as “have,” “may have,” “includes,” or “may include” refer to the relevant features (e.g., numerical values, functions, operations, steps, parts, elements, and/or components). It refers to the presence of components such as etc.) and does not exclude the presence or addition of additional features.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is said to be “connected” or “connected” to another component, it is understood that it may be directly connected or connected to the other component, but that other components may exist in between. It should be. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.
다양한 실시 예에서 사용된 “제 1”, “제 2”, “첫째” 또는 “둘째” 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 해당 구성요소들을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 수 있다. 예를 들면, 제1 구성요소와 제2 구성요소는, 순서 또는 중요도와 무관하게, 서로 다른 구성요소를 나타낼 수 있다. Expressions such as “first,” “second,” “first,” or “second” used in various embodiments may modify various elements regardless of order and/or importance, and limit the elements. I never do that. The above expressions can be used to distinguish one component from another. For example, the first component and the second component may represent different components, regardless of order or importance.
본 명세서에서 사용된 표현 “~하도록 구성된(또는 설정된)(configured to)”은 주변 상황에 따라, 예를 들면, “~에 적합한(suitable for),” “~하는 능력을 가지는(having the capacity to),” “~하도록 설계된(designed to),” “~하도록 변경된(adapted to),” “~하도록 만들어진(made to),”또는 “~를 할 수 있는(capable of)”과 바꾸어 사용될 수 있다. 용어 “~하도록 구성(또는 설정)된”은 하드웨어적으로 “특별히 설계된(specifically designed to)”것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 주변 상황에서는, “~하도록 구성된 장치”라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 “~할 수 있는” 것을 의미할 수 있다. 예를 들면, 문구 “A, B, 및 C를 수행하도록 구성(또는 설정)된 프로세서”는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.The expression “configured to” used in this specification means, for example, “suitable for,” “having the capacity to,” depending on the surrounding circumstances. ),” “designed to,” “adapted to,” “made to,” or “capable of.” . The term “configured (or set) to” may not necessarily mean “specifically designed to” in terms of hardware. Instead, in some circumstances, the expression “a device configured to” may mean that the device is “able to” work with other devices or components. For example, the phrase “processor configured (or set) to perform A, B, and C” refers to a processor dedicated to performing those operations (e.g., an embedded processor), or executing one or more software programs stored on a memory device. By doing so, it may mean a general-purpose processor (eg, CPU or application processor) capable of performing the corresponding operations.
본 명세서에서 관리대상제품은 마약류, 향정신성 성분, 대마 성분 또는 이들의 2이상의 조합을 포함한 약품, 의료 관련 제품 또는 식료품일 수도 있다. 이하, 설명의 명료성을 위해, 대마 약품을 관리대상제품의 예시로서 이용하는 실시 예들로 본 출원의 실시 예들을 상세히 서술한다. In this specification, products subject to management may be drugs, medical-related products, or foodstuffs containing narcotics, psychotropic ingredients, cannabis ingredients, or a combination of two or more thereof. Hereinafter, for clarity of explanation, embodiments of the present application will be described in detail with examples using cannabis drugs as examples of products subject to management.
도 1은, 본 출원의 일 측면에 따른, 블록체인 기술에 기반하여 관리대상제품을 구매하는 시스템(1)의 개략도이다. Figure 1 is a schematic diagram of a
도 1을 참조하면, 상기 블록체인 기술에 기반하여 관리대상 제품을 구매하는 시스템(1, 이하 구매 시스템)은 블록체인 기반 디지털인증서를 통해 관리대상제품을 구매 가능한 권한이 있는지 확인된 소비자에 대해서만 상기 관리대상제품의 구매를 허용하고 그리고 소비자의 구매 이력을 추적하도록 구성된, 블록체인 기반 인증 시스템(이하, 인증 시스템, 10) 중 적어도 일부 구성요소를 포함한다. Referring to Figure 1, the system for purchasing products subject to management based on the blockchain technology (1, hereinafter referred to as purchasing system) only provides the above information to consumers who have been confirmed to have the authority to purchase the product subject to management through a blockchain-based digital certificate. It includes at least some components of a blockchain-based authentication system (hereinafter referred to as authentication system 10), which is configured to allow the purchase of managed products and track the consumer's purchase history.
또한, 상기 구매 시스템(1)은 구매권한이 검증된 소비자의 구매를 진행하기 위한 결제 시스템과 연동될 수도 있다. 특정 실시 예들에서, 상기 구매 시스템(1)은, 구매권한이 검증된 소비자의 대마 약품의 구매를 위해, 블록체인 네트워크(1100) 상에서 관리대상제품의 구매 금액에 대한 결제를 화폐에 대응한 특정 토큰으로 처리하고 구매 이력을 생성하도록 구성된, 블록체인 기반 거래 시스템(이하, 거래 시스템(1010)) 중 적어도 일부 구성요소를 포함할 수도 있다. 또한, 일부 실시 예들에서, 인증 시스템(10)과 거래 시스템(1010)은 동일한 블록체인 네트워크(600)를 이용하도록 구성될 수도 있다. Additionally, the
실시 예들에 따른 블록체인 기반 구매 시스템(1)은 전적으로 하드웨어이거나, 또는 부분적으로 하드웨어이고 부분적으로 소프트웨어인 측면을 가질 수 있다. 예컨대, 시스템은 데이터 처리 능력이 구비된 하드웨어 및 이를 구동시키기 위한 운용 소프트웨어를 통칭할 수 있다. 본 명세서에서 "부(unit)", “모듈(module)”, “장치”, 또는 "시스템" 등의 용어는 하드웨어 및 해당 하드웨어에 의해 구동되는 소프트웨어의 조합을 지칭하는 것으로 의도된다. 예를 들어, 하드웨어는 CPU(Central Processing Unit), GPU(Graphic Processing Unit) 또는 다른 프로세서(processor)를 포함하는 데이터 처리 가능한 컴퓨팅 장치일 수 있다. 또한, 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다.The blockchain-based
처방 인증서 발급 및 발급된 인증서 확인Issuance of prescription certificate and confirmation of issued certificate
상기 구매 시스템(1)은 인증 시스템(10)의 구성요소들에 의해 유효한 구매권한이 검증된 소비자만이 대마 약품의 구매를 허용하는 동작을 수행하도록 구성된다.The
도 2는, 본 출원의 일 측면에 따른, 블록체인 기반 인증 시스템의 개략도이다.2 is a schematic diagram of a blockchain-based authentication system, according to one aspect of the present application.
본 명세서에서 관리대상제품을 구매할 잠재 소비자가 해당 관리대상제품을 이용할 필요성이 있다는 사실을 공인된 기관에서 보증하는 것은 관리대상제품을 처방하는 것으로 통상의 기술자들에게 제한되어 이해되지 않고, 단지 설명을 위한 예시로 이해되는 것이 명백할 것이다. 상기 통상의 기술자들에게 관리대상제품을 처방하는 것 이외의 다른 양태가 관리대상제품의 이용 필요성을 보증하는 것으로 구현될 수도 있다고 명백히 이해될 것이다. In this specification, the guarantee by an authorized organization that a potential consumer purchasing a product subject to management needs to use the product subject to management is not limited to those skilled in the art as prescribing a product subject to management, and is merely an explanation. It will be clear that this is to be understood as an example. It will be clearly understood that other aspects other than prescribing the subject product to those skilled in the art may be implemented to ensure the need for use of the subject product.
상기 인증 시스템(10)은, 아래에서 서술할, 제품 처방 관련 디지털인증서의 발급 및 증명 과정을 수행할 수도 있다. The
대마 약품의 이용 권한을 인증해주는 인증서(이하, “구매권한 인증서")는 대마 약품의 복용을 의학적으로 보증하는 처방 인증서를 포함할 수도 있다. 상기 처방 인증서와 같은 구매 권한 인증서는 디지털인증서의 형태로 발급될 수도 있다. A certificate certifying the right to use cannabis medicine (hereinafter referred to as “purchase authority certificate”) may include a prescription certificate medically guaranteeing the use of cannabis medicine. A purchase authority certificate, such as the above prescription certificate, is in the form of a digital certificate. may be issued.
상기 디지털인증서는 대마 약품 및 그 이용과 연관된 데이터를 포함할 수도 있다. 상기 데이터는 개인의 민감 정보를 포함할 수도 있다. 상기 개인의 민감 정보는 처방과 관련된 개인의 의료 상태, 진단 정보 등을 포함할 수도 있다. The digital certificate may include data associated with cannabis medicine and its use. The data may include personal sensitive information. The personal sensitive information may include the individual's medical condition and diagnosis information related to the prescription.
신원인증기관은 개인과 의료기관에 대한 신원 정보를 관리하는 기관이나 단체일 수 있다. 신원인증기관은 특정 개인을 식별할 수 있도록 하는 개인에 대한 신원 정보를 관리할 수 있다. 신원인증기관은 신원 정보의 적어도 하나의 항목에 대해 인증서(이하, 신원 인증서)를 발행할 수 있다. 신원인증기관은 특정 의료기관을 식별할 수 있도록 하는 의료기관에 대한 기본 정보(신원 정보)를 관리할 수 있다. 신원인증기관은 의료기관의 기본 정보의 적어도 하나의 항목에 대해 인증서(이하, 의료기관 인증서)를 발행할 수 있다. 신원인증기관은 대마 약품의 처방을 위해 필요한 의료 기관의 인증, 소비자의 신원 인증을 수행할 수 있다. 신원인증기관은 국가에 의하여 운영되는 기관으로서 신뢰기관으로 이해될 수 있다.An identity certification agency may be an institution or organization that manages identity information about individuals and medical institutions. Identity certification agencies can manage identity information about individuals that allows them to identify specific individuals. An identity certification authority may issue a certificate (hereinafter referred to as an identity certificate) for at least one item of identity information. Identity authentication agencies can manage basic information (identity information) about medical institutions that can identify specific medical institutions. An identity certification authority may issue a certificate (hereinafter referred to as a medical institution certificate) for at least one item of basic information of a medical institution. Identity certification agencies can perform authentication of medical institutions and identity authentication of consumers necessary for prescribing cannabis drugs. An identity certification agency is an agency operated by the state and can be understood as a trust agency.
제품유통관리기관은 대마 약품의 유통과 연관된 사항을 관리하는 기관이나 단체일 수도 있다. 상기 제품유통관리기관은 대마 약품을 생산, 수입, 유통, 판매, 처방, 기타 이용 양태의 과정을 모니터링하고 그에 대한 기록을 생성, 저장, 추적 및 관리할 수도 있다. 특정 실시 예들에서, 제품유통관리기관은 국가 또는 행정부에 의해 운영되는 기관으로서 신뢰기관으로 이해될 수도 있다. A product distribution management agency may be an agency or organization that manages matters related to the distribution of cannabis drugs. The product distribution management agency may monitor the process of producing, importing, distributing, selling, prescribing, and other usage patterns of cannabis drugs, and create, store, track, and manage records thereof. In certain embodiments, the product distribution management agency may be understood as a trust agency as an agency operated by the state or administration.
대마 약품의 처방은 공인된 의료기관에 의해 수행될 수도 있다. 제품유통관리기관은 복수의 의료기관 중 대마 약품의 처방을 수행할 수 있는 의료기관을 공인처방의료기관으로 선정하거나, 선정된 공인처방의료기관 목록을 관리할 수도 있다. Prescription of cannabis medicines may also be performed by accredited medical institutions. The product distribution management agency may select a medical institution that can prescribe cannabis drugs among multiple medical institutions as an accredited prescribing medical institution, or may manage a list of selected accredited prescribing medical institutions.
소비자로의 대마 약품의 처방 사실에 대한 처방 인증서의 발급을 위하여, 신원인증기관, 제품유통관리기관, 의료기관은 상호협력할 수 있다. 상기 처방 인증서는 제품유통관리기관에 의하여 발급될 수 있다. 신원인증기관은 처방 인증서를 발급하기 위한 의료기관의 기본 정보를 제품유통관리기관에 제공할 수 있다.In order to issue a prescription certificate for the prescription of cannabis medicine to a consumer, identity certification agencies, product distribution management agencies, and medical institutions may cooperate with each other. The prescription certificate may be issued by a product distribution management agency. The identity certification agency may provide the product distribution management agency with the basic information of the medical institution required to issue a prescription certificate.
다양한 실시 예에서 신원인증기관과 제품유통관리기관은 단일 기관으로 통합 구현될 수 있다. 예를 들어, 제품유통관리기관은 단독으로 직접 개인이나 의료기관에 대한 기본신원 정보를 보관하고, 신원 인증서를 발급할 수 있다.In various embodiments, the identity authentication agency and the product distribution management agency may be integrated and implemented as a single agency. For example, a product distribution management agency can independently store basic identity information about individuals or medical institutions and issue identity certificates.
판매자는, 자신의 웹사이트를 액세스하거나 점포를 방문한 고객에게 온라인 또는 오프라인 상에서 대마 약품을 판매할 수도 있다. A seller may sell cannabis medicine online or offline to customers who access the seller's website or visit the store.
대마 약품의 구매(또는 판매)는 공인된 판매자에 의해 수행될 수도 있다. 제품유통관리기관은 복수의 판매자 중 대마 약품의 판매를 수행할 수 있는 판매자를 공인판매자로 선정하거나, 선정된 공인판매자 목록을 관리할 수도 있다. The purchase (or sale) of cannabis medicines may also be conducted by an authorized seller. The product distribution management agency may select a seller who can sell cannabis drugs among multiple sellers as an authorized seller, or may manage a list of selected authorized sellers.
상기 신원인증기관, 제품유통관리기관, 의료기관, 소비자, 판매자는 아래의 시스템들에서 하드웨어와 결합된 소프트웨어 상의 엔티티(entities)로 구현되어, 본 출원의 목적을 달성하기 위해 각각 다양한 동작들을 수행할 수도 있다. The identity certification agency, product distribution management agency, medical institution, consumer, and seller are implemented as entities in software combined with hardware in the systems below, and may each perform various operations to achieve the purpose of this application. there is.
도 2를 참조하면, 인증 시스템(10)은 신원인증시스템(100), 제품유통관리시스템(200), 의료기관 전자장치(300), 소비자의 전자장치(400), 판매자의 전자장치(500)를 포함할 수 있다. 신원인증시스템(100) 및 제품유통관리시스템(200)은 복수 개의 인증서버들을 포함할 수 있으나, 이하 하나의 인증 서버로 구성된 시스템(10)이 개시된다.Referring to FIG. 2, the
신원인증시스템(100)이란 신원인증기관에 의하여 운영되는 시스템이다. 제품유통관리시스템(200)이란 제품유통관리기관에 의하여 운영되는 시스템이다. 의료기관 전자장치(300)는 대마약품 처방을 수행하는 의료기관이 소지한 전자장치(예: PC, 태블릿, 서버 장치)이다. 소비자의 전자장치(400)는 대마 약품의 처방 대상인 개인의 전자장치(예: 스마트폰, 태블릿, 개인 PC)이다. 판매자의 전자장치(500)는 특정 개인이 유효한 구매권한을 갖는 지, 즉 유효한 처방 대상인지 여부를 확인하는 타인, 회사 등이 소유한 전자장치(예: PC, 태블릿, 서버 장치)이다. 서버 장치 및 전자장치의 구조 및 동작은 도 3 및 도 4를 통하여 후술된다.The
신원인증시스템(100)은 소비자 개인에 대한 신원 인증서(이하, “소비자 신원 인증서”)를 발행할 수 있고, 발행한 소비자 신원 인증서를 소비자의 전자장치(400)로 전송할 수 있다. 신원인증시스템(100)은 의료 기관에 대한 의료기관 인증서를 발행할 수 있고, 발행한 인증서는 의료기관 전자장치(300)로 전송할 수 있다. 소비자의 전자장치(400)는 수신된 신원 인증서를 저장할 수 있다. 의료기관 전자장치(300)는 수신된 의료기관 인증서를 저장할 수 있다.The
또한, 신원인증시스템(100)은 판매자에 대한 신원 인증서(이하, “판매자 신원 인증서”)를 발행할 수 있고, 발행한 판매자 신원 인증서를 판매자의 전자장치(500)로 전송할 수도 있다. 판매자의 전자장치(500)는 수신된 신원 인증서를 저장할 수도 있다. Additionally, the
다양한 실시 예에서, 의료기관 인증서는 특정 의료기관임을 식별할 수 있게 하는 확인증으로 이해될 수 있다. 의료기관 인증서는 의료기관 자체에 대한 확인증이거나, 의료기관 대표자에 대한 신원 인증서일 수 있다.In various embodiments, a medical institution certificate may be understood as a confirmation that identifies a specific medical institution. A medical institution certificate may be a confirmation of the medical institution itself or an identity certificate of a representative of the medical institution.
또한, 일부 실시 예들에서, 상기 의료기관 인증서는 해당 의료기관에서 근무하는 의료진 인증서를 포함할 수도 있다. 상기 의료진 인증서는 의료진 식별번호(예컨대, 등록번호, 또는 신고번호) 등을 포함할 수도 있다. Additionally, in some embodiments, the medical institution certificate may include a certificate of a medical staff member working at the medical institution. The medical staff certificate may include a medical staff identification number (eg, registration number, or report number).
제품유통관리시스템(200)은 특정 의료기관이 대마 약품을 처방할 권한이 있음을 인증하는, 처방기관 인증서를 발행하고 발행한 인증서를 의료기관 전자장치(300)로 전송할 수 있다. 의료기관 전자장치(300)는 수신된 처방기관 인증서를 저장할 수 있다.The product
제품유통관리시스템(200)이 처방기관 인증서를 발행할 때, 제품유통관리시스템(200)은 신원인증시스템(100) 또는 의료기관 전자장치(300)로부터 의료기관 인증서를 수신할 수 있다. 제품유통관리시스템(200)은 의료기관 인증서에 기초하여 특정 의료기관 인지 여부를 식별하고 미리 설정된 처방기관 조건을 만족한 의료기관에 대해 상기 처방기관 인증서를 발행할 수 있다. 제품유통관리시스템(200)은 의료기관 인증서 내 정보를 미리 설정된 처방기관 조건에 적용하여 의료기관 인증서 내 정보가 상기 처방기관 조건을 만족한 경우 처방 권한이 있는 의료기관으로 식별할 수도 있다. When the product
또한, 제품유통관리시스템(200)은 판매자 인증서에 기초하여 특정 판매자 인지 여부를 식별하고 미리 설정된 판매자 조건을 만족한 판매자에 대해 판매권한 인증서를 발행할 수 있다. 제품유통관리시스템(200)은 판매자 인증서 내 정보를 미리 설정된 판매자 조건에 적용하여 판매자 인증서 내 정보가 상기 판매자 조건을 만족한 경우 판매권한이 있는 판매자로 식별할 수도 있다. Additionally, the product
의료기관 전자장치(300)는 소비자인 사용자를 식별할 수도 있다. 예를 들어, 의료기관 전자장치(300)는 소비자의 전자장치(300)에 저장된 소비자 신원 인증서를 수신하고, 수신된 소비자 신원 인증서를 기초로 소비자의 전자장치(300)의 소유자인 개인을 식별할 수 있다. The medical institution
또한, 의료기관 전자장치(300)는 대마 약품의 처방이 완료된 후, 대마 약품의 처방 관련 정보를 포함한 처방전 정보를 생성할 수도 있다. 상기 처방전 정보는, 예를 들어 처방 시간, 처방 의료기관, 처방 대상의 소비자의 건강 상태, 복용될 대마 약품 관련 정보, 복용 기간, 복용 회수, 복용 수량, 부작용, 기타 복용 정보 중 하나 이상을 포함한, 처방 사실을 서술하는 정보를 포함할 수도 있다. 상기 복용 수량은 1회당 단위 복용 수량, 1일당 복용 회수 등을 포함할 수도 있다. Additionally, the medical institution
상기 대마 약품 관련 정보는 예를 들어 대마 약품의 명칭, 제조사, 임상 정보, 식별 정보, 유통 정보 중 하나 이상을 포함한, 소비자에게 적용될 대마 약품을 서술하는 정보를 포함할 수도 있다. The cannabis medicine-related information may include, for example, information describing the cannabis medicine to be applied to the consumer, including one or more of the name, manufacturer, clinical information, identification information, and distribution information of the cannabis medicine.
또한, 의료기관 전자장치(300)는 제품유통관리시스템(200)가 특정 소비자의 처방 인증서를 발행하도록, 소비자의 개인정보, 및 처방전 정보를 제품유통관리시스템(200)으로 전송할 수도 있다. Additionally, the medical institution
소비자의 전자장치(400)는 제품유통관리시스템(200)에서 발행한 구매권한 인증서(예: 처방 인증서)를 수신하고, 이를 저장할 수도 있다. The consumer's
소비자의 전자장치(400)는 대마 약품의 구매 권한이 유효한 것에 대한 인증을 요구하는 다른 주체의 전자장치 또는 판매자의 전자장치(500)에 처방 인증서에 포함된 적어도 일부의 정보를 전송할 수 있다.The consumer's
판매자의 전자장치(500)는 소비자의 전자장치(400)에 저장된 처방 인증서를 수신하고, 수신한 처방 인증서를 분석하여 상기 소비자가 대마 약품의 구매 권한을 갖고 있는지 확인하고, 확인된 소비자에게 대마 약품을 판매할 수도 있다. The seller's
판매자의 전자장치(500)는 소비자인 사용자를 식별할 수도 있다. 예를 들어, 판매자의 전자장치(500)는 의료기관 전자장치(300)와 마찬가지로 소비자의 전자장치(300)에 저장된 소비자 신원 인증서를 수신하고, 수신된 소비자 신원 인증서를 기초로 소비자의 전자장치(300)의 소유자인 개인을 식별할 수 있다. The seller's
또한, 일부 실시 예들에서, 상기 판매자의 전자장치(500)는 대마 약품에 부착된 식별 이미지(예: 바코드, QR 코드)를 인식함으로써 상기 대마 약품 정보를 자동으로 획득하거나, 또는 판매자의 사용자 입력을 통해 직접 획득할 수도 있다. Additionally, in some embodiments, the seller's
이러한 상기 판매자의 전자장치(500)는 소비자의 전자장치(400)와 동일하거나 또는 다른 하드웨어로 구현될 수도 있다. 예를 들어, 판매자의 전자장치(500)는 소비자의 전자장치(400)와 스마트폰과 같은 동일한 하드웨어로 구현되거나, 또는 POS 단말기와 같은 상이한 하드웨어로 구현될 수도 있다.The seller's
본 명세서에서 개시되는 인증서는 발행자에 의하여 디지털 서명될 수 있다. 디지털 서명이란 발행자의 신원을 증명하는 수단이 될 수 있방법이다. 예를 들어, 발행자는 자신의 디지털 신원에 대응되는 을 위한 식별자(Identifier)를 이용하여 인증서에 디지털 서명을 할 수 있다. 인증서 수신자는 상기 디지털 서명을 통해 인증서의 발행자가 누구인지 여부를 확인할 수 있다의 신원을 증명할 수 있게 된다. 인증 시스템(10)에 포함되는 각 주체들(신원인증시스템(100), 제품유통관리시스템(200), 의료기관의 전자장치(300), 소비자의 전자장치(400), 판매자의 전자장치(500))은 각자의 식별자를 가질 수 있고, 상기 식별자를 이용하여 디지털 서명된 인증서를 발행할 수 있다. The certificate disclosed herein may be digitally signed by the issuer. A digital signature is a means of proving the identity of the issuer. For example, an issuer can digitally sign a certificate using an identifier for that corresponds to its digital identity. The recipient of the certificate can verify the identity of the issuer of the certificate through the digital signature. Each entity included in the authentication system 10 (
다양한 실시 예에서, 디지털 서명은 다양한 알고리즘으로 구성될 수 있다. 키 생성 알고리즘(A key generation algorithm), 서명 알고리즘(A signing algorithm), 서명 검증 알고리즘(A signature verifying algorithm)이 활용될 수 있다. 일 예에서, RSA 알고리즘이 활용될 수 있다.In various embodiments, digital signatures may consist of various algorithms. A key generation algorithm, a signing algorithm, and a signature verifying algorithm can be used. In one example, the RSA algorithm may be utilized.
신원인증시스템(100)은 신원 증명서 및 의료기관 증명서에 자신 식별자로의 디지털 서명을 할 수 있다. 제품유통관리시스템(200)은 처방 인증서에 자신의 식별자로 디지털 서명을 할 수 있다. 신원 증명서 또는 처방 인증서를 수신한 수신자는 디지털 서명을 통해 발행자를 확인할 수 있고, 증명서의 내용을 신뢰할 수 있다.The
예를 들어 키 생성 알고리즘의 경우, 신원인증시스템(100) 또는 제품유통관리시스템(200)은 자신의 비밀키로 인증서에 서명을 할 수 있다. 인증서 수신자는 신원인증시스템(100) 또는 제품유통관리시스템(200) 소유의 공개키로 처방 인증서를 해독할 수 있다.For example, in the case of a key generation algorithm, the
본 문서에서 개시되는 인증서는 제3 자에 의하여 검증 가능하도록(verifiable) 설계될 수 있다. 즉, 시스템(10) 상에서 발급되고 유통되는 증명서는 특정 신뢰 기관(예: 신원인증기관, 제품유통관리기관)이 아닌 모두에 의하여 검증될 수 있다.The certificate disclosed in this document may be designed to be verifiable by a third party. In other words, certificates issued and distributed on the
예를 들어 키 생성 알고리즘의 경우, 공개 키는 중앙화 된 특정 중앙 기관에 보관되지않고, 복수 개의 신뢰 기관들의 연합된 ID 관리 시스템 또는 분산원장(distributed ledger)과 같은 탈 중앙화된 P2P 네트워크에 보관될 수 있다. 이로서 누구나 접근 가능한 장소에 보관된 공개키를 값을 활용하여 인증서를 검증할 수 있다.For example, in the case of a key generation algorithm, the public key may not be stored in a specific central authority, but in a decentralized P2P network such as a federated identity management system of multiple trusted institutions or a distributed ledger. there is. As a result, the certificate can be verified using the public key stored in a place accessible to anyone.
예를 들어, 제품유통관리시스템(200)에 의하여 디지털 서명된 처방 인증서를 수신한 수신자는 제품유통관리기관을 통해 상기 처방 인증서를 인증하지 않더라도, 공개된 제품유통관리기관의 디지털 서명을 통해 상기 처방 인증서가 제품유통관리기관에 의하여 발행되었음을 직접 확인할 수 있고, 처방 인증서의 내용을 신뢰할 수 있다.For example, a recipient who has received a prescription certificate digitally signed by the product
다양한 실시 예에서, 소비자의 전자장치(400)는 처방 인증서의 내용의 일부를 가공한 증명서를 생성할 수 있다. 소비자의 전자장치(400)는 가공된 인증서를 판매자의 전자장치(500)로 전송할 수 있다. 가공의 목적은 처방 인증서에 포함된 모든 내용을 제3 자에게 전송하지 않고, 필수적인 내용만 포함되도록 함으로써 프라이버시를 보호하기 위함이다. 예를 들어 처방 사실의 유효성, 처방 대상의 대마 약품만 증명을 하면 되는 경우, “어떤 원인으로 처방을 받았는지’, ‘어떤 의료기관에서 처방을 받았는지” 등과 같은 정보는 제외하고, “처방 사실”, “대마 약품 정보”을 포함한 증명서가 판매자의 전자장치(500)에 전송될 수 있다. In various embodiments, the consumer's
상기 인증 시스템(10)은 블록체인 네트워크(600) 기반으로 운영될 수 있다. 상기 인증 시스템(10)의 블록체인 네트워크(600)는 공지의 퍼블릭 블록체인 중 적어도 하나의 블록체인 네트워크를 포함할 수 있다. 각 주체들(100, 200, 300, 400)의 디지털 서명을 위한 키 값은 블록체인 네트워크(600)에 보관될 수 있다. 예를 들어, 각 주체들(100, 200, 300, 400)의 식별자는 블록체인 네트워크(600)의 계정(account)이나 주소 값이 될 수 있다.The
블록체인 네트워크(600)를 활용함으로써, 상기 인증 시스템(10)은 국부적 지역(local region) 보다 넓은 광역 시스템 또는, 국가 단위를 뛰어 넘는 글로벌 시스템으로 기능할 수 있다. 특히, 글로벌 플랫폼인 블록체인 네트워크(600) 기반으로 인증서 발행과 검증이 이루어질 수 있으므로, 각국의 신뢰기관이나 각국마다 다른 인증 시스템의에 제약을 받지 않고, 처방 인증서 발행 및 검증이 이루어질 수 있다. By utilizing the
일 실시 예에서, 신원인증시스템(100), 제품유통관리시스템(200), 의료기관 전자장치(300) 소비자의 전자장치(400), 및 판매자의 전자장치(500)는 블록체인 네트워크(600)와 통신을 수행하고, 블록체인 네트워크(600) 상의 계정에 접속할 수 있도록 하는 적어도 하나의 어플리케이션이 저장될 수 있다. 상기 적어도 하나의 어플리케이션은 블록체인 네트워크(600)의 지갑(wallet) 어플리케이션을 포함할 수 있다.In one embodiment, the
일 실시 예에서, 인증 시스템(10)에서 발급 및 유통되는 인증서는 미리 설정된 표준 규약에 따라 설계된 검증가능한 크레덴셜(verifiable credential, VC)의 스펙을 가질 수 있다. 상기 표준 규약은, 예를 들어 W3C 표준 규약일 수도 있으나, 이에 제한되진 않는다. 시스템(100)의 주체들(100, 200, 300, 400, 500) 중 적어도 하나는 VC의 발행자(Issuer)가 될 수 있다.In one embodiment, a certificate issued and distributed by the
일 예에서, 가공된 인증서는 W3C 표준 규약에 따라 설계된 검증가능한 프레젠테이션(Verifiable Presentation, VP)의 스펙을 가질 수 있다. VP는 하나의 VC에 포함된 클레임들(Claims) 중 일부 클레임으로 구성될 수 있고, 복수의 VC들로 구성될 수 있다. 또한 VP는 서로 다른 발행자에 의하여 서명된 VC들을 포함할 수 있다. 인증 시스템(10)의 주체들(100, 200, 300, 400, 500)은 하나 이상의 VC들로부터 필요한 정보만을 포함한 VP를 발행할 생성 또는 발행할 수 있다.In one example, the processed certificate may have a Verifiable Presentation (VP) specification designed according to W3C standard protocols. A VP may be composed of some of the claims included in one VC and may be composed of multiple VCs. Additionally, a VP may contain VCs signed by different issuers.
블록체인 네트워크(600) 하에서 사용되는 디지털 서명 또는 디지털 식별자는 W3C 표준 규약에 따른 탈 중앙화된 식별자(Decentralized Identifiers, DID)로 구현될 수도 있으나, 이에 제한되진 않는다. The digital signature or digital identifier used under the
다양한 실시 예에서, VC는 발행자의 식별자 및 발행 대상의 식별자를 포함할 수 있다. 예를 들어 소비자의 전자장치(400)의 소유자에 대한 VC가 신원인증시스템(100)에 의하여 발행된 경우, VC는 신원인증시스템(100)의 식별자 정보(제1 식별자)와 소비자의 전자장치(400)의 식별자 정보(제2 식별자)를 포함할 수 있다. 이는 VC가 제1 식별자에 의해 제2 식별자로 발행되었다는 의미를 포함할 수 있다.In various embodiments, the VC may include an identifier of the issuer and an identifier of the issuer. For example, when a VC for the owner of the consumer's
또한, 소비자의 전자장치(400)는 상기 VC에 대해 자신의 제2 식별자로 서명함으로써 VP를 생성할 수 있다. 이로써, VP는 제1 식별자에 의하여 제2 식별자에게 발행된 VC를 현재 제2 식별자의 주인이 소유하고 있다는 정보를 포함할 수 있다. 따라서 VC의 일부 정보를 포함하는 VP를 수신한 제3자(예컨대, 판매자)는, VC의 정당한 소유자로부터 인증 정보를 수신한 것을 확인할 수 있고, 상기 인증 정보를 신뢰할 수 있다. 예를 들어, VP를 수신한 판매자는 가공된 인증서 내 VP를 생성한 자의 제2 식별자와 VC에 포함된 제2 식별자의 일치 여부를 확인함으로써, VC의 정당한 소유자가 생성한 VP를 전송 받았음을 확인할 수 있고, VP내에 저장된 정보를 신뢰할 수 있다.Additionally, the consumer's
상기 인증 시스템(10)의 각 주체들(100, 200, 300, 400, 500)은 상호간의 인증서의 검증을 위하여 상기 블록체인 네트워크(600)를 이용할 수도 있다. 일부 실시 예들에서, 블록체인 네트워크(600)는 ID 레지스트리(610, 620)를 저장할 수 있다.Each subject (100, 200, 300, 400, and 500) of the
상기 인증 시스템(10)의 각 주체들(100, 200, 300, 400, 500)은 상호간의 인증서의 검증을 위하여 블록체인 네트워크(600)의 DID 레지스트리(610, 620)에 대한 접근하고, 상기 레지스트리에 저장된 ID들을 열람할 권한을 가질 수 있다.Each subject (100, 200, 300, 400, 500) of the
ID 레지스트리(610, 620)에는 인증 시스템(10)의 주체들의 식별자(예: DID)가 저장될 수 있다. 상기 식별자는 인증 시스템(10)의 주체의 공개키일 수도 있다. 예를 들어, ID레지스트리(610, 620)에는 신원인증시스템(100), 제품유통관리시스템(200), 의료기관 전자장치(300) 소비자의 전자장치(400), 판매자의 전자장치(500)의 DID가 공개키로서 저장될 수 있다.
특정 실시 예들에서, 상기 인증 시스템(10)의 블록체인 네트워크(600)는 거래 시스템(100)의 블록체인 네트워크(600)를 포함할 수도 있다. In certain embodiments, the
이하 블록체인 네트워크(600) 기반의 인증 시스템(10)을 예를 들어 설명한다. 다만 이에 한정되는 것은 아니고 공개된 신뢰가능한 다른 네트워크가 채용될 수 있다.Hereinafter, the
일 실시 예에서, 블록체인 네트워크(600)은 제1 ID레지스트리(610) 및 제2 ID레지스트리(620)를 포함할 수 있다. 제1 ID레지스트리(610)는 신원인증시스템(100) 및 제품유통관리시스템(200)에 의해 관리되는 저장 공간으로 이해될 수 있다. 제1 ID레지스트리(610)에 저장되는 데이터는 신뢰기관(100, 200)들에 의해 입력, 수정, 삭제될 수 있다. 따라서 의료기관 전자장치(300), 소비자의 전자장치(400) 및 판매자의 전자장치(500)는 제1 ID 레지스트리(610)에 저장된 데이터를 열람할 수 있지만, 제1 ID 레지스트리(610)에 저장된 데이터를 수정하거나 삭제할 수 없고, 제1 ID 레지스트리(610)에 신규 데이터를 추가할 수 없다. 반면에 제2 ID레지스트리(620)에 저장되는 데이터는 각 주체들(100, 200, 300, 400, 500)에 의하여 입력, 수정, 삭제될 수 있다. 따라서 신뢰기관(100, 200)에 의해 제공되는 정보가 블록체인 네트워크(600)에 저장될 수 있고, 이를 열람하는 주체는 상기 정보를 신뢰할 수 있다.In one embodiment, the
도 3a 및 도 3b는, 본 출원의 일 실시 예에 따른 신원인증시스템(100) 및 제품유통관리시스템(200)의 블록도이다. Figures 3a and 3b are block diagrams of the
다양한 실시 예에서 신원인증시스템(100) 및 제품유통관리시스템(200)은 통합될 수 있다. 신원인증시스템(100) 및 제품유통관리시스템(200)은 하나의 서버 장치로 예를 들어 도시 되었으나, 복수의 서버 장치로 구성될 수 있다.In various embodiments, the
일 실시 예에서, 신원인증시스템(100)은 프로세서(110), 메모리(120), 통신회로(130)를 포함할 수 있다. 프로세서(110)는 신원인증시스템(100)의 동작 전반을 제어할 수 있다. 신원인증시스템(100)은 통신회로(130)를 통하여 시스템(10)의 다른 주제들(200, 300, 400, 500)과 데이터를 송수신할 수 있다.In one embodiment, the
일 실시 예에서, 메모리(120)는 신원 인증서를 발행할 대상인 개인들에 대한 신원 정보를 포함하는 소비자 DB(122)를 포함할 수 있다. 신원 확인 대상의 개인은 DB(122)에서 데이터베이스 객체로 취급될 수도 있다. 소비자 DB(122)는 각각의 개인에 대해, 표 1에 도시된 항목의 데이터를 포함할 수 있다. 소비자 DB(122)에 기초하여 개인에 대한 소비자 신원 인증서가 발행될 수 있다.In one embodiment,
또한, 메모리(120)는 의료기관 인증서를 발행할 대상인 의료기관들에 대한 의료기관DB(124)를 포함할 수 있다. 의료기관DB(124)는, 각각의 의료기관에 대해, 표2에 도시된 항목의 데이터를 포함할 수 있다. 의료기관DB(124)에 기초하여 의료기관에 대한 의료기관 인증서가 발행될 수 있다.Additionally, the
또한, 메모리(120)는 판매자 인증서를 발행할 대상인 판매자들에 대한 판매자 DB(126)를 포함할 수도 있다. 판매자 DB(126)는, 각각의 판매자에 대해, 표 3에 도시된 항목의 데이터를 포함할 수도 있다. 판매자 DB(126)에 기초하여 판매자에 대한 판매자 인증서가 발행될 수 있다.Additionally, the
일 실시 예에서, 프로세서(110)는 소비자 인증서 발행모듈(112)과 의료기관 인증서 발행모듈(114), 및 판매자 인증서 발행모듈(116)을 포함할 수 있다. 프로세서(110)는 메모리(120)에 저장된 명령어들을 실행하여 소비자 인증서 발행모듈(112), 의료기관 인증서 발행모듈(114), 판매자 인증서 발행모듈(116)을 각각 구동시킬 수 있다. 소비자 인증서 발행모듈(112), 의료기관 인증서 발행모듈(114), 판매자 인증서 발행모듈(116)에 의하여 수행되는 동작은 프로세서(110)에 의하여 수행되는 동작으로 이해될 수 있다. 기타 신원인증시스템(100)에 의하여 수행되는 것으로 기술된 동작들은 프로세서(110)에 의하여 수행되는 동작으로 이해될 수 있다.In one embodiment, the
소비자 인증서 발행모듈(112)은 메모리(120)에 저장된 소비자 DB(122)를 이용하여 소비자 신원 인증서를 발행급할 수 있다. 예를 들어, 소비자 DB(122)에 포함된 데이터의 적어도 일부를 포함하는 소비자 신원 인증서를 생성할 수 있다. 생성된 소비자 신원 인증서에 신원인증시스템(100)의 디지털 신원 식별자로 디지털 서명을 할 수 있다. 상기 소비자 신원 인증서는 소비자 신원 인증서 발행 대상인 개인의 식별자를 포함할 수 있다.The consumer
의료기관 인증서 발행모듈(114)은 메모리(120)에 저장된 의료기관DB(124)를 이용하여 의료기관 인증서를 발급할 수 있다. 예를 들어, 의료기관DB(124)에 포함된 데이터의 적어도 일부를 포함하는 의료기관 인증서를 생성할 수 있다. 생성된 의료기관 인증서에 신원인증시스템(100)의 디지털 신원 식별자로 디지털 서명을 할 수 있다. 상기 의료기관 인증서는 인증서 발행 대상인 의료기관의 식별자를 포함할 수 있다.The medical institution
판매자 인증서 발행모듈(116)은 메모리(120)에 저장된 판매자 DB(126)를 이용하여 판매자 인증서를 발급할 수 있다. 예를 들어, 판매자 DB(126)에 포함된 데이터의 적어도 일부를 포함하는 판매자 인증서를 생성할 수 있다. 생성된 판매자 인증서에 신원인증시스템(100)의 디지털 신원 식별자로 디지털 서명을 할 수 있다. 상기 판매자 인증서는 인증서 발행 대상인 판매자의 식별자를 포함할 수 있다.The seller
일 실시 예에서, 신원인증시스템(100)은 신원인증시스템(100)가 블록체인 네트워크(600)와 통신하기 위한 지갑(wallet)을 포함할 수 있다. 지갑은 블록체인 네트워크(600)상의 신원인증시스템(100)의 계정을 포함할 수 있다. 예를 들어, 신원인증시스템(100)은 자신의 개인 키를 메모리(120)에 저장할 수 있다. 신원인증시스템(100)가 다양한 인증서를 발행할 때 자신의 개인키로 서명을 수행할 수 있다. In one embodiment, the
다양한 실시 예에서, 상기 지갑은 DID 에이전트(DID agent)를 포함할 수 있다. DID 에이젼트는 블록체인 네트워크(600) 상의 DID를 발급 받고, DID를 조회하고, DID를 변경할 수 있다. 소비자 인증서 발행모듈(112)은 인증서를 발행한 개인의 DID, 인증서 발행 사실을 제1 레지스트리(610)에 저장할 수 있다. 의료기관 인증서 발행모듈(114)은 인증서를 발행한 대상의 DID, 인증서 발행 사실을 제1 레지스트리(610)에 저장할 수 있다. 판매자 인증서 발행모듈(116)은 인증서를 발행한 대상의 DID, 인증서 발행사실을 제1 레지스트리(610)에 저장할 수도 있다. In various embodiments, the wallet may include a DID agent. The DID agent can receive a DID on the
특정 실시 예들에서, 상기 신원인증시스템(100)의 계정(도는 지갑)은 상기 거래 시스템(1010)에서 토큰이 입/출금되는 계좌와 매핑될 수도 있다. 또한, 상기 거래 시스템(1010)은 사용자 거래소 계좌가 신설되면, 신설된 사용자 거래소 계좌를 상기 신원인증시스템(100)에 알릴 수도 있다. 상기 구매 시스템(1)은 사용자별로 제공된 단일 계좌를 토큰의 입/출금 및 신원인증을 위해 이용할 수도 있다. In certain embodiments, an account (or wallet) of the
일 실시 예에서, 제품유통관리시스템(200)은 프로세서(210), 메모리(220), 통신회로(230)를 포함할 수 있다. 프로세서(210)는 제품유통관리시스템(200)의 동작 전반을 제어할 수 있다. 제품유통관리시스템(200)은 통신회로(230)를 통하여 시스템(10)의 다른 주제들(100, 300, 400, 500)과 데이터를 송수신할 수 있다.In one embodiment, the product
일 실시 예에서, 메모리(220)는 유통 가능한 대마 약품에 대한 정보를 포함한 제품 DB(222)를 포함할 수도 있다. 제품 DB(222)는 표 4에 도시된 항목의 종류를 포함할 수 있다. 이후 서술될 대마에 대한 정보는 표 4에 포함된 적어도 하나의 데이터를 포함할 수도 있다. 또한 제품 DB(222)는 신규 정보에 따라 주기적으로 갱신될 수 있다. 제품 DB(222)의 갱신됨에 따라 의료기관 전자장치(300), 처방 인증서를 저장하고 있는 소비자의 전자장치(400) 또는 처방 인증서를 수신하는 In one embodiment, the
처방 인증서를 저장하고 있는 소비자의 전자장치(400)에 필요한 액션이 수행될 수 있다. 상기 액션은 예를 들어, 알림 동작, 처방 인증서 갱신 동작을 포함할 수 있다.Necessary actions may be performed on the consumer's
상기 유통 단위는 판매 단위일 수도 있다. 상기 판매 단위는 병과 같은 단위 유통 수단, 또는 무게와 같은 단위 수량으로 표현될 수도 있다. 제품은 유통단위별로 시리얼 번호가 부여되어, 동일한 제품에 대해 유통 단위별로 식별될 수도 있다. 예를 들어, 용기별로 시리얼 번호가 부여될 수도 있다. The distribution unit may also be a sales unit. The sales unit may be expressed as a unit distribution means such as a bottle, or a unit quantity such as weight. Products are given serial numbers for each distribution unit, so the same product can be identified by distribution unit. For example, a serial number may be assigned to each container.
일 실시 예에서, 메모리(220)는 대마 약품의 처방 동작을 수행할 권한을 가지는 공인처방의료기관에 대한 정보를 포함한 공인처방기관 DB(224)를 포함할 수도 있다. 공인처방기관DB(2224)는 표 5에 도시된 항목의 데이터를 포함할 수 있다. 하나의 의료기관에 대해 대마 약품의 복용을 보증하는 처방전을 각각 생성 가능한, 복수의 처방 의료진이 존재할 수도 있다. 공인처방기관DB(224)에 기초하여 제품유통관리시스템(200)은 처방 인증서의 발행 여부를 결정할 수 있다. In one embodiment, the
일 실시 예에서, 메모리(220)는 대마 약품에 관한 처방에 대한 정보를 포함한 처방이력 DB(225)를 포함할 수도 있다. 상기 처방이력 DB는 처방전 정보를 포함한 처방이력을 저장한다. 처방이력 DB(225)은 표 6에 도시된 항목의 데이터를 포함할 수 있다.In one embodiment, the
처방 인증서 발행모듈(212)은 메모리(220)에 저장된 제품 DB(222), 공인처방기관DB(224), 및 처방이력 DB(225)를 이용하여 처방 인증서를 발행할 수 있다. 예를 들어, 제품 DB(222), 공인처방기관DB(224), 및 처방이력DB(225)에 포함된 데이터의 적어도 일부를 포함하는 처방 인증서를 생성할 수 있다. 생성된 처방 인증서에 제품유통관리시스템(200)의 디지털 신원 식별자로 디지털 서명을 할 수 있다.The prescription
일 실시 예에서, 제품유통관리시스템(200)은 제품유통관리시스템(200)과 블록체인 네트워크(600)가 통신하기 위한 지갑을 포함할 수 있다. 지갑은 블록체인 네트워크(600)상의 제품유통관리시스템(200)의 계정을 포함할 수 있다. 예를 들어, 제품유통관리시스템(200)은 자신의 개인 키를 메모리(220)에 저장할 수 있다. 제품유통관리시스템(200)가 인증서를 발행할 때 자신의 개인키로 서명을 수행할 수 있다.In one embodiment, the product
다양한 실시 예에서, 상기 지갑은 DID 에이전트(DID agent)를 포함할 수 있다. DID 에이젼트는 블록체인 네트워크(600)상의 DID를 발급 받고, DID를 조회하고, DID를 변경할 수 있다. 처방 인증서 발행모듈(212)은 처방 인증서에 포함된 개인의 DID, 의료기관의 DID, 인증서 발행 사실을 제1 레지스트리(610)에 저장할 수 있다.In various embodiments, the wallet may include a DID agent. The DID agent can receive a DID on the
도 4a 내지 도 4c는, 본 출원의 일 실시 예에 따른 의료기관 전자장치(300), 소비자의 전자장치(400) 및 판매자의 전자장치(500)의 블록도이다.4A to 4C are block diagrams of a medical institution's
일 실시 예에서, 의료기관 전자장치(300)는 프로세서(310), 메모리(320), 통신회로(330), 카메라(340), 입력장치(350) 및 출력장치(360)를 포함할 수도 있다. 프로세서(310)는 의료기관 전자장치(300)의 동작 전반을 제어할 수 있다. 의료기관 전자장치(300)는 통신회로(330)를 통하여 시스템(10)의 다른 주제들(100, 200, 400, 500)과 데이터를 송수신할 수 있다.In one embodiment, the medical institution
일 실시 예에서, 메모리(320)는 제1 어플리케이션(322)을 저장할 수 있다. 의료기관 전자장치(300)는 제1 어플리케이션(322)을 실행시키고, 제1 어플리케이션(322)의 실행 화면을 출력장치(360)를 통하여 출력할 수 있다.In one embodiment, the
제1 어플리케이션(322)은 인증 시스템(10) 상에서 제공되는 인증 서비스를 제공받기 위해, 의료 기관의 신원 인증 기능 및 처방 보고 기능 등을 구동하기 위한 어플리케이션으로 이해될 수 있다. 제1 어플리케이션(322)은 의료기관 인증서 및 처방 인증서의 발행 요청 기능, 소비자 인식 기능 등 처방 인증 서비스를 사용하기 위하여 필요한 기능들을 포함할 수 있다. 제1 어플리케이션(322)은 의료기관의 식별자(예: DID)를 저장할 수 있다. The
일 실시 예에서 메모리(320)는 의료기관 인증서(324), 처방권한 인증서(326), 및 처방 권한 의료진 목록(328)을 저장할 수 있다. 의료기관 인증서(324)는 신원인증시스템(100)에 의하여 발행된 것일 수 있다. 처방권한 인증서(326)는 제품유통관리시스템(300)에 의하여 발행된 것일 수 있다. 처방 권한 의료진 목록(328)은 의료 기관 내에 종사하는 의료인들 중에서 처방 권한이 있는 담당 의료진으로 이루어질 수도 있다. In one embodiment, the
다양한 실시 예에서, 의료기관 전자장치(300)는 카메라(340)를 통해 소비자를 촬영할 수 있다. 예를 들어, 의료기관 전자장치(300)는 카메라(340)를 통해 소비자 개인을 식별할 수 있다.In various embodiments, the medical institution
일 실시 예에서, 소비자의 전자장치(400)는 프로세서(410), 메모리(420), 통신회로(430), 카메라(440), 입력장치(450), 및 출력장치(460)를 포함할 수 있다. 상기 소비자의 전자장치(400)는 의료기관 전자장치(300)와 유사하므로, 차이점을 위주로 서술한다. In one embodiment, the consumer's
일 실시 예에서, 메모리(420)는 제2 어플리케이션(422)을 저장할 수 있다. 소비자의 전자장치(400)는 제2 어플리케이션(422)을 실행시키고, 제2 어플리케이션(422)의 실행 화면을 출력장치(460)를 통하여 출력할 수 있다.In one embodiment, the
제2 어플리케이션(422)은 인증 시스템(10) 상에서 소비자에게 제공되는 신원 인증 기능 및 인증 기반 구매 기능 등을 구동하기 위한 어플리케이션으로 이해될 수 있다.The
일 실시 예에서 메모리(420)는 소비자 신원 인증서(424) 및 처방 인증서(426)를 저장할 수 있다. 소비자 신원 인증서(424)는 신원인증시스템(100)에 의하여 발행된 것일 수 있다. 처방 인증서(426)는 제품유통관리시스템(300)에 의하여 발행된 것일 수 있다.In one embodiment,
소비자 신원 인증서(424) 및 처방 인증서(426)는 소비자의 전자장치(400)내에 저장되고, 신원인증시스템(100), 제품유통관리시스템(200), 및 의료기관 전자장치(300)에 저장되지 않는다. 소비자의 전자장치(400)의 소유자는 일단 인증서를 발급 받은 후에는, 다른 신뢰기관과의 통신 없이 직접 자신의 전자장치(400)에 저장된 인증서를 활용하여 주체적으로 자신의 신원이나 처방 사실 여부를 증명할 수 있다. 또한 소비자의 전자장치(400)는 가공된 인증서를 발행함으로써, 필요한 정보만 포함한 인증서를 생성하고 제3자에게 공유할 수 있다. 이로서 데이터에 대한 개인의 주권이 강화될 수 있다.The
일 실시 예에서, 판매자의 전자장치(500)는 프로세서(510), 메모리(520), 통신회로(530), 카메라(540), 입력장치(550), 및 출력장치(560)를 포함할 수 있다. 상기 판매자의 전자장치(500)는 의료기관 전자장치(300), 소비자의 전자장치(400)와 유사하므로, 차이점을 위주로 서술한다. In one embodiment, the seller's
일 실시 예에서, 메모리(520)는 제3 어플리케이션(522)을 저장할 수 있다. 판매자의 전자장치(500)는 제3 어플리케이션(522)을 실행시키고, 제3 어플리케이션(522)의 실행 화면을 출력장치(560)를 통하여 출력할 수 있다.In one embodiment, the
상기 제3 어플리케이션(522)은 인증 시스템(10) 상에서 판매자 자신의 신원 인증 기능, 인증 기반 판매 기능 등을 구동하기 위한 어플리케이션으로 이해될 수 있다. 특정 실시 예들에서, 상기 판매자의 전자장치(500) 내 제3 어플리케이션(522)은 소비자의 전자장치(400)로부터 획득한 소비자의 신원 인증 기능을 수행할 수도 있다. The
일 실시 예에서 메모리(520)는 판매자 신원 인증서(524) 및 판매권한 인증서(526)를 저장할 수도 있다. 판매자 신원 인증서(524)는 신원인증시스템(100)에 의하여 발행된 것일 수 있다. 판매권한 인증서(526)는 제품유통관리시스템(200)에 의하여 발행된 것일 수 있다.In one embodiment, the
판매자 신원 인증서(524) 및 판매권한 인증서(526)는 판매자의 전자장치(500)내에 저장되고, 신원인증시스템(100), 제품유통관리시스템(200), 및 의료기관 전자장치(300)에 저장되지 않는다. 판매자의 전자장치(500)의 소유자는 일단 인증서를 발급 받은 후에는, 다른 신뢰기관과의 통신 없이 직접 자신의 전자장치(500)에 저장된 인증서를 활용하여 주체적으로 자신의 신원이나 판매 권한을 증명할 수 있다. 또한 판매자의 전자장치(500)는 가공된 인증서를 발행함으로써, 필요한 정보만 포함한 인증서를 생성하고 제3자에게 공유할 수 있다. The
다양한 실시 예에서, 의료기관 전자장치(300)의 메모리(322), 소비자의 전자장치(400)의 메모리(422), 판매자의 전자장치(500)의 메모리(522)는 보안 요소(secure element)(SE)(미도시)를 포함할 수 있다. 예를 들어, 보안 요소는 외부 장치(100, 200, 400, 500)과 직접 통신이 제한될 수 있다. 제1 어플리케이션(322), 제2 어플리케이션(422), 제3 어플리케이션(522)은 보안 요소와 외부 장치(100, 200, 400, 500) 사이의 데이터 송수신을 중계할 수 있다. 다른 예에서, 외부 장치(100, 200, 400)는 통신 회로(330)를 통한 근거리 무선 통신을 통하여 보안 요소와 통신을 수행할 수 있다. In various embodiments, the
전자장치(300, 400, 500)의 식별자는 상기 보안 요소에 저장될 수 있다. 의료기관 인증서(324) 및 처방권한 인증서(326)는 보안 요소에 저장될 수 있다. 소비자 신원 인증서(424) 및 처방 인증서(426)는 보안 요소에 저장될 수 있다. 판매자 신원 인증서(524) 및 판매권한 인증서(526)는 보안 요소에 저장될 수 있다. The identifier of the
이하, 인증 시스템(10)상에서 발행되는 인증서가 W3C 표준 규약에 따른 검증가능한 크레덴셜(이하, VC)인 경우를 예를 들어 설명한다. 또한 VC로부터 가공되어 생성된 인증서를 W3C 표준 규약에 따라 설계된 검증가능한 프레젠테이션(이하, VP)인 경우를 예를 들어 설명한다.Hereinafter, the case where the certificate issued on the
도 5는, 본 출원의 일 실시 예에 따른 신원인증시스템(100)가 소비자의 전자장치(400)에 소비자 신원 인증서를 발급하는 방법에 대한 신호 흐름도이다.Figure 5 is a signal flow diagram of a method by which the
도 5를 참조하면, 소비자의 전자장치(400)는 신원인증시스템(100)에 신원인증VC(상술한, 소비자 신원 인증서) 발행을 요청할 수 있다(S4010).Referring to FIG. 5, the consumer's
상기 동작(S4010)에서 소비자의 전자장치(400)는 제2 어플리케이션(422)를 구동시켜 상기 발행 요청을 신원인증시스템(100)으로 전송할 수 있다. 동작(S4010)에서 소비자의 전자장치(400)는 자신의 DID(이하, 소비자 DID)를 전송할 수 있다. 신원인증시스템(100)은 수신된 소비자 DID를 소비자 DB(122), 블록체인 네트워크(600)를 통해 확인할 수 있다. In the operation S4010, the consumer's
또한, 신원인증시스템(100)은 소비자의 전자장치(400)로 본인 확인 요청을 전송할 수 있다(S4020). 상기 본인 확인 요청은 신원 인증 VC를 발행하기 이전에, 소비자의 전자장치(400)의 소유자가 신원 인증 VC를 발급할 특정 개인인지 여부를 식별하기 위하여 수행될 수 있다.Additionally, the
신원인증시스템(100)은 소비자의 개인 정보를 획득할 수 있다(S4030). 예를 들어 신원인증시스템(100)은 본인 인증 서비스를 제공하는 제3의 서비스로부터 소비자의 전자장치(400)의 소유자의 개인 정보를 소비자의 개인정보로서 획득할 수 있다. 상기 개인 정보는 이름, 성별, 생년월일, 휴대폰번호, 국적, 개인식별번호를 포함할 수 있다(예: 표 1의 데이터). 신원인증시스템(100)은 획득한 개인 정보를 소비자 DB(122)에 저장된 데이터와 비교하고, 양자가 일치하는지 여부를 확인할 수 있다. 이를 통해 신원인증시스템(100)은 신원인증VC 발행 요청이 정당한 사용자에 의한 것인지 여부를 확인할 수 있다. 이러한 동작(S4030)의 확인 결과는 신원인증시스템(100)에 저장될 수도 있다. The
신원인증시스템(100)은 상기 소비자의 전자장치(400)로 신원인증VC를 발행할 수 있다(S4040). 신원인증시스템(100)은 소비자의 전자장치(400)로부터 수신한 개인 DID와 개인 정보를 포함한 신원인증VC를 발행할 수 있다. 신원인증VC는 신원인증시스템(100)의 식별자인 디지털 신원을 위한 식별자(Identifier)로 디지털 서명될 수 있다. 상기 식별자는 예를 들어, 신원인증시스템(100)의 블록체인 네트워크(600)의 계정의 비밀 키(DID)일 수 있다.The
신원인증시스템(100)와 소비자의 전자장치(400)는 상호 데이터 전송을 위한 통신 채널을 형성할 수 있다(S4050). 신원인증시스템(100)은 상기 통신 채널을 통해 신원인증VC를 소비자의 전자장치(400)에 전송할 수 있다(S4060). 소비자의 전자장치(400)는 수신한 신원인증VC를 메모리(420)에 저장할 수 있다. 신원인증VC는 도 2b의 소비자 신원 인증서(424)로 참조될 수 있다.The
일 예에서, 상기 통신 채널은 DID 간 암호화 비밀 통신 채널일 수 있다. 예를 들어, 상기 통신 채널은 DIDComm 통신 채널일 수 있다. 이하, VC가 유통되기 위하여 형성되는 통신 채널은 DID 간 암호화 비밀 통신 채널로 이해될 수 있다. 신원인증VC는 DIDComm 통신 채널을 통해 VC의 발급 대상인 DID를 소유한 소비자의 전자장치(400)의 제2 어플리케이션(422)으로 전달될 수 있다. 예를 들어, 신원인증시스템(100)은 제2 어플리케이션(422)과 연결된 웹 소켓을 이용할 수 있다. 또는 신원인증시스템(100)은 상기 웹소켓이 없는 경우, 제2 어플리케이션(422)에 푸시 알림(push notification)를 보낸 후에 메시지 큐를 이용할 수 있다In one example, the communication channel may be an encrypted secret communication channel between DIDs. For example, the communication channel may be a DIDComm communication channel. Hereinafter, the communication channel formed to distribute VC can be understood as an encrypted secret communication channel between DIDs. The identity authentication VC may be transmitted to the
신원인증시스템(100)은 소비자 DB(122)에 신원인증 VC를 발급한 사용자에 대한 소비자 DB(122)를 갱신개인 정보를 저장할 수 있다(S4070). 예를 들어, 신원인증시스템(100)은 동작(S4010)에서 획득한 DID, 동작(S4030)에서 획득한 개인 정보를 소비자 DB(122)에 저장할 수 있다. 따라서 상기 DID와 상기 개인 정보가 서로 맵핑되어 저장될 수 있다. 또한 소비자 DB(122)에 신원인증VC의 발급 여부를 기록할 수 있다.The
일부 실시 예들에서, 신원인증시스템(100)은 소비자의 전자장치(400)의 제2 어플리케이션(422)으로부터 푸시알림 토큰을 수신 받아 저장할 수 있다(S4080). 신원인증시스템(100)은 푸시알림 토큰 및 제2 어플리케이션(422)을 통해 소비자의 전자장치(400)에 푸시알림을 보낼 수 있다.In some embodiments, the
또한, 일부 실시 예들에서, 소비자의 전자장치(400)에 저장된 푸시알림토큰은 제2 어플리케이션(422)이 구동될 때마다 갱신 사항을 신원인증시스템(100)에 갱신할 수 있다(S4090).Additionally, in some embodiments, the push notification token stored in the consumer's
다양한 실시 예에서, 신원인증시스템(100)은 블록체인 네트워크(600)의 제1 레지스트리(610)에 사용자 DID에 대한 신원인증VC 발급 사실을 기록할 수 있다. 따라서 해당 DID에 대하여 신원인증기관에 의하여 신원인증VC가 발급했다는 사실이 검증될 수 있다.In various embodiments, the
도 5의 소비자 신원 인증서 발급 방법은 의료기관 전자장치(300)에 의료기관 인증서를 발급하는 방법에 유사하게 적용될 수 있다.The consumer identity certificate issuance method of FIG. 5 can be similarly applied to the method of issuing a medical institution certificate to the medical institution
의료기관 전자장치(300)는 의료기관인증VC(상술한 의료기관 인증서) 발행 요청을 요청할 수 있다(예: 동작(S4010)). 의료기관 전자장치(300)는 제1 어플리케이션(322)를 구동시켜 상기 요청을 신원인증시스템(100)으로 전송할 수 있다. 이때, 의료기관 전자장치(300)는 의료기관에 대한 기본 정보 및 제1 어플리케이션(322)에 저장된 의료기관의 DID를 신원인증시스템(100)으로 전송할 수 있다.The medical institution
신원인증시스템(100)은 수신된 기본 정보를 기초로 의료기관DB(124)에 저장된 정보를 비교할 수 있다. 이를 통해 신원인증시스템(100)은 의료기관인증VC 발행 요청이 정당한 사용자에 의한 것인지 여부를 확인할 수 있다. 신원인증시스템(100)은 의료기관DB(124)에 저장된 정보와 수신된 기본 정보가 일치하는 경우 상기 의료기관의 식별자DID 및 신원인증기관의 식별자를 포함한 의료기관인증VC를 발급할 수 있다.The
신원인증시스템(100)와 의료기관 전자장치(300)는 상호 데이터 전송을 위한 통신 채널을 형성할 수 있다(예: 동작 4050). 신원인증시스템(100)은 상기 통신 채널을 통해 의료기관인증VC를 의료기관 전자장치(300)에 전송할 수 있다. 의료기관 전자장치(200)은 수신한 의료기관인증VC를 메모리(320)에 저장할 수 있다. 의료기관 인증VC는 도 4a의 의료기관 인증서(324)로 참조될 수 있다. 신원인증시스템(100)은 의료기관DB(124)에 의료기관인증VC를 발급한 의료기관에 대한 기본 정보 및 의료기관 DID를 맵핑하여 저장할 수 있다(예: 동작 S4070) 또한 의료기관DB(124)에 의료기관인증VC의 발급 여부를 기록할 수 있다.The
다양한 실시 예에서, 신원인증시스템(100)은 블록체인 네트워크(600)의 제1 레지스트리(610)에 의료기관 DID에 대한 의료기관인증VC 발급 사실을 기록할 수 있다. 따라서 해당 DID에 대하여 신원인증기관에 의하여 의료기관인증VC가 발급했다는 사실이 검증될 수 있다.In various embodiments, the
도 5의 소비자 신원 인증서 발급 방법은 판매자의 전자장치(500)에 판매자 인증서를 발급하는 방법에 유사하게 적용될 수 있다.The consumer identity certificate issuance method of FIG. 5 can be similarly applied to the method of issuing a seller certificate to the seller's
판매자의 전자장치(500)는 판매자인증 VC(상술한 판매자 인증서) 발행 요청을 요청할 수 있다(예: 동작(S4010)). 판매자의 전자장치(500)는 제1 어플리케이션(322)를 구동시켜 상기 요청을 신원인증시스템(100)으로 전송할 수 있다. 이때, 판매자의 전자장치(500)는 판매자에 대한 기본 정보 및 제1 어플리케이션(322)에 저장된 판매자의 DID를 신원인증시스템(100)으로 전송할 수 있다.The seller's
신원인증시스템(100)은 수신된 기본 정보를 기초로 판매자DB(126)에 저장된 정보를 비교할 수 있다. 이를 통해 신원인증시스템(100)은 판매자인증VC 발행 요청이 정당한 사용자에 의한 것인지 여부를 확인할 수 있다. 신원인증시스템(100)은 판매자DB(126)에 저장된 정보와 수신된 기본 정보가 일치하는 경우 상기 판매자의 식별자DID 및 신원인증기관의 식별자를 포함한 판매자인증VC를 발급할 수 있다.The
신원인증시스템(100)과 판매자의 전자장치(500)는 상호 데이터 전송을 위한 통신 채널을 형성할 수 있다(예: 동작 S4050). 신원인증시스템(100)은 상기 통신 채널을 통해 판매자인증VC를 판매자의 전자장치(500)에 전송할 수 있다. 판매자 전자장치(200)은 수신한 판매자인증VC를 메모리(520)에 저장할 수 있다. 판매자 인증VC는 도 4c의 판매자 인증서(524)로 참조될 수 있다. 신원인증시스템(100)은 판매자DB(126)에 판매자인증VC를 발급한 판매자에 대한 기본 정보 및 판매자 DID를 맵핑하여 저장할 수 있다(예: 동작 S4070) 또한 판매자DB(126)에 판매자인증VC의 발급 여부를 기록할 수 있다.The
다양한 실시 예에서, 신원인증시스템(100)은 블록체인 네트워크(600)의 제1 레지스트리(610)에 판매자 DID에 대한 판매자인증VC 발급 사실을 기록할 수 있다. 따라서 해당 DID에 대하여 신원인증기관에 의하여 판매자인증VC가 발급했다는 사실이 검증될 수 있다.In various embodiments, the
도 5의 동작 S4080 내지 S4090은 신원인증시스템(100)과 의료기관 전자장치(300)의 제1 어플리케이션(322)의 조합, 또는 신원인증시스템(100)과 판매자의 전자장치(500)의 제3 어플리케이션(522)의 조합을 통해 동일하게 수행될 수 있다. 이를 통해 신원인증시스템(100)은 의료기관 전자장치(300), 판매자의 전자장치(500)에 푸시 알림을 전송할 수 있다.Operations S4080 to S4090 of FIG. 5 are a combination of the
도 6은, 본 출원의 일 실시 예에 따른, 제품유통관리시스템(200)이 의료기관 전자장치(300)에 처방권한 인증서를 발급하는 방법에 대한 신호 흐름도이다. Figure 6 is a signal flow diagram of a method by which the product
처방권한 인증서는 공인처방기관에 발행된다. 상기 공인처방기관은 대마 약품의 처방을 수행할 수 있도록 공식 허가된 의료기관으로 이해될 수도 있다. 공인처방기관의 목록은 미리 지정되어 제품유통관리시스템(200)의 공인처방기관DB(224)에 저장될 수 있다. 공인처방기관은 처방권한 인증서로서 대마 약품 처방이 가능한 의료기관임을 증명할 수 있다.A certificate of prescribing authority is issued to an authorized prescribing agency. The above-mentioned authorized prescribing institution may be understood as a medical institution officially licensed to prescribe cannabis drugs. The list of authorized prescribing agencies may be designated in advance and stored in the authorized prescribing agency DB (224) of the product distribution management system (200). An accredited prescribing institution can prove that it is a medical institution capable of prescribing cannabis drugs with a certificate of prescribing authority.
의료기관 전자장치(300)는 의료기관인증 VC(예: 도 3의 의료기관 인증서(324))를 포함한 공인처방기관VC 발행 요청을 제품유통관리시스템(200)에 전송할 수 있다(S5010). 상기 요청은 의료기관인증 VC(예: 도 3의 의료기관 인증서(324))를 포함할 수 있다. 다양한 실시 예에서, 의료기관 전자장치(300)는 의료기관 DID로 의료기관인증VC에 서명을 수행할 수 있고, 디지털 서명된 의료기관인증VC를 제품유통관리시스템(200)으로 전송할 수 있다. 제품유통관리시스템(200)은 디지털 서명과 의료기관인증 VC에 저장된 의료기관 DID의 일치여부를 확인함으로써, 상기 의료기관인증VC가 그 VC를 소유할 정당한 권한이 있는 자로부터 전송되었는지 여부를 확인할 수 있다. 만약, 타 의료기관이 상기 의료기관인증VC를 가지고 부당한 공인처방기관VC 발행요청을 한 경우에, 동작 S5010에서 수신된 의료기관인증VC에 상기 VC 저장된 의료기관 DID에 의한 서명이 포함되지 않았으므로, 제품유통관리시스템(200)은 VC발행요청을 거부할 수 있다.The medical institution
의료기관 전자장치(300)는 공인처방기관VC를 신청하기 이전에, 도 13을 통해 상술된 방법으로 의료기관인증VC를 발급받을 수 있다. 의료기관 전자장치(300)는 제품유통관리시스템(200)에 의료기관인증VC를 제출함으로써, 신원인증을 수행할 수 있다. 예를 들어, 의료기관의 대표(개인)는 의료기관 전자장치(300)에 제1 어플리케이션(322)을 다운로드 한 후에 의료기관 자신의 DID를 생성할 수 있다. 대표자가 의료기관 전자장치(300)의 제1 어플리케이션(322)을 통해 로컬에서 생성한 DID는 블록체인 네트워크(600)의 제2 레지스트리(620)에 저장 등록될 수 있다. 다양한 실시 예에서, 의료기관 DID는 의료기관의 대표자 개인의 DID로 대체될 수 있다. 이 경우, 의료기관 전자장치(300)는 생성된 DID를 신원인증시스템(100)으로 전송하고, 대표자 개인에 대한 신원인증 VC는 의료기관인증VC로 취급될 수 있다.Before applying for a certified prescribing institution VC, the medical institution
제품유통관리시스템(200)은 수신된 의료기관인증VC를 검증할 수 있다(S5020). 제품유통관리시스템(200)은 의료기관인증VC의 신원인증시스템(100)의 디지털 서명을 검증할 수 있다. 제품유통관리시스템(200)은 블록 체인 네트워크(600)를 통해 개시된 DID 소유자를 확인할 수 있다. 예를 들어, 제품유통관리시스템(200)은 의료기관인증 VC에 서명한 DID가 블록체인 네트워크(600)의 제1 레지스트리(610)에 등록된 신뢰기관의 DID 인지 여부를 확인할 수 있다. The product
제품유통관리시스템(200)은 공인처방기관DB(224)의 정보와 의료기관인증VC의 정보를 비교할 수 있다(S5020). 제품유통관리시스템(200)은 공인처방기관DB(224)에 의료기관인증VC와 일치하는 정보가 있는 경우, VC 신청을 한 의료 기관이 미리 지정된 공인처방기관의 의료기관임을 확인할 수 있다. 제품유통관리시스템(200)은 공인처방기관 VC를 발행할 수 있다(S5030). 공인처방기관VC는 제품유통관리기관의 식별자 및 의료기관의 식별자를 포함할 수 있다.The product
제품유통관리시스템(200)과 의료기관 전자장치(300)는 상호 데이터 전송을 위한 통신 채널을 형성할 수 있다(S5040). 제품유통관리시스템(200)은 상기 통신 채널을 통해 공인처방기관VC를 의료기관 전자장치(300)에 전송할 수 있다(S5050). 의료기관 전자장치(300)는 수신한 공인처방기관VC를 메모리(320)에 저장할 수 있다. 공인처방기관VC는 도 3의 처방권한 인증서(326)로 참조될 수 있다.The product
일 예에서, 동작 S5040의 통신 채널은 암호화 통신 채널일 수 있다. 예를 들어, 상기 통신 채널은 DIDComm 통신 채널일 수 있다. 공인처방기관VC는 DIDComm 통신 채널을 통해 VC의 발급 대상인 DID를 소유한 의료기관 전자장치(300)의 제1 어플리케이션(322)으로 전달될 수 있다. 예를 들어, 제품유통관리시스템(200)은 제1 어플리케이션(322)과 연결된 웹 소켓을 이용할 수 있다. 또는 제품유통관리시스템(200)은 상기 웹소켓이 없는 경우, 제1 어플리케이션(322)에 푸시 알림(push notification)를 보낸 후에 메시지 큐를 이용할 수 있다. In one example, the communication channel of operation S5040 may be an encrypted communication channel. For example, the communication channel may be a DIDComm communication channel. The authorized prescribing agency VC may be transmitted to the
제품유통관리시스템(200)은 VC발급 이력을 공인처방기관DB(224)에 저장할 수 있다(S5060). 다양한 실시 예에서, 제품유통관리시스템(200)은 블록체인 네트워크(600)의 제1 레지스트리(610)에 의료기관 DID에 대한 공인처방기관VC 발급 사실을 기록할 수 있다. 따라서 해당 DID에 대하여 제품유통관리기관에 의하여 공인처방기관VC가 발급했다는 사실이 검증될 수 있다.The product
제품유통관리시스템(200)은 의료기관 전자장치(300)의 제1 어플리케이션(322)으로부터 푸시알림 토큰을 수신 받아 저장할 수 있다(S5070). 제품유통관리시스템(200)은 푸시알림 토큰 및 제1 어플리케이션(322)을 통해 의료기관 전자장치(300)에 푸시알림을 보낼 수 있다.The product
의료기관 전자장치(300)에 저장된 푸시알림토큰은 제1 어플리케이션(322)이 구동될 때마다 갱신 사항을 제품유통관리시스템(200)에 갱신할 수 있다(S5090).The push notification token stored in the medical institution
다양한 실시 예에서, 의료기관인증VC는 의료기관의 대표자 개인의 신원인증VC로 대체될 수 있다. 대표자 개인에 대한 정보는 제품유통관리시스템(200)의 공인처방기관DB(224)에 저장될 수 있다(예: 표 2). 대표자 개인은 자신의 DID로 발급된 신원인증VC를 제출하고, 공인처방기관VC를 발급받을 수 있다.In various embodiments, the medical institution authentication VC may be replaced with the identity authentication VC of the individual representative of the medical institution. Information about the individual representative may be stored in the authorized
도 7은, 본 출원의 일 실시 예에 따른, 제품유통관리시스템(200)에 처방 권한 의료진을 등록하는 방법에 대한 신호 흐름도이다. Figure 7 is a signal flow diagram of a method of registering a medical staff member with prescribing authority in the product
의료기관 전자장치(300)는 해당 의료기관의 의료인들 중 대마 약품의 처방을 담당할 실무자(즉, 처방권한 의료진)에 대한 목록을 관리할 수 있다. 의료기관 전자장치(300)는 처방 권한 의료진 목록(328)에 상기 실무자들에 대한 정보를 저장할 수 있다. 실무자에 대해 변동사항이 발생한 경우, 의료기관 전자장치(300)는 상기 변경 정보를 처방 권한 의료진 목록(328)에 즉시 갱신될 수 있다.The medical institution
의료기관 전자장치(300)는 처방 권한 의료진 목록을 제품유통관리시스템(200)에 전송할 수 있다(S6010). 제품유통관리시스템(200)은 공인처방기관DB(224)를 갱신할 수 있다. 처방 권한 의료진 목록은 의료기관과 맵핑되어 저장될 수 있다.The medical institution
처방 권한 의료진인 의료인은 본인이 소지한 전자장치(300-1)(이하 의료인 전자장치(300-1))에 제1 어플리케이션(322)를 다운로드하고 DID를 생성할 수 있다. 의료인 전자장치(300-1)는 로컬에서 생성한 DID를 블록체인 네트워크(600)에 등록할 수 있다. 의료인 전자장치(300-1)는 의료인에 대한 신원인증VC를 신원인증 서버(100)으로부터 발행 받을 수 있다. 인증 시스템(10)의 인증서비스를 제공받기 위하여, 의료인 전자장치(300-1)에는 제1 어플리케이션(322)이 설치될 수 있다. 의료인 전자장치(300-1)는 도 3의 의료기관 전자장치(300)와 동일한 블록도를 가질 수 있다.A medical professional with prescribing authority can download the
의료인 전자장치(300-1)는 신원인증VC를 제품유통관리시스템(200)으로 전송할 수 있다(S6030). 제품유통관리시스템(200)은 신원인증VC의 신원인증시스템(100)의 디지털 서명을 검증할 수 있다. 제품유통관리시스템(200)은 공인처방기관DB(224)의 실무자 정보와 신원인증VC의 정보를 비교할 수 있다. 제품유통관리시스템(200)은 공인처방기관DB(224)에 신원인증VC와 일치하는 정보가 있는 경우, VC 신청을 한 의료인이 미리 처방권한 의료진으로 인증된 의료인임을 확인할 수 있다(S6040). 제품유통관리시스템(200)은 특정 의료인에 대해 공인처방기관 VC를 발행할 수 있다(S6050). 이 때, 공인처방기관VC는 의료기관의 DID, 의료인의 DID를 포함할 수 있다.The medical personnel electronic device 300-1 may transmit the identity authentication VC to the product distribution management system 200 (S6030). The product
제품유통관리시스템(200)과 의료인 전자장치(300-1)는 상호 데이터 통신을 위한 통신 채널을 형성할 수 있다(S6060). 제품유통관리시스템(200)은 상기 통신 채널을 통해 공인처방기관VC를 의료인 전자장치(300-1)에 전송할 수 있다. 의료인 전자장치(300-1)는 수신한 공인처방기관VC를 메모리(예: 도 3의 메모리(320))에 저장할 수 있다. 공인처방기관VC는 도 3의 처방권한 인증서(326)로 참조될 수 있다.The product
제품유통관리시스템(200)은 VC발급 이력을 공인처방기관DB(224)에 저장할 수 있다(S6080). 다양한 실시 예에서, 제품유통관리시스템(200)은 블록체인 네트워크(600)의 제1 레지스트리(610)에 의료인 DID에 대한 공인처방기관VC 발급 사실을 기록할 수 있다. 따라서 해당 DID에 대하여 제품유통관리기관에 의하여 공인처방기관VC가 발급했다는 사실이 검증될 수 있다.The product
다양한 실시 예에 따라 처방 권한 의료진 목록에서 서 특정 처방 권한 의료진이 삭제된 경우, 의료기관 전자장치(300)는 처방 권한 의료진 삭제 갱신 요청을 제품유통관리시스템(200)으로 송신할 수 있다(S6090). 제품유통관리시스템(200)은 공인처방기관DB(224)에서 상기 실무자를 삭제하고, 삭제된 실무자의 DID를 블록체인 네트워크(600)의 제1 레지스트리(610)에서 삭제되도록 할 수 있다(S6095). 이후에 삭제된 실무자의 DID에 대해 발급된 공인처방기관VC는 사용이 불가능하게 된다. 따라서 의료인 전자장치(300-1)를 통한 처방 인증서 발급은 불가능하게 된다.According to various embodiments, when a specific prescribing authority medical staff member is deleted from the list of prescribing authority medical staff members, the medical institution
도 8은, 본 출원의 일 실시 예에 따른, 처방 인증서를 발급하는 방법에 대한 신호 흐름도이다. Figure 8 is a signal flow diagram of a method for issuing a prescription certificate according to an embodiment of the present application.
상기 처방 인증서는 처방전 내용을 기록한 처방전 정보를 포함한다. 상기 처방 인증서는 상기 처방전 내용에 기록된 대마 약품에 대한 처방대상 소비자의 구매권한 인증서로 활용될 수도 있다. The prescription certificate includes prescription information recording the contents of the prescription. The prescription certificate may be used as a certificate of purchase authority for the consumer prescribed the cannabis medicine recorded in the prescription.
다양한 실시 예에서, 의료기관 전자장치(300) 및 의료인 전자장치(300-1)는 백신 접종 후 처방 인증서 발급을 요청할 수 있는 주체일 수 있다. 도 7을 통해 의료기관 전자장치(300)가 처방 인증서 발급 요청을 수행하는 예시가 도시 되었으나, 의료인 전자장치(300-1)에 동일한 절차가 적용될 수 있다.In various embodiments, the medical institution
의료기관 전자장치(300)는 소비자가 소지한 소비자의 전자장치(400)로부터 신원인증VC를 수신할 수 있다(S7010). 신원인증VC는 개인의 DID의 디지털 서명을 포함할 수 있다. 의료기관 전자장치(300)는 상기 디지털 서명 및 신원인증VC를 통해 소비자를 식별할 수 있다.The medical institution's
의료기관 전자장치(300)는 처방전 정보를 생성할 수도 있다(S7020). 상기 처방전 정보는 처방이 적용될 소비자, 처방 내용을 포함할 수도 있다. 일부 실시 예들에서, 상기 처방전 정보는 소비자의 신원인증 VC를 포함할 수도 있다. The medical institution
상기 처방전 내용은 소비자에게 처방된 대마 약품에 관한 정보, 복용 정보를 포함할 수도 있다. 상기 복용 정보에 의해 소비자에게 요구되는 대마 약품의 최대 수량이 산출된다. 일부 실시 예들에서, 상기 복용 정보는 대마 약품에 관한 정보(예: 표 4의 데이터)를 포함할 수도 있다. The prescription contents may include information about the cannabis medicine prescribed to the consumer and dosage information. The maximum quantity of cannabis medicine required by the consumer is calculated based on the dosage information. In some embodiments, the dosage information may include information about cannabis medications (e.g., data in Table 4).
처방이 완료되면, 의료기관 전자장치(300)는 처방전 정보, 소비자의 신원인증 VC, 의료기관의 공인처방기관VC를 제품유통관리시스템(200)으로 전송하고, 처방인증VC 발급을 요청할 수 있다(S7030). When the prescription is completed, the medical institution's
이 때, 의료기관 전자장치(300)의 의료기관 자신의 사용자 DID로 처방전 정보, 신원인증VC 및 공인처방기관VC에 디지털 서명할 수 있다. 즉, 처방 인증서 발급 요청은 처방전 정보, 소비자의 신원인증 VC, 의료기관의 공인처방기관VC 및 의료기관의 디지털 서명을 포함할 수도 있다.At this time, the medical institution's
제품유통관리시스템(200)은 수신된 정보, 즉 처방인증VC 발급의 요청을 검증할 수 있다. 제품유통관리시스템(200)은 수신된 공인처방기관VC 및 의료기관 전자장치(300)의 디지털 서명을 검증할 수 있다(S7040). 즉 공인처방기관에 의한 디지털 서명인지 여부가 검증될 수 있다.The product
상기 단계(S7040)에서 상기 공인처방기관 VC에 포함된 의료기관의 디지털 서명과 상기 블록체인 네트워크(600)에 저장된 의료기관의 식별자에 기초하여 처방인증VC의 발급 요청이 공인처방기관인 의료기관에 의한 디지털 서명인 것인지 검증된다. 상기 단계(S7040)의 검증에 따라 처방권한 여부가 결정된다. 상기 단계(S7040)에서 공인처방기관에 의한 디지털 서명이 검증된 경우, 처방권한이 있는 것으로 판단된다. 반면, 검증이 실패되면 처방권한이 없는 의료기관의 요청인 것으로 판단된다. In the step (S7040), a request for issuance of a prescription certification VC based on the digital signature of the medical institution included in the VC of the certified prescribing institution and the identifier of the medical institution stored in the
다양한 실시 예에서, 제품유통관리시스템(200)은 수신된 처방전 정보 내 대마 약품과 제품 DB(222)를 비교하여 처방된 대마 약품이 유통 관리 대상에 해당하는 올바른 대마 약품인지 여부를 확인할 수 있다. In various embodiments, the product
또한, 제품유통관리시스템(200)은 수신된 신원인증VC가 유효한 지 여부를 확인할 수 있다. 해당 정보에 보완이 필요하다고 판단된 경우, 제품유통관리시스템(200)은 의료기관 전자장치(300)로 보완 요청을 전송할 수 있다.Additionally, the product
수신된 정보에 대한 검증이 완료되면, 제품유통관리시스템(200)은 처방인증VC를 발행할 수 있다(S7050). 제품유통관리시스템(200)은 발행된 처방인증VC를 소비자의 전자장치(400)로 전송할 수 있다. 소비자의 전자장치(400)는 처방인증VC를 저장할 수도 있다. 처방인증VC는 처방 인증서(426)로 참조될 수 있다.When verification of the received information is completed, the product
소비자의 전자장치(400)의 사용자는 제2 어플리케이션(422)를 통해, 처방 내용에 대한 상세 정보 확인할 수 있다. 처방 인증서(426)는 처방된 대마 약품 종류, 복용 정보, 처방 일자, 처방 시간, 처방을 수행한 의료기관 정보, 담당 의료인 정보 등을 포함할 수도 있다. The user of the consumer
제품유통관리시스템(200)은 처방이력 DB(225)에 해당 처방 이력을 저장할 수 있다.The product
도 9는, 본 출원의 일 실시 예에 따른, 제품유통관리시스템(200)이 판매자의 전자장치(500)에 판매권한 인증서를 발급하는 방법에 대한 신호 흐름도이다. Figure 9 is a signal flow diagram of a method by which the product
판매권한 인증서는 공인판매자에게 발행된다. 상기 공인판매자는 대마 약품 등의 관리대상 제품의 판매를 수행할 수 있도록 공식 허가된 사람 또는 상점으로 이해될 수도 있다. 공인판매자의 목록은 미리 지정되어 제품유통관리시스템(200)의 공인판매자 DB(226)에 저장될 수 있다. 공인판매자는 판매권한 인증서로서 대마 약품을 판매할 수 있는 주체임을 증명할 수 있다.A sales authorization certificate is issued to authorized sellers. The authorized seller may be understood as a person or store officially licensed to sell controlled products such as cannabis drugs. The list of authorized sellers may be designated in advance and stored in the authorized
판매자의 전자장치(500)는 판매자 인증 VC(예: 도 4c의 판매자 인증 VC(예: 판매자 인증서(524))를 포함한 공인판매자 인증 VC 발행 요청을 제품유통관리시스템(200)에 전송할 수 있다(S8010). The seller's
다양한 실시 예에서, 판매자의 전자장치(500)는 판매자 DID로 판매자 인증 VC에 서명을 수행할 수 있고, 디지털 서명된 판매자인증VC를 제품유통관리시스템(200)으로 전송할 수 있다. 상기 요청은 판매자 인증 VC(예: 도 4c의 판매자 인증서(524))를 포함할 수 있다. 판매자의 전자장치(500)에서 상기 판매자의 신원인증 VC 를 상기 판매자의 식별자로 디지털 서명하여 공인판매자VC 발급을 요청할 수도 있다.In various embodiments, the seller's
공인판매자VC는 이를 소지한 주체가 대마 약품을 판매할 정당한 권한이 있는 것을 증명하는, 판매권한 인증서이다. Authorized Seller VC is a sales authority certificate that proves that the entity holding it has the legitimate authority to sell cannabis drugs.
제품유통관리시스템(200)은 판매자의 디지털 서명과 판매자인증VC에 저장된 판매자 DID의 일치 여부를 확인함으로써, 상기 판매자인증VC가 그 VC를 소유할 정당한 권한이 있는 자로부터 전송되었는지 여부를 확인할 수 있다. 만약, 타 판매자가 상기 판매자인증VC를 가지고 부당한 판매권한인증서인, 부당한 공인판매자VC 발행을 요청한 경우에, 동작 S8010에서 수신된 판매자인증VC에는 판매자 DID에 의한 서명이 포함되지 않았으므로, 제품유통관리시스템(200)은 공인판매자VC발행요청을 거부할 수 있다.The product
판매자의 전자장치(500)는 공인판매자VC를 신청하기 이전에, 도 5를 통해 상술된 방법으로 판매자인증VC를 발급받을 수 있다. 그러면, 판매자의 전자장치(500)는 제품유통관리시스템(200)에 판매자인증VC를 제출함으로써, 신원인증을 수행할 수 있다. 예를 들어, 판매자의 대표(개인)는 판매자의 전자장치(500)에 제3 어플리케이션(522)을 다운로드 한 후에 판매자 자신의 DID를 생성할 수 있다. 대표자가 판매자의 전자장치(500)의 제3 어플리케이션(522)을 통해 로컬에서 생성한 DID는 블록체인 네트워크(600)의 제2 레지스트리(620)에 저장 등록될 수 있다. 다양한 실시 예에서, 판매자 DID는 판매자의 대표자 개인의 DID로 대체될 수 있다. 이 경우, 판매자의 전자장치(500)는 생성된 DID를 신원인증시스템(100)으로 전송하고, 대표자 개인에 대한 신원인증 VC는 판매자인증VC로 취급될 수 있다.Before applying for an authorized seller VC, the seller's
제품유통관리시스템(200)은 수신된 판매자인증 VC를 검증할 수 있다(S8020). 제품유통관리시스템(200)은 수신된 판매자인증 VC를 검증하기 위해, 판매자인증VC의 신원인증시스템(100)의 디지털 서명을 검증할 수 있다. 제품유통관리시스템(200)은 블록체인 네트워크(600)를 통해 개시된 DID 소유자를 확인할 수 있다. 예를 들어, 제품유통관리시스템(200)은 판매자인증 VC에 서명한 DID가 블록체인 네트워크(600)의 제1 레지스트리(610)에 등록된 신뢰기관의 DID 인지 여부를 확인할 수 있다. The product
제품유통관리시스템(200)은 공인판매자 DB(226)의 정보와 판매자인증VC의 정보를 비교할 수 있다(S8020). 제품유통관리시스템(200)은 공인판매자DB(226)에 판매자인증VC와 일치하는 정보가 있는 경우, 단계(S8010)의 VC의 발급을 요청한 판매자가 미리 지정된 공인판매자인 것을 확인할 수 있다. 상기 일치하는 정보는, 예를 들어 판매자의 식별자일 수도 있다. The product
제품유통관리시스템(200)은 미리 지정된 공인판매자에 해당한 판매자에게 공인판매자VC를 발행할 수 있다(S8030). 공인판매자VC는 제품유통관리기관의 식별자 및 판매자의 식별자를 포함할 수도 있다. The product
제품유통관리시스템(200)과 판매자의 전자장치(500)는 상호 데이터 전송을 위한 통신 채널을 형성할 수 있다(S8040). 제품유통관리시스템(200)은 상기 통신 채널을 통해 공인판매자VC를 판매자의 전자장치(500)에 전송할 수 있다(S8050). 판매자의 전자장치(500)는 수신한 공인판매자VC를 메모리(520)에 저장할 수 있다. 공인판매자VC는 도 4c의 판매권한 인증서(526)로 참조될 수 있다.The product
일 예에서, 동작 S8040의 통신 채널은 암호화 통신 채널일 수 있다. 예를 들어, 상기 통신 채널은 DIDComm 통신 채널일 수 있다. 공인판매자VC는 DIDComm 통신 채널을 통해 VC의 발급 대상인 DID를 소유한 판매자의 전자장치(500)의 제3 어플리케이션(522)으로 전달될 수 있다. 예를 들어, 제품유통관리시스템(200)은 제3 어플리케이션(522)과 연결된 웹 소켓을 이용할 수 있다. 또는 제품유통관리시스템(200)은 상기 웹소켓이 없는 경우, 제3 어플리케이션(522)에 푸시 알림(push notification)를 보낸 후에 메시지 큐를 이용할 수 있다. In one example, the communication channel of operation S8040 may be an encrypted communication channel. For example, the communication channel may be a DIDComm communication channel. The authorized seller VC may be transmitted to the
제품유통관리시스템(200)은 공인판매자 VC발급 이력을 공인판매자 DB(226)에 저장할 수도 있다(S8060)The product
다양한 실시 예에서, 제품유통관리시스템(200)은 블록체인 네트워크(600)의 제1 레지스트리(610)에 의료기관 DID에 대한 공인처방기관VC 발급 사실을 기록할 수 있다. 따라서 해당 DID에 대하여 제품유통관리기관에 의하여 공인처방기관VC가 발급했다는 사실이 검증될 수 있다.In various embodiments, the product
제품유통관리시스템(200)은 판매자의 전자장치(500)의 제3 어플리케이션(522)으로부터 푸시알림 토큰을 수신 받아 저장할 수 있다(S8070). 제품유통관리시스템(200)은 푸시알림 토큰 및 제3 어플리케이션(522)을 통해 판매자의 전자장치(500)에 푸시알림을 보낼 수 있다.The product
판매자의 전자장치(500)에 저장된 푸시알림 토큰은 제3 어플리케이션(522)이 구동될 때마다 갱신 사항을 제품유통관리시스템(200)에 갱신할 수 있다(S8090).The push notification token stored in the seller's
다양한 실시 예에서, 판매자인증VC는 판매자의 대표자 개인의 신원인증VC로 대체될 수도 있다. 대표자 개인에 대한 정보는 제품유통관리시스템(200)의 공인판매자DB(226)에 저장될 수 있다(예: 표 3). 대표자 개인은 자신의 DID로 발급된 신원인증VC를 제출하고, 공인판매자VC를 발급받을 수 있다.In various embodiments, the seller authentication VC may be replaced with the identity authentication VC of the seller's representative. Information about the individual representative may be stored in the authorized
인증 시스템(10)에서 발행한 처방 인증서, 판매권한 인증서는 공인판매자로부터 이미 구매가 허가된 소비자로만 대마 약품이 유통되는데 활용된다.Prescription certificates and sales authorization certificates issued by the
관리대상제품(대마약품) 구매Purchase of products subject to management (cannabis)
도 10은, 본 출원의 또 다른 일 측면에 따른, 대마약품을 구매하는 방법의 신호 흐름도이다. Figure 10 is a signal flow diagram of a method of purchasing cannabis medicine according to another aspect of the present application.
처방을 미리 받은 소비자는 자신의 전자장치(400)에 처방 인증서(426)를 소지한 상태이다. 이에 대해서는 도 8등을 참조해 전술하였는 바, 자세한 설명은 생략한다. A consumer who has received a prescription in advance holds a
소비자의 전자장치(400)의 제2 어플리케이션(422)을 통해 대마 약품에 대한 처방 여부에 대한 인증을 요구하는 주체에 대해 처방 여부를 인증할 수 있다. Through the
도 10은 소비자와 판매자 사이에 대마 약품에 대해 처방 여부를 인증하는 예시를 도시한다. 처방 인증 기능을 제공하는 제3 어플리케이션(522)이 설치된 전자장치(500)를 소지한 주체는 상기 인증을 수행할 수 있다.Figure 10 shows an example of authenticating whether a cannabis drug is prescribed between a consumer and a seller. A subject possessing an
소비자의 전자장치(400)와 판매자의 전자장치(500) 사이에 대마 약품 구매 권한이 있는 지에 대한 구매권한 인증 요청이 발생할 수 있다(S9010). 일부 실시 예들에서, 상기 구매권한 인증 요청은 스캔 동작을 통해 구현될 수도 있다. 예를 들어, 소비자의 전자장치(400)는 제2 어플리케이션(422)를 실행하여 구매권한 인증을 요청하는 화면을 출력하고 판매자의 전자장치(500)는 제3 어플리케이션(522)를 실행하여 상기 소비자의 전자장치(400)의 화면을 스캔하여 구매권한 인증 요청을 발생시키거나, 또는 판매자의 전자장치(500)는 제3 어플리케이션(522)를 실행하여 구매권한 인증 요청을 획득하는 화면을 출력하고 소비자의 전자장치(400)는 제2 어플리케이션(422)를 실행하여 상기 판매자의 전자장치(500)의 화면을 스캔하여 구매권한 인증 요청을 발생시킬 수도 있다. A purchase authority authentication request may occur between the consumer's
인증 요청이 발생되면, 소비자의 전자장치(400)와 판매자의 전자장치(500)는 통신 채널을 형성할 수 있다(S9020). When an authentication request is generated, the consumer's
상기 소비자의 전자장치(400)에서 관리대상 제품의 구매권한 여부에 대한 VP를 생성할 수 있다(S9030). 상기 소비자의 전자장치(400)는 대마 약품에 대한 처방 여부에 대한 VP를 생성할 수도 있다(S9030). 처방 인증서(426)는 구매가 이미 허용된 대마 약품과 연관된 다양한 정보를 포함하므로, 소비자의 전자장치(400)는 처방 인증서(426)에 포함된 일부 정보만을 포함하는 가공된 처방 인증서를 발행하거나, 또는 처방 인증서(426) 전부를 발행할 수도 있다. 가공된 처방 인증서는 상술한 바와 같이 VP로 참조될 수도 있다. The consumer's
다양한 실시 예에서, 소비자의 전자장치(400)는 소비자의 신원인증VC 와 처방 인증VC 에 포함되는 정보들 중에서 선택한 일부 정보만을 포함하는 VP를 발행할 수 있다(S9050). In various embodiments, the consumer's
다양한 실시 예에서, 소비자의 전자장치(400)는 소비자의 신원인증VC 와 처방인증VC 중 대마약품 처방여부만을 포함하는 VP를 발행할 수 있다. 예를 들어, 소비자의 전자장치(400)는 대마 약품 처방 여부에 대한 정보만을 포함하는 VP를 발행할 수 있다(S9050). 소비자의 전자장치(400)는 소비자의 전자장치(400)에 저장된 처방인증VC의 적어도 일부의 정보에 대해 소비자의 식별자로 디지털 서명을 할 수 있다. 구체적으로, 소비자의 전자장치(400)는 대마약품 처방 여부에 대한 정보와 소비자의 디지털 서명을 포함하는 VP를 생성할 수 있다. 상기 VP는 처방인증VC에 포함된 제품유통관리기관의 디지털 서명, 처방인증VC에 포함된 소비자의 식별자 정보 및 소비자의 디지털 서명을 포함할 수 있다.In various embodiments, the consumer's
인증 요청의 종류에 따라, VP에 포함되는 정보는 상이해질 수 있다. 여기서, 인증 요청의 종류는 판매자가 검증을 위해 요구하는 정보(예컨대, 폐에 연관된 주체들의 디지털 서명)에 기초한다. 복수의 주체에 의해 발행된 VC들로 VP를 구성하는 경우, 상기 VP는 복수의 주체들의 디지털 서명을 모두 포함할 수 있다. Depending on the type of authentication request, information included in the VP may vary. Here, the type of authentication request is based on the information the seller requires for verification (eg, digital signatures of subjects associated with the lung). When a VP is composed of VCs issued by multiple entities, the VP may include all digital signatures of the multiple entities.
소비자의 전자장치(400)는 대마약품 처방 여부를 요구하거나, 또는 소비자의 신원 정보 및 대마약품 처방 여부 모두를 요구하는 주체에 대해 해당 VP를 전송할 수 있다(S9055). 예를 들어, 소비자의 전자장치(400)는 대마약품 처방 여부에 대한 VP를 판매자의 전자장치(500)로 전송할 수 있다(S9055). The consumer's
판매자의 전자장치(500)는 단계(S9055)에서 수신된 VP를 검증할 수 있다(S9060). The seller's
상기 단계(S9060)에서 판매자의 전자장치(500)는 수신된 인증서를 검증하는 동안의 대기 화면을 표시할 수도 있다. 판매자의 전자장치(500)는 블록체인 네트워크(600)의 제1 ID레지스트리(610)에 저장된 제품유통관리기관의 식별자와 상기 단계(S9055)에서 수신된 VP에 포함된 제품유통관리기관의 디지털 서명을 기초로 정당한 제품유통관리기관에 의하여 발급된 처방인증VC임을 검증할 수 있다. 판매자의 전자장치(500)는 소비자의 디지털 서명과 처방인증VC에 포함된 소비자의 식별자 정보를 기초로 소비자에 대해 발급된 처방인증VC임을 검증할 수 있다.In step S9060, the seller's
검증이 성공되면, 판매자의 전자장치(500)는 VP에 포함된 대마약품 처방 여부에 대한 데이터를 획득할 수 있다. 또한, 일부 실시 예들에서, 상기 VP는 상기 처방인증VC에 포함된 처방전 정보 중 일부 또는 전부를 포함할 수도 있다. 그러면, 상기 판매자의 전자장치(500)는 처방전 정보 중 일부 또는 전부를 획득할 수도 있다. If verification is successful, the seller's
VP는 제품유통관리기관에 의하여 디지털 서명되어 있으므로 소비자의 구매 권한이 검증되는 바, 판매자의 전자장치(500)는 소비자의 구매 권한의 유효성을 신뢰할 수 있다. 또한, 판매자는 VP에 포함된 데이터를 신뢰할 수 있게 된다. 이와 같이 대마약품 처방 여부에 대한 정보, 구매 대상 또는 규모에 대한 정보만을 인증하는 영지식 증명(zero-knowledge proof)을ㄹ 사용함으로써 개인 정보의 노출을 최소화할 수 있다. Since the VP is digitally signed by the product distribution management agency, the consumer's purchasing authority is verified, and the seller's
단계(S9060)에서 검증이 성공되면, 판매자와 소비자 간의 거래 프로세스가 진행될 수도 있다. 상기 거래 프로세스는 대마약품 거래를 위한 판매자의 전자장치(500)와 소비자의 전자 장치(400) 간의 미리 설정된 일련의 동작으로 이루어질 수도 있다. If verification is successful in step S9060, the transaction process between the seller and the consumer may proceed. The transaction process may consist of a series of preset operations between the seller's
예를 들어, 판매자는 처방 인증서에 포함된, 처방 내용에 따른 수량만큼의 대마 약품을 소비자에게 판매할 수도 있다. 소비자는 처방 내용에 따른 수량만큼의 대마 약품을 구매할 수도 있다(S9080). For example, a seller may sell cannabis medicine to a consumer in the quantity according to the prescription included in the prescription certificate. Consumers can also purchase cannabis medicine in the quantity according to the prescription (S9080).
일부 실시 예들에서, 상기 판매자의 전자장치(500)는 제품유통관리시스템(200)에 상기 대마약품 처방 여부에 대한 VP의 유효성에 대한 검증 요청을 전송할 수도 있다(S9070). In some embodiments, the seller's
상기 제품유통관리시스템(200)은 거래이력 DB(227)에 동일한 소비자의 구매 이력 중 동일한 처방 인증서에 기반한 구매 이력이 이미 존재하는지 확인하는, 검증 동작을 수행한다(S9075). The product
상기 단계(S9075)에서 검증 동작은 대마약품 처방 여부에 대한 VP의 데이터에 매칭하는 구매 이력을 검색하는 것으로 수행될 수도 있다. 상기 단계(S9075)의 검증 동작은 단계(S9040, S9060)에서 디지털 서명을 이용한 검증 동작과 다른 방식으로 구현될 수 있다. In the above step (S9075), the verification operation may be performed by searching for purchase history matching the VP's data on whether cannabis drugs are prescribed. The verification operation of step S9075 may be implemented in a different manner from the verification operation using a digital signature in steps S9040 and S9060.
예를 들어, 처방 내용(예컨대, 처방 시간), 소비자의 식별자, 처방 의료기관 식별자가 매칭한 구매 이력이 검색된 경우, 제품유통관리시스템(200)은 검증 실패로 결정한다. 검증 실패는 동일 판매자 또는 다른 판매자에서 대마 약품의 구매를 위해 이미 활용된 처방 인증서가 재-활용된, 유효하지 않은 처방 인증서에 기반한 구매 시도를 의미한다. For example, if a purchase history matching the prescription content (eg, prescription time), consumer identifier, and prescribing medical institution identifier is searched, the product
상기 제품유통관리시스템(200)은 대마약품 처방 여부에 대한 VP의 유효성에 대한 검증 결과를 판매자의 전자장치(500)로 전송한다(S9075). 판매자의 전자 장치(500)는 단계(S9075) 및 단계(S9060)의 검증을 모두 성공한 경우에 한해 처방 내용에 따른 수량만큼의 대마 약품을 소비자에게 판매할 수도 있다. The product
특정 실시 예들에서, 통신 채널의 형성(S9020) 이후 대마 약품에 대한 처방 여부에 대한 VP를 판매자의 전자장치(500)로 전송하기 이전에, 판매자의 전자장치(500)는 판매자가 판매권한을 갖는 지 여부에 대한 VP를 추가로 생성할 수도 있다(S9030). In certain embodiments, after forming a communication channel (S9020) and before transmitting a VP regarding whether to prescribe a cannabis drug to the seller's
판매권한을 미리 받은 판매자는 자신의 전자장치(500)에 판매권한 인증서(526)를 소지한 상태이다. 이에 대해서는 도 9 등을 참조해 전술하였는 바, 자세한 설명은 생략한다. A seller who has received sales authorization in advance holds a
상기 판매권한에 대한 VP의 생성은 비-공인된 판매자에게 자신의 구매권한에 대한 VP가 공유되는 지 확인하고자 하는 소비자의 제공 요청에 의해 수행되거나 상기 구매권한에 대한 VP의 생성과 병렬적으로 수행될 수도 있다. The creation of the VP for the selling authority is performed at the request of a consumer who wants to check whether the VP for his or her purchasing authority is shared with a non-authorized seller, or is performed in parallel with the creation of the VP for the purchasing authority. It could be.
상기 관리대상 제품의 구매권한 여부에 대한 VP는 소비자의 신원인증VC 와 처방 인증VC 에 포함되는 정보들 중에서 일부 또는 전부를 포함할 수도 있다. 판매권한 인증서(526)는 공인판매자에 연관된 다양한 정보를 포함하므로, 판매자의 전자장치(500)는 판매권한 인증서(526)에 포함된 일부 정보만을 포함한 가공된 판매권한 인증서를 발행하거나, 또는 판매권한 인증서(526) 전부를 발행할 수도 있다. 가공된 판매권한 인증서는 상술한 바와 같이 VP로 참조될 수도 있다. The VP regarding the right to purchase the product subject to management may include some or all of the information included in the consumer's identity authentication VC and prescription authentication VC. Since the selling
다양한 실시 예에서, 판매자의 전자장치(500)는 판매자의 신원인증VC 와 공인판매자VC에 포함되는 정보들 중에서 선택한 일부 정보만을 포함하는 VP를 발행할 수 있다(S9030). 예를 들어, 판매자의 전자장치(500)는 판매권한 여부에 대한 정보만을 포함한 VP를 발행할 수 있다(S9030). 판매자의 전자장치(500)는 판매자의 전자장치(500)에 저장된 공인판매자VC의 적어도 일부의 정보에 대해 판매자의 식별자로 디지털 서명을 할 수 있다. 구체적으로, 판매자의 전자장치(500)는 판매권한 소지 여부에 대한 정보와 판매자의 디지털 서명을 포함하는 VP를 생성할 수 있다. 상기 VP는 공인판매자VC에 포함된 제품유통관리기관의 디지털 서명, 공인판매자VC에 포함된 판매자의 식별자 정보 및 판매자의 디지털 서명을 포함할 수 있다.In various embodiments, the seller's
판매자의 전자장치(500)는 판매권한 여부를 요구하거나, 또는 판매자의 신원 정보 및 판매권한 여부 모두를 요구하는 주체에 대해 해당 VP를 추가로 전송할 수 있다(S9035).The seller's
예를 들어, 판매자의 전자장치(500)는 대마약품의 판매권한을 갖는 지 여부에 대한 VP를 소비자의 전자장치(400)로 추가로 전송할 수 있다(S9035). 소비자의 전자장치(400)는 수신된 VP를 추가로 검증할 수 있다(S9040). For example, the seller's
상기 단계(S9040)의 검증은 상기 단계(S9060)의 검증 동작과 유사한 방식으로 구현된다. 상기 단계(S9040)에서 소비자의 전자장치(400)는 수신된 인증서를 검증하는 동안의 대기 화면을 표시할 수도 있다. 소비자의 전자장치(400)는 블록체인 네트워크(600)의 제1 ID레지스트리(610)에 저장된 제품유통관리기관의 식별자와 상기 VP에 포함된 제품유통관리기관의 디지털 서명을 기초로 정당한 제품유통관리기관에 의하여 발급된 공인판매자VC임을 검증할 수 있다. 소비자의 전자장치(400)는 판매자의 디지털 서명과 공인판매자VC에 포함된 판매자의 식별자 정보를 기초로 판매자에 대해 발급된 공인판매자VC임을 검증할 수 있다.The verification of step S9040 is implemented in a similar manner to the verification operation of step S9060. In step S9040, the consumer's
검증이 완료되면, 소비자의 전자장치(400)는 VP에 포함된 대마약품 판매권한 여부에 대한 데이터를 획득할 수 있다. VP는 제품유통관리기관에 의하여 디지털 서명되어 있으므로 판매자의 판매 권한이 검증되는 바, 소비자의 전자장치(400)는 판매 권한의 유효성이 신뢰되는 판매자에게만 자신의 처방 인증서를 전송할 수 있다. 또한, 소비자는 VP에 포함된 데이터를 신뢰할 수 있게 된다. 이와 같이 대마약품 판매권한 여부에 대한 정보만을 인증하는 영지식 증명(zero-knowledge proof)을 사용함으로써 개인 정보의 노출을 최소화할 수 있다. Once verification is completed, the consumer's
그러면, 상기 단계(S9050)에서의 대마 약품의 처방 여부에 대한 VP를 생성 동작은 상기 단계(S9040)의 검증 동작 이후에 수행될 수도 있다. 또는 상기 단계(S9050)에서 상기 단계(S9040)의 VP 생성 동작과 병렬적으로 상기 단계(S9050)의 VP를 생성한 뒤 상기 단계(S9055)의 상기 대마 약품의 처방 여부에 대한 VP의 전송 동작은 상기 단계(S9040)의 검증 동작 이후에 수행될 수도 있다. Then, the operation of generating a VP regarding whether a cannabis medicine is prescribed in the step (S9050) may be performed after the verification operation of the step (S9040). Or, in the step (S9050), the VP of the step (S9050) is generated in parallel with the VP creation operation of the step (S9040), and then the VP transmission operation of whether the cannabis medicine is prescribed in the step (S9055) is It may also be performed after the verification operation of step S9040.
상기 단계(S9060)를 통해 소비자의 구매권한이 검증된 소비자에 대해, 상기 판매자의 전자장치(500)와 소비자의 전자장치(400)는 대마 약품과 구매 금액을 교환하는, 대마 약품의 거래 동작이 수행될 수도 있다(S9080). For a consumer whose purchase authority has been verified through the step (S9060), the seller's
특정 실시 예들에서, 상기 단계(S9080)에서 소비자의 전자장치(400)와 판매자의 전자장치(500) 간의 거래 동작은 상기 거래 시스템(1010)을 통해 수행될 수도 있다. 이 경우, 대마 약품의 결제 수단은 상기 거래 시스템(1010)의 블록체인 기반 통화 토큰일 수도 있다. 또한, 대마 약품의 전달은 대마 약품에 대응한 자산 지분 토큰의 이체로 구현될 수도 있다. 그러면, 대마 약품의 거래는 자산 지분 토큰과 통화 토큰의 교환으로 구현될 수도 있다. 이러한 대마 약품의 전달 내용은 거래이력으로 거래 시스템(10)에 기록되어 대마유통관리시스템(200)에서 추적할 수 있다. In certain embodiments, in step S9080, a transaction operation between the consumer's
이에 대해서는 아래의 상기 거래 시스템(1010)을 참조해 보다 상세히 서술한다. This will be described in more detail with reference to the
블록체인 기반 거래 시스템Blockchain-based transaction system
도 11a 및 도 11b는, 본 출원의 일 측면에 따른, 블록체인 기반 거래 시스템의 개략도이다. 도 11b는, 다양한 실시 예에 따른 도 11a의 거래 시스템을 설명하기 위한 도면이다. 도 12은 다양한 실시 예에 따른 블록체인 네트워크의 구조를 설명하기 위한 도면이다. 도 13은, 본 출원의 일 실시 예에 따른 거래소 서버의 블록도이다.11A and 11B are schematic diagrams of a blockchain-based transaction system, according to one aspect of the present application. FIG. 11B is a diagram for explaining the transaction system of FIG. 11A according to various embodiments. Figure 12 is a diagram to explain the structure of a blockchain network according to various embodiments. Figure 13 is a block diagram of an exchange server according to an embodiment of the present application.
도 11a를 참조하면, 일 실시 예에 따른 자산 거래 서비스를 제공하는 거래 시스템(1010)은 블록체인 네트워크(1100), 거래소 서버(1200), 분산 저장소(distributed storage)(1300)를 포함할 수 있다.Referring to FIG. 11A, a
특정 실시 예들에서, 상기 블록체인 네트워크(1100)는 상기 인증 시스템(10)의 블록체인 네트워크(1100)일 수도 있다. 이 경우, 블록체인 네트워크(1100)에는 인증서 발행 및 대마 약품의 유통(즉, 거래) 이력이 기록될 수도 있다. In certain embodiments, the
거래 시스템(1010)은 디앱(Dapp, decentralized application)(70)을 통하여 사용자에게 자산 거래 서비스를 제공할 수 있다. 사용자는 예를 들어, 사용자의 단말(예: PC, 스마트폰 등의 전자 장치)의 디앱(1070)을 실행하고 자산 거래 서비스를 이용할 수 있다. The
자산 거래 서비스란, 부동산, 미술 작품, 결제 수단을 통해 유통 가능한 기타 제품과 같은 자산에 대한 교환 거래를 제공하는 서비스로 참조될 수 있다. 예를 들어, 거래 시스템(1010)은 자산을 토큰화하고, 그 토큰을 발행하고 관리함으로써 자산에 대한 교환 거래 서비스를 제공할 수 있다.Asset trading services can be referred to as services that provide exchange transactions for assets such as real estate, works of art, and other products that can be distributed through payment methods. For example,
다양한 실시 예에서, 거래 시스템(1010)에 의하여 제공되는 거래 서비스는 서로 다른 종류의 토큰 간의 교환 거래로 확장될 수 있다. 예를 들어, 서로 다른 스마트컨트랙트를 통하여 발행되는 서로 다른 토큰 간의 교환 거래 서비스는 본 발명에 따른 거래 시스템(1010)에 의하여 제공될 수 있다.In various embodiments, transaction services provided by the
다양한 실시 예에서, 본 문서에서 개시되는 거래 시스템(1010)은 통상의 기술자에 의하여 자산 외의 다른 재화에 대한 교환 서비스에도 확장되어 적용될 수 있다. 예를 들어, 거래 시스템(1010)은 서로 다른 암호화 통화 자체 사이의 상호 교환 거래 서비스를 제공할 수 있다. 서로 다른 토큰간의 교환 거래는 서로 다른 암호화 통화간의 교환 거래에 마찬가지로 적용될 수 있다. 다른 예에서, 거래 시스템(1010)은 채권, 증권, 특허권, 상표권 등의 채권적 권리를 토큰화하고, 그 토큰을 발행하고 관리함으로써 상기 권리들에 대한 교환 거래 서비스를 제공할 수 있다.In various embodiments, the
일 실시 예에서, 거래 시스템(1010)은 자산에 대응되는 토큰을 발행할 수 있다. 대마 약품과 같은 자산은 토큰화 되어 거래 시스템(1010)에 의하여 거래될 수 있다. 이하, 토큰화된 자산은 자산 지분 토큰(asset share token)으로 참조될 수 있다. 예를 들어, 사용자는 팔고자 하는 자산을 등록하고, 상기 자산에 대응되는 자산 지분 토큰들을 받을 수 있다.In one embodiment, the
또한, 거래 시스템(1010)은 거래 서비스에서 이용되는 통화에 대응되는 토큰을 발행할 수 있다. 이하, 상기 토큰은 통화 토큰(currency token)으로 참조될 수 있다.Additionally, the
일부 실시 예들에서, 상기 통화 토큰은 법정화폐 고정 토큰(dFIAT)일 수도 있다. 상기 거래 시스템(1010)의 오프체인 시스템은 기존 은행 시스템과 연동하여 법정화폐 준비금을 관리하고 안전하게 저장된 개인 키를 사용하여 블록체인과 연동하여 dFIAT의 발행/상환을 처리할 수도 있다. 모든 블록체인 계정에 대한 dFIAT의 분배의 공개 원장은 블록체인에서 투명하고 안전하게 유지된다. 또한, 블록체인 계정 간의 dFIAT 발행, 상환(소각) 및 dFIAT 전송과 같은 모든 블록체인 트랜잭션은 트랜잭션이 블록체인에서 발생하기 때문에 투명하고 안전하게 변경되지 않는다. 상기 거래 시스템(1010)의 모든 활동이 투명하고 추적 가능하기 때문에, 블록체인에서 유통되는 dFIAT의 총 토큰 공급량 역시 항상 공개 정보이다. 완전한 상환을 위해, 블록체인에서 dFIAT 토큰의 총 공급량은 항상 토큰 백업 저장소에 연결된 은행의 법정화폐 준비금보다 작거나 같도록 관리된다. In some embodiments, the currency token may be a fiat pegged token (dFIAT). The off-chain system of the
그 결과, 사용자는 거래 시스템(1010)에 원화를 입금하고, 입금된 원화 양에 대응되는 통화 토큰을 받을 수 있다. 사용자는 통화 토큰을 이용하여 자산 지분 토큰을 구매할 수 있다. 특히, 상기 거래 시스템(1010)을 통해 예칙된 법정화폐를 보유하고 있는 은행이 현재 법정화폐 예치금에 대해 신뢰할 수 있는 방식으로 공개 액세스를 허용하면(예컨대, 분산원장) 블록체인 사용자는 두려움 없이 상기 dFIAT를 이체할 수 있다. As a result, the user can deposit won into the
거래 시스템(1010)은 자산 교환 거래를 지원할 수 있다. 예를 들어, 사용자는 통화 토큰을 이용하여 자산 지분 토큰을 구매함으로써, 자산 지분 토큰에 대응되는 자산의 일부 또는 전부를 구매할 수 있다. 사용자는 자산 지분 토큰을 이용하여 통화 토큰을 구매함으로써, 소유한 자산의 일부 또는 전부를 판매할 수 있다.
상기 구매 시스템(1)은 거래 시스템(10)에서 발행된 자산 지분 토큰을 상기 자산 지분 토큰에 연관된, 대마 약품을 교환하는데 이용할 수도 있다. 또한, 상기 구매 시스템(1)은 거래 시스템(10)에서 발행된 통화 토큰을 구매 량만큼의 대마 약품에 대한 구매 금액을 지불하기 위한 전자화폐로 이용할 수도 있다. 즉, 상기 구매 시스템(1)은 자산 지분 토큰 및 통화 토큰의 교환을 통해 소비자가 자산 지분 토큰에 대응한, 판매자의 관리대상제품을 구매하는 것을 구현할 수도 있다. The
일 실시 예에서, 거래 시스템(1010)은 블록체인 네트워크(1100)의 계좌 자체를 거래 시스템(1010)의 사용자 계좌로 사용할 수 있다. 따라서 거래 시스템(1010)의 사용자 계좌는 클라이언트 측에서 거래서 서버(1200)의 간섭(intervention) 없이 독립적으로 생성할 수 있다. 기존의 중앙화된 거래 시스템에서는 사용자가 가입하고 로그인 (sign-up/ sign-in)하고, 중앙화된 데이터베이스에 관련 정보를 저장한다. 이에 따라 사용자의 계좌를 포함한 관련 정보는 중앙화된 서버에 의하여 제어 및 관리되게 된다. 그러나 분산화된 거래 시스템에서 사용자의 계좌는 사용자에 의하여 완전히 제어될 수 있다.In one embodiment, the
도 11b를 참조하면, 일 실시 예에 따른 거래 시스템(1010)은 블록체인 네트워크(1100)를 통하여 거래 서비스가 구현된 적어도 하나의 스마트컨트랙트를 제공할 수 있다. 상기 스마트컨트랙트는 거래 서비스를 제공할 수 있도록 구현될 수 있고, 구현된 스마트컨트랙트는 블록체인 네트워크(1100)에 배포될 수 있다.Referring to FIG. 11B, the
예를 들어, 거래 시스템(1010)은 공유 자산을 생성하는 자산 지분 스마트컨트랙트(1001), 통화 토큰을 관리하는 통화 토큰 스마트컨트랙트(1002), 자산 거래를 위한 거래소 스마트컨트랙트(1003), 및 중 하나 이상의 스마트컨트랙트를 제공할 수 있다. 예를 들어, 거래 시스템(1010)이 이더리움 네트워크를 기반으로 구현된 경우, 스마트컨트랙트는 ERC 20 토큰 및 ERC 223 토큰에 호환 가능하도록 구현될 수 있다.For example, the
자산 지분 스마트컨트랙트(1001)는 자산 지분 스마트컨트랙트(1001)의 자산 지분 토큰 계정의 잔액 장부, 자산 지분 토큰의 이동(예: 자산 지분 토큰 입금 및 거래소 스마트컨트랙트(1003)로의 출금), 초기의 자산 지분 토큰 발행을 위한 기능을 제공할 수 있다.The asset share
통화 토큰 스마트컨트랙트(1002)는 통화 토큰 스마트컨트랙트(1002)의 통화 토큰 계정의 잔액 장부, 통화 토큰의 이동(예: 통화 토큰의 입금 및 거래소 스마트컨트랙트(1003)로의 출금), 통화 토큰의 발행 및 교환(redeeming)을 위한 기능을 제공할 수 있다.The currency token
다양한 실시 예에서, 통화 토큰 스마트컨트랙트(1002)에 의하여 발행되는 통화 토큰은 거래 시스템(1010)이 운영되는 나라의 화폐에 대응되도록 구현될 수 있다. 예를 들어, 한국에서 발행되는 원화에 대응되는 dKRW 토큰은 한국에서 운영되는 은행의 은행 계좌의 잔고에 비례하여 발행될 수 있다. 별도의 서버(예: 도 13의 dKRW 서버)는 은행과 블록체인 네트워크(1100)사이에서 중개 동작, 예를 들면 은행으로부터 원화 입금 여부 확인, 은행 계좌의 잔고 확인, 통화 토큰 스마트컨트랙트(1002)로의 입금 트랜잭션 전달 등의 동작을 수행할 수 있다.In various embodiments, the currency token issued by the currency token
특정 실시 예들에서, 통화 토큰 스마트컨트랙트(1002)는 통화 토큰 스마트컨트랙트(1002)의 통화 토큰 계정의 잔액 장부, 통화 토큰의 이동(예: 통화 토큰의 입금 및 거래소 스마트컨트랙트(1003)로의 출금), 통화 토큰의 발행 및 교환(redeeming)을 위한 기능을 제공할 수 있다.In certain embodiments, the currency token
거래소 스마트컨트랙트(1003)는 거래를 위하여 자산 지분 스마트컨트랙트(1001)로부터 자산 지분 토큰을 이전(transfer) 받을 수 있고, 통화 토큰 스마트컨트랙트(1002)로부터 통화 토큰을 이전(transfer) 받을 수 있다. 또한 거래소 스마트컨트랙트(1003)는 자산 지분 토큰 및 통화 토큰의 출금 기능을 제공할 수 있다.The exchange
다양한 실시 예에서, 자산 거래 서비스의 사용자는 자산 지분 토큰 또는 통화 토큰을 입금(deposit)하고, 입금된 토큰의 한도 내에서 자산 교환 거래를 수행할 수 있다. 자산 지분 토큰과 통화 토큰은 거래소 스마트컨트랙트(1003)로 입금될 수 있고, 입금 이력은 블록체인 네트워크(1100)에 기록된다. 거래소 스마트컨트랙트(1003)에 대한 입금 이력은 거래소 서버(1200)에게 제공될 수 있다. 예를 들어 거래소 스마트컨트랙트(1003)는 입금에 대한 로그 데이터를 생성하고, 블록체인(1055)에 기록할 수 있다. 거래소 서버(1200)는 기록된 로그 데이터를 참조할 수 있다. 이로서, 거래소 스마트컨트랙트(1003) 상의 토큰의 잔액과 거래소 서버(1200) 상의 거래소 계좌 사이의 동기화가 이루어질 수 있다. 거래소 서버(1200)는 거래소 계좌에 입금된 토큰들의 잔고를 기준으로 사용자의 거래 관련 요청을 처리할 수 있다. 거래소 서버(1200)는 출금 요청이 발생되면, 출금 요청이 발생된 양의 토큰을 거래소 계좌에서 출금할 수 있다. 출금 과정에 대한 구체적 내용은 도 14를 통해 후술된다.In various embodiments, users of an asset trading service may deposit asset equity tokens or currency tokens and perform asset exchange transactions within the limits of the deposited tokens. Asset equity tokens and currency tokens can be deposited into the exchange smart contract (1003), and the deposit history is recorded in the blockchain network (1100). Deposit history for the exchange
거래 시스템(1010)에서 이루어지는 모든 거래들은 거래 당사자의 블록체인 네트워크(1100) 계정(예: 이더리움 계정)의 개인 키(private key)에 의하여 암호화 서명될 수 있다(cryptographically signed). 특정 실시 예들에서, 상기 암호화 서명은 인증 시스템(10)의 디지털 서명일 수도 있다. 그러면, 상기 개인 키는 디지털 서명의 수단인 식별자일 수도 있다. 일부 실시 예들에서, 동일한 주체에 대해 상기 네트워크(600)의 식별자와 상기 네트워크(1100)의 식별자는 다른 값을 가질 수도 있다. 예를 들어, 판매자는 서로 다른 인증 시스템(10)의 식별자 및 거래 시스템(1010)의 식별자를 가질 수도 있다. 이러한 실시 예들을 보다 명확히 설명하기 위해 두 식별자 및 그에 의한 디지털 서명이 구분되도록 거래 시스템(1010)의 식별자는 개인 키로 지칭하고 거래 시스템(1010)의 디지털 서명은 암호화 서명으로 지칭한다. All transactions made in the
암호화 서명을 통해, 특정 블록체인 네트워크(1100) 계좌의 소유자에 의하여 발생된 거래들이 식별될 수 있다. 예를 들어 블록체인 네트워크(1100)의 계정은 이미 공개된 암호화 알고리즘(예: secp256k 타원 곡선 암호화 알고리즘)에 의하여 생성된 공개키 및 일반 키로 참조될 수 있다. 이하, 특정 계좌에 의하여 서명된 트랜잭션들은 상기 특정 계좌에 맵핑된 트랜잭션들로 참조될 수 있다. Through cryptographic signatures, transactions generated by the owner of a
사용자가 특정 거래를 요청하면, 상기 사용자의 개인 키에 의하여 암호되고 상기 요청된 거래에 대응되는 트랜잭션이 발생될 수 있다. 거래 시스템(1010)은 상기 트랜잭션을 처리하고, 기록할 수 있다.When a user requests a specific transaction, a transaction encrypted by the user's private key and corresponding to the requested transaction may be generated.
일 실시 예에서, 거래 시스템(1010)에서 발생하는 트랜잭션들의 일부는 블록체인 네트워크(1100)를 통하여 블록체인 상(on blockchain)에서 처리될 수 있고, 나머지 일부는 거래소 서버(1200)를 통하여 블록체인 밖(off block chain)에서 처리될 수 있다. 모든 트랜잭션이 블록체인 상에서 처리되면 과도한 트랜잭션 수수료가 발생할 수 있고, 처리 지연이 발생할 수 있다. 따라서 본 문서에서 개시되는 거래 시스템(1010)은 일부 트랜잭션을 블록체인 밖에서 처리함으로써 수수료를 감소시키고, 빠른 처리를 수행할 수 있다.In one embodiment, some of the transactions occurring in the
도 12를 참조하면, 블록체인 네트워크(1100)은 네트워크를 통하여 서로 연결된 복수 개의 컴퓨팅 장치들(50)(피어 또는 노드)을 포함하는 피어 투 피어 네트워크로 참조될 수 있다. 상기 복수 개의 컴퓨팅 장치들(50)은 하나의 공공 원장(public ledger)을 가질 수 있다. 블록체인 네트워크(1100)은 하나의 공공 원장(public ledger)이 복수 개의 컴퓨팅 장치들(50) 각각에 의하여 생성되는 점에서 분산 네트워크로 참조될 수 있다. 상기 하나의 공공 원장은 블록체인(1055)으로 참조될 수 있다. 블록체인 네트워크(1100)은 트랜잭션을 처리하고 블록체인(1055)에 기록할 수 있다. 예를 들어, 블록체인 네트워크(1100)은 자산 지분 스마트컨트랙트(1001), 통화 토큰 스마트컨트랙트(1002), 및 교환(exchange) 스마트컨트랙트(1003)에서 정의된 트랜잭션들을 처리하고 블록체인(1055)에 기록할 수 있다.Referring to FIG. 12, the
도 13을 참조하면, 일 실시 예에 따른 거래소 서버(1200)는 프로세서(1210), 메모리(1220), 및 통신 인터페이스(1230)를 포함할 수 있다. 프로세서(1210)는 거래소 서버(1200)의 전반적인 동작을 제어할 수 있다. 프로세서(1210)는 트랜잭션 처리 모듈(215)을 포함할 수 있다. 예를 들어, 프로세서(1210)는 메모리(1220)에 저장된 명령어들을 실행하여 트랜잭션 처리 모듈(1215)을 구동시킬 수 있다. 트랜잭션 처리 모듈(1215)에 의하여 수행되는 동작은 프로세서(1210)에 의하여 수행되는 동작으로 이해될 수 있다. 거래소 서버(1200)는 통신 인터페이스(1230)를 통하여 블록체인 네트워크(1100) 및 분산 저장소(1300)와 통신을 수행할 수 있다. 거래소 서버(1200)의 프로세서(1210)는 발생된 트랜잭션을 처리하고, 상기 트랜잭션 또는 상기 트랜잭션의 처리 결과를 통신 인터페이스(1230)를 통하여 분산 저장소(1300)로 송신할 수 있다. 분산 저장소(1300)는 수신한 트랜잭션을 저장할 수 있다.Referring to FIG. 13, the
상술한 바와 같이, 블록체인 네트워크(1100)에 의하여 처리된 트랜잭션은 블록체인(1055)에 저장될 수 있고, 거래소 서버(1200)에 의하여 처리된 트랜잭션은 분산 저장소(1300)에 저장될 수 있다. 블록체인 네트워크(1100) 또는 분산 저장소(1300)에 저장된 트랜잭션들은 불변성과 투명성을 가질 수 있다.As described above, transactions processed by the
분산 저장소(1300)는 저장된 데이터들에 대한 불변성 및 투명성을 보장할 수 있다. 분산 저장소(1300)는 예를 들어, IPFS(InterPlanetary File System)으로 참조될 수 있다. IPFS에 게재된(published) 데이터에 대한 불변성은 merkle directed acyclic graph (DAG) 구조에 의하여 보장될 수 있다. 누구나 저장된 데이터들의 주소 값(예: 해시 주소 값)을 통하여 상기 저장된 데이터들에 접근할 수 있다. 사용자들은 분산 저장소(1300)에 저장된 모든 거래 이력을 확인하고 감시할 수 있다. 이와 관련된 구체적 내용은 도 16을 참조하여 후술된다.Distributed
거래 시스템(1010)은 분산 저장소(1300)에 모든 거래 이력을 저장함으로써, 거래소 서버(1200)에 의하여 처리되는 트랜잭션들에 대하여도 투명성과 불변성을 보장할 수 있다.The
도 14는, 본 출원의 일 실시 예에 따른 거래 시스템에서 발생하는 거래 트랜잭션의 시퀀스의 일 예시와, 출금 요청 발생에 따라 수행되는 정산 절차를 설명하기 위한 도면이다.FIG. 14 is a diagram illustrating an example of a sequence of transaction transactions occurring in a transaction system according to an embodiment of the present application and a settlement procedure performed upon occurrence of a withdrawal request.
일 실시 예에 따른 거래 시스템(1010)은 다양한 트랜잭션들을 제공할 수 있다. 예를 들어, 트랜잭션들은 구매 주문(buy order), 판매 주문(sell order or sale order), 교환 구매(trade buy), 교환 판매(trade sell), 구매 주문 취소(cancel buy order), 판매 주문 취소(cancel sell order), 입금(deposit), 출금 요청(withdrawal request), 출금 요청 취소(cancel withdrawal request), 출금 확인(withdrawal confirm) 중 하나 이상의 트랜잭션을 포함할 수 있다. 그러나 상술된 트랜잭션들은 예시적이며, 상기 트랜잭션들의 일부는 통합되어 하나의 트랜잭션으로 구현되거나, 하나의 트랜잭션이 여러 트랜잭션으로 분리되어 구현될 수 있다.The
모든 트랜잭션들은 순차적으로 발생될 수 있다. 순차적으로 발생된 모든 트랜잭션들은 블록체인 네트워크(1100) 또는 거래소 서버(1200)에 의하여 처리될 수 있고, 블록체인(1055) 및/또는 분산 저장소(1300)에 저장될 수 있다.All transactions can occur sequentially. All transactions that occurred sequentially may be processed by the
도 14의 (1)을 참조하면, 예를 들어 사용자 A(예컨대, 판매자)의 자산 지분 토큰 입금 트랜잭션, 사용자 B(예컨대, 소비자)의 통화 토큰의 입금 트랜잭션, 사용자 B의 구매 주문 트랜잭션, 사용자 A의 판매 주문 트랜잭션, 사용자 A와 사용자 B의 교환 트랜잭션, 사용자 C의 취소 요청 트랜잭션, 사용자 A의 출금 요청 트랜잭션, 사용자 A의 출금 확인 트랜잭션이 순차적으로 발생되었다. 거래 시스템(1010)은 상기 트랜잭션들을 순차적으로 처리할 수 있다.Referring to (1) of FIG. 14, for example, asset equity token deposit transaction of user A (e.g., seller), deposit transaction of currency token of user B (e.g., consumer), purchase order transaction of user B, user A The sales order transaction, the exchange transaction of User A and User B, the cancellation request transaction of User C, the withdrawal request transaction of User A, and the withdrawal confirmation transaction of User A occurred sequentially. The
구매 주문 및 판매 주문 트랜잭션Purchase Order and Sales Order Transactions
일 실시 예에서, 구매 주문 및 판매 주문은 사용자에 의하여 만들어질 수 있다. 암호화 서명된 구매 주문 트랜잭션 및 판매 주문 트랜잭션은 거래소 서버(1200)에 의하여 처리될 수 있고, 분산 저장소(1300)에 게재될 수 있다(published).In one embodiment, purchase orders and sell orders may be created by users. Cryptographically signed purchase order transactions and sell order transactions may be processed by the
거래 트랜잭션transaction transaction
일 실시 예에서, 거래소 서버(1200)는 사용자들의 구매 주문 및 판매 주문을 수집하고 매칭할 수 있다. 매칭된 구매 주문 및 판매 주문은 유효한 거래 트랜잭션을 발생시킬 수 있다. 거래소 서버(1200)는 거래 트랜잭션에 암호화 서명하고, 분산 저장소(1300)로 송신할 수 있다.In one embodiment, the
예를 들어 상기 거래는 자산 지분 토큰과 통화 토큰의 교환일 수도 있다. 도 2의 (1)에서, 거래소 서버(1200)는 사용자 A의 판매 주문 트랜잭션과 사용자 B의 구매 주문 트랜잭션을 매칭하여 자산 지분 토큰과 통화 토큰을 이동하도록 하는 거래(Trade) 트랜잭션을 발생시킬 수 있다. 거래소 서버(1200)는 거래 트랜잭션 데이터를 거래소 서버(1200)의 개인 키로 암호화 서명하여 분산 저장소(1300)에 거래 트랜잭션을 저장할 수 있다. 이러한 거래는 블록체인 밖에서 이루어지므로, 사용자 A와 사용자 B 모두 블록체인 트랜잭션 수수료를 부담할 필요가 없다.For example, the transaction may be an exchange of an asset equity token and a currency token. In (1) of Figure 2, the
구매 주문 취소 및 판매 주문 취소 트랜잭션Purchase Order Cancellation and Sales Order Cancellation Transactions
일 실시 예에서, 사용자는 구매 주문 취소 및 판매 주문 취소를 통하여 오픈된 구매 주문 및 판매 주문을 취소할 수 있다. 암호화 서명된 구매 주문 취소 트랜잭션 또는 판매 주문 취소 트랜잭션은 거래소 서버(1200)에 의하여 처리되고, 분산 저장소(1300)에 게재될 수 있다.In one embodiment, a user can cancel open purchase orders and sell orders through cancel purchase order and cancel sell order. The cryptographically signed purchase order cancellation transaction or sales order cancellation transaction may be processed by the
입금 트랜잭션deposit transaction
일 실시 예에서, 사용자는 사용자의 통화 토큰 또는 자산 지분 토큰을 자산 거래를 위하여 입금할 수 있다. 예를 들어, 사용자가 디앱(1070)을 통하여 통화 토큰 또는 자산 지분 토큰의 입금을 요청하면, 거래 시스템(1010)은 입금 트랜잭션을 포함하는 메시지를 수신할 수 있다.In one embodiment, a user may deposit the user's currency tokens or asset equity tokens for asset trading. For example, when a user requests a deposit of a currency token or asset equity token through the
예를 들어, 사용자는 자산 지분 스마트컨트랙트(1001)를 통하여 발행된 자산 지분 토큰을 거래소 스마트컨트랙트(1003)로 입금할 수 있다. 또는 사용자는 통화 토큰 스마트컨트랙트(1002)를 통하여 발행된 통화 토큰을 거래소 스마트컨트랙트(1003)로 입금할 수 있다. 토큰이 이전될 때마다, 거래소 스마트컨트랙트(1003)는 입금 이벤트 로그를 생성할 수 있다. 거래소 서버(1200)는 모든 입금 트랜잭션을 모니터링 할 수 있다. 입금 트랜잭션은 스마트컨트랙트를 통하여 수행될 수 있다. 따라서 입금 트랜잭션은 블록체인 네트워크(1100)를 통하여 수행되고, 블록체인(1055)에 기록될 수 있다. 이때, 트랜잭션 수수료가 발생된다. 입금 트랜잭션과 관련된 내용은 도 16을 참조하여 후술된다.For example, a user can deposit an asset equity token issued through the asset equity
다양한 실시 예에서, 거래소 서버(1200)는 트랜잭션 수수료를 위한 네이티브 통화를 보유할 수 있다. 거래소 서버(1200)는 보유한 네이티브 통화로 트랜잭션 수수료를 지불할 수 있다. 거래소 서버(1200)는 사용자가 가진 통화 토큰으로부터 지불한 수수료를 보상받을 수 있다. 사용자는 블록체인 네트워크(1100)의 네이티브 통화를 소유하지 않더라도 블록체인 네트워크(1100)를 통해 이루어지는 입금 트랜잭션을 수행할 수 있다.In various embodiments,
출금 요청 트랜잭션Withdrawal request transaction
일 실시 예에서, 사용자는 거래소 계좌의 통화 토큰 또는 자산 지분 토큰에 대한 출금을 요청할 수 있다. 예를 들어, 사용자가 디앱(1070)을 통하여 통화 토큰 또는 자산 지분 토큰의 출금을 요청하면, 거래 시스템(1010)은 출금 요청 트랜잭션을 포함하는 메시지를 수신할 수 있다. 출금 요청이 수신되면, 거래소 계좌는 잠길 수 있다(locked).In one embodiment, a user may request a withdrawal of currency tokens or asset equity tokens from an exchange account. For example, when a user requests withdrawal of a currency token or asset equity token through the
예를 들어, 사용자는 거래소 스마트컨트랙트(1003)상의 토큰들에 대하여 출금을 요청할 수 있다. 사용자는 통화 토큰의 양, 또는 자산 지분 토큰의 양, 그리고 출금을 위하여 필요한 트랜잭션 수수료를 명시하고, 출금을 요청할 수 있다.For example, a user may request withdrawal of tokens on the exchange
출금 요청 트랜잭션이 발생되면, 계좌 잔고 정산 절차(account balance settlement procedure)가 실행될 수 있다. 출금 요청 트랜잭션은 암호화 서명되고 분산 저장소(1300)에 저장될 수 있다. 도 14의 (1)을 참조하면 사용자 A의 출금 요청 트랜잭션이 발생되었을 때, 사용자 A와 거래소 서버(1200)사이의 계좌 잔액 정산 절차가 개시될 수 있다.When a withdrawal request transaction occurs, an account balance settlement procedure may be executed. The withdrawal request transaction may be cryptographically signed and stored in the distributed
출금 확인 트랜잭션Withdrawal confirmation transaction
계좌 잔고 정산 절차는 사용자의 거래소 계좌의 현재 토큰 잔고에 대한 동의와 확인을 위하여 거래소 서버(1200)과 사용자 사이에서 수행될 수 있다. 거래소 서버(1200)는 정산을 수행하고, 정산 결과 계산된 현재 잔액에 대하여 출금 확인 트랜잭션을 발생시킬 수 있다. 출금 확인 트랜잭션은 블록체인 네트워크(1100)에 의하여 처리될 수 있다.The account balance settlement procedure may be performed between the
일 실시 예에서, 거래소 서버(1200)는 정산 절차를 수행하고 정산 데이터 파일을 생성할 수 있다. 생성된 정산 데이터 파일은 분산 저장소(1300)에 저장될 수 있다. 거래소 서버(1200)는 분산 저장소(1300) 상의 정산 데이터 파일의 주소 값을 블록체인(1055)에 기록할 수 있다.In one embodiment, the
도 14의 (2)를 참조하면, 출금 요청 트랜잭션(1025)이 발생하면, 거래소 서버(1200)는 정산 절차를 수행할 수 있다. 출금 요청 트랜잭션(1025)에 따라 생성되는 정산 데이터 파일(1033)은 분산 저장소(1300)에 저장될 수 있다.Referring to (2) of FIG. 14, when a
예를 들어, 분산 저장소(1300)의 정산 데이터 파일(1031)은 출금 요청 트랜잭션(1021)의 발생에 응답하여 생성된 것으로 참조될 수 있다. 거래소 서버(1200)는 이전의 정산 데이터 파일(1031), 출금 요청 트랜잭션(1021) 이후에 발생된 트랜잭션들, 출금 확인 트랜잭션(1023)의 발생시의 거래소 계좌의 잔액 등을 참조하여, 정산 데이터 파일(1033)을 생성하고 분산 저장소(1300)에 저장할 수 있다. 정산 데이터 파일(1033)이 저장된 주소 값은 블록체인(1055)에 기록될 수 있다.For example, the settlement data file 1031 of the distributed
예를 들어, 정산 데이터 파일(1031, 1033)은 출금이 요청된 토큰 타입과 개수, 트랜잭션 수수료, 출금 요청 아이디를 포함하는 출금 요청 데이터를 포함할 수 있다. 또한 정산 데이터 파일(1031, 1033)은 현재 거래소 계좌의 통화 토큰 또는 자산 지분 토큰의 잔고, 사용자의 현재 오픈된 구매/판매 주문, 최근의 계좌 잔고 정산 절차 이후의 모든 트랜잭션들, 최근의 계좌 잔고 정산시의 잔고, 최근의 계좌 잔고 정산 데이터의 분산 저장소(1300) 내의 어드레스, 거래소 서버(1200)의 암호화 서명을 포함할 수 있다.For example, the settlement data files 1031 and 1033 may include withdrawal request data including the type and number of tokens for which withdrawal is requested, a transaction fee, and a withdrawal request ID. In addition, the settlement data files (1031, 1033) include the balance of currency tokens or asset equity tokens in the current exchange account, the user's currently open buy/sell orders, all transactions after the most recent account balance settlement procedure, and the most recent account balance settlement. It may include the current balance, an address in the distributed
일 실시 예에서, 거래소 서버(1200)는 계좌 잔고 정산 절차를 수행하고, 최종 계좌 잔고에 대하여 사용자로부터 확인 및 동의를 요구할 수 있다. 거래소 서버(1200)는 정산 결과 거래소 계좌의 잔액을 디앱(1070)을 통하여 표시하고, 상기 표시에 응답하여 사용자로부터 확인 입력을 수신할 수 있다. 이때, 암호화 서명된 출금 확인 트랜잭션이 발생될 수 있다. 블록체인 네트워크(1100)은 출금 확인 트랜잭션을 처리하고, 블록체인(1055)에 기록할 수 있다.In one embodiment, the
다양한 실시 예에서, 사용자는 직접 블록체인 네트워크(1100) 및 분산 저장소(1300)를 참조하여 정신 결과를 인증할 수도 있다(validate). 또는, 정산 데이터를 확인하는 절차는 제3 자(3rd party)에 의하여 제공될 수 있다.In various embodiments, a user may validate mental results by directly referencing the
다양한 실시 예에서, 거래소 서버(1200)는 보유한 네이티브 통화로 출금 확인 트랜잭션에 대한 수수료를 지불할 수 있다. 거래소 서버(1200)는 사용자가 가진 통화 토큰으로부터 지불한 수수료를 보상받을 수 있다. 사용자는 블록체인 네트워크(1100)의 네이티브 통화를 소유하지 않더라도 블록체인 네트워크(1100)를 통해 이루어지는 출금 확인 트랜잭션을 수행할 수 있다.In various embodiments, the
출금 요청 취소 트랜잭션Withdrawal request cancellation transaction
다양한 실시 예에서, 사용자는 계좌 잔고 정산 절차의 실행이 완료되기 전에 출금 요청을 취소할 수 있다. 출금 요청이 취소되면, 거래소 서버(1200)는 출금 취소 요청 트랜잭션을 처리하고, 분산 저장소(1300)에 저장할 수 있다.In various embodiments, a user may cancel a withdrawal request before the account balance settlement process is complete. When the withdrawal request is canceled, the
도 15는, 본 출원의 일 실시 예에 따라 분산 저장소에 저장되는 거래 이력에 대한 불변성과 투명성을 보장하는 거래 이력 저장 방법을 설명하기 위한 도면이다.Figure 15 is a diagram for explaining a transaction history storage method that ensures immutability and transparency of transaction history stored in distributed storage according to an embodiment of the present application.
도15를 참조하면, 거래 시스템(1010)에서 발생되는 트랜잭션들은 분산 저장소(1300)에 저장될 수 있고, 분산 저장소(1300)에 저장된 여러 트랜잭션들은 미리 정해진 주기마다 그룹화되어 분산 저장소(1300)에 저장될 수 있다. 그룹 파일(1301, 1303)은 일정 시간 동안 발생한 복수의 트랜잭션들을 포함할 수 있다. 그룹 파일(1301, 1303)은 각각의 그룹 파일(1301, 1303)에 포함된 복수의 트랜잭션들의 주소 값 목록(예: 해시 값 목록)를 저장할 수 있다.Referring to FIG. 15, transactions occurring in the
분산 저장소(1300)에 저장되는 그룹 파일(1301, 1303)은 일정한 해시 알고리즘(예: SHA-1)에 의해 산출되는 고유의 해시 값을 가질 수 있다. 그룹 파일(1301, 1303)의 해시 값은 그룹 파일(301, 303)에 포함되는 데이터들에 대응되는 고유한 값으로 참조될 수 있다. 따라서 그룹 파일(1301, 1303)에 포함되는 데이터들의 일부가 변조되면, 그룹 파일(301, 303)에 대한 해시 값도 상이해질 수 있다.The group files 1301 and 1303 stored in the distributed
일 실시 예에서, 분산 저장소(1300)에 저장된 거래 이력의 불변성은, 각 그룹 파일(1301, 1303)의 해시 값을 이용하여 각 그룹 파일(1301, 1303)을 체인화함으로써 달성될 수 있다.In one embodiment, immutability of the transaction history stored in the distributed
예를 들어, 각각의 그룹 파일들(1301, 1303)이 저장된 분산 저장소(1300)내의 주소는 해시 값으로 표현될 수 있다. 그룹 파일들(1301, 1303)은 각각 선행하는 그룹 파일의 해시 값을 가질 수 있다. 이에 따라, 그룹 파일들(1301, 1303)은 해시 링크를 통하여 체인화될 수 있다. 예를 들어, 그룹 파일(1303)는 그룹 파일(1301)의 해시 값을 가짐으로써 그룹 파일(1301)을 가리키게 되고, 그룹 파일(1301)과 체인을 형성할 수 있다. 이에 따라 분산 저장소(1300)의 그룹 파일들(1301, 1303)은 블록체인(1055)의 블록들과 유사한 구조를 형성할 수 있다.For example, the address in the distributed
만약 특정 그룹 파일이 위, 변조되어 다른 해시 값을 가지게 되면, 위, 변조된 특정 그룹 파일의 후속 그룹 파일이 가지는 해시 값은 더 이상 유효한 주소 값을 나타낼 수 없다. 따라서 위, 변조된 그룹 파일과 그 후속 그룹 파일은 더 이상 체인을 구성할 수 없게 된다. 분산 저장소(1300)에 저장된 그룹 파일들(301, 303)이 체인을 구성하지 않게 되면, 사용자는 분산 저장소(1300)의 데이터에 위조, 변조가 일어났음을 인식할 수 있다.If a specific group file is altered and has a different hash value, the hash value of subsequent group files of the modified specific group file can no longer represent a valid address value. Therefore, the above tampered group file and its subsequent group files can no longer form a chain. If the group files 301 and 303 stored in the distributed
일 실시 예에서, 분산 저장소(1300)에 저장된 거래 이력의 불변성은, 그룹 파일(1301, 1303)의 해시 값을 블록체인 네트워크(1100)의 블록체인(1055)에 저장함으로써 달성될 수 있다.In one embodiment, immutability of transaction history stored in distributed
예를 들어, 그룹 파일(1301, 1303)의 해시 값은 블록체인(1055)에 저장될 수 있다. 그룹 파일(301, 303)의 해시 값이 블록체인 네트워크(1100)에 저장되면, 누구나 블록체인 네트워크(1100)에 접근하고, 해시 값을 확인할 수 있다. 예를 들어 사용자는 블록체인(1055)에 저장된 해시 값과 분산 저장소(1300)에 저장된 그룹 파일(1301, 1303)의 해시 값을 비교함으로써, 그룹 파일(1301, 1303)의 조작 여부를 검증할 수 있다. 만약 그룹 파일(1301, 1303)에 포함된 데이터가 조작된 경우라면, 블록체인(1055)에 저장된 해시 값은 더 이상 유효한 주소 값을 나타낼 수 없다. 분산 저장소(1300)는 블록체인(1055)에 기록된 해시 값을 통하여 분산 저장소(1300)에 저장된 데이터들의 불변성을 보장할 수 있다.For example, hash values of
다양한 실시 예에서, 사용자 또는 제3 자는 블록체인(1055)에 기록된 해시 값이 나타내는 분산 저장소(1300)의 특정 주소에 액세스함으로써, 분산 거래 시스템(1010)에서 발생하는 모든 트랜잭션들의 확인할 수 있다. 이에 따라 분산 저장소(1300)에 저장된 거래 이력들에 대하여 투명성을 제공할 수 있다.In various embodiments, a user or a third party can confirm all transactions occurring in the distributed
다양한 실시 예에서, 사용자나 제3 자는 블록체인(1055)에 기록된 해시 값을 이용하여 분산 저장소(1300)에 액세스하고, 기 발생된 모든 트랜잭션들의 히스토리를 재구성할 수 있다. 이에 따라 거래소 서버(1200)가 해킹에 의하여 손상되더라도 거래 이력 전부가 재구성될 수 있어 거래 시스템(1010)은 기존의 중앙화된 거래 시스템에 비하여 높은 안전성을 가질 수 있다.In various embodiments, a user or a third party can access the distributed
도 16은, 본 출원의 다양한 실시 예에 따른 거래 시스템으로의 입금 방법의 신호 흐름도다. 도 17은, 본 출원의 다양한 실시 예에 따른 자산 거래 방법의 신호 흐름도다. 도 18은, 본 출원의 다양한 실시 예에 따른 거래 시스템으로부터의 출금 방법의 신호 흐름도다. 이하, 도 16 내지 도 18을 참조하여 거래 시스템(1010)에서 수행되는 입금 절차, 거래 절차, 및 출금 절차를 시퀀스 도면으로서 설명한다.Figure 16 is a signal flow diagram of a deposit method to a transaction system according to various embodiments of the present application. Figure 17 is a signal flow diagram of an asset trading method according to various embodiments of the present application. 18 is a signal flow diagram of a withdrawal method from a trading system according to various embodiments of the present application. Hereinafter, with reference to FIGS. 16 to 18, the deposit procedure, transaction procedure, and withdrawal procedure performed in the
다양한 실시 예에서, 사용자는 클라이언트 단말(1075)(예: PC, 스마트폰, 태블릿 PC 등을 포함하는 전자 장치)에 자산 거래 서비스를 제공하는 디앱(1070)을 설치하고, 상기 자산 거래 서비스를 통해 자산 교환 거래를 수행할 수 있다. 특정 실시 예들에서, 상기 사용자의 단말(1075)은 상기 의료기관 전자장치(300), 소비자의 전자장치(400), 판매자의 전자장치(500) 중 하나 이상을 포함한다. 사용자에 따라, 클라이언트 단말(1075)은 상기 의료기관 전자장치(300), 소비자의 전자장치(400), 판매자의 전자장치(500)의 동작을 각각 수행할 수도 있다. In various embodiments, a user installs the
입금 절차Deposit Procedure
도 16을 참조하면, 클라이언트 단말(1075)은 자산 지분 토큰 입금 요청이 발생하면(S1401), 사용자의 개인 키에 의하여 암호화 서명된 자산 지분 토큰 입금 트랜잭션을 블록체인 네트워크(1100)의 자산 지분 스마트컨트랙트(1001)에 송신할 수 있다(S1403). 예를 들어, 사용자가 디앱(1070)을 통하여 자산 지분 토큰 입금을 요청할 수 있다. 자산 지분 토큰은 사용자의 자산 등록에 따라 블록체인 네트워크(1100)의 자산 지분 스마트컨트랙트(1001)에 의하여 발행될 수 있다. 특정 실시 예들에서, 상기 자산 지분 토큰은 판매자 자신이 판매할 대마약품을 등록하는 것에 따라서 블록체인 네트워크(110)의 자산 지분 스마트컨트랙트(1001)에 의하여 발행될 수 있다. 판매자의 전자장치(500)가 대마 약품을 자산으로 등록하면 자산 지분 토큰 입금 요청이 발생한다(S1401). 그러면, 등록된 대마 약품에 대응한 자산 지분에 대한 입금 트랜잭션이 송신된다(S1403). 상기 입금 트랜잭션은 판매자의 개인 키로 디지털 서명된다. Referring to FIG. 16, when an asset share token deposit request occurs (S1401), the
자산 지분 스마트컨트랙트(1001)는 자산 지분 토큰 입금 트랙잭션에 응답하여 자산 지분 토큰을 거래 스마트컨트랙트(1003)로 이동시킬 수 있다(S1405). 거래 스마트컨트랙트(1003)는 상기 자산 지분 토큰의 입금 이벤트 로그를 생성하고, 블록체인(1055)에 저장할 수 있다(S1407). 이와 같이 발행된 자산 지분 토큰은 상기 대마 약품의 소유권 지분으로 활용될 수도 있다. 자산 지분 토큰의 이전은 대마 약품의 소유권 이전이다. 소유권 지분 관계를 통해 자산 지분 토큰과 대마 약품은 연관된다. The asset share
클라이언트 단말(1075)은 통화 토큰 입금 요청이 발생하면(S1409), 사용자의 개인 키에 의하여 암호화 서명된 통화 토큰 입금 트랜잭션을 블록체인 네트워크(1100)의 통화 토큰 스마트컨트랙트(1002)에 송신할 수 있다(S1411). 예를 들어 사용자가 디앱(1070)을 통하여 통화 토큰 입금을 요청할 수 있다. 통화 토큰은 사용자의 원화 입금에 따라 통화 토큰 스마트컨트랙트(1002)에 의하여 발행될 수 있다. 특정 실시 예들에서, 통화 토큰은 소비자 자신이 지불할 원화를 디앱(1070)에 입금하는 것에 따라서 블록체인 네트워크(1100)의 통화 토큰 스마트컨트랙트(1002)에 의하여 발행될 수 있다. 소비자의 전자장치(400)가 디앱(1070)에 원화를 입금하면 통화 토큰 입금 요청이 발생한다(S1409). 그러면, 입금 금액에 대응한 통화 토큰에 대한 입금 트랜잭션이 송신된다(S1411). 상기 입금 트랜잭션은 소비자의 개인 키로 디지털 서명될 수도 있다. When a currency token deposit request occurs (S1409), the
통화 토큰 스마트컨트랙트(1002)는 통화 토큰 입금 트랜잭션에 응답하여 통화 토큰을 거래 스마트컨트랙트(1003)로 이동시킬 수 있다(S1413). 거래 스마트컨트랙트(1003)는 상기 통화 토큰의 입금 이벤트 로그를 생성하고, 블록체인(1055)에 저장할 수 있다(S1415). The currency token
거래 스마트컨트랙트(1003)에 입금된 통화 토큰의 잔고 정보 및 자산 지분 토큰의 잔고 정보는 블록체인 네트워크(1100)와 거래소 서버(1200) 사이에서 동기화될 수 있다(S1417). 예를 들어, 거래소 서버(1200)는 미리 정해진 주기마다, 또는 입금 트랜잭션이 발생될 때마다 블록체인(1055)에 기록된 입금 이벤트 로그를 참조할 수 있다. 거래소 서버(1200)는 거래소 계좌의 잔고를 입금 이벤트 로그에 따라 갱신하고, 갱신된 잔고를 기준으로 트랜잭션들을 처리할 수 있다. 예를 들어, 거래소 서버(1200)는 거래소 계좌의 잔고에 대한 정보를 포함하는 거래소 계좌 데이터를 포함할 수 있다. 거래소 서버(1200)는 입금 이벤트 로그에 따라서 상기 거래소 계좌 데이터를 갱신할 수 있다.Balance information of currency tokens and asset equity tokens deposited in the transaction
거래 절차transaction process
도 17을 참조하면, 클라이언트 단말(1075)은 사용자의 개인 키에 의하여 암호화 서명된 거래 요청을 거래소 서버(1200) 및 분산 저장소(1300)로 송신할 수 있다(S1501, S1503). 예를 들어 거래 요청은 구매 주문 트랜잭션, 판매 주문 트랜잭션, 출금 요청 트랜잭션, 또는 출금 요청 취소 트랜잭션을 포함하는 메시지로 참조될 수 있다. Referring to FIG. 17, the
거래소 서버(1200)는 거래 요청에 대응되는 트랜잭션을 처리할 수 있다(S1505). 분산 저장소(1300)는 거래 요청에 대응되는 암호화 서명된 트랜잭션을 저장할 수 있다(S1507).The
거래소 서버(1200)는 사용자의 구매 주문 및 판매 주문이 매칭됨에 따라 거래(trade) 트랜잭션을 발생시킬 수 있다. 이 과정은 도 14를 통하여 전술되었다. 이때 거래소 서버(1200)는 발생된 거래 트랜잭션을 거래소 서버(1200)의 개인 키로 암호화 서명하고 분산 저장소(1300)로 송신할 수 있다. 분산 저장소(1300)는 수신된 거래 트랜잭션을 저장할 수 있다(S1507).The
분산 저장소(1300)는 미리 정해진 주기마다 복수의 트랜잭션들을 포함하는 그룹 파일을 생성할 수 있다(S1509). 분산 저장소(1300)는 그룹 파일의 주소 값을 블록체인 네트워크(1100)으로 송신할 수 있다(S1511). 블록체인 네트워크(1100)은 블록체인(1055)에 수신된 그룹 파일의 주소 값을 기록할 수 있다(S1517). 또는 분산 저장소(1300)는 그룹 파일의 주소 값을 거래소 서버(1200)으로 송신할 수 있다(S1513). 거래소 서버(1200)는 수신된 그룹 파일의 주소 값을 블록체인 네트워크(1100)으로 송신할 수 있다(S1517). 동작 S1511과 동작 S1513 내지 동작 S1515는 택일적으로 수행될 수 있다.The distributed
상술된 동작(S1501) 내지 동작(S1511)은 반복하여 수행될 수 있다. 반복되어 수행되는 동작(S1501) 내지 동작(S1511)에 따라 거래 시스템(1010)에서 자산 거래가 이루어질 수 있다.The above-described operations (S1501) to (S1511) may be performed repeatedly. Asset transactions may be performed in the
출금 절차Withdrawal Procedure
도 18을 참조하면, 클라이언트 단말(1075)은 통화 토큰 또는 자산 지분 토큰에 대한 출금 요청이 발생하면, 개인 키에 의하여 암호화 서명된 출금 요청을 거래소 서버(1200)으로 송신할 수 있다(S1601). 거래소 서버(1200)는 상기 개인 키에 대응되는 특정 사용자의 출금 요청을 수신하게 된다. 거래소 서버(1200)는 출금 요청의 수신에 응답하여, 상기 특정 사용자에 대한 정산 절차를 수행할 수 있다(S1603 내지 S1613)Referring to FIG. 18, when a withdrawal request for a currency token or asset equity token occurs, the
거래소 서버(1200)는 분산 저장소(1300)로부터 상기 특정 사용자의 트랜잭션 이력을 획득할 수 있다(S1603). 예를 들어, 상기 트랜잭션 이력은 특정 사용자의 이전 출금 요청 이후에 발생한 트랜잭션들의 목록으로 참조될 수 있다. 도 14의 (2)를 통하여 전술된 바와 같이, 거래소 서버(1200)는 분산 저장소(1300)로부터 특정 사용자의 이전의 정산 데이터 파일, 이전 출금 요청 트랜잭션 이후에 발생된 트랜잭션들에 대한 데이터 등을 획득하고, 정산 데이터 파일(예: 도 14의 정산 데이터 파일(1031, 1033))을 생성할 수 있다(S1605). 거래소 서버(1200)는 생성된 정산 데이터 파일을 분산 저장소(1300)로 송신할 수 있고(S1607), 분산 저장소(1300)는 정산 데이터 파일을 저장할 수 있다(S1609).The
정산 절차가 완료되면, 거래소 서버(1200)는 정산 결과를 클라이언트 단말(1075)로 송신할 수 있다(S1611). 정산 결과는 정산 데이터 파일에 포함된 정보를 포함할 수 있다. 클라이언트 단말(1075)은 수신된 정산 결과에 대한 확인을 거래소 서버(1200)으로 송신할 수 있다(S1613). 거래소 서버(1200)는 정산 결과에 대한 확인을 수신하면, 블록체인 네트워크(1100)으로 상기 특정 사용자의 개인 키로 암호화 서명된 출금 확인 트랜잭션을 송신할 수 있다(S1615). 블록체인 네트워크(1100)은 출금 확인 트랜잭션을 처리하고, 블록체인(1055)에 기록할 수 있다(S1617).When the settlement procedure is completed, the
거래 시스템(1010)에서, 입금 요청 트랜잭션 및 출금 확인 트랜잭션을 제외한 나머지 트랜잭션들을 거래소 서버(1200)에 의하여 처리하여, 블록체인 네트워크(1100)에 지불하는 수수료를 줄일 수 있다. 거래소 서버(1200)에 의하여 처리되는 트랜잭션들은 분산 저장소(1300)에 저장되고, 트랜잭션들이 저장된 분산 저장소(1300)내의 주소 값은 블록체인 네트워크(1100)에 기록될 수 있다. 따라서 모든 거래 이력은 블록체인(1055) 및 분산 저장소(1300)를 통하여 재구성 될 수 있고, 사용자에 의하여 감시될 수 있다.In the
다시 도 10을 참조하면, 상기 도 18에 따른 자산 지분 토큰과 통화 토큰의 교환으로 인해, 도 10의 소비자와 판매자 간의 대마 약품 거래가 수행된다(S9080). Referring again to FIG. 10, due to the exchange of the asset equity token and currency token according to FIG. 18, a cannabis drug transaction is performed between the consumer and the seller of FIG. 10 (S9080).
대마 약품을 자산으로 거래 시스템(1010)에 미리 등록한 판매자는 블록체인 네트워크(1100)의 거래소 계좌에 등록된 대마 약품에 연관된 자산 지분 토큰을 소지한 상태이다. 그리고 원화를 거래 시스템(1010)에 미리 입금한 소비자는 블록체인 네트워크(1100)의 거래소 계좌에 입금 금액에 대응한 통화 토큰을 소지한 상태이다. 이에 대해서는 도 16 등을 참조해 전술하였는 바, 자세한 설명은 생략한다. A seller who has previously registered cannabis medicine as an asset in the
상기 단계(S9080)에서 소비자의 전자장치(400)가 처방 인증서를 갖고 있는 것이 검증된 경우, 판매자의 전자장치(500) 및 소비자의 전자장치(400)는 거래 시스템(1010)에 판매 주문 및 구매 주문을 전송하여 거래 프로세스를 개시할 수도 있다. If it is verified in step S9080 that the consumer's
일부 실시 예들에서, 거래 시스템(1010)의 대마 약품 거래를 위한 소비자의 구매 주문(buy order)은, 처방 인증서가 발행된 처방전 내용에 기초하여 생성될 수도 있다. 상기 구매 주문은 결제 대상 및 결제 수량을 포함한다. In some embodiments, a consumer's buy order for a cannabis drug transaction in
상기 구매 주문은 판매자의 전자장치(500) 또는 소비자의 전자장치(400)에 의해 생성될 수도 있다. 소비자의 전자장치(400)는 자신이 소유한 처방 인증서로부터 처방전 정보를 획득할 수 있다. 판매자의 전자장치(500)는 처방 인증서를 검증한 과정에서 처방전 정보 중 적어도 일부를 획득할 수 있다. The purchase order may be created by the seller's
전술한 바와 같이, 상기 처방전 정보는 상기 소비자가 처방 대상이고 상기 관리대상 제품이 처방 제품인 처방 내용과 관련된 정보를 포함할 수도 있다. 예를 들어, 상기 처방전 정보는 복용 기간, 단위 기간(예컨대, 일별(days)) 복용 회수, 1회당 복용량 등을 포함하므로, 상기 판매자의 전자장치(500)는 복용 기간 동안 대마 약품의 전체 복용량을 획득할 수 있다. As described above, the prescription information may include information related to prescription contents in which the consumer is the subject of the prescription and the product to be managed is a prescription product. For example, since the prescription information includes the period of administration, the number of administrations in a unit period (e.g., per day), the dose per time, etc., the seller's
상기 판매자의 전자장치(500) 또는 소비자의 전자장치(400)는 대마 약품을 자산으로 등록하여 발행된 자산 지분 토큰을 결제 대상으로 지정하고 전체 복용량 만큼의 자산 지분 토큰의 개수를 결제 수량으로 지정하여 상기 구매 주문을 생성할 수도 있다. The seller's
상기 판매자의 전자장치(500)는 상기 처방전 정보 중 적어도 일부에 기초하여 판매 주문을 생성할 수도 있다(S9080). 상기 판매 주문은 결제 금액의 지불을 요청하는 것일 수도 있다. 상기 판매 주문은 결제 금액 및 결제 수단을 포함한다. The seller's
일부 실시 예들에서, 상기 판매자의 전자장치(500)는 상기 구매 주문에 기초하여 판매 주문을 생성할 수도 있다. In some embodiments, the seller's
상기 판매자의 전자장치(500)는 상기 결제 대상과 결제 수량에 대응한 결제 금액 및 결제 수단을 포함한 판매 주문을 생성할 수 있다(S9080). 상기 결제 수단은 상기 통화 토큰이다. 상기 소비자가 지불할 통화 토큰의 개수는 상기 결제 금액에 대응한다. 상기 결제 금액은 결제 대상 및 결제 수량에 대응한다. 즉, 상기 결제 대상 및 결제 수량에 대응한 통화 토큰의 개수가 결제 금액으로 지정된다. The seller's
다양한 실시 예들에서, 상기 판매자의 전자장치(500)는 특정 거래를 위한 구매 주문 요청 및 판매 주문 요청을 모두 생성할 수도 있다. In various embodiments, the seller's
거래 시스템(1010)은 상기 판매자의 전자장치(500) 또는 소비자의 전자장치(400)로부터 수신한 구매 요청 및 판매 요청에 기초하여 거래 트랜잭션을 처리할 수도 있다. The
특정 실시 예들에서, 상기 도 17의 거래 요청은 상기 판매자의 판매 주문 및 소비자의 구매 주문을 포함할 수도 있다. 상기 판매자의 전자장치(500)는 판매자의 개인 키로 암호화 서명된 판매자의 판매 주문을 거래소 서버(1200) 및 분산 저장소(1300)로 송신하고 소비자의 전자장치(400)는 소비자의 개인 키로 암호화 서명된 소비자의 구매 주문을 거래소 서버(1200) 및 분산 저장소(1300)로 송신할 수도 있다(S1501, S1503). 거래소 서버(1200)는 소비자의 거래 요청인 구매 주문, 판매자의 거래 요청인 판매 주문에 대응되는 트랜잭션을 처리할 수 있다(S1505). 분산 저장소(1300)는 상기 거래 요청에 대응되는 암호화 서명된 트랜잭션을 저장할 수 있다(S1507).In certain embodiments, the transaction request of FIG. 17 may include a sales order from the seller and a purchase order from the consumer. The seller's
거래소 서버(1200)는 사용자의 구매 주문 및 판매 주문이 매칭됨에 따라 거래(trade) 트랜잭션을 발생시킬 수 있다(S1505). 상기 소비자의 구매 주문 및 상기 판매자의 판매 주문을 매칭하여, 상기 결제 금액만큼의 상기 통화 토큰의 수량이 상기 소비자의 거래소 계좌에서 상기 판매자의 거래소 계좌로 전송되고 상기 판매자의 거래소 계좌에서 상기 결제 수량만큼의 상기 자산 지분 토큰의 수량이 상기 판매자의 거래소 계좌에서 상기 소비자의 거래소 계좌로 전송되도록 하는 상기 거래 트랜잭션을 생성한다(S1505). 이 과정은 도 14를 통하여 전술되었다. 이때 거래소 서버(1200)는 발생된 거래 트랜잭션을 거래소 서버(1200)의 개인 키로 암호화 서명하고 분산 저장소(1300)로 송신할 수 있다. 분산 저장소(1300)는 수신된 거래 트랜잭션을 저장할 수 있다(S1507). 이러한 거래 트랜잭션의 처리는 도 17을 참조해 전술하였는 바, 자세한 설명은 생략한다. The
상기 거래에서 소비자는 구매 주문 내용에 개입하는 것이 원천 차단되므로, 처방된 대마 약품의 규모 이상의 대마 약품이 유통되는 것을 방지할 수 있다. In the above transaction, the consumer is prevented from interfering with the contents of the purchase order, thereby preventing the distribution of cannabis drugs exceeding the size of the prescribed cannabis drug.
상기 단계(S9080)의 거래가 종료되면, 판매자의 전자장치(500)는 대마 약품이 소비자에게 전달되기 위한 동작을 수행할 수도 있다. 또한, 상기 판매자의 전자장치(500)는 결제 금액의 지불이 완료된 이후에 거래 이력을 생성한다(S9085). 상기 판매자의 전자장치(500)는 제품유통관리시스템(200)에 상기 거래 이력을 전송한다(S9090). 상기 제품유통관리시스템(200)은 수신한 거래 이력으로 거래이력 DB(227)을 갱신한다(S9095). When the transaction in step S9080 is completed, the seller's
상기 거래 이력은 상기 처방전 정보 중 적어도 일부 정보(예컨대, 대마 약품(즉, 처방된 대마 약품)을 지칭하는 정보(예컨대, 종류 또는 명칭), 대마 약품의 복용량, 대마 약품의 복용량에 대응한 결제 금액 및 결제 수단)와 더불어, 결제 내용을 포함한다. 상기 결제 내용은 구매자의 개인정보, 판매자의 개인정보, 결제 시간 등을 포함할 수도 있다. 또한, 상기 결제 내용은 거래 시스템(1010)의 통화 토큰을 거래 상대방으로 전송하고 전송한 통화 토큰에 대응한 자산 지분 토큰을 이체 받은 소비자의 블록체인 네트워크(1100)에서의 계좌주소(또는 지갑주소), 및 대마 약품에 대한 상기 자산 지분 토큰을 거래 상대방에게 전송하고 전송한 상기 자산 지분 토큰에 대응한 통화 토큰을 이체 받은 판매자의 블록체인 네트워크(1100)에서의 계좌주소(또는 지갑주소)를 포함할 수도 있다. The transaction history may include at least some of the prescription information (e.g., information referring to the cannabis drug (i.e., the prescribed cannabis drug) (e.g., type or name), the dosage of the cannabis drug, and the payment amount corresponding to the dosage of the cannabis drug. and payment method), as well as payment details. The payment details may include the buyer's personal information, the seller's personal information, payment time, etc. In addition, the payment details are the account address (or wallet address) in the
또한, 일부 실시 예들에서, 상기 거래 이력은 단계(S9050)에서 소비자의 전자장치(400)로부터 수신한 VP(또는 처방 인증서), 단계(S9030)에서 소비자의 전자장치(400)에 전송한 VP(또는 판매권한 인증서) 중 하나 이상을 더 포함할 수도 있다. Additionally, in some embodiments, the transaction history may include a VP (or prescription certificate) received from the consumer's
상기 제품유통관리시스템(200)은 거래이력 DB(227)에서 거래이력을 확인할 수 있다. The product
또한, 일부 실시 예들에서, 상기 제품유통관리시스템(200)은 거래이력에 포함된 판매자의 상기 계좌주소 또는 소비자의 상기 계좌주소에 기초하여 거래 시스템(1010)의 통화 토큰 또는 자산 지분 토큰의 발행 이력을 확인할 수도 있다. Additionally, in some embodiments, the product
또한, 상기 소비자의 전자장치(400)는 제품유통관리시스템(200)에 소비자 자신의 구매 이력 조회를 요청할 수도 있다. 상기 구매 이력의 조회는 거래 이력의 조회로 구현될 수도 있다. 상기 구매 이력 조회의 요청은 소비자와 관련된 정보를 포함할 수도 있다. 일부 실시 예들에서, 상기 구매 이력 조회의 요청은 소비자의 식별자 정보 또는 소비자의 디지털 서명을 포함할 수도 있다. 그러면, 제품유통관리시스템(200)은 식별자 정보와 같은 구매 이력 조회의 요청 내 소비자와 관련된 정보를 이용하여 해당 소비자의 구매 이력이 나타난 거래이력을 조회하고 조회 결과를 소비자의 전자장치(400)로 전송할 수도 있다. Additionally, the consumer's
또한, 상기 판매자의 전자장치(500)는 제품유통관리시스템(200)에 판매자 자신의 판매 이력 조회를 요청할 수도 있다. 상기 판매 이력의 조회는 거래 이력의 조회로 구현될 수도 있다. 상기 판매 이력 조회의 요청은 판매자와 관련된 정보를 포함할 수도 있다. 일부 실시 예들에서, 상기 판매 이력 조회의 요청은 판매자의 식별자 정보 또는 판매자의 디지털 서명을 포함할 수도 있다. 그러면, 제품유통관리시스템(200)은 식별자 정보와 같은 판매자 이력 조회의 요청 내 판매자와 관련된 정보를 이용하여 해당 판매자의 구매 이력을 조회하고 조회 결과를 판매자의 전자장치(500)로 전송할 수도 있다. Additionally, the seller's
대안적인 실시 예들에서, 상기 단계(S9080)의 거래는 상기 거래 시스템(1010)에 제한되지 않는다. 상기 단계(S9080)는 다양한 결제 수단에 따른 제3자 거래 시스템에 의해 수행될 수도 있다. 즉, 상기 결제 수단은 전술한 블록체인 기반 암호화폐에 제한되지 않으며, 예를 들어 현금, 신용카드, 직불카드, 또는 기타 결제수단일 수도 있다. 여기서, 직불카드 또는 신용카드를 이용한 결제 금액의 지불은 카드 단말기(예컨대, IC 단말기)를 통해 구현되거나, 또는 해당 카드와 미리 연동된 NFC 기반 전자결제 수단(예컨대, 구글페이, 삼성페이, 애플페이 등)을 통해 구현되는 것을 포함한다. 또한, 현금을 이용한 결제 금액의 지불은 은행 계좌의 이체를 포함한다. In alternative embodiments, the transaction of step S9080 is not limited to the
추가적으로, 상기 제품유통관리시스템(200)은 발행 요청에 따른 인증서 발행이 완료되기 이전에, 인증서 발행을 취소할 수도 있다. 예를 들어, 상기 제품유통관리시스템(200)은 소비자의 전자장치(400)에 대한 처방 인증서의 발행을 취소할 수도 있다. 또는, 상기 제품유통관리시스템(200)은 판매자의 전자장치(500)에 대한 판매권한 인증서의 발행을 취소할 수도 있다. 또는, 상기 제품유통관리시스템(200)은 의료기관 전자장치(300)에 대한 처방권한 인증서의 발행을 취소할 수도 있다. Additionally, the product
상기 제품유통관리시스템(200)은 취소 대상 인증서의 발행에 대한 취소 요청 트랜잭션을 발생시킬 수도 있다. 그러면, 상기 취소 요청 트랜잭션은 상기 제품유통관리시스템(200)에 의해 처리되어 블록체인 네트워크(600)에 처리 결과가 게재될 수도 있다. 상기 인증 시스템(10) 내 취소 대상 인증서의 발행 취소는 거래 시스템(1010)의 구매 주문 취소 및 판매 주문 취소 트랜잭션, 또는 출금 요청 취소 트랜잭션과 유사하므로, 자세한 설명은 생략한다. The product
이와 같이, 상기 구매 시스템(1)은 소비자의 신원 및 구매 이력을 투명하게 관리할 수 있다. 특히, 상기 구매 시스템(1)은 유효한 구매권한이 인증된 소비자에 한해 관리대상제품의 구매를 허용하고 거래 이력을 추적할 수 있어, 결국 소비자의 관리대상 제품의 구매를 엄격하게 관리할 수 있다. In this way, the
상기 시스템(1)이 본 명세서에 서술되지 않은 다른 구성요소를 포함할 수도 있다는 것이 통상의 기술자에게 명백할 것이다. 예를 들어, 데이터 입력장치, 디스플레이 및/또는 인쇄와 같은 출력장치, 네트워크, 네트워크 인터페이스 및 프로토콜 등을 더 포함할 수 있다.It will be apparent to those skilled in the art that the
하드웨어를 이용하여 본 발명의 실시 예를 구현하는 경우에는, 본 출원의 실시 예들을 수행하도록 구성된 ASICs(application specific integrated circuits) 또는 DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays) 등이 본 출원의 구성요소에 구비될 수 있다. When implementing embodiments of the present invention using hardware, application specific integrated circuits (ASICs) or digital signal processors (DSPs), digital signal processing devices (DSPDs), and programmable PLDs (PLDs) configured to perform the embodiments of the present application. logic devices), field programmable gate arrays (FPGAs), etc. may be included in the components of the present application.
이상에서 설명한 본 출원의 실시 예들에 따른 블록체인 기술에 기반하여 관리대상제품을 구매하는 시스템 및 방법에 의한 동작은 적어도 부분적으로 컴퓨터 프로그램으로 구현되어, 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 예를 들어, 프로그램 코드를 포함하는 컴퓨터-판독가능 매체로 구성되는 프로그램 제품과 함께 구현되고, 이는 기술된 임의의 또는 모든 단계, 동작, 또는 과정을 수행하기 위한 프로세서에 의해 실행될 수 있다. The operations of the system and method for purchasing management target products based on blockchain technology according to the embodiments of the present application described above may be at least partially implemented as a computer program and recorded on a computer-readable recording medium. . For example, implemented with a program product comprised of a computer-readable medium containing program code, which can be executed by a processor to perform any or all steps, operations, or processes described.
상기 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장 장치 등을 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시 예를 구현하기 위한 기능적인 프로그램, 코드 및 코드 세그먼트(segment)들은 본 실시 예가 속하는 기술 분야의 통상의 기술자에 의해 용이하게 이해될 수 있을 것이다.The computer-readable recording medium includes all types of recording devices that store data that can be read by a computer. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. Additionally, computer-readable recording media may be distributed across computer systems connected to a network, and computer-readable codes may be stored and executed in a distributed manner. Additionally, functional programs, codes, and code segments for implementing this embodiment can be easily understood by those skilled in the art to which this embodiment belongs.
이상에서 살펴본 본 발명은 도면에 도시된 실시 예들을 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시 예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위 내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.The present invention examined above has been described with reference to the embodiments shown in the drawings, but these are merely illustrative examples, and those skilled in the art will understand that various modifications and modifications of the embodiments are possible therefrom. However, such modifications should be considered within the technical protection scope of the present invention. Therefore, the true technical protection scope of the present invention should be determined by the technical spirit of the attached patent claims.
Claims (11)
상기 시스템은 분산 원장을 갖는 제1 블록체인 네트워크를 포함하는 블록체인 기반 구매 시스템에 의해 운영되는 것이고, 상기 시스템은 소비자의 전자장치, 판매자의 전자장치 및 의료기관 전자장치와 통신하고,
상기 제1 블록체인 네트워크는, 소비자의 식별자, 상기 시스템의 식별자 및 의료기관의 식별자를 저장하고,
상기 방법은,
상기 시스템에서 상기 소비자가 관리대상 제품의 구매권한이 있는 것을 나타낸 처방인증VC를 상기 소비자의 전자장치로 발행하는 단계;
상기 소비자의 전자장치에서 소비자의 관리대상 제품의 구매권한 여부에 대한 VP를 생성하고, 상기 판매자의 전자장치로 상기 관리대상 제품의 구매권한 여부에 대한 VP를 전송하는 단계 - 상기 관리대상 제품의 구매권한 여부에 대한 VP는 소비자의 신원인증VC 와 처방 인증VC 에 포함되는 정보들 중에서 일부 또는 전부를 포함함;
상기 판매자의 전자장치에서 상기 제1 블록체인 네트워크에 저장된 제품유통관리기관의 식별자와 상기 관리대상 제품의 구매권한 여부에 대한 VP에 포함된 제품유통관리기관의 디지털 서명을 기초로 정당한 제품유통관리기관에 의하여 발급된 처방인증VC인 것을 검증하는 단계; 및
상기 검증 결과에 기초하여 상기 처방인증VC 내 처방전 정보 중 적어도 일부를 획득하고, 관리대상 제품을 구매하기 위한 거래 프로세스를 수행하는 단계 - 상기 거래 프로세스는 관리대상 제품의 거래를 위한 상기 판매자의 전자장치와 소비자의 전자 장치 간의 미리 설정된 일련의 동작으로 이루어진 것;을 포함하는,
방법. In the method performed by the system, a consumer purchases a product subject to management,
The system is operated by a blockchain-based purchasing system that includes a first blockchain network with a distributed ledger, and the system communicates with the consumer's electronic device, the seller's electronic device, and the medical institution's electronic device,
The first blockchain network stores the consumer's identifier, the system's identifier, and the medical institution's identifier,
The method is,
issuing, in the system, a prescription authentication VC indicating that the consumer has the right to purchase a product subject to management to the consumer's electronic device;
Creating a VP on whether the consumer has the right to purchase the management target product on the consumer's electronic device, and transmitting the VP on whether the consumer has the purchase authority for the management target product to the seller's electronic device - purchase of the management target product The VP for authorization includes some or all of the information included in the consumer's identity authentication VC and prescription authentication VC;
A legitimate product distribution management agency based on the identifier of the product distribution management agency stored in the first blockchain network on the seller's electronic device and the digital signature of the product distribution management agency included in the VP regarding whether or not the product is authorized to purchase the product subject to management. Verifying that it is a prescription certification VC issued by; and
Obtaining at least some of the prescription information in the prescription authentication VC based on the verification result, and performing a transaction process for purchasing a management target product - the transaction process includes the seller's electronic device for transaction of the management target product Consisting of a preset series of operations between the consumer's electronic device and the consumer's electronic device;
method.
상기 시스템에서 상기 소비자가 관리대상 제품의 구매권한이 있는 것을 나타낸 처방인증VC를 상기 소비자의 전자장치로 발행하는 단계는,
의료기관 전자장치에서 소비자에 대한 처방전 정보, 상기 소비자의 신원인증 VC 및 의료기관의 공인처방기관VC를 상기 의료기관 식별자로 디지털 서명하여 처방인증VC 발급을 요청하는 단계 - 상기 처방전 정보는 상기 소비자가 처방 대상이고 상기 관리대상 제품이 처방 제품인 처방 내용과 관련된 정보를 포함함;
상기 처방인증VC 발급의 요청에 반응하여, 상기 시스템에서 상기 공인처방기관 VC에 포함된 의료기관의 디지털 서명과 상기 제1 블록체인 네트워크에 저장된 의료기관의 식별자에 기초하여 처방인증VC의 발급 요청이 공인처방기관인 의료기관에 의한 디지털 서명인 것인지 검증하는 단계;
상기 처방인증VC의 발급 요청이 공인처방기관인 의료기관에 의한 디지털 서명인 것인지 검증된 경우 상기 시스템에서 상기 처방전 정보, 상기 소비자의 신원인증VC에 포함된 적어도 일부 데이터를 디지털 서명한 처방인증VC를 발행하는 단계를 포함하는 것을 특징으로 하는,
방법. The method of claim 1,
In the system, the step of issuing a prescription authentication VC indicating that the consumer has the right to purchase a product subject to management to the consumer's electronic device is,
A step of requesting issuance of a prescription authentication VC by digitally signing the prescription information for the consumer, the consumer's identity authentication VC, and the medical institution's authorized prescribing agency VC from the medical institution's electronic device with the medical institution identifier - The prescription information is provided to the consumer and is the subject of the prescription. Contains information related to prescriptions where the controlled product is a prescription product;
In response to the request for issuance of the prescription authentication VC, the system requests the issuance of the prescription authentication VC based on the digital signature of the medical institution included in the VC of the certified prescription institution and the identifier of the medical institution stored in the first blockchain network. Verifying whether the digital signature is from a medical institution;
When it is verified that the request for issuance of the prescription authentication VC is a digital signature by a medical institution that is an authorized prescribing institution, the system issues a prescription authentication VC that digitally signs the prescription information and at least some data included in the consumer's identity authentication VC. Characterized by comprising the steps:
method.
상기 시스템에서 상기 판매자가 상기 관리대상 제품의 판매권한이 있는 것을 나타낸 공인판매자VC를 상기 판매자의 전자장치로 발행하는 단계;
상기 관리대상 제품에 대한 구매권한 여부에 대한 VP를 상기 판매자의 전자장치로 전송하기 이전에, 상기 판매자의 전자장치에서 상기 판매자의 판매권한 여부에 대한 VP를 생성하고, 상기 소비자의 전자장치로 상기 관리대상 제품에 대한 판매권한 여부에 대한 VP를 전송하는 단계 - 상기 관리대상 제품의 구매권한 여부에 대한 VP는 상기 판매자의 신원인증VC 와 처방인증VC 에 포함되는 정보들 중에서 일부 또는 전부를 포함함; 및
상기 소비자의 전자장치에서 상기 제1 블록체인 네트워크에 저장된 제품유통관리기관의 식별자와 상기 관리대상 제품의 판매권한 여부에 대한 VP에 포함된 제품유통관리기관의 디지털 서명을 기초로 정당한 제품유통관리기관에 의하여 발급된 공인판매자VC인 것을 검증하는 단계;를 더 포함하고,
상기 정당한 제품유통관리기관에 의하여 발급된 공인판매자VC인 것을 검증된 경우, 상기 소비자의 전자장치에서 소비자의 관리대상 제품의 구매권한 여부에 대한 VP를 생성하거나 또는 상기 판매자의 전자장치로 상기 관리대상 제품의 구매권한 여부에 대한 VP를 전송하는 것을 특징으로 하는,
방법The method of claim 1, wherein the method comprises:
issuing, in the system, an authorized seller VC indicating that the seller has the authority to sell the management target product to the seller's electronic device;
Before transmitting the VP regarding the purchase authority for the management target product to the seller's electronic device, the seller's electronic device generates a VP regarding the seller's sales authority, and transmits the VP to the consumer's electronic device. A step of transmitting a VP regarding whether the product is authorized to be sold - The VP regarding whether the product is authorized to be purchased includes some or all of the information included in the seller's identity authentication VC and prescription authentication VC ; and
A legitimate product distribution management agency based on the identifier of the product distribution management agency stored in the first blockchain network on the consumer's electronic device and the digital signature of the product distribution management agency included in the VP regarding whether or not the product is authorized to sell the product subject to management. It further includes; verifying that it is an authorized seller VC issued by,
If it is verified that it is an authorized seller VC issued by the legitimate product distribution management agency, a VP on whether the consumer has the right to purchase the product subject to management is created on the consumer's electronic device, or the seller's electronic device is used to Characterized by transmitting a VP regarding whether the product is authorized to be purchased,
method
상기 시스템에서 상기 판매자가 상기 관리대상 제품의 판매권한이 있는 것을 나타낸 공인판매자VC를 상기 판매자의 전자장치로 발행하는 단계는,
판매자의 전자장치에서 상기 판매자의 신원인증 VC 를 상기 판매자의 식별자로 디지털 서명하여 공인판매자VC 발급을 요청하는 단계;
상기 공인판매자VC발급의 요청에 반응하여, 상기 시스템에서 상기 판매자의 신원인증VC에 포함된 상기 판매자의 디지털 서명과 상기 제1 블록체인 네트워크에 저장된 판매자의 식별자에 기초하여 상기 공인판매자VC의 발급 요청이 정당한 판매자로부터 전송된 것인지 검증하는 단계;
상기 정당한 판매자로부터 전송된 것인지 검증된 경우 상기 시스템에서 공인판매자 DB의 정보와 판매자인증VC의 정보를 비교하는 단계; 및
상기 공인판매자DB에 상기 판매자인증VC와 일치하는 정보가 있는 경우 상기 공인판매자VC의 발급을 요청한 판매자의 전자장치로 상기 공인판매자VC를 발행하는 단계를 포함하는 것을 특징으로 하는,
방법. According to claim 3,
In the system, the step of issuing an authorized seller VC indicating that the seller has the authority to sell the product subject to management to the seller's electronic device is,
Requesting issuance of an authorized seller VC by digitally signing the seller's identity authentication VC with the seller's identifier on the seller's electronic device;
In response to the request for issuance of the authorized seller VC, the system requests issuance of the authorized seller VC based on the seller's digital signature included in the seller's identity authentication VC and the seller's identifier stored in the first blockchain network. Verifying whether the transmission is from a legitimate seller;
Comparing the information of the authorized seller DB and the information of the seller authentication VC in the system when it is verified that the transmission is from a legitimate seller; and
Characterized in that it includes the step of issuing the authorized seller VC to the electronic device of the seller who requested issuance of the authorized seller VC when there is information matching the seller authentication VC in the authorized seller DB.
method.
상기 검증 결과에 기초하여 상기 처방인증VC 내 처방전 정보 중 적어도 일부를 획득하고, 관리대상 제품을 구매하기 위한 거래 프로세스를 수행하는 단계는,
상기 소비자에 대한 관리대상 제품의 복용 기간, 일별 복용 회수, 1회당 복용량에 기초하여 구매 허용된 전체 복용량을 산출하는 단계; 및
상기 전체 복용량만큼의 관리대상 제품을 구매하기 위한 거래 프로세스를 수행하는 단계를 포함하는 것을 특징으로 하는,
방법. The method of claim 1,
The step of obtaining at least some of the prescription information in the prescription authentication VC based on the verification result and performing a transaction process to purchase the product to be managed,
Calculating the total dosage permitted for purchase based on the period of administration, number of daily dosages, and dosage per time of the product subject to management for the consumer; and
Characterized in that it comprises the step of performing a transaction process to purchase the entire dose of the product to be administered,
method.
상기 거래 프로세스를 위한 소비자의 구매 주문을 생성하여 거래 시스템에 전송하는 단계 -상기 소비자의 구매 주문은 상기 소비자의 전자장치 또는 판매자의 전자장치에서 생성되는 것임;
상기 판매자의 전자장치에서 상기 거래 프로세스를 위한 상기 판매자의 판매 주문을 생성하여 상기 거래 시스템에 전송하는 단계; 및
상기 거래 시스템에서 상기 소비자의 구매 주문 및 판매자의 구매 주문에 기초하여 거래 트랜잭션을 처리하는 단계를 포함하고,
상기 거래 시스템은 자산 거래를 위한 복수의 트랜잭션을 처리하도록 구성된 것으로서,
복수의 컴퓨팅 장치를 포함한 제2 블록체인 네트워크 - 상기 제2 블록체인 네트워크는 상기 복수의 컴퓨팅 장치에 포함된 상기 소비자의 전자장치 및 판매자의 전자장치에 연결되고, 상기 소비자의 전자장치, 판매자의 전자장치에 블록체인이 저장됨;
상기 블록체인 네트워크와 통신하는 거래소 서버; 및
분산 저장소를 포함하고,
상기 방법은,
상기 판매자의 전자장치에서 판매할 관리대상 제품을 등록하는 것에 따라서 자산 지분 스마트컨트랙트를 통해 상기 관리대상 제품에 연관된 자산 지분 토큰을 발행하는 단계; 및
상기 소비자의 전자장치에서 법정화폐를 입금하는 것에 따라서 통화 토큰 스마트컨트랙트를 통해 상기 통화 토큰을 발행하는 단계를 더 포함하는 것을 특징으로 하는,
방법. The method of claim 5, wherein the step of performing a transaction process to purchase the entire dose of the management target product includes,
Generating a consumer's purchase order for the transaction process and transmitting it to a transaction system - the consumer's purchase order is generated on the consumer's electronic device or the seller's electronic device;
generating the seller's sales order for the transaction process on the seller's electronic device and transmitting it to the transaction system; and
Processing, in the trading system, a trading transaction based on the consumer's purchase order and the seller's purchase order,
The trading system is configured to process multiple transactions for asset trading,
A second blockchain network including a plurality of computing devices - the second blockchain network is connected to the consumer's electronic device and the seller's electronic device included in the plurality of computing devices, and the consumer's electronic device and the seller's electronic device are connected to the consumer's electronic device and the seller's electronic device. Blockchain stored on device;
an exchange server that communicates with the blockchain network; and
Includes distributed storage,
The method is,
issuing an asset share token associated with the managed product through an asset share smart contract in accordance with registering the managed product to be sold on the seller's electronic device; and
Characterized in that it further comprises the step of issuing the currency token through a currency token smart contract in response to depositing fiat currency on the consumer's electronic device.
method.
상기 거래 프로세스를 위한 소비자의 구매 주문을 생성하는 단계는,
상기 판매자의 전자장치 또는 소비자의 전자장치에서 상기 관리대상 제품에 연관된 자산 지분 토큰을 결제 대상으로 지정하고 상기 관리대상 제품의 전체 복용량을 결제 수량으로 지정하여 상기 소비자의 구매 주문을 생성하는 것이고,
상기 거래 프로세스를 위한 상기 판매자의 판매 주문을 생성하는 단계는,
상기 판매자의 전자장치에서 상기 통화 토큰을 결제 수단으로 지정하고 상기 결제 대상 및 결제 수량에 대응한 통화 토큰의 개수를 결제 금액으로 지정하여 상기 판매자의 판매 주문을 생성하는 것을 특징으로 하는,
방법. The method of claim 6,
The step of creating a consumer purchase order for the transaction process is,
Designating an asset equity token associated with the managed product on the seller's electronic device or the consumer's electronic device as the payment object and designating the entire dosage of the managed product as the payment quantity to create the consumer's purchase order,
The step of creating a sales order for the seller for the transaction process is:
Characterized in generating a sales order for the seller by designating the currency token as a payment method in the seller's electronic device and specifying the number of currency tokens corresponding to the payment object and payment quantity as the payment amount,
method.
판매자의 전자장치에서 관리대상 제품을 거래 시스템의 자산으로 등록하여 자산 지분 토큰 입금 요청이 발생하면, 상기 자산 지분 토큰 입금 요청을 판매자의 개인 키로 암호화 서명하여 상기 자산 지분 스마트컨트랙트로 전송하는 단계;
상기 자산 지분 스마트컨트랙트에서 자산 지분 토큰 입금 트랙잭션에 응답하여 등록된 상기 관리대상 제품에 연관된 자산 지분 토큰을 거래 스마트컨트랙트로 이동시키는 단계; 및
상기 거래 스마트컨트랙트에서 상기 자산 지분 토큰의 입금 이벤트 로그를 생성하고, 상기 제2 블록체인 네트워크 내 블록체인에 저장하는 단계를 포함하는 것을 특징으로 하는,
방법. The method of claim 6, wherein the step of issuing an asset equity token associated with the product to be managed comprises:
When a management target product is registered as an asset in the transaction system on the seller's electronic device and a request for asset equity token deposit occurs, cryptographically signing the asset equity token deposit request with the seller's private key and transmitting it to the asset equity smart contract;
moving an asset share token associated with the registered managed product to a transaction smart contract in response to an asset share token deposit transaction in the asset share smart contract; and
Characterized in that it includes the step of generating a deposit event log of the asset equity token in the transaction smart contract and storing it in a blockchain within the second blockchain network.
method.
상기 소비자의 전자장치에서 법정화폐를 입금하여 통화 토큰 입금 요청이 발생하면, 상기 통화 토큰 입금 요청을 상기 소비자의 개인 키로 암호화 서명하여 상기 통화 토큰 컨트랙트로 전송하는 단계;
상기 통화 토큰 스마트컨트랙트에서 통화 토큰 입금 트랜잭션에 응답하여 상기 통화 토큰을 상기 거래 스마트컨트랙트로 이동하는 단계;
상기 거래 스마트컨트랙트에서 상기 통화 토큰의 입금 이벤트 로그를 생성하고, 상기 제2 블록체인 네트워크 내 블록체인에 저장하는 단계를 포함하는 것을 특징으로 하는,
방법. The method of claim 6, wherein issuing the currency token comprises:
When a currency token deposit request occurs by depositing fiat currency on the consumer's electronic device, cryptographically signing the currency token deposit request with the consumer's private key and transmitting it to the currency token contract;
moving the currency token to the transaction smart contract in response to a currency token deposit transaction in the currency token smart contract;
Characterized in that it includes the step of generating a deposit event log of the currency token in the transaction smart contract and storing it in a blockchain within the second blockchain network.
method.
상기 판매자의 전자장치에서 판매자의 개인 키로 암호화 서명된 판매자의 판매 주문을 거래소 서버 및 분산 저장소로 송신하고 상기 소비자의 전자장치에서 소비자의 개인 키로 암호화 서명된 소비자의 구매 주문을 상기 거래소 서버 및 상기 분산 저장소로 송신하는 단계;
거래소 서버에서 소비자의 거래 요청인 구매 주문, 판매자의 거래 요청인 판매 주문에 대응되는 트랜잭션을 처리하고, 상기 분산 저장소에서 상기 거래 요청에 대응되는 암호화 서명된 트랜잭션을 저장하는 단계; 및
상기 소비자의 구매 주문 및 상기 판매자의 판매 주문을 매칭하여, 상기 결제 금액만큼의 상기 통화 토큰의 수량이 상기 소비자의 거래소 계좌에서 상기 판매자의 거래소 계좌로 전송되고 상기 판매자의 거래소 계좌에서 상기 결제 수량만큼의 상기 자산 지분 토큰의 수량이 상기 판매자의 거래소 계좌에서 상기 소비자의 거래소 계좌로 전송되도록 하는 상기 거래 트랜잭션을 생성하고, 상기 거래 트랜잭션을 상기 거래소 서버의 개인 키로 암호화 서명하여 상기 분산 저장소에 저장하는 단계를 포함하는 것을 특징으로 하는,
방법. The method of claim 7, wherein processing a transaction based on the consumer's purchase order and the seller's purchase order in the transaction system comprises:
Transmit the seller's sales order, which is cryptographically signed with the seller's private key from the seller's electronic device, to the exchange server and distributed storage, and transmit the consumer's purchase order, which is cryptographically signed with the consumer's private key from the consumer's electronic device, to the exchange server and the distributed storage. sending to storage;
Processing transactions corresponding to a purchase order, which is a transaction request from a consumer, and a sell order, which is a transaction request from a seller, at an exchange server, and storing a cryptographically signed transaction corresponding to the transaction request in the distributed storage; and
By matching the consumer's purchase order and the seller's sell order, a quantity of the currency token equal to the payment amount is transferred from the consumer's exchange account to the seller's exchange account and from the seller's exchange account to the payment quantity. Creating the trading transaction that causes the quantity of the asset equity tokens to be transferred from the seller's exchange account to the consumer's exchange account, cryptographically signing the trading transaction with the private key of the exchange server and storing it in the distributed storage. Characterized in that it includes,
method.
A computer-readable recording medium on which a program for performing a method for a consumer to purchase a management target product according to any one of claims 1 to 10 is recorded.
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240050180A true KR20240050180A (en) | 2024-04-18 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11651365B2 (en) | Blockchain architecture, system, method and device for automated cybersecurity and data privacy law compliance with proprietary off-chain storage mechanism | |
CN111448565B (en) | Data authorization based on decentralised identification | |
US11025419B2 (en) | System for digital identity authentication and methods of use | |
US20210117962A1 (en) | Methods and systems for digital reward processing | |
US20190156938A1 (en) | System, method and data model for secure prescription management | |
US11715099B2 (en) | Method and system for trust-based payments via blockchain | |
TW381241B (en) | Electronic wallet based on distributed network | |
US6317729B1 (en) | Method for certifying delivery of secure electronic transactions | |
CN109919604A (en) | Method and system for the transaction for using the consumer of crypto token to initiate | |
US20160217437A1 (en) | Method for generating intangible bit money managed as data and system for providing services relevant to same | |
CN109478282A (en) | Digital asset distribution is carried out by the transaction device | |
US20190392432A1 (en) | Capital inheritance system and method for facilitating transfer of digital cryptocurrency | |
US20220270725A1 (en) | Blockchain architecture, system, method and device for facilitating electronic health record maintenance, sharing and monetization using a decentralized health information platform including a non-fungible token function and security protocols | |
US20200160352A1 (en) | Method and system for identifying product genuineness | |
US11710122B2 (en) | Using a nested random number-based security ecosystem for block chains for electronic cash tokens and other embodiments | |
Kurki | Benefits and guidelines for utilizing blockchain technology in pharmaceutical supply chains: case Bayer Pharmaceuticals | |
KR20240050180A (en) | System and method for trading based on blockchain technologies | |
Poongodi et al. | Influence of blockchain technology in pharmaceutical industries | |
Cilli et al. | " Safe Prescription": A Decentralized Blockchain Protocol to Manage Medical Prescriptions. | |
AU2005242991B2 (en) | Improved ticketing scheme | |
Madir | Blockchain in healthcare: a Panacea or Scourge | |
Chowdhury et al. | Cryptographic ledger of blockchain technology in healthcare | |
US11861622B2 (en) | Method and system of identifying and reducing scalping using distributed ledgers | |
Madir | Blockchain opportunities in healthcare | |
US20210233671A1 (en) | System for managing medical documentation |