KR20240007757A - Method and system for privacy-oriented provenance at point of sale - Google Patents
Method and system for privacy-oriented provenance at point of sale Download PDFInfo
- Publication number
- KR20240007757A KR20240007757A KR1020237042966A KR20237042966A KR20240007757A KR 20240007757 A KR20240007757 A KR 20240007757A KR 1020237042966 A KR1020237042966 A KR 1020237042966A KR 20237042966 A KR20237042966 A KR 20237042966A KR 20240007757 A KR20240007757 A KR 20240007757A
- Authority
- KR
- South Korea
- Prior art keywords
- product identification
- product
- processing system
- transaction
- identification values
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 85
- 238000012545 processing Methods 0.000 claims abstract description 96
- 238000012795 verification Methods 0.000 claims description 104
- 238000010200 validation analysis Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 abstract description 36
- 238000004891 communication Methods 0.000 description 30
- 230000005540 biological transmission Effects 0.000 description 24
- 238000003860 storage Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 16
- 238000004590 computer program Methods 0.000 description 10
- 238000013475 authorization Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000003814 drug Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000825 pharmaceutical preparation Substances 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000003962 counterfeit drug Substances 0.000 description 1
- 229940126534 drug product Drugs 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 229940127557 pharmaceutical product Drugs 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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/018—Certifying business or products
-
- 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/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/204—Point-of-sale [POS] network systems comprising interface for record bearing medium or carrier for electronic funds transfer or payment credit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4016—Transaction verification involving fraud or risk level assessment in transaction processing
-
- 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]
-
- 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
- G06Q2220/00—Business processing using cryptography
Abstract
본 개시내용은 거래 메시지를 통해 판매 시점에서 제품 진위를 검증하기 위한 시스템 및 방법에 대한 설명을 제공한다. 판매 시점은 전통적인 체크아웃 프로세스의 일부로 소비자가 구매에 관심이 있는 제품으로부터 제품 식별자를 수집할 수 있다. 제품 식별자는 결제 거래를 통해 판매자의 인수 은행에 제출되는 거래 메시지 내의 특수 데이터 요소에 포함될 수 있다. 인수자에 의한 거래 처리의 일환으로, 인수자는 거래 메시지에 포함된 제품 식별자에 대한 출처 블록체인을 검사하여 구매되는 제품의 진위를 확인하기 위해 프로세서와 상담할 수 있다. 제품이 진품인 것으로 판단되는 경우, 평소처럼 거래가 진행될 수 있다. 제품이 진품이 아닌 경우, 인수자는 거래를 거부하고 소비자가 위조품이나 사기품을 구매하는 것을 중단시킬 수 있다.This disclosure provides a description of systems and methods for verifying product authenticity at the point of sale via transactional messages. Point of sale may collect product identifiers from products the consumer is interested in purchasing as part of the traditional checkout process. The product identifier may be included in a special data element within the transaction message submitted to the merchant's acquiring bank throughout the payment transaction. As part of processing the transaction by the consignor, the consignee may consult with the processor to verify the authenticity of the product being purchased by checking the blockchain of origin for product identifiers included in the transaction message. If the product is determined to be genuine, the transaction can proceed as usual. If the product is not genuine, the consignee can refuse the transaction and stop the consumer from purchasing counterfeit or fraudulent products.
Description
관련 출원의 교차 참조Cross-reference to related applications
본 출원은 2021년 5월 13일에 출원된 미국 특허 출원 제17/319,532호의 이익을 주장하며, 그 전체 내용은 모든 목적을 위해 본원에 참조로서 원용된다.This application claims the benefit of U.S. Patent Application No. 17/319,532, filed May 13, 2021, the entire contents of which are hereby incorporated by reference for all purposes.
기술분야Technology field
본 개시내용은 판매 시점에서 개인 정보 보호 지향 출처에 관한 것으로, 구체적으로 거래 메시지를 통해 판매 시점에서 제품의 진위를 검증할 수 있도록 품목 출처를 추적하는 블록체인의 사용에 관한 것이다.This disclosure relates to privacy-oriented provenance at the point of sale, and specifically to the use of blockchain to track item provenance so that the authenticity of a product can be verified at the point of sale via transactional messages.
블록체인은 처음에 암호 화폐로 결제 거래를 수행하는 데 사용하기 위한 저장 메커니즘으로 생성되었다. 블록체인을 사용하면 탈중앙화, 분산 컴퓨팅, 거래와 연관된 투명성 등 많은 이점을 제공하고, 또한 거래와 연관된 개인 또는 엔티티에 익명성을 제공한다. 블록체인의 가장 인기 있는 측면 중 하나는 불변의 기록인 점으로, 체인의 일부인 모든 거래는 블록체인에 저장되고 특히 체인이 길어지고 블록체인 네트워크가 더 많은 노드를 추가함에 따라 계산 요건 및 대역폭 제한으로 인해 변경될 수 없다.Blockchain was initially created as a storage mechanism for use in conducting payment transactions with cryptocurrency. Using blockchain provides many advantages such as decentralization, distributed computing, transparency associated with transactions, and also provides anonymity to the individuals or entities involved in the transaction. One of the most popular aspects of blockchain is that it is an immutable record, meaning that all transactions that are part of a chain are stored on the blockchain, especially as chains grow longer and blockchain networks add more nodes, due to computational requirements and bandwidth limitations. cannot be changed due to
블록체인은 임의의 데이터 방식에 대해 불변의 기록을 저장하기 때문에, 부패성 상품이나 고가 품목의 생산 및 유통의 추적과 같은 품목의 출처에 관한 정보를 저장하기 위해 일부 블록체인이 개발되었다. 예를 들어, 블록체인을 사용하여 생산물을 추적할 수 있으며, 여기서 생산물이 수확되고, 수확 장소에서 픽업되고, 유통업자에 맡겨지고, 유통업자에 의해 트럭에 실리고, 소매업자에 도착되고, 소매업자에 의해 수령되고, 소비자에게 판매될 때 항목이 생성될 수 있다. 그 결과, 이러한 항목에는 정품의 수명 주기가 저장될 수 있다.Because blockchains store immutable records of arbitrary data, some blockchains have been developed to store information about the provenance of items, such as tracking the production and distribution of perishable goods or high-value items. For example, blockchain could be used to track produce, where it is harvested, picked up at the harvest site, dropped off at a distributor, loaded on a truck by a distributor, arrived at a retailer, and then delivered to a retailer. An item may be created when it is received by and sold to a consumer. As a result, the life cycle of the original product can be stored in these items.
그러나, 소비자는 출처 블록체인에 액세스하거나, 이러한 블록체인에서 원하는 품목을 식별하거나, 내부에 저장되는 데이터를 이해할 수 있는 능력이 없을 수 있다. 동시에, 약품이나 고가의 사치품에 관심이 있는 소비자와 같은 소비자는 구매하려는 제품이 진품인지를 확인하는 데 상당한 관심을 가질 수 있다. 따라서, 소비자가 구매할 제품의 진위를 검증하여 출처 블록체인을 활용할 수 있는 시스템이 필요하다.However, consumers may not have the ability to access the blockchain of origin, identify the desired item on such blockchain, or understand the data stored within. At the same time, consumers, such as those interested in pharmaceuticals or expensive luxury goods, may have a strong interest in ensuring that the product they are purchasing is authentic. Therefore, a system is needed that can utilize the provenance blockchain to verify the authenticity of the product that consumers will purchase.
본 개시내용은 거래 메시지를 통해 판매 시점에서 제품 진위를 검증하기 위한 시스템 및 방법에 대한 설명을 제공한다. 판매 시점은 전통적인 체크아웃 프로세스의 일부로 소비자가 구매에 관심이 있는 제품으로부터 제품 식별자를 수집할 수 있다. 제품 식별자는 결제 거래를 통해 판매자의 인수 은행에 제출되는 거래 메시지 내의 특수 데이터 요소에 포함될 수 있다. 인수자에 의한 거래 처리의 일환으로, 인수자는 거래 메시지에 포함된 제품 식별자에 대한 출처 블록체인을 검사하여 구매되는 제품의 진위를 확인하기 위해 프로세서와 상담할 수 있다. 제품이 진품인 것으로 판단되는 경우, 평소처럼 거래가 진행될 수 있다. 제품이 진품이 아닌 경우, 인수자는 거래를 거부하고 소비자가 위조품이나 사기품을 구매하는 것을 중단시킬 수 있다. 소비자는 또한 판매 시점을 통해 하나 이상의 제품이 진품이 아님을 통지받을 수 있으며, 이는 구매되는 다른 제품의 소비자를 안심시킬 수 있거나 소비자가 떠나서 다른 판매자를 선택하게 할 수 있다. 표준 거래 메시지를 사용함으로써, 소비자 경험은 동일하게 유지될 수 있고 기존 통신 경로와 프로세스는 소비자, 판매자, 및 제조업자 모두의 이익을 위해 아직 추가 서비스를 제공하는 동안 활용될 수 있다.This disclosure provides a description of systems and methods for verifying product authenticity at the point of sale via transactional messages. Point of sale may collect product identifiers from products the consumer is interested in purchasing as part of the traditional checkout process. The product identifier may be included in a special data element within the transaction message submitted to the merchant's acquiring bank throughout the payment transaction. As part of processing the transaction by the consignor, the consignee may consult with the processor to verify the authenticity of the product being purchased by checking the blockchain of origin for product identifiers included in the transaction message. If the product is determined to be genuine, the transaction can proceed as usual. If the product is not genuine, the consignee can refuse the transaction and stop the consumer from purchasing counterfeit or fraudulent products. Consumers may also be notified through the point of sale that one or more products are not authentic, which may reassure the consumer of other products being purchased or may cause the consumer to walk away and choose another seller. By using standard transactional messages, the consumer experience can remain the same and existing communication paths and processes can be utilized while still providing additional services for the benefit of consumers, sellers, and manufacturers alike.
거래 메시지를 통해 판매 시점에서 제품 진위를 검증하기 위한 방법은 판매 시점 장치가 하나 이상의 제품 식별 값을 수신하는 단계로서, 각 제품 식별 값은 결제 거래에서 구매되는 제품에 대응하는, 단계; 판매 시점 장치가 하나 이상의 제품 식별 값을 저장하는 하나 이상의 데이터 요소를 포함하는 거래 메시지를 생성하는 단계로서, 거래 메시지는 하나 이상의 표준에 따라 형식화되는, 단계; 판매 시점 장치가 거래 메시지를 제1 처리 시스템으로 전송하는 단계; 제1 처리 시스템이 수신된 거래 메시지에 포함된 하나 이상의 데이터 요소로부터 파싱된 하나 이상의 제품 식별 값을 제2 처리 시스템으로 전송하는 단계; 제1 처리 시스템이 제2 처리 시스템으로부터 하나 이상의 제품 식별 값 각각에 대한 검증 결과를 수신하는 단계; 및 제1 처리 시스템이 결제 거래를 처리하는 단계를 포함하고, 처리는 (i) 하나 이상의 제품 식별 값 중 적어도 하나에 대한 검증 결과가 실패한 검증임을 나타내는 경우 결제 거래를 거부하는 판매 시점 장치에 응답 메시지를 전송하는 단계, 또는 (ii) 하나 이상의 제품 식별 값 각각에 대한 검증 결과가 성공적인 검증임을 나타내는 경우 거래 메시지를 결제 네트워크로 전송하는 단계를 포함한다.A method for verifying product authenticity at a point of sale via a transaction message comprising: a point of sale device receiving one or more product identification values, each product identification value corresponding to a product being purchased in a payment transaction; generating, by a point-of-sale device, a transaction message comprising one or more data elements storing one or more product identification values, the transaction message being formatted according to one or more standards; a point-of-sale device transmitting a transaction message to a first processing system; transmitting, by a first processing system, to a second processing system one or more product identification values parsed from one or more data elements included in a received transaction message; A first processing system receiving verification results for each of one or more product identification values from a second processing system; and a first processing system processing the payment transaction, the processing comprising: (i) a response message to the point-of-sale device rejecting the payment transaction if the verification result for at least one of the one or more product identification values indicates a failed verification; or (ii) transmitting a transaction message to the payment network if the verification result for each of the one or more product identification values indicates successful verification.
거래 메시지를 통해 판매 시점에서 제품 진위를 검증하기 위한 시스템은 판매 시점 장치; 제1 처리 시스템; 및 제2 처리 시스템을 포함하고 - 판매 시점 장치는 하나 이상의 제품 식별 값을 수신하고, 각 제품 식별 값은 결제 거래에서 구매되는 제품에 대응함 -; 하나 이상의 제품 식별 값을 저장하는 하나 이상의 데이터 요소를 포함하는 거래 메시지를 생성하고 - 거래 메시지는 하나 이상의 표준에 따라 형식화됨 -; 거래 메시지를 제1 처리 시스템으로 전송하고, 제1 처리 시스템은 수신된 거래 메시지에 포함된 하나 이상의 데이터 요소로부터 파싱된 하나 이상의 제품 식별 값을 제2 처리 시스템으로 전송하고; 제2 처리 시스템으로부터 하나 이상의 제품 식별 값 각각에 대한 검증 결과를 수신하고; 결제 거래를 처리하고, 처리는 (i) 하나 이상의 제품 식별 값 중 적어도 하나에 대한 검증 결과가 실패한 검증임을 나타내는 경우 결제 거래를 거부하는 판매 시점 장치에 응답 메시지를 전송하는 단계, 또는 (ii) 하나 이상의 제품 식별 값 각각에 대한 검증 결과가 성공적인 검증임을 나타내는 경우 거래 메시지를 결제 네트워크로 전송하는 단계를 포함한다.The system for verifying product authenticity at the point of sale through transactional messages includes a point of sale device; first processing system; and a second processing system, wherein the point-of-sale device receives one or more product identification values, each product identification value corresponding to a product being purchased in the payment transaction; Generate a transaction message containing one or more data elements storing one or more product identification values - the transaction message being formatted according to one or more standards -; transmitting a transaction message to a first processing system, wherein the first processing system transmits to a second processing system one or more product identification values parsed from one or more data elements included in the received transaction message; receive verification results for each of the one or more product identification values from the second processing system; Processing a payment transaction, the processing comprising: (i) sending a response message to a point-of-sale device rejecting the payment transaction if the verification result for at least one of the one or more product identification values indicates a failed verification; or (ii) If the verification result for each of the above product identification values indicates successful verification, it includes transmitting a transaction message to the payment network.
본 개시내용의 범위는 첨부 도면과 함께 읽을 때 예시적인 실시예에 대한 다음의 상세한 설명으로부터 가장 잘 이해된다. 도면에는 다음의 도해가 포함되어 있다.
도 1은 예시적인 실시예에 따른 거래 메시지를 통해 판매 시점에서 제품 진위를 검증하는 고수준 시스템 아키텍처를 나타낸 블록도이다.
도 2는 예시적인 실시예에 따른 결제 거래에서 제품 진위를 검증하는 데 사용하기 위한 도 1의 시스템의 컴퓨팅 시스템을 나타낸 블록도이다.
도 3a 및 도 3b는 예시적인 실시예에 따른 거래 메시지 및 출처 블록체인을 통해 판매 시점에서 제품 진위를 검증하기 위한 프로세스를 나타낸 흐름도이다.
도 4는 예시적인 실시예에 따른 거래 메시지를 통해 판매 시점에서 제품 진위를 검증하기 위한 예시적인 방법을 나타낸 순서도이다.
도 5는 예시적인 실시예에 따른 컴퓨터 시스템 아키텍처를 나타낸 블록도이다.
본 개시내용이 적용 가능한 추가적인 영역은 이하에 제공되는 상세한 설명으로부터 명백해질 것이다. 예시적인 실시예의 상세한 설명은 단지 예시적인 목적으로만 의도되며, 이에 따라 본 개시내용의 범위를 반드시 제한하려는 의도가 아님을 이해해야 한다.The scope of the disclosure is best understood from the following detailed description of exemplary embodiments when read in conjunction with the accompanying drawings. The drawing includes the following illustrations:
1 is a block diagram illustrating a high-level system architecture for verifying product authenticity at the point of sale via transactional messages according to an example embodiment.
FIG. 2 is a block diagram illustrating a computing system of the system of FIG. 1 for use in verifying product authenticity in a payment transaction according to an example embodiment.
3A and 3B are flow diagrams illustrating a process for verifying product authenticity at the point of sale via a transaction message and provenance blockchain according to an example embodiment.
4 is a flowchart illustrating an example method for verifying product authenticity at the point of sale via a transaction message according to an example embodiment.
Figure 5 is a block diagram illustrating a computer system architecture according to an example embodiment.
Additional areas where the present disclosure is applicable will become apparent from the detailed description provided below. It is to be understood that the detailed description of the exemplary embodiments is intended for illustrative purposes only and is not necessarily intended to limit the scope of the disclosure accordingly.
용어의 해설Glossary of Terms
블록체인 - 블록체인 기반 화폐의 모든 거래에 대한 공개 원장. 하나 이상의 컴퓨팅 장치는 블록체인 네트워크를 포함할 수 있으며, 이는 블록체인에서 블록의 일부로서 거래를 처리하고 기록하도록 구성될 수 있다. 블록이 완성되면, 그 블록은 블록체인에 추가되고 이에 의해 거래 기록이 업데이트된다. 여러 경우에, 블록체인은 시간순에 따른 거래의 원장일 수 있거나, 또는 블록체인 네트워크가 사용하기에 적합할 수 있게 기타 순서로 제시될 수 있다. 일부 구성에서, 블록체인에 기록된 거래는 특정 주소에 얼마의 화폐가 있는지를 블록체인이 기록하도록, 목적지 주소와 화폐량을 포함할 수 있다. 일부 경우에, 거래가 금융이고 다른 거래는 금융이 아니거나 소스 주소, 타임스탬프 등과 같은 추가 정보 또는 다른 정보를 포함할 수 있다. 일부 실시예들에서, 블록체인은 또한, 심지어 그 운영자들에 의해서도 변조하고 수정하기 어려운 데이터 기록들의 연속적으로 증가하는 리스트를 유지하는 분산 데이터베이스에 위치되거나 위치될 필요가 있는 거래의 형태로서 거의 임의의 유형의 데이터를 포함하거나 대안적으로 포함할 수 있고, 작업 증명 및/또는 그와 연관된 임의의 다른 적절한 검증 기술들을 통해 블록체인 네트워크에 의해 확인 및 유효성 검사될 수 있다. 일부 경우에, 주어진 거래에 관한 데이터는 거래 데이터에 첨부된 거래의 직접적인 일부가 아닌 추가 데이터를 더 포함할 수 있다. 일부 경우에, 블록체인에 이러한 데이터의 포함은 거래로 여겨질 수 있다. 이러한 경우에, 블록체인은 특정 디지털, 가상, 피아트(fiat), 또는 다른 유형의 화폐와 직접 연관되지 않을 수 있다.Blockchain – A public ledger of all transactions in a blockchain-based currency. One or more computing devices may comprise a blockchain network, which may be configured to process and record transactions as part of blocks in a blockchain. Once a block is complete, it is added to the blockchain and the transaction record is thereby updated. In many cases, a blockchain may be a ledger of transactions in chronological order, or may be presented in some other order as may be suitable for use by a blockchain network. In some configurations, transactions recorded on the blockchain may include a destination address and an amount of currency, such that the blockchain records how much currency is at a particular address. In some cases, transactions are financial and other transactions are not financial or may contain additional or different information such as source address, timestamp, etc. In some embodiments, a blockchain also allows for nearly random transactions in the form of transactions to be located, or need to be located, in a distributed database that maintains a continuously growing list of data records that are difficult to tamper with and modify, even by their operators. It may contain or alternatively contain tangible data, and may be verified and validated by the blockchain network through proof-of-work and/or any other suitable verification techniques associated therewith. In some cases, data regarding a given transaction may further include additional data that is not directly part of the transaction attached to the transaction data. In some cases, the inclusion of such data in a blockchain can be considered a transaction. In these cases, the blockchain may not be directly associated with a specific digital, virtual, fiat, or other type of currency.
결제 네트워크 - 주어진 기간 동안 수천 건, 수백만 건, 및 심지어 수십억 건의 거래에 대해 현금 대체 수단을 사용하여 금전을 이체하는 데 사용되는 시스템 또는 네트워크. 결제 네트워크는 다양한 유형의 거래에 대한 금전 이체를 처리하기 위해 여러 가지 다양한 프로토콜 및 절차를 사용할 수 있다. 결제 네트워크를 통해 수행될 수 있는 거래는 제품 또는 서비스 구매, 신용 구매, 직불 거래, 자금 이체, 계좌 인출 등을 포함할 수 있다. 결제 네트워크는 결제 카드, 신용장, 수표, 거래 계좌 등을 포함할 수 있는 현금 대체 수단을 통해 거래를 수행하도록 구성될 수 있다. 결제 네트워크로 작동하도록 구성된 네트워크 또는 시스템의 예로는 Mastercard®, VISA®, Discover®, American Express®, PayPal® 등이 운영하는 네트워크 또는 시스템을 포함한다. 본원에서 "결제 네트워크"라는 용어의 사용은 엔티티로서의 결제 네트워크와, 결제 네트워크를 구성하는 장비, 하드웨어, 및 소프트웨어와 같은 물리적 결제 네트워크 둘 모두를 지칭할 수 있다.Payment Network - A system or network used to transfer money using alternative means of cash for thousands, millions, and even billions of transactions over a given period of time. Payment networks may use a number of different protocols and procedures to process monetary transfers for different types of transactions. Transactions that can be performed through a payment network may include purchases of products or services, credit purchases, debit transactions, fund transfers, account withdrawals, etc. A payment network may be configured to conduct transactions through alternative means of cash, which may include payment cards, letters of credit, checks, transaction accounts, etc. Examples of networks or systems configured to operate as payment networks include networks or systems operated by Mastercard®, VISA®, Discover®, American Express®, PayPal®, etc. Use of the term “payment network” herein may refer to both the payment network as an entity and the physical payment network, such as the equipment, hardware, and software that make up the payment network.
거래 계좌 - 당좌 예금 계좌, 저축 계좌, 신용 계좌, 가상 결제 계좌 등과 같이 거래 자금을 조달하는 데 사용될 수 있는 금융 계좌. 거래 계좌는 소비자와 연관될 수 있으며, 이는 개인, 가족, 회사, 법인, 정부 기관 등을 포함할 수 있는 결제 계좌와 연관된 임의의 적합한 유형의 엔티티일 수 있다. 일부 경우에, 거래 계좌는 PayPal® 등이 운영하는 계좌와 같은 가상 계좌일 수 있다.Transaction Account - A financial account that can be used to fund transactions, such as a checking account, savings account, credit account, virtual payment account, etc. A transaction account may be associated with a consumer, which may be any suitable type of entity associated with a payment account, which may include an individual, family, business, corporation, government agency, etc. In some cases, the trading account may be a virtual account, such as an account operated by PayPal® or the like.
발행자 - 수혜자를 위해 신용장이나 신용 한도를 확립(예를 들어, 개설)하며 신용장이나 신용 한도에 지정된 금액에 대해 수혜자가 발행한 환어음을 수여하는 엔티티. 여러 경우에, 발행자는 신용 한도를 개설하도록 인가된 은행이나 다른 금융 기관일 수 있다. 일부 경우에, 수혜자에게 신용 한도를 연장할 수 있는 임의의 엔티티는 발행자로 간주될 수 있다. 발행자가 개설한 신용 한도는 결제 계좌의 형태로 표현될 수 있고, 결제 카드를 사용하여 수혜자에 의해 발행될 수 있다. 발행자는 또한 당업자에게 명백할 바와 같이 직불 계좌, 선불 계좌, 전자 지갑 계좌, 저축 계좌, 당좌 예금 계좌 등과 같은 추가 유형의 결제 계좌를 소비자에게 제공할 수 있고, 소비자에게 직불 카드, 선불 카드, 현금 자동 입출금기 카드, 전자 지갑, 수표 등과 같은 계좌에 액세싱 및/또는 이를 활용하기 위한 물리적 또는 비물리적 수단을 제공할 수 있다.Issuer - An entity that establishes (i.e., opens) a letter of credit or line of credit for a beneficiary and awards a draft drawn by the beneficiary for the amount specified in the letter of credit or line of credit. In many cases, the issuer may be a bank or other financial institution authorized to open lines of credit. In some cases, any entity that can extend a line of credit to a beneficiary may be considered an issuer. A line of credit opened by an issuer may be expressed in the form of a payment account and may be issued by the beneficiary using a payment card. Issuers may also offer consumers additional types of payment accounts, such as debit accounts, prepaid accounts, e-wallet accounts, savings accounts, checking accounts, etc., as will be apparent to those skilled in the art. It may provide physical or non-physical means to access and/or utilize accounts, such as teller cards, electronic wallets, checks, etc.
인수자 - 판매자를 대신하여 결제 카드 거래를 처리할 수 있는 엔티티. 인수자는 판매자를 대신하여 결제 카드 거래를 처리하도록 인가된 은행 또는 다른 금융 기관일 수 있다. 여러 경우에, 인수자는 수혜자 역할을 하는 판매자와 신용 한도를 개설할 수 있다. 발행자에 의해 제공되는 신용 한도에 대한 수혜자일 수 있는 소비자가 결제 카드를 통해 인수자에 의해 대표되는 판매자와 거래하는 경우, 인수자는 발행자와 자금을 교환할 수 있다.Acquirer - An entity that may process payment card transactions on behalf of a merchant. The acquirer may be a bank or other financial institution authorized to process payment card transactions on behalf of the merchant. In many cases, the acquirer may open a line of credit with the seller acting as the beneficiary. When a consumer, who may be the beneficiary of a line of credit provided by the issuer, transacts with a merchant represented by the acquirer via a payment card, the acquirer may exchange funds with the issuer.
결제 거래 - 금전이나 다른 금융 이익이 한 엔티티로부터 다른 엔티티로 교환되는 두 엔티티 간의 거래. 결제 거래는 당업자에게 명백할 바와 같이 상품이나 서비스의 구매를 위한, 부채 상환을 위한, 또는 기타 금융 이익의 교환을 위한 자금 이체일 수 있다. 일부 경우에, 결제 거래는 신용 카드 거래와 같이 결제 카드 및/또는 결제 계좌를 통해 자금이 조달되는 거래를 지칭할 수 있다. 이러한 결제 거래는 발행자, 결제 네트워크, 및 인수자를 통해 처리될 수 있다. 이러한 결제 거래를 처리하기 위한 과정은 인가, 일괄 처리, 청산, 정산, 및 자금 조달 중 적어도 하나를 포함할 수 있다. 인가는 소비자가 판매자에게 결제 세부 사항을 제공하는 것, 판매자로부터 인수자에게 거래 세부 사항(예를 들어, 결제 세부 사항 포함)를 제출하는 것, 및 거래 자금을 조달하는 데 사용되는 소비자의 결제 계좌의 발행자와 결제 세부 사항을 검증하는 것을 포함할 수 있다. 일괄 처리는 인수자에게 유통하기 위해 인가된 거래를 다른 인가된 거래와 함께 일괄적으로 저장하는 것을 지칭할 수 있다. 청산은 처리를 위해 인수자로부터 결제 네트워크로 일괄 처리된 거래의 전송을 포함할 수 있다. 정산은 발행자의 수혜자와 관련된 거래에 대해 결제 네트워크에 의한 발행자의 인출을 포함할 수 있다. 일부 경우에, 발행자는 결제 네트워크를 통해 인수자에게 비용을 지불할 수 있다. 다른 경우에, 발행자는 인수자에게 직접 지불할 수 있다. 자금 조달은 청산 및 정산된 결제 거래를 위해 인수자로부터 판매자로의 지불을 포함할 수 있다. 위에서 논의된 단계의 순서 및/또는 분류가 결제 거래 처리의 일환으로 수행된다는 점은 당업자에게 명백할 것이다.Settlement Transaction - A transaction between two entities in which money or other financial interests are exchanged from one entity to another. A payment transaction may be a transfer of funds for the purchase of goods or services, payment of a debt, or exchange of other financial interests, as will be apparent to those skilled in the art. In some cases, a payment transaction may refer to a transaction that is funded through a payment card and/or payment account, such as a credit card transaction. These payment transactions may be processed through issuers, payment networks, and acquirers. The process for processing such payment transactions may include at least one of authorization, batch processing, clearing, settlement, and funding. Authorization involves the consumer providing payment details to the seller, the submission of transaction details (including, for example, payment details) from the seller to the acquirer, and the use of the consumer's payment account to fund the transaction. This may include verifying issuer and payment details. Batch processing may refer to storing authorized transactions together with other authorized transactions in a batch for distribution to the acquirer. Clearing may involve the transfer of batched transactions from the acquirer to the payment network for processing. Settlement may include a withdrawal of the issuer by the payment network for transactions involving the issuer's beneficiaries. In some cases, the issuer may pay the acquirer through a payment network. In other cases, the issuer may pay the underwriter directly. Financing may include payments from the acquirer to the seller for clearing and settled settlement transactions. It will be clear to those skilled in the art that the sequence and/or classification of steps discussed above are performed as part of processing a payment transaction.
판매 시점에서 제품 진위를 검증하기 위한 시스템A system for verifying product authenticity at the point of sale
도 1은 출처 블록체인 및 전통적인 거래 메시징을 사용하여 판매 시점에서 제품의 진위를 검증하기 위한 시스템(100)을 도시하고 있다.1 illustrates a
시스템(100)은 하나 이상의 블록체인 노드(102)를 포함할 수 있다. 각 블록체인 노드(102)는 블록체인 네트워크(104)의 일부일 수 있다. 각 블록체인 노드(102)는, 아래에서 더 상세히 논의될 도 2 및 도 5에 도시된 바와 같이, 블록체인 데이터 값 생성, 제안된 블록체인 거래 검증, 디지털 서명 검증, 새로운 블록 생성, 새로운 블록 유효성 검사, 및 블록체인 사본의 유지 관리를 포함하여 블록체인의 처리 및 관리와 관련된 기능을 수행하도록 구성된, 컴퓨팅 시스템일 수 있다.
블록체인은 적어도 복수의 블록으로 구성된 분산 원장일 수 있다. 각 블록은 적어도 블록 헤더 및 하나 이상의 데이터 값을 포함할 수 있다. 각 블록 헤더는 적어도 타임스탬프, 블록 기준 값, 및 데이터 기준 값을 포함할 수 있다. 타임스탬프는 블록 헤더가 생성된 시간일 수 있고, 임의의 적합한 방법(예를 들어, UNIX 타임스탬프, DateTime 등)을 사용하여 표현될 수 있다. 블록 기준 값은 블록체인에서 (예를 들어, 타임스탬프에 기초한) 앞선 블록을 참조하는 값일 수 있다. 일부 실시예에서, 블록 헤더에서의 블록 기준 값은 각각의 블록 이전에 가장 최근에 추가된 블록의 블록 헤더에 대한 참조일 수 있다. 예시적인 실시예에서, 블록 기준 값은 가장 최근에 추가된 블록의 블록 헤더의 해싱을 통해 생성된 해시 값일 수 있다. 유사하게, 데이터 기준 값은 블록 헤더를 포함하는 블록 내에 저장된 하나 이상의 데이터 값들에 대한 참조일 수 있다. 예시적인 실시예에서, 데이터 기준 값은 하나 이상의 데이터 값의 해싱을 통해 생성된 해시 값일 수 있다. 예를 들어, 블록 기준 값은 하나 이상의 데이터 값을 사용하여 생성된 머클 트리의 루트일 수 있다.A blockchain can be a distributed ledger composed of at least multiple blocks. Each block may include at least a block header and one or more data values. Each block header may include at least a timestamp, a block reference value, and a data reference value. The timestamp may be the time the block header was created, and may be expressed using any suitable method (e.g., UNIX timestamp, DateTime, etc.). The block reference value may be a value that references a previous block in the blockchain (e.g., based on a timestamp). In some embodiments, the block reference value in the block header may be a reference to the block header of the most recently added block before each block. In an example embodiment, the block reference value may be a hash value generated through hashing the block header of the most recently added block. Similarly, a data reference value may be a reference to one or more data values stored within a block including a block header. In an example embodiment, the data reference value may be a hash value generated through hashing one or more data values. For example, a block reference value may be the root of a Merkle tree created using one or more data values.
각 블록 헤더에 있는 블록 기준 값 및 데이터 기준 값을 사용하면 블록체인이 변경되지 않을 수 있다. 데이터 값을 수정하려는 임의의 시도는 그 블록에 대한 새로운 데이터 기준 값의 생성을 필요로 하고, 이에 의해 후속 블록의 블록 기준 값이 새롭게 생성되는 것을 필요로 하며, 이는 모든 후속 블록에서의 새로운 블록 기준 값의 생성을 더 필요로 한다. 이는 변경이 영구적으로 이루어지기 위해 블록체인에 새 블록의 생성 및 추가 이전에 블록체인 네트워크(104)에 있는 모든 단일 블록체인 노드(102)에서 수행되고 업데이트되어야 할 것이다. 계산 및 통신 제한으로 인해 이러한 수정이 불가능하지는 않더라도 매우 어려워질 수 있으므로, 블록체인이 변경될 수 없게 된다.Using the block reference value and data reference value in each block header ensures that the blockchain remains unchanged. Any attempt to modify a data value requires the creation of a new data reference value for that block, which in turn requires the creation of a new block reference value for subsequent blocks, which in turn creates a new block reference value for all subsequent blocks. Requires more creation of values. This would have to be performed and updated on every
일부 실시예에서, 블록체인은 두 개의 서로 다른 블록체인 지갑들 사이에서 수행되는 블록체인 거래에 관한 정보를 저장하는 데에 사용될 수 있다. 블록체인 지갑은 블록체인 거래에 대한 지불자의 인가 역할을 하는 디지털 서명을 생성하는 데 사용되는 암호화 키 쌍의 개인 키를 포함할 수 있으며, 여기서 디지털 서명은 암호화 키 쌍의 공개 키를 사용하여 블록체인 네트워크(104)에 의해 검증될 수 있다. 일부 경우에, "블록체인 지갑"이라는 용어는 구체적으로 개인 키를 지칭할 수 있다. 다른 경우에, "블록체인 지갑"이라는 용어는 블록체인 거래에 사용하기 위해 개인 키를 저장하는 컴퓨팅 장치(예를 들어, 제조업자 시스템(106), 판매 시점 장치(108), 인수 금융 기관(114), 검증 프로세서(118) 등)를 지칭할 수 있다. 예를 들어, 각 컴퓨팅 장치는 각각의 암호화 키 쌍에 대한 자체 개인 키를 가질 수 있고, 블록체인 네트워크와 연관된 블록체인과의 거래에 사용하기 위한 블록체인 지갑일 수 있다. 컴퓨팅 장치는 데스크탑 컴퓨터, 랩탑 컴퓨터, 노트북 컴퓨터, 태블릿 컴퓨터, 휴대폰, 스마트폰, 스마트 워치, 스마트 텔레비전, 웨어러블 컴퓨팅 장치, 이식형 컴퓨팅 장치 등과 같이 블록체인 지갑을 저장하고 활용하는 데 적합한 모든 유형의 장치일 수 있다.In some embodiments, a blockchain may be used to store information about blockchain transactions conducted between two different blockchain wallets. A blockchain wallet may contain the private key of a cryptographic key pair used to create a digital signature that serves as the payer's authorization for blockchain transactions, where the digital signature is used to create a digital signature on the blockchain using the public key of the cryptographic key pair. Can be verified by
블록체인에 저장된 각 블록체인 데이터 값은 적용 가능한 경우 블록체인 거래 또는 다른 데이터 스토리지에 대응할 수 있다. 블록체인 거래는 적어도 발신자의 개인 키를 사용하여 생성된 발신자의 디지털 서명, 수신자의 공개 키를 사용하여 생성된 통화 수신자의 블록체인 주소, 및 이체되는 블록체인 통화 금액 또는 저장되는 다른 데이터로 구성될 수 있다. 통화와는 별도로 데이터 저장을 위해 블록체인이 사용되는 경우, 통화 금액은 이러한 다른 데이터로 대체되거나 이에 추가될 수 있다. 일부 블록체인 거래에서, 거래는 또한 블록체인 통화가 현재 저장되어 있는(예를 들어, 디지털 서명이 이러한 통화에 대한 액세스를 증명하는) 발신자의 하나 이상의 블록체인 주소, 및 발신자에 의해 보유될 임의의 변경에 대해 발신자의 공개 키를 사용하여 생성된 주소를 포함할 수 있다. 향후 거래에 사용될 수 있는 암호화폐가 보내진 주소는 "출력" 주소로 지칭되고, 각 주소는 이전에 화폐가 아직 사용되지 않은 이전 거래의 주소로 보내진 화폐가 있기 때문에 "미사용 거래"로도 지칭되는 이전 블록체인 거래의 출력을 캡처하는 데 사용되었다. 일부 경우에, 블록체인 거래는 또한 엔티티가 거래를 인증하는 데 사용하기 위한 발신자의 공개 키를 포함할 수 있다. 블록체인 거래의 전통적인 처리를 위해, 이러한 데이터는 발신자 또는 수신자에 의해 블록체인 네트워크(104)에 있는 블록체인 노드(102)에 제공될 수 있다. 노드는 발신자 지갑의 암호화 키 쌍의 공개 키를 사용하여 디지털 서명을 검증할 수 있고, 또한 거래의 "확인"으로 알려진 프로세스인 자금에 대한 발신자의 액세스(예를 들어, 미사용 거래가 아직 사용되지 않았으며 발신자의 지갑과 연관된 주소로 보내졌는지)를 검증한 다음, 블록체인 거래를 새로운 블록에 포함시킬 수 있다. 새로운 블록은 통상적인 블록체인 구현에서 블록체인에 추가되어 블록체인 네트워크(104)의 모든 블록체인 노드들(102)에 분산되기 전에, 블록체인 네트워크(104)의 다른 노드들에 의해 검증될 수 있다. 블록체인 데이터 값이 블록체인 거래와 관련되지 않지만 대신 다른 유형의 데이터를 저장하는 경우, 블록체인 데이터 값은 여전히 디지털 서명의 유효성 검사를 포함하거나 또는 다른 방식으로 이와 관련될 수 있다.Each blockchain data value stored on the blockchain may correspond to a blockchain transaction or other data storage, as applicable. A blockchain transaction may consist of at least the sender's digital signature created using the sender's private key, the currency recipient's blockchain address created using the recipient's public key, and the amount of blockchain currency being transferred or other data stored. You can. If blockchain is used to store data separate from currency, currency amounts can be replaced by or added to such other data. In some blockchain transactions, the transaction also includes one or more blockchain addresses of the sender where blockchain currency is currently stored (e.g., a digital signature proves access to such currency), and a random token to be held by the sender. For changes, you can include an address generated using the sender's public key. The addresses to which cryptocurrency has been sent that can be used in future transactions are referred to as "output" addresses, and each address has previous blocks, also referred to as "unspent transactions", since there is currency previously sent to the address in previous transactions where the currency has not yet been spent. It was used to capture the output of chain transactions. In some cases, a blockchain transaction may also include the sender's public key for the entity to use to authenticate the transaction. For traditional processing of blockchain transactions, such data may be provided by the sender or recipient to
시스템(100)에서, 블록체인 네트워크(104)는 출처 블록체인을 운영하고 저장할 수 있다. 출처 블록체인은 공급망에서의 이벤트가 내부에 저장되는 공급망에 관한 데이터를 저장하는 블록체인일 수 있다. 이러한 이벤트는 예를 들어 제품 제조, 유통 엔티티에 의한 픽업, 한 저장 시설에서 다른 저장 시설로의 운송, 소매업자로의 배송, 소매업자에 의한 판매, 소비자에 의한 재판매, 제품 그룹에 제품 추가, 제품 그룹으로부터 제품 분리, 제품의 지불 거절 등을 포함할 수 있다. 일부 경우에, 이러한 이벤트에 대해 출처 블록체인에 저장된 블록체인 데이터 값은 그 이벤트에 대한 자세한 정보를 포함할 수 있다. 다른 경우에, 블록체인 데이터 값은 그 이벤트에 대한 자세한 정보의 해시 값을 포함할 수 있으며, 여기서 자세한 정보는 별도의 데이터 스토리지에 저장될 수 있다. 일부 경우에, 문서 및 다른 데이터는 블록체인 데이터 값에, 예를 들어 직접적으로 또는 실행된 계약과 관련된 엔티티에 의해 소유된 것과 같이 다른 곳에 저장될 수 있는 기저 데이터(예를 들어, 실행된 계약)를 검증하는 데 사용할 수 있는 해시 값을 통해, 저장될 수 있다. 출처 블록체인의 사용 및 운영에 관한 추가 정보는 Steven C. Davis 등에 의해 2020년 5월 15일자에 "Method and System for Generalized Provenance Solution for Blockchain Supply Chain Applications" 명칭으로 출원된 미국 특허 출원 제16/875,154호에서 확인될 수 있다.In
시스템(100)에서, 소비자(110)는 제품을 구입하기 전에 구매되는 그 제품의 진위에 관심을 가질 수 있다. 제품이 제조될 때, 제조업자 시스템(106)은 제품 식별자를 제품에 할당할 수 있다. 일부 경우에, 제품 식별자는 제조된 모든 제품에 걸쳐 고유한 일련 번호와 같이 제품마다 고유할 수 있다. 다른 경우에, 제품 식별자는 한 세트의 의약품에 할당된 로트 번호와 같이 공통 세트의 모든 제품에 할당될 수 있으며, 여기서 세트의 각 품목은 추적 목적을 위해 동일한 것으로 간주될 수 있다. 제품 식별자는 정수 또는 영숫자 값과 같은 적합한 길이의 임의의 적합한 유형의 값일 수 있다. 제조된 제품은 출처 블록체인에 저장될 수 있으며, 여기서 제품의 생성은 블록체인에서 대응하는 항목에 저장될 수 있다.In
제품은 제품 식별자의 해시를 통해 출처 블록체인에 저장될 수 있다. 해싱 알고리즘은 제품 식별자에 적용될 수 있으며, 그 결과 해시 값은 출처 블록체인에 저장될 수 있다. 해싱 알고리즘은, 예를 들어 사악한 행위자가 위조품에 정품의 일련번호나 다른 제품 식별자를 레이블링하는 것을 방지하기 위해, 단방향 해싱 알고리즘을 사용하는 경우에 기저 제품 식별자를 드러내지 않고 제품을 추적할 수 있게 한다. 예시적인 실시예에서, 이러한 해싱 알고리즘은 단방향 충돌 방지 해싱 알고리즘일 수 있다. 일부 경우에, 제조업자 시스템(106)은 위조에 대한 추가 조치로서 비순차적 일련 번호 및 다른 제품 식별자를 사용하도록 권장될 수 있다.Products can be stored in the provenance blockchain through a hash of the product identifier. A hashing algorithm can be applied to the product identifier, and the resulting hash value can be stored in the provenance blockchain. Hashing algorithms allow products to be tracked without revealing the underlying product identifier when using a one-way hashing algorithm, for example to prevent nefarious actors from labeling counterfeit products with genuine serial numbers or other product identifiers. In an example embodiment, this hashing algorithm may be a one-way collision-free hashing algorithm. In some cases,
위에서 논의된 바와 같이, 제품의 유통은 출처 블록체인을 사용하여 추적될 수 있다. 결국, 제품은 소비자(110)에 의한 구매를 위해 판매자에게 배송될 수 있다. 판매자가 제품을 수령하면, 해싱된 제품 식별자 및 판매자에 의해 수락된 배송 표시를 포함하는 새로운 항목이 블록체인에 기입될 수 있다.As discussed above, distribution of products can be tracked using provenance blockchain. Ultimately, the product may be shipped to the seller for purchase by
시스템(100)에서, 소비자(110)는 원하는 제품에 대한 지불에 사용될 거래 계좌를 발행받을 수 있다. 발행 은행과 같은 발행 금융 기관은 소비자(110)에게 거래 계좌를 발행할 수 있고, 거래 계좌 발행의 일부로서, 소비자가 발행한 거래 계좌를 통해 자금이 조달되는 결제 거래가 처리될 수 있도록 계좌 세부 사항을 전달하는 데 사용하기 위해 신용 카드나 직불 카드와 같은 결제 카드 또는 다른 결제 수단을 소비자(110)에게 발행할 수 있다.In
소비자(110)가 원하는 제품을 구매하는 데 관심이 있으면, 소비자(110)는 제품을 선택하고 판매 시점 장치(108)에 접근하여 결제 거래를 수행하고 체크아웃 프로세스를 시작할 수 있다. 체크아웃 프로세스의 일부로서, 판매 시점 장치(108)는 진위가 검증될 구매되는 각 제품에 대한 제품 식별자를 수집할 수 있다. 일부 경우에, 소비자(110)는 어느 제품(들)이 진품인지 검증되기를 원하는지 나타낼 수 있다. 다른 경우에, 판매자는 출처 블록체인을 통해 추적되는 임의의 제품이나 소정 가격대보다 높은 제품과 같이 판매되는 제품의 진위를 검증해야 하는 규칙을 가질 수 있다. 판매 시점 장치(108)는 광학 이미징 장치를 이용한 기계 판독 가능 코드 판독, 근거리 통신 또는 무선 주파수와 같은 전자 전송을 통한 제품 식별자 수신, 판매자의 직원이나 소비자(110)에 의한 입력 장치를 통한 제품 식별자 입력 등과 같은 임의의 적합한 방법을 사용하여 제품 식별자를 수집할 수 있다. 일부 경우에, 수신된 제품 식별자는 해싱된 제품 식별자일 수 있다. 다른 경우에, 판매 시점 장치(108)는 제품 식별자를 수신 즉시 해싱하여 해싱된 제품 식별자를 생성할 수 있다.If
판매 시점 장치(108)는 검증될 제품(들) 및 기타 제품의 구매를 위해 결제 거래 처리에 필요한 기타 정보를 수집할 수도 있다. 이러한 정보는 (예를 들어, 자기 스트립 판독, 근거리 통신 전송 수신 등을 통해 결제 수단에서 읽거나 이로부터 수신되는) 결제 거래에 대한 자금을 조달하는 데 사용될 소비자의 거래 계좌에 대한 거래 계좌 정보, 거래 금액, 판매 시점 식별자, 통화 유형, 거래 시간, 거래 날짜, 판매자 식별자, 판매자 카테고리 코드, 로열티 데이터, 보상 데이터, 쿠폰 데이터 등을 포함할 수 있다.Point of
선택된 제품(들)에 대해 소비자(110)에 의한 지불이 용이하도록 결제 거래의 처리를 개시하기 위해, 판매 시점 장치(108)는 거래 메시지를 생성할 수 있다. 거래 메시지는 국제 표준화 기구의 ISO 8583 또는 ISO 20022 표준과 같이 금융 거래 메시지의 교환을 관리하는 하나 이상의 표준에 따라 형식화된 특수 형식화 데이터 메시지일 수 있다. 거래 메시지는 복수의 데이터 요소를 포함할 수 있으며, 여기서 각 데이터 요소는 적용 가능한 표준(들)에 나타낸 바와 같이 데이터를 저장한다. 일부 경우에, 거래 메시지는 하나 이상의 비트맵을 포함할 수 있으며, 이는 거래 메시지 내의 각 데이터 요소에 저장된 데이터를 나타낼 수 있다. 각 거래 메시지는 또한 메시지 유형 표시자를 포함할 수 있으며, 이는 거래 메시지의 처리에 사용하기 위한 거래 메시지의 유형을 나타낼 수 있다.Point of
전통적인 거래 메시지는 거래 금액의 저장과 같은 기정의 데이터 요소에서 결제 거래의 표준 처리에 사용하는 데 필요한 데이터, 결제 거래 자금을 조달하는 데 사용되는 소비자의 거래 계좌에 대한 거래 계좌 데이터, 결제 거래에서 자금을 수령하는 데 사용되는 판매자의 거래 계좌에 대한 거래 계좌 데이터, 및 거래 시간, 거래 날짜, 판매 시점 식별자, 통화 유형, 거래 시간, 거래 날짜, 판매자 식별자, 판매자 카테고리 코드, 로열티 데이터, 보상 데이터, 쿠폰 데이터와 같은 위의 거래 데이터 등을 저장할 수 있다. 시스템(100)에서, 거래 메시지는 진위가 검증될 각 제품에 대해 해싱된 제품 식별자를 저장할 수도 있다. 일부 경우에, 해싱된 제품 식별자는 모두 단일 데이터 요소에 저장될 수 있다. 다른 경우에, 여러 제품의 진위를 검증해야 하는 경우 해싱된 제품 식별자 각각은 자체 데이터 요소에 저장될 수 있다. 일부 경우에, 거래 메시지는, 예를 들어 검증되는 제품의 수가 소정 수를 초과하는 경우에, 해싱된 제품 식별자를 저장하는 데 사용하기 위해 추가 데이터 요소의 정의를 위한 추가 비트맵을 필요로 할 수 있다. 일부 실시예에서, 해싱된 제품 식별자를 저장하는 데 사용되는 데이터 요소는 적용 가능한 표준(들)에 따라 개인용 전용인 데이터 요소일 수 있다.Traditional transaction messages range from pre-established data elements, such as storage of the transaction amount, to data required for use in the standard processing of the payment transaction, to transaction account data about the consumer's transaction account used to fund the payment transaction, and funds from the payment transaction. Transaction account data for the merchant's transaction account used to receive, and transaction time, transaction date, point-of-sale identifier, currency type, transaction time, transaction date, merchant identifier, merchant category code, loyalty data, rewards data, coupons Data such as the above transaction data can be stored. In
판매 시점 장치(108)는 적합한 통신 네트워크 및 방법을 사용하여 거래 메시지를 인수 금융 기관(114)에 전자적으로 전송할 수 있다. 일부 경우에, 판매 시점 장치(108)는 거래 메시지를 인수 금융 기관(114)에 직접 전자적으로 전송할 수 있다. 다른 경우에, 판매 시점 장치(108)는 결제 네트워크(116)와 같은 하나 이상의 중개자를 통해 거래 메시지를 인수 금융 기관(114)에 전자적으로 전송할 수 있다. 일부 경우에, 거래 메시지는 판매 시점 장치(108)에 의해 직접적으로 또는 결제 네트워크(116)를 통해 결제 네트워크(116)와 연관된 결제 레일을 통해 인수 금융 기관(114)에 전자적으로 전송될 수 있다. 일부 실시예에서, 통신 네트워크 및 방법은 특별히 형식화된 거래 메시지의 전송을 위해 특별히 구성될 수 있다. 인수 금융 기관(114)은 인수 은행과 같은 금융 기관일 수 있거나, 또는 판매자와 관련된 전자 결제 거래에서 자금을 수령하는 데 사용하기 위해 판매자에게 거래 계좌를 발행하는 다른 엔티티일 수 있다.Point of
인수 금융 기관(114)은 거래 메시지를 수신할 수 있고 하나 이상의 제품 검증이 수행될 것임을 식별할 수 있다. 이러한 식별은 소정 데이터 요소에 하나 이상의 해싱된 제품 식별자의 저장에 기초하거나, 거래 메시지에 특정 비트맵 또는 비트맵 데이터의 포함에 기초하거나, 또는 제품 진위 검증이 요청되었음을 나타내거나 수행될 제품 검증 횟수를 나타낼 수 있는 소정 데이터 요소에 저장된 데이터 플래그와 같은 다른 표시에 기초할 수 있다. 어떠한 제품 검증도 수행되지 않는 경우, 거래 메시지는 전통적인 방법을 사용하여 처리될 수 있다.Acquiring
소비자(110)가 구매하는 제품의 진위 검증을 수행하기 위해, 인수 금융 기관(114)은 해싱된 제품 식별자를 거래 메시지로부터 파싱할 수 있다. 그런 다음, 해싱된 제품 식별자를 사용하여 검증 프로세스를 수행할 수 있다. 일부 실시예에서, 인수 금융 기관(114)은 검증 프로세스를 수행할 수 있다. 다른 실시예에서, 검증 프로세스는 검증 프로세서(118)에 의해 수행될 수 있으며, 이는 인수 금융 기관(114)과 별개인 제3자 컴퓨팅 시스템 및/또는 엔티티일 수 있다. 검증 프로세서(118)가 검증 프로세스를 수행하는 실시예에서, 인수 금융 기관(114)은 임의의 적합한 통신 네트워크 및 방법을 사용하여 파싱되고 해싱된 제품 식별자(들)를 검증 프로세서(118)에 전자적으로 전송할 수 있다. 예를 들어, 검증 프로세서(118)는 제품 진위를 검증하기 위해 해싱된 제품 식별자를 제출하도록 애플리케이션 프로그래밍 인터페이스를 활용할 수 있다.To perform verification of the authenticity of a product purchased by
검증 프로세스는 해싱된 제품 식별자의 포함 여부를 식별하기 위해 출처 블록체인의 검사를 포함할 수 있다. 검증 프로세서(118)(예를 들어, 또는 적용 가능한 경우 인수 금융 기관(114))는 해싱된 제품 식별자를 포함하는 출처 블록체인에 포함된 모든 블록체인 데이터 항목을 식별할 수 있다. 그런 다음, 검증 프로세서(118)는, 예를 들어 출처 블록체인이 제조업자로부터의 초기 입력, 및 임의의 유통 엔티티에 의한 적절한 배송과 수락, 이어서 판매 시점 장치(108)와 연관된 판매자에 의한 제품 수령을 포함하는지 검증함으로써, 제품이 제조업자로부터 판매자까지 적절한 관리 연속성을 통과했는지 검증할 수 있다. 해싱된 제품 식별자를 포함하는 블록체인 데이터 항목이 없거나 제품의 관리 연속성을 성공적으로 검증할 수 없는 경우(예를 들어, 판매자가 제품 소유를 수락했지만 제조업자가 아직 유통업자에 의한 제품 픽업을 등록하지 않은 경우), 제품의 진위 검증은 실패할 수 있다. 그렇지 않은 경우, 검증은 성공적일 수 있고 그 제품은 진품 및 정품으로 판단될 수 있다. 인수 금융 기관(114)이 검증 프로세스를 수행하지 않는 경우, 검증 프로세스를 수행하는 엔티티(예를 들어, 검증 프로세서(118))는 각 해싱된 제품 식별자에 대한 검증 결과를 적절한 통신 방법을 사용하여 인수 금융 기관에 반환할 수 있다.The verification process may include checking the blockchain of origin to identify whether it contains a hashed product identifier. Verification processor 118 (e.g., or acquiring
따라서, 인수 금융 기관(114)은 각 해싱된 제품 식별자에 대한 검증 결과를 가질 수 있다. 모든 검증이 성공적인 경우(예를 들어, 구매되는 모든 제품이 진품 및 정품인 경우), 인수 금융 기관(114)은 전통적인 시스템 및 방법을 사용하여 결제 거래 처리를 계속할 수 있다. 하나 이상의 검증이 실패하는 경우, 인수 금융 기관(114)은, 예를 들어 결제 거래 거부를 나타내는 응답 코드를 포함하는 인가 응답 거래 메시지를 판매 시점 장치(108)에 반환함으로써, 결제 거래를 거부할 수 있다. 일부 경우에, 응답 코드는 하나 이상의 제품 진위의 성공하지 못한 검증으로 인해 거부되었음을 나타낼 수 있다. 일부 경우에, 인가 응답 메시지는, 예를 들어 각 실패한 검증에 대해 해싱된 제품 식별자를 소정 데이터 요소 또는 요소들에 저장함으로써, 인가에 실패한 제품 또는 제품들을 나타낼 수 있다. 일부 추가 예에서, 해싱된 제품 식별자를 찾을 수 없음, 관리 연속성이 검증되지 않음 등을 나타내는 것과 같은 실패한 검증 이유를 추가로 나타낼 수 있다.Accordingly, the acquiring
일부 실시예에서, 판매 시점 장치(108)는 성공하지 못한 검증(들)에 관한 정보를 디스플레이 장치를 통해 소비자(110)에게 통지를 표시할 수 있다. 예를 들어, 판매 시점 장치(108)는 어느 제품(들)이 성공적으로 검증되지 않았는지 전달할 수 있고, 소비자(110)에게 진위 검증에 실패한 제품(들) 없이도 제품(들)을 계속 구매하거나 거래를 계속할 수 있는 기회를 제공할 수 있다. 이러한 경우, 판매 시점 장치(108)는 통지를 본 후 소비자(110)가 선택한 제품에 대한 결제 거래를 처리하기 위해 인수 금융 기관(114)에 다른 거래 메시지를 제출할 수 있다. 소비자(110)가 결제 거래를 계속하기 원하지 않는 경우, 결제 거래가 취소될 수 있고 소비자(110)는 검증에 성공하지 못한 제품(들)을 구매하지 않고 그만둘 수 있다. 결제 거래가 성공적으로 처리되면, 소비자(110)에게 구매한 제품(들)이 제공될 수 있다.In some embodiments, point-of-
본원에서 논의된 시스템 및 방법을 통해 판매 시점에서 제품의 진위를 검증할 수 있다. 소비자(110)가 출처 블록체인에 출처가 저장된 제품을 구매하기 원하는 경우, 결제 거래 처리의 일부로 제품의 진위를 검증할 수 있다. 거래 메시지에 해싱된 제품 식별자를 전달함으로써, 기존의 통신 방법 및 기술을 사용하여 검증을 수행할 수 있으며, 이를 통해 기존의 판매 시점 시스템 및 금융 기관 시스템을 사용하여 검증을 수행할 수 있다. 또한, 소비자(110)가 어떠한 행위도 수행할 필요가 없으며, 이는 소비자(110)가 표준 거래 프로세스 밖의 임의의 행위를 수행하지 않고도 구매되는 제품의 진위를 확인할 수 있게 한다. 그 결과, 본원에서 논의된 방법과 시스템은 소비자(110) 및 판매자에게 가치 있는 서비스를 제공하여, 소비자 경험에 영향을 주지 않으며 기존 기술 및 프로세스에 의존하지 않고 위조품이 판매되지 않게 한다. 이러한 프로세스는, 예를 들어 위조 의약품의 판매를 방지하고 소비자(110)가 구매하는 의약품이 정품인지 확신할 수 있게 하도록, 건강 및 안전의 경우에 추가로 가치가 있을 수 있다.The systems and methods discussed herein allow for verification of product authenticity at the point of sale. If a
컴퓨팅 시스템computing system
도 2는 시스템(100)에서 컴퓨팅 시스템(200)의 일 실시예를 도시하고 있다. 도 2에 도시된 컴퓨팅 시스템(200)의 실시예가 단지 예시로서 제공되고 본원에서 논의된 바와 같은 기능을 수행하는 데 적합한 컴퓨팅 시스템(200)의 모든 가능한 구성을 망라하는 것이 아닐 수 있음은 당업자에게 명백할 것이다. 예를 들어, 도 5에 도시되며 아래에서 더 자세히 논의될 컴퓨터 시스템(500)은 컴퓨팅 시스템(200)의 적합한 구성일 수 있다. 도 1의 시스템(100)에서 블록체인 노드(102), 판매 시점 장치(108), 인수 금융 기관(114), 및 검증 프로세서(118)는 컴퓨팅 시스템(200)(예를 들어, 또는 컴퓨터 시스템(500))으로 구현될 수 있고 도 2에 도시되거나 아래에서 논의될 바와 같은 구성요소 중 하나 이상을 포함할 수 있다.2 illustrates one embodiment of
컴퓨팅 시스템(200)은 수신 장치(202)를 포함할 수 있다. 수신 장치(202)는 하나 이상의 네트워크 프로토콜을 거쳐 하나 이상의 네트워크를 통해 데이터를 수신하도록 구성될 수 있다. 일부 경우에, 수신 장치(202)는 무선 주파수, 근거리 통신망, 무선 통신망, 셀룰러 통신 네트워크, 블루투스, 인터넷 등과 같은 하나 이상의 통신 방법을 통해 다른 블록체인 노드(102), 제조업자 시스템(106), 판매 시점 장치(108), 발행 금융 기관(112), 인수 금융 기관(114), 결제 네트워크(116), 검증 프로세서(118), 및 다른 시스템 및 엔티티로부터 데이터를 수신하도록 구성될 수 있다. 일부 실시예에서, 수신 장치(202)는 근거리 통신망을 통해 데이터를 수신하기 위한 제1 수신 장치 및 인터넷을 통해 데이터를 수신하기 위한 제2 수신 장치와 같이, 서로 다른 네트워크를 통해 데이터를 수신하기 위한 서로 다른 수신 장치와 같은 여러 장치로 구성될 수 있다. 수신 장치(202)는 전자적으로 전송된 데이터 신호를 수신할 수 있으며, 여기서 데이터는 데이터 신호에 중첩되거나 또는 다른 방식으로 인코딩될 수 있고, 수신 장치(202)에 의한 데이터 신호의 수신을 통해 디코딩, 파싱, 판독, 또는 다른 방식으로 획득될 수 있다. 일부 경우에, 수신 장치(202)는 수신된 데이터 신호를 파싱하여 그에 중첩된 데이터를 획득하기 위한 파싱 모듈을 포함할 수 있다. 예를 들어, 수신 장치(202)는 수신된 데이터 신호를 수신하고 이를 본원에 설명된 방법 및 시스템을 실행하기 위해 처리 장치에 의해 수행되는 기능에 대한 사용 가능한 입력으로 변환하도록 구성된 파서 프로그램을 포함할 수 있다.
수신 장치(202)는 거래 메시지와 중첩되거나 또는 다른 방식으로 인코딩될 수 있는 판매 시점 장치(108), 인수 금융 기관(114), 또는 결제 네트워크(116)에 의해 전자적으로 전송된 데이터 신호를 수신하도록 구성될 수 있다. 수신 장치(202)는 해싱된 제품 식별자, 검증 결과, 또는 통지 데이터와 중첩되거나 또는 다른 방식으로 인코딩된 인수 금융 기관(114)에 의해 전자적으로 전송된 데이터 신호를 수신하도록 구성될 수 있다. 수신 장치(202)는 또한 검증 프로세서(118)에 의해 전자적으로 전송된 데이터 신호를 수신하도록 구성될 수 있으며, 이는 검증 결과와 중첩되거나 또는 다른 방식으로 인코딩될 수 있다.Receiving
컴퓨팅 시스템(200)은 또한 통신 모듈(204)을 포함할 수 있다. 통신 모듈(204)은 본원에서 논의된 기능을 수행하는 데 사용하기 위해 컴퓨팅 시스템(200)의 모듈, 엔진, 데이터베이스, 메모리, 및 다른 구성요소 사이에서 데이터를 전송하도록 구성될 수 있다. 통신 모듈(204)은 하나 이상의 통신 유형으로 구성될 수 있고 컴퓨팅 장치 내 통신을 위해 다양한 통신 방법을 활용할 수 있다. 예를 들어, 통신 모듈(204)은 버스, 접촉 핀 커넥터, 와이어 등으로 구성될 수 있다. 일부 실시예에서, 통신 모듈(204)은 또한 컴퓨팅 시스템(200)의 내부 구성요소와 외부에 연결된 데이터베이스, 디스플레이 장치, 입력 장치 등과 같은 컴퓨팅 시스템(200)의 외부 구성요소 사이에서 통신하도록 구성될 수 있다. 컴퓨팅 시스템(200)은 또한 처리 장치를 포함할 수 있다. 처리 장치는 당업자에게 명백한 바와 같이 본원에서 논의된 컴퓨팅 시스템(200)의 기능을 수행하도록 구성될 수 있다. 일부 실시예에서, 처리 장치는 질의 모듈(214), 생성 모듈(216), 유효성 검사 모듈(218), 거래 처리 모듈(220) 등과 같은 처리 장치의 하나 이상의 기능을 수행하도록 특별히 구성된 복수의 엔진 및/또는 모듈로 구성될 수 있고 및/또는 이를 포함할 수 있다. 본원에서 사용된 바와 같이, "모듈"이란 용어는 입력을 수신하고, 입력을 사용하여 하나 이상의 프로세스를 수행하고, 출력을 제공하도록 특별히 프로그래밍된 소프트웨어 또는 하드웨어일 수 있다. 다양한 모듈에 의해 수행되는 입력, 출력, 및 프로세스는 본 개시내용에 기초하여 당업자에게 명백할 것이다.
컴퓨팅 시스템(200)은 메모리(212)를 포함할 수 있다. 메모리(212)는 본원에서 논의된 기능을 수행 시 컴퓨팅 시스템(200)에 의해 사용하기 위한 데이터를 저장하도록 구성될 수 있다. 메모리(212)는 적합한 데이터 형식 방법 및 스키마를 사용하여 데이터를 저장하도록 구성될 수 있고, 읽기 전용 메모리, 랜덤 액세스 메모리 등과 같은 임의의 적합한 유형의 메모리일 수 있다. 메모리(212)는 예를 들어 암호화 키 및 알고리즘, 통신 프로토콜 및 표준, 데이터 형식화 표준 및 프로토콜, 처리 장치의 모듈 및 애플리케이션 프로그램에 대한 프로그램 코드, 및 당업자에게 명백한 바와 같이 본원에 개시된 기능의 수행 시 컴퓨팅 시스템(200)에 의해 사용하기에 적합할 수 있는 다른 데이터를 포함할 수 있다. 일부 실시예에서, 메모리(212)는 내부에 저장된 구조화된 데이터 세트의 저장, 식별, 수정, 업데이트, 액세스 등을 위해 구조화된 질의 언어를 활용하는 관계형 데이터베이스로 구성되거나 또는 다른 방식으로 이를 포함할 수 있다. 메모리(212)는 예를 들어 거래 데이터, 블록체인 데이터, 통신 데이터, 거래 메시지 형식화 표준, 해싱 알고리즘 등을 저장하도록 구성될 수 있다.
컴퓨팅 시스템(200)은 질의 모듈(214)을 포함할 수 있다. 질의 모듈(214)은 정보를 식별하기 위해 데이터베이스에 대한 질의를 실행하도록 구성될 수 있다. 질의 모듈(214)은 하나 이상의 데이터 값 또는 질의 문자열을 수신할 수 있고, 내부에 저장된 정보를 식별하기 위해 컴퓨팅 시스템(200)의 메모리(212)와 같은 표시된 데이터베이스에 기초하여 질의 문자열을 실행할 수 있다. 그런 다음, 질의 모듈(214)은 필요에 따라 식별된 정보를 컴퓨팅 시스템(200)의 적절한 엔진 또는 모듈에 출력할 수 있다. 질의 모듈(214)은 예를 들어 제품 식별자를 해싱하기 위한 해싱 알고리즘을 식별하고, 거래 메시지를 생성하기 위한 거래 데이터를 식별하고, 검증 프로세스를 위한 블록체인 데이터를 식별하는 등을 위해 메모리(212)에 대한 질의를 실행할 수 있다.
컴퓨팅 시스템(200)은 또한 생성 모듈(216)을 포함할 수 있다. 생성 모듈(216)은 본원에서 논의된 기능을 수행 시 컴퓨팅 시스템(200)에 의해 사용하기 위한 데이터를 생성하도록 구성될 수 있다. 생성 모듈(216)은 명령어를 입력으로 수신할 수 있고, 명령어에 기초하여 데이터를 생성할 수 있고, 생성된 데이터를 컴퓨팅 시스템(200)의 하나 이상의 모듈에 출력할 수 있다. 예를 들어, 생성 모듈(216)은 수신된 제품 식별자에 해싱 알고리즘을 적용하여 해싱된 제품 식별자를 생성하도록 구성될 수 있다.
컴퓨팅 시스템(200)은 또한 유효성 검사 모듈(218)을 포함할 수 있다. 유효성 검사 모듈(218)은 본원에서 논의된 기능의 일부로서 컴퓨팅 시스템(200)에 대한 유효성 검사를 수행하도록 구성될 수 있다. 유효성 검사 모듈(218)은 유효성 검사를 수행 시 사용될 데이터를 또한 포함할 수 있는 명령어를 입력으로서 수신할 수 있고, 요청된 대로 유효성 검사를 수행할 수 있고, 유효성 검사의 결과를 컴퓨팅 시스템(200)의 다른 모듈 또는 엔진으로 출력할 수 있다. 유효성 검사 모듈(218)은 예를 들어 공급된 해싱된 제품 식별자를 포함하는 출처 블록체인에서 블록체인 데이터 값의 식별 및 블록체인 데이터 값의 검토를 통해 제품의 진위를 검증하고 대응하는 제품의 적절한 관리 연속성을 확보하기 위해 검증 프로세스를 수행하도록 구성될 수 있다.
컴퓨팅 시스템(200)은 또한 거래 처리 모듈(220)을 포함할 수 있다. 거래 처리 모듈(220)은 전자 결제 거래의 개시 및 처리를 위해 컴퓨팅 시스템(200)에 대한 기능을 수행하도록 구성될 수 있다. 거래 처리 모듈(220)은 거래 계좌 정보 및 다른 거래 데이터를 입력으로 수신할 수 있고 거래 메시지 또는 명령어를 컴퓨팅 시스템(200)의 다른 모듈 또는 엔진에 출력할 수 있다. 거래 처리 모듈(220)은 예를 들어 하나 이상의 적용 가능한 표준에 따라 형식화된 거래 메시지를 생성하도록 구성될 수 있으며, 이는 소정 데이터 요소에 저장된 해싱된 제품 식별자 뿐만 아니라 거래 데이터를 포함할 수 있다.
컴퓨팅 시스템(200)은 또한 전송 장치(222)를 포함할 수 있다. 전송 장치(222)는 하나 이상의 네트워크 프로토콜을 거쳐 하나 이상의 네트워크를 통해 데이터를 전송하도록 구성될 수 있다. 일부 경우에, 전송 장치(222)는 하나 이상의 통신 방법, 근거리 통신망, 무선 통신망, 셀룰러 통신, 블루투스, 무선 주파수, 인터넷 등을 통해 다른 블록체인 노드(102), 제조업자 시스템(106), 판매 시점 장치(108), 발행 금융 기관(112), 인수 금융 기관(114), 결제 네트워크(116), 검증 프로세서(118), 및 다른 엔티티에 데이터를 전송하도록 구성될 수 있다. 일부 실시예에서, 전송 장치(222)는 근거리 통신망을 통해 데이터를 전송하기 위한 제1 전송 장치 및 인터넷을 통해 데이터를 전송하기 위한 제2 전송 장치와 같이, 서로 다른 네트워크를 통해 데이터를 전송하기 위한 서로 다른 전송 장치와 같은 여러 장치로 구성될 수 있다. 전송 장치(222)는 수신 컴퓨팅 장치에 의해 파싱될 수 있는 중첩된 데이터를 갖는 데이터 신호를 전자적으로 전송할 수 있다. 일부 경우에, 전송 장치(222)는 데이터를 전송에 적합한 데이터 신호로 중첩, 인코딩, 또는 다른 방식으로 형식화하기 위한 하나 이상의 모듈을 포함할 수 있다.
전송 장치(222)는 거래 메시지와 중첩되거나 또는 다른 방식으로 인코딩될 수 있는 판매 시점 장치(108), 인수 금융 기관(114), 또는 결제 네트워크(116)에 데이터 신호를 전자적으로 전송하도록 구성될 수 있다. 전송 장치(222)는 해싱된 제품 식별자, 검증 결과, 또는 통지 데이터와 중첩되거나 또는 다른 방식으로 인코딩된 인수 금융 기관(114), 검증 프로세서(118), 또는 판매 시점 장치(108)에 데이터 신호를 전자적으로 전송하도록 구성될 수 있다. 전송 장치(222)는 또한 데이터 신호를 인수 금융 기관(114)에 전자적으로 전송하도록 구성될 수 있으며, 이는 검증 결과와 중첩되거나 또는 다른 방식으로 인코딩될 수 있다.
판매 시점에서 제품 진위를 검증하기 위한 프로세스Process for verifying product authenticity at point of sale
도 3a 및 도 3b는 도 1에 도시되며 위에서 논의된 시스템(100)에서 거래 메시지를 사용하여 판매 시점에서 구매되는 하나 이상의 제품의 진위 검증을 위한 프로세스를 도시하고 있다.Figures 3A and 3B illustrate a process for verifying the authenticity of one or more products purchased at a point of sale using transaction messages in the
단계 302에서, 판매 시점 장치(108)는 대응하는 제품의 제품 식별자와 인코딩된 제품에 표시된 기계 판독 가능 코드를 판독하는 것과 같은 적합한 방법을 사용하여 소비자(110)가 구매할 하나 이상의 제품으로부터 제품 식별자를 판독할 수 있다. 제품 식별자는 제품에 고유할 수도 있거나 또는 다른 방식으로 의약품에 대한 로트 번호와 같이 제품과 연관될 수 있다. 단계 304에서, 판매 시점 장치(108)는 (예를 들어, 생성 모듈(216)을 통해) 판독된 제품 식별자를 해싱하여 진위가 검증될 각 제품에 대한 해싱된 제품 식별자를 생성할 수 있다. 일부 경우에, 소비자(110)는 진위가 검증되기를 원하는 제품을 나타낼 수 있다. 다른 경우에, 제품은 하나 이상의 규칙 또는 기준을 통해 식별될 수 있으며, 이는 제품 식별자 판독 시 판매 시점 장치(108)에 의해 자동으로 식별될 수 있다. 단계 306에서, 판매 시점 장치(108)는 (예를 들어, 거래 처리 모듈(220)을 통해) 단계 302에서 제품 식별자가 판독된 제품의 구매를 위한 결제 거래에 대한 거래 메시지를 생성할 수 있다. 거래 메시지는 금융 거래 메시지의 교환을 관리하는 하나 이상의 표준에 따라 특별히 형식화될 수 있고, 해싱된 제품 식별자(들)를 저장하는 하나 이상의 데이터 요소를 포함하여 거래 데이터를 저장하는 복수의 데이터 요소를 포함할 수 있다.At
단계 308에서, 판매 시점 장치(108)는 생성된 거래 메시지를, 예를 들어 결제 네트워크(116)와 연관된 결제 레일을 통해, (예를 들어 전송 장치(222)를 통해) 인수 금융 기관(114)에 전자적으로 전송할 수 있다. 단계 310에서, 인수 금융 기관(114)은 판매 시점 장치(108)로부터 거래 메시지를 (예를 들어, 수신 장치(202)를 통해) 수신할 수 있다. 단계 312에서, 인수 금융 기관(114)은 진위가 검증될 제품에 대한 해싱된 제품 식별자(들)를 이들이 저장된 소정 데이터 요소(들)로부터 (예를 들어, 질의 모듈(214)을 통해) 파싱할 수 있으며, 이는 거래 메시지에서 하나 이상의 비트맵을 통해 식별될 수 있다. 단계 314에서, 인수 금융 기관(114)은, 예를 들어 검증 프로세서(118)에 의해 이용 가능하게 이루어진 애플리케이션 프로그래밍 인터페이스를 사용하여, 해싱된 제품 식별자 각각에 대한 검증 요청을 검증 프로세서(118)에 (예를 들어, 전송 장치(222)를 통해) 제출할 수 있다. 단계 316에서, 검증 프로세서(118)는 하나 이상의 검증 요청을 (예를 들어, 수신 장치(202)를 통해) 수신할 수 있으며, 그 각각은 거래 메시지로부터 파싱된 해싱된 제품 식별자를 포함할 수 있다.At
단계 318에서, 검증 프로세서(118)는 각 검증 요청에 대한 검증 프로세스를 (예를 들어, 유효성 검사 모듈(218)을 통해) 수행할 수 있다. 검증 프로세스는 해싱된 제품 식별자를 포함하는 출처 블록체인에 저장된 모든 블록체인 데이터 값을 식별하는 단계, 및 제품 제조부터 판매 시점 장치(108)와 연관된 판매자에 의한 소유까지 적절한 관리 연속성이 있는지를 결정하는 단계를 포함할 수 있다. 일부 경우에, 판매 시점 장치(108)에 대한 장치 식별자 또는 판매자 식별자는 거래에 관련된 판매자가 출처 블록체인에서 판매용 제품을 수락한 판매자와 동일한 판매자인지 확인하는 검증 요청에 포함될 수 있다. 검증 프로세서(118)는 각 해싱된 제품 식별자에 대한 검증 프로세스의 결과(예를 들어, 성공 또는 실패)를 식별할 수 있고, 단계 320에서 각 검증 요청에 대한 검증 결과를, 예를 들어 애플리케이션 프로그래밍 인터페이스를 통해, 인수 금융 기관(114)에 (예를 들어, 전송 장치(222)를 통해) 전자적으로 전송할 수 있다.At
단계 322에서, 인수 금융 기관(114)은 (예를 들어, 수신 장치(202)를 통해) 검증 프로세서(118)로부터 검증 결과(들)를 수신할 수 있다. 단계 324에서, 인수 금융 기관(114)은 (예를 들어, 거래 처리 모듈(220)을 통해) 결제 거래가 처리되어야 하는지를 결정할 수 있다. 결정은 검증 결과에 기초할 수 있으며, 여기서 하나 이상의 실패한 검증으로 인해 인수 금융 기관(114)에 의해 결제 거래가 거부될 수 있다. 이러한 경우, 인가 응답(예를 들어, 거래 메시지에서 메시지 유형 표시자에 의해 표시됨)은 판매 시점 장치(108)로 반환될 수 있다. 도 3b에 도시된 예에서, 인수 금융 기관(114)은 모든 검증 결과가 성공적이었다고 판단할 수 있고, 단계 326에서 전통적인 방법이나 시스템을 사용하여 처리하기 위해 결제 레일을 통해 결제 거래에 대한 거래 메시지를 결제 네트워크(116) 또는 발행 금융 기관(112)에 (예를 들어, 전송 장치(222)를 통해) 전자적으로 전송할 수 있다. 일부 경우에, 해싱된 제품 식별자(들)는 인수 금융 기관(114)에 의해 전달되기 전에 거래 메시지로부터 제거될 수 있다.At
단계 328에서, 인수 금융 기관(114)은 (예를 들어, 전송 장치(222)를 통해) 통지 메시지를 판매 시점 장치(108)에 전자적으로 전송할 수 있다. 통지 메시지는 적용 가능한 제품 각각의 인가가 성공적이었음을 나타낼 수 있다. 단계 330에서, 판매 시점 장치(108)는 (예를 들어, 수신 장치(202)를 통해) 통지 메시지를 수신할 수 있다. 단계 332에서, 통지 메시지는 소비자(110)에게 표시될 수 있으며, 이는 구매되는 제품이 출처 블록체인을 사용하여 진위의 성공적 검증 결과로 정품임을 소비자(110)에게 확보할 수 있다. 전통적인 방법을 사용하여 결제 거래가 처리되고 제품이 소비자(110)에게 제공될 수 있다.At
제품 진위를 검증하기 위한 예시적인 방법Exemplary Methods for Verifying Product Authenticity
도 4는 거래 메시지를 통해 판매 시점에서 제품 진위를 검증하기 위한 방법(400)을 도시하고 있다.Figure 4 illustrates a
단계 402에서, 하나 이상의 제품 식별 값은 판매 시점 장치(예를 들어, 판매 시점 장치(108))에 의해 (예를 들어, 수신 장치(202)를 통해) 수신될 수 있으며, 각 제품 식별 값은 결제 거래에서 구매되는 제품에 대응한다. 단계 404에서, 거래 메시지는 하나 이상의 제품 식별 값을 저장하는 하나 이상의 데이터 요소를 포함하는 판매 시점 장치에 의해 (예를 들어, 생성 모듈(216)을 통해) 생성될 수 있으며, 여기서 거래 메시지는 하나 이상의 표준에 따라 형식화된다. 단계 406에서, 거래 메시지는 판매 시점 장치에 의해 제1 처리 시스템(예를 들어, 인수 금융 기관(114))으로 (예를 들어, 전송 장치(222)를 통해) 전송될 수 있다.At
단계 408에서, 수신된 거래 메시지에 포함된 하나 이상의 데이터 요소로부터 파싱된 하나 이상의 제품 식별 값은 제1 처리 시스템에 의해 (예를 들어, 전송 장치(222)를 통해) 제2 처리 시스템(예를 들어, 검증 프로세서(118))으로 전송될 수 있다. 단계 410에서, 제1 처리 시스템은 제2 처리 시스템으로부터 하나 이상의 제품 식별 값 각각에 대한 검증 결과를 (예를 들어, 수신 장치(202)를 통해) 수신할 수 있다. 단계 412에서, 결제 거래는 제1 처리 시스템에 의해 (예를 들어, 거래 처리 모듈(220)을 통해) 처리될 수 있고, 처리는 (i) 하나 이상의 제품 식별 값 중 적어도 하나에 대한 검증 결과가 실패한 검증임을 나타내는 경우 결제 거래를 거부하는 판매 시점 장치에 응답 메시지를 (예를 들어, 전송 장치(222)를 통해) 전송하는 단계, 또는 (ii) 하나 이상의 제품 식별 값 각각에 대한 검증 결과가 성공적인 검증임을 나타내는 경우 거래 메시지를 결제 네트워크(예를 들어, 결제 네트워크(116))로 전송하는 단계를 포함한다.At
일 실시예에서, 거래 메시지는 결제 레일을 사용하여 제1 처리 시스템으로 전송될 수 있다. 일부 실시예에서, 제1 처리 시스템은 인수 금융 기관 시스템일 수 있고, 제2 처리 시스템은 제3자 프로세서 시스템일 수 있다. 일 실시예에서, 하나 이상의 표준은 ISO 8583 및 ISO 20022 중 적어도 하나를 포함할 수 있다. 일부 실시예에서, 하나 이상의 데이터 요소는 하나 이상의 표준에 따라 개인용 전용일수 있다.In one embodiment, transaction messages may be transmitted to the first processing system using a payment rail. In some embodiments, the first processing system may be an acquiring financial institution system and the second processing system may be a third-party processor system. In one embodiment, the one or more standards may include at least one of ISO 8583 and ISO 20022. In some embodiments, one or more data elements may be reserved for personal use only according to one or more standards.
일 실시예에서, 하나 이상의 제품 식별 값은 애플리케이션 프로그래밍 인터페이스를 사용하여 제2 처리 시스템으로 전송될 수 있다. 일부 실시예에서, 본 방법(400)은 판매 시점 장치가 해싱 알고리즘을 제품 식별 값에 적용함으로써 하나 이상의 제품 식별 값 각각에 대한 해시 값을 (예를 들어, 생성 모듈(216)를 통해) 생성하는 단계를 더 포함할 수 있고, 거래 메시지에 포함된 하나 이상의 데이터 요소는 제품 식별 값 대신에 하나 이상의 제품 식별 값 각각에 대한 해시 값을 저장한다. 일 실시예에서, 본 방법(400)은 또한 제2 처리 시스템이 제1 처리 시스템으로부터 하나 이상의 제품 식별 값을 (예를 들어, 수신 장치(202)를 통해) 수신하는 단계; 제2 처리 시스템이 블록체인을 포함하는 복수의 블록 중 한 블록에 제품 식별 값이 포함된 것에 기초하여 하나 이상의 제품 식별 값 각각에 대한 검증 결과를 (예를 들어, 검증 모듈(218)을 통해) 결정하는 단계로서, 복수의 블록 중 어느 블록에도 제품 식별 값이 포함되지 않은 경우 실패한 검증이 발생하는, 단계; 및 제2 처리 시스템이 하나 이상의 제품 식별 값 각각에 대한 검증 결과를 제1 처리 시스템으로 (예를 들어, 전송 장치(222)를 통해) 전송하는 단계를 포함할 수 있다.In one embodiment, one or more product identification values may be transmitted to a second processing system using an application programming interface. In some embodiments, the
컴퓨터 시스템 아키텍처computer system architecture
도 5는 본 개시내용의 실시예 또는 그 일부가 컴퓨터 판독 가능 코드로 구현될 수 있는 컴퓨터 시스템(500)을 도시하고 있다. 예를 들어, 도 1의 판매 시점 장치(108), 인수 금융 기관(114), 및 검증 프로세서(118), 및 도 2의 컴퓨팅 시스템(200)은 하드웨어, 명령어가 저장된 비일시적 컴퓨터 판독 가능 매체, 또는 이들의 조합을 사용하여 컴퓨터 시스템(500)에서 구현될 수 있고 하나 이상의 컴퓨터 시스템 또는 다른 처리 시스템에서 구현될 수 있다. 하드웨어는 도 3a, 도 3b, 및 도 4의 방법을 구현하는 데 사용되는 모듈 및 구성요소를 구현할 수 있다.5 illustrates a
프로그래머블 로직이 사용되는 경우, 이러한 로직은 실행 가능한 소프트웨어 코드에 의해 구성된 상용 처리 플랫폼에서 실행되어 특정 목적의 컴퓨터 또는 특수 목적의 장치(예를 들어, 프로그래머블 로직 어레이, 주문형 집적 회로 등)가 될 수 있다. 당업자는 개시된 기술 요지의 실시예가 멀티 코어 멀티프로세서 시스템, 미니컴퓨터, 메인프레임 컴퓨터, 분산 기능으로 링크되거나 클러스터링된 컴퓨터, 및 거의 모든 장치에 내장될 수 있는 퍼베이시브 또는 소형 컴퓨터를 포함하는 다양한 컴퓨터 시스템 구성으로 실행될 수 있음을 이해할 수 있다. 예를 들어, 적어도 하나의 프로세서 장치 및 메모리는 전술한 실시예를 구현하는 데 사용될 수 있다.When programmable logic is used, such logic can be executed on an off-the-shelf processing platform configured by executable software code to be a special purpose computer or special purpose device (e.g., programmable logic array, custom integrated circuit, etc.). . Those skilled in the art will understand that embodiments of the disclosed subject matter can be used in a variety of computer system configurations, including multi-core multiprocessor systems, minicomputers, mainframe computers, computers linked or clustered with distributed functions, and pervasive or compact computers that can be embedded in virtually any device. It can be understood that it can be executed as . For example, at least one processor device and memory may be used to implement the above-described embodiments.
본원에서 논의된 바와 같은 프로세서 유닛 또는 장치는 단일 프로세서, 복수의 프로세서, 또는 이들의 조합일 수 있다. 프로세서 장치는 하나 이상의 프로세서 "코어"를 구비할 수 있다. 본원에서 논의된 바와 같은 "컴퓨터 프로그램 매체", "비일시적 컴퓨터 판독 가능 매체", 및 "컴퓨터 사용 가능 매체"라는 용어는 일반적으로 이동식 저장 유닛(518), 이동식 저장 유닛(522) 및 하드디스크 드라이브(512)에 설치된 하드디스크와 같은 유형식 미디어를 지칭하는 데 사용된다.A processor unit or device as discussed herein may be a single processor, multiple processors, or a combination thereof. A processor device may have one or more processor “cores.” As discussed herein, the terms “computer program media,” “non-transitory computer-readable media,” and “computer-usable media” generally refer to
본 개시내용의 다양한 실시예는 이러한 예시적인 컴퓨터 시스템(500)의 관점에서 설명된다. 이러한 설명을 읽은 후, 다른 컴퓨터 시스템 및/또는 컴퓨터 아키텍처를 사용하여 본 개시내용을 구현하는 방법은 당업자에게 명백해질 것이다. 동작은 순차적 프로세스로 설명될 수 있지만, 동작 중 일부는 실제로 병렬로, 동시에, 및/또는 분산 환경에서 수행될 수 있으며 단일 또는 다중 프로세서 머신에서 액세스할 수 있도록 로컬 또는 원격으로 저장된 프로그램 코드를 사용하여 수행될 수 있다. 또한, 일부 실시예에서, 동작 순서는 개시된 기술 요지의 사상을 벗어나지 않고 재배열될 수 있다.Various embodiments of the present disclosure are described in terms of this
프로세서 장치(504)는 본원에서 논의된 기능을 수행하도록 특별히 구성된 특수 목적 또는 범용 프로세서 장치일 수 있다. 프로세서 장치(504)는 버스, 메시지 큐, 네트워크, 멀티 코어 메시지 전달 스키마 등과 같은 통신 인프라(506)에 연결될 수 있다. 네트워크는 본원에 개시된 기능을 수행하는 데 적합한 임의의 네트워크일 수 있고 근거리 통신망(LAN), 광역 통신망(WAN), 무선 네트워크(예를 들어, WiFi), 이동 통신 네트워크, 위성 네트워크, 인터넷, 광섬유, 동축 케이블, 적외선, 무선 주파수(RF), 또는 이들의 임의의 조합을 포함할 수 있다. 다른 적합한 네트워크 유형 및 구성은 당업자에게 명백할 것이다. 컴퓨터 시스템(500)은 또한 주 메모리(508)(예를 들어, 랜덤 액세스 메모리, 읽기 전용 메모리 등)를 포함할 수 있고, 보조 메모리(510)도 포함할 수 있다. 보조 메모리(510)는 하드 디스크 드라이브(512), 및 플로피 디스크 드라이브, 자기 테이프 드라이브, 광 디스크 드라이브, 플래시 메모리 등과 같은 이동식 저장 드라이브(514)를 포함할 수 있다.
이동식 저장 드라이브(514)는 주지된 방식으로 이동식 저장 유닛(518)에 대한 읽기 및/또는 쓰기를 수행할 수 있다. 이동식 저장 유닛(518)은 이동식 저장 드라이브(514)에 의해 판독 및 기록될 수 있는 이동식 저장 매체를 포함할 수 있다. 예를 들어, 이동식 저장 드라이브(514)가 플로피 디스크 드라이브 또는 범용 직렬 버스 포트인 경우, 이동식 저장 유닛(518)은 각각 플로피 디스크 또는 포터블 플래시 드라이브일 수 있다. 일 실시예에서, 이동식 저장 유닛(518)은 비일시적 컴퓨터 판독 가능 기록 매체일 수 있다.
일부 실시예에서, 보조 메모리(510)는 컴퓨터 프로그램 또는 다른 명령어가 컴퓨터 시스템(500)에 로딩될 수 있게 하는 대안적인 수단을, 예를 들어 이동식 저장 유닛(522) 및 인터페이스(520)를, 포함할 수 있다. 이러한 수단의 예로는 프로그램 카트리지 및 카트리지 인터페이스(예를 들어, 비디오 게임 시스템에서 볼 수 있음), 탈착식 메모리 칩(예를 들어, EEPROM, PROM 등) 및 관련 소켓, 및 다른 이동식 저장 유닛(522) 및 인터페이스(520)를 포함할 수 있으며, 이는 당업자에게 명백할 것이다.In some embodiments,
컴퓨터 시스템(500)(예를 들어, 주 메모리(508) 및/또는 보조 메모리(510))에 저장된 데이터는 광학 스토리지(예를 들어 컴팩트 디스크, 디지털 다기능 디스크, 블루레이 디스크 등) 또는 자기 테이프 스토리지(예를 들어, 하드 디스크 드라이브)와 같은 모든 유형의 적합한 컴퓨터 판독 가능 매체에 저장될 수 있다. 데이터는 관계형 데이터베이스, 구조화된 질의 언어(SQL) 데이터베이스, 분산 데이터베이스, 객체 데이터베이스 등과 같은 모든 유형의 적합한 데이터베이스 구성으로 구성될 수 있다. 적합한 구성 및 저장 유형은 당업자에게 명백할 것이다.Data stored in computer system 500 (e.g.,
컴퓨터 시스템(500)은 또한 통신 인터페이스(524)를 포함할 수 있다. 통신 인터페이스(524)는 소프트웨어 및 데이터가 컴퓨터 시스템(500)과 외부 장치 사이에 전송될 수 있도록 구성될 수 있다. 예시적인 통신 인터페이스(524)는 모뎀, 네트워크 인터페이스(예를 들어, 이더넷 카드), 통신 포트, PCMCIA 슬롯, 및 카드 등을 포함할 수 있다. 통신 인터페이스(524)를 통해 전송되는 소프트웨어 및 데이터는 신호 형태일 수 있으며, 이는 전자, 전자기, 광학 또는 당업자에게 명백한 바와 같은 다른 신호일 수 있다. 신호는 신호를 전달하도록 구성될 수 있으며 전선, 케이블, 광섬유, 전화선, 휴대폰 링크, 무선 주파수 링크 등을 사용하여 구현될 수 있는 통신 경로(526)를 통해 이동할 수 있다.
컴퓨터 시스템(500)은 디스플레이 인터페이스(502)를 더 포함할 수 있다. 디스플레이 인터페이스(502)는 데이터가 컴퓨터 시스템(500)과 외부 디스플레이(530) 사이에 전송될 수 있도록 구성될 수 있다. 예시적인 디스플레이 인터페이스(502)는 고화질 멀티미디어 인터페이스(HDMI), 디지털 비주얼 인터페이스(DVI), 비디오 그래픽 어레이(VGA) 등을 포함할 수 있다. 디스플레이(530)는 음극선관(CRT) 디스플레이, 액정 디스플레이(LCD), 발광 다이오드(LED) 디스플레이, 정전식 터치 디스플레이, 박막 트랜지스터(TFT) 디스플레이 등을 비롯하여 컴퓨터 시스템(500)의 디스플레이 인터페이스(502)를 통해 전송된 데이터를 표시하기 위한 임의의 적합한 유형의 디스플레이일 수 있다.
컴퓨터 프로그램 매체 및 컴퓨터 사용 가능 매체는 메모리 반도체(예를 들어, DRAM 등)일 수 있는 주 메모리(508) 및 보조 메모리(510)와 같은 메모리를 지칭할 수 있다. 이들 컴퓨터 프로그램 제품은 컴퓨터 시스템(500)에 소프트웨어를 제공하기 위한 수단일 수 있다. 컴퓨터 프로그램(예를 들어, 컴퓨터 제어 로직)은 주 메모리(508) 및/또는 보조 메모리(510)에 저장될 수 있다. 컴퓨터 프로그램은 통신 인터페이스(524)를 통해 수신될 수도 있다. 이러한 컴퓨터 프로그램은 실행될 때 컴퓨터 시스템(500)이 본원에서 논의된 본 방법을 구현하도록 할 수 있다. 특히, 컴퓨터 프로그램은 실행될 때 프로세서 장치(504)가 본원에서 논의된 바와 같이 도 3a, 도 3b, 및 도 4에 도시된 방법을 구현하도록 할 수 있다. 따라서, 이러한 컴퓨터 프로그램은 컴퓨터 시스템(500)의 제어기를 나타낼 수 있다. 본 개시내용이 소프트웨어를 사용하여 구현되는 경우, 소프트웨어는 컴퓨터 프로그램 제품에 저장될 수 있고 이동식 저장 드라이브(514), 인터페이스(520), 및 하드 디스크 드라이브(512) 또는 통신 인터페이스(524)를 사용하여 컴퓨터 시스템(500)에 로딩될 수 있다.Computer program media and computer-enabled media may refer to memory, such as
프로세서 장치(504)는 컴퓨터 시스템(500)의 기능을 수행하도록 구성된 하나 이상의 모듈 또는 엔진을 포함할 수 있다. 모듈 또는 엔진 각각은 하드웨어를 사용하여 구현될 수 있고, 일부 경우에 예를 들어 주 메모리(508) 또는 보조 메모리(510)에 저장된 프로그램 코드 및/또는 프로그램에 대응하는 소프트웨어를 활용할 수도 있다. 이러한 경우, 프로그램 코드는 컴퓨터 시스템(500)의 하드웨어에 의해 실행되기 전에 프로세서 장치(504)에 의해(예를 들어, 컴파일 모듈 또는 엔진에 의해) 컴파일될 수 있다. 예를 들어, 프로그램 코드는 프로세서 장치(504) 및/또는 컴퓨터 시스템(500)의 임의의 추가적인 하드웨어 구성요소에 의한 실행을 위해 어셈블리 언어 또는 기계어 코드와 같은 하위 레벨 언어로 번역되는 프로그래밍 언어로 작성된 소스 코드일 수 있다. 컴파일 프로세스는 어휘 분석, 전처리, 파싱, 의미 분석, 구문 지향 번역, 코드 생성, 코드 최적화, 및 프로그램 코드를 컴퓨터 시스템(500)을 제어하는 데 적합한 하위 레벨 언어로 번역하는 데 적합할 수 있는 기타 기법의 사용을 포함하여 본원에 개시된 기능을 수행할 수 있다. 이러한 프로세스로 인해 컴퓨터 시스템(500)이 위에서 논의된 기능을 수행하도록 고유하게 프로그래밍된 특별히 구성된 컴퓨터 시스템(500)이 된다는 것은 당업자에게 명백할 것이다.
본 개시내용에 따른 기법은 특히 거래 메시지를 통해 판매 시점에서 제품 진위를 검증하는 시스템 및 방법을 제공한다. 개시된 시스템 및 방법의 다양한 예시적인 실시예를 위에서 설명하였지만, 이들은 단지 예시의 목적으로 제시되고 제한되지 않음을 이해해야 한다. 이는 본 개시내용을 개시된 정확한 형태로 총망라하거나 제한하지 않는다. 수정 및 변형은 위의 교시를 고려하여 가능하거나 또는 폭이나 범위를 벗어나지 않고 본 개시내용의 실시로부터 획득될 수 있다.Techniques according to the present disclosure provide systems and methods for verifying product authenticity at the point of sale, particularly via transactional messages. Although various example embodiments of the disclosed systems and methods have been described above, it should be understood that they are presented for illustrative purposes only and are not limiting. It is not intended to be exhaustive or to limit the disclosure to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the present disclosure without departing from its breadth or scope.
Claims (16)
판매 시점 장치가 하나 이상의 제품 식별 값을 수신하는 단계로서, 각 제품 식별 값은 결제 거래에서 구매되는 제품에 대응하는, 단계;
상기 판매 시점 장치가 상기 하나 이상의 제품 식별 값을 저장하는 하나 이상의 데이터 요소를 포함하는 거래 메시지를 생성하는 단계로서, 상기 거래 메시지는 하나 이상의 표준에 따라 형식화되는, 단계;
상기 판매 시점 장치가 상기 거래 메시지를 제1 처리 시스템으로 전송하는 단계;
상기 제1 처리 시스템이 상기 수신된 거래 메시지에 포함된 상기 하나 이상의 데이터 요소로부터 파싱된 상기 하나 이상의 제품 식별 값을 제2 처리 시스템으로 전송하는 단계;
상기 제1 처리 시스템이 상기 제2 처리 시스템으로부터 상기 하나 이상의 제품 식별 값 각각에 대한 검증 결과를 수신하는 단계; 및
상기 제1 처리 시스템이 상기 결제 거래를 처리하는 단계를 포함하고, 처리는 (i) 상기 하나 이상의 제품 식별 값 중 적어도 하나에 대한 상기 검증 결과가 실패한 검증임을 나타내는 경우 상기 결제 거래를 거부하는 상기 판매 시점 장치에 응답 메시지를 전송하는 단계, 또는 (ii) 상기 하나 이상의 제품 식별 값 각각에 대한 상기 검증 결과가 성공적인 검증임을 나타내는 경우 상기 거래 메시지를 결제 네트워크로 전송하는 단계를 포함하는, 거래 메시지를 통해 판매 시점에서 제품 진위를 검증하기 위한 방법.As a method for verifying product authenticity at the point of sale through transactional messages,
a point-of-sale device receiving one or more product identification values, each product identification value corresponding to a product being purchased in the payment transaction;
generating, by the point of sale device, a transaction message comprising one or more data elements storing the one or more product identification values, the transaction message being formatted according to one or more standards;
the point of sale device transmitting the transaction message to a first processing system;
transmitting, by the first processing system, the one or more product identification values parsed from the one or more data elements included in the received transaction message to a second processing system;
receiving, by the first processing system, a verification result for each of the one or more product identification values from the second processing system; and
comprising the first processing system processing the payment transaction, the processing comprising: (i) rejecting the payment transaction if the verification result for at least one of the one or more product identification values indicates a failed verification; transmitting a response message to a point-in-time device, or (ii) transmitting the transaction message to a payment network if the verification result for each of the one or more product identification values indicates a successful verification, via a transaction message. A method for verifying product authenticity at the point of sale.
상기 판매 시점 장치가 해싱 알고리즘을 상기 제품 식별 값에 적용함으로써 상기 하나 이상의 제품 식별 값 각각에 대한 해시 값을 생성하는 단계를 더 포함하고,
상기 거래 메시지에 포함된 상기 하나 이상의 데이터 요소는 상기 제품 식별 값 대신에 상기 하나 이상의 제품 식별 값 각각에 대한 상기 해시 값을 저장하는, 방법.According to paragraph 1,
the point-of-sale device generating a hash value for each of the one or more product identification values by applying a hashing algorithm to the product identification values,
The method of claim 1, wherein the one or more data elements included in the transaction message store the hash value for each of the one or more product identification values instead of the product identification value.
상기 제2 처리 시스템이 상기 제1 처리 시스템으로부터 상기 하나 이상의 제품 식별 값을 수신하는 단계;
상기 제2 처리 시스템이 블록체인을 포함하는 복수의 블록 중 한 블록에 상기 제품 식별 값이 포함된 것에 기초하여 상기 하나 이상의 제품 식별 값 각각에 대한 상기 검증 결과를 결정하는 단계로서, 상기 복수의 블록 중 어느 블록에도 상기 제품 식별 값이 포함되지 않은 경우 실패한 검증이 발생하는, 단계; 및
상기 제2 처리 시스템이 상기 하나 이상의 제품 식별 값 각각에 대한 상기 검증 결과를 상기 제1 처리 시스템으로 전송하는 단계를 더 포함하는, 방법.According to paragraph 1,
the second processing system receiving the one or more product identification values from the first processing system;
wherein the second processing system determines the verification result for each of the one or more product identification values based on the product identification value being included in one of a plurality of blocks including a blockchain, wherein the plurality of blocks Failed verification occurs when none of the blocks contains the product identification value; and
The method further comprising the second processing system transmitting the verification results for each of the one or more product identification values to the first processing system.
판매 시점 장치;
제1 처리 시스템; 및
제2 처리 시스템을 포함하고,
상기 판매 시점 장치는,
하나 이상의 제품 식별 값을 수신하고 - 각 제품 식별 값은 결제 거래에서 구매되는 제품에 대응함- ;
상기 하나 이상의 제품 식별 값을 저장하는 하나 이상의 데이터 요소를 포함하는 거래 메시지를 생성하고 - 상기 거래 메시지는 하나 이상의 표준에 따라 형식화됨 -;
상기 거래 메시지를 상기 제1 처리 시스템으로 전송하고,
상기 제1 처리 시스템은,
상기 수신된 거래 메시지에 포함된 상기 하나 이상의 데이터 요소로부터 파싱된 상기 하나 이상의 제품 식별 값을 상기 제2 처리 시스템으로 전송하고;
상기 제2 처리 시스템으로부터 상기 하나 이상의 제품 식별 값 각각에 대한 검증 결과를 수신하고;
상기 결제 거래를 처리하고, 처리는 (i) 상기 하나 이상의 제품 식별 값 중 적어도 하나에 대한 상기 검증 결과가 실패한 검증임을 나타내는 경우 상기 결제 거래를 거부하는 상기 판매 시점 장치에 응답 메시지를 전송하는 단계, 또는 (ii) 상기 하나 이상의 제품 식별 값 각각에 대한 상기 검증 결과가 성공적인 검증임을 나타내는 경우 상기 거래 메시지를 결제 네트워크로 전송하는 단계를 포함하는, 거래 메시지를 통해 판매 시점에서 제품 진위를 검증하기 위한 시스템.A system for verifying product authenticity at the point of sale through transactional messages, comprising:
point-of-sale devices;
first processing system; and
comprising a second processing system,
The point of sale device is,
Receive one or more product identification values, each product identification value corresponding to a product being purchased in the payment transaction;
generate a transaction message comprising one or more data elements storing the one or more product identification values, the transaction message being formatted according to one or more standards;
transmitting the transaction message to the first processing system;
The first processing system is,
transmit the one or more product identification values parsed from the one or more data elements included in the received transaction message to the second processing system;
receive verification results for each of the one or more product identification values from the second processing system;
Processing the payment transaction, the processing comprising: (i) sending a response message to the point-of-sale device rejecting the payment transaction if the verification result for at least one of the one or more product identification values indicates a failed verification; or (ii) transmitting the transaction message to a payment network if the verification result for each of the one or more product identification values indicates a successful verification. .
상기 판매 시점 장치는 해싱 알고리즘을 상기 제품 식별 값에 적용함으로써 상기 하나 이상의 제품 식별 값 각각에 대한 해시 값을 생성하고,
상기 거래 메시지에 포함된 상기 하나 이상의 데이터 요소는 상기 제품 식별 값 대신에 상기 하나 이상의 제품 식별 값 각각에 대한 상기 해시 값을 저장하는, 시스템.According to clause 9,
the point-of-sale device generates a hash value for each of the one or more product identification values by applying a hashing algorithm to the product identification values,
The system of claim 1, wherein the one or more data elements included in the transaction message store the hash value for each of the one or more product identification values instead of the product identification value.
상기 제1 처리 시스템으로부터 상기 하나 이상의 제품 식별 값을 수신하고;
상기 제품 식별 값이 블록체인을 포함하는 복수의 블록 중 한 블록에 포함된 것에 기초하여 상기 하나 이상의 제품 식별 값 각각에 대한 상기 검증 결과를 결정하고, 상기 복수의 블록 중 어느 블록에도 상기 제품 식별 값이 포함되지 않은 경우 실패한 검증이 발생함;
상기 하나 이상의 제품 식별 값 각각에 대한 상기 검증 결과를 상기 제1 처리 시스템으로 전송하는, 시스템.The method of claim 9, wherein the second processing system:
receive the one or more product identification values from the first processing system;
Determine the verification result for each of the one or more product identification values based on the product identification value being included in one block of a plurality of blocks including a blockchain, and determine the verification result for each of the product identification values in any block of the plurality of blocks. If this is not included, a failed validation will occur;
A system for transmitting the verification results for each of the one or more product identification values to the first processing system.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/319,532 US20220366407A1 (en) | 2021-05-13 | 2021-05-13 | Method and system for privacy oriented provenance at the point of sale |
US17/319,532 | 2021-05-13 | ||
PCT/US2022/024203 WO2022240529A2 (en) | 2021-05-13 | 2022-04-11 | Method and system for privacy oriented provenance at the point of sale |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240007757A true KR20240007757A (en) | 2024-01-16 |
Family
ID=83998837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020237042966A KR20240007757A (en) | 2021-05-13 | 2022-04-11 | Method and system for privacy-oriented provenance at point of sale |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220366407A1 (en) |
EP (1) | EP4338114A2 (en) |
JP (1) | JP2024518526A (en) |
KR (1) | KR20240007757A (en) |
CN (1) | CN117157657A (en) |
WO (1) | WO2022240529A2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021175016A (en) * | 2020-04-20 | 2021-11-01 | 株式会社日立製作所 | Method and system for managing digital signature |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102239660A (en) * | 2008-12-08 | 2011-11-09 | 贝金姆·维瑟利 | System and method to authenticate products |
US20130054468A1 (en) * | 2011-08-25 | 2013-02-28 | Platamovil International BV | System and method for conducting financial transactions |
US20160098730A1 (en) * | 2014-10-01 | 2016-04-07 | The Filing Cabinet, LLC | System and Method for Block-Chain Verification of Goods |
US20170132625A1 (en) * | 2015-11-05 | 2017-05-11 | Mastercard International Incorporated | Method and system for use of a blockchain in a transaction processing network |
US10176481B2 (en) * | 2015-12-21 | 2019-01-08 | Beston Technologies Pty Ltd | Method and apparatus for managing and providing provenance of product using blockchain |
US10755285B2 (en) * | 2018-02-02 | 2020-08-25 | Hiroshi Watanabe | Secured mutual confirmation method and system for tracing and verifying product identity, origin and authentication |
-
2021
- 2021-05-13 US US17/319,532 patent/US20220366407A1/en not_active Abandoned
-
2022
- 2022-04-11 EP EP22808002.4A patent/EP4338114A2/en active Pending
- 2022-04-11 JP JP2023570034A patent/JP2024518526A/en active Pending
- 2022-04-11 KR KR1020237042966A patent/KR20240007757A/en unknown
- 2022-04-11 CN CN202280028651.4A patent/CN117157657A/en active Pending
- 2022-04-11 WO PCT/US2022/024203 patent/WO2022240529A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN117157657A (en) | 2023-12-01 |
WO2022240529A2 (en) | 2022-11-17 |
JP2024518526A (en) | 2024-05-01 |
EP4338114A2 (en) | 2024-03-20 |
US20220366407A1 (en) | 2022-11-17 |
WO2022240529A3 (en) | 2023-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11132704B2 (en) | Method and system for electronic vouchers via blockchain | |
US11803857B2 (en) | Method and system for implementing chargebacks on a distributed ledger system | |
EP3857489A1 (en) | Method and system for dispute resolution in a public blockchain | |
WO2020023180A1 (en) | Method and system for hybrid payment authorization | |
US11587071B2 (en) | Method and system for merchant acceptance of cryptocurrency via payment rails | |
US20210056557A1 (en) | Method and system for verifying point of sale authenticity through blockchain distributed ledger | |
US20240020695A1 (en) | Method and system for transferring digital tokens to and from a physical card | |
KR20220164778A (en) | Method and system for using EMV cards in multi-signature wallets for cryptocurrency transactions | |
KR20240007757A (en) | Method and system for privacy-oriented provenance at point of sale | |
US20230196345A1 (en) | Method and system of integrating blockchain technology with existing computer architecture | |
US20210398093A1 (en) | Method and system for payment integration with provenance supply chain events | |
US20210406887A1 (en) | Method and system for merchant acceptance of cryptocurrency via payment rails |