WO2019125081A1 - 블록체인을 이용한 일회성 접근 권한 부여 시스템 - Google Patents

블록체인을 이용한 일회성 접근 권한 부여 시스템 Download PDF

Info

Publication number
WO2019125081A1
WO2019125081A1 PCT/KR2018/016535 KR2018016535W WO2019125081A1 WO 2019125081 A1 WO2019125081 A1 WO 2019125081A1 KR 2018016535 W KR2018016535 W KR 2018016535W WO 2019125081 A1 WO2019125081 A1 WO 2019125081A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
authentication
block
code
digital
Prior art date
Application number
PCT/KR2018/016535
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
Priority claimed from KR1020180130401A external-priority patent/KR20190075793A/ko
Application filed by 문인식 filed Critical 문인식
Priority to JP2019529645A priority Critical patent/JP2020507143A/ja
Publication of WO2019125081A1 publication Critical patent/WO2019125081A1/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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules

Definitions

  • the technical field to which this embodiment belongs is a system for providing a one-time access authority using a block chain.
  • the block chain is a continuously growing data record list designed to prevent arbitrary manipulation by the operator of the distributed node as a distributed database. It can be regarded as a convergence algorithm that enables to keep the data of the book distributed among the large number of nodes at each node always at the latest version.
  • a block chain allows nodes to be run anonymously, poorly connected, or even untrusted operators to participate.
  • the knowledge-based authentication method is a method of confirming what is known by using an ID / password or an IP pin.
  • the proprietary-based authentication method is a method of authenticating based on a physical entity possessed by using an official certificate, OTP, or the like.
  • the feature-based authentication method is a method of authenticating based on characteristics that can identify an entity using biometric authentication, smart signature, and the like. In particular, bio-based authentication can authenticate users based on behavioral characteristics such as fingerprint, iris, face, biological characteristics, voice, and signature.
  • ISP internet service providers
  • a knowledge-based authentication method needs to record personal identification information in an authentication server.
  • Such an authentication method has a problem in that an attacker leaks personal identification information when an attacker attacks an authentication server, and if the number of users increases, the performance of the database is impaired and it is difficult to expand.
  • the proprietary-based authentication method requires the user to separately manage the authentication token.
  • This authentication method has a problem that the authentication token may be lost, and the attacker may take the authentication token.
  • the feature-based authentication method does not need to possess a separate authentication token because it uses characteristics of the user, and it is difficult to duplicate the unique biometric information of the user.
  • digital files related to biometric information can be copied.
  • FIG. 1D there is an individual, an enterprise, an organization, or the like that must identify a user to provide a service and must be authenticated or processed for the service. Therefore, Must be kept.
  • Embodiments of the present invention combine and reconstruct digital fragment codes distributed over data nodes of a distributed storage network using metacodes distributed over block nodes of a block chain network, By providing a one-time access right according to the comparison result between the data received from the provider and the restored data, the service provider does not need to have a separate database and provides the user with the main object of invention .
  • an authentication node connected to a service node, a user node, a block-chain network, and a distributed storage network
  • the authentication node comprising: A transmitting and receiving unit for collecting digital scrambling codes from the data nodes of the distributed storage network using the received digital scrambling codes and a processing unit for merging the collected digital scrambling codes and restoring the digital scrambled codes into digital codes or restoring security information from the restored digital codes, ,
  • the processing unit compares the digital code included in the authentication request message with the digital code restored by the processing unit or compares the security information included in the authentication request message with the security information restored by the processing unit
  • the transmitting / And transmits the authentication result message to the node.
  • the authentication result message may include a one-time access authority code.
  • the processing unit compares the digital code included in the authentication request message with the digital code restored by the processing unit or the security information included in the authentication request message is compared with the security information restored by the processing unit If the predetermined similar range, the transceiver can transmit the compensation token to the user node, the block node of the block-chain network, or the data node of the distributed storage network.
  • the compensation token may be a virtual currency.
  • the metacode may be distributed to at least two block nodes of the block-chain network.
  • the authentication node may include a storage unit for storing a meta-distributed map including information on a block node that transmits the meta-code.
  • the block node stores a metacode which is a medium of digital fragment codes stored in a data node of the distributed storage network and the stored metacode may have a value different from a metacode stored in another block node of the block chain network .
  • the data node may store a sculptural distribution map including a relationship of the digital sculptural code and a metacode for tracking the digital sculptural code.
  • a transmitting and receiving unit for transmitting an access right message to the user node, wherein the authentication node is connected to a block-chain network and a distributed storage network, and wherein the authentication node uses a metacode stored in a block node of the block- Collecting the digital sculptural codes from the data nodes, and merging the collected digital sculptural codes and restoring the digital sculptural codes into digital codes.
  • the access request message is transmitted using the FIDO (Fast IDentity Online) protocol, and an OTP (One Time Password) generation and authentication method can be used.
  • FIDO Full IDentity Online
  • OTP One Time Password
  • the access privilege message may include a one-time access privilege code.
  • the digital piece code distributed and stored in the data nodes of the distributed storage network using the metacode distributed to the block nodes of the block chain network And provides a one-time access right according to the comparison result between the data received from the user or the service provider and the restored data, so that the service provider does not need to have a separate database and can provide the user with one-time access Can be provided.
  • the digital information that is encrypted, separated, distributed and stored through the service node and the one-time access privilege interface is used once or limitedly, the original to be verified at the time of authentication is not stored in any server or user device,
  • the leakage and the hacking of the system can be basically disabled, and the enterprise, industry, and social loss due to leakage or hacking can be prevented.
  • FIGS. 1A to 1D are block diagrams illustrating an existing authentication method.
  • FIGS. 2 and 3 are diagrams illustrating nodes in accordance with embodiments of the present invention.
  • FIG. 4 is a diagram illustrating operations performed by nodes according to embodiments of the present invention.
  • FIG. 5 is a diagram illustrating a data structure managed by a node of a block chain according to an embodiment of the present invention.
  • FIG. 6 is a diagram illustrating data processed between nodes of a block chain and nodes of a distributed storage network according to embodiments of the present invention.
  • FIG. 7 and FIG. 8 are flowcharts illustrating operations in which nodes securely store security information according to embodiments of the present invention.
  • 9 and 10 are diagrams illustrating security information in which nodes are distributedly stored according to embodiments of the present invention.
  • 11 and 12 are flowcharts illustrating an operation of collecting and recovering security information by nodes according to embodiments of the present invention.
  • 13 and 14 are diagrams illustrating security information collected and restored by nodes according to embodiments of the present invention.
  • 15 is a diagram illustrating an example of a BAASID authentication integration service.
  • FIG. 16 is a diagram illustrating generation and separation / division of Split IDs.
  • FIG. 17 is a diagram illustrating participation and proof of split IDs.
  • FIG. 18 is a diagram illustrating temporal centralization based on an individual.
  • 19 is a diagram illustrating a Split Block & Crypto Exchange Block.
  • 20 is a diagram comparing a general Internet service system and a BAASID BAAS infrastructure.
  • 21 is a diagram illustrating Instant Access authentication.
  • 22 is a diagram comparing general login / authentication with Instant Access.
  • FIG. 23 is a diagram illustrating an Instant Access API configuration diagram.
  • 24 is a diagram illustrating user authentication processing without a database in an online environment.
  • the nodes according to the present embodiments can be used for BAAS.
  • BAAS is a blockchain as a service that allows many unspecified Internet providers to easily borrow the underlying technology and infrastructure of a block chain.
  • BAASID (Bath ID) refers to the entire information processing system realized through the invention as a component of the BAAS
  • COPN is short for the Certification of Public Network, which means that the voluntary participation of nodes (participants) on the public network, not all centralized forms of databases or storage, such as databases of Internet service providers or third party certification bodies, A public network infrastructure (Infra) that distributes and stores separately separated pieces of important personal information of each individual.
  • Split ID encrypts the personal information of various types (text, image), and splits the data into thousands of pieces through Split Engine. It is the smallest unit that divides and distributes each part separately to the fastest and optimized nodes Means encrypted data.
  • a Split Block is a small unit block that consists of a Split ID, a Split ID, and a Participant Group, where each Split ID is stored in the fastest and optimized nodes (unspecified Participants).
  • Instant Access refers to a one-time instant access privilege that enables quick and secure login, instant membership, and payment authentication by calling Split IDs stored in different Split Blocks.
  • Hyper Confirm provides secure and easy authentication through Instant Access, which enables you to log in and register for temporary membership, payment, and transfer by public network certification (COPN) without involvement of provider's database, third party certification authority, PG .
  • COPN public network certification
  • POA Proof Of Access
  • Figures 2 and 3 are diagrams illustrating nodes.
  • an individual user who wishes to log in without a password to a specific site supporting BAASID must install the BAASID Privacy Wallet app. It becomes a light node of the BAASID network.
  • the site to be logged in must also be a Light Node participating in the BAASID authentication network.
  • the write node receives only a part of block data by using the binary tree method of the merge tree, and there is a full node that downloads all block chains.
  • biometric such as fingerprint.
  • the site encrypts the biometric information entered by the user and the personalized hash value information of the wallet app using the public key provided by the BAASID, and transmits it to the BAASID network to request authentication.
  • the BAASID Node receives the personal information and collects the authentication information of the individual using the personal hash value, and performs a verification operation. And sends the approval information to the corresponding site.
  • the authentication node 310 is connected to the block-chain network and the distributed storage network.
  • the block-chain network includes block nodes 321-325, and the distributed storage network includes data nodes 331-335.
  • the number of nodes and the connection relationship shown in FIG. 3 are merely examples, but the present invention is not limited thereto, and a proper number of nodes may form various connection relationships according to the design to be implemented.
  • the authentication node 310 may act as the block node 321 and may act as the data node 331.
  • the nodes (authentication node, block node, data node, etc.) include a processing unit, a transmission / reception unit, and a storage unit.
  • a block-chain network is a peer-to-peer system in which blocks storing data are interconnected.
  • One block has a hash pointer of the previous block, and the blocks can be connected in a unidirectional manner.
  • Each block can consist of a header and a body.
  • a block chain can be viewed as a Ledger that contains transaction information and history, and can be consensus on the content and order of transactions between the nodes.
  • the customer sends a transaction to the block-chain network via a software application (e.g., a wallet app) that the customer sends a specific amount to the recipient.
  • a software application e.g., a wallet app
  • Nodes in a block-chain network validate transactions and then add transactions to their books. The transaction is added again to the other nodes in the network.
  • the header of the block includes a hash of the current block, a hash of the previous block, a block creation time, information related to the degree of difficulty, a nonce at the time of block creation, a transaction count, a block size, and the like.
  • Ansys is a number that enters the hash function with the contents of another block and makes the result of the hash function less than a certain target value. Difficulty, timestamp, and nuns are related to mining competition.
  • the body of the block contains transaction details and a merge tree.
  • Mercury Tree has a hash tree structure, hashing transaction details and making them into a tree structure to prevent the transaction details from being stolen / tampered. Modifying the data in the tree changes the merge root (summary information) value.
  • a hash function is a function that maps data of an arbitrary length to data of a fixed length. In the present embodiment, a cryptographic hash function or an non-cryptographic hash function can be applied, and various hash algorithms can be applied.
  • the distributed storage network can be implemented as a framework composed of a plurality of modules performing specific functions.
  • a distributed storage network may include a cluster or a node.
  • a cluster is a set of computers interconnected to perform a specific function.
  • a node is an individual computer that constitutes a cluster.
  • the distributed storage network may be a master and a slave structure.
  • the master and slave structures are a structure in which one master device and one or more slave devices are connected.
  • One or more slave devices connected to one master device distributes, stores, distributes and processes large-capacity data.
  • the distributed storage network may include a module for storing large amount of data and a module for processing large amount of data.
  • the data node may be composed of a plurality of data nodes and a name node, and the data node stores the actual file, and reads and transmits the stored file.
  • File repositories in a data node are made up of storage spaces of a certain size and have multiple sets of data that physically reside on different servers but logically have the same data.
  • the distributed storage network may further include a module capable of managing resources.
  • the authentication node 310 is connected to the block-chain network and the distributed storage network.
  • the processing unit of the authentication node 310 generates a digital code from the security information received from the user node 340 or the service node 350, and divides the digital code into predetermined units to generate digital piece code.
  • the processing unit can generate the digital piece code.
  • the security information may be (i) biometric information in a fingerprint, retina, iris, face, blood vessel, or a combination thereof, or (ii) confidential information.
  • the received security information is encrypted, and the processing unit can decrypt the encrypted security information.
  • the encrypted security information may include identification information about an application installed at a user node, identification information about a user node, user identification information, an authentication key, or a combination thereof.
  • the processing unit can encrypt the digital piece code using the authentication key.
  • the transmitting and receiving unit of the authentication node 310 transmits identification information about the application installed in the user node, identification information about the user node, user identification information, authentication key, or a combination thereof to the data node of the distributed storage network.
  • the transmitting and receiving unit of the authentication node 310 transmits the digital piece code to the data node to distribute the digital piece code to at least two data nodes of the distributed storage network.
  • the transmitted digital piece code is extracted from the distributed stored data nodes using a meta code that is a medium for tracking the digital piece code.
  • the metacode which is a medium for tracking digital sculptural codes, is distributed and distributed to at least two block nodes of a block-chain network.
  • the processing unit may generate a meta code or the transmitting / receiving unit may receive the meta code from the data node of the distributed storage network.
  • the transceiver may transmit the metacode to the block node in order to distribute the metacode to at least two block nodes of the block-chain network.
  • the authentication node 310 may include a storage unit for storing a meta-distributed map including information on the block node receiving the meta-code.
  • the transceiver of the authentication node 310 collects digital fragment codes from at least two data nodes of the distributed storage network to merge the distributed data into at least one data node of the distributed storage network.
  • the transceiver receives the metacode from at least two block nodes of the block-chain network.
  • the processing unit of the authentication node 310 merges the collected digital fragment codes and restores them into digital codes.
  • the processing unit decrypts the digital piece code using the authentication key.
  • the processing unit performs an operation according to the request message using the restored digital code or performs an operation according to the request message using the security information restored from the digital code.
  • the transmission / reception unit transmits the operation result message or the restored security information to the user node 340 or the service node 350.
  • the restored security information is encrypted, and the processing unit decrypts the encrypted security information.
  • the data node 331 of the distributed storage network may be coupled to the authentication node 310 and the data node 332 may be coupled to the block node 322.
  • a data node may perform the functions of an authentication node or a block node.
  • the data nodes 332 and 333 of the distributed storage network may form a group.
  • the transceiver of the data node 332 receives the digital fragment code from the authentication node 310.
  • the transceiver unit may receive the meta code from the authentication node 310.
  • the processing unit can generate the meta code.
  • the transceiver may transmit the metacode to the authentication node 310 or the block node 322 of the block-chain network.
  • the storage of the data node 332 stores the digital fragment code.
  • the storage unit stores a sculptural distribution map including a relationship of a digital sculptural code and a metacode for tracking the digital sculptural code.
  • the fragment distribution map may include (i) information about the data nodes where the digital fragment code is stored in the distributed storage network, (ii) the order of the digital fragment code, (iii) information about the block nodes of the block- iv) combinations of these.
  • the processing portion of the data node 332 tracks the digital fragment code based on the fragment dispersion map.
  • the transceiver of the data node 332 may receive the metacode from the authentication node. And receives a matching meta-code using the meta-distributed map of the authentication node.
  • the fragment scatter map may include information about the block node where the meta code is stored.
  • the meta-code may be received from the corresponding block node. In the fragment dispersion map, the metacode and the piece code (or the node in which the piece code is stored) are matched, and the piece code can be extracted.
  • the transmitting and receiving unit transmits the tracked digital piece code to the authentication node 310.
  • the transceiver may receive identification information about an application installed at a user node, identification information about the user node, user identification information, an authentication key, or a combination thereof.
  • the data node stores a copy of the digital fragment code stored in another data node belonging to the same group or another group based on the fragment dispersion map.
  • the data node can search for a digital piece code existing in another data node belonging to the same group on the basis of the fragment dispersion map.
  • the block node 321 of the block chain network may be coupled to the authentication node 310 and the block node 322 may be coupled to the data node 332.
  • a block node may perform the functions of an authentication node or a data node.
  • the transceiver of the block node 322 receives the meta code from the authentication node 310 or the data node 332 of the distributed storage network.
  • the storage of the block node 322 stores a metacode which is the mediator of the digital fragment code distributed over the data nodes of the distributed storage network.
  • the storage unit stores transaction information.
  • the storage unit can store the metacode using a hash tree structure.
  • the processing unit of the block node 322 synchronizes the transaction information with the transaction information of the other block nodes of the block-chain network.
  • a typical block chain stores transaction records to provide strong security against uplink / downlink. However, it has a great deal of difficulty in storing user's sensitive personal information, important information, and authentication key.
  • the metacode has a different value from the metacode of the other block nodes in the block-chain network.
  • the transceiver transmits the meta code 332 to the authentication node 310 or the data node of the distributed storage network.
  • the node 350 provides various services to the user and authenticates the user via the authentication node.
  • the service node 350 is connected to the user 340 and the authentication node 310.
  • the transmitting and receiving unit of the service node 350 transmits an authentication request message to the authentication node 310 and receives a result message.
  • the transmitting and receiving unit can request and receive security data such as confidential documents from the authentication node.
  • the authentication node 310 is connected to the block-chain network and the distributed storage network.
  • the authentication node 310 collects digital piece codes from the data nodes of the distributed storage network using the meta-code stored in the block node of the block-chain network, Are merged and restored into a digital code.
  • FIG. 4 is a diagram illustrating operations performed by nodes.
  • Participant's personal information is separated into thousands of pieces by Split Engine. All of these fragmented IDs are encrypted and stored in their own Split Blocks. It is the process of downloading and recovering a single source as if allocation values and separated pieces of separated data are rationally found and combined with the fastest node and data.
  • Participants' Split IDs are maintained with their own unique passwords along with Public Keys, and unique Split data is kept secure through BAASID's virtual currency, wallet, and transactions. Participants and an unspecified number of participants will certify and participate in authentication while granting temporary one-time instant access to each other when accessing a specific Internet service.
  • BAASID does not exist in the world, either in its original form or in any form, even on its own device, with the user's personal information, biometric images and all other information. Only the nodes of the public participants (users) are stored in fragments and distributed (meaning that each piece of encrypted data is distributed separately to the participants).
  • the unique Split ID refers to the different encrypted data as it acknowledges the originality of each participant. A block of one small participant group having such a split ID is called a split block. All public transaction books of participants are stored in a separate Crypto exchange Block.
  • BAASID's COPN API is available to all Internet service providers and is easily applicable to anyone. All internet service providers applying BAASID's Certification of Public Network (COPN) do not receive or store personal information through the construction of a separate database, so there is no legal risk of any attempted hacking or disclosure.
  • COPN Public Network
  • FIG. 5 illustrates a data structure managed by a node in a block chain
  • FIG. 6 illustrates data processed between nodes in a block chain and nodes of a distributed storage network.
  • BAASID consists of a Cryptocurrency network and a File network.
  • Cryptocurrency operates a conventional block chain for transaction ledger management. It has the same Transaction Merkle Tree as a normal password.
  • the personal information registered by the user is divided into hundreds or thousands of pieces in the File network and distributed to the individual nodes, and the DHT map is generated using the hash values of the individual divided data as the Shared Data Merkle root.
  • the information (metacode) to fetch, combine, and collate fragmented data is stored and managed in the block chain Shared Data Merkle Tree.
  • the fragment dispersion map (DHT) 610 includes information about data nodes where digital fragment codes are stored in a distributed storage network, order of digital fragment codes, information about block nodes of a block-chain network in which metacodes are stored, do.
  • the block node groups each hash code corresponding to the fragment code and hashs 620 and then hashes 630 to match the hash root 640.
  • the fragment distribution map can quickly extract the corresponding fragment code through the hash index.
  • FIG. 7 and 8 are flowcharts illustrating an operation in which the nodes distribute security information.
  • step S710 the authentication node encrypts the personal information data registered by the individual (Encrypt).
  • step S720 the authentication node divides the encrypted personal information into several pieces (Split).
  • step S730 the authentication node, the data node of the distributed storage network, and the block node of the block-chain network distribute pieces of personal information to the random node (Distribute Split Data).
  • the block node distributes the meta code for extracting the distributed fragment.
  • step S740 the data node replicates the fragmented data to prevent loss (Clone Split Data). To a data node of the same group or another group.
  • a public key and a private key are automatically generated (S820).
  • the public key and the private key can be converted into a hash (S830). Encrypt all digital information such as personal sensitive personal information such as name, phone number, e-mail address, ID, password, credit card number, and biometric information.
  • the personal information is text in the user node or the authentication node (S840), the text itself is encrypted with the private key (S850). If the personal node is the file, the binary is read and encrypted using the private key (S845). If the personal information is text, the text generated by asymmetric encryption is generated through the generated public key and private key. If the personal information is an image or a file, it reads the binary and generates the bytecode encrypted by asymmetric encryption through the public key and the private key. Discard text or files that are the source of personal information after encryption.
  • the encrypted bytecodes in the authentication node are separated in units of bytes (S860). Encrypted personal information is divided into hundreds or thousands of pieces in bytes. A Split ID is generated by combining with the public key (S870).
  • the data node distributes and stores the split ID (S880). Personal information separated into fragments is distributed randomly to an unspecified number connected to a block chain as many as a number of pieces or a group of fragments.
  • the block node variably stores the hash index (S890). At this time, the distributed personal information has the index hash value, and the search speed is increased through the index information when the personal information is requested.
  • FIGS. 9 and 10 security information in which nodes are distributed and stored is illustrated.
  • the user's personal information, biometric images, and all other information are not present in the original or in any form, nor in their own devices. Only the nodes of the public participants (users) are fragmented and distributed. That is, participants divide and store a part of encrypted data separately from each other. For example, 100 cipher fragments may be composed of five sets in preparation for node corruption. The number of ciphers and the number of sets is merely an example, and the present invention is not limited thereto, and appropriate numerical values may be used according to the design to be implemented.
  • 11 and 12 are flowcharts illustrating an operation of collecting and recovering security information from nodes.
  • step S1110 the authentication node collects piece data registered by the individual from the node (Collect Split Data).
  • step S1120 the authentication node merges and decrypts the pieces (Merge / Decrypt).
  • step S1130 the authentication node compares the decrypted data with each other to perform authentication (Authenticate).
  • step S1140 the authentication node discards the data temporarily loaded into the memory (Destruct Data).
  • the BAASID member requests personal information for approval (S1210)
  • the pieces distributed on each node are collected through Allocation (e.g., meta-distributed map, fragment dispersion map) (S1230).
  • Allocation e.g., meta-distributed map, fragment dispersion map
  • the index information stored in the block chain is first searched to collect fragments of the requested personal information.
  • the fragment dispersion map can be retrieved by applying a hash index to the mecha code (S1220).
  • the collected fragments are combined in an encrypted state in the order stored in the fragment distribution map (S1240).
  • the position and order of the slices refer to the information in the index.
  • the combined personal information is restored through the private key (S1250).
  • the text is decrypted through the private key (S1270). The authenticity is checked by comparing the restored text (S1280). After the authentication is confirmed, the restored text is discarded (S1290).
  • the collected personal information is a binary file (S1265)
  • it is decrypted through the private key to generate an original file (S1275).
  • the restoration file is compared to confirm authenticity (S1280). After the authentication is confirmed, the restored original is discarded (S1290).
  • 13 and 14 illustrate security information in which nodes are distributed and stored.
  • the user's personal information, biometric images, and all other information are not present in the original or in any form, nor in their own devices. Only the nodes of the public participants (users) are fragmented and distributed. That is, participants divide and store a part of encrypted data separately from each other. For example, 100 cipher fragments may be composed of five sets in preparation for node corruption. The number of ciphers and the number of sets is merely an example, and the present invention is not limited thereto, and appropriate numerical values may be used according to the design to be implemented.
  • 15 is a diagram illustrating an example of a BAASID authentication integration service.
  • the BAASID authentication integration service combines and restores the digital fragment codes stored in the data nodes of the distributed storage network using the meta code distributed to the block nodes of the block chain network, which is an intermediary for tracking the digital fragment code, By providing the one-time access right according to the comparison result between the data received from the service provider and the restored data, the service provider does not need to provide a separate database and provides the user with one-time access privilege quickly and safely.
  • BAASID authorizes and certifies all certificates with the consent of an unspecified number of participants. This is based on participation by many of the block chains and adds more value to the different, unique and unique values. It is the same logic that individual information and privacy must be respected and protected.
  • BAASID's BaaS API will provide providers with a variety of services that will allow them to get away from this protection and the unique personal information management responsibilities and free them from complex and difficult privacy policies, practices and steps.
  • BAASID stores small pieces of unspecified number of nodes with different eigenvalues and random segregation distributions to protect individual originality and privacy, and to deal with encrypted electronic money (eg, BAS-BAS-token) And various certifications to create and preserve the proofs and trust books.
  • This is a proven proof of access (POA) that is one of the many proofs of the block chain. It means an active ecosystem that is often proven through a user's Internet service login or any other important activity on the Internet.
  • the BaaS-based Public Network Certification (COPN) API is based on these users' active and natural activities and is continuously connected to them.
  • the BAASID does not specifically distinguish whether the provider is a Blockchain based service or a Web or App based service. Every service requires a user (participant) and the users will benefit the provider in some form.
  • BAASID is such a prepared potential customer infrastructure and user, and is also the governance of certification bodies that deal with public certification together.
  • the individual is temporarily centralized by himself, and by his / her biometric authentication key, his / her split personalized information pieces (Split IDs) are retrieved from the public network authentication of the BAASID, decrypted and combined to end the one-time instant access It means to be discarded instantaneously.
  • Split IDs split personalized information pieces
  • FIG. 16 is a diagram illustrating generation and separation / division of Split IDs.
  • Participant's personal information is separated into thousands of pieces by Split Engine. All of these fragmented IDs are encrypted and stored in their own Split Blocks.
  • P2P peer-to-peer
  • FIG. 17 is a diagram illustrating participation and proof of split IDs.
  • Participants and unspecified number of participants will certify and participate in authentication while granting temporary one-time instant access to each other when accessing a specific Internet service.
  • BAASID interprets and suggests the same data storage problem and limitations of this most fundamental block chain in a totally new way.
  • the information required for BAASID's personal authentication is not stored in any server or user device even when the authentication is performed at the time of authentication, thereby basically blocking the hacking attempt.
  • BAASID does not exist in the world, even in its own device, in any form, either original or personal information, biometric images, or any other information. Only the nodes of the public participants (users) are stored in fragments and distributed (meaning that each piece of encrypted data is distributed separately to the participants).
  • the personal information of all the participants of the COPN (Certification of Public Network) is divided into thousands of pieces, which are stored randomly in several hundreds or thousands of unspecified individuals participating in the same split block. At this time, this encrypted and well-separated personal information piece is called a Split ID, and thousands of such fragmented pieces are stored separately in hundreds or thousands of split blocks.
  • FIG. 18 is a diagram illustrating temporal centralization based on an individual.
  • Split Block When you log in to the Internet service, sign up for membership, or perform other important activities such as shopping, remittance, or transfer of financial assets, Split Block temporarily stores Split ID fragments into your biometric authentication key (Fingerprints, irises, voices, etc.) or a password that you can remember (optional) and an OTP (One Time Password).
  • biometric authentication key Fingerprints, irises, voices, etc.
  • OTP One Time Password
  • 19 is a diagram illustrating a Split Block & Crypto Exchange Block.
  • the unique Split ID refers to the different encrypted data as it acknowledges the originality of each participant.
  • a block of one small participant group having such a split ID is called a split block.
  • all of these participants' public transaction books are stored in a separate Crypto exchange block.
  • 20 is a diagram comparing a general Internet service system and a BAASID BaaS infrastructure.
  • the COPN API of BAASID will be provided to all Internet service providers so that they can be easily applied by anyone. Internet service providers can use the cost of building and operating the database and operating the security system for the corresponding services more You do not have to spend.
  • FIG. 21 is a diagram illustrating instant access authentication
  • FIG. 22 is a diagram comparing general login / authentication with Instant Access.
  • the participant (user) of BAASID is a one-time access through temporary centralization (encryption -> fragmentation -> call -> combination -> decryption -> biometric authentication) through biometric authentication such as fingerprint or iris recognition at the moment With Instant Access, the user can access the service directly without membership or other authentication steps. This means that there is no need to miss a large number of customers who leave the membership phase in terms of service providers, and all the steps and hassles of establishing or accessing various databases for member login and other authentication steps and other authentication disappear.
  • the user can pass the authentication step most safely and quickly because the user himself / herself temporarily performs one-time instant authentication in the BAASID public network COPN (Certification of Public Network).
  • COPN Creation of Public Network
  • the provider's policy can not be enforced from the BAASID, but basically, the service using the API provided by BAASID is basically agreed to receive the encrypted electronic money, and the ecosystem can be created.
  • the participant of the BAASID can instantly access the corresponding service instantly and safely through the biometric authentication information or his / her selected authentication information combined by the Combination Engine . Particularly, since the hassle of the paid service after the click or the service to be joined is eliminated, the participant can see many advertisement pages and participate at the same time.
  • BAASID's public network authentication does not need to worry about losing all the authentication keys and various information needed for ID, PW, and other financial transactions because all of its important information and certificates are distributed and stored separately. . Also, if you can delete the electronic wallet or change the device, you can easily log in again and use the Internet service whenever you can biometrics.
  • BAASID is divided into several pieces of COPN (Certification of Public Network) and personal information, and is randomly stored in the participants' nodes. By encrypting and decrypting it, it is possible to temporarily log all Internet services It is easy, fast and secure to authenticate.
  • COPN Content of Public Network
  • FIG. 23 is a diagram illustrating an Instant Access API configuration diagram.
  • the authentication node is connected to the service node, the user node, the block-chain network, and the distributed storage network through a communication network.
  • the transceiver of the authentication node receives the authentication request message from the service node and collects the digital fragment codes from the data nodes of the distributed storage network using the meta code stored in the block node of the block chain network.
  • the metacode is distributed over at least two block nodes of the block-chain network.
  • the authentication node includes a storage unit for storing a meta-distributed map including information on a block node transmitting the meta-code.
  • the block node stores a metacode which is an intermediary of a digital sculptural code stored in a data node of a distributed storage network.
  • the stored metacode has a value different from the metacode stored in another block node of the block-chain network.
  • the data node stores a sculptural distribution map that includes a digital sculptural code and a metacode relationship for tracking the digital sculptural code.
  • the processing unit of the authentication node combines the collected digital fragment codes and reconstructs the digital code or restores the security information from the restored digital code.
  • the authentication result message includes a one-time access authority code.
  • the application installed in the service node changes the access right to the user by applying the one-time access right code.
  • the processing unit of the authentication node compares the digital code included in the authentication request message with the digital code restored by the processing unit or the result of comparing the security information included in the authentication request message with the security information restored by the processing unit, If so, the transceiver transmits the compensation token to the user node, the block node of the block-chain network, or the data node of the distributed storage network.
  • the reward token can be a virtual currency
  • the virtual currency is an electronic money that is not involved in a public institution such as a central bank or a financial institution, and includes an Internet coupon, a mobile coupon, a game money, and a password.
  • An example of a virtual currency may be a BAS token used in BaaS.
  • the service node is connected to the user node and the authentication node through a communication network.
  • the transmitting and receiving unit of the service node Upon receiving the access request message from the user node, the transmitting and receiving unit of the service node transmits the authentication request message to the authentication node. Upon receiving the authentication result message from the authentication node, the access node transmits the access right message to the user node.
  • the authentication node is connected to the block-chain network and the distributed storage network. The authentication node collects the digital piece codes from the data nodes of the distributed storage network using the meta code stored in the block node of the block-chain network, merges the collected digital piece codes, Restore to code.
  • the access request message is transmitted using the Fast IDentity Online (FIDO) protocol, and an OTP (One Time Password) generation and authentication method can be used.
  • FIDO Fast IDentity Online
  • OTP One Time Password
  • the FIDO protocol conveys various messages between the user node, the service node, and the authentication node.
  • the registration message the security information is inquired, verified, and registered through the authentication node, and the user is authenticated by the authentication message.
  • the service node Through the secure transaction confirmation message, the service node performs a function of confirming the contents of the transaction with the electronic signature to the user node for a specific transaction.
  • the access authority message may include a one-time access authority code.
  • the application installed at the user node applies a one-time access right code to change the access right to the user.
  • 24 is a diagram illustrating user authentication processing without a database in an online environment.
  • Sensitive personal information such as his / her name, phone number, e-mail address, passbook number, and credit card number is divided and stored in the most optimized node group so as not to leave an original of personal information.
  • Your identity card or any other information that identifies you or your credentials is not stored anywhere, and you are completely free from the risk of hacking or loss.
  • the plurality of components included in the node may be combined with each other and implemented with at least one module.
  • the components are connected to a communication path connecting a software module or a hardware module inside the device and operate organically with each other. These components communicate using one or more communication buses or signal lines.
  • a node may be implemented in logic circuitry by hardware, firmware, software, or a combination thereof, and may be implemented using a general purpose or special purpose computer.
  • the node may be implemented using a hardwired device, a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or the like.
  • the device may be implemented as a System on Chip (SoC) including one or more processors and controllers.
  • SoC System on Chip
  • a node may be mounted in a form of software, hardware, or a combination thereof, in a computing device having hardware components.
  • the computing device includes a communication device such as a communication modem for performing communication with various devices or wired / wireless communication networks, a memory for storing data for executing a program, a microprocessor for executing and calculating a program, Device. ≪ / RTI >
  • FIG. 8, FIG. 11, and FIG. 12 illustrate that the respective processes are sequentially executed.
  • the scope of the present invention is not limited to 7, 8, 11, and 12, or by executing one or more processes in parallel or by adding other processes.
  • the operations according to the present embodiments may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium.
  • a computer-readable medium represents any medium that participates in providing instructions to a processor for execution.
  • the computer readable medium may include program instructions, data files, data structures, or a combination thereof.
  • there may be a magnetic medium, an optical recording medium, a memory, and the like.
  • the computer program may be distributed and distributed on a networked computer system so that computer readable code may be stored and executed in a distributed manner. Functional programs, codes, and code segments for implementing the present embodiment may be easily deduced by programmers of the technical field to which the present embodiment belongs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

본 실시예들은 디지털 조각 코드를 추적하기 위한 매개체인 블록체인 네트워크의 블록 노드에 분산 저장된 메타 코드를 이용하여 분산 저장 네트워크의 데이터 노드에 분산 저장된 디지털 조각 코드를 조합하고 복원하고, 사용자 또는 서비스 제공자로부터 수신한 데이터와 복원된 데이터의 비교 결과에 따라 일회적 접근 권한을 제공함으로써, 서비스 제공자는 별도의 데이터베이스를 구비할 필요가 없고 사용자에게 신속하고 안전하게 일회성의 접근 권한을 제공할 수 있는 인증 시스템을 제공한다.

Description

블록체인을 이용한 일회성 접근 권한 부여 시스템
본 실시예가 속하는 기술 분야는 블록체인을 이용하여 일회성 접근 권한을 제공하는 시스템에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
'블록체인'은 해커로부터 위변조를 막기 위해 공공거래 장부를 통한 참여자 자산의 강력한 보안성과 영속성을 유지할 수 있는 기술이다. 블록체인은 분산 데이터베이스로서 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안된 지속적으로 성장하는 데이터 기록 리스트이다. 대규모의 노드들 사이에서 각 노드에 분산 저장된 장부의 데이터를 항상 최신 버전으로 유지할 수 있도록 하는 합의 수렴 알고리즘으로 볼 수 있다. 블록체인은 노드가 익명으로 실행되거나, 연결이 좋지 않거나, 심지어 신뢰할 수 없는 운영자가 참여하는 것도 가능하게 한다.
'인증'은 전자서명생성정보가 특정인에게 유일하게 속한다는 사실을 확인하고 이를 증명하는 행위이다. 인증 방식으로 지식기반 인증 방식, 소유기반 인증 방식, 특성기반 인증 방식 등이 있다. 지식기반 인증 방식은 아이디/패스워드, 아이핀 등을 이용하여 알고 있는 것을 확인하는 방식이다. 소유기반 인증 방식은 공인인증서, OTP 등을 이용하여 소유하는 물리적인 개체를 기반으로 인증하는 방식이다. 특성기반 인증 방식은 생체인증, 스마트서명 등을 이용하여 개체를 특정할 수 있는 특성을 기반으로 인증하는 방식이다. 특히, 생체기반 인증은 지문, 홍채, 얼굴 등 생물학적 특징과 음성, 서명 등과 같은 행위적 특징을 기반으로 사용자를 인증할 수 있다.
인터넷 서비스에는 수많은 인터넷 서비스 공급자(ISP)의 데이터베이스 서버 혹은 제3의 인증기관, 사용자의 디바이스 등에 다양한 형태의 개인 정보가 저장되고 사용되며 이를 기반으로 로그인, 각종 인증, 쇼핑, 금융 결제 등 인터넷상의 중요 행위가 끊임없이 일어난다. 탈중앙화를 지향하는 블록체인 서비스에도 다른 중앙화가 생겨나고 있는 한계가 있다.
도 1a를 참조하면, 지식기반 인증 방식은 인증 서버에 개인식별정보를 기록해야 한다. 이러한 인증 방식은 공격자가 인증 서버를 공격하면 개인식별정보가 유출되는 문제가 있고, 사용자의 수가 많아지면 데이터베이스의 성능에 무리를 주고 확장이 쉽지 않은 문제가 있다.
도 1b를 참조하면, 소유기반 인증 방식은 사용자가 인증토큰을 별도로 관리해야 한다. 이러한 인증 방식은 인증토큰을 분실할 우려가 있고, 공격자가 인증토큰을 탈취할 수 있는 문제가 있다.
도 1c를 참조하면, 특성기반 인증 방식은 사용자의 특성을 이용하므로, 별도의 인증토큰을 소유할 필요가 없고, 사용자의 고유한 생체정보 자체를 복제하기는 어렵다. 하지만, 생체정보에 관한 디지털 파일은 복제가 가능하다.
도 1d를 참조하면, 온라인에서는 서비스를 제공하기 위하여 사용자를 식별해야만 하고 이를 위해 인증을 받거나 처리해야 하는 개인, 기업, 기관 등이 존재하므로, 어떠한 방식을 사용하더라도 반드시 해당 정보를 수집하고 데이터베이스화하여 보관해야 한다. 다양한 내/외적인 요인, 즉, 관리자의 실수 또는 고의로 인한 유출과 해킹을 통해 유/무형의 막대한 피해를 양산하고 있는 실정이다.
따라서, 인증에 사용되는 생체정보 또는 기밀문서와 같은 보안이 요구되는 디지털 데이터를 저장하기 위한 추가적인 보안 방식이 필요하고, 유출과 해킹을 원천적으로 무의미하게 만드는 데이터베이스가 존재하지 않는 정보 처리 시스템을 구현할 필요가 있다.
본 발명의 실시예들은 디지털 조각 코드를 추적하기 위한 매개체인 블록체인 네트워크의 블록 노드에 분산 저장된 메타 코드를 이용하여 분산 저장 네트워크의 데이터 노드에 분산 저장된 디지털 조각 코드를 조합하고 복원하고, 사용자 또는 서비스 제공자로부터 수신한 데이터와 복원된 데이터의 비교 결과에 따라 일회적 접근 권한을 제공함으로써, 서비스 제공자는 별도의 데이터베이스를 구비할 필요가 없고 사용자에게 신속하고 안전하게 일회성의 접근 권한을 제공하는 데 발명의 주된 목적이 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
본 실시예의 일 측면에 의하면, 서비스 노드, 사용자 노드, 블록체인 네트워크 및 분산 저장 네트워크에 연결된 인증 노드에 있어서, 상기 서비스 노드로부터 인증 요청 메시지를 수신하고, 상기 블록체인 네트워크의 블록 노드에 저장된 메타 코드를 이용하여 상기 분산 저장 네트워크의 데이터 노드로부터 디지털 조각 코드들을 수집하는 송수신부, 및 상기 수집한 디지털 조각 코드들을 병합하여 디지털 코드로 복원하거나 상기 복원한 디지털 코드로부터 보안정보를 복원하는 처리부를 포함하며, 상기 처리부가 상기 인증 요청 메시지에 포함된 디지털 코드와 상기 처리부에 의해 복원된 디지털 코드를 비교하거나, 상기 인증 요청 메시지에 포함된 보안정보와 상기 처리부에 의해 복원된 보안정보를 비교한 결과에 따라 상기 송수신부는 상기 서비스 노드로 인증 결과 메시지를 전송하는 것을 특징으로 하는 인증 노드를 제공한다.
상기 인증 결과 메시지는 일회적 접근 권한 코드를 포함할 수 있다.
상기 처리부가 상기 인증 요청 메시지에 포함된 디지털 코드와 상기 처리부에 의해 복원된 디지털 코드를 비교하거나, 상기 인증 요청 메시지에 포함된 보안정보와 상기 처리부에 의해 복원된 보안정보를 비교한 결과가 일치하거나 기 설정된 유사 범위이면, 상기 송수신부는 상기 사용자 노드, 상기 블록체인 네트워크의 블록 노드, 또는 상기 분산 저장 네트워크의 데이터 노드로 보상 토큰을 전송할 수 있다.
상기 보상 토큰은 가상 화폐일 수 있다.
상기 메타 코드는 상기 블록체인 네트워크의 적어도 두 개의 블록 노드에 분산 보관될 수 있다.
상기 인증 노드는 상기 메타 코드를 전송하는 블록 노드에 관한 정보를 포함하는 메타 분산 맵을 저장하는 저장부를 포함할 수 있다.
상기 블록 노드는 상기 분산 저장 네트워크의 데이터 노드에 분산 저장된 디지털 조각 코드의 매개체인 메타 코드를 저장하며, 상기 저장된 메타 코드는 상기 블록체인 네트워크의 다른 블록 노드에 저장된 메타 코드와 상이한 값을 가질 수 있다.
상기 데이터 노드는 상기 디지털 조각 코드 및 상기 디지털 조각 코드를 추적하기 위한 메타 코드의 관계를 포함하는 조각 분산 맵을 저장할 수 있다.
본 실시예의 다른 측면에 의하면, 사용자 노드 및 인증 노드에 연결된 서비스 노드에 있어서, 상기 사용자 노드로부터 접근 요청 메시지를 수신하면 상기 인증 노드로 인증 요청 메시지를 전송하며, 상기 인증 노드로부터 인증 결과 메시지를 수신하면 상기 사용자 노드로 접근 권한 메시지를 전송하는 송수신부를 포함하며, 상기 인증 노드는 블록체인 네트워크 및 분산 저장 네트워크에 연결되며, 상기 블록체인 네트워크의 블록 노드에 저장된 메타 코드를 이용하여 상기 분산 저장 네트워크의 데이터 노드로부터 디지털 조각 코드들을 수집하고, 상기 수집한 디지털 조각 코드들을 병합하여 디지털 코드로 복원하는 것을 특징으로 하는 서비스 노드를 제공한다.
상기 접근 요청 메시지는 FIDO(Fast IDentity Online) 프로토콜을 이용하여 전송되며, OTP(One Time Password) 생성 및 인증 방식을 이용할 수 있다.
상기 접근 권한 메시지는 일회적 접근 권한 코드를 포함할 수 있다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 디지털 조각 코드를 추적하기 위한 매개체인 블록체인 네트워크의 블록 노드에 분산 저장된 메타 코드를 이용하여 분산 저장 네트워크의 데이터 노드에 분산 저장된 디지털 조각 코드를 조합하고 복원하고, 사용자 또는 서비스 제공자로부터 수신한 데이터와 복원된 데이터의 비교 결과에 따라 일회적 접근 권한을 제공함으로써, 서비스 제공자는 별도의 데이터베이스를 구비할 필요가 없고 사용자에게 신속하고 안전하게 일회성의 접근 권한을 제공할 수 있는 효과가 있다.
서비스 노드와 일회성 접근 권한 인터페이스(Instant Access API) 통하여 암호화, 분리, 분산 저장된 디지털 정보를 일회성으로 조합하거나 제한적으로 사용하기 때문에, 인증시 대조할 원본조차 그 어떤 서버나 사용자 디바이스에서도 저장하지 않아 부정한 목적의 유출이나 해킹을 원천적으로 무력화할 수 있고, 유출이나 해킹에 따른 기업, 산업, 사회적인 손실을 방지할 수 있는 효과가 있다.
여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.
도 1a 내지 도 1d는 기존의 인증 방식을 예시한 블록도이다.
도 2 및 도 3은 본 발명의 실시예들에 따른 노드들을 예시한 도면이다.
도 4는 본 발명의 실시예들에 따른 노드들이 수행하는 동작들을 예시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 블록체인의 노드가 관리하는 데이터 구조를 예시한 도면이다.
도 6은 본 발명의 실시예들에 따른 블록체인의 노드들과 분산 저장 네트워크의 노드들 간에 처리하는 데이터를 예시한 도면이다.
도 7 및 도 8은 본 발명의 실시예들에 따른 노드들이 보안 정보를 분산 저장하는 동작을 예시한 흐름도이다.
도 9 및 도 10은 본 발명의 실시예들에 따른 노드들이 분산 저장하는 보안 정보를 예시한 도면이다.
도 11 및 도 12는 본 발명의 실시예들에 따른 노드들이 보안 정보를 수집하여 복원하는 동작을 예시한 흐름도이다.
도 13 및 도 14는 본 발명의 실시예들에 따른 노드들이 수집하여 복원하는 보안 정보를 예시한 도면이다.
도 15는 BAASID 인증 통합 서비스를 예시한 도면이다.
도 16은 Split ID의 생성과 분리 분산을 예시한 도면이다.
도 17은 Split ID의 참여 및 증명을 예시한 도면이다.
도 18은 개인을 중심으로 하는 일시적 중앙화를 예시한 도면이다.
도 19는 Split Block & Crypto Exchange Block을 예시한 도면이다.
도 20은 일반 인터넷 서비스 시스템과 BAASID BAAS 인프라를 비교한 도면이다.
도 21은 Instant Access 인증을 예시한 도면이다.
도 22는 일반 로그인/인증과 Instant Access를 비교한 도면이다.
도 23은 Instant Access API 구성도를 예시한 도면이다.
도 24는 온라인 환경에서 데이터베이스 없이 사용자 인증 처리를 예시한 도면이다.
이하, 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하고, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다.
본 실시예들에 따른 노드들은 BAAS에 사용될 수 있다.
BAAS(바스)는 Blockchain as a Service로 불특정 다수의 인터넷 공급자들이 블록체인의 기반기술과 인프라를 손쉽게 빌려 쓸 수 있는 개념이다.
BAASID(바스아이디)는 BAAS를 구성하는 하나의 요소로서 발명을 통하여 실현하는 정보 처리 시스템 전체를 말한다
COPN은 Certification of Public Network의 줄임말로 인터넷 서비스 공급자의 데이터베이스 혹은 제3의 인증기관, 사용자 디바이스 등 모든 중앙화된 형태의 데이터베이스 혹은 스토리지가 아닌 공공의 네트워크상에서 노드들(참여자들)의 자발적 참여를 통해 자신들의 중요한 개인 정보의 분리된 다른 조각들을 서로 나누어 분산 저장하는 공공 네트워크 인프라(Infra)를 말한다.
Split ID는 다양한 형태(Text, image)의 개인 정보 등을 암호화하고 Split Engine을 통해 수천 개의 조각으로 데이터를 잘게 잘라 참여자와 가장 빠르고 최적화된 노드에 일부씩 각각 서로 다르게 분리 분산 저장하는 가장 작은 단위의 암호화된 데이터를 의미한다.
Split Block은 분리되어 쪼개진 Split ID가 참여자와 가장 빠르고 최적화된 노드들(불특정 참여자)에 서로 각각의 다른 Split ID들이 저장되어 하나의 참여자그룹을 이룬 작은 단위의 블록을 말한다.
Instant Access는 자신이 소속된 Split Block 내에 불특정 다수에게 각각 다르게 저장된 Split ID들을 호출하여 빠르고 안전하게 로그인, 임시 회원가입(Instant Membership), 결제 인증 등을 진행할 수 있는 1회성의 인스턴트 접근 권한을 말한다.
Hyper Confirm은 Instant Access를 통한 안전하고 손쉬운 인증을 통해 로그인과 임시회원 가입, 결제, 송금 등을 공급자의 데이터베이스나 제3의 인증기관, PG(Payment Gateway) 등의 개입 없이 공공 네트워크 인증(COPN)을 통해 진행하는 것을 말한다.
POA(Proof Of Access)는 불특정 다수의 인터넷 공급자, 서비스 제공자들이 BAASID(바스아이디)를 통하여 사용자 Instant Access가 이루어지면, 이에 대한 보상으로 일부 암호화된 전자 화폐 및 기타의 방법으로 각 노드 (데이터 보관 제공자)에게 지급하는 것을 말한다.
도 2 및 도 3은 노드들을 예시한 도면이다.
도 2를 참조하면, BAASID를 지원하는 특정 사이트에 패스워드 없이 로그인을 하려는 개인 사용자는 BAASID 개인정보 지갑 앱을 설치하고 있어야 한다. BAASID 네트워크의 라이트 노드(Light Node)가 되는 것이다. 로그인 하려는 사이트 또한 BAASID 인증 네트워크에 참여하는 라이트 노드(Light Node)가 되어야 한다. 라이트 노드는 머클트리의 이진트리 방식을 이용하여 블록데이터의 일부만 다운받는 방식이고, 모든 블록체인을 다운받는 풀노드(full node)가 있다.
로그인 페이지에서 사용자는 BAASID 로그인을 클릭하고 지문 등 생체 인증을 선택한다. 사이트는 사용자가 입력한 생체 정보와 지갑 앱 개인 해쉬값 정보를 BAASID에서 제공한 공개키로 암호화하고 BAASID 네트워크에 전송해 인증을 요청한다. BAASID Node는 개인 정보를 수신하고 개인 해쉬값으로 해당 개인의 인증 정보를 모아서 대조 작업을 진행한다. 승인 정보 일치 여부를 해당 사이트에 전송한다.
도 3을 참조하면, 사용자 노드(340) 및 서비스 노드(350)는 인증 노드(310)에 연결된다. 인증 노드(310)는 블록체인 네트워크와 분산 저장 네트워크에 연결된다. 블록체인 네트워크는 블록 노드들(321 ~ 325)을 포함하고, 분산 저장 네트워크는 데이터 노드들(331 ~ 335)을 포함한다. 도 3에 도시된 노드의 개수 및 연결 관계는 예시일 뿐이며 이에 한정되는 것은 아니고 구현되는 설계에 따라 적합한 개수의 노드들이 다양한 연결 관계를 형성할 수 있다. 인증 노드(310)가 블록 노드(321)로서 동작을 수행할 수 있고, 데이터 노드(331)로서 동작을 수행할 수도 있다. 노드들(인증 노드, 블록 노드, 데이터 노드 등)은 처리부, 송수신부, 및 저장부를 포함한다.
이하에서는 블록체인 네트워크에 대해 설명하기로 한다.
블록체인 네트워크는 데이터를 저장한 블록들이 상호 연결된 동등 계층 시스템(Peer to Peer)이다. 하나의 블록은 이전 블록의 해시 포인터를 갖고, 블록들은 단방향으로 연결될 수 있다. 각각의 블록들은 헤더와 바디로 구성될 수 있다. 블록체인은 트랜잭션 정보와 히스토리를 담고 있는 기록 원부(Ledger)라고 볼 수 있고, 노드들 간의 거래의 내용 및 순서에 대해 합의(consensus)를 이룰 수 있다.
예컨대, 지불인 갑이 특정 금액을 수취인 을에게 보낸다라는 거래 내용을 소프트웨어 앱(예컨대, 지갑앱 등)을 통해 블록체인 네트워크에 전송한다. 블록체인 네트워크의 노드들은 거래를 검증한 다음, 자신의 장부에 거래를 추가한다. 거래가 추가된 장부를 네트워크의 다른 노드들에 다시 전송한다.
블록의 헤더는 현재 블록의 해시, 이전 블록의 해시, 블록 생성 시간, 난이도와 관련된 정보(Bits), 블록 생성시의 난스(Nonce), 거래횟수, 블록 사이즈 등을 포함한다. 난스는 다른 블록의 내용과 함께 해시 함수로 들어가 해시 함수의 결과를 특정한 목표값 이하로 만들게 하는 숫자이다. 난이도, 타임스탬프, 난스는 채굴 경쟁과 관련된다.
블록의 바디는 거래내역과 머클트리를 포함한다. 머클트리는 해시트리 구조를 갖고, 거래 내역의 위/변조를 방지하기 위해 거래 내역을 해싱하고 이를 트리 구조로 만든다. 트리의 데이터를 수정하면 머클루트(요약정보) 값이 변경된다. 해시 함수는 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수이다. 본 실시예에서는 암호학적 해시함수 또는 비암호학적 해시함수가 적용될 수 있으며, 다양한 해시 알고리즘이 적용될 수 있다.
모든 블록체인은 거래기록을 동일하게 저장하여 위변조에 대한 강한 보안성을 제공한다. 이는 모두 같은 데이터를 가지고 있어 유저의 민감한 개인정보와 중요정보, 인증키 등을 저장하기에는 큰 무리가 있다.
이하에서는 분산 저장 네트워크에 대해 설명하기로 한다.
분산 저장 네트워크는 특정한 기능을 수행하는 복수의 모듈들로 구성된 프레임워크로 구현될 수 있다. 분산 저장 네트워크는 클러스터 또는 노드를 포함할 수 있다. 클러스터는 특정 기능을 수행하기 위해서 상호 연결된 여러 대의 컴퓨터 집합이고, 노드는 클러스터를 구성하는 개별 컴퓨터이다.
분산 저장 네트워크는 마스터 및 슬레이브 구조가 될 수 있다. 여기서 마스터 및 슬레이브 구조는 하나의 마스터 장치에 하나 이상의 슬레이브 장치가 연결된 구조이다. 하나의 마스터 장치에 연결된 하나 이상의 슬레이브 장치들이 대용량 데이터를 분산하여 저장하고 분산하여 처리한다.
분산 저장 네트워크는 대용량 데이터를 저장하기 위한 모듈과 대용량 데이터를 처리하기 위한 모듈을 포함할 수 있다. 다수의 데이터 노드와 네임 노드로 구성될 수 있고, 데이터노드는 실제 파일을 저장하고, 저장된 파일을 읽어서 전송하는 역할한다. 데이터 노드에 있는 파일 저장소는 일정한 크기를 가진 저장 공간으로 이루어져 있으며, 물리적으로 다른 서버에 있지만 논리적으로는 같은 데이터를 가지고 있는 복수의 데이터 세트를 갖는다. 분산 저장 네트워크는 자원을 관리할 수 있는 모듈을 추가로 포함할 수 있다.
이하에서는 인증 노드에 대해 설명하기로 한다.
인증 노드(310)는 블록체인 네트워크 및 분산 저장 네트워크에 연결된다.
인증 노드(310)의 처리부는 사용자 노드(340) 또는 서비스 노드(350)로부터 수신한 보안정보로부터 디지털 코드를 생성하고, 디지털 코드를 기 설정된 단위로 분할하여 디지털 조각 코드를 생성한다. 송수신부가 사용자 노드(340) 또는 서비스 노드(350)로부터 보안정보에 관한 등록 요청 메시지를 수신하면, 처리부는 디지털 조각 코드를 생성할 수 있다.
보안정보는 (i) 지문, 망막, 홍채, 얼굴, 혈관, 또는 이들의 조합으로 된 생체정보 또는 (ii) 기밀정보일 수 있다. 수신한 보안정보는 암호화되어 있고, 처리부는 암호화된 보안정보를 해독할 수 있다. 암호화된 보안정보는 사용자 노드에 설치된 애플리케이션에 관한 식별정보, 사용자 노드에 관한 식별정보, 사용자 식별정보, 인증키, 또는 이들의 조합을 포함할 수 있다. 처리부는 인증키를 이용하여 디지털 조각 코드를 암호화할 수 있다.
인증 노드(310)의 송수신부는 사용자 노드에 설치된 애플리케이션에 관한 식별정보, 사용자 노드에 관한 식별정보, 사용자 식별정보, 인증키, 또는 이들의 조합을 분산 저장 네트워크의 데이터 노드로 전송한다.
인증 노드(310)의 송수신부는 디지털 조각 코드를 분산 저장 네트워크의 적어도 두 개의 데이터 노드에 분산 저장하기 위해, 데이터 노드에 디지털 조각 코드를 전송한다. 전송된 디지털 조각 코드는 디지털 조각 코드를 추적하기 위한 매개체인 메타 코드를 이용하여 분산 저장된 데이터 노드들에서 추출된다.
디지털 조각 코드를 추적하기 위한 매개체인 메타코드는 블록체인 네트워크의 적어도 두 개의 블록 노드에 분산 보관된다. 처리부가 메타 코드를 생성하거나 송수신부가 분산 저장 네트워크의 데이터 노드로부터 메타 코드를 수신할 수 있다. 송수신부는 메타 코드를 블록체인 네트워크의 적어도 두 개의 블록 노드에 분산 저장하기 위해, 블록 노드로 메타 코드를 전송할 수 있다. 인증 노드(310)는 메타 코드를 수신하는 블록 노드에 관한 정보를 포함하는 메타 분산 맵을 저장하는 저장부를 포함할 수 있다.
인증 노드(310)의 송수신부는 분산 저장 네트워크의 적어도 하나의 데이터 노드에 분산된 데이터를 병합하기 위해, 분산 저장 네트워크의 적어도 두 개의 데이터 노드로부터 디지털 조각 코드를 수집한다. 송수신부는 블록체인 네트워크의 적어도 두 개의 블록 노드로부터 메타 코드를 수신한다. 송수신부가 사용자 노드(340) 또는 서비스 노드(350)로부터 디지털 코드 또는 보안정보에 관한 요청 메시지를 수신하면, 송수신부는 메타 코드를 이용하여 디지털 조각 코드를 수신한다.
인증 노드(310)의 처리부는 수집한 디지털 조각 코드를 병합하여 디지털 코드로 복원한다. 처리부는 인증키를 이용하여 디지털 조각 코드를 복호화한다. 처리부는 복원된 디지털 코드를 이용하여 요청 메시지에 따른 동작을 수행하거나 디지털 코드로부터 복원한 보안정보를 이용하여 요청 메시지에 따른 동작을 수행한다. 송수신부는 사용자 노드(340) 또는 서비스 노드(350)로 동작 수행 결과 메시지 또는 복원한 보안정보를 전송한다. 복원한 보안정보는 암호화되어 있고, 처리부는 암호화된 보안정보를 해독한다.
이하에서는 데이터 노드에 대해 설명하기로 한다.
분산 저장 네트워크의 데이터 노드(331)는 인증 노드(310)에 연결될 수 있고, 데이터 노드(332)는 블록 노드(322)에 연결될 수 있다. 데이터 노드가 인증 노드 또는 블록 노드의 기능을 수행할 수도 있다. 분산 저장 네트워크의 데이터 노드들(332, 333)은 그룹을 형성할 수 있다.
데이터 노드(332)의 송수신부는 인증 노드(310)로부터 디지털 조각 코드를 수신한다. 송수신부가 인증 노드(310)로부터 메타코드를 수신할 수 있다. 처리부가 메타 코드를 생성할 수 있다. 송수신부는 메타 코드를 인증 노드(310) 또는 블록체인 네트워크의 블록 노드(322)로 전송할 수 있다.
데이터 노드(332)의 저장부는 디지털 조각 코드를 저장한다. 저장부는 디지털 조각 코드 및 디지털 조각 코드를 추적하기 위한 메타 코드의 관계를 포함하는 조각 분산 맵을 저장한다. 조각 분산 맵은 (i) 분산 저장 네트워크에서 디지털 조각 코드가 저장된 데이터 노드에 관한 정보, (ii) 디지털 조각 코드의 순서, (iii) 메타 코드가 저장된 블록체인 네트워크의 블록 노드에 관한 정보, 또는 (iv) 이들의 조합을 포함한다.
데이터 노드(332)의 처리부는 조각 분산 맵을 기반으로 디지털 조각 코드를 추적한다. 데이터 노드(332)의 송수신부가 인증 노드로부터 메타코드를 수신할 수 있다. 인증 노드의 메타 분산 맵을 이용하여 매칭하는 메타코드를 수신한다. 조각 분산 맵은 메타코드가 저장된 블록 노드에 관한 정보를 포함할 수 있다. 대응하는 블록 노드로부터 메타코드를 수신할 수 있다. 조각 분산 맵에는 메타코드와 조각 코드(또는 조각 코드가 저장된 노드)가 매칭되어 있어, 조각 코드를 추출할 수 있다. 송수신부는 추적된 디지털 조각 코드를 인증 노드(310)로 전송한다.
송수신부는 사용자 노드에 설치된 애플리케이션에 관한 식별정보, 상기 사용자 노드에 관한 식별정보, 사용자 식별정보, 인증키, 또는 이들의 조합을 수신할 수 있다. 처리부는 사용자 노드에 설치된 애플리케이션에 관한 식별정보, 사용자 노드에 관한 식별정보, 사용자 식별정보, 인증키, 또는 이들의 조합을 이용하여 사용자 노드(또는 사용자)를 식별하여 식별한 사용자 노드(또는 사용자)에 대응하는 디지털 조각 코드를 추적한다. 즉, 사용자가 필요로 하는 디지털 조각 코드를 추적한다.
데이터 노드는 조각 분산 맵을 기반으로 동일 그룹 또는 다른 그룹에 속하는 다른 데이터 노드에 저장된 디지털 조각 코드의 복사본을 저장한다. 데이터 노드는 조각 분산 맵을 기반으로 동일 그룹에 속하는 다른 데이터 노드에 존재하는 디지털 조각 코드를 우선하여 탐색할 수 있다.
이하에서는 블록 노드에 대해 설명하기로 한다.
블록체인 네트워크의 블록 노드(321)는 인증 노드(310)에 연결될 수 있고, 블록 노드(322)는 데이터 노드(332)에 연결될 수 있다. 블록 노드가 인증 노드 또는 데이터 노드의 기능을 수행할 수도 있다.
블록 노드(322)의 송수신부는 인증 노드(310) 또는 분산 저장 네트워크의 데이터 노드(332)로부터 메타 코드를 수신한다.
블록 노드(322)의 저장부는 분산 저장 네트워크의 데이터 노드에 분산 저장된 디지털 조각 코드의 매개체인 메타 코드를 저장한다. 저장부는 트랜잭션 정보를 저장한다. 저장부는 해시 트리 구조를 이용하여 메타 코드를 저장할 수 있다.
블록 노드(322)의 처리부는 트랜잭션 정보를 블록체인 네트워크의 다른 블록 노드의 트랜잭션 정보와 동기화한다. 일반적인 블록체인은 거래 기록을 동일하게 저장하여 위/변조에 대한 강한 보안성을 제공하나 같은 데이터를 가지고 있어 유저의 민감한 개인 정보와 중요 정보, 인증키 등을 저장하기에는 큰 무리가 있다. 메타 코드는 블록체인 네트워크의 다른 블록 노드의 메타 코드와 상이한 값을 갖는다.
송수신부는 인증 노드(310) 또는 분산 저장 네트워크의 데이터 노드로 메타 코드(332)를 전송한다.
이하에서는 서비스 노드에 대해 설명하기로 한다.
노드(350)는 사용자에게 다양한 서비스를 제공하며, 인증 노드를 통해 사용자를 인증한다. 서비스 노드(350)는 사용자(340) 및 인증 노드(310)에 연결된다. 서비스 노드(350)의 송수신부는 인증 노드(310)로 인증 요청 메시지를 전송하고 결과 메시지를 수신한다. 송수신부는 기밀문서 등의 보안 데이터를 인증 노드에 요청하여 수신할 수 있다. 여기서 인증 노드(310)는 블록체인 네트워크 및 분산 저장 네트워크에 연결되며, 블록체인 네트워크의 블록 노드에 저장된 메타 코드를 이용하여 분산 저장 네트워크의 데이터 노드로부터 디지털 조각 코드들을 수집하고, 수집한 디지털 조각 코드들을 병합하여 디지털 코드로 복원한다.
도 4는 노드들이 수행하는 동작들을 예시한 도면이다.
참여자의 개인 정보는 Split Engine에 의해 수천 개의 조각으로 분리되며 이렇게 조각난 모든 Split ID는 암호화되어 수천 명의 자신이 속한 Split Block 안에서 각각 서로 다른 Split ID가 저장된다. 분리된 데이터의 Allocation의 값과 분리 분산된 조각들을 가장 빠른 노드와 데이터를 합리적으로 찾아내고 조합하여 마치 하나의 원본을 다운로드 받거나 복구하는 프로세스이다.
참여자들의 Split ID들은 Public Key와 함께 각각의 고유한 암호코드로 유지되며 고유한 Split data들은 BAASID의 가상화폐와 지갑, 그리고 거래를 통해 지속적으로 안전하게 유지된다. 참여자와 불특정 다수의 참여자들은 특정 인터넷 서비스에 접속할 경우 일시적인 1회성 인스턴트 액세스를 서로 부여해주면서 인증을 증명하고 참여한다.
BAASID의 참여자 개인인증에 필요한 정보는 인증시 대조할 원본조차 그 어떤 서버나 유저 디바이스에서도 저장하고 있지 않아 근본적으로 해킹 시도를 차단한다. BAASID는 유저의 개인 정보와 생체 이미지, 기타 모든 정보를 원본이나 하나의 어떤 형태로도, 자신의 디바이스에조차 이 세상에 존재하지 않는다. 오직 공공의 참여자들(사용자들)의 노드에 조각으로 분리 분산(참여자들에게 일부의 암호화된 데이터 조각을 각각 서로 분리하여 분산 저장한다는 의미) 저장되어 남겨질 뿐이다. 고유의 Split ID는 참여자들 각각의 독창성을 인정하듯이 서로 다른 암호화된 데이터를 말한다. 이러한 Split ID를 보유한 하나의 작은 참여자 그룹의 블록을 Split Block이라 한다. 참여자들의 모든 공공 거래 장부는 별도의 Crypto exchange Block에 저장된다.
BAASID의 COPN API는 모든 인터넷 서비스 공급자에게 제공되어 누구나 쉽게 적용할 수 있다. BAASID의 COPN(Certification of Public Network)를 적용하는 모든 인터넷 서비스 공급자는 별도의 데이터베이스 구축을 통해 개인 정보를 받거나 저장하지 않음으로 어떠한 해킹 시도와 유출에 대한 법률적인 리스크가 존재하지 않는다.
도 5는 블록체인의 노드가 관리하는 데이터 구조를 예시한 도면이고, 도 6는 블록체인의 노드들과 분산 저장 네트워크의 노드들 간에 처리하는 데이터를 예시한 도면이다.
BAASID는 Cryptocurrency 네트워크와 File 네트워크로 구성된다. Cryptocurrency는 거래 원장 관리를 위해 통상적인 블록 체인을 운영한다. 일반적인 암호화폐와 동일하게 Transaction Merkle Tree를 가지고 있다. 사용자가 등록한 개인정보는 File 네트워크에 수백, 수천 조각으로 쪼개지고 개별 노드들에 분산되며 개별 쪼개진(Shared) 데이터의 해시값들을 이용해서 DHT Map을 생성하여 Shared Data Merkle root로 사용한다. 인증 요청시 조각난 데이터를 가져오고 조합하고 대조하기 위한 정보(메타코드)는 블록체인 Shared Data Merkle Tree에 보관하고 관리된다.
조각 분산 맵(DHT, 610)은 분산 저장 네트워크에서 디지털 조각 코드가 저장된 데이터 노드에 관한 정보, 디지털 조각 코드의 순서, 메타 코드가 저장된 블록체인 네트워크의 블록 노드에 관한 정보, 또는 이들의 조합을 포함한다.
블록 노드는 조각 코드에 대응하는 각각의 해시 코드를 그룹화하여 해싱(620)하고 이를 다시 해싱(630)하여 해시루트(640)에 매칭한다. 조각 분산 맵은 해시 인덱스를 통해 대응하는 조각 코드를 신속하게 추출할 수 있다.
도 7 및 도 8은 노드들이 보안 정보를 분산 저장하는 동작을 예시한 흐름도이다.
단계 S710에서, 인증 노드는 개인이 등록한 개인 정보 데이터를 암호화 한다(Encrypt). 단계 S720에서 인증 노드는 암호화한 개인정보를 여러 조각으로 나눈다(Split). 단계 S730에서 인증 노드, 분산 저장 네트워크의 데이터 노드, 블록체인 네트워크의 블록 노드는 개인정보 조각을 랜덤 노드에 배포한다(Distribute Split Data). 블록 노드는 배포된 조각을 추출하기 위한 메타 코드를 분산 저장한다. 단계 S740에서 데이터 노드는 배포된 조각 데이터는 유실 방지를 위해 복제한다(Clone Split Data). 동일 그룹 또는 다른 그룹의 데이터 노드에 복제한다.
사용자 노드에서 BAASID 회원가입시 개인정보를 입력하면(S810), 공개키와 개인키가 자동 생성된다(S820). 공개키와 개인키를 해시로 변환할 수 있다(S830). 개인의 민감한 개인정보인 이름, 전화번호, 이메일주소, 아이디, 비밀번호, 신용카드번호, 생체인식정보 등을 모든 디지털 정보를 암호화한다.
사용자 노드 또는 인증 노드에서 개인정보가 텍스트일 경우에(S840) 텍스트 자체를 개인키로 암호화하고(S850) 파일일 경우 바이너리를 읽어서 개인키로 암호화한다(S845). 개인정보가 텍스트인 경우 생성된 공개키와 개인키를 통해 비대칭 암호화를 통해 암호화된 텍스트를 생성한다. 개인정보가 이미지나 파일일 경우 바이너리를 읽어서 공개키와 개인키를 통해 비대칭 암호화를 통해 암호화된 바이트코드 생성한다. 암호화 이후 개인정보 원본인 텍스트나 파일은 폐기한다.
인증 노드에서 암호화된 바이트코드는 바이트 단위로 분리한다(S860). 암호화된 개인정보는 Byte 단위로 수백 또는 수천개 조각으로 분리한다. 공개키와 조합해서 Split ID를 생성한다(S870).
데이터 노드는 Split ID를 분산 저장한다(S880). 조각으로 분리한 개인정보는 블록체인에 연결된 불특정 다수에게 조각 개수 또는 조각 그룹만큼 랜덤하게 분산 저장한다.
블록 노드는 해시 인덱스를 분산 저장한다(S890). 이때 분산된 개인정보는 인덱스 해시값을 가지게 되고, 개인정보 요청시 인덱스 정보를 통해 검색 속도를 높이게 된다. 도 9 및 도 10에서는 노드들이 분산 저장하는 보안 정보가 예시되어 있다.
사용자의 개인정보와 생체이미지, 기타 모든 정보를 원본이나 하나의 어떤 형태로도, 자신의 디바이스에도 존재하지 않는다. 오직 공공의 참여자들(사용자들)의 노드에 조각으로 분리 분산된다. 즉, 참여자들이 일부의 암호화된 데이터 조각을 각각 서로 분리하여 분산 저장한다. 예컨대, 노드 손상에 대비하여 100개의 암호 조각이 5개의 세트로 구성될 수 있다. 암호 조각의 개수 및 세트의 개수는 이는 예시일 뿐이며 이에 한정되는 것은 아니고 구현되는 설계에 따라 적합한 수치가 사용될 수 있다.
블록체인 기반의 개인정보 분리 분산 저장이기 때문에 조각된 개인정보를 승인없이 변경할 수 없으며, 불법적으로 개인정보를 변경한다고 해도 조합 과정에서 조각이 하나라도 일치하지 않을 경우 개인정보 복원이 불가능하다.
도 11 및 도 12는 노드들이 보안 정보를 수집하여 복원하는 동작을 예시한 흐름도이다.
단계 S1110에서, 인증 노드는 개인이 등록했던 조각 데이터를 노드로부터 수집한다(Collect Split Data). 단계 S1120에서 인증 노드는 조각들을 병합하고 복호화한다(Merge/Decrypt). 단계 S1130에서 인증 노드는 복호화한 데이터를 기준으로 비교하여 인증을 진행한다(Authenticate). 단계 S1140에서 인증 노드는 메모리에 일시적으로 로드한 데이터를 폐기한다(Destruct Data).
BAASID 회원이 승인을 위해 개인정보를 요청하면(S1210), Allocation(예컨대, 메타 분산 맵, 조각 분산 맵)의 통해 각 노드에 분산되어 있는 조각을 수집하게 된다(S1230). 암호화되고 분산된 개인정보에 대해 인증을 요청할 경우 블록체인에 저장된 인덱스 정보를 1차 검색해서 요청한 개인정보의 조각들을 모은다.
조각 분산 맵은 메카 코드에 해시 인덱스를 적용하여 조각 코드를 검색할 수 있다(S1220). 수집된 조각들은 조각 분산 맵에 저장된 순서를 통해 암호화된 상태로 조합하게 된다(S1240). 조각의 위치와 순서는 인덱스 내의 정보를 참조한다. 조합된 개인정보는 개인키를 통해 복원이 진행된다(S1250).
모아진 개인정보가 텍스트이면(S1260) 개인키를 통해 복호화해서 텍스트를 생성한다(S1270). 복원 텍스트를 비교하여 진위여부를 확인한다(S1280). 인증 확인 후 복원된 텍스트는 폐기한다(S1290).
모아진 개인정보가 바이너리 파일이면(S1265) 개인키를 통해 복호화해서 원본 파일을 생성한다(S1275). 복원 파일을 비교하여 진위여부를 확인한다(S1280). 인증 확인 후 복원된 원본은 폐기한다(S1290). 도 13 및 도 14에서는 노드들이 분산 저장하는 보안 정보가 예시되어 있다.
사용자의 개인정보와 생체이미지, 기타 모든 정보를 원본이나 하나의 어떤 형태로도, 자신의 디바이스에도 존재하지 않는다. 오직 공공의 참여자들(사용자들)의 노드에 조각으로 분리 분산된다. 즉, 참여자들이 일부의 암호화된 데이터 조각을 각각 서로 분리하여 분산 저장한다. 예컨대, 노드 손상에 대비하여 100개의 암호 조각이 5개의 세트로 구성될 수 있다. 암호 조각의 개수 및 세트의 개수는 이는 예시일 뿐이며 이에 한정되는 것은 아니고 구현되는 설계에 따라 적합한 수치가 사용될 수 있다.
블록체인 기반의 개인정보 분리 분산 저장이기 때문에 조각된 개인정보를 승인없이 변경할 수 없으며, 불법적으로 개인정보를 변경한다고 해도 조합 과정에서 조각이 하나라도 일치하지 않을 경우 개인정보 복원이 불가능하다.
도 15는 BAASID 인증 통합 서비스를 예시한 도면이다.
BAASID 인증 통합 서비스는 디지털 조각 코드를 추적하기 위한 매개체인 블록체인 네트워크의 블록 노드에 분산 저장된 메타 코드를 이용하여 분산 저장 네트워크의 데이터 노드에 분산 저장된 디지털 조각 코드를 조합하고 복원하고, 사용자 또는 서비스 제공자로부터 수신한 데이터와 복원된 데이터의 비교 결과에 따라 일회적 접근 권한을 제공함으로써, 서비스 제공자는 별도의 데이터베이스를 구비할 필요가 없고 사용자에게 신속하고 안전하게 일회성의 접근 권한을 제공한다.
BAASID는 불특정 다수의 참여자들의 동의로 모든 인증을 허가하고 증명한다. 이는 블록체인의 다수에 의한 참여를 기본으로 하며 서로 다른 독창적이고 고유한 값에 대해 더욱 그 가치를 부여하고 있다. 개인의 정보나 Privacy가 존중 받고 보호받아야 하는 것과 같은 논리다.
블록체인의 서비스 안에서도 여전히 개인의 정보가 제3의 기관이나 공급자의 서버에 저장되는 것은 블록체인 탄생 이전에 은행과 금융, 특정 집단의 중앙화와 다를 것이 없다. 하지만 여전히 블록체인은 그에 대한 답을 주거나 보장 하지 않는다.
BAASID의 BaaS API는 공급자들에게 이러한 보호와 독창적인 개인의 중요 정보관리 책임으로부터 벗어날 수 있게 해주며 복잡하고 난해한 개인 정보 정 책과 시행, 단계들로부터 해방될 수 있도록 다양한 서비스를 제공할 것이다.
BAASID는 개인의 독창성과 Privacy 보호를 위해 불특정 다수의 노드에 작은 조각들을 각각 서로 다른 고유 값과 랜덤 분리 분산을 통해 저장하고 암호화된 전자화폐(예, 바스-BAS-토큰)의 거래는 물론, 로그인과 각종 인증 등을 통해 그 증명과 신뢰의 장부를 생성하고 보존한다. 이는 블록체인의 여러 증명 방식 중 하나인 POA(Proof of Access)라는 증명방식으로 사용자의 인터넷 서비스 로그인이나 기타 모든 인터넷상의 중요행위들을 통해 수시로 증명되는 활용성과 액티브한 생태계를 의미한다.
BaaS 기반의 공공네트워크인증(Certification of public Network, COPN) API는 이러한 사용자의 활발하고 자연스러운 활동에 기반하여 이를 증명 하고 지속적으로 연결된다.
BAASID는 공급자가 Blockchain을 기반으로 하는 서비스인지 Web 혹은 App을 기반으로 하는 서비스인지를 특별히 구분하지 않는다. 모든 서비스에는 유저(참여자)를 필요로 하고 그 유저들은 공급자에게 어떠한 형태로든 이익을 가져다 주기 때문이다.
BAASID의 참여자들은 이미 공격적이고 잠재력 있는 고객이며 서로를 신뢰하고 증명해주는 안전한 로그인과 인증을 위한 데이터베이스 그 자체이기 때문 이다.
다시 말해 BAASID의 참여자들은 이미 강력한 보안성과 편리성으로 안전하고 빠르게 모든 웹사이트(BAASID의 API 적용기준)와 금융, 은행, 증권, 쇼핑 등에 액세스할 수 있기 때문이다. BAASID는 이러한 준비된 잠재적인 고객 인프라이며 사용자이며 공공 인증을 다 함께 처리하는 인증 주체의 거버넌스(Governance) 이기도 하다.
BAASID에서는 Blockchain 기반의 공공 네트워크 인증을 활용한 1회성 인스턴트 액세스를 통해 참여자와 공급자에게 보다 강력한 보안성과 쉽고 빠른 인증을 가능하게 할 수 있다.
특히, 개인의 민감한 개인 정보인 이름, 전화번호, 이메일 주소, 아이디, 비밀번호, 신용카드번호, 생체 인식 정보 등을 잘 개 쪼개고(Split) 이를 수백, 수천 개의 노드에 고유한 데이터 조각을 분리하고 각각 이를 다르게 분산 저장하면서 원본이 존재하지 않은 상태에서 인증과 로그인 등을 할 수 있도록 설계되었다.
이때 개인이 스스로 일시적인 중앙화가 되어 생체 인증키를 통해 BAASID의 공공 네트워크 인증으로부터 자신의 쪼개진 수천 개의 암호화된 개인 정보 조각(Split ID)들을 불러들여 복호화하고 조합하여 1회성 인스턴트 인증(Instant Access)이 끝나는 순간 즉시 폐기되는 것을 의미한다.
도 16은 Split ID의 생성과 분리 분산을 예시한 도면이다.
참여자의 개인 정보는 Split Engine에 의해 수천 개의 조각으로 분리되며 이렇게 조각난 모든 Split ID는 암호화되어 수천 명의 자신이 속한 Split Block 안에서 각각 서로 다른 Split ID가 저장된다.
이것은 P2P(Peer to Peer)의 가장 큰 장점인 분리된 데이터의 Allocation의 값과 분리 분산된 조각들을 가장 빠른 노드와 데이터를 합리적으로 찾아내고 조합하여 마치 하나의 원본을 다운로드 받거나 복구하는 프로세스와 흡사 하다.
도 17은 Split ID의 참여 및 증명을 예시한 도면이다.
참여자들의 Split ID들은 Public Key와 함께 각각의 고유한 암호 코드로 유지되며 이러한 고유한 Split data들은 BAASID의 암호화된 전자지갑 앱(Wallet APP), 그리고 끊임없는 거래를 통해 지속적으로 안전하게 유지될 것이다.
그리고 참여자와 불특정 다수의 참여자들은 특정 인터넷 서비스에 접속할 경우 일시적인 1회성 인스턴트 액세스를 서로 부여해주면서 인증을 증명하고 참여한다.
모든 블록체인은 거래 기록을 동일하게 저장하여 위변조에 대한 강한 보안성을 제공한다. 이는 모두 같은 데이터를 가지고 있어 유저의 민감한 개인 정보와 중요 정보, 인증키 등을 저장하기에는 큰 무리가 있다.
BAASID는 이러한 가장 근본적인 블록체인의 동일한 데이터 저장 문제와 한계를 전혀 새로운 시각으로 해석하고 제안한다.
BAASID의 참여자 개인인증에 필요한 정보는 인증시 대조할 원본조차 그 어떤 서버나 유저 디바이스에서도 저장하고 있지 않아 근본적으로 해킹 시도를 차단한다.
다시 말해, BAASID는 유저의 개인 정보와 생체 이미지, 기타 모든 정보를 원본이나 하나의 어떤 형태로도, 자신의 디바이스에 조차 이 세상에 존재하지 않는다. 오직 공공의 참여자들(사용자들)의 노드에 조각으로 분리 분산(참여자 들에게 일부의 암호화된 데이터 조각을 각각 서로 분리하여 분산 저장한다는 의미) 저장되어 남겨질 뿐이다.
COPN(Certification of Public Network)의 모든 참여자의 개인 정보는 수천 개의 조각으로 쪼개져 수백, 수천 명에게 랜덤하게 같은 Split Block에 참여 된 불특정 다수에게 각각 다른 암호화된 데이터 조각들을 나누어서 저장한다. 이때 이렇게 암호화되어 잘 개 쪼개진 개인 정보 조각을 Split ID라고 하며, 이렇게 잘게 쪼개진 수천 개의 조각은 다시 수백, 수천 명의 Split Block에 분리, 분산되어 저장된다.
실시간 인증 속도 등을 높이기 위해, 그리고 해킹 시도에 대한 블록 체인의 안정성을 기반으로 그 분산되는 노드 그룹(Split Block)의 노드 숫자와 Split ID의 용량, 분리 분산은 최적화될 것이다.
도 18은 개인을 중심으로 하는 일시적 중앙화를 예시한 도면이다.
인터넷 서비스에 로그인하거나 회원가입을 하거나 기타 쇼핑, 송금, 기타 금융자산의 이동 등의 중요 행위를 할 때 쪼개진 암호 조각들이 저장된 Split Block에서 다시 일시적으로 Split ID (split data) 조각들을 본인의 생체 인증키 (지문, 홍채, 보이스 등) 혹은 본인이 기억할 수 있는 패스워드(옵션)와 OTP(One Time Password)를 사용한 인스턴트 인증을 하며 원본은 즉시 폐기된다.
도 19는 Split Block & Crypto Exchange Block을 예시한 도면이다.
고유의 Split ID는 참여자들 각각의 독창성을 인정하듯이 서로 다른 암호화된 데이터를 말한다. 이러한 Split ID를 보유한 하나의 작은 참여자 그룹의 블록을 Split Block이라 한다. 또한, 이러한 참여자들의 모든 공공 거래 장부는 별도의 Crypto exchange Block에 저장된다.
도 20은 일반 인터넷 서비스 시스템과 BAASID BaaS 인프라를 비교한 도면이다.
BAASID의 COPN API는 모든 인터넷 서비스 공급자에게 제공되어 누구나 쉽게 적용할 수 있도록 할 것이며 인터넷 서비스 공급자는 해당하는 자사의 서비스를 위해 데이터베이스 구축과 운영, 보안 시스템의 구축과 운영 등을 위한 막대한 비용을 더 이상 지출하지 않아도 된다.
BAASID의 COPN(Certification of Public Network)를 적용하는 모든 인터넷 서비스 공급자는 별도의 데이터베이스 구축을 통해 개인 정보를 받거나 저장하지 않음으로 어떠한 해킹 시도와 유출에 대한 법률적인 리스크가 존재하지 않는다.
웹사이트와 APP은 지금 이 순간에도 계속 새로운 서비스가 시작되고 소멸된다. 그야말로 이 새로운 신규 서비스들은 끊임없이 생겨나고 회원가입과 로그인, 개인 인증이라는 가장 단순하고 막막한 큰 벽에 부딪치게 된다. 이것들에 사용되는 모든 기준은 BAASID와 그 속에서 통용되는 암호화된 전자화폐가 될 수 있다. 이는 서비스 공급자와 사용자가 끊임없이 교감하는 과정이자 결과이다.
도 21은 Instant Access 인증을 예시한 도면이고, 도 22는 일반 로그인/인증과 Instant Access를 비교한 도면이다.
BAASID의 참여자(유저)는 순간 본인의 지문이나 홍채인식 등의 생체 정보 인증을 통해 일시적인 중앙화를 통해 (암호화 -> 조각화 -> 호출 -> 조합 -> 복호화 -> 생체인증)을 통해 1회성의 접근 권한(Instant Access)을 가짐으로 유저 스스로가 바로 회원가입이나 기타 인증단계 없이 바로 서비스에 Access 할 수 있다. 이는 서비스 공급자 입장에서 회원가입단계에서 이탈하는 수많은 고객을 놓칠 일도 없으며 회원 로그인과 기타 인증의 단계, 기타 인증을 위한 각종의 데이터베이스를 구축하거나 Access 하는 모든 단계와 번거로움 모두 사라진다.
특히, 사용자 자신이 일시적으로 1회성의 인스턴트 인증을 BAASID의 공공 네트워크인 COPN(Certification of Public Network)에서 스스로 하기 때문에 가장 안전하고 빠르게 인증 단계를 지나갈 수 있다. 이로써 많은 웹사이트와 APP을 서핑할 수 있고 인증과 가입에 허비한 시간과 번거로움을 인터넷 서비스 공급자로부터 암호화된 전자화폐로 제공받을 수 있다. 물론, 제공자의 정책을 BAASID에서 강제할 수 없으나 기본적으로 BAASID가 제공하는 API를 사용하는 조건에는 암호화된 전자화폐를 제공받는 것에 기본 합의되어 생태계를 조성하는 서비스가 가능하다.
BAASID의 참여자는 조합 엔진(Combination Engine)에 의해 조합된 자신의 생체 인증 정보 혹은 자신이 선택한 본인 인증 정보 등을 통해 빠르게 안전하게 해당 서비스에 Instant Access를 하고 다양한 인터넷 서비스의 지면을 자유롭게 활보하고 다닐 수 있다. 특히 클릭 후 유료 서비스 혹은 가입해야 하는 서비스에 대한 번거로움이 제거되면서 참여자는 많은 광고 지면을 접하게 되고 동시에 많은 참여가 이루어질 수 있다.
BAASID의 공공 네트워크 인증에서는 자신의 모든 중요 정보와 인증서 등이 전부 조각으로 분리되어 분산 저장되어 있으므로 자신의 조합키로 ID나 PW 혹은, 기타 금융거래에서 필요한 모든 인증키나 각종 정보들을 잃어버려도 걱정할 필요가 없다. 또한 전자 지갑의 삭제, 혹은 디바이스의 변경에서도 생체 인증이 가능한 환경이라면 언제든 다시 쉽게 로그인하고 인터넷 서비스를 이용할 수 있다.
BAASID는 COPN(Certification of Public Network)와 개인 정보의 수천 개의 조각으로 쪼갠 후 참여자들의 노드에 랜덤으로 저장하고, 이를 암복호화 하여 일시적으로 모든 인터넷 서비스의 로그인(회원가입이 필요 없는)과 인터넷상의 중요 행위를 위해 쉽고 빠르고 안전하게 인증할 수 있다.
도 23은 Instant Access API 구성도를 예시한 도면이다.
인증 노드는 서비스 노드, 사용자 노드, 블록체인 네트워크 및 분산 저장 네트워크에 통신망을 통하여 연결된다.
인증 노드의 송수신부는 서비스 노드로부터 인증 요청 메시지를 수신하고, 블록체인 네트워크의 블록 노드에 저장된 메타 코드를 이용하여 분산 저장 네트워크의 데이터 노드로부터 디지털 조각 코드들을 수집한다. 메타 코드는 블록체인 네트워크의 적어도 두 개의 블록 노드에 분산 보관된다.
인증 노드는 메타 코드를 전송하는 블록 노드에 관한 정보를 포함하는 메타 분산 맵을 저장하는 저장부를 포함한다. 블록 노드는 분산 저장 네트워크의 데이터 노드에 분산 저장된 디지털 조각 코드의 매개체인 메타 코드를 저장하며, 저장된 메타 코드는 블록체인 네트워크의 다른 블록 노드에 저장된 메타 코드와 상이한 값을 갖는다. 데이터 노드는 디지털 조각 코드 및 디지털 조각 코드를 추적하기 위한 메타 코드의 관계를 포함하는 조각 분산 맵을 저장한다.
인증 노드의 처리부는 수집한 디지털 조각 코드들을 병합하여 디지털 코드로 복원하거나 복원한 디지털 코드로부터 보안정보를 복원한다.
인증 노드의 처리부가 인증 요청 메시지에 포함된 디지털 코드와 처리부에 의해 복원된 디지털 코드를 비교하거나, 인증 요청 메시지에 포함된 보안정보와 처리부에 의해 복원된 보안정보를 비교한 결과에 따라 송수신부는 서비스 노드로 인증 결과 메시지를 전송한다. 인증 결과 메시지는 일회적 접근 권한 코드를 포함한다. 서비스 노드에 설치된 애플리케이션은 일회적 접근 권한 코드를 적용하여 사용자에 대한 접근 권한을 변경한다.
인증 노드의 처리부가 인증 요청 메시지에 포함된 디지털 코드와 처리부에 의해 복원된 디지털 코드를 비교하거나, 인증 요청 메시지에 포함된 보안정보와 상기 처리부에 의해 복원된 보안정보를 비교한 결과가 일치하거나 기 설정된 유사 범위이면, 송수신부는 사용자 노드, 블록체인 네트워크의 블록 노드, 또는 분산 저장 네트워크의 데이터 노드로 보상 토큰을 전송한다.
보상 토큰은 가상 화폐일 수 있고, 가상 화폐는 중앙은행이나 금융기관 등 공인기관이 관여하지 않는 전자 화폐이며, 인터넷 쿠폰, 모바일 쿠폰, 게임 머니, 암호 화폐 등이 있다. 가상화폐의 예로는 BaaS에서 사용되는 BAS 토큰일 수 있다.
서비스 노드는 사용자 노드 및 인증 노드에 통신망을 통하여 연결된다.
서비스 노드의 송수신부는 사용자 노드로부터 접근 요청 메시지를 수신하면 인증 노드로 인증 요청 메시지를 전송하며, 인증 노드로부터 인증 결과 메시지를 수신하면 사용자 노드로 접근 권한 메시지를 전송한다. 인증 노드는 블록체인 네트워크 및 분산 저장 네트워크에 연결되며, 블록체인 네트워크의 블록 노드에 저장된 메타 코드를 이용하여 분산 저장 네트워크의 데이터 노드로부터 디지털 조각 코드들을 수집하고, 수집한 디지털 조각 코드들을 병합하여 디지털 코드로 복원한다.
접근 요청 메시지는 FIDO(Fast IDentity Online) 프로토콜을 이용하여 전송되며, OTP(One Time Password) 생성 및 인증 방식을 이용할 수 있다. FIDO 프로토콜은 사용자 노드, 서비스 노드, 및 인증 노드 간에 다양한 메시지를 전달한다. 등록 메시지를 통해 인증 노드를 통하여 보안 정보를 조회, 검증, 등록하고 인증 메시지로 사용자를 인증한다. 안전거래 확인 메시지를 통해 특정거래에 대해 서비스 노드가 사용자 노드에게 전자서명으로 거래내용을 확인하는 기능을 수행한다.
접근 권한 메시지는 일회적 접근 권한 코드를 포함할 수 있다. 사용자 노드에 설치된 애플리케이션은 일회적 접근 권한 코드를 적용하여 사용자에 대한 접근 권한을 변경한다.
도 24는 온라인 환경에서 데이터베이스 없이 사용자 인증 처리를 예시한 도면이다.
인터넷 서비스 공급자가 운영하는 데이터베이스가 존재하지 않아 완벽에 가까운 탈 중앙화를 실현할 수 있다. 자신의 이름, 전화번호, 이메일 주소, 통장번호, 신용카드 번호 등의 민감한 개인 정보 등을 쪼개어 가장 최적화된 노드 그룹에 분리, 분산 저장하여 개인 정보의 원본을 남기지 않는다. 자신의 신분증이나 기타 자신임을 확인하는 정보나 인증정보 등이 어디에도 저장되지 않음으로 해킹이나 분실의 위험에서 완전히 벗어난다. 제3의 인증기관의 서버, 유저의 모든 디바이스(Smart phone, PC, Tablet PC 등)에 어떠한 인증서나 그에 대한 원본 데이터가 존재하지 않는다. 이것은 인증서나 생체 인식 정보 등을 어디에도 저장하지 않는다.
다시 말해 쉽고 빠르게 바로 모든 공급자의 서비스를 이용할 수 있다는 뜻이며 이는 마케팅 비용과 다양한 회원가입 유도를 위한 고민에서 해방될 수 있음을 의미한다.
이는 인터넷 서비스 공급자 또는 사용자의 로그인 정보, 인증 정보를 보유하고 처리하여야 하는 곳에서는 막대한 서버 자원 및 관리적인 문제를 최소화할 수 있고, 모든 서비스 내의 행위에서 인증 단계를 획기적으로 단순화하고 신뢰할 수 있으므로, 자원의 재분배와 절감 등 향상된 정보 처리 시스템을 구현할 수 있는 중요한 전략을 제공한다.
노드에 포함된 복수의 구성요소들은 상호 결합되어 적어도 하나의 모듈로 구현될 수 있다. 구성요소들은 장치 내부의 소프트웨어적인 모듈 또는 하드웨어적인 모듈을 연결하는 통신 경로에 연결되어 상호 간에 유기적으로 동작한다. 이러한 구성요소들은 하나 이상의 통신 버스 또는 신호선을 이용하여 통신한다.
노드는 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합에 의해 로직회로 내에서 구현될 수 있고, 범용 또는 특정 목적 컴퓨터를 이용하여 구현될 수도 있다. 노드는 고정배선형(Hardwired) 기기, 필드 프로그램 가능한 게이트 어레이(Field Programmable Gate Array, FPGA), 주문형 반도체(Application Specific Integrated Circuit, ASIC) 등을 이용하여 구현될 수 있다. 또한, 장치는 하나 이상의 프로세서 및 컨트롤러를 포함한 시스템온칩(System on Chip, SoC)으로 구현될 수 있다.
노드는 하드웨어적 요소가 마련된 컴퓨팅 디바이스에 소프트웨어, 하드웨어, 또는 이들의 조합하는 형태로 탑재될 수 있다. 컴퓨팅 디바이스는 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신장치, 프로그램을 실행하기 위한 데이터를 저장하는 메모리, 프로그램을 실행하여 연산 및 명령하기 위한 마이크로프로세서 등을 전부 또는 일부 포함한 다양한 장치를 의미할 수 있다.
도 7, 도 8, 도 11, 및 도 12에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나 이는 예시적으로 설명한 것에 불과하고, 이 분야의 기술자라면 본 발명의 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 7, 도 8, 도 11, 및 도 12에 기재된 순서를 변경하여 실행하거나 또는 하나 이상의 과정을 병렬적으로 실행하거나 다른 과정을 추가하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
본 실시예들에 따른 동작은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능한 매체에 기록될 수 있다. 컴퓨터 판독 가능한 매체는 실행을 위해 프로세서에 명령어를 제공하는 데 참여한 임의의 매체를 나타낸다. 컴퓨터 판독 가능한 매체는 프로그램 명령, 데이터 파일, 데이터 구조 또는 이들의 조합을 포함할 수 있다. 예를 들면, 자기 매체, 광기록 매체, 메모리 등이 있을 수 있다. 컴퓨터 프로그램은 네트워크로 연결된 컴퓨터 시스템 상에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드, 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
본 실시예들은 본 실시예의 기술 사상을 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (10)

  1. 서비스 노드, 사용자 노드, 블록체인 네트워크 및 분산 저장 네트워크에 연결된 인증 노드에 있어서,
    상기 서비스 노드로부터 인증 요청 메시지를 수신하고, 상기 블록체인 네트워크의 블록 노드에 저장된 메타 코드를 이용하여 상기 분산 저장 네트워크의 데이터 노드로부터 디지털 조각 코드들을 수집하는 송수신부; 및
    상기 수집한 디지털 조각 코드들을 병합하여 디지털 코드로 복원하거나 상기 복원한 디지털 코드로부터 보안정보를 복원하는 처리부를 포함하며,
    상기 처리부가 상기 인증 요청 메시지에 포함된 디지털 코드와 상기 처리부에 의해 복원된 디지털 코드를 비교하거나, 상기 인증 요청 메시지에 포함된 보안정보와 상기 처리부에 의해 복원된 보안정보를 비교한 결과에 따라 상기 송수신부는 상기 서비스 노드로 인증 결과 메시지를 전송하는 것을 특징으로 하는 인증 노드.
  2. 제1항에 있어서,
    상기 인증 결과 메시지는 일회적 접근 권한 코드를 포함하는 것을 특징으로 하는 인증 노드.
  3. 제1항에 있어서,
    상기 처리부가 상기 인증 요청 메시지에 포함된 디지털 코드와 상기 처리부에 의해 복원된 디지털 코드를 비교하거나, 상기 인증 요청 메시지에 포함된 보안정보와 상기 처리부에 의해 복원된 보안정보를 비교한 결과가 일치하거나 기 설정된 유사 범위이면,
    상기 송수신부는 상기 사용자 노드, 상기 블록체인 네트워크의 블록 노드, 또는 상기 분산 저장 네트워크의 데이터 노드로 보상 토큰을 전송하는 것을 특징으로 하는 인증 노드.
  4. 제3항에 있어서,
    상기 보상 토큰은 가상 화폐인 것을 특징으로 하는 인증 노드.
  5. 제1항에 있어서,
    상기 메타 코드는 상기 블록체인 네트워크의 적어도 두 개의 블록 노드에 분산 보관되며,
    상기 메타 코드를 전송하는 블록 노드에 관한 정보를 포함하는 메타 분산 맵을 저장하는 저장부를 포함하는 것을 특징으로 하는 인증 노드.
  6. 제1항에 있어서,
    상기 블록 노드는 상기 분산 저장 네트워크의 데이터 노드에 분산 저장된 디지털 조각 코드의 매개체인 메타 코드를 저장하며, 상기 저장된 메타 코드는 상기 블록체인 네트워크의 다른 블록 노드에 저장된 메타 코드와 상이한 값을 갖는 것을 특징으로 하는 인증 노드.
  7. 제1항에 있어서,
    상기 데이터 노드는 상기 디지털 조각 코드 및 상기 디지털 조각 코드를 추적하기 위한 메타 코드의 관계를 포함하는 조각 분산 맵을 저장하는 것을 특징으로 하는 인증 노드.
  8. 사용자 노드 및 인증 노드에 연결된 서비스 노드에 있어서,
    상기 사용자 노드로부터 접근 요청 메시지를 수신하면 상기 인증 노드로 인증 요청 메시지를 전송하며, 상기 인증 노드로부터 인증 결과 메시지를 수신하면 상기 사용자 노드로 접근 권한 메시지를 전송하는 송수신부를 포함하며,
    상기 인증 노드는 블록체인 네트워크 및 분산 저장 네트워크에 연결되며, 상기 블록체인 네트워크의 블록 노드에 저장된 메타 코드를 이용하여 상기 분산 저장 네트워크의 데이터 노드로부터 디지털 조각 코드들을 수집하고, 상기 수집한 디지털 조각 코드들을 병합하여 디지털 코드로 복원하는 것을 특징으로 하는 서비스 노드.
  9. 제8항에 있어서,
    상기 접근 요청 메시지는 FIDO(Fast IDentity Online) 프로토콜을 이용하여 전송되며, OTP(One Time Password) 생성 및 인증 방식을 이용하는 것을 특징으로 하는 서비스 노드.
  10. 제8항에 있어서,
    상기 접근 권한 메시지는 일회적 접근 권한 코드를 포함하는 것을 특징으로 하는 서비스 노드.
PCT/KR2018/016535 2017-12-21 2018-12-21 블록체인을 이용한 일회성 접근 권한 부여 시스템 WO2019125081A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019529645A JP2020507143A (ja) 2017-12-21 2018-12-21 ブロックチェーンを用いた一回性のアクセス権限付与システム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2017-0177339 2017-12-21
KR20170177339 2017-12-21
KR10-2018-0130401 2018-10-30
KR1020180130401A KR20190075793A (ko) 2017-12-21 2018-10-30 블록체인을 이용한 일회성 접근 권한 부여 시스템

Publications (1)

Publication Number Publication Date
WO2019125081A1 true WO2019125081A1 (ko) 2019-06-27

Family

ID=66993675

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/016535 WO2019125081A1 (ko) 2017-12-21 2018-12-21 블록체인을 이용한 일회성 접근 권한 부여 시스템

Country Status (1)

Country Link
WO (1) WO2019125081A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110336813A (zh) * 2019-07-02 2019-10-15 北京启迪区块链科技发展有限公司 一种访问控制方法、装置、设备及存储介质
CN110414268A (zh) * 2019-07-23 2019-11-05 北京启迪区块链科技发展有限公司 访问控制方法、装置、设备及存储介质
CN111431867A (zh) * 2020-03-06 2020-07-17 杭州云象网络技术有限公司 一种基于区块链BaaS平台的节点接入方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002073566A (ja) * 2000-08-31 2002-03-12 Sony Corp 個人認証適用データ処理システム、個人認証適用データ処理方法、および情報処理装置、並びにプログラム提供媒体
US20100094957A1 (en) * 2008-10-15 2010-04-15 Patentvc Ltd. Methods and systems for fast segment reconstruction
KR20170010787A (ko) * 2014-05-13 2017-02-01 클라우드 크라우딩 코포레이션 분산된 보안 데이터 저장 및 스트리밍 매체 콘텐트의 전송
KR101727525B1 (ko) * 2016-09-05 2017-04-17 주식회사 스케일체인 블록체인 기반 분산 저장 방법 및 이를 이용한 장치
US20170230375A1 (en) * 2016-02-10 2017-08-10 Bank Of America Corporation System for centralized control of secure access to process data network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002073566A (ja) * 2000-08-31 2002-03-12 Sony Corp 個人認証適用データ処理システム、個人認証適用データ処理方法、および情報処理装置、並びにプログラム提供媒体
US20100094957A1 (en) * 2008-10-15 2010-04-15 Patentvc Ltd. Methods and systems for fast segment reconstruction
KR20170010787A (ko) * 2014-05-13 2017-02-01 클라우드 크라우딩 코포레이션 분산된 보안 데이터 저장 및 스트리밍 매체 콘텐트의 전송
US20170230375A1 (en) * 2016-02-10 2017-08-10 Bank Of America Corporation System for centralized control of secure access to process data network
KR101727525B1 (ko) * 2016-09-05 2017-04-17 주식회사 스케일체인 블록체인 기반 분산 저장 방법 및 이를 이용한 장치

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110336813A (zh) * 2019-07-02 2019-10-15 北京启迪区块链科技发展有限公司 一种访问控制方法、装置、设备及存储介质
CN110336813B (zh) * 2019-07-02 2021-08-17 北京启迪区块链科技发展有限公司 一种访问控制方法、装置、设备及存储介质
CN110414268A (zh) * 2019-07-23 2019-11-05 北京启迪区块链科技发展有限公司 访问控制方法、装置、设备及存储介质
CN111431867A (zh) * 2020-03-06 2020-07-17 杭州云象网络技术有限公司 一种基于区块链BaaS平台的节点接入方法
CN111431867B (zh) * 2020-03-06 2022-04-08 杭州云象网络技术有限公司 一种基于区块链BaaS平台的节点接入方法

Similar Documents

Publication Publication Date Title
KR20190075793A (ko) 블록체인을 이용한 일회성 접근 권한 부여 시스템
KR102227685B1 (ko) 블록 체인 네트워크에서 민감 데이터 요소를 관리하는 방법
US20190311148A1 (en) System and method for secure storage of electronic material
TWI578749B (zh) 用於遷移金鑰之方法及設備
WO2019199288A1 (en) System and method for secure storage of electronic material
US20200036531A1 (en) Authentication Method For A Client Over A Network
CN107733933B (zh) 一种基于生物识别技术的双因子身份认证的方法及系统
WO2020189927A1 (ko) 블록체인 네트워크를 이용하여 사용자의 아이덴티티를 관리하는 방법 및 서버, 그리고, 블록체인 네트워크 기반의 사용자 아이덴티티를 이용하여 사용자를 인증하는 방법 및 단말
WO2019125081A1 (ko) 블록체인을 이용한 일회성 접근 권한 부여 시스템
CN111066019A (zh) 处理存储在区块链网络中的数据元素
WO2019125041A1 (ko) 블록체인을 이용한 개인정보 분리 후 분산저장을 통한 인증 시스템
JP7151928B2 (ja) 認証サーバ、認証サーバの制御方法及びプログラム
WO2020141782A1 (ko) 블록체인 네트워크를 이용하여 사용자의 아이덴티티를 관리하는 방법 및 서버, 그리고, 블록체인 네트워크 기반의 사용자 아이덴티티를 이용하여 사용자를 인증하는 방법 및 단말
Ulybyshev et al. (WIP) blockhub: Blockchain-based software development system for untrusted environments
WO2019125069A1 (ko) 블록체인을 이용한 개인정보 분리 후 조합을 통한 인증 시스템
Krishnasamy et al. An efficient data flow material model based cloud authentication data security and reduce a cloud storage cost using Index-level Boundary Pattern Convergent Encryption algorithm
AU2018100503A4 (en) Split data/split storage
JP7124988B2 (ja) 認証サーバ、認証システム、認証サーバの制御方法及びプログラム
JP4657706B2 (ja) 権限管理システム、認証サーバ、権限管理方法および権限管理プログラム
WO2020235733A1 (ko) 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법
WO2023095967A1 (ko) 블록체인 기반의 did 서비스, ipfs 기반의 데이터 공유 기술, 및 개인키 분산 저장 기술이 결합된 비대면 대용량 문서 접근 시스템
WO2022107949A1 (ko) 디지털 id 보관 및 연계 서비스 모델
WO2021025403A2 (ko) 보안키 관리 방법 및 보안키 관리 서버
Santos et al. Medical Systems Data Security and Biometric Authentication in Public Cloud Servers
Kankal et al. An adaptive authentication based on blockchain for bigdata hadoop framework

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2019529645

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 18892984

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

Country of ref document: EP

Kind code of ref document: A1