WO2020159053A1 - 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법 - Google Patents

디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법 Download PDF

Info

Publication number
WO2020159053A1
WO2020159053A1 PCT/KR2019/016259 KR2019016259W WO2020159053A1 WO 2020159053 A1 WO2020159053 A1 WO 2020159053A1 KR 2019016259 W KR2019016259 W KR 2019016259W WO 2020159053 A1 WO2020159053 A1 WO 2020159053A1
Authority
WO
WIPO (PCT)
Prior art keywords
integrity verification
digest
integrity
block
chain
Prior art date
Application number
PCT/KR2019/016259
Other languages
English (en)
French (fr)
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 주식회사그린존시큐리티
Priority to US16/965,490 priority Critical patent/US20210126923A1/en
Publication of WO2020159053A1 publication Critical patent/WO2020159053A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Definitions

  • the present invention relates to an integrity verification chain for verifying the integrity of a device and a method for verifying the integrity of a device using the same.
  • integrity verification on a device uses a hash algorithm or digital signature technology.
  • a method of distributing the hash value of the application at the time of distribution is used.
  • a hash value of important data is generated. It is mainly used to compare the hash value of the originals stored.
  • DRM Digital
  • PDF/DOC Portable Networks
  • Rights Management DRM (Digital) that adds digital signatures to documents, such as app signing technology or PDF/DOC, which adds signatures to applications using certificates and private keys issued by a trusted certification authority for distributed applications.
  • the problem to be solved by the present invention is to provide a security method capable of solving the above-described problems of the prior art.
  • the problem to be solved by the present invention is to provide a security method capable of accurately detecting forgery and/or falsification of important assets such as key applications, data, and file systems in a given device.
  • a representative configuration of the present invention for achieving the above object is as follows.
  • an integrity verification chain generation unit for generating an integrity verification chain including at least one integrity verification block; And an integrity verification unit that verifies the integrity of the device by using the integrity verification chain, wherein the integrity verification block includes current data including information about an integrity verification target and a message digest for a previous integrity verification block. And a message digest for the current data.
  • the system for verifying the integrity of a device includes: a device for generating an integrity verification chain including at least one integrity verification block; And a server acquiring the integrity verification chain from the device and verifying the integrity of the device using the integrity verification chain, wherein the integrity verification block includes information on an integrity verification target and a previous integrity verification block. It may be characterized in that it comprises a message digest for the current data and a message digest for the current data (message digest) including the message digest.
  • the device integrity verification apparatus includes an integrity verification chain generation unit for generating an integrity verification chain including at least one integrity verification block; And an integrity verification unit that verifies the integrity of the device using the integrity verification chain; and, by the integrity verification chain generation unit, current data in the integrity verification block and message digest for the current data (message digest). ) Can be provided together.
  • the current data may include information about an integrity verification target and a message digest for a previous integrity verification block.
  • the current data may further include a message digest for the current block.
  • the information for the integrity verification target is defined as first information
  • a message digest for the first information is defined as a first digest
  • a message digest for the previous integrity verification block is defined as a second digest
  • the current block When defining a message digest for a third digest, the third digest may include the first information, the first digest, and the second digest.
  • the fourth digest When defining a message digest for the current data as a fourth digest, the fourth digest includes the first information, the first digest, the second digest, and the third digest by the integrity verification chain generator. It may include a message digest for the entire current data.
  • the message digest for the integrity verification block in the set order including all of the first information, the first digest, the second digest, the third digest, and the fourth digest is transmitted from the integrity verification block in the next order to the second digest.
  • the second digest included in the integrity verification block in the configuration order by the integrity verification chain generator is the third digest, the fourth digest, the integrity verification block in the configuration order included in the integrity verification block in the configuration order. It can be used to generate message digests for each.
  • FIG. 1 is a diagram exemplarily showing a device capable of verifying the integrity of data according to an embodiment of the present invention.
  • FIG. 2 is a diagram schematically showing the configuration of the device shown in FIG. 1.
  • FIG. 3 is a diagram exemplarily showing structures of an integrity verification block and an integrity verification chain according to an embodiment of the present invention.
  • FIG. 4 is a diagram schematically showing a configuration of an entire system capable of verifying the integrity of a device according to a request from a server.
  • FIG. 5 is a flowchart illustrating a procedure in which the integrity of a device is verified according to an embodiment of the present invention.
  • FIG. 6 is a flowchart illustrating a procedure in which the integrity of a device is verified according to another embodiment of the present invention.
  • FIG. 7 is a diagram illustrating a computing device according to an embodiment of the present invention.
  • the term'and/or' includes a combination of a plurality of listed items or any one of a plurality of listed items.
  • 'A or B' may include'A','B', or'both A and B'.
  • FIG. 1 is a diagram exemplarily showing a device capable of verifying the integrity of data according to an embodiment of the present invention.
  • the device 10 is a digital device that includes a function for generating data and communicating with an external device (for example, another device or a server) through the communication network 20.
  • smartphone tablet PC (tablet personal computer), mobile phone, video phone, e-book reader, desktop PC (desktop personal computer), laptop PC (laptop personal computer), netbook computer ( Includes at least one of a netbook computer, workstation, server, personal digital assistant (PDA), portable multimedia player (PMP), MP3 player, mobile medical device, camera, or wearable device can do.
  • PDA personal digital assistant
  • PMP portable multimedia player
  • MP3 player mobile medical device
  • mobile medical device camera, or wearable device
  • the device 10 may include a television, a digital video disk (DVD) player, audio, refrigerator, air conditioner, vacuum cleaner, oven, microwave, washing machine, air purifier, set-top box, and home automation control. It may also be a household appliance such as a home automation control panel, security control panel, TV box, game console, electronic dictionary, electronic key, camcorder, or the like.
  • DVD digital video disk
  • the device 10 may include various medical devices (eg, various portable medical measurement devices (such as a blood glucose meter, heart rate meter, blood pressure meter, or body temperature meter), magnetic resonance angiography (MRA), magnetic resonance imaging (MRI), and CT (computed tomography), cameras, or ultrasounds, navigation devices, global navigation satellite system (GNSS), event data recorder (EDR), flight data recorder (FDR), car infotainment Devices, marine electronic equipment (e.g. marine navigation devices, gyro compasses, etc.), avionics, security devices, head units for vehicles, industrial or household robots, automatic teller's machines (ATMs) in financial institutions, Point of sales (POS) of the store, or Internet of things (e.g. light bulbs, various sensors, electricity or gas meters, sprinkler devices, fire alarms, thermostats, street lights, toasters, Exercise equipment, hot water tank, heater, boiler, etc.).
  • portable medical measurement devices such as a blood glucose meter, heart rate meter, blood pressure meter
  • any digital device equipped with a memory means and equipped with a microprocessor can be employed as the device 10 according to the present invention, and is not limited to the above-described devices, but a new electronic device according to technological development It may include.
  • the device 10 may generate an integrity verification chain capable of verifying the integrity of the device, and the function and configuration of the device 10 will be described in detail below.
  • the communication network 20 may be a high-speed period network of a large communication network capable of data transmission/reception service, Wi-Fi for providing Internet or high-speed multimedia service, It may be a next-generation wireless network including WiGig, Wireless Broadband Internet (Wibro), World Interoperability for Microwave Access (Wimax), and the like.
  • WiGig Wireless Broadband Internet
  • Wimax World Interoperability for Microwave Access
  • the Internet is a TCP/IP protocol and various services existing in a higher layer, namely, Hyper Text Transfer Protocol (HTTP), Telnet, File Transfer Protocol (FTP), Domain Name System (DNS), Simple Mail Transfer Protocol (SMTP), It can mean a global open computer network structure that provides Simple Network Management Protocol (SNMP), Network File Service (NFS), Network Information Service (NIS), etc., and enables communication between different devices (10).
  • HTTP Hyper Text Transfer Protocol
  • Telnet Telnet
  • FTP File Transfer Protocol
  • DNS Domain Name System
  • SMTP Simple Mail Transfer Protocol
  • SNMP Simple Network Management Protocol
  • NFS Network File Service
  • NIS Network Information Service
  • the Internet may be a wired or wireless Internet, or may be a core network integrated with a wired public network, a wireless mobile communication network, or a portable Internet.
  • the communication network 20 is a mobile communication network, it may be a synchronous mobile communication network or an asynchronous mobile communication network.
  • An example of the asynchronous mobile communication network is a wideband code division multiple access (WCDMA) communication network.
  • WCDMA wideband code division multiple access
  • the mobile communication network may include, for example, a radio network controller (RNC).
  • RNC radio network controller
  • the WCDMA network is taken as an example, it may be a next-generation communication network such as a 3G LTE network, a 4G network, a 5G network, or an IP network based on other IPs.
  • FIG. 2 is a diagram schematically showing the configuration of the device shown in FIG. 1.
  • the device 10 includes an integrity verification chain (hereinafter referred to as'IVC') generation unit 110, an integrity verification unit 120, and a communication unit 130 , It may be configured to include a database 140 and the control unit 150.
  • the IVC generation unit 110, the integrity verification unit 120, the communication unit 130, the database 140 and the control unit 150, at least some of them are external (eg, other Device or a server).
  • the program module may be included in the device 10 in the form of an operating system, application program module, or other program module, and may be physically stored in various well-known memory devices. Further, the program module may be stored in a remote storage device capable of communicating with the device 10. Meanwhile, the program module includes, but is not limited to, routines, subroutines, programs, objects, components, data structures, etc. that perform specific tasks to be described later or execute specific abstract data types according to the present invention.
  • the IVC generator 110 may perform a function of generating an integrity verification chain.
  • the integrity verification chain may include at least one integrity verification block, and the integrity verification block may refer to verification data capable of verifying the integrity of the device 10 and detecting whether the data has been forged and/or tampered with. .
  • FIG. 3 is a diagram exemplarily showing structures of an integrity verification block and an integrity verification chain according to an embodiment of the present invention.
  • the integrity verification chain IVC may include at least one or more integrity verification blocks IVB1 to IVBn, and the integrity verification blocks IVB1 to IVBn may be connected in the form of a chain. (Where n is a natural number greater than or equal to 1).
  • Each of the integrity verification blocks IVB1 to IVBn includes current data (CurrData), message digest for current data (CurrData), and assurance data for current data (CurrData) (Sign($CurrData)). It may include.
  • Current data includes the header structure (HEADER), the integrity verification target structure (TargetName), the integrity verification target structure (TargetName), the message digest ($(TargetName)), the message digest for the entire previous block ($Prev_Blk), and It may include a message digest ($Curr_Blk) for the current block.
  • the header structure (HEADER) may include information indicating that the corresponding block is an integrity verification block, time when the corresponding block was created, and the order in which the corresponding block was created. Further, additional information such as information (eg, identification (ID) information of the device 10) of the system that generated the corresponding block may be further included.
  • the header structure (HEADER) of the n-th integrity verification block (IVBn) is information indicating that the n-th integrity verification block (IVBn) is an integrity verification block, the time when the n-th integrity verification block (IVBn) is generated, and the nth
  • the integrity verification block IVBn may include information that corresponds to the nth of the integrity verification block.
  • the order of the integrity verification block may be formed based on the time at which the integrity verification block was generated. That is, the integrity verification block generated after the first integrity verification block IVB1 is generated may be the second integrity verification block IVB2.
  • the integrity verification target structure (TargetName) may include information on a target for verifying integrity, and more specifically, information on an identifier, name, etc. of a target for verifying integrity.
  • the integrity verification target structure (TargetName) may include a file name for the file. have.
  • the message digest for the integrity verification target structure (TargetName) may mean a message digest that is shortened to the integrity verification target structure (TargetName), and is a message digest that is a string that is uniquely calculated for each message. Can mean a checksum (checksum) for checking forgery and/or falsification of the original or detecting data errors.
  • the message digest for the entire previous block ($Prev_Blk) may mean a message digest obtained by abbreviating the entire previous block.
  • the message digest ($Prev_Blk) for the entire previous block included in the n-th integrity verification block (IVBn) may be a message digest for the n-1st integrity verification block. That is, the integrity verification blocks IVB1 to IVBn may be connected in a chain form as the current non-determination verification block includes the message digest for the entire previous block.
  • the message digest for the current block ($Curr_Blk) may be a message digest for the currently generated block, and more specifically, for a header structure (HEADER), an integrity verification target structure (TargetName), and an integrity verification target structure (TargetName). It may be a message digest ($(TargetName)) and a message digest for the message digest ($Prev_Blk) for the entire previous block.
  • Message structure for header structure HSADER
  • integrity verification target structure TargetName
  • integrity verification target structure TargetName
  • message digest for entire previous block ($Prev_Blk)
  • message digest for current block The message digest ($(CurrData)) for the current data (CurrData) including ($Curr_Blk) may be a message digest shortened to the current data (CurrData).
  • the assurance data may refer to information that guarantees that a specific device has generated a corresponding block, particularly current data (CurrData).
  • the guarantee data may be data generated by an electronic signature technique using a private key of the device 10 or the owner of the device 10, or a message using a secret key It may be data generated by a technique such as a message authentication code (MAC) or secret key encryption.
  • MAC message authentication code
  • the warranty data (Sign($CurrData)) may be electronically signed with the private key of the device 10, and when the electronic signature is input, the input value is a message digest ($(CurrData)) for the current data (CurrData). Can.
  • the corresponding integrity verification block is generated in a specific device through the generated electronic signature, and a public key corresponding to the private key may be required for verification of the generated electronic signature.
  • the assurance data may be a message authentication code, and it may be verified that the message authentication code is generated by a specific device using a key used to generate a message authentication mode.
  • the guarantee data may be a password value generated through a predetermined encryption algorithm, and it may be verified that the password value is generated in a specific device using a key used to generate the password value.
  • each integrity verification block IVB1 to IVBn includes warranty data (Sign($CurrData)), but the present invention is not limited thereto, and in some cases, warranty data (Sign($CurrData) )) may be omitted.
  • the guarantee data (Sign($CurrData)) is an electronic signature, a message authentication code, or a password value, sharing of the public key and secret key information is required between the device 10 and the server to be described later. If the security management of the key is difficult or the security required by the user is low, the assurance data (Sign($CurrData)) may be omitted. In this case, the message digest ($Curr_Blk) for the current block included in the current data (CurrData) can perform the function of the guarantee data (Sign($CurrData)).
  • the IVC generation unit 110 may generate an integrity verification block every predetermined period (eg, 24 hours), and may generate an integrity verification chain (IVC) including the newly generated integrity verification block.
  • IVC integrity verification chain
  • the integrity verification unit 120 may perform a function of verifying the integrity of the device 10 by using the integrity verification chain (IVC) generated by the IVC generation unit 110, and a predetermined program capable of verifying the integrity It may include.
  • the integrity verification unit 120 may verify the integrity of the device 10 using the previous integrity verification chain (IVC) and the current integrity verification chain (IVC).
  • the integrity verification unit 120 may check whether the time, order, and file name of the integrity verification block to be verified in the integrity verification chain (IVC) have been changed, through which the integrity verification block itself is forged and/or Or it can be checked whether it has been tampered with.
  • IVC integrity verification chain
  • the integrity verification unit 120 may verify the integrity of the device 10 with reference to the error.
  • the communication unit 130 may perform a function to enable data transmission/reception from/to the IVC generation unit 110, the integrity verification unit 120, and the database 140. .
  • an integrity verification chain (IVC) or the like may be stored in the database 140 according to an embodiment of the present invention.
  • the database 140 is illustrated in FIG. 2 as being included and configured in the device 10, the database 140 may be configured separately from the device 10 according to the needs of those skilled in the art to implement the present invention.
  • the database 140 in the present invention is a concept including a computer-readable recording medium, and may be a broad database including a file system based data record as well as a consultative database. If a set can be retrieved and data can be extracted, it may be the database 140 in the present invention.
  • control unit 150 performs the function of controlling the flow of data between the IVC generation unit 110, the integrity verification unit 120, the communication unit 130 and the database 140 Can. That is, the control unit 150 according to the present invention controls the data flow from/to the outside of the device 10 or the data flow between each component of the server, so that the IVC generation unit 110, the integrity verification unit 120, Each of the communication unit 130 and the database 140 may be controlled to perform a unique function.
  • FIG. 4 is a diagram schematically showing a configuration of an entire system capable of verifying the integrity of a device according to a request from a server.
  • the device 10 and the server 30 may communicate through the communication network 20, for example, the server 30 may verify the integrity verification chain ( IVC) and obtain an integrity verification chain (IVC) from the device 10.
  • IVC integrity verification chain
  • IVC integrity verification chain
  • the server 30 can verify the integrity of the device 10 using the integrity verification chain (IVC) obtained from the device 10, and for this purpose, the program included in the integrity verification unit 120 described above is the server (30) may also be included.
  • IVC integrity verification chain
  • the server 30 may perform a function of controlling at least one device 10.
  • FIG. 5 is a flowchart illustrating a procedure in which the integrity of a device is verified according to an embodiment of the present invention.
  • the server 30 may transmit a request message requesting delivery of the integrity verification chain (IVC) to the device 10 (S510).
  • IVC integrity verification chain
  • the device 10 may transmit an integrity verification chain (IVC) to the server 30 (S520).
  • IVC integrity verification chain
  • the server 30 may verify the integrity of the device 10 by using the integrity verification chain (IVC) obtained from the device 10, and the integrity verification step of the device 10 is the integrity verification unit of the device 10 It may be performed using the same method as that performed in (120).
  • IVC integrity verification chain
  • the server 30 notifies the administrator of the fact, and the device 10 sends the server 30 ) Or prevent access to other systems.
  • FIG. 6 is a flowchart illustrating a procedure in which the integrity of a device is verified according to another embodiment of the present invention.
  • the device 10 may generate an integrity verification chain (IVC) every predetermined period (S610).
  • the device 10 may transmit the generated integrity verification chain (IVC) to the server 30 even if no special request message is received from the server 30 (S620).
  • the server 30 uses the integrity verification chain (IVC) obtained from the device 10 (e.g., compares the previously received integrity verification chain (IVC) with the currently received integrity verification chain (IVC)).
  • the integrity of (10) may be verified, and the integrity verification step of the device 10 may be performed using the same method as that performed by the integrity verification unit 120 of the device 10.
  • the server 30 notifies the administrator of this fact, and prevents the device 10 from accessing the server 30 or other systems. You can take action.
  • the computing device TN100 of FIG. 7 may be an apparatus (eg, the device 10, the server 30, etc.) described herein.
  • the computing device TN100 may include at least one processor TN110, a transmitting/receiving device TN120, and a memory TN130. Also, the computing device TN100 may further include a storage device TN140, an input interface device TN150, an output interface device TN160, and the like. Components included in the computing device TN100 may be connected by a bus TN170 to communicate with each other.
  • the processor TN110 may execute a program command stored in at least one of the memory TN130 and the storage device TN140.
  • the processor TN110 may refer to a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor in which methods according to an embodiment of the present invention are performed.
  • the processor TN110 may be configured to implement procedures, functions, and methods described in connection with embodiments of the present invention.
  • the processor TN110 may control each component of the computing device TN100.
  • Each of the memory TN130 and the storage device TN140 may store various information related to the operation of the processor TN110.
  • Each of the memory TN130 and the storage device TN140 may be configured as at least one of a volatile storage medium and a non-volatile storage medium.
  • the memory TN130 may be configured as at least one of read only memory (ROM) and random access memory (RAM).
  • the transmitting and receiving device TN120 may transmit or receive a wired signal or a wireless signal.
  • the transmitting and receiving device TN120 may be connected to a network to perform communication.
  • the embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and can be recorded in a computer-readable recording medium.
  • the computer-readable recording medium may include program instructions, data files, data structures, or the like alone or in combination.
  • the program instructions recorded on the computer-readable recording medium may be specially designed and configured for the present invention or may be known and available to those skilled in the computer software field.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs, DVDs, and magneto-optical media such as floptical disks. 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 not only machine language codes produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
  • the hardware device may be configured to operate as one or more software modules to perform processing according to the present invention, and vice versa.
  • the embodiment of the present invention is not implemented only through the apparatus and/or method described so far, and may be implemented through a program that realizes a function corresponding to the configuration of the embodiment of the present invention or a recording medium in which the program is recorded. There is, such an implementation can be easily implemented by those skilled in the art to which the present invention pertains from the description of the above-described embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)

Abstract

디바이스가 제공된다. 상기 디바이스는, 적어도 하나 이상의 무결성 검증 블록을 포함하는 무결성 검증 체인을 생성하는 무결성 검증 체인 생성부; 및 상기 무결성 검증 체인을 이용하여 상기 디바이스의 무결성을 검증하는 무결성 검증부;를 포함할 수 있다.

Description

디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법
본 발명은 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법에 관한 것이다.
일반적으로 디바이스 상에서의 무결성 검증은 해시 알고리즘이나 전자서명 기술을 사용하며, 어플리케이션의 경우 배포하는 시점에서 해당 어플리케이션의 해시 값을 함께 배포하는 방식을 사용하고, 데이터의 경우 중요 데이터의 해시 값을 생성하고 보관하고 있는 원본의 해시 값과 비교하는 방식을 주로 사용한다.
또한, 전자서명의 경우, 배포되는 어플리케이션에 신뢰할 수 있는 인증기관이 발급한 인증서와 개인키를 이용하여 어플리케이션에 서명을 추가하는 앱 서명 기술이나 PDF/DOC 등 문서에 전자서명을 추가하는 DRM(Digital Rights Management) 등의 기술이 사용된다.
이러한 방식은, 어플리케이션/파일과 해시데이터 모두를 위/변조하여 일단 디바이스에 설치되는 경우 대응방안이 없고, 주기적으로 보안 침해를 검출할 수 있는 수단이 부재하며, 중앙 서버에서 디바이스에 포함된 다양한 어플리케이션이나 다양한 데이터의 무결성을 수집, 검출, 대응이 어려운 문제점이 있다.
또한 원하는 시점에 관리자가 특정 디바이스의 보안성 검사를 수행할 수 있는 일관된 방안이 부재하므로, 다양한 대상, 즉 어플리케이션, 커널, 부트로더, 중요 데이터 파일의 무결성 검사를 동시에 수행하기 어렵다.
또한, 백신 프로그램과 같이 전체 파일 시스템을 검사하는 방법도 있지만, IoT 디바이스와 같이 컴퓨팅 파워가 부족한 시스템의 경우는 수행이 어려울 수 있다.
본 발명이 해결하고자 하는 과제는, 상술한 종래 기술의 문제점을 해결할 수 있는 보안 방법을 제공하는 것이다.
또한, 본 발명이 해결하고자 하는 과제는, 소정 디바이스 내 주요 어플리케이션, 데이터, 파일 시스템 등 중요 자산에 대한 위조 및/또는 변조를 정확하게 검출할 수 있는 보안 방법을 제공하는 것이다.
상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.
본 발명의 실시예에 따른 디바이스는, 적어도 하나 이상의 무결성 검증 블록을 포함하는 무결성 검증 체인을 생성하는 무결성 검증 체인 생성부; 및 상기 무결성 검증 체인을 이용하여 상기 디바이스의 무결성을 검증하는 무결성 검증부;를 포함하고, 상기 무결성 검증 블록은, 무결성 검증 대상에 대한 정보와 이전 무결성 검증 블록에 대한 메시지 다이제스트를 포함하는 커런트 데이터 및 상기 커런트 데이터에 대한 메시지 다이제스트(message digest)를 포함할 수 있다.
또한, 본 발명의 실시예에 따른 디바이스의 무결성 검증 시스템은, 적어도 하나 이상의 무결성 검증 블록을 포함하는 무결성 검증 체인을 생성하는 디바이스; 및 상기 디바이스로부터 상기 무결성 검증 체인을 획득하고, 상기 무결성 검증 체인을 이용하여 상기 디바이스의 무결성을 검증하는 서버;를 포함하고, 상기 무결성 검증 블록은, 무결성 검증 대상에 대한 정보와 이전 무결성 검증 블록에 대한 메시지 다이제스트를 포함하는 커런트 데이터 및 상기 커런트 데이터에 대한 메시지 다이제스트(message digest)를 포함하는 것을 특징으로 할 수 있다.
또한, 본 발명의 실시예에 따른 디바이스 무결성 검증 장치는 적어도 하나 이상의 무결성 검증 블록을 포함하는 무결성 검증 체인을 생성하는 무결성 검증 체인 생성부; 및 상기 무결성 검증 체인을 이용하여 상기 디바이스의 무결성을 검증하는 무결성 검증부;를 포함하고, 상기 무결성 검증 체인 생성부에 의해, 상기 무결성 검증 블록에는 커런트 데이터, 상기 커런트 데이터에 대한 메시지 다이제스트(message digest)가 함께 마련될 수 있다. 이때, 상기 무결성 검증 체인 생성부에 의해, 상기 커런트 데이터는 무결성 검증 대상에 대한 정보와 이전 무결성 검증 블록에 대한 메시지 다이제스트를 포함할 수 있다. 상기 무결성 검증 체인 생성부에 의해, 상기 커런트 데이터는 현재 블록에 대한 메시지 다이제스트를 더 포함할 수 있다. 상기 무결성 검증 대상의 정보를 제1 정보로 정의하고, 상기 제1 정보에 대한 메시지 다이제스트를 제1 다이제스트로 정의하며, 상기 이전 무결성 검증 블록에 대한 메시지 다이제스트를 제2 다이제스트로 정의하고, 상기 현재 블록에 대한 메시지 다이제스트를 제3 다이제스트로 정의할 때, 상기 제3 다이제스트는 상기 제1 정보, 상기 제1 다이제스트 및 상기 제2 다이제스트를 포함할 수 있다. 상기 커런트 데이터에 대한 메시지 다이제스트를 제4 다이제스트로 정의할 때, 상기 무결성 검증 체인 생성부에 의해 상기 제4 다이제스트는 상기 제1 정보, 상기 제1 다이제스트, 상기 제2 다이제스트, 상기 제3 다이제스트를 포함하는 상기 커런트 데이터 전체에 대한 메시지 다이제스트를 포함할 수 있다. 상기 제1 정보, 상기 제1 다이제스트, 상기 제2 다이제스트, 상기 제3 다이제스트, 상기 제4 다이제스트를 모두 포함하는 설정 순서의 무결성 검증 블록에 대한 메시지 다이제스트는 다음 순서의 무결성 검증 블록에서 제2 다이제스트에 해당하는 이전 무결성 검증 블록에 대한 메시지 다이제스트가 될 수 있다. 상기 무결성 검증 체인 생성부에 의해 상기 설정 순서의 무결성 검증 블록에 포함된 상기 제2 다이제스트는 상기 설정 순서의 무결성 검증 블록에 포함된 상기 제3 다이제스트, 상기 제4 다이제스트, 상기 설정 순서의 무결성 검증 블록에 대한 메시지 다이제스트의 생성에 각각 이용될 수 있다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명의 실시예에 따르면, 소정 디바이스 내 주요 어플리케이션, 데이터, 파일 시스템 등 중요 자산에 대한 위조 및/또는 변조를 정확하게 검출할 수 있는 보안 방법을 제공할 수 있다.
또한, 본 발명의 실시예에 따르면, 블록체인으로 연결된 무결성 검증데이터를 이용하여 디바이스에 설치된 중요 데이터에 대한 보안 침해를 주기적으로 검출할 수 있다.
또한, 본 발명의 실시예에 따르면, 다양한 대상에 대한 무결성 검증이 가능하다.
또한, 본 발명의 실시예에 따르면, 검증 데이터 자체의 위조 및/또는 변조를 방지하고, 중간자 공격 또는 재생 공격에 대한 내성을 갖는 보안 시스템을 제공할 수 있다.
또한, 본 발명의 실시예에 따르면, 블록체인 구조체에 전자 서명을 추가함으로써 특정 장비에서 생성된 데이터임을 보장할 수 있다.
또한, 본 발명의 실시예에 따르면, 효율적으로 생성 가능하면서도 전체 검증 데이터를 위조 및/또는 변조하기 어려운 블록체인 구조체를 이용함으로써, 기존 무결성 검증 시스템이 가지는 단점을 보완할 수 있다.
도 1은 본 발명의 일 실시예에 따라 데이터의 무결성을 검증할 수 있는 디바이스를 예시적으로 나타낸 도면이다.
도 2는 도 1에 도시된 디바이스의 구성을 개략적으로 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 무결성 검증 블록 및 무결성 검증 체인의 구조를 예시적으로 나타낸 도면이다.
도 4는 서버의 요청에 따라 디바이스의 무결성을 검증할 수 있는 전체 시스템의 구성을 개략적으로 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따라 디바이스의 무결성이 검증되는 순서를 나타내는 흐름도이다.
도 6은 본 발명의 다른 실시예에 따라 디바이스의 무결성이 검증되는 순서를 나타내는 흐름도이다.
도 7은 본 발명의 실시예에 따른 컴퓨팅 장치를 나타내는 도면이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 명세서에서, 동일한 구성요소에 대해서 중복된 설명은 생략한다.
또한 본 명세서에서, 어떤 구성요소가 다른 구성요소에 '연결되어' 있다거나 '접속되어' 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에 본 명세서에서, 어떤 구성요소가 다른 구성요소에 '직접 연결되어' 있다거나 '직접 접속되어' 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
또한, 본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로써, 본 발명을 한정하려는 의도로 사용되는 것이 아니다.
또한 본 명세서에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다.
또한 본 명세서에서, '포함하다' 또는 '가지다' 등의 용어는 명세서에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품, 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐, 하나 또는 그 이상의 다른 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 할 것이다.
또한 본 명세서에서, '및/또는' 이라는 용어는 복수의 기재된 항목들의 조합 또는 복수의 기재된 항목들 중의 어느 항목을 포함한다. 본 명세서에서, 'A 또는 B'는, 'A', 'B', 또는 'A와 B 모두'를 포함할 수 있다.
또한 본 명세서에서, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략될 것이다.
도 1은 본 발명의 일 실시예에 따라 데이터의 무결성을 검증할 수 있는 디바이스를 예시적으로 나타낸 도면이다.
본 발명의 실시예에 따른 디바이스(10)는 데이터를 생성하고, 통신망(20)을 통해 외부(예를 들어, 다른 디바이스 또는 서버)와 통신할 수 있는 기능을 포함하는 디지털 기기로서, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다.
또는, 디바이스(10)는, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스, 게임 콘솔, 전자 사전, 전자 키, 캠코더(camcorder) 등과 같은 가전 제품일 수도 있다.
또는, 디바이스(10)는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자 기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 어느 하나일 수도 있다.
또한, 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기라면 얼마든지 본 발명에 따른 디바이스(10)로서 채택될 수 있으며, 전술한 기기들에 한정되지 않고 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.
본 발명의 실시예에 따른 디바이스(10)는 디바이스의 무결성을 검증할 수 있는 무결성 검증 체인을 생성할 수 있으며, 이러한 디바이스(10)의 기능 및 구성에 관하여는 이하에서 구체적으로 설명하도록 한다.
다음으로, 본 발명의 일 실시예에 따른 통신망(20)은 데이터 송수신 서비스가 가능한 대형 통신망의 고속 기간 망일 수 있으며, 인터넷(Internet) 또는 고속의 멀티미디어 서비스를 제공하기 위한 와이파이(Wi-Fi), 와이기그(WiGig), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, Wimax) 등을 포함하는 차세대 무선망일 수 있다.
상기 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(Hyper Text Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service) 등을 제공하는 전 세계적인 개방형 컴퓨터 네트워크 구조를 의미할 수 있으며, 서로 다른 디바이스(10) 간 통신할 수 있게 하는 환경을 제공할 수 있다.
한편, 상기 인터넷은 유선 또는 무선 인터넷일 수도 있고, 이외에도 유선 공중망, 무선 이동 통신망, 또는 휴대 인터넷 등과 통합된 코어망 일 수도 있다.
만약, 통신망(20)이 이동 통신망일 경우 동기식 이동 통신망일 수도 있고, 비동기식 이동 통신망일 수도 있다. 상기 비동기식 이동 통신망의 실시 예로서, WCDMA(Wideband Code Division Multiple Access) 방식의 통신망을 들 수 있다. 이 경우 도면에 도시되진 않았지만, 상기 이동 통신망은 예컨대, RNC(Radio Network Controller) 등을 포함할 수 있다. 한편, 상기 WCDMA망을 일 예로 들었지만, 3G LTE망, 4G망, 5G망 등 차세대 통신망, 그 밖의 IP를 기반으로 한 IP 망일 수 있다.
도 2는 도 1에 도시된 디바이스의 구성을 개략적으로 나타내는 도면이다.
도 2를 참조하면, 본 발명의 실시예에 따른 디바이스(10)는 무결성 검증 체인(integrity verification chain, 이하 ‘IVC’라고 함) 생성부(110), 무결성 검증부(120), 통신부(130), 데이터베이스(140) 및 제어부(150)를 포함하여 구성될 수 있다. 본 발명의 일 실시예에 따르면, IVC 생성부(110), 무결성 검증부(120), 통신부(130), 데이터베이스(140) 및 제어부(150)는 그 중 적어도 일부가 외부(예를 들어, 다른 디바이스 또는 서버)와 통신하는 프로그램 모듈일 수 있다. 이러한 프로그램 모듈은 운영 시스템, 응용 프로그램 모듈 또는 기타 프로그램 모듈의 형태로 디바이스(10)에 포함될 수 있고, 물리적으로는 여러 가지 공지의 기억 장치에 저장될 수 있다.  또한, 이러한 프로그램 모듈은 디바이스(10)와 통신 가능한 원격 기억 장치에 저장될 수도 있다.  한편, 이러한 프로그램 모듈은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.
IVC 생성부(110)는 무결성 검증 체인을 생성하는 기능을 수행할 수 있다.
무결성 검증 체인은 적어도 하나 이상의 무결성 검증 블록을 포함할 수 있으며, 무결성 검증 블록은 디바이스(10)의 무결성을 검증하고 데이터가 위조 및/또는 변조되었는지 여부를 검출할 수 있는 검증 데이터를 의미할 수 있다.
본 발명의 일 실시예에 따른 IVC 생성부(110)에서 생성된 무결성 검증 블록 및 무결성 검증 체인의 구조는 이하에서 도 3을 참조하여 구체적으로 설명하도록 한다.
도 3은 본 발명의 일 실시예에 따른 무결성 검증 블록 및 무결성 검증 체인의 구조를 예시적으로 나타낸 도면이다.
도 3을 참조하면, 무결성 검증 체인(IVC)은 적어도 하나 이상의 무결성 검증 블록(IVB1~IVBn)을 포함할 수 있으며, 무결성 검증 블록들(IVB1~IVBn)은 체인(chain)의 형태로 연결될 수 있다(여기서, n은 1 이상의 자연수).
각각의 무결성 검증 블록들(IVB1~IVBn)은 커런트 데이터(CurrData), 커런트 데이터(CurrData)에 대한 메시지 다이제스트($(CurrData)) 및 커런트 데이터(CurrData)에 대한 보증 데이터(Sign($CurrData))를 포함할 수 있다.
커런트 데이터(CurrData)는 헤더 구조(HEADER), 무결성 검증 대상 구조(TargetName), 무결성 검증 대상 구조(TargetName)에 대한 메시지 다이제스트($(TargetName)), 이전 블록 전체에 대한 메시지 다이제스트($Prev_Blk) 및 현재 블록에 대한 메시지 다이제스트($Curr_Blk)를 포함할 수 있다.
헤더 구조(HEADER)는 해당 블록이 무결성 검증 블록임을 나타내는 정보, 해당 블록이 생성된 시간, 해당 블록이 생성된 순서 등에 대한 정보를 포함할 수 있다. 또한, 해당 블록을 생성한 시스템의 정보(예를 들어, 디바이스(10)의 ID(identification) 정보)와 같은 부가 정보를 더 포함할 수도 있다. 예를 들어, n번째 무결성 검증 블록(IVBn)의 헤더 구조(HEADER)는 n번째 무결성 검증 블록(IVBn)이 무결성 검증 블록임을 나타내는 정보, n번째 무결성 검증 블록(IVBn)이 생성된 시간, n번째 무결성 검증 블록(IVBn)이 무결성 검증 블록 중 n번째에 해당한다는 정보 등을 포함할 수 있다. 여기서, 무결성 검증 블록의 순서는, 무결성 검증 블록이 생성된 시간을 기준으로 형성될 수 있다. 즉, 첫 번째 무결성 검증 블록(IVB1)이 생성 후에 생성된 무결성 검증 블록은 두 번째 무결성 검증 블록(IVB2)이 될 수 있다.
무결성 검증 대상 구조(TargetName)는 무결성을 검증하고자 하는 대상에 대한 정보를 포함할 수 있으며, 보다 구체적으로, 무결성을 검증하고자 하는 대상의 식별자, 이름 등에 대한 정보를 포함할 수 있다. 예를 들어, n번째 무결성 검증 블록(IVBn)이 디바이스(10) 사용자의 개인 정보가 포함된 파일에 대한 무결성 검증을 위한 것일 때, 무결성 검증 대상 구조(TargetName)에는 상기 파일에 대한 파일명이 포함될 수 있다.
무결성 검증 대상 구조(TargetName)에 대한 메시지 다이제스트($(TargetName))는 무결성 검증 대상 구조(TargetName)를 축약한 메시지 다이제스트를 의미할 수 있으며, 메시지마다 고유하게 산출되는 문자열인 메시지 다이제스트(message digest)는 원본에 대한 위조 및/또는 변조 여부를 확인하거나 데이터 오류 검출을 위한 체크섬(checksum; 검사합)을 의미할 수 있다.
이전 블록 전체에 대한 메시지 다이제스트($Prev_Blk)는 이전 블록 전체를 축약한 메시지 다이제스트를 의미할 수 있다. 예를 들어, n번째 무결성 검증 블록(IVBn)에 포함된 이전 블록 전체에 대한 메시지 다이제스트($Prev_Blk)는 n-1번째 무결성 검증 블록에 대한 메시지 다이제스트일 수 있다. 즉, 현재 무결정 검증 블록이 이전 블록 전체에 대한 메시지 다이제스트를 포함함에 따라 무결성 검증 블록들(IVB1~IVBn)이 체인 형태로 연결될 수 있다.
현재 블록에 대한 메시지 다이제스트($Curr_Blk)는 현재 생성된 블록에 대한 메시지 다이제스트일 수 있으며, 보다 구체적으로, 헤더 구조(HEADER), 무결성 검증 대상 구조(TargetName), 무결성 검증 대상 구조(TargetName)에 대한 메시지 다이제스트($(TargetName)) 및 이전 블록 전체에 대한 메시지 다이제스트($Prev_Blk)에 대한 메시지 다이제스트일 수 있다.
헤더 구조(HEADER), 무결성 검증 대상 구조(TargetName), 무결성 검증 대상 구조(TargetName)에 대한 메시지 다이제스트($(TargetName)), 이전 블록 전체에 대한 메시지 다이제스트($Prev_Blk) 및 현재 블록에 대한 메시지 다이제스트($Curr_Blk)를 포함하는 커런트 데이터(CurrData)에 대한 메시지 다이제스트($(CurrData))는 커런트 데이터(CurrData)를 축약한 메시지 다이제스트일 수 있다.
보증 데이터(Sign($CurrData))는 특정 디바이스에서 해당 블록, 특히 커런트 데이터(CurrData)를 생성하였음을 보증하는 정보를 의미할 수 있다.
구체적으로, 보증 데이터(Sign($CurrData))는 디바이스(10) 또는 디바이스(10)의 소유자의 개인키(private key)를 이용한 전자 서명 기법에 의하여 생성된 데이터일 수도 있고, 비밀 키를 이용한 메시지 인증코드(MAC: Message Authentication Code), 비밀키 암호화 등의 기법에 의하여 생성된 데이터일 수도 있다.
예를 들어, 보증 데이터(Sign($CurrData))는 디바이스(10)의 개인키로 전자 서명된 것일 수 있으며, 전자 서명 시 입력 값은 커런트 데이터(CurrData)에 대한 메시지 다이제스트($(CurrData))일 수 있다. 이 경우, 생성된 전자 서명을 통해 해당 무결성 검증 블록이 특정 디바이스에서 생성된 것임을 보증할 수 있으며, 생성된 전자 서명의 검증을 위해 개인키에 대응되는 공개키(public key)가 필요할 수 있다.
또는, 보증 데이터(Sign($CurrData))는 메시지 인증코드일 수 있으며, 메시지 인증모드 생성에 사용된 키를 이용하여 메시지 인증코드가 특정 디바이스에서 생성된 것임을 검증할 수 있다.
또는, 보증 데이터(Sign($CurrData))는 소정의 암호 알고리즘을 통해 생성된 암호 값일 수 있으며, 암호 값 생성에 사용된 키를 이용하여 암호 값이 특정 디바이스에서 생성된 것임을 검증할 수 있다.
한편, 도 3에는 각각의 무결성 검증 블록(IVB1~IVBn)에 보증 데이터(Sign($CurrData))가 포함되는 것으로 도시되었으나 본 발명이 이에 제한되는 것은 아니며, 경우에 따라 보증 데이터(Sign($CurrData))는 생략될 수도 있다.
예를 들어, 보증 데이터(Sign($CurrData))가 전자서명이거나 메시지 인증 코드이거나 암호 값인 경우, 디바이스(10)와 후술할 서버 간에는 공개 키와 비밀 키 정보에 관한 공유가 필요한데, 공개 키 및 비밀 키에 대한 보안 관리가 어렵거나 사용자가 요구하는 보안의 강도가 낮을 경우, 보증 데이터(Sign($CurrData))는 생략될 수 있다. 이 경우, 커런트 데이터(CurrData)에 포함된 현재 블록에 대한 메시지 다이제스트($Curr_Blk)가 보증 데이터(Sign($CurrData))의 기능을 수행할 수 있다.
IVC 생성부(110)는 소정의 주기(예를 들어, 24시간)마다 무결성 검증 블록을 생성하고, 새롭게 생성된 무결성 검증 블록을 포함하는 무결성 검증 체인(IVC)을 생성할 수 있다.
무결성 검증부(120)는 IVC 생성부(110)에서 생성된 무결성 검증 체인(IVC)을 이용하여 디바이스(10)의 무결성을 검증하는 기능을 수행할 수 있으며, 무결성을 검증할 수 있는 소정의 프로그램을 포함할 수 있다. 예를 들어, 무결성 검증부(120)는 이전 무결성 검증 체인(IVC)과 현재 무결성 검증 체인(IVC)를 이용하여 디바이스(10)의 무결성을 검증할 수 있다.
무결성 검증부(120)는, 무결성 검증 체인(IVC) 중 검증 대상이 되는 무결성 검증 블록이 생성된 시간, 순서, 파일명이 변경되었는지 여부를 확인할 수 있으며, 이를 통해 해당 무결성 검증 블록 자체가 위조 및/또는 변조되었는지 여부를 확인할 수 있다.
또는, 상기 프로그램은 대상 파일의 내용이 변경되거나 대상 파일을 해쉬한 해쉬 값이 변경된 경우, 이전 블록의 해쉬 값이 변경된 경우, 무결성 검증 블록에 포함된 보증 데이터(Sign($CurrData))가 올바르지 않은 경우 오류가 발생하도록 설계된 것일 수 있으며, 무결성 검증부(120)는 상기 오류를 참조하여 디바이스(10)의 무결성을 검증할 수 있다.
즉, 본 발명의 일 실시예에 의하면, 디바이스(10) 자체 내에서 디바이스(10)에 대한 무결성 검증이 가능하다.
다음으로, 본 발명의 일 실시예에 따른 통신부(130)는 IVC 생성부(110), 무결성 검증부(120) 및 데이터베이스(140) 로부터의/로의 데이터 송수신이 가능하도록 하는 기능을 수행할 수 있다.
다음으로, 본 발명의 일 실시예에 따른 데이터베이스(140)에는 무결성 검증 체인(IVC) 등이 저장될 수 있다. 비록 도 2에서 데이터베이스(140)가 디바이스(10)에 포함되어 구성되는 것으로 도시되어 있지만, 본 발명을 구현하는 당업자의 필요에 따라, 데이터베이스(140)는 디바이스(10)와 별개로 구성될 수도 있다. 한편, 본 발명에서의 데이터베이스(140)는, 컴퓨터 판독 가능한 기록 매체를 포함하는 개념으로서, 협의의 데이터베이스뿐만 아니라 파일 시스템에 기반을 둔 데이터 기록 등을 포함하는 광의의 데이터베이스일 수도 있으며, 단순한 로그의 집합이라도 이를 검색하여 데이터를 추출할 수 있다면 본 발명에서의 데이터베이스(140)가 될 수 있다.
마지막으로, 본 발명의 일 실시예에 따른 제어부(150)는 IVC 생성부(110), 무결성 검증부(120), 통신부(130) 및 데이터베이스(140) 간의 데이터의 흐름을 제어하는 기능을 수행할 수 있다. 즉, 본 발명에 따른 제어부(150)는 디바이스(10)의 외부로부터의/로의 데이터 흐름 또는 서버의 각 구성요소 간의 데이터 흐름을 제어함으로써, IVC 생성부(110), 무결성 검증부(120), 통신부(130) 및 데이터베이스(140)에서 각각 고유 기능을 수행하도록 제어할 수 있다.
도 4는 서버의 요청에 따라 디바이스의 무결성을 검증할 수 있는 전체 시스템의 구성을 개략적으로 나타낸 도면이다.
도 4를 참조하면, 디바이스(10)와 서버(30)는 통신망(20)을 통해 통신할 수 있으며, 예를 들어 서버(30)는 통신망(20)을 통해 디바이스(10)에 무결성 검증 체인(IVC)을 전송할 것을 요청하고 디바이스(10)로부터 무결성 검증 체인(IVC)을 획득할 수 있다.
서버(30)는 디바이스(10)로부터 획득한 무결성 검증 체인(IVC)을 이용하여 디바이스(10)에 대한 무결성을 검증할 수 있으며, 이를 위하여 앞서 설명한 무결성 검증부(120)에 포함된 프로그램이 서버(30)에도 포함될 수 있다.
한편, 도 4에는 하나의 디바이스(10)만이 도시되어 있으나 본 발명이 이에 제한되는 것은 아니며, 서버(30)는 적어도 하나 이상의 디바이스(10)를 관제하는 기능을 수행할 수 있다.
도 5는 본 발명의 일 실시예에 따라 디바이스의 무결성이 검증되는 순서를 나타내는 흐름도이다.
도 5를 참조하면, 서버(30)는 디바이스(10)로 무결성 검증 체인(IVC)을 전달하여 줄 것을 요청하는 요청 메시지를 전송할 수 있다(S510).
디바이스(10)는 서버(30)로부터 상기 요청 메시지를 획득하면, 서버(30)로 무결성 검증 체인(IVC)을 전송할 수 있다(S520).
서버(30)는 디바이스(10)로부터 획득한 무결성 검증 체인(IVC)을 이용하여 디바이스(10)의 무결성을 검증할 수 있으며, 디바이스(10)의 무결성 검증 단계는 디바이스(10)의 무결성 검증부(120)에서 수행되는 것과 동일한 방식을 이용하여 수행될 수 있다.
무결성 검증 결과, 디바이스(10) 또는 디바이스(10)에서 생성된 데이터에 대한 위조 및/또는 변조가 감지되면 서버(30)는 소정의 관리자에게 이러한 사실을 통보하고, 디바이스(10)가 서버(30)나 다른 시스템에 접근하는 것을 방지하는 등의 조치를 취할 수 있다.
도 6은 본 발명의 다른 실시예에 따라 디바이스의 무결성이 검증되는 순서를 나타내는 흐름도이다.
도 6을 참조로 하면, 디바이스(10)는 소정의 주기마다 무결성 검증 체인(IVC)을 생성할 수 있다(S610). 디바이스(10)는 서버(30)로부터 별다른 요청 메시지를 수신하지 않더라도, 생성된 무결성 검증 체인(IVC)을 서버(30)로 전송할 수 있다(S620).
서버(30)는 디바이스(10)로부터 획득한 무결성 검증 체인(IVC)을 이용하여(예를 들어, 이전에 수신한 무결성 검증 체인(IVC)과 현재 수신한 무결성 검증 체인(IVC)을 비교) 디바이스(10)의 무결성을 검증할 수 있으며, 디바이스(10)의 무결성 검증 단계는 디바이스(10)의 무결성 검증부(120)에서 수행되는 것과 동일한 방식을 이용하여 수행될 수 있다.
무결성 검증 결과, 디바이스(10)에 대한 무결성 침해가 발견되면 서버(30)는 소정의 관리자에게 이러한 사실을 통보하고, 디바이스(10)가 서버(30)나 다른 시스템에 접근하는 것을 방지하는 등의 조치를 취할 수 있다.
도 7은 본 발명의 실시예에 따른, 컴퓨팅 장치를 나타내는 도면이다. 도 7의 컴퓨팅 장치(TN100)는 본 명세서에서 기술된 장치(예, 디바이스(10), 서버(30) 등) 일 수 있다.
도 7의 실시예에서, 컴퓨팅 장치(TN100)는 적어도 하나의 프로세서(TN110), 송수신 장치(TN120), 및 메모리(TN130)를 포함할 수 있다. 또한, 컴퓨팅 장치(TN100)는 저장 장치(TN140), 입력 인터페이스 장치(TN150), 출력 인터페이스 장치(TN160) 등을 더 포함할 수 있다. 컴퓨팅 장치(TN100)에 포함된 구성 요소들은 버스(bus)(TN170)에 의해 연결되어 서로 통신을 수행할 수 있다.
프로세서(TN110)는 메모리(TN130) 및 저장 장치(TN140) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(TN110)는 중앙 처리 장치(CPU: central processing unit), 그래픽 처리 장치(GPU: graphics processing unit), 또는 본 발명의 실시예에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 프로세서(TN110)는 본 발명의 실시예와 관련하여 기술된 절차, 기능, 및 방법 등을 구현하도록 구성될 수 있다. 프로세서(TN110)는 컴퓨팅 장치(TN100)의 각 구성 요소를 제어할 수 있다.
메모리(TN130) 및 저장 장치(TN140) 각각은 프로세서(TN110)의 동작과 관련된 다양한 정보를 저장할 수 있다. 메모리(TN130) 및 저장 장치(TN140) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(TN130)는 읽기 전용 메모리(ROM: read only memory) 및 랜덤 액세스 메모리(RAM: random access memory) 중에서 적어도 하나로 구성될 수 있다.
송수신 장치(TN120)는 유선 신호 또는 무선 신호를 송신 또는 수신할 수 있다. 송수신 장치(TN120)는 네트워크에 연결되어 통신을 수행할 수 있다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
한편, 본 발명의 실시예는 지금까지 설명한 장치 및/또는 방법을 통해서만 구현되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 상술한 실시예의 기재로부터 본 발명이 속하는 기술 분야의 통상의 기술자라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 통상의 기술자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (15)

  1. 디바이스에 있어서,
    적어도 하나 이상의 무결성 검증 블록을 포함하는 무결성 검증 체인을 생성하는 무결성 검증 체인 생성부; 및
    상기 무결성 검증 체인을 이용하여 상기 디바이스의 무결성을 검증하는 무결성 검증부;를 포함하고,
    상기 무결성 검증 블록은,
    무결성 검증 대상에 대한 정보와 이전 무결성 검증 블록에 대한 메시지 다이제스트를 포함하는 커런트 데이터 및 상기 커런트 데이터에 대한 메시지 다이제스트(message digest)를 포함하는 것을 특징으로 하는 디바이스.
  2. 제1항에 있어서,
    상기 커런트 데이터는,
    상기 무결성 검증 블록이 생성된 시간, 상기 무결성 검증 블록의 순서 및 상기 디바이스의 아이디(ID)에 대한 정보를 포함하는 헤더 구조;
    상기 무결성 검증 대상의 파일명을 포함하는 무결성 검증 대상 구조;
    상기 무결성 검증 대상 구조에 대한 메시지 다이제스트;
    상기 헤더 구조, 상기 무결성 검증 대상 구조, 상기 무결성 검증 대상 구조에 대한 메시지 다이제스트 및 상기 이전 무결성 검증 블록에 대한 메시지 다이제스트를 더 포함하는 것을 특징으로 하는 디바이스.
  3. 제2항에 있어서,
    상기 무결성 검증 블록은 보증 데이터를 더 포함하고,
    상기 보증 데이터는, 상기 디바이스의 개인키로 전자 서명된 것이며,
    상기 전자 서명 시 상기 커런트 데이터에 대한 메시지 다이제스트가 입력 값으로 사용되는 것을 특징으로 하는 디바이스.
  4. 제2항에 있어서,
    상기 무결성 검증 블록은 보증 데이터를 더 포함하고,
    상기 보증 데이터는, 메시지 인증 코드 또는 소정의 암호 알고리즘을 통해 생성된 암호 값 중 어느 하나인 것을 특징으로 하는 디바이스.
  5. 제1항에 있어서,
    상기 무결성 검증 체인 생성부는, 기 설정된 주기마다 상기 무결성 검증 블록을 생성하여 상기 무결성 검증 체인을 업데이트 하는 것을 특징으로 하는 디바이스.
  6. 디바이스의 무결성을 검증하기 위한 시스템에 있어서,
    적어도 하나 이상의 무결성 검증 블록을 포함하는 무결성 검증 체인을 생성하는 디바이스; 및
    상기 디바이스로부터 상기 무결성 검증 체인을 획득하고, 상기 무결성 검증 체인을 이용하여 상기 디바이스의 무결성을 검증하는 서버;를 포함하고,
    상기 무결성 검증 블록은,
    무결성 검증 대상에 대한 정보와 이전 무결성 검증 블록에 대한 메시지 다이제스트를 포함하는 커런트 데이터 및 상기 커런트 데이터에 대한 메시지 다이제스트(message digest)를 포함하는 것을 특징으로 하는 시스템.
  7. 제6항에 있어서,
    상기 서버는 상기 디바이스로 상기 무결성 검증 체인 전달 요청 메시지를 전송하고,
    상기 디바이스는 상기 요청 메시지에 대응하여 상기 무결성 검증 체인을 상기 서버로 전송하는 것을 특징으로 하는 시스템.
  8. 제6항에 있어서,
    상기 디바이스는 기 설정된 주기마다 상기 무결성 검증 블록을 생성하여 상기 무결성 검증 체인을 업데이트하고,
    상기 기 설정된 주기마다 업데이트된 무결성 검증 체인을 상기 서버로 전송하는 것을 특징으로 하는 시스템.
  9. 제6항에 있어서,
    상기 서버는,
    현재 획득한 무결성 검증 체인과 이전에 획득한 무결성 검증 체인을 비교하여 상기 디바이스에 대한 무결성을 검증하는 것을 특징으로 하는 시스템.
  10. 제9항에 있어서,
    상기 커런트 데이터는,
    상기 무결성 검증 블록이 생성된 시간, 상기 무결성 검증 블록의 순서 및 상기 디바이스의 아이디(ID)에 대한 정보를 포함하는 헤더 구조;
    상기 무결성 검증 대상의 파일명을 포함하는 무결성 검증 대상 구조;
    상기 무결성 검증 대상 구조에 대한 메시지 다이제스트;
    상기 헤더 구조, 상기 무결성 검증 대상 구조, 상기 무결성 검증 대상 구조에 대한 메시지 다이제스트 및 상기 이전 무결성 검증 블록에 대한 메시지 다이제스트를 더 포함하는 것을 특징으로 하는 시스템.
  11. 제10항에 있어서,
    상기 서버는, 상기 디바이스에 대한 무결성 검증 시, 상기 무결성 검증 블록이 생성된 시간, 상기 무결성 검증 블록의 순서 및 상기 파일명 중 적어도 어느 하나에 대한 정보가 변경된 것을 확인하면, 상기 디바이스에 대한 무결성이 침해된 것으로 판단하는 것을 특징으로 하는 시스템.
  12. 제6항에 있어서,
    상기 디바이스는, 상기 무결성 검증 체인을 이용하여 상기 디바이스의 무결성을 검증하는 무결성 검증부를 포함하는 것을 특징으로 하는 시스템.
  13. 제6항에 있어서,
    상기 무결성 검증 블록은 보증 데이터를 더 포함하고,
    상기 보증 데이터는, 상기 디바이스의 개인키로 전자 서명된 것이며,
    상기 전자 서명 시 상기 커런트 데이터에 대한 메시지 다이제스트가 입력 값으로 사용되는 것을 특징으로 하는 시스템.
  14. 제6항에 있어서,
    상기 무결성 검증 블록은 보증 데이터를 더 포함하고,
    상기 보증 데이터는, 메시지 인증 코드 또는 소정의 암호 알고리즘을 통해 생성된 암호 값 중 어느 하나인 것을 특징으로 하는 시스템.
  15. 디바이스에 있어서,
    적어도 하나 이상의 무결성 검증 블록을 포함하는 무결성 검증 체인을 생성하는 무결성 검증 체인 생성부; 및
    상기 무결성 검증 체인을 이용하여 상기 디바이스의 무결성을 검증하는 무결성 검증부;를 포함하고,
    상기 무결성 검증 체인 생성부에 의해, 상기 무결성 검증 블록에는 커런트 데이터, 상기 커런트 데이터에 대한 메시지 다이제스트(message digest)가 함께 마련되며,
    상기 무결성 검증 체인 생성부에 의해, 상기 커런트 데이터는 무결성 검증 대상에 대한 정보와 이전 무결성 검증 블록에 대한 메시지 다이제스트를 포함하고,
    상기 무결성 검증 체인 생성부에 의해, 상기 커런트 데이터는 현재 블록에 대한 메시지 다이제스트를 더 포함하며,
    상기 무결성 검증 대상의 정보를 제1 정보로 정의하고, 상기 제1 정보에 대한 메시지 다이제스트를 제1 다이제스트로 정의하며, 상기 이전 무결성 검증 블록에 대한 메시지 다이제스트를 제2 다이제스트로 정의하고, 상기 현재 블록에 대한 메시지 다이제스트를 제3 다이제스트로 정의할 때,
    상기 제3 다이제스트는 상기 제1 정보, 상기 제1 다이제스트 및 상기 제2 다이제스트를 포함하고,
    상기 커런트 데이터에 대한 메시지 다이제스트를 제4 다이제스트로 정의할 때,
    상기 무결성 검증 체인 생성부에 의해 상기 제4 다이제스트는 상기 제1 정보, 상기 제1 다이제스트, 상기 제2 다이제스트, 상기 제3 다이제스트를 포함하는 상기 커런트 데이터 전체에 대한 메시지 다이제스트를 포함하며,
    상기 제1 정보, 상기 제1 다이제스트, 상기 제2 다이제스트, 상기 제3 다이제스트, 상기 제4 다이제스트를 모두 포함하는 설정 순서의 무결성 검증 블록에 대한 메시지 다이제스트는 다음 순서의 무결성 검증 블록에서 제2 다이제스트에 해당하는 이전 무결성 검증 블록에 대한 메시지 다이제스트가 되고,
    상기 무결성 검증 체인 생성부에 의해 상기 설정 순서의 무결성 검증 블록에 포함된 상기 제2 다이제스트는 상기 설정 순서의 무결성 검증 블록에 포함된 상기 제3 다이제스트, 상기 제4 다이제스트, 상기 설정 순서의 무결성 검증 블록에 대한 메시지 다이제스트의 생성에 각각 이용되는 디바이스.
PCT/KR2019/016259 2019-01-31 2019-11-25 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법 WO2020159053A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/965,490 US20210126923A1 (en) 2019-01-31 2019-11-25 Integrity verification chain for verifying integrity of devices and method for verifying integrity of devices using the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2019-0012543 2019-01-31
KR1020190012543A KR102036618B1 (ko) 2019-01-31 2019-01-31 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법

Publications (1)

Publication Number Publication Date
WO2020159053A1 true WO2020159053A1 (ko) 2020-08-06

Family

ID=68421941

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/016259 WO2020159053A1 (ko) 2019-01-31 2019-11-25 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법

Country Status (3)

Country Link
US (1) US20210126923A1 (ko)
KR (1) KR102036618B1 (ko)
WO (1) WO2020159053A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102036618B1 (ko) * 2019-01-31 2019-10-28 주식회사그린존시큐리티 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법
US11863678B2 (en) * 2020-08-26 2024-01-02 Tenet 3, LLC Rendering blockchain operations resistant to advanced persistent threats (APTs)
CN112597512B (zh) * 2020-12-21 2023-03-24 杭州趣链科技有限公司 基于区块链的温度数据管控方法、装置及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150089696A (ko) * 2014-01-28 2015-08-05 한국전자통신연구원 접근제어와 우선순위기반 무결성 검증 시스템 및 그 방법
KR20180029737A (ko) * 2016-09-13 2018-03-21 삼성전자주식회사 어플리케이션을 검증하는 디바이스 및 방법
KR20180084053A (ko) * 2015-11-19 2018-07-24 나그라비젼 에스에이 타겟 장치에서의 어플리케이션의 실행 무결성을 검증하는 방법
KR20180089682A (ko) * 2017-02-01 2018-08-09 삼성전자주식회사 블록체인 기반의 데이터의 무결성을 검증하는 전자 장치 및 방법
KR20180113140A (ko) * 2017-04-05 2018-10-15 삼성에스디에스 주식회사 블록체인 기반의 데이터 처리 시스템 및 그 동작 방법
KR102036618B1 (ko) * 2019-01-31 2019-10-28 주식회사그린존시큐리티 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101796690B1 (ko) 2016-06-28 2017-11-10 상명대학교 천안산학협력단 블록체인 기반의 펌웨어 무결성 검증 시스템 및 그 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150089696A (ko) * 2014-01-28 2015-08-05 한국전자통신연구원 접근제어와 우선순위기반 무결성 검증 시스템 및 그 방법
KR20180084053A (ko) * 2015-11-19 2018-07-24 나그라비젼 에스에이 타겟 장치에서의 어플리케이션의 실행 무결성을 검증하는 방법
KR20180029737A (ko) * 2016-09-13 2018-03-21 삼성전자주식회사 어플리케이션을 검증하는 디바이스 및 방법
KR20180089682A (ko) * 2017-02-01 2018-08-09 삼성전자주식회사 블록체인 기반의 데이터의 무결성을 검증하는 전자 장치 및 방법
KR20180113140A (ko) * 2017-04-05 2018-10-15 삼성에스디에스 주식회사 블록체인 기반의 데이터 처리 시스템 및 그 동작 방법
KR102036618B1 (ko) * 2019-01-31 2019-10-28 주식회사그린존시큐리티 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법

Also Published As

Publication number Publication date
US20210126923A1 (en) 2021-04-29
KR102036618B1 (ko) 2019-10-28

Similar Documents

Publication Publication Date Title
WO2020159053A1 (ko) 디바이스의 무결성을 검증하는 무결성 검증 체인 및 이를 이용한 디바이스의 무결성 검증 방법
CN108111473B (zh) 混合云统一管理方法、装置和系统
US10878080B2 (en) Credential synchronization management
CN105099705B (zh) 一种基于usb协议的安全通信方法及其系统
CN106599694A (zh) 安全防护管理方法、计算机系统和计算机可读取存储媒体
WO2014185594A1 (ko) Vdi 환경에서의 싱글 사인온 시스템 및 방법
CN108027856B (zh) 使用可信平台模块来建立攻击信息的实时指示器
WO2017057880A1 (en) Apparatus and method for protection of critical embedded system components via hardware-isolated secure element-based monitor
CN112581233A (zh) 订单离线操作的方法、装置、设备和计算机可读存储介质
CN112311779A (zh) 应用于区块链系统的数据访问控制方法及装置
CN109308407A (zh) 电子系统中的授权操作
Xu et al. Cloud data security and integrity protection model based on distributed virtual machine agents
Dua et al. Combating software and Sybil attacks to data integrity in crowd-sourced embedded systems
WO2012015099A1 (ko) 일회성 보안토큰을 이용한 웹 서비스 제공 장치 및 방법
Turan et al. Propagating trusted execution through mutual attestation
WO2020197283A1 (ko) 전자 디바이스를 인증하기 위한 방법 및 그에 따른 장치
US11522842B2 (en) Central trust hub for interconnectivity device registration and data provenance
US20210111870A1 (en) Authorizing and validating removable storage for use with critical infrastrcture computing systems
TWI472189B (zh) 網路監控系統及管理金鑰的方法
CN106130996A (zh) 一种网站防攻击验证系统及方法
WO2013100476A1 (ko) 클라이언트 단말, 감시 서버, 및 감시 영역 변조 방지 방법
CN115174571B (zh) 基于区块链的用于录屏取证的方法、装置、电子设备及存储介质
Yoshida et al. Towards trusted iot sensing systems: Implementing puf as secure key generator for root of trust and message authentication code
WO2016182329A1 (ko) 차단 사이트를 표시하는 네트워크 보안 시스템 및 방법
WO2014148769A1 (ko) 서비스 보안기능 강화 방법

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: 19913284

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: 19913284

Country of ref document: EP

Kind code of ref document: A1