WO2019078411A1 - History verification method using block chain configuration between epcis history events - Google Patents

History verification method using block chain configuration between epcis history events Download PDF

Info

Publication number
WO2019078411A1
WO2019078411A1 PCT/KR2017/014820 KR2017014820W WO2019078411A1 WO 2019078411 A1 WO2019078411 A1 WO 2019078411A1 KR 2017014820 W KR2017014820 W KR 2017014820W WO 2019078411 A1 WO2019078411 A1 WO 2019078411A1
Authority
WO
WIPO (PCT)
Prior art keywords
event
history
block chain
hash value
signature
Prior art date
Application number
PCT/KR2017/014820
Other languages
French (fr)
Korean (ko)
Inventor
김상태
정성관
김대영
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Publication of WO2019078411A1 publication Critical patent/WO2019078411A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0603Catalogue ordering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0607Regulated

Definitions

  • the following description relates to a method and system for verifying the history of events in EPCIS.
  • the GS1 EPCGlobal framework includes the EPCIS standard for sharing event information and the Pedigree standard for accumulating signatures based on user signatures between occurrence events.
  • event data can be stored in the event repository EPCIS according to the order of occurrence of events. For example, an A event may be stored in Alice's EPCIS, a Bob event may be stored in Bob's EPCIS, and a Carol event may be stored in Carol's EPCIS.
  • Korean Patent Publication No. 10-2010-0137868 Korean Patent Publication No. 10-2010-0098863
  • the history verification method includes: forming a block chain between respective events in an electronic product code information service; And verifying the history information of the event through a block chain formed between the respective events.
  • the step of forming the block chain generates a Nth hash value for the Nth event when a plurality of events exist and an N (N is a natural number) event is generated for the first time
  • Signing the Nth signature value with the private key of the object recording the Nth event and writing the Nth signature value obtained for the Nth event to the extension field of the Nth event can do.
  • the step of forming the block chain comprises: generating an N + 1 hash value for the (N + 1) -th event through the (N + 1) -th event and the N-th signature value, 1 signature value obtained for the (N + 1) -th event is acquired as an extension field of the (N + 1) -th event, In the second step.
  • the step of verifying the history information of the event may include verifying the history information of the event and the validity of the object by using the public key of each object as the signature value recorded in the extension field of each event .
  • the step of verifying the history information of the event may include extracting a Nth hash value for the Nth event by performing validity verification using the public key of the object recording the Nth signature value, .
  • the verification of the history information may include decrypting the (N + 1) -th signature value using the public key of the object recording the (N + 1) -th event, 1 event and the hash value extracted by the N-th signature value, and verifying the validity.
  • the step of verifying the history information may include performing a validation for each of the block chains and a verification of a signature value for each object by separating a block chain formed between the events and a signature value generated for the event .
  • a computer program stored in a computer-readable recording medium for executing a history verification method includes: forming a block chain between respective events in an electronic product code information service; And verifying the history information of the event through a block chain formed between the respective events.
  • the history verification system includes a block chain forming unit for forming a block chain between respective events in an electronic product code information service; And a verification unit for verifying the history information of the event through a block chain formed between the respective events.
  • the block chain forming unit generates an Nth hash value for the Nth event when a plurality of events exist and an N (N is a natural number) event is generated for the first time
  • An Nth signature value may be acquired by signing with the private key of the object recording the Nth event, and an Nth signature value obtained for the Nth event may be recorded in the extension field of the Nth event.
  • the block chain forming unit generates an N + 1 hash value for the (N + 1) -th event through the (N + 1) -th event and the N-th signature value, 1 signature value obtained for the (N + 1) -th event by signing with the private key of the object recording the event, and writing the (N + 1) .
  • the verification unit may verify the history information of the event and the validity of the object by using the signature value recorded in the extension field of each event using the public key of each object.
  • the verifying unit may extract the Nth hash value for the Nth event by performing the validity verification using the public key of the object recording the Nth signature value.
  • the verification unit decrypts the (N + 1) -th signature value using the public key of the object for recording the (N + 1) -th event, and outputs the hash value for the It is possible to verify the validity by judging whether or not it is the same as the hash value extracted by the Nth signature value.
  • the verification unit may perform validation of each block chain and verification of a signature value for each object by separating a block chain formed between the events and a signature value generated for the event.
  • the history verification system can clarify responsibility by separately storing the signature values for each event as the EPCIS inter-event block chain is generated.
  • the history verifying system can verify the history of the block chain formed between the events using the public key and perform the history verification without accumulation of data securely.
  • the history verification system verifies the validity of the history information for each event by verifying the block chain formed between the events using the public key, as well as the signature information for each event.
  • FIG. 2 is a diagram for explaining a history verification process in the history verification system according to the embodiment.
  • FIG. 3 is a block diagram illustrating a configuration of a history verification system according to an exemplary embodiment of the present invention.
  • FIG. 4 is a flowchart for explaining a history verification method in the history verification system according to the embodiment.
  • 5 and 6 are views for explaining a method of forming an inter-event block chain in the history verification system according to an embodiment.
  • FIG. 7 is a diagram for explaining a method of verifying the validity of inter-event block chains in the history verification system according to the embodiment.
  • FIG. 8 is a diagram for explaining another method for verifying the validity of an inter-event block chain in the history verification system according to the embodiment.
  • FIG. 9 is a diagram for explaining a method of managing a livestock history by applying the present invention to a logistics environment in a history verification system according to an embodiment.
  • FIG. 2 is a diagram for explaining a history verification process in the history verification system according to the embodiment.
  • the history verification system can form a block chain between each event in the electronic product code information service, and can verify the history information of the event through a block chain formed between the respective events.
  • the history verification system can provide a secure history authentication verification system provided by Pedigree without accumulating data in the event repository EPCIS.
  • each EPCIS including the A event 210, the B event 220, and the C event 230 exists and the order of generation of the event is A-> B-> C.
  • the number of events in each EPCIS is not limited.
  • A, B and C events existing in each EPCIS will be described by way of example.
  • the history verification system can build Pedigree's event accumulation method by forming a block chain between EPCIS. Specifically, the history verification system can generate a block chain for each event present in the EPCIS.
  • the history verification system can determine whether the event is the first occurrence of the N (N is a natural number) event.
  • the history verification system generates a first hash value for the Nth event when the Nth event (N is a natural number) event is generated for the first time, signs it with the private key of the object that records the Nth event in the Nth hash value And may record the Nth signature value obtained for the Nth event in the extension field of the Nth event.
  • the history verification system may generate a hash value (Hash (A)) for the A event 210 residing in Alice's EPCIS.
  • the history verifying system checks the signature value (Signature Alice ) by signing with Alice's private key 211 which records the A event 210 in the hash value (Hash (A)) for the A event 210 Can be obtained.
  • the history verification system may record the signature value (Signature Alice ) obtained for the A event 210 in the extended field of the A event 210.
  • the history verification system generates an (N + 1) -th hash value for the (N + 1) -th event through the (N + 1) 1 signature value by signing with the private key and recording the (N + 1) -th signature value obtained for the (N + 1) -th event in the extension field of the (N + 1) -th event.
  • the history verification system can form a block chain between each event in the EPCIS.
  • a signed value (Signature Alice) obtained for the B event 220 and the previous signature, A event (210) present in the EPCIS Bob
  • a hash value (Hash (B + Signature Alice )) for the B event 220 can be generated.
  • the history verifying system may be configured to sign with the Bob's private key (Sign BobPrivkey ) 221 that records the B event 220 in the hash value (Hash (B + Signature Alice )) for the B event 220, Bob. & Lt ; / RTI >
  • the history verification system may record the signature value obtained for the B event 220 (Signature Bob ) in the extended field of the B event 220.
  • the history verifying system signs a private key (Sign CarolPrivkey ) 231 that records a C event 230 in a hash value (Hash (C + Signature Bob )) for the C event 230, Carol ).
  • the history verification system may record the signature value (Signature Carol ) obtained for the C event 230 in the extension field of the C event 230. [ In this way, the history verification system can form a block chain between events.
  • the history verification system can keep the signature values for the events individually.
  • the history verification system can prevent the size of the data from increasing by forming a block chain between events and can reduce the overall amount of operation that occurs as the events are accumulated continuously.
  • FIG. 7 is a diagram for explaining a method of verifying the validity of inter-event block chains in the history verification system according to the embodiment.
  • the history verification system can verify the validity of the signature value through the block chain for each link of each block chain.
  • the history verification system may extract the Nth hash value for the Nth event by performing the validity verification using the public key of the object recording the Nth signature value.
  • the history verification system decrypts the (N + 1) -th signature value using the public key of the object recording the (N + 1) -th event, and outputs the hash value for the extracted (N + 1) It is possible to verify whether the hash value is the same as the hash value extracted by the value. In this case, the hash value for the (N + 1) -th event extracted by decoding the (N + 1) -th signature value using the public key of the object for recording the (N + 1) If it matches the extracted hash value, it is judged as True.
  • History verification system hash value for the A event 210 in accordance with carrying out the validation using the public Alice's key to record a signature value (Signature Alice) to A event 210 on A event 210 (Hash (A)) can be extracted.
  • a signature value (Signature Alice ) for the A event 210 is decrypted with the public key of Alice, which records the A event 210, and the hash value of the extracted A event 210 is stored in the A event 210
  • the validity of the hash value can be verified. In other words, it can be determined whether the Verify AlicePublickey (Signature Alice ) and the Hash (A) match. At this time, if the Verify AlicePublickey (Signature Alice ) matches the Hash (A), the validity of the B event is verified.
  • the history verification system extracts a hash value for the B event 220 by performing a validity check using a public key of Bob that records a signature value (Signature Bob ) for the B event 220, can do.
  • Signature values for the B event 220 (Signature Bob) the hash value for the B event 220 extracted by decrypting the public key of the rice to record B event 220 B event 220 and the A event (210 (Signature Alice ), and verify the validity of the hash value.
  • the Verify BobPublickey Signature Bob
  • the Hash B + Signature Alice
  • the history verification system extracts a hash value for the C event 230 by performing a validation verification using a KAOL public key that records a signature value (Signature Carol ) for the C event 230 to the C event 230 can do.
  • the hash value for the extracted C event 230 is obtained by decrypting the signature value (Signature Carol ) for the C event 230 with the public key of the carol recording the C event 230 as the C event 230 and the B event 220 (Signature Bob ) of the hash value of the hash value.
  • Verify CarolPublickey Signature Carol
  • Hash C + Signature Bob
  • the history verification system can determine whether the signature value recorded in the extended field of the event is the same as the hash value for each event extracted using each public key. In this case, if the extracted value does not match the hash value of the event, the link of the next block chain can not be verified. If the extracted value matches the hash value of the event, You can verify the link.
  • the history verification system determines whether the extracted value of the signature value recorded in the extended field of the event is equal to the hash value by using each public key, and thereby not only verifies the history of the overall history event, To verify the validity of the signer who signed it.
  • FIG. 8 is a diagram for explaining another method for verifying the validity of an inter-event block chain in the history verification system according to the embodiment.
  • the history verification system can divide the block chain and the signature information (signature value) and divide the validation into a plurality of steps.
  • the validity check can be performed in two steps. At this time, the validity verification can be performed through sharing of some public keys without sharing all the shared keys among the respective participants.
  • each EPCIS including the A event 210, the B event 220, and the C event 230 exists and the order of generation of the event is A-> B-> C.
  • the history verification system can generate the hash value (Hash (A)) for the A event 210.
  • Hash (Hash (A) + B) for the B event 220, including the hash value for the A event 210 and the B event 220.
  • Hash (B) + C) for the C event 230, including the hash value for the B event 220 and the C event 230.
  • the history verification system can generate a signature value by signing the generated hash value for each event with the private key of the object recording each event.
  • the history verification system may generate a signature value (Signature Alice ) for the A event 210 using Alice's private key as the hash value (Hash (A)) for the A event 210
  • a signature value (Signature Bob ) for the B event 220 can be generated using Bob's private key as a hash value (Hash (A) + B) for the event 220
  • a C event 230 A signature value (Signature Carol ) for the C event 230 can be generated using the private key of the carol as the hash value (Hash (Hash (B) + C)
  • the signature value can be recorded in the extension field of each event.
  • the history verification system can verify the validity of the inter-event block chain through the hash value. At this time, it is not necessary to exchange the public key between each participant. In other words, the history verification system can perform validation of block chaining between events without exchanging public keys.
  • the history verification system can verify the signature of each event in each EPCIS by verifying the validity of the block chain.
  • the history verification system needs to exchange the public key for each object in order to verify the signature value for each event.
  • the history verification system can determine whether the signature information signed by the event is correct through the exchange of the public key. For example, the history verification system extracts a signature value (Signature Alice ) recorded in the extension field of the A event 210 using a public key of Alice, a hash value (Hash (A)) for the A event 210 can do. At this time, if the hash value of the extracted A event 210 matches the hash value of the A event, the validity of the B event can be verified.
  • the signature value (Signature Bob ) recorded in the extension field of the B event 220 is a hash value of the B event 220 extracted using the public key of Bob and the hash value of the A event 210 and B It is possible to verify whether the hash value extracted through the event 220 matches the hash value and verify the validity.
  • the hash value of the B event 220 extracted using the public key of Bob is calculated by using the hash value for the A event 210 and the hash value Hash (A) extracted through the B event 220, + B)), the validity of the C event can be verified.
  • the signature value recorded in the extension fields of the C event 230 (Signature Carol) the hash value and C events for the hash value for the C event 230 B event 220 using the public key of the Karol 230 It is possible to judge whether or not the hash value is identical with the extracted hash value.
  • the hash value of the C event extracted using the public key of the carol matches the hash value (Hash (Hash (B) + C) through the hash value for the B event 220 and the C event 230 , And validation of the C event can be completed.
  • the history verifying system can perform verification of whether each block chain event has one flow by individually storing each event in the EPCIS through the history verification through the block chain.
  • FIG. 3 is a block diagram illustrating a configuration of a history verification system according to an embodiment.
  • FIG. 4 is a flowchart illustrating a history verification method in a history verification system according to an exemplary embodiment.
  • the processor 300 of the history verifying system 100 may include a block chain forming unit 320 and a verifying unit 320.
  • the components of such a processor 300 may be representations of different functions performed by the processor 300 in accordance with control commands provided by the program code stored in the history verification system 100.
  • the processor 300 and the components of the processor 300 may control the history verification system 100 to perform the steps 410 to 420 included in the history verification method of FIG.
  • the components of the processor 300 and the processor 300 may be implemented to execute an instruction according to code of an operating system and code of at least one program included in the memory.
  • the processor 300 may load the program code stored in the file of the program for the history verification method into the memory. For example, when a program is executed in the history verification system 100, the processor can control the history verification system to load the program code from the file of the program into the memory under the control of the operating system. At this time, each of the block chain forming unit 310 and the verifying unit 320 included in the processor 300 and the processor 300 executes a command of a corresponding one of the program codes loaded in the memory, 420 may be different functional representations of the processor 300. For example,
  • the block chain forming unit 310 may form a block chain between respective events in the electronic commodity code information service.
  • the block chain forming unit 310 generates a Nth hash value for the Nth event when a plurality of events exist and an N (N is a natural number) event is generated for the first time, N signature value by signing with a private key owned by an object (e.g., a person, business, etc.) that records the N event, and acquiring the N-signature value obtained for the N-th event as an extension Field.
  • N is a natural number
  • the block chain forming unit 310 generates an (N + 1) -th hash value for the (N + 1) -th event through the (N + 1) 1 signature value by signing with the private key of the object to be recorded, and writing the (N + 1) -th signature value acquired for the (N + 1) -th event to the extension field of the (N + 1) -th event.
  • the verification unit 320 may verify the history information of the event through a block chain formed between the respective events.
  • the verification unit 320 can verify the validity of the history information through the block chain verification for each block chain link.
  • the verification unit 320 can verify the validity of the history information and the object by using the public key of each object as the signature value recorded in the extension field of each event.
  • the verification unit 320 may extract the Nth hash value for the Nth event by performing the validity verification using the public key of the object recording the Nth signature value.
  • the verification unit 320 decrypts the (N + 1) -th signature value using the public key of the object recording the (N + 1) -th event, It can be verified whether or not the hash value extracted from the signature value is equal to the hash value extracted from the signature value.
  • the verification unit 320 may perform validation for each of the block chains and verification of the signature value for each object.
  • FIG. 9 is a diagram for explaining a method of managing a livestock history by applying the present invention to a logistics environment in a history verification system according to an embodiment.
  • the history verification system can form a block chain for the livestock event and verify the validity of the formed block chain.
  • breeding history can be communicated to consumers through breeding farms, slaughterhouses, pavement shops, and stores.
  • the EPCIS for the breeding farm may contain information relating to each cattle present in the breeding farm (eg, cattle identification code, cattle date of birth, cattle breeding information, etc.).
  • the history verification system can generate a hash value for the production event (910) occurring in the breeding farmer's EPCIS and obtain the signature value by signing the hash value for the production event with the producer's private key.
  • the signature value generated for the production event 910 may be recorded in the extension field of the production event 910. [ At this time, some cows present in the breeding farm can be moved to the slaughterhouse.
  • Cattle can be slaughtered as cows are moved to slaughterhouses. Accordingly, a slaughter event 920 may occur in the EPCIS of the slaughterhouse.
  • the history verification system generates a hash value for the slaughter event 920 through the signature value obtained for the slaughter event 920 and the production event 910 and generates a hash value for the slaughter event 920 using the private key of the slaughterer
  • the signature value can be obtained by signing.
  • the signature value obtained for the slaughter event 920 may be recorded in the extension field of the slaughter event 920.
  • Cattle slaughtered at the slaughterhouse can be moved to the paving shop. Packing can be processed for each slaughtered portion of the slaughtered poultry.
  • a packaging event 930 may occur in the EPCIS of the packaging processing shop.
  • the history verification system generates a hash value for the packaged event 930 through the signature value obtained for the packaged event 930 and the slaughter event 920 and stores the hash value for the packaged event 930
  • the signature value can be obtained by signing with the key.
  • the signature value obtained for the wrapping event 930 may be recorded in the extension field of the wrapping event 930.
  • Packaged goods can be moved to a shop and sold at the packaging processing shop.
  • a sales event 940 may occur in the EPCIS of the shop.
  • the history verification system generates a hash value for the sales event 940 through the signature value obtained for the sales event 940 and the packaging event 930 and generates a hash value for the sales event 940 by using the seller's private key
  • the signature value can be obtained by signing.
  • the signature value obtained for the sales event 940 may be recorded in the extended field of the sales event 940.
  • the products circulated can be purchased by the consumers at the shop.
  • the consumer can perform the history validation on the purchased product. For example, validation of a block chain formed between events can be performed as the EPC of a product is recognized by the consumer through the terminal.
  • the history verification system can perform a history verification on a product. Specifically, the history verification system checks the signature value recorded in the extension field of the production event 910 by using the public key of the producer, which records the production event 910, The value can be extracted. At this time, if the public key of the producer is not a normal public key, even if the hash value is extracted, the extracted hash value and the previously stored hash value do not match, and the validity verification fails.
  • the history verification system checks the signature value recorded in the extension field of the slaughter event 920 by using a public key of the slaughterhouse which records the slaughter event 920 and performs hash verification for the extracted slaughter event 920 Is identical to the hash value extracted as the signature value for the slaughter event (920) and the production event (910). At this time, if each hash value is the same, it can be determined to be True and the next block chain link verification can be performed.
  • the history verification system checks the signature value recorded in the extension field of the packaging event 930 by using the public key of the packager 9 that records the packaging event 930, Value is the same as the hash value extracted as the signature value for the wrapping event 930 and the slaughter event 920. [ At this time, if each hash value is the same, it can be determined to be True and the next block chain link verification can be performed.
  • the history verification system checks the signature value recorded in the extension field of the sales event 940 by using the public key of the seller that records the sales event 940 and performs hash verification for the extracted sales event 940 Is identical to the hash value extracted as the signature value for the sales event 940 and the packaging event 930. [ At this time, when each hash value is the same, it is determined as True, and the verification of the next block chain can be completed.
  • the history information of the event can be verified through the block chain formed between the respective events.
  • the history verification system can be applied to various fields such as medicine, food, and aviation as well as livestock history.
  • the apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components.
  • the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system.
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • OS operating system
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG.
  • the processing unit may comprise a plurality of processors or one processor and one controller.
  • Other processing configurations are also possible, such as a parallel processor.
  • the software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded.
  • the software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device As shown in FIG.
  • the software may be distributed over a networked computer system and stored or executed in a distributed manner.
  • the software and data may be stored on one or more computer readable recording media.
  • the method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination.
  • the program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software.
  • Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Storage Device Security (AREA)

Abstract

A history verification method using block chain configuration between electronic product code information service (EPCIS) history events is disclosed. The history verification method according to one embodiment comprises the steps of: forming a block chain between respective events in the EPCIS; and verifying the history information of the events through the block chain formed between the respective events.

Description

EPCIS 이력 이벤트 간 블록체인 구성을 통한 이력 검증 방식History verification method by block chain structure between EPCIS history events
아래의 설명은 EPCIS 에서 이벤트의 이력을 검증하는 방법 및 시스템에 관한 것이다. The following description relates to a method and system for verifying the history of events in EPCIS.
GS1 EPCGlobal 프레임워크에서는 이벤트 정보 공유를 목적으로 하는 EPCIS 표준, 발생 이벤트간 사용자 서명을 기준으로 서명을 누적시키는 페디그리(Pedigree) 표준이 존재한다. The GS1 EPCGlobal framework includes the EPCIS standard for sharing event information and the Pedigree standard for accumulating signatures based on user signatures between occurrence events.
도 1은 EPCIS와 Pedigree 표준의 이벤트 데이터 기록 방식을 비교한 예이다. 이벤트의 발생 순서가 A>B>C라고 가정하자. EPCIS 표준에서는 이벤트 레파지토리인 EPCIS에 이벤트의 발생 순서에 따라 이벤트 단위로 데이터가 저장될 수 있다. 예를 들면, 앨리스(Alice)의 EPCIS에 A 이벤트가 저장될 수 있고, 밥(Bob)의 EPCIS에 B 이벤트가 저장될 수 있고, 카롤(Carol)의 EPCIS에 C 이벤트가 저장될 수 있다. 1 is an example of a comparison of event data recording methods of EPCIS and Pedigree standard. Assume that the order of occurrence of events is A> B> C. In the EPCIS standard, event data can be stored in the event repository EPCIS according to the order of occurrence of events. For example, an A event may be stored in Alice's EPCIS, a Bob event may be stored in Bob's EPCIS, and a Carol event may be stored in Carol's EPCIS.
페디그리 표준에서는 앨리스의 EPCIS에 A 이벤트가 저장됨에 따라 밥의 EPCIS에 B 이벤트를 저장함에 있어서, A 이벤트 및 B 이벤트를 밥의 개인키를 이용하여 서명한 뒤 저장하게 된다. 또한, 카롤의 EPCIS에 C 이벤트를 저장함에 있어서, C 이벤트에 밥의 개인키를 이용하여 서명된 A 이벤트가 포함된 B 이벤트를 포함시킨 뒤 카롤의 개인키를 이용하여 서명하여 저장하게 된다. In the Pedigree standard, when A event is stored in EPCIS of Alice, B event is stored in EPCIS of Bob, and A event and B event are signed using Bob's private key and stored. Also, in storing the C event in the Carol's EPCIS, the B event including the signed A event is included in the C event using the private key of Bob, and signed and stored using the private key of the carol.
페디그리 표준의 경우, EPCIS 표준대비 새로운 이벤트를 추가할 때마다 사용자 서명을 기반으로 이벤트를 누적시킴으로써 안전성을 보장할 수 있지만, 이벤트가 누적될 대마다 데이터의 크기가 증가하고, 복잡한 이력정보를 다루는데 한계가 있다. In the case of the Pedigree standard, it is possible to guarantee safety by accumulating events based on user signatures every time a new event is added to the EPCIS standard. However, since the size of data increases every time events are accumulated, .
[선행 문헌][Prior Art]
한국공개특허 제10-2010-0137868호, 한국공개특허 제10-2010-0098863호Korean Patent Publication No. 10-2010-0137868, Korean Patent Publication No. 10-2010-0098863
이벤트 레파지토리인 EPCIS에서 데이터를 누적시키지 않고 페디그리가 제공하는 안전한 이력 검증 방법 및 시스템을 제공할 수 있다.It is possible to provide a secure history verification method and system provided by Pedigree without accumulating data in the event repository EPCIS.
이력 검증 방법은, 전자 상품 코드정보 서비스(Electronic Product Code Information Service)에서 각각의 이벤트간 블록체인을 형성하는 단계; 및 상기 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보를 검증하는 단계를 포함할 수 있다.The history verification method includes: forming a block chain between respective events in an electronic product code information service; And verifying the history information of the event through a block chain formed between the respective events.
상기 블록체인을 형성하는 단계는, 복수 개의 이벤트가 존재할 때, 제 N(N은 자연수) 이벤트가 최초로 발생된 이벤트일 경우, 상기 제 N 이벤트에 대한 제 N 해시값을 생성하고, 상기 제N 해시값에 상기 제N 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N 서명값을 획득하고, 상기 제N 이벤트에 대하여 획득된 제N 서명값을 상기 제N 이벤트의 확장 필드에 기록하는 단계를 포함할 수 있다. Wherein the step of forming the block chain generates a Nth hash value for the Nth event when a plurality of events exist and an N (N is a natural number) event is generated for the first time, Signing the Nth signature value with the private key of the object recording the Nth event and writing the Nth signature value obtained for the Nth event to the extension field of the Nth event can do.
상기 블록체인을 형성하는 단계는, 제N+1이벤트 및 상기 제N 서명값을 통하여 상기 제 N+1 이벤트에 대한 제 N+1 해시값을 생성하고, 상기 제N+1 해시값에 상기 제N+1 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N+1 서명값을 획득하고, 상기 제N+1 이벤트에 대하여 획득된 제N+1 서명값을 상기 제N+1 이벤트의 확장 필드에 기록하는 단계를 포함할 수 있다.Wherein the step of forming the block chain comprises: generating an N + 1 hash value for the (N + 1) -th event through the (N + 1) -th event and the N-th signature value, 1 signature value obtained for the (N + 1) -th event is acquired as an extension field of the (N + 1) -th event, In the second step.
상기 이벤트의 이력정보를 검증하는 단계는, 각각의 이벤트의 확장 필드에 기록된 서명값을 각각의 객체의 공개키를 이용하여 상기 이벤트의 이력정보 및 객체의 유효성을 검증하는 단계를 포함할 수 있다. The step of verifying the history information of the event may include verifying the history information of the event and the validity of the object by using the public key of each object as the signature value recorded in the extension field of each event .
상기 이벤트의 이력정보를 검증하는 단계는, 제N 서명값을 제N 이벤트를 기록하는 객체의 공개키를 이용하여 유효성 검증을 수행함에 따라 상기 제 N 이벤트에 대한 제 N 해시값을 추출하는 단계를 포함할 수 있다. The step of verifying the history information of the event may include extracting a Nth hash value for the Nth event by performing validity verification using the public key of the object recording the Nth signature value, .
상기 이력정보를 검증하는 단계는, 제N+1 서명값을 제N+1 이벤트를 기록하는 객체의 공개키를 이용하여 복호화함에 따라 추출된 제 N+1 이벤트에 대한 해시값이 상기 제 N+1 이벤트와 상기 제N 서명값으로 추출한 해시값과 동일한지 여부를 판단하여 유효성을 검증하는 단계를 포함할 수 있다. The verification of the history information may include decrypting the (N + 1) -th signature value using the public key of the object recording the (N + 1) -th event, 1 event and the hash value extracted by the N-th signature value, and verifying the validity.
상기 이력정보를 검증하는 단계는, 상기 이벤트간 형성된 블록체인과 상기 이벤트에 대하여 생성된 서명값을 분리하여 블록체인 각각에 대한 유효성 검사 및 각각의 객체에 대한 서명값에 대한 검증을 수행하는 단계를 포함할 수 있다.The step of verifying the history information may include performing a validation for each of the block chains and a verification of a signature value for each object by separating a block chain formed between the events and a signature value generated for the event .
이력 검증 방법을 실행시키기 위하여 컴퓨터 판독가능한 기록 매체에 저장된 컴퓨터 프로그램은, 전자 상품 코드정보 서비스(Electronic Product Code Information Service)에서 각각의 이벤트간 블록체인을 형성하는 단계; 및 상기 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보를 검증하는 단계를 포함할 수 있다.A computer program stored in a computer-readable recording medium for executing a history verification method includes: forming a block chain between respective events in an electronic product code information service; And verifying the history information of the event through a block chain formed between the respective events.
이력 검증 시스템은, 전자 상품 코드정보 서비스(Electronic Product Code Information Service)에서 각각의 이벤트간 블록체인을 형성하는 블록체인 형성부; 및 상기 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보를 검증하는 검증부를 포함할 수 있다.The history verification system includes a block chain forming unit for forming a block chain between respective events in an electronic product code information service; And a verification unit for verifying the history information of the event through a block chain formed between the respective events.
상기 블록체인 형성부는, 복수 개의 이벤트가 존재할 때, 제 N(N은 자연수) 이벤트가 최초로 발생된 이벤트일 경우, 상기 제 N 이벤트에 대한 제 N 해시값을 생성하고, 상기 제N 해시값에 상기 제N 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N 서명값을 획득하고, 상기 제N 이벤트에 대하여 획득된 제N 서명값을 상기 제N 이벤트의 확장 필드에 기록할 수 있다. Wherein the block chain forming unit generates an Nth hash value for the Nth event when a plurality of events exist and an N (N is a natural number) event is generated for the first time, An Nth signature value may be acquired by signing with the private key of the object recording the Nth event, and an Nth signature value obtained for the Nth event may be recorded in the extension field of the Nth event.
상기 블록체인 형성부는, 제N+1이벤트 및 상기 제N 서명값을 통하여 상기 제 N+1 이벤트에 대한 제 N+1 해시값을 생성하고, 상기 제N+1 해시값에 상기 제N+1 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N+1 서명값을 획득하고, 상기 제N+1 이벤트에 대하여 획득된 제N+1 서명값을 상기 제N+1 이벤트의 확장 필드에 기록할 수 있다.Wherein the block chain forming unit generates an N + 1 hash value for the (N + 1) -th event through the (N + 1) -th event and the N-th signature value, 1 signature value obtained for the (N + 1) -th event by signing with the private key of the object recording the event, and writing the (N + 1) .
상기 검증부는, 각각의 이벤트의 확장 필드에 기록된 서명값을 각각의 객체의 공개키를 이용하여 상기 이벤트의 이력정보 및 객체의 유효성을 검증할 수 있다. The verification unit may verify the history information of the event and the validity of the object by using the signature value recorded in the extension field of each event using the public key of each object.
상기 검증부는, 제N 서명값을 상기 제N 이벤트를 기록하는 객체의 공개키를 이용하여 유효성 검증을 수행함에 따라 제 N 이벤트에 대한 제 N 해시값을 추출할 수 있다. The verifying unit may extract the Nth hash value for the Nth event by performing the validity verification using the public key of the object recording the Nth signature value.
상기 검증부는, 제N+1 서명값을 상기 제N+1 이벤트를 기록하는 객체의 공개키를 이용하여 복호화함에 따라 추출된 제 N+1 이벤트에 대한 해시값이 상기 제 N+1 이벤트와 상기 제N 서명값으로 추출한 해시값과 동일한지 여부를 판단하여 유효성을 검증할 수 있다. The verification unit decrypts the (N + 1) -th signature value using the public key of the object for recording the (N + 1) -th event, and outputs the hash value for the It is possible to verify the validity by judging whether or not it is the same as the hash value extracted by the Nth signature value.
상기 검증부는, 상기 이벤트간 형성된 블록체인과 상기 이벤트에 대하여 생성된 서명값을 분리하여 블록체인 각각에 대한 유효성 검사 및 각각의 객체에 대한 서명값에 대한 검증을 수행할 수 있다. The verification unit may perform validation of each block chain and verification of a signature value for each object by separating a block chain formed between the events and a signature value generated for the event.
일 실시예에 따른 이력 검증 시스템은 EPCIS의 이벤트간 블록체인을 생성함에 따라 각각의 이벤트에 대한 서명값을 개별적으로 저장함으로써 책임 여부를 명확히할 수 있다.The history verification system according to an exemplary embodiment can clarify responsibility by separately storing the signature values for each event as the EPCIS inter-event block chain is generated.
일 실시예에 따른 이력 검증 시스템은 공개키를 이용하여 이벤트간 형성된 블록체인을 검증함에 따라 데이터의 누적없이 안전하게 이력 검증을 수행할 수 있다. The history verifying system according to an embodiment can verify the history of the block chain formed between the events using the public key and perform the history verification without accumulation of data securely.
일 실시예에 따른 이력 검증 시스템은 공개키를 이용하여 이벤트간 형성된 블록체인을 검증함에 따라 각각의 이벤트에 대한 이력 정보의 유효성을 검증할 뿐만 아니라 각각의 이벤트에 대한 서명 정보를 검증할 수 있다.The history verification system according to an embodiment verifies the validity of the history information for each event by verifying the block chain formed between the events using the public key, as well as the signature information for each event.
도 1은 EPCIS와 Pedigree 표준의 이벤트 데이터 기록 방식을 비교한 예이다.1 is an example of a comparison of event data recording methods of EPCIS and Pedigree standard.
도 2는 일 실시예에 따른 이력 검증 시스템에서 이력 검증 과정을 설명하기 위한 도면이다.FIG. 2 is a diagram for explaining a history verification process in the history verification system according to the embodiment.
도 3은 일 실시예에 따른 이력 검증 시스템의 구성을 설명하기 위한 블록도이다.3 is a block diagram illustrating a configuration of a history verification system according to an exemplary embodiment of the present invention.
도 4는 일 실시예에 따른 이력 검증 시스템에서 이력 검증 방법을 설명하기 위한 흐름도이다.FIG. 4 is a flowchart for explaining a history verification method in the history verification system according to the embodiment.
도 5 및 도 6은 일 실시예에 따른 이력 검증 시스템에서 이벤트간 블록체인을 형성하는 방법을 설명하기 위한 도면이다.5 and 6 are views for explaining a method of forming an inter-event block chain in the history verification system according to an embodiment.
도 7은 일 실시예에 따른 이력 검증 시스템에서 이벤트간 블록체인의 유효성을 검증하는 방법을 설명하기 위한 도면이다.FIG. 7 is a diagram for explaining a method of verifying the validity of inter-event block chains in the history verification system according to the embodiment.
도 8은 일 실시예에 따른 이력 검증 시스템에서 이벤트간 블록체인의 유효성을 검증하는 또 다른 방법을 설명하기 위한 도면이다. FIG. 8 is a diagram for explaining another method for verifying the validity of an inter-event block chain in the history verification system according to the embodiment.
도 9는 일 실시예에 따른 이력 검증 시스템에서 물류 환경에 적용하여 축산 이력을 관리하는 방법을 설명하기 위한 도면이다.9 is a diagram for explaining a method of managing a livestock history by applying the present invention to a logistics environment in a history verification system according to an embodiment.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.
도 2는 일 실시예에 따른 이력 검증 시스템에서 이력 검증 과정을 설명하기 위한 도면이다.FIG. 2 is a diagram for explaining a history verification process in the history verification system according to the embodiment.
이력 검증 시스템은 전자 상품 코드정보 서비스(Electronic Product Code Information Service)에서 각각의 이벤트간 블록체인을 형성하고, 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보에 대한 검증을 수행할 수 있다. 이력 검증 시스템은 이벤트 레파지토리인 EPCIS에서 데이터를 누적시키지 않고도 페디그리가 제공하는 안전한 이력 인증 검증 체계를 제공할 수 있다.The history verification system can form a block chain between each event in the electronic product code information service, and can verify the history information of the event through a block chain formed between the respective events. The history verification system can provide a secure history authentication verification system provided by Pedigree without accumulating data in the event repository EPCIS.
일례로, A 이벤트(210), B 이벤트(220) 및 C 이벤트(230)를 포함하는 각각의 EPCIS가 존재하고, 이벤트의 발생 순서는 A->B->C라고 가정하자. 다시 말해서, 앨리스(Alice)의 EPCIS에 A 이벤트(210), 밥(Bob)의 EPCIS에 B 이벤트(220) 및 카롤(Carol)의 EPCIS에 C 이벤트(230)가 존재할 수 있다. 이때, EPCIS 각각에 존재하는 이벤트의 개수가 한정되는 것은 아니다. 실시예에서는, 각각의 EPCIS에 존재하는 A, B, C이벤트를 예를 들어 설명하기로 한다. For example, assume that each EPCIS including the A event 210, the B event 220, and the C event 230 exists and the order of generation of the event is A-> B-> C. In other words, there may be an A event 210 in Alice's EPCIS, a B event 220 in Bob's EPCIS, and a C event 230 in Carol's EPCIS. At this time, the number of events in each EPCIS is not limited. In the embodiment, A, B and C events existing in each EPCIS will be described by way of example.
이력 검증 시스템은 EPCIS간 블록체인을 형성함으로써 페디그리의 이벤트 누적 방식을 구현할 수 있다. 구체적으로, 이력 검증 시스템은 EPCIS에 존재하는 이벤트 각각에 블록체인을 생성할 수 있다. The history verification system can build Pedigree's event accumulation method by forming a block chain between EPCIS. Specifically, the history verification system can generate a block chain for each event present in the EPCIS.
도 5 및 도 6를 참고하면, 이력 검증 시스템에서 이벤트간 블록체인을 형성하는 과정을 설명하기 위한 도면이다. 우선적으로, 이력 검증 시스템은 복수 개의 이벤트가 존재할 때, 제 N(N은 자연수) 이벤트가 최초로 발생된 이벤트인지 여부를 판단할 수 있다. 이력 검증 시스템은 제 N(N은 자연수) 이벤트가 최초로 발생된 이벤트일 경우, 제 N 이벤트에 대한 제 N 해시값을 생성하고, 제N 해시값에 제N 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N 서명값을 획득하고, 제N 이벤트에 대하여 획득된 제N 서명값을 제N 이벤트의 확장 필드에 기록할 수 있다. 도 5는 앨리스의 EPCIS에 서명값을 생성하기 위한 것으로, 이력 검증 시스템은 앨리스의 EPCIS에 존재하는 A 이벤트(210)에 대한 해시값(Hash(A))을 생성할 수 있다. 이력 검증 시스템은 A이벤트(210)에 대한 해시값(Hash(A))에 A 이벤트(210)를 기록하는 앨리스의 개인키(SignAlicePrivkey)(211)로 서명함에 따라 서명값(SignatureAlice)을 획득할 수 있다. 이력 검증 시스템은 A 이벤트(210)에 대하여 획득된 서명값(SignatureAlice)을 A 이벤트(210)의 확장 필드에 기록할 수 있다. Referring to FIGS. 5 and 6, a process for forming an inter-event block chain in the history verification system is described. First, when there are a plurality of events, the history verification system can determine whether the event is the first occurrence of the N (N is a natural number) event. The history verification system generates a first hash value for the Nth event when the Nth event (N is a natural number) event is generated for the first time, signs it with the private key of the object that records the Nth event in the Nth hash value And may record the Nth signature value obtained for the Nth event in the extension field of the Nth event. FIG. 5 is for generating a signature value in Alice's EPCIS, where the history verification system may generate a hash value (Hash (A)) for the A event 210 residing in Alice's EPCIS. The history verifying system checks the signature value (Signature Alice ) by signing with Alice's private key 211 which records the A event 210 in the hash value (Hash (A)) for the A event 210 Can be obtained. The history verification system may record the signature value (Signature Alice ) obtained for the A event 210 in the extended field of the A event 210. [
이력 검증 시스템은 제N+1 이벤트 및 제N 서명값을 통하여 제 N+1 이벤트에 대한 제 N+1 해시값을 생성하고, 제N+1 해시값에 제N+1 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N+1 서명값을 획득하고, 제N+1 이벤트에 대하여 획득된 제N+1 서명값을 제N+1 이벤트의 확장 필드에 기록할 수 있다. 이와 같이, 이력 검증 시스템은 EPCIS에서 각각의 이벤트간 블록체인을 형성할 수 있다. 도 6은 밥의 EPCIS에 서명값을 생성하기 위한 것으로, 이력 검증 시스템은 밥의 EPCIS에 존재하는 B 이벤트(220)와 이전 서명인 A 이벤트(210)에 대하여 획득된 서명값(SignatureAlice)을 통하여 B 이벤트(220)에 대한 해시값(Hash(B+SignatureAlice))을 생성할 수 있다. 이력 검증 시스템은 B 이벤트(220)에 대한 해시값(Hash(B+SignatureAlice))에 B이벤트(220)를 기록하는 밥의 개인키(SignBobPrivkey)(221)로 서명함에 따라 서명값(SignatureBob)을 획득할 수 있다. 이력 검증 시스템은 B 이벤트(220)에 대하여 획득된 서명값(SignatureBob)을 B 이벤트(220)의 확장 필드에 기록할 수 있다.The history verification system generates an (N + 1) -th hash value for the (N + 1) -th event through the (N + 1) 1 signature value by signing with the private key and recording the (N + 1) -th signature value obtained for the (N + 1) -th event in the extension field of the (N + 1) -th event. Thus, the history verification system can form a block chain between each event in the EPCIS. To 6 is for generating a signature value for EPCIS of rice, the history verification system a signed value (Signature Alice) obtained for the B event 220 and the previous signature, A event (210) present in the EPCIS Bob A hash value (Hash (B + Signature Alice )) for the B event 220 can be generated. The history verifying system may be configured to sign with the Bob's private key (Sign BobPrivkey ) 221 that records the B event 220 in the hash value (Hash (B + Signature Alice )) for the B event 220, Bob. ≪ / RTI > The history verification system may record the signature value obtained for the B event 220 (Signature Bob ) in the extended field of the B event 220. [
또한, 마찬가지로, 카롤의 EPCIS에 존재하는 C 이벤트(230)와 이전 서명인 B 이벤트(220)에 대하여 획득된 서명값(SignatureBob)을 통하여 C 이벤트(230)에 대한 해시값(Hash(C+SignatureBob))을 생성할 수 있다. 이력 검증 시스템은 C 이벤트(230)에 대한 해시값(Hash(C+SignatureBob))에 C 이벤트(230)를 기록하는 카롤의 개인키(SignCarolPrivkey)(231)로 서명함에 따라 서명값(SignatureCarol)을 획득할 수 있다. 이력 검증 시스템은 C 이벤트(230)에 대하여 획득된 서명값(SignatureCarol)을 C 이벤트(230)의 확장 필드에 기록할 수 있다. 이와 같이, 이력 검증 시스템은 이벤트간 블록체인을 형성할 수 있다. 이력 검증 시스템은 이벤트에 대한 서명값을 개별적으로 보관할 수 있다.Likewise, the hash value (Hash (C + 1)) for the C event 230 through the signature value (Signature Bob ) obtained for the C event 230 in the Carol's EPCIS and the B event 220, Signature Bob ). The history verifying system signs a private key (Sign CarolPrivkey ) 231 that records a C event 230 in a hash value (Hash (C + Signature Bob )) for the C event 230, Carol ). The history verification system may record the signature value (Signature Carol ) obtained for the C event 230 in the extension field of the C event 230. [ In this way, the history verification system can form a block chain between events. The history verification system can keep the signature values for the events individually.
일 실시예에 따른 이력 검증 시스템은 이벤트간 블록체인을 형성함으로써 데이터의 크기가 증가하는 것을 방지할 수 있고 계속적으로 이벤트가 누적됨에 따라 발생하는 전체적인 연산량을 줄일 수 있다.The history verification system according to the embodiment can prevent the size of the data from increasing by forming a block chain between events and can reduce the overall amount of operation that occurs as the events are accumulated continuously.
도 7은 일 실시예에 따른 이력 검증 시스템에서 이벤트간 블록체인의 유효성을 검증하는 방법을 설명하기 위한 도면이다.FIG. 7 is a diagram for explaining a method of verifying the validity of inter-event block chains in the history verification system according to the embodiment.
*이력 검증 시스템은 각각의 블록체인의 링크마다 블록체인을 통하여 서명값에 대한 유효성을 검증할 수 있다. 이력 검증 시스템은 제N 서명값을 제N 이벤트를 기록하는 객체의 공개키를 이용하여 유효성 검증을 수행함에 따라 제 N 이벤트에 대한 제 N 해시값을 추출할 수 있다. 이력 검증 시스템은 제N+1 서명값을 제N+1 이벤트를 기록하는 객체의 공개키를 이용하여 복호화함에 따라 추출된 제 N+1 이벤트에 대한 해시값이 제 N+1 이벤트와 제N 서명값으로 추출한 해시값과 동일한지 여부를 판단하여 유효성을 검증할 수 있다. 이때, 제N+1 서명값을 제N+1 이벤트를 기록하는 객체의 공개키를 이용하여 복호화함에 따라 추출된 제 N+1 이벤트에 대한 해시값이 제 N+1 이벤트와 제N 서명값으로 추출한 해시값과 일치할 경우, True로 판단하게 된다.* The history verification system can verify the validity of the signature value through the block chain for each link of each block chain. The history verification system may extract the Nth hash value for the Nth event by performing the validity verification using the public key of the object recording the Nth signature value. The history verification system decrypts the (N + 1) -th signature value using the public key of the object recording the (N + 1) -th event, and outputs the hash value for the extracted (N + 1) It is possible to verify whether the hash value is the same as the hash value extracted by the value. In this case, the hash value for the (N + 1) -th event extracted by decoding the (N + 1) -th signature value using the public key of the object for recording the (N + 1) If it matches the extracted hash value, it is judged as True.
이벤트가 블록체인의 유효성을 검증하기 위하여 각각의 참여자(예를 들면, 앨리스, 밥, 카롤)간 공개키를 공유하고 있다고 가정한다. It is assumed that an event shares a public key between each participant (e.g., Alice, Bob, and Carol) to validate the block chain.
이력 검증 시스템은 A 이벤트(210)에 대한 서명값(SignatureAlice)을 A 이벤트(210)를 기록하는 앨리스의 공개키를 이용하여 유효성 검증을 수행함에 따라 A 이벤트(210)에 대한 해시값(Hash(A))을 추출할 수 있다. 이때, A 이벤트(210)에 대한 서명값(SignatureAlice)을 A 이벤트(210)를 기록하는 앨리스의 공개키로 복호화하여 추출된 A 이벤트(210)에 대한 해시값이 기 저장된 A 이벤트(210)에 대한 해시값과 동일한지 여부를 판단하여 유효성을 검증할 수 있다. 다시 말해서, VerifyAlicePublickey(SignatureAlice)와 Hash(A)가 일치하는지 여부를 판단할 수 있다. 이때, VerifyAlicePublickey(SignatureAlice)와 Hash(A)이 일치할 경우, B 이벤트에 대한 유효성 검증을 수행하게 된다. History verification system hash value for the A event 210 in accordance with carrying out the validation using the public Alice's key to record a signature value (Signature Alice) to A event 210 on A event 210 (Hash (A)) can be extracted. At this time, a signature value (Signature Alice ) for the A event 210 is decrypted with the public key of Alice, which records the A event 210, and the hash value of the extracted A event 210 is stored in the A event 210 The validity of the hash value can be verified. In other words, it can be determined whether the Verify AlicePublickey (Signature Alice ) and the Hash (A) match. At this time, if the Verify AlicePublickey (Signature Alice ) matches the Hash (A), the validity of the B event is verified.
이력 검증 시스템은 B 이벤트(220)에 대한 서명값(SignatureBob)을 B 이벤트(220)를 기록하는 밥의 공개키를 이용하여 유효성 검증을 수행함에 따라 B 이벤트(220)에 대한 해시값을 추출할 수 있다. B 이벤트(220)에 대한 서명값(SignatureBob)을 B 이벤트(220)를 기록하는 밥의 공개키로 복호화하여 추출된 B 이벤트(220)에 대한 해시값이 B 이벤트(220) 및 A 이벤트(210)에 대한 서명값(SignatureAlice)으로 추출한 해시값과 동일한지 여부를 판단하여 유효성을 검증할 수 있다. 다시 말해서, VerifyBobPublickey(SignatureBob)와 Hash(B+SignatureAlice)가 일치하는지 여부를 판단할 수 있다. 이때, VerifyBobPublickey(SignatureBob)와 Hash(B+SignatureAlice)가 일치할 경우, C 이벤트에 대한 유효성 검증을 수행하게 된다. The history verification system extracts a hash value for the B event 220 by performing a validity check using a public key of Bob that records a signature value (Signature Bob ) for the B event 220, can do. Signature values for the B event 220 (Signature Bob) the hash value for the B event 220 extracted by decrypting the public key of the rice to record B event 220 B event 220 and the A event (210 (Signature Alice ), and verify the validity of the hash value. In other words, it can be determined whether the Verify BobPublickey (Signature Bob ) and the Hash (B + Signature Alice ) match. At this time, if the Verify BobPublickey (Signature Bob ) matches the Hash (B + Signature Alice ), the validity of the C event is verified.
이력 검증 시스템은 C 이벤트(230)에 대한 서명값(SignatureCarol)을 C 이벤트(230)를 기록하는 카롤의 공개키를 이용하여 유효성 검증을 수행함에 따라 C 이벤트(230)에 대한 해시값을 추출할 수 있다. C 이벤트(230)에 대한 서명값(SignatureCarol)을 C 이벤트(230)를 기록하는 카롤의 공개키로 복호화하여 추출된 C 이벤트(230)에 대한 해시값이 C 이벤트(230) 및 B 이벤트(220)에 대한 서명값(SignatureBob)으로 추출한 해시값과 동일한지 여부를 판단할 수 있다. 다시 말해서, VerifyCarolPublickey(SignatureCarol)와 Hash(C+SignatureBob)가 일치하는지 여부를 판단할 수 있다. 이때, VerifyCarolPublickey(SignatureCarol)와 Hash(C+SignatureBob)가 일치할 경우, 유효성 검증을 완료하게 된다. The history verification system extracts a hash value for the C event 230 by performing a validation verification using a KAOL public key that records a signature value (Signature Carol ) for the C event 230 to the C event 230 can do. The hash value for the extracted C event 230 is obtained by decrypting the signature value (Signature Carol ) for the C event 230 with the public key of the carol recording the C event 230 as the C event 230 and the B event 220 (Signature Bob ) of the hash value of the hash value. In other words, it is possible to judge whether Verify CarolPublickey (Signature Carol ) matches Hash (C + Signature Bob ). At this time, if Verify CarolPublickey (Signature Carol ) matches Hash (C + Signature Bob ), validation is completed.
이와 같이, 이력 검증 시스템은 이벤트의 확장 필드에 기록된 서명값을 각각의 공개키를 이용하여 추출된 값이 각각의 이벤트에 대한 해시값과 동일한지 여부를 판단할 수 있다. 이때, 추출된 값과 이벤트에 대한 해시값이 일치하지 않을 경우, 다음 단계의 블록체인의 링크를 검증할 수 없으며, 추출된 값과 이벤트에 대한 해시값이 일치할 경우, 다음 단계의 블록체인의 링크를 검증할 수 있다. Thus, the history verification system can determine whether the signature value recorded in the extended field of the event is the same as the hash value for each event extracted using each public key. In this case, if the extracted value does not match the hash value of the event, the link of the next block chain can not be verified. If the extracted value matches the hash value of the event, You can verify the link.
이와 같이, 이력 검증 시스템은 이벤트의 확장 필드에 기록된 서명값을 각각의 공개키를 이용하여 추출된 값이 해시값과 동일한지 여부를 판단함에 따라 전체적인 이력 이벤트에 대한 이력 검증뿐만 아니라 각각의 이벤트에 대하여 서명한 서명자의 유효성을 검증할 수 있다. In this way, the history verification system determines whether the extracted value of the signature value recorded in the extended field of the event is equal to the hash value by using each public key, and thereby not only verifies the history of the overall history event, To verify the validity of the signer who signed it.
도 8은 일 실시예에 따른 이력 검증 시스템에서 이벤트간 블록체인의 유효성을 검증하는 또 다른 방법을 설명하기 위한 도면이다. FIG. 8 is a diagram for explaining another method for verifying the validity of an inter-event block chain in the history verification system according to the embodiment.
이력 검증 시스템은 블록체인과 서명정보(서명값)를 분리시켜 유효성 검증을 복수 개의 단계로 나누어 진행할 수 있다. 실시예에서는 2개의 단계로 나누어 유효성 검사를 수행할 수 있다. 이때, 각각의 참여자간 공유키를 모두 공유하지 않고, 일부의 공개키의 공유를 통하여 유효성 검증을 수행할 수 있다.The history verification system can divide the block chain and the signature information (signature value) and divide the validation into a plurality of steps. In the embodiment, the validity check can be performed in two steps. At this time, the validity verification can be performed through sharing of some public keys without sharing all the shared keys among the respective participants.
우선적으로, 각각의 EPCIS에 존재하는 이벤트 각각에 대한 해시값을 생성하는 또 다른 방법을 설명하기로 한다. 도 2에서 설명한 바와 같이, A 이벤트(210), B 이벤트(220) 및 C 이벤트(230)를 포함하는 각각의 EPCIS가 존재하고, 이벤트의 발생 순서는 A->B->C라고 가정하자. 다시 말해서, 앨리스(Alice)의 EPCIS에 A 이벤트(210), 밥(Bob)의 EPCIS에 B 이벤트(220) 및 카롤(Carol)의 EPCIS에 C 이벤트(230)가 존재할 수 있다. 이때, 앞서 설명한 바와 달리, 이력 검증 시스템은 A 이벤트(210)에 대한 해시값(Hash(A))을 생성할 수 있다. 또한, A 이벤트(210)에 대한 해시값과 B 이벤트(220)를 포함하여 B 이벤트(220)에 대한 해시값(Hash(Hash(A)+B))을 생성할 수 있다. B 이벤트(220)에 대한 해시값 및 C 이벤트(230)를 포함하여 C 이벤트(230)에 대한 해시값(Hash(Hash(B)+C))을 생성할 수 있다. First, another method of generating a hash value for each event that exists in each EPCIS will be described. As described in FIG. 2, it is assumed that each EPCIS including the A event 210, the B event 220, and the C event 230 exists and the order of generation of the event is A-> B-> C. In other words, there may be an A event 210 in Alice's EPCIS, a B event 220 in Bob's EPCIS, and a C event 230 in Carol's EPCIS. At this time, contrary to the foregoing description, the history verification system can generate the hash value (Hash (A)) for the A event 210. [ It is also possible to generate a hash value Hash (Hash (A) + B) for the B event 220, including the hash value for the A event 210 and the B event 220. [ (Hash (B) + C) for the C event 230, including the hash value for the B event 220 and the C event 230. [
이력 검증 시스템은 각각의 이벤트에 대하여 생성된 해시값을 각각의 이벤트를 기록하는 객체의 개인키로 서명함에 따라 서명값을 생성할 수 있다. 다시 말해서, 이력 검증 시스템은 A 이벤트(210)에 대한 해시값(Hash(A))을 앨리스의 개인키를 이용하여 A 이벤트(210)에 대한 서명값(SignatureAlice)을 생성할 수 있고, B 이벤트(220)에 대한 해시값(Hash(Hash(A)+B))을 밥의 개인키를 이용하여 B 이벤트(220)에 대한 서명값(SignatureBob)을 생성할 수 있고, C 이벤트(230)에 대한 해시값(Hash(Hash(B)+C))을 카롤의 개인키를 이용하여 C 이벤트(230)에 대한 서명값(SignatureCarol)을 생성할 수 있다. 이때, 각각의 이벤트의 확장 필드에 서명값을 기록할 수 있다.The history verification system can generate a signature value by signing the generated hash value for each event with the private key of the object recording each event. In other words, the history verification system may generate a signature value (Signature Alice ) for the A event 210 using Alice's private key as the hash value (Hash (A)) for the A event 210, A signature value (Signature Bob ) for the B event 220 can be generated using Bob's private key as a hash value (Hash (A) + B) for the event 220, and a C event 230 A signature value (Signature Carol ) for the C event 230 can be generated using the private key of the carol as the hash value (Hash (Hash (B) + C) At this time, the signature value can be recorded in the extension field of each event.
이력 검증 시스템은 해시값을 통하여 이벤트간 블록체인의 유효성을 검증할 수 있다. 이때, 각각의 참여자간 공개키의 교환이 필요하지 않게 된다. 다시 말해서, 이력 검증 시스템은 공개키의 교환없이 이벤트간 블록체인의 유효성 검증을 수행할 수 있다. The history verification system can verify the validity of the inter-event block chain through the hash value. At this time, it is not necessary to exchange the public key between each participant. In other words, the history verification system can perform validation of block chaining between events without exchanging public keys.
또한, 이력 검증 시스템은 블록체인의 유효성을 검증함에 따라 각각의 EPCIS에 존재하는 각각의 이벤트에 대한 서명 검증을 수행할 수 있다. 이때, 이력 검증 시스템은 각각의 이벤트에 대한 서명값의 검증을 위하여 각각의 객체에 대한 공개키의 교환이 필요하게 된다. 이에 따라, 이력 검증 시스템은 공개키의 교환을 통하여 이벤트에 서명한 서명 정보가 맞는지 여부를 판단할 수 있다. 예를 들면, 이력 검증 시스템은 A 이벤트(210)의 확장 필드에 기록된 서명값(SignatureAlice)을 앨리스의 공개키를 이용하여 A 이벤트(210)에 대한 해시값(Hash(A))을 추출할 수 있다. 이때, 추출된 A 이벤트(210)에 대한 해시값과 A 이벤트에 대한 해시값이 일치할 경우, B 이벤트에 대한 유효성 검증을 수행할 수 있다. 또한, B 이벤트(220)의 확장 필드에 기록된 서명값(SignatureBob)을 밥의 공개키를 이용하여 추출된 B 이벤트(220)에 대한 해시값이 A 이벤트(210)에 대한 해시값 및 B 이벤트(220)를 통하여 추출된 해시값과 일치하는지 여부를 판단하여 유효성을 검증할 수 있다. 밥의 공개키를 이용하여 추출된 B 이벤트(220)에 대한 해시값이 해시값이 A 이벤트(210)에 대한 해시값 및 B 이벤트(220)를 통하여 추출된 해시값(Hash(Hash(A)+B))과 일치할 경우, C 이벤트에 대한 유효성 검증을 수행할 수 있다. In addition, the history verification system can verify the signature of each event in each EPCIS by verifying the validity of the block chain. At this time, the history verification system needs to exchange the public key for each object in order to verify the signature value for each event. Accordingly, the history verification system can determine whether the signature information signed by the event is correct through the exchange of the public key. For example, the history verification system extracts a signature value (Signature Alice ) recorded in the extension field of the A event 210 using a public key of Alice, a hash value (Hash (A)) for the A event 210 can do. At this time, if the hash value of the extracted A event 210 matches the hash value of the A event, the validity of the B event can be verified. If the signature value (Signature Bob ) recorded in the extension field of the B event 220 is a hash value of the B event 220 extracted using the public key of Bob and the hash value of the A event 210 and B It is possible to verify whether the hash value extracted through the event 220 matches the hash value and verify the validity. The hash value of the B event 220 extracted using the public key of Bob is calculated by using the hash value for the A event 210 and the hash value Hash (A) extracted through the B event 220, + B)), the validity of the C event can be verified.
C 이벤트(230)의 확장 필드에 기록된 서명값(SignatureCarol)을 카롤의 공개키를 이용하여 C 이벤트(230)에 대한 해시값이 B 이벤트(220)에 대한 해시값 및 C 이벤트(230)를 통하여 추출된 해시값과 일치하는지 여부를 판단할 수 있다. 카롤의 공개키를 이용하여 추출된 C 이벤트에 대한 해시값이 B 이벤트(220)에 대한 해시값 및 C 이벤트(230)를 통하여 해시값(Hash(Hash(B)+C))과 일치할 경우, C 이벤트에 대한 유효성 검증을 완료할 수 있다.The signature value recorded in the extension fields of the C event 230 (Signature Carol) the hash value and C events for the hash value for the C event 230 B event 220 using the public key of the Karol 230 It is possible to judge whether or not the hash value is identical with the extracted hash value. When the hash value of the C event extracted using the public key of the carol matches the hash value (Hash (Hash (B) + C) through the hash value for the B event 220 and the C event 230 , And validation of the C event can be completed.
일 실시예에 따른 이력 검증 시스템은 블록체인을 통한 이력 검증을 통하여 EPCIS에서 이벤트 각각을 개별적으로 보관하되 블록체인으로 연결된 이벤트가 하나의 플로우를 가지고 있는지 검증을 수행할 수 있다.The history verifying system according to an embodiment can perform verification of whether each block chain event has one flow by individually storing each event in the EPCIS through the history verification through the block chain.
도 3은 일 실시예에 따른 이력 검증 시스템의 구성을 설명하기 위한 블록도이고, 도 4는 일 실시예에 따른 이력 검증 시스템에서 이력 검증 방법을 설명하기 위한 흐름도이다.FIG. 3 is a block diagram illustrating a configuration of a history verification system according to an embodiment. FIG. 4 is a flowchart illustrating a history verification method in a history verification system according to an exemplary embodiment.
이력 검증 시스템(100)의 프로세서(300)는 블록체인 형성부(320) 및 검증부(320)를 포함할 수 있다. 이러한 프로세서(300)의 구성요소들은 이력 검증 시스템(100)에 저장된 프로그램 코드가 제공하는 제어 명령에 따라 프로세서(300)에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다. 프로세서(300) 및 프로세서(300)의 구성요소들은 도 4의 이력 검증 방법이 포함하는 단계들(410 내지 420)을 수행하도록 이력 검증 시스템(100)을 제어할 수 있다. 이때, 프로세서(300) 및 프로세서(300)의 구성요소들은 메모리가 포함하는 운영체제의 코드와 적어도 하나의 프로그램의 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다. The processor 300 of the history verifying system 100 may include a block chain forming unit 320 and a verifying unit 320. The components of such a processor 300 may be representations of different functions performed by the processor 300 in accordance with control commands provided by the program code stored in the history verification system 100. The processor 300 and the components of the processor 300 may control the history verification system 100 to perform the steps 410 to 420 included in the history verification method of FIG. At this time, the components of the processor 300 and the processor 300 may be implemented to execute an instruction according to code of an operating system and code of at least one program included in the memory.
프로세서(300)는 이력 검증 방법을 위한 프로그램의 파일에 저장된 프로그램 코드를 메모리에 로딩할 수 있다. 예를 들면, 이력 검증 시스템(100)에서 프로그램이 실행되면, 프로세서는 운영체제의 제어에 따라 프로그램의 파일로부터 프로그램 코드를 메모리에 로딩하도록 이력 검증 시스템을 제어할 수 있다. 이때, 프로세서(300) 및 프로세서(300)가 포함하는 블록체인 형성부(310) 및 검증부(320) 각각은 메모리에 로딩된 프로그램 코드 중 대응하는 부분의 명령을 실행하여 이후 단계들(410 내지 420)을 실행하기 위한 프로세서(300)의 서로 다른 기능적 표현들일 수 있다. The processor 300 may load the program code stored in the file of the program for the history verification method into the memory. For example, when a program is executed in the history verification system 100, the processor can control the history verification system to load the program code from the file of the program into the memory under the control of the operating system. At this time, each of the block chain forming unit 310 and the verifying unit 320 included in the processor 300 and the processor 300 executes a command of a corresponding one of the program codes loaded in the memory, 420 may be different functional representations of the processor 300. For example,
단계(410)에서 블록체인 형성부(310)는 전자 상품 코드정보 서비스에서 각각의 이벤트간 블록체인을 형성할 수 있다. 블록체인 형성부(310)는 복수 개의 이벤트가 존재할 때, 제 N(N은 자연수) 이벤트가 최초로 발생된 이벤트일 경우, 제 N 이벤트에 대한 제 N 해시값을 생성하고, 제N 해시값에 제N 이벤트를 기록하는 객체(예를 들면, 사람, 업체 등)가 소유하고 있는 개인키로 서명함에 따라 제N 서명값을 획득하고, 제N 이벤트에 대하여 획득된 제N 서명값을 제N 이벤트의 확장 필드에 기록할 수 있다. 블록체인 형성부(310)는 제N+1이벤트 및 제N 서명값을 통하여 제 N+1 이벤트에 대한 제 N+1 해시값을 생성하고, 제N+1 해시값에 제N+1 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N+1 서명값을 획득하고, 제N+1 이벤트에 대하여 획득된 제N+1 서명값을 제 N+1 이벤트의 확장 필드에 기록할 수 있다.In block 410, the block chain forming unit 310 may form a block chain between respective events in the electronic commodity code information service. The block chain forming unit 310 generates a Nth hash value for the Nth event when a plurality of events exist and an N (N is a natural number) event is generated for the first time, N signature value by signing with a private key owned by an object (e.g., a person, business, etc.) that records the N event, and acquiring the N-signature value obtained for the N-th event as an extension Field. The block chain forming unit 310 generates an (N + 1) -th hash value for the (N + 1) -th event through the (N + 1) 1 signature value by signing with the private key of the object to be recorded, and writing the (N + 1) -th signature value acquired for the (N + 1) -th event to the extension field of the (N + 1) -th event.
단계(420)에서 검증부(320)는 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보를 검증할 수 있다. 검증부(320)는 각각의 블록체인 링크마다 블록체인의 검증을 통하여 이력정보에 대한 유효성을 검증할 수 있다. 검증부(320)는 각각의 이벤트의 확장 필드에 기록된 서명값을 각각의 객체의 공개키를 이용하여 이력정보 및 객체의 유효성을 검증할 수 있다. 검증부(320)는 제N 서명값을 제N 이벤트를 기록하는 객체의 공개키를 이용하여 유효성 검증을 수행함에 따라 제 N 이벤트에 대한 제 N 해시값을 추출할 수 있다. 검증부(320)는 제N+1 서명값을 제N+1 이벤트를 기록하는 객체의 공개키를 이용하여 복호화함에 따라 추출된 제 N+1 이벤트에 대한 해시값이 제 N+1 이벤트와 제N 서명값으로 추출한 해시값과 동일한지 여부를 판단하여 유효성을 검증할 수 있다. 또한, 검증부(320)는 이벤트간 형성된 블록체인과 이벤트에 대하여 생성된 서명값을 분리시킬 경우, 블록체인 각각에 대한 유효성 검사 및 각각의 객체에 대한 서명값에 대한 검증을 수행할 수 있다.In operation 420, the verification unit 320 may verify the history information of the event through a block chain formed between the respective events. The verification unit 320 can verify the validity of the history information through the block chain verification for each block chain link. The verification unit 320 can verify the validity of the history information and the object by using the public key of each object as the signature value recorded in the extension field of each event. The verification unit 320 may extract the Nth hash value for the Nth event by performing the validity verification using the public key of the object recording the Nth signature value. The verification unit 320 decrypts the (N + 1) -th signature value using the public key of the object recording the (N + 1) -th event, It can be verified whether or not the hash value extracted from the signature value is equal to the hash value extracted from the signature value. In addition, when the block chain formed between the events and the signature value generated for the event are separated, the verification unit 320 may perform validation for each of the block chains and verification of the signature value for each object.
도 9는 일 실시예에 따른 이력 검증 시스템에서 물류 환경에 적용하여 축산 이력을 관리하는 방법을 설명하기 위한 도면이다. 9 is a diagram for explaining a method of managing a livestock history by applying the present invention to a logistics environment in a history verification system according to an embodiment.
물류 환경에 적용하여 축산 이력을 관리하는 방법을 설명하기로 한다. 이력 검증 시스템은 축산 이벤트에 대하여 블록체인을 형성할 수 있고, 형성된 블록체인에 대한 유효성을 검증할 수 있다. 예를 들면, 사육 농가, 도축장, 포장처리업소, 판매장을 통하여 축산 이력이 소비자에게 전달될 수 있다. A method of managing the livestock history by applying to the logistics environment will be described. The history verification system can form a block chain for the livestock event and verify the validity of the formed block chain. For example, breeding history can be communicated to consumers through breeding farms, slaughterhouses, pavement shops, and stores.
더욱 상세하게는, 소를 사육하는 생산자와 사육 농가가 존재할 수 있으며, 사육 농가에 적어도 하나 이상의 소가 사육되고 있을 수 있다. 예를 들면, 사육 농가에 대한 EPCIS에 사육 농가에 존재하는 각각의 소와 관련된 정보(예를 들면, 소의 식별 코드, 소의 생년월일, 소의 발육 정보 등)가 저장되어 있을 수 있다. 이력 검증 시스템은 사육 농가의 EPCIS에서 발생한 생산 이벤트(910)에 대한 해시값을 생성하고, 생산 이벤트에 대한 해시값에 생산자의 개인키로 서명함에 따라 서명값을 획득할 수 있다. 생산 이벤트(910)에 대하여 생성된 서명값을 생산 이벤트(910)의 확장 필드에 기록할 수 있다. 이때, 사육 농가에 존재하는 일부의 소가 도축장으로 이동될 수 있다.More specifically, there may be producers and breeding farms that raise cattle, and at least one cattle may be in breeding farms. For example, the EPCIS for the breeding farm may contain information relating to each cattle present in the breeding farm (eg, cattle identification code, cattle date of birth, cattle breeding information, etc.). The history verification system can generate a hash value for the production event (910) occurring in the breeding farmer's EPCIS and obtain the signature value by signing the hash value for the production event with the producer's private key. The signature value generated for the production event 910 may be recorded in the extension field of the production event 910. [ At this time, some cows present in the breeding farm can be moved to the slaughterhouse.
도축장으로 소가 이동됨에 따라 소가 도축될 수 있다. 이에 따라 도축장의 EPCIS에 도축 이벤트(920)가 발생할 수 있다. 이력 검증 시스템은 도축 이벤트(920)와 생산 이벤트(910)에 대하여 획득된 서명값을 통하여 도축 이벤트(920)에 대한 해시값을 생성하고, 도축 이벤트(920)에 대한 해시값에 도축자의 개인키로 서명함에 따라 서명값을 획득할 수 있다. 도축 이벤트(920)에 대하여 획득된 서명값을 도축 이벤트(920)의 확장 필드에 기록할 수 있다.Cattle can be slaughtered as cows are moved to slaughterhouses. Accordingly, a slaughter event 920 may occur in the EPCIS of the slaughterhouse. The history verification system generates a hash value for the slaughter event 920 through the signature value obtained for the slaughter event 920 and the production event 910 and generates a hash value for the slaughter event 920 using the private key of the slaughterer The signature value can be obtained by signing. The signature value obtained for the slaughter event 920 may be recorded in the extension field of the slaughter event 920. [
도축장에서 도축된 소가 포장 처리 업소로 이동될 수 있다. 포장 처리 업소에서 도축된 소가 각각의 부위마다 포장이 처리될 수 있다. 포장 처리 업소의 EPCIS에 포장 이벤트(930)가 발생할 수 있다. 이력 검증 시스템은 포장 이벤트(930)와 도축 이벤트(920)에 대하여 획득된 서명값을 통하여 포장 이벤트(930)에 대한 해시값을 생성하고, 포장 이벤트(930)에 대한 해시값에 포장업자의 개인키로 서명함에 따라 서명값을 획득할 수 있다. 포장 이벤트(930)에 대하여 획득된 서명값을 포장 이벤트(930)의 확장 필드에 기록할 수 있다.Cattle slaughtered at the slaughterhouse can be moved to the paving shop. Packing can be processed for each slaughtered portion of the slaughtered poultry. A packaging event 930 may occur in the EPCIS of the packaging processing shop. The history verification system generates a hash value for the packaged event 930 through the signature value obtained for the packaged event 930 and the slaughter event 920 and stores the hash value for the packaged event 930 The signature value can be obtained by signing with the key. The signature value obtained for the wrapping event 930 may be recorded in the extension field of the wrapping event 930. [
포장 처리 업소에서 포장된 상품이 판매장으로 이동되어 판매될 수 있다. 판매장의 EPCIS에 판매 이벤트(940)가 발생할 수 있다. 이력 검증 시스템은 판매 이벤트(940)와 포장 이벤트(930)에 대하여 획득된 서명값을 통하여 판매 이벤트(940)에 대한 해시값을 생성하고, 판매 이벤트(940)에 대한 해시값에 판매자의 개인키로 서명함에 따라 서명값을 획득할 수 있다. 판매 이벤트(940)에 대하여 획득된 서명값을 판매 이벤트(940)의 확장 필드에 기록할 수 있다. Packaged goods can be moved to a shop and sold at the packaging processing shop. A sales event 940 may occur in the EPCIS of the shop. The history verification system generates a hash value for the sales event 940 through the signature value obtained for the sales event 940 and the packaging event 930 and generates a hash value for the sales event 940 by using the seller's private key The signature value can be obtained by signing. The signature value obtained for the sales event 940 may be recorded in the extended field of the sales event 940. [
이러한 과정으로 유통된 상품이 판매장에서 소비자에 의하여 구매가 이루어질 수 있다. 소비자가 구매를 한 상품에 대한 이력 유효성 검증을 수행할 수 있다. 예를 들면, 소비자가 단말을 통하여 상품의 EPC가 인식됨에 따라 이벤트간 형성된 블록체인의 유효성 검증이 수행될 수 있다. 다시 말해서, 이력 검증 시스템은 상품에 대한 이력검증을 수행할 수 있다. 구체적으로, 이력 검증 시스템은 생산 이벤트(910)의 확장 필드에 기록된 서명값을 생산 이벤트(910)를 기록하는 생산자의 공개키를 이용하여 유효성 검증을 수행함에 따라 생산 이벤트(910)에 대한 해시값을 추출할 수 있다. 이때, 생산자의 공개키가 정상적인 공개키가 아닐 경우, 해시값이 추출되었더라도 상기 추출된 해시값과 기 저장된 해시값이 일치하지 않게 되어 유효성 검증에 실패하게 된다. Through this process, the products circulated can be purchased by the consumers at the shop. The consumer can perform the history validation on the purchased product. For example, validation of a block chain formed between events can be performed as the EPC of a product is recognized by the consumer through the terminal. In other words, the history verification system can perform a history verification on a product. Specifically, the history verification system checks the signature value recorded in the extension field of the production event 910 by using the public key of the producer, which records the production event 910, The value can be extracted. At this time, if the public key of the producer is not a normal public key, even if the hash value is extracted, the extracted hash value and the previously stored hash value do not match, and the validity verification fails.
이력 검증 시스템은 도축 이벤트(920)의 확장 필드에 기록된 서명값을 도축 이벤트(920)를 기록하는 도축자의 공개키를 이용하여 유효성 검증을 수행함에 따라 추출된 도축 이벤트(920)에 대한 해시값이 도축 이벤트(920) 및 생산 이벤트(910)에 대한 서명값으로 추출된 해시값과 동일한지 여부를 판단할 수 있다. 이때, 각각의 해시값이 동일한 경우 True로 판단하여 다음의 블록체인 링크의 검증을 수행할 수 있다.The history verification system checks the signature value recorded in the extension field of the slaughter event 920 by using a public key of the slaughterhouse which records the slaughter event 920 and performs hash verification for the extracted slaughter event 920 Is identical to the hash value extracted as the signature value for the slaughter event (920) and the production event (910). At this time, if each hash value is the same, it can be determined to be True and the next block chain link verification can be performed.
이력 검증 시스템은 포장 이벤트(930)의 확장 필드에 기록된 서명값을 포장 이벤트(930)를 기록하는 포장업자의 공개키를 이용하여 유효성 검증을 수행함에 따라 추출된 포장 이벤트(930)에 대한 해시값이 포장 이벤트(930) 및 도축 이벤트(920)에 대한 서명값으로 추출된 해시값과 동일한지 여부를 판단할 수 있다. 이때, 각각의 해시값이 동일한 경우 True로 판단하여 다음의 블록체인 링크의 검증을 수행할 수 있다.The history verification system checks the signature value recorded in the extension field of the packaging event 930 by using the public key of the packager 9 that records the packaging event 930, Value is the same as the hash value extracted as the signature value for the wrapping event 930 and the slaughter event 920. [ At this time, if each hash value is the same, it can be determined to be True and the next block chain link verification can be performed.
이력 검증 시스템은 판매 이벤트(940)의 확장 필드에 기록된 서명값을 판매 이벤트(940)를 기록하는 판매자의 공개키를 이용하여 유효성 검증을 수행함에 따라 추출된 판매 이벤트(940)에 대한 해시값이 판매 이벤트(940) 및 포장 이벤트(930)에 대한 서명값으로 추출된 해시값과 동일한지 여부를 판단할 수 있다. 이때, 각각의 해시값이 동일한 경우 True로 판단하여 다음의 블록체인의 검증을 완료할 수 있다.The history verification system checks the signature value recorded in the extension field of the sales event 940 by using the public key of the seller that records the sales event 940 and performs hash verification for the extracted sales event 940 Is identical to the hash value extracted as the signature value for the sales event 940 and the packaging event 930. [ At this time, when each hash value is the same, it is determined as True, and the verification of the next block chain can be completed.
이와 같이, 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보를 검증할 수 있다. Thus, the history information of the event can be verified through the block chain formed between the respective events.
일 실시예에 따른 이력 검증 시스템은 축산 이력뿐만 아니라, 약품, 식품 및 항공 등 다양한 분야에 적용될 수 있다. The history verification system according to one embodiment can be applied to various fields such as medicine, food, and aviation as well as livestock history.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device As shown in FIG. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (15)

  1. 이력 검증 방법에 있어서,In the history verification method,
    전자 상품 코드정보 서비스(Electronic Product Code Information Service)에서 각각의 이벤트간 블록체인을 형성하는 단계; 및 Forming a block chain between respective events in an electronic product code information service; And
    상기 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보를 검증하는 단계Verifying the history information of the event through a block chain formed between the respective events
    를 포함하는 이력 검증 방법. ≪ / RTI >
  2. 제1항에 있어서,The method according to claim 1,
    상기 블록체인을 형성하는 단계는,Wherein forming the block chain comprises:
    복수 개의 이벤트가 존재할 때, 제 N(N은 자연수) 이벤트가 최초로 발생된 이벤트일 경우, 상기 제 N 이벤트에 대한 제 N 해시값을 생성하고, 상기 제N 해시값에 상기 제N 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N 서명값을 획득하고, 상기 제N 이벤트에 대하여 획득된 제N 서명값을 상기 제N 이벤트의 확장 필드에 기록하는 단계 When there are a plurality of events, generating an N-th hash value for the N-th event when an N-th (N is a natural number) event occurs first, and recording the N-th event in the N-th hash value Acquiring an N-th signature value by signing with an object's private key, and writing an N-signature value obtained for the N-th event in an extension field of the N-th event
    를 포함하는 이력 검증 방법. ≪ / RTI >
  3. 제2항에 있어서,3. The method of claim 2,
    상기 블록체인을 형성하는 단계는,Wherein forming the block chain comprises:
    제N+1이벤트 및 상기 제N 서명값을 통하여 상기 제 N+1 이벤트에 대한 제 N+1 해시값을 생성하고, 상기 제N+1 해시값에 상기 제N+1 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N+1 서명값을 획득하고, 상기 제N+1 이벤트에 대하여 획득된 제N+1 서명값을 상기 제N+1 이벤트의 확장 필드에 기록하는 단계 1 hash value for the (N + 1) -th event through the (N + 1) th event and the (N + 1) Acquiring an (N + 1) -th signature value by signing with the private key, and writing the (N + 1) -th signature value acquired for the (N + 1)
    를 포함하는 이력 검증 방법. ≪ / RTI >
  4. 제1항에 있어서,The method according to claim 1,
    상기 이벤트의 이력정보를 검증하는 단계는,Wherein the step of verifying the history information of the event comprises:
    각각의 이벤트의 확장 필드에 기록된 서명값을 각각의 객체의 공개키를 이용하여 상기 이벤트의 이력정보 및 객체의 유효성을 검증하는 단계 Verifying the history information of the event and the validity of the object by using the public key of each object as the signature value recorded in the extension field of each event
    를 포함하는 이력 검증 방법. ≪ / RTI >
  5. 제4항에 있어서,5. The method of claim 4,
    상기 이벤트의 이력정보를 검증하는 단계는,Wherein the step of verifying the history information of the event comprises:
    제N 서명값을 제N 이벤트를 기록하는 객체의 공개키를 이용하여 유효성 검증을 수행함에 따라 상기 제 N 이벤트에 대한 제 N 해시값을 추출하는 단계 Extracting a Nth hash value for the Nth event by performing validation using an Nth signature value using a public key of an object recording a Nth event
    를 포함하는 이력 검증 방법. ≪ / RTI >
  6. 제5항에 있어서,6. The method of claim 5,
    상기 이력정보를 검증하는 단계는,Wherein the step of verifying the history information comprises:
    제N+1 서명값을 제N+1 이벤트를 기록하는 객체의 공개키를 이용하여 복호화함에 따라 추출된 제 N+1 이벤트에 대한 해시값이 상기 제 N+1 이벤트와 상기 제 N 서명값으로 추출한 해시값과 동일한지 여부를 판단하여 유효성을 검증하는 단계The hash value of the extracted (N + 1) -th event is decrypted using the public key of the object for recording the (N + 1) -th event as the Determining whether the extracted hash value is the same as the extracted hash value, and verifying the validity
    를 포함하는 이력 검증 방법. ≪ / RTI >
  7. 제1항에 있어서,The method according to claim 1,
    상기 이력정보를 검증하는 단계는,Wherein the step of verifying the history information comprises:
    상기 이벤트간 형성된 블록체인과 상기 이벤트에 대하여 생성된 서명값을 분리하여 블록체인 각각에 대한 유효성 검사 및 각각의 객체에 대한 서명값에 대한 검증을 수행하는 단계 Separating a block chain formed between the events and a signature value generated for the event to perform validation of each block chain and verification of a signature value for each object
    를 포함하는 이력 검증 방법. ≪ / RTI >
  8. 이력 검증 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램에 있어서, A computer program stored in a computer-readable recording medium for executing a history verification method,
    전자 상품 코드정보 서비스(Electronic Product Code Information Service)에서 각각의 이벤트간 블록체인을 형성하는 단계; 및 Forming a block chain between respective events in an electronic product code information service; And
    상기 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보를 검증하는 단계Verifying the history information of the event through a block chain formed between the respective events
    를 포함하는 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램. And a computer program stored in the computer readable recording medium.
  9. 이력 검증 시스템에 있어서,In the history verification system,
    전자 상품 코드정보 서비스(Electronic Product Code Information Service)에서 각각의 이벤트간 블록체인을 형성하는 블록체인 형성부; 및 A block chain forming unit for forming a block chain between respective events in an electronic product code information service; And
    상기 각각의 이벤트간 형성된 블록체인을 통하여 이벤트의 이력정보를 검증하는 검증부A verification unit for verifying the history information of the event through a block chain formed between the respective events,
    를 포함하는 이력 검증 시스템. The history verification system comprising:
  10. 제9항에 있어서,10. The method of claim 9,
    상기 블록체인 형성부는,Wherein the block chain forming portion comprises:
    복수 개의 이벤트가 존재할 때, 제 N(N은 자연수) 이벤트가 최초로 발생된 이벤트일 경우, 상기 제 N 이벤트에 대한 제 N 해시값을 생성하고, 상기 제N 해시값에 상기 제N 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N 서명값을 획득하고, 상기 제N 이벤트에 대하여 획득된 제N서명값을 상기 제N 이벤트의 확장 필드에 기록하는 When there are a plurality of events, generating an N-th hash value for the N-th event when an N-th (N is a natural number) event occurs first, and recording the N-th event in the N-th hash value Acquiring an Nth signature value by signing with an object's private key, and writing an Nth signature value obtained for the Nth event in an extension field of the Nth event
    것을 특징으로 하는 이력 검증 시스템. The history verification system comprising:
  11. 제10항에 있어서,11. The method of claim 10,
    상기 블록체인 형성부는,Wherein the block chain forming portion comprises:
    제N+1이벤트 및 상기 제N 서명값을 통하여 상기 제 N+1 이벤트에 대한 제 N+1 해시값을 생성하고, 상기 제N+1 해시값에 상기 제N+1 이벤트를 기록하는 객체의 개인키로 서명함에 따라 제N+1 서명값을 획득하고, 상기 제N+1 이벤트에 대하여 획득된 제N+1 서명값을 상기 제N+1 이벤트의 확장 필드에 기록하는 1 hash value for the (N + 1) -th event through the (N + 1) th event and the (N + 1) 1 signature value obtained for the (N + 1) -th event is recorded in the extension field of the (N + 1) -th event by obtaining the (N + 1)
    것을 특징으로 하는 이력 검증 시스템. The history verification system comprising:
  12. 제9항에 있어서,10. The method of claim 9,
    상기 검증부는, Wherein the verifying unit comprises:
    각각의 이벤트의 확장 필드에 기록된 서명값을 각각의 객체의 공개키를 이용하여 상기 이벤트의 이력정보 및 객체의 유효성을 검증하는 The signature value recorded in the extension field of each event is verified by using the public key of each object to verify the history information of the event and the validity of the object
    것을 특징으로 하는 이력 검증 시스템. The history verification system comprising:
  13. 제12항에 있어서,13. The method of claim 12,
    상기 검증부는, Wherein the verifying unit comprises:
    제N 서명값을 제N 이벤트를 기록하는 객체의 공개키를 이용하여 유효성 검증을 수행함에 따라 상기 제 N 이벤트에 대한 제 N 해시값을 추출하는 And extracts the N-th hash value for the N-th event by performing validity verification using the public key of the object for recording the N-th event as the N-th signature value
    것을 특징으로 하는 이력 검증 시스템. The history verification system comprising:
  14. 제13항에 있어서,14. The method of claim 13,
    상기 검증부는, Wherein the verifying unit comprises:
    제N+1 서명값을 제N+1 이벤트를 기록하는 객체의 공개키를 이용하여 복호화함에 따라 추출된 제 N+1 이벤트에 대한 해시값이 상기 제N+1 이벤트와 상기 제N 서명값으로 추출한 해시값과 동일한지 여부를 판단하여 유효성을 검증하는The hash value of the extracted (N + 1) -th event is decrypted using the public key of the object for recording the (N + 1) -th event as the It is judged whether or not the extracted hash value is the same as the extracted hash value and the validity is verified
    것을 특징으로 하는 이력 검증 시스템. The history verification system comprising:
  15. 제9항에 있어서,10. The method of claim 9,
    상기 검증부는, Wherein the verifying unit comprises:
    상기 이벤트간 형성된 블록체인과 상기 이벤트에 대하여 생성된 서명값을 분리하여 블록체인 각각에 대한 유효성 검사 및 각각의 객체에 대한 서명값에 대한 검증을 수행하는 A block chain formed between the events and a signature value generated for the event are separated to perform validation for each of the block chains and verification of the signature value for each object
    것을 특징으로 하는 이력 검증 시스템. The history verification system comprising:
PCT/KR2017/014820 2017-10-19 2017-12-15 History verification method using block chain configuration between epcis history events WO2019078411A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2017-0135676 2017-10-19
KR1020170135676A KR101922814B1 (en) 2017-10-19 2017-10-19 History verification method through block chain configuration between epcis history events

Publications (1)

Publication Number Publication Date
WO2019078411A1 true WO2019078411A1 (en) 2019-04-25

Family

ID=64603192

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/014820 WO2019078411A1 (en) 2017-10-19 2017-12-15 History verification method using block chain configuration between epcis history events

Country Status (2)

Country Link
KR (1) KR101922814B1 (en)
WO (1) WO2019078411A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708280A (en) * 2019-08-21 2020-01-17 北京邮电大学 System and method for authenticating root block chain formed by combining multiple independent units
CN111832079A (en) * 2020-07-16 2020-10-27 湖南大学 Block chain integrity verification method based on EPC global network
US20210359851A1 (en) * 2020-05-13 2021-11-18 Ridgeline, Inc. Query and projection processing for events
US11943344B2 (en) 2020-05-13 2024-03-26 Ridgeline, Inc. Mutation processing for events
US11949784B2 (en) 2020-05-13 2024-04-02 Ridgeline, Inc. Auditing for events

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006343790A (en) * 2005-06-07 2006-12-21 Nippon Telegr & Teleph Corp <Ntt> Event hash generation method, event history accumulation method, event information verification method and event information processing system
KR20090001317A (en) * 2006-12-05 2009-01-08 한국전자통신연구원 System for managing history of material and method thereof
JP2009040558A (en) * 2007-08-09 2009-02-26 Nec Tokin Corp Article management system
KR20100098863A (en) * 2009-03-02 2010-09-10 (주) 씨이엔 System and method for managing class pedigree using rfid and recording medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5544175B2 (en) * 2010-01-07 2014-07-09 株式会社日立製作所 Originality guarantee method, management server, program, and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006343790A (en) * 2005-06-07 2006-12-21 Nippon Telegr & Teleph Corp <Ntt> Event hash generation method, event history accumulation method, event information verification method and event information processing system
KR20090001317A (en) * 2006-12-05 2009-01-08 한국전자통신연구원 System for managing history of material and method thereof
JP2009040558A (en) * 2007-08-09 2009-02-26 Nec Tokin Corp Article management system
KR20100098863A (en) * 2009-03-02 2010-09-10 (주) 씨이엔 System and method for managing class pedigree using rfid and recording medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KIM, SANG TAE ET AL.: "A Design of EPCIS Block-chain System for Food Safty Service", KICS (THE KOREAN INSTITUTE OF COMMUNICATIONS AND INFORMATION SCIENCES) SUMMER CONFERENCE 2017, vol. 63, 11 July 2017 (2017-07-11), pages 853 - 854, ISSN: 2383-8302 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708280A (en) * 2019-08-21 2020-01-17 北京邮电大学 System and method for authenticating root block chain formed by combining multiple independent units
CN110708280B (en) * 2019-08-21 2021-02-09 北京邮电大学 Root block chain authentication system and method formed by integrating multiple independent units
US20210359851A1 (en) * 2020-05-13 2021-11-18 Ridgeline, Inc. Query and projection processing for events
US11818259B2 (en) * 2020-05-13 2023-11-14 Ridgeline, Inc. Query and projection processing for events
US11943344B2 (en) 2020-05-13 2024-03-26 Ridgeline, Inc. Mutation processing for events
US11949784B2 (en) 2020-05-13 2024-04-02 Ridgeline, Inc. Auditing for events
CN111832079A (en) * 2020-07-16 2020-10-27 湖南大学 Block chain integrity verification method based on EPC global network
CN111832079B (en) * 2020-07-16 2024-01-30 湖南大学 Block chain-based query result integrity verification method in EPC global network

Also Published As

Publication number Publication date
KR101922814B1 (en) 2018-11-27

Similar Documents

Publication Publication Date Title
WO2019078411A1 (en) History verification method using block chain configuration between epcis history events
CN110113167B (en) Information protection method and system of intelligent terminal and readable storage medium
US11277449B2 (en) Adaptive distributive data protection system
US20180063171A1 (en) Non-transitory computer-readable recording medium storing cyber attack analysis support program, cyber attack analysis support method, and cyber attack analysis support device
CN109075971A (en) System and method for document information authenticity verification
US11475133B2 (en) Method for machine learning of malicious code detecting model and method for detecting malicious code using the same
US20200372003A1 (en) Storage of measurement datasets and distributed databases
CN108023896A (en) Block synchronous method and system
WO2013089340A1 (en) Apparatus and method for detecting similarity between applications
CN110825363B (en) Intelligent contract acquisition method and device, electronic equipment and storage medium
CN113704781B (en) File secure transmission method and device, electronic equipment and computer storage medium
WO2016024838A1 (en) Method and system for providing cloud-based application security service
EP3001319B1 (en) Method for detecting libraries in program binaries
CN112579098B (en) Software release method and device, electronic equipment and readable storage medium
CN108737107A (en) A kind of computer equipment including block chain node
WO2013100320A1 (en) System, user terminal, method, and apparatus for protecting and recovering system file.
CN109614327B (en) Method and apparatus for outputting information
KR20140142806A (en) Malware analysis and variants detection methods using visualization of binary information, apparatus for processing the same method
CN108737108A (en) A kind of computer-readable medium including block chain node
Maria et al. ScrumS: a model for safe agile development
CN112738085A (en) File security verification method, device, equipment and storage medium
WO2018194196A1 (en) Method and system for detecting application of obfuscation to and evaluating security of elf file
CN109033818B (en) Terminal, authentication method, and computer-readable storage medium
WO2018199366A1 (en) Method and system for detecting whether obfuscation has been applied to dex file and evaluating security
WO2023072002A1 (en) Security detection method and apparatus for open source component package

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17929253

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17929253

Country of ref document: EP

Kind code of ref document: A1