KR20230069554A - Method of communicationg using multiple secure channel and device implementing thereof - Google Patents
Method of communicationg using multiple secure channel and device implementing thereof Download PDFInfo
- Publication number
- KR20230069554A KR20230069554A KR1020210155682A KR20210155682A KR20230069554A KR 20230069554 A KR20230069554 A KR 20230069554A KR 1020210155682 A KR1020210155682 A KR 1020210155682A KR 20210155682 A KR20210155682 A KR 20210155682A KR 20230069554 A KR20230069554 A KR 20230069554A
- Authority
- KR
- South Korea
- Prior art keywords
- user device
- public key
- block
- user
- information
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 238000004891 communication Methods 0.000 claims abstract description 41
- 230000008569 process Effects 0.000 claims description 51
- 238000003860 storage Methods 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 20
- 238000004458 analytical method Methods 0.000 description 15
- 230000009471 action Effects 0.000 description 8
- 239000000284 extract Substances 0.000 description 8
- 230000033001 locomotion Effects 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 238000012795 verification Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 210000001747 pupil Anatomy 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000037303 wrinkles Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 235000015243 ice cream Nutrition 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 241001516908 Metabus Species 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 210000004087 cornea Anatomy 0.000 description 1
- 239000002537 cosmetic Substances 0.000 description 1
- 239000006071 cream Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000005021 gait Effects 0.000 description 1
- 230000037308 hair color Effects 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0827—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/3033—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to pseudo-prime or prime number generation, e.g. primality test
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Storage Device Security (AREA)
Abstract
Description
본 발명은 다중 암호화 채널을 이용한 통신 방법 및 이를 구현하는 장치에 관한 기술이다.The present invention relates to a communication method using multiple encryption channels and an apparatus implementing the same.
블록체인은 정보의 내용이나 유통 과정의 위조 또는 변조가 불가능한 블록들을 연결하여 정보의 신뢰성을 제공할 수 있다. 따라서 블록체인을 이용하여 정보를 생성하고 검증하는 기술에 대한 관심이 증대되고 있다. Blockchain can provide reliability of information by connecting blocks that cannot be falsified or tampered with in the contents or distribution process of information. Therefore, interest in technology for generating and verifying information using blockchain is increasing.
또한, 가상의 공간에서 현실 세계의 여러 경제, 사회, 문화적 활동에 대응하는 행동들을 수행할 수 있는 패러다임으로 메타버스(Metaverse)가 제시되고 있다.In addition, the metaverse is proposed as a paradigm that can perform actions corresponding to various economic, social, and cultural activities in the real world in a virtual space.
그러나, 블록체인 및 메타버스는 모두 온라인 상에서 이루어지고 있으므로 해킹 가능성이 발생한다. 따라서, 이들 장치들 사이에서 안전하게 암호화를 수행하면서도 편리한 방식의 암호화 기술이 필요하다. However, since both blockchain and metaverse are conducted online, the possibility of hacking arises. Therefore, there is a need for an encryption technology in a convenient method while safely performing encryption between these devices.
본 명세서는 전술한 문제점을 해결하기 위한 것으로, 장치들 사이의 신뢰성있는 정보를 교환할 수 있도록 한다. The present specification is intended to solve the above problems, and allows reliable information to be exchanged between devices.
또한, 본 명세서는 사용자의 생체 정보를 반영하여 암호화를 수행함으로써 사용자의 편의성을 향상시키고자 한다. In addition, the present specification is intended to improve user convenience by performing encryption by reflecting the user's biometric information.
또한, 본 명세서는 장치들의 암호화 과정을 다중으로 수행하여 해킹으로부터 보안을 유지할 수 있도록 한다. In addition, the present specification allows devices to perform multiple encryption processes to maintain security from hacking.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있다. The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention not mentioned above can be understood by the following description.
본 발명의 일 실시예에 의한 방법은, 사용자 장치가 사용자의 제1생체 정보를 이용하여 1차 암호화키 및 이에 대응하는 1차 공개키를 생성하여 저장하는 단계와 사용자 장치가 사용자의 제2생체 정보를 이용하여 2차 암호화키 및 이에 대응하는 2차 공개키를 생성하여 저장하는 단계와, 사용자 장치는 통신 대상인 메타버스 서버 또는 판매자 장치의 1차 공개키를 이용하여 2차 공개키 및 랜덤 넘버를 암호화한 제1블록의 식별정보를 메타버스 서버 또는 판매자 장치에게 전송하는 단계와 사용자 장치가 메타버스 서버 또는 판매자 장치로부터 수신한 제2블록의 식별정보를 이용하여 제2블록을 사용자 장치의 2차 암호화키로 복호화하여 랜덤 넘버를 확인하는 단계와 사용자 장치는 메타버스 서버 또는 판매자 장치를 신뢰성있는 통신 상대 장치로 설정하고 데이터 또는 블록의 식별정보를 송수신하는 단계를 포함한다.The method according to an embodiment of the present invention includes the steps of generating and storing, by a user device, a primary encryption key and a primary public key corresponding thereto using first biometric information of a user; Generating and storing a secondary encryption key and a corresponding secondary public key using information, and the user device uses the primary public key of the metaverse server or seller device to communicate with the secondary public key and random number Transmitting the identification information of the encrypted first block to the metaverse server or seller device and the user device using the identification information of the second block received from the metaverse server or seller device to convert the second block to the second block of the user device. Decryption using the primary encryption key to confirm the random number; and the user device setting the metaverse server or seller device as a reliable communication counterpart device and transmitting/receiving data or block identification information.
본 발명의 일 실시예에 의한 사용자 장치는 1차 암호화키 및 이에 대응하는 1차 공개키와 2차 암호화키 및 이에 대응하는 2차 공개키를 저장하는 저장부와 메타버스 서버, 판매자 장치 및 블록체인 노드들과 통신하는 통신부와 저장부와 통신부를 제어하는 제어부를 포함한다. A user device according to an embodiment of the present invention is a storage unit for storing a primary encryption key, a primary public key corresponding thereto, a secondary encryption key and a secondary public key corresponding thereto, a metaverse server, a seller device, and a block It includes a communication unit that communicates with the chain nodes and a control unit that controls the storage unit and the communication unit.
본 발명의 일 실시예에 의한 사용자 장치는 사용자의 제1생체 정보를 이용하여 1차 암호화키 및 이에 대응하는 1차 공개키를 생성하여 저장부에 저장하고, 사용자의 제2생체 정보를 이용하여 2차 암호화키 및 이에 대응하는 2차 공개키를 생성하여 저장부에 저장한다. The user device according to an embodiment of the present invention generates and stores a primary encryption key and a primary public key corresponding thereto using the user's first biometric information, stores it in a storage unit, and uses the user's second biometric information A secondary encryption key and a corresponding secondary public key are generated and stored in a storage unit.
본 발명의 일 실시예에 의한 사용자 장치는 통신 대상인 메타버스 서버 또는 판매자 장치의 1차 공개키를 이용하여 2차 공개키 및 랜덤 넘버를 암호화한 제1블록을 생성하여 블록체인에 추가하는 프로세스를 수행한다. The user device according to an embodiment of the present invention uses the primary public key of the metaverse server or seller device to be communicated with to create a first block that encrypts the secondary public key and random number and adds it to the blockchain. carry out
본 발명의 일 실시예에 의한 사용자 장치는 메타버스 서버 또는 판매자 장치로부터 수신한 제2블록의 식별정보를 이용하여 제2블록을 사용자 장치의 2차 암호화키로 복호화하여 랜덤 넘버를 확인하여 메타버스 서버 또는 판매자 장치를 신뢰성있는 통신 상대 장치로 설정하고 메타버스 서버 또는 판매자 장치와 데이터 또는 블록의 식별정보를 송수신한다. The user device according to an embodiment of the present invention uses the identification information of the second block received from the metaverse server or the seller device to decrypt the second block with the secondary encryption key of the user device and check the random number to the metaverse server Alternatively, the seller device is set as a reliable communication counterpart device, and data or block identification information is transmitted and received with the metaverse server or seller device.
본 발명의 실시예들을 적용할 경우 장치들 사이의 신뢰성있는 정보를 교환할 수 있다. When the embodiments of the present invention are applied, reliable information can be exchanged between devices.
또한, 본 발명의 실시예들을 적용할 경우 사용자의 생체 정보를 반영하여 암호화를 수행함으로써 사용자의 편의성을 향상시킨다. In addition, when the embodiments of the present invention are applied, user convenience is improved by performing encryption by reflecting the user's biometric information.
또한, 본 발명의 실시예들을 적용할 경우 장치들의 암호화 과정을 다중으로 수행하여 해킹으로부터 보안을 유지할 수 있다. In addition, when the embodiments of the present invention are applied, security from hacking can be maintained by performing multiple encryption processes on devices.
본 발명의 효과는 전술한 효과에 한정되지 않으며, 본 발명의 구성에서 본 발명의 다양한 효과들이 쉽게 도출될 수 있다. The effects of the present invention are not limited to the above-mentioned effects, and various effects of the present invention can be easily derived from the configuration of the present invention.
도 1은 본 발명의 일 실시예에 의한 각각의 장치들의 상호 작용을 보여주는 도면이다.
도 2는 본 발명의 일 실시예에 의한 각각의 장치들이 다중 암호화 채널을 이용하는 과정을 보여주는 도면이다.
도 3은 본 발명의 일 실시예에 의한 1차 암호화키를 생성하는 과정을 보여주는 도면이다.
도 4는 본 발명의 일 실시예에 의한 2차 암호화키를 만드는 과정을 보여주는 도면이다.
도 5는 본 발명의 일 실시예에 의한 2차 암호화키를 생성하는 과정을 보여주는 도면이다.
도 6 내지 도 7은 본 발명의 일 실시예에 의한 암호화된 정보를 이용하여 장치들이 안전하게 정보를 교환하는 과정을 보여주는 도면이다.
도 8은 본 발명의 일 실시예에 의한 장치들 사이의 암호화 메시지의 구성을 보여주는 도면이다.
도 9는 본 발명의 일 실시예에 의한 암호화키를 생성하는 3차원 신호 스페이스를 보여주는 도면이다.
도 10은 본 발명의 일 실시예에 의한 가상 세계의 공간을 분할하는 예를 보여주는 도면이다.
도 11은 본 발명의 일 실시예에 의한 사용자 장치의 구성을 보여주는 도면이다.1 is a diagram showing the interaction of each device according to an embodiment of the present invention.
2 is a diagram showing a process in which each device uses multiple encryption channels according to an embodiment of the present invention.
3 is a diagram showing a process of generating a primary encryption key according to an embodiment of the present invention.
4 is a diagram showing a process of generating a secondary encryption key according to an embodiment of the present invention.
5 is a diagram showing a process of generating a secondary encryption key according to an embodiment of the present invention.
6 and 7 are diagrams illustrating a process of securely exchanging information between devices using encrypted information according to an embodiment of the present invention.
8 is a diagram showing the configuration of an encryption message between devices according to an embodiment of the present invention.
9 is a diagram showing a three-dimensional signal space for generating an encryption key according to an embodiment of the present invention.
10 is a diagram showing an example of dividing a space of a virtual world according to an embodiment of the present invention.
11 is a diagram showing the configuration of a user device according to an embodiment of the present invention.
본 발명의 실시예를 명확하게 설명하기 위해서 도면을 참조할 수 있으며, 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다. In order to clearly describe the embodiments of the present invention, reference may be made to the drawings, parts irrelevant to the description are omitted, and the same reference numerals are assigned to the same or similar components throughout the specification.
어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 다른 구성 요소가 "개재"되거나, 각 구성 요소가 다른 구성 요소를 통해 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.When an element is described as being “connected,” “coupled to,” or “connected” to another element, that element is or may be directly connected to that other element, but intervenes between each element. It will be understood that may be "interposed", or each component may be "connected", "coupled" or "connected" through other components.
본 명세서에서 블록의 블록체인 추가 프로세스는 생성된 블록을 블록체인에 추가하는 일련의 과정을 포함한다. 블록 추가 프로세스는 블록을 생성한 후, 이 블록의 무결성 검증이 완료되면(즉, 정상인 경우) 해당 블록을 블록체인에 추가하고, 추가된 블록의 식별정보(예를 들어 블록의 주소)를 응답받는 일련의 과정을 포함한다. In this specification, the process of adding a block to a blockchain includes a series of processes of adding a generated block to a blockchain. The block adding process creates a block, then adds the block to the blockchain when integrity verification of the block is complete (i.e., if it is normal), and receives the response of the added block's identification information (eg block's address). It includes a series of processes.
본 명세서에서 블록은 암호화될 수 있다. 블록을 생성하는 장치 측은 해당 블록의 식별정보를 수신하는 장치 측의 공개키로 해당 블록의 내용을 암호화할 수 있다. 그리고 블록의 식별정보를 수신한 장치는 자신의 개인키로 해당 블록의 내용을 복호화할 수 있다. In this specification, blocks may be encrypted. The device generating the block may encrypt the contents of the corresponding block with a public key of the device receiving the identification information of the corresponding block. And the device receiving the identification information of the block can decrypt the contents of the corresponding block with its own private key.
또한, 암호화 방식은 위의 공개키-개인키 방식 외에도 미리 약속된 방식으로 진행될 수 있다. In addition, the encryption method may be performed in a previously agreed method other than the above public key-private key method.
본 명세서는 블록체인에 기반하여 메타버스와 연동된 다중 암호화 채널을 이용하여 아이템 거래와 가상 자산의 거래의 안전성을 보장하는 기술에 대해 살펴본다.This specification looks at a technology that guarantees the safety of item transactions and virtual asset transactions using multiple encryption channels linked to the metaverse based on blockchain.
이하, 가전제품을 구매하거나 가전제품의 UX를 통해서 광고 동영상, 음성, 음악을 고객에게 재생해주고 광고업체에서 보상으로 받게되는 가상화폐를 저장할 수 있는 전자지갑을 고객 가정의 각 가족 구성원 별 또는 가족전체에 1개를 생성하고, 각 가족 구성원 별 전자지갑에 보상으로 지급되는 가상화폐를 각 가족 구성원을 식별하여 각 전자지갑으로 지급하는 과정에 대해 살펴본다. Hereinafter, each family member of the customer's home or the entire family is provided with an electronic wallet that can store virtual currency received as compensation from advertising companies by playing advertisement videos, voices, and music to customers by purchasing home appliances or through the UX of home appliances. Create one in , and look at the process of identifying each family member and paying the virtual currency that is paid as a reward to the electronic wallet for each family member to each electronic wallet.
메타버스 세계에서 취득한 가상화폐를 가전제품에 생성된 각 가족 구성원 별 전자지갑으로 자동으로 전송을 하고, 메타버스 세계에서 가상 아이템을 구매하거나 실물과 연동되어있는 NFT를 구매할 때에도 가상화폐를 전자지갑에서 출금하여 매도자에게 지불할 수 있도록 한다. The virtual currency acquired in the metaverse world is automatically transferred to the electronic wallet for each family member created in the home appliance, and the virtual currency is transferred from the electronic wallet when purchasing virtual items or NFTs linked to real objects in the metaverse world. Withdraw and make payments to the seller.
도 1은 본 발명의 일 실시예에 의한 각각의 장치들의 상호 작용을 보여주는 도면이다. 1 is a diagram showing the interaction of each device according to an embodiment of the present invention.
사용자 장치(User Device, 100)는 사용자가 사용하는 가전제품, 휴대폰 등의 통신단말, 컴퓨터 등을 포함한다. 사용자의 정보를 암호화하여 메타버스 서버(300)에게 전송하고, 메타버스 서버(300)가 구현하는 메타버스 세계 내에서 소정의 가상 자산을 거래할 수 있다. 또한. 사용자 장치(100)는 사용자의 생체 정보를 취득하여 이를 기반으로 암호화를 수행할 수 있다. The user device (User Device, 100) includes a home appliance used by a user, a communication terminal such as a mobile phone, a computer, and the like. The user's information is encrypted and transmitted to the
판매자 장치(200) 역시 다른 사용자가 이용할 수 있는 가전제품, 휴대폰 등의 통신단말, 컴퓨터 등을 포함한다. 판매자 장치(200)는 사용자 장치(100)와 메타버스 세계 내에서의 가상 자산 또는 현실 자산에 대응하는 가상 자산을 거래하는 장치이다. The
메타버스 서버(Metaverse Server, 300)는 다양한 사용자 장치(100)와 통신하며 통신 과정에서 소정의 암호화/복호화 작업을 수행한다. 메타버스 서버(300)는 메타버스를 구현하여 사용자 장치(100)들에게 메타버스 세계/환경을 제공할 수 있다.The
블록체인 노드(500)는 블록체인에 추가되는 블록들의 무결성을 검증한 후 블록체인에 블록을 추가하며, 추가된 블록의 식별정보(예를 들어 주소)를 장치들 또는 서버들에게 전송하는 하나 이상의 장치들을 포함한다. 이하 블록체인 추가 프로세스는 NFT 블록의 추가 프로세스 또는 정보나 메시지를 포함하는 블록을 블록체인에 추가하는 프로세스에 적용될 수 있다. 아울러, 블록체인 노드(500)는 블록 추가가 성공적으로 이루어진 경우 추가된 블록의 식별 정보를 블록 추가를 요청한 장치 또는 블록의 식별 정보를 수신할 장치 등에게 전송할 수 있다. The
도 2는 본 발명의 일 실시예에 의한 각각의 장치들이 다중 암호화 채널을 이용하는 과정을 보여주는 도면이다. 도 2는 가전/휴대폰 장치를 일 실시예로 하는 사용자 장치(100)가 최초로 생체정보를 바탕으로 1차 인증을 수행하고 사용자를 인증하여 서버와 상호간에 인증하는 과정을 보여준다. 2 is a diagram showing a process in which each device uses multiple encryption channels according to an embodiment of the present invention. FIG. 2 shows a process in which the
사용자 장치(100)는 사용자의 제1생체 정보를 추출하여 1차 암호화키로 저장한다(S11). 예를 들어, 사용자 장치(100)는 사용자의 지문 정보를 추출하여 저장할 수 있다. 일 실시예로, 사용자 장치(100)는 지문의 특징점을 추출하고, 사용자의 1차 암호화키를 생성하며, 지문정보를 사용자 장치(100)의 하드웨어 칩(Hardware Chip)내부에 저장한다. The
다음으로 사용자 장치(100)는 사용자의 제2생체 정보를 추출하여 2차 암호화키로 저장한다(S12). 앞서 1차 암호화키를 이용하여 사용자의 지문을 접촉한 후 사용자 장치(100)는 홍채 데이터 또는 음성 데이터를 센싱하여 제2생체 정보를 확보한다. 그리고 사용자 장치(100)는 홍채, 음성 특징점을 바탕으로 사용자의 2차 암호화키를 생성한다. Next, the
아울러, 사용자 장치(100)는 2차 암호화키에 대응하는 2차 공개키를 생성할 수 있다. In addition, the
그리고, 사용자 장치는 랜덤 넘버(Random number)를 생성하고(S13), 랜덤넘버와 사용자의 2차 공개키를 메타버스 서버(300)의 1차 공개키로 암호화하여 메타버스 서버(300)에게 전송한다(S14). 메타버스 서버(300)는 서버의 개인키로 복호화하여 랜덤넘버와 사용자의 2차 공개키를 복화화한다(S15). 사용자의 2차 공개키는 추후 사용자 장치(100)와의 암호화된 정보를 교환하는 과정에서 사용된다.Then, the user device generates a random number (S13), encrypts the random number and the user's secondary public key with the primary public key of the
이후 메타버스 서버(300)는 랜덤 넘버를 사용자의 2차 공개키로 암호화하여 사용자 단말(100)에게 전송한다(S16). 그리고 사용자 장치(100)는 메타버스 내의 정보(사용자 캐릭터의 위치, 속도 등)를 저장한 후 해당 정보를 메타버스 서버(300)의 1차 공개키로 암호화하여 메타버스 서버(300)에게 전송한다(S17, S18). 메타버스 서버(300)는 서버의 개인키로 복호화하여 정보를 확인한다(S19). 이후 메타버스 서버(300)는 사용자 장치(100)에게 ACK를 전송한다(S20). Then, the
도 2의 실시예는 다음과 같이 적용할 수 있다. 사용자 장치(100)가 사용자의 제1생체 정보를 이용하여 1차 암호화키 및 이에 대응하는 1차 공개키를 생성하여 저장한다. 그리고 사용자 장치(100)가 사용자의 제2생체 정보를 이용하여 2차 암호화키 및 이에 대응하는 2차 공개키를 생성하여 저장한다. The embodiment of FIG. 2 can be applied as follows. The
그리고, 사용자 장치(100)는 통신 대상인 메타버스 서버(300) 또는 판매자 장치(200)의 1차 공개키를 이용하여 사용자 장치의 2차 공개키 및 랜덤 넘버를 암호화한 제1블록의 식별정보를 메타버스 서버(300) 또는 판매자 장치(200)에게 전송한다. 이후, 사용자 장치(100)가 메타버스 서버(300) 또는 판매자 장치(200)로부터 수신한 제2블록의 식별정보를 이용하여 사용자 장치(100)의 2차 암호화키로 제2블록을 복호화하여 랜덤 넘버를 확인한다. 앞서 보냈던 랜덤 넘버와 수신한 랜덤 넘버가 동일하면 사용자 장치(100)는 통신 상대를 해커가 아닌 것으로 확인한다. In addition, the
이후 사용자 장치(100)는 메타버스 서버(300) 또는 판매자 장치(200)를 신뢰성있는 통신 상대 장치로 설정하고 데이터 또는 블록의 식별정보를 송수신할 수 있다. Then, the
여기서, 제1생체 정보는 사용자의 지문의 특징점 정보가 될 수 있으며, 제2생체 정보는 사용자의 홍채 특징점 또는 사용자의 음성 특징점 중 어느 하나 이상이 될 수 있다. Here, the first biometric information may be the user's fingerprint feature point information, and the second biometric information may be any one or more of the user's iris feature point or the user's voice feature point.
도 2의 과정을 통해 두 개의 암호화키가 생성되며 이를 이용하여 안전하게 통신이 이루어진다. Two encryption keys are generated through the process of FIG. 2, and communication is performed safely using them.
암호화키를 만드는 상세한 실시예를 살펴본다. 사용자 장치(100)의 일 실시예로 가전제품을 살펴본다. 가전제품의 센서는 각 가정 내의 구성원들의 음향, 음성, 동작센서, CCTV 영상 등에서 측정한 로우 데이터(Raw Data)를 메타버스 서버(300)로 전송한다. 메타버스 서버(300)는 클라우드 분석 서버의 기능을 제공하며 가전제품의 센서들이 획득한 로우 데이터를 각 데이터의 특성에 맞추어서 분석한다. Let's look at a detailed embodiment of creating an encryption key. Home appliances will be described as an example of the
이후, 메타버스 서버(300)는 각 가족구성원의 특성(성별, 나이, 음성성문분석, 홍채인식, 지문인식, 키, 걸음정보 등) 정보를 식별하여, 각 가족 구성원의 외모, 키, 체형, 성별을 기초로 하여 메타버스 세계 내에서 가상의 입체적 형상을 지닌 캐릭터를 생성한다. 그리고 메타버스 서버(300)는 전자 지갑을 각 가족 구성원 별로 생성할 수 있다. Then, the
전자 지갑은 블록체인상에 존재하는 개인이 가상화폐 자산의 입금, 출금, 계좌번호, 현재 잔고 등의 장부기록들이 기록된 데이터를 개인키로 암호화한다. 블록체인상의 블록에 다양한 데이터가 저장되며, 사용자 장치(100)는 해당 블록을 읽어와서 사용자의 개인키로 복호화한 후에 현재 잔고, 과거 입금, 출금 내역 등의 내역들을 확인할 수 있다. The electronic wallet encrypts the data recorded in the ledger records such as deposit, withdrawal, account number, and current balance of virtual currency assets by individuals existing on the blockchain with a private key. Various data are stored in blocks on the blockchain, and the
아울러, 가상 화폐가 부족한 경우 사용자 장치(100)는 전자지갑에서 가상화폐를 신용카드, 은행계좌상의 화폐, 다른 가상화폐를 이용해서 해당 가상화폐(코인)등을 구매할 수 있다.In addition, when the virtual currency is insufficient, the
사용자 장치(100)는 메타버스 세계 내에서 가상의 캐릭터를 생성할 때에 사용되는 생체 정보, 예를 들어, 눈동자 색상, 머리카락 색상, 동공의 주름, 음성의 성문 등을 카메라와 센서로 측정할 수 있다. 그리고 사용자 장치(100)는 한 종류의 센서 데이터의 고유값과 다른 종류의 N개 이상의 다수 센서데이터의 고유값을 조합하여 M비트이상의 길이를 가지는 개인키를 생성한다.The
사용자 장치(100)가 개인키를 생성하는 방식은 블록체인 알고리즘에서 허용되는 블록의 최대크기와 헤더의 최대크기에 비례할 수 있다.The method by which the
사용자 장치(100)는 생체 정보의 일 실시예인 음성성문분석값, 동공주름분석값, 지문분석값들을 비트값의 형태로 연달아 연결하고, 해당 블록을 암호화하기 위하여 허용되는 개인키의 최대길이(비트)까지 잘라서 사용할 수 있다. The
그리고 사용자 장치(100)는 최초로 사용자 장치(100, 예를 들어 가전제품/휴대폰)에 생체 정보(지문)을 등록하고, 1차 암호화키(개인키)를 생성한 후, 사용자 장치의 내부에 존재하는 하드웨어 칩에 1차 암호화키(개인키)를 등록할 수 있다. 해당 하드웨어 시큐리티 칩(Hardware Security Chip)의 일 실시예는 1회만 쓰기가 가능한 칩일 수 있다. 그리고 사용자 장치(100)는 1차 암호화키(개인키)를 등록한 후에, 하드웨어 내부에 저장한다.In addition, the
도 3은 본 발명의 일 실시예에 의한 1차 암호화키를 생성하는 과정을 보여주는 도면이다. 사용자 장치가 제1생체 정보의 특징점을 소수(prime number)의 리스트를 원형으로 생성하여 특정한 길이의 1차 암호화키를 산출하는 과정을 보여준다. 3 is a diagram showing a process of generating a primary encryption key according to an embodiment of the present invention. The user device generates a list of prime numbers of feature points of first biometric information in a circular form to calculate a primary encryption key of a specific length.
사용자 장치(100)는 지문의 특징점을 추출하여 시퀀스를 생성한다(S31). 예를 들어, 휴대폰 또는 가전제품은 지문의 특징점을 인식하여 소수들의 리스트(x 시퀀스)를 만든다. 그리고 사용자 장치(100)는 S32와 같이 원형순환의 형태로 만들어서 특정한 길이의 비트의 길이만큼 입력시퀀스를 생성한다. S32는 지문의 특징점에서 추출된 소수(prime number)들을 원순열로 만들고, 마지막 숫자 다음에는 첫번째 숫자를 배치한 형태이다. The
S32에서 사용자 장치(100)는 지문의 특징점에 소수(prime number)를 임의로 할당하고 (13, 17, 19, 23, 29, 31) 소수의 순열을 만든 후에 마지막 29->13으로 연결되도록 원순열을 만든다. 사용자 장치(100)는 소수가 최소 1Byte 이상의 길이를 가지며, 비트로 환산하면 8bit이상의 길이를 가지도록 한다. 1차 개인키의 길이는 보안 칩(security chip)의 싸이퍼링(chipering) 구조를 반영하여 128비트, 256비트로 설정될 수 있다. In S32, the
이후 사용자 장치(100)는 공개키 y를 생성한다(S33). 일 실시예로, 사용자 장치(100)는 엘립틱스 커브(Elliptics Curve) 함수인 f(x,y)=K를 만족시키는 공개키 y시퀀스를 찾을 수 있다. Then, the
그리고 사용자 장치(100)는 메타버스 서버(300)에게 사용자 장치의 공개키(y)를 전송한다(S34). 마찬가지로 메타버스 서버(300)도 전술한 실시예에 따라 자신의 공개키와 개인키를 생성한 후에 공개키를 휴대폰 또는 가전제품과 같은 사용자 장치(100)에게 전송할 수 있다. And the
사용자 장치(100)가 공개키를 생성하는 방식의 일 실시예로 함수(예를 들어 Elliptics Curve Decline)를 이용할 수 있다. 사용자 장치(100)는 F(x,y)=K 라는 수학적으로 정의된 함수 중에서 x(개인키)를 이용하여 y(공개키)는 쉽게 계산해서 찾을 수 있으나, y를 이용할 경우에는 개인키 x를 찾을 수 없도록 y를 생성할 수 있다. As an example of a method for generating a public key by the
앞서 도 2 및 도 3에서 살펴본 바와 같이, 사용자 장치(100)는 통신의 상대방이 해커인지 메타버스 서버(300)인지 확인하기 위하여 랜덤한 숫자들을 발생시키고 서버의 공개키로 암호화하여 랜덤한 숫자를 전송한다. 서버는 자신의 개인키로 복호화하여 해당 랜덤한 숫자들을 복호화한 후에 다시 사용자 장치(100)의 공개키로 암호화하여 사용자 장치(100)에게 전송한다. As described above in FIGS. 2 and 3, the
이때, 사용자 장치(100)는 수신한 데이터를 개인키로 복호화하여 사용자 장치(100)가 처음에 생성했던 숫자들의 나열과 복호화한 데이터가 동일한지 확인하여 동일하면 상대방은 정당한 서버임을 인증한다. 마찬가지로 메타버스 서버(300) 역시 전술한 과정을 거쳐서 사용자 장치(100)가 정당한 장치임을 확인할 수 있다. At this time, the
도 4는 본 발명의 일 실시예에 의한 2차 암호화키를 만드는 과정을 보여주는 도면이다. 사용자 장치(100)가 제1생체 정보에서 산출된 정보 및 제2생체 정보에서 산출된 정보 중 일부 비트를 추출하여 2차 암호화키를 산출하는 과정을 보여준다.4 is a diagram showing a process of generating a secondary encryption key according to an embodiment of the present invention. A process in which the
사용자 장치(100)는 사용자의 N개의 생체 정보(예를 들어 음성성문 분석값, 각막 주름 분석값, 지문 분석값)을 센싱하여 각각 X1/Y1/Z1 비트를 가지는 정보를 생성한다(S35). The
사용자 장치(100)는 암호화할 데이터의 길이(V) 보다 암호화키(N 종류의 고유값들 중에서 일부분만 취득하여 결합한 고유값들을 이어붙인 값)의 길이가 충분히 길며, 또한 암호화용 칩(chip)에서 처리할 수 있는 길이(W)가 충분히 긴 경우에는 W = X1+Y1+Z1 비트의 길이로 개인키를 생성한다.In the
만약, W < X1+Y1+Z1 인 경우에는, X1비트 + Y1비트 +Z2비트의 길이로 개인키를 생성한다. Z2비트는 Z1비트의 일부이다. If W < X1+Y1+Z1, a private key is generated with a length of X1 bits + Y1 bits + Z2 bits. The Z2 bit is part of the Z1 bit.
사용자 장치(100)가 암호화키를 생성함에 있어서 각 음성성문분석값의 전체 X1 비트값을 사용할 경우 각 개인의 음성의 특성이 중복되지 않고 식별이 된다. 마찬가지로, 각막주름분석값도 전체 Y1비트 값을 모두 활용할 경우 각 개인의 각막을 식별할 수 있는 고유한 값으로서 가치가 높아진다. When the
따라서, 지문분석값의 원래 길이인 Z1비트를 모두 사용할 수 없는 경우에 사용자 장치(100)는 지문 분석값의 맨 앞 비트값부터 Z2비트길이까지 잘라서 앞에 다른 고유값들에게 붙여서 개인키를 생성할 수 있다(S36). Therefore, when all Z1 bits, which are the original length of the fingerprint analysis value, cannot be used, the
W = X1 + Y1 + Z2W = X1 + Y1 + Z2
만약, 지문분석값에서 산출된 Z2비트의 길이가 Z1을 기준으로 일정 기준 이상 짧은 경우, X1, Y1에서 일부 앞부분 또는 뒷부분을 제외시킨 X2, Y2 비트를 S36 단계에서 사용할 수 있다. 이 경우 X2 비트의 길이는 X1 비트의 길이 보다 작으며 Y2 비트의 길이는 Y1 비트의 길이보다 작다. 사용자 장치(100)는 암호화키를 생성하는 과정에서 Z2/Z1, Y2/Y1, X2/X1의 범위를 정할 수 있다. If the length of Z2 bits calculated from the fingerprint analysis value is shorter than a certain standard based on Z1, X2 and Y2 bits excluding some front or rear parts from X1 and Y1 can be used in step S36. In this case, the length of the X2 bits is less than the length of the X1 bits, and the length of the Y2 bits is less than the length of the Y1 bits. The
W는 암호화 칩이 한번에 데이터를 입력받아서 암호화키(개인키)와 곱하기 연산을 할 수 있는 길이를 의미한다(S37). W denotes a length at which the encryption chip can receive data at once and perform a multiplication operation with an encryption key (private key) (S37).
만약, 암호화할 데이터의 길이(V)가 암호화 칩에서 한번에 읽어들일 수 있는 최대길이(W비트)보다 더 긴 경우에는, 사용자 장치(100)는 V 길이 중에서 W 길이만큼만 칩에 입력하고, 나머지 데이터들은 다음 번 순서에서 W+1비트 위치부터 2W비트의 위치까지 개인키를 곱해서 데이터를 암호화시켜서 2번째 (암호화 칩의) 사이클에 두번째 암호화된 데이터를 만들 수 있다(S38, S39). If the length (V) of the data to be encrypted is longer than the maximum length (W bits) that can be read from the encryption chip at one time, the
도 4의 실시예를 적용할 경우 2차 암호화 개인키의 보안성을 높이도록 길게 형성할 수 있다. 사용자 장치(100)가 사용자의 각 생체특징점들에서 추출한 비트들을 엇갈리게 섞어서 랜덤니스(Randomness)을 높여 암호화용 시퀀스를 생성할 수 있다. When the embodiment of FIG. 4 is applied, the secondary encryption private key can be formed long to increase security. The
도 3 및 4를 정리하면 다음과 같다. 도 3에 도시된 바와 같이, 사용자 장치(100)는 지문을 이용한 1차 암호화키는 지문 특징점에서 소수(prime number)의 순열을 만들고, 원순열로 만들어서 앞에서부터 해당 시퀀스가 44개의 소수를 원순열로 배치하여 반복하며 암호화비트를 생성한다. 3 and 4 are summarized as follows. As shown in FIG. 3, the
1개의 소수는 1byte이상으로 구성될 수 있으며, 44개의 소수는 44*8bit, 최소 352 bit이상의 길이를 가질 수 있다. 만약 암호화 칩이 128비트 또는 256비트로 길이가 제한될 경우 사용자 장치(100)는 352비트의 일부 비트를 128비트 또는 256비트로 잘라서 1차 암호화 개인키로 사용할 수 있다. One prime number can consist of more than 1 byte, and 44 prime numbers can have a length of 44*8 bits or at least 352 bits. If the length of the encryption chip is limited to 128 bits or 256 bits, the
도 5는 본 발명의 일 실시예에 의한 2차 암호화키를 생성하는 과정을 보여주는 도면이다. 5 is a diagram showing a process of generating a secondary encryption key according to an embodiment of the present invention.
도 4에 도시된 바와 같이 2차 개인키는 보안성을 높이고, 랜덤니스를 높이되, 개인의 신원정보를 인증할 수 있도록 생체 인식 정보 중에서 길이가 긴(음성성문, 홍채(66종류 이상)) 2개의 이형의 정보 시퀀스를 조합하여 생성한다. As shown in FIG. 4, the secondary private key increases security and randomness, but has a long length (voice voiceprint, iris (66 types or more)) among biometric information to authenticate personal identity information. It is generated by combining two heterogeneous information sequences.
도 5는 앞서 도 4에서 S36 단계에서 산출된 X1비트 및 Y1 비트를 이용함에 있어서 보다 복합적으로 조합하여 암호화하는 과정을 보여준다. FIG. 5 shows a more complex combination and encryption process in using the X1 bit and the Y1 bit calculated in step S36 in FIG. 4 above.
예를 들어, 사용자 장치(100)는 암호화 과정에서 제1 레이어(layer)로 지문을, 제2 레이어로 홍채(각막 주름 인식) 및 음성 성문을 이용하여 암호화키를 생성할 수 있다. For example, the
이와 같이 암호화를 2-layer에 의해서 진행하여, 1차 개인키 암호화가 노출될 경우라도 2차 암호화 채널에서 데이터가 암호화 되어 있어 보안성이 높일 수 있다. In this way, encryption is performed by 2-layer, and even when the primary private key encryption is exposed, security can be enhanced because data is encrypted in the secondary encryption channel.
제1 레이어에서 사용자 장치(100)는 지문의 특징점을 이용한 소수 시퀀스(prime number sequence)를 생성할 수 있다. 이때, 지문의 특징점이 대략적으로 33개 정도이며, 랜덤니스(randomness)을 더 높이기 위하여 사용자 장치(100)는 더 긴 길이를 가진 암호화키(2차 암호화키)를 어플리케이션 레이어(application layer, OS, 미들웨어, 어플리케이션 등)에서 생성한다. In the first layer, the
데이터를 암호화시키는 스트림(암호화된 데이터 블록의 기본 단위)의 사이즈가 제1레이어의 키(1차 암호화키)보다는 길며, 홍채인식 등의 2차 고유 시퀀스들(도 5의 41)은 66가지 이상으로 종류가 다양하여, 쉽게 추정이 되기 어렵다.The size of the stream for encrypting data (basic unit of encrypted data block) is longer than the key (primary encryption key) of the first layer, and the number of secondary unique sequences (41 in FIG. 5) such as iris recognition is more than 66. There are many different types, so it is difficult to estimate easily.
따라서, 생성가능한 소수들의 순열도 66가지 이상으로 다양하다. 아울러, 사용자 장치(100)는 음성의 성문분석을 이용한 시퀀스(도 5의 42)와 홍채인식을 통한 시퀀스의 각 비트들을 교차하여 결합되도록 하여 랜덤니스가 높은 시퀀스(45)를 생성할 수 있다. Thus, there are more than 66 different permutations of prime numbers that can be generated. In addition, the
또한, 사용자 장치(100)는 41 및 42를 조합한 긴 시퀀스 중에서 특정 영역을 잘라서 사용할 경우에는, 넌스(Nonce)의 값을 랜덤하게 지정할 수 있다. 또한 사용자 장치(100)는 해당 넌스의 값을 여러 개를 지정할 수 있으며, 각 넌스1과 넌스2 각각에 지정된 길이만큼, 비트 시퀀스를 추출하여, 전체 비트시퀀스를 순열로 연결하여 45와 같은 2차 암호화키(개인키)를 생성할 수 있다.In addition, when the
일 실시예로, 사용자 장치(100)는 도 5에 도시된 바와 같이, Nonce1=3 이므로 해당 위치로부터 길이 L1=3 까지 비트시퀀스를 복사하고, Nonce2= 7이고, 해당 위치로부터 길이 L2=2까지의 비트시퀀스들을 복사한다. 이때, L1의 길이와 L2의 길이는 랜덤하게 사용자 장치(100)가 정할 수 있다.As one embodiment, as shown in FIG. 5, since Nonce1=3, the
그리고 복사한 2개의 비트시퀀스를 연결하여, 45와 같이 2차 개인키(A)를 완성하고, 엘립틱스 커브 수식(Elliptics Curve Formulation) (f)에 입력하여 f(A,B) = K 인 공개키 B를 산출한다. Then, connect the two copied bit sequences to complete the secondary private key (A), such as 45, and enter it into the Elliptics Curve Formulation (f) to reveal that f(A,B) = K Calculate key B.
그리고 사용자 장치(100)는 자신의 2차 공개키(B)와 2차 공개키에 대한 해쉬값을 서버의 1차 공개키로 암호화하여 메타버스 서버(300)에게 전송한다. And the
도 5에서 넌스 1(Nonce 1)과 넌스 2(Nonce2)의 위치를 서로 다르게 랜덤하게 지정하고, 각각 몇 비트씩 잘라서 서브 시퀀스를 만들 것인지(즉, L1, L2의 크기)도 랜덤하기 설정할 수 있다. 2차 개인키는 어플리케이션/OS/미들웨어 등의 메모리상에서 CPU로 데이터를 암호화 및 복호화를 위한 것이므로, 최대한 긴 암호화키를 생성하여 데이터 블록을 한번에 암호화할 수 있다. In FIG. 5, the positions of Nonce 1 and Nonce 2 are randomly designated differently from each other, and how many bits each are cut to create a subsequence (ie, the size of L1 and L2) can also be randomly set. . Since the secondary private key is for encrypting and decrypting data with the CPU in the memory of an application/OS/middleware, etc., a data block can be encrypted at once by generating an encryption key as long as possible.
만약, 짧은 길이의 암호화키로 데이터를 여러 블록으로 쪼개서 암호화하면 해커가 각 블록의 특성을 반복하여 테스트하여 해킹하기가 쉬워지므로, 사용자 장치(100)는 가장 랜덤니스가 큰 시퀀스 중에서 최대한 길이가 긴 키값을 곱해서 암호화시켜 해커에게 반복적인 특징을 노출시키지 않도록 하여 보안성을 높일 수 있다. If data is divided into several blocks with a short-length encryption key and encrypted, it becomes easy for hackers to hack by repeatedly testing the characteristics of each block. By multiplying and encrypting, security can be increased by not exposing repetitive characteristics to hackers.
한편, 메타버스 서버(300)는 지문 특징점이나 음성성문 특징점, 홍채 인식 등의 생체 정보를 저장하지 않으므로, 랜덤하게 생성한 임의의 충분히 긴 길이의 2차 개인키(C)를 생성하고 f(C,D)=K를 만족하는 2차 서버 공개키(D)를 생성한다. On the other hand, since the
그리고, 2차 서버공개키(D)와 2차 서버 공개키(D)에 대한 해쉬값을 사용자 장치(100)의 1차 공개키로 암호화하여 사용자 장치(100)에게 전송한다.Then, the secondary server public key (D) and the hash value for the secondary server public key (D) are encrypted with the primary public key of the
사용자 장치(100)와 서버(300)는 통신 상대가 해커가 아닌 정상적인 사용자 장치 또는 서버인지를 확인하기 위한 과정을 수행할 수 있다. The
사용자 장치(100)는 임의의 랜덤 숫자들을 생성해서, 2차 서버 공개키로 암호화한 값과 해쉬값을 다시 1차 서버 공개키로 암호화하여 서버에게 전송한다. 메타버스 서버(300)는 1차 개인키로 복호화한 데이터를 다시 2차 개인키로 복호화하여 사용자 장치(100)가 전송한 랜덤한 숫자들의 목록을 확인한다. The
그리고 메타버스 서버(300)는 해쉬값을 비교하여 해쉬값이 일치하면, 위변조되지 않은 데이터를 정상적으로 수신했다는 의미로 사용자 장치(100)의 2차 공개키로 동일한 숫자들의 시퀀스들을 암호화한다. 그리고 47과 같이, 메타버스 서버(300)는 숫자들의 시퀀스의 해쉬값을 첨부한다. In addition, the
메타버스 서버(300)는 <사용자 장치(100)의 2차 공개키로 암호화된 숫자들의 시퀀스와 해쉬값>을 사용자 장치(100)의 1차 공개키로 암호화한 후에 다시 사용자 장치(100)에게 전송한다.The
사용자 장치(100)는 수신된 데이터를 1차 개인키로 복호화하여 <2차 공개키로 암호화된 데이터 + 해쉬값>을 추출한다. 그리고 사용자 장치(100)는 다시 2차 개인키로 데이터를 복호화하여 나온 숫자들의 시퀀스를 확인한다. The
사용자 장치(100)는 이 숫자들의 해쉬값과 첨부된 해쉬값을 비교하여 동일하면 메타버스 서버(300)가 해커가 아닌 정상 서버임을 확인한다. The
서버 역시 전술한 과정을 반복하여 사용자 장치(100)가 해커가 아닌 정상 사용자 장치(100)임을 확인할 수 있다. 그리고 사용자 장치(100)와 메타버스 서버(300) 사이에 형성된 보안 채널을 통해서 새로운 2단계 보안 채널이 형성된다.The server may also repeat the above process to confirm that the
전술한 과정을 통해 사용자 장치(100)가 메타버스 서버(300)로 데이터를 전송할 때 사용자 장치(100)의 2차 공개키를 서버에게 안전하게 전달할 수 있다. When the
즉, 47에서 2차 KEY로 암호화된 데이터는 사용자 장치(100)의 2차 공개키로 암호화된 데이터를 의미한다. 또한, 사용자 장치(100)는 메타버스 서버(300)로 정보를 안전하게 전달하기 위하여 서버의 1차 공개키로 "A+B"을 암호화해서 전송한다. That is, data encrypted with the secondary key in 47 means data encrypted with the secondary public key of the
도 6 내지 도 7은 본 발명의 일 실시예에 의한 암호화된 정보를 이용하여 장치들이 안전하게 정보를 교환하는 과정을 보여주는 도면이다. 메타버스 서버(300)가 제공하는 메타버스 세계 내에서 사용자 장치(100)는 자신의 아바타를 움직이며 메타버스 세계 내의 상점을 방문하여 물품을 구매할 수 있다. 6 and 7 are diagrams illustrating a process of securely exchanging information between devices using encrypted information according to an embodiment of the present invention. In the metaverse world provided by the
사용자 장치(100)는 메타버스 세계 내에서 표시되는 사용자의 캐릭터 정보를 서버의 1차 공개키로 암호화한다(S51). 예를 들어 사용자 장치(100)는 사용자의 캐릭터가 스케이트 보드를 타고 이동하는 위치, 속도, 또는 캐릭터가 메타버스 세계 내에서 방문한 상점 등의 정보 등을 서버의 1차 공개키로 암호화한다. 암호화한 블록을 BLK_1이라고 지시한다. 여기서 사용자의 캐릭터 정보는 사용자의 실제 움직임이나 상태를 그대로 나타낼 수도 있고, 또는 사용자가 자신의 캐릭터를 제어한 결과를 반영할 수 있다. The
그리고, 암호화한 데이터가 포함된 블록을 블록체인에 추가하는 프로세스를 수행한다(S52). 예를 들어, 사용자 장치(100)는 BLK_1의 블록체인 추가 프로세스 및 BLK_1 블록의 식별 정보를 서버(300)에게 전송한다. Then, a process of adding a block containing encrypted data to the block chain is performed (S52). For example, the
보다 상세히 살펴보면, 사용자 장치(100)는 BLK_1(사용자의 암호화된 데이터, 위치, 속도, 상점, 소유주의 신원정보 등)을 블록으로 만들어서 블록체인 노드들에게 검증을 요청한다. 그리고 블록체인 노드들은 14. 블록을 검증하고, 정상이라고 확인해주는 응답메세지를 보낸다. Looking in more detail, the
이후 사용자 장치(100)는 암호화된 사용자의(위치, 속도, 상점위치 등)의 정보를 메타버스 서버(300)에게 전송한다. 사용자 장치(100)는 BLK_1의 식별 정보(예를 들어 주소)를 메타버스 서버(300)에게 전송하여 메타버스 서버(300)가 정보를 확인할 수 있다. Then, the
메타버스 서버(300)는 서버의 1차 개인키를 이용하여 BLK_1을 복호화하여 사용자 캐릭터에 관한 내용을 확인한다(S53). 예를 들어, 메타버스 서버(300)는 사용자의 현재 위치 또는 사용자의 움직임 등에 관한 내용을 확인한 후, 메타버스 세계 내에 표시할 수 있다. 그리고 메타버스 서버(300)는 확인한 정보(사용자의 위치나 캐릭터 모양, 움직임 정보 등)를 판매자 장치(200)에게 전송한다(S54). 전송 결과 상점 직원이 관리하는 판매자 장치(200)가 사용자의 위치나 캐릭터 모양, 움직임 등의 정보를 확인 및 표시할 수 있다. The
한편, 판매자 장치(200)는 자신의 1차 공개키와 랜덤 넘버를 메시지에 포함하여 서버의 1차 공개키로 암호화한다(S55). 그리고 이 메시지를 판매자 장치(200)가 메타버스 서버(300)에게 전송한다(S56). 물론, 이 과정에서 판매자 장치(200)는 S52와 같이 블록체인에 메시지를 블록으로 추가하는 프로세스를 수행할 수 있다.Meanwhile, the
메타버스 서버(300)는 자신의 1차 개인키로 랜덤넘버와 판매자 장치의 1차 공개키를 복호화한다(S57). 그리고 메타버스 서버(300)는 사용자 장치(100)의 1차 공개키로 암호화한 판매자 장치의 1차 공개키를 전송한다(S58).The
이후 사용자 장치(100)는 판매자 장치(200)에게 사용자의 2차 공개키 및 구매에 관련된 정보를 포함하며 판매자 장치의 2차 공개키를 요청하는 블록을 판매자 장치의 1차 공개키로 암호화하여 블록 BLK_2 생성한다(S59). 일 실시예로, 사용자 장치(100)는 구매 희망하는 제품의 이름과 자신의 식별정보(ID), 캐릭터의 위치, 키 등의 정보와 사용자 장치(100)의 2차 공개키를 포함하는 BLK_2를 생성한다. 이때, BLK_2에는 판매자 장치(200)의 2차 공개키를 요청하는 내용도 포함된다. 그리고 사용자 장치(100)는 판매자 장치(200)의 1차 공개키로 암호화하여 블록 BLK_2를 생성한다.Thereafter, the
도 7을 참조한다. See FIG. 7 .
사용자 장치(100)는 BLK_2를 블록체인에 추가하는 프로세스를 수행한다(S61). 예를 들어, 사용자 장치(100)는 BLK_2를 블록체인에 추가하는 프로세스를 진행할 수 있다. 이 과정에서 사용자 장치(100)는 암호화한 블록을 체인에 연결해달라는 요청을 블록체인 노드들(500)에게 한다. 블록체인 노드들(500)은 검증 후 무결성을 확인한 후, 블록의 무결성에 문제 없다고 사용자 장치(100)에게 응답한다. 그리고 사용자 장치(100)는 BLK_2 블록의 식별 정보를 판매자 장치(200)에게 전송한다. The
이후, 판매자 장치(200)는 자신의 1차 개인키로 BLK_2의 내용을 복호화한 후, 사용자 장치의 2차 공개키를 수령하고 블록의 내용을 확인하고 거래를 위한 BLK_3을 생성하여 사용자 장치의 2차 공개키로 암호화한다(S62). 예를 들어, 판매자 장치(200)는 자신의 1차 개인키로 BLK_2를 복호화하여, 사용자 장치(100)의 2차 공개키를 수령한다. 그리고 사용자 장치(100)가 거래를 위해 요구한 내용(구매희망 제품의 가격 문의 등의 정보)를 확인한다. Thereafter, the
그리고 판매자 장치(200)는 2차 개인키, 공개키를 생성하고 자신의 2차 공개키와 거래에 필요한 정보(예를 들어 제품의 가격으로 코인 수량 등)를 포함하는 BLK_3을 생성한 후, 사용자 장치(100)의 2차 공개키로 암호화한다.Then, the
그리고 판매자 장치(200)는 BLK_3을 블록체인에 추가하는 프로세스를 수행한다(S63). 예를 들어, 판매자 장치(200)는 BLK_3을 블록체인에 추가하는 프로세스를 진행할 수 있다. 이 과정에서 판매자 장치(200)는 암호화한 블록을 체인에 연결해달라는 요청을 블록체인 노드들(500)에게 한다. 블록체인 노드들(500)은 검증 후 무결성을 확인한 후, 블록의 무결성에 문제 없다고 판매자 장치(200)에게 응답한다. 그리고 판매자 장치(200)는 BLK_3 블록의 식별 정보를 사용자 장치(100)에게 전송한다. And the
사용자 장치(100)는 블록체인에서 BLK_3 내용 확인하고, 2차 개인키로 블록을 암호화한 후, 전달된 내용을 확인하고 구매 확정을 위한 암호화된 블록 BLK_4를 생성한다(S64). 예를 들어, 사용자 장치(100)는 블록 BLK_3의 주소를 확인하고, 블록의 주소에 게시된 블록을 읽어온다. The
그리고 사용자 장치(100)는 사용자 장치(100)의 2차 개인키로 블록 BLK_3을 복호화하여 판매자 장치(200)가 요청한 제품의 명칭, 지불해야 하는 코인의 개수 등을 확인한 후에 판매자 장치(200)의 2차 공개키로 제품명, 수량, 구매에 소요될 코인 등을 기록한 블록 BLK_4를 암호화한다. 그리고 사용자 장치(100)는 BLK_4의 블록체인 추가 프로세스를 진행하고 BLK_4 블록의 식별 정보를 판매자 장치(200)에게 전송한다(S65). 앞서 S61의 과정과 동일한 방식으로 이루어질 수 있다. In addition, the
판매자 장치(200)는 자신의 2차 개인키로 BLK_4를 복호화하여, BLK_4의 내용을 확인하고, 사용자 장치(100)가 구매를 요청한 제품, 수량을 확인한 후 코인을 수령한다. 그리고 정상적으로 거래가 이루어졌음을 알리기 위한 응답 블록인 BLK_5를 생성한다(S66). 물론, BLK_5는 전술한 사용자 장치(100)의 2차공개키로 암호화될 수 있다. 그리고, 판매자 장치(200)는 BLK_5를 블록체인에 추가하는 프로세스를 수행한다(S67). The
BLK_5는 판매자 장치(200)가 코인 및 요청 등을 잘 수령했다는 응답을 기록한 블록이며, 판매자 장치(200)는 BLK_5를 사용자 장치(100)의 2차공개키로 암호화한 후 블록체인 노드(500)들에게 무결성 검증을 요청한다. BLK_5 is a block that records the response that the
이때 코인의 새로운 소유주 정보가 사용자 장치(100)에서 판매자 장치(200)로 변경되고, 이 정보가 블록에 기록된다. At this time, the new owner information of the coin is changed from the
사용자 장치(100)는 BLK_5의 식별정보(예를 들어 주소)를 판매자 장치(200)로부터 수신하여 블록체인에서 BLK_5을 읽어와서 사용자 장치(100)의 2차 개인키로 블록 BLK_5를 복호화한다. 그리고 사용자 장치(100)는 구매가 정상적으로 이루어졌음을 확인한다(S68). 사용자 장치(100)는 구매하고자 했던 아이템의 소유주가 사용자 장치(100)로 변경되었고, 코인의 소유주가 판매자 장치(200)로 변경되었고, 블록에 기록이 남겨졌음을 확인한다. The
도 6의 실시예에서 사용자 장치(100)는 메타버스 서버(300) 또는 판매자 장치(200)로부터 사용자 장치(100)의 1차 공개키로 암호화된 제3블록의 식별 정보를 수신하여 사용자 장치의(100) 1차 암호화키로 제3블록을 복호화한다(S55~S59). 그 결과, 사용자 장치(100)는 판매자 장치(200)의 1차 공개키를 확인할 수 있다. In the embodiment of FIG. 6, the
사용자 장치(100)는 사용자 장치(100)의 2차 공개키, 구매 정보 및 판매자 장치(200)의 2차 공개키를 요청하는 제4블록(도 6의 BLK_2)을 판매자 장치(200)의 1차 공개키로 암호화하고 제4블록의 식별 정보를 판매자 장치(200)에게 전송할 수 있다(S59~S61). The
또한, 도 7의 실시예에서 사용자 장치(100)는 상기 판매자 장치(200)로부터 제5블록(BLK_3)의 식별정보를 수신하여 제5블록을 상기 사용자 장치(100)의 2차 암호화키로 복호화한다(S62~S64). 그 결과 사용자 장치(100)는 판매자 장치(200)의 2차 공개키를 확인한다. In addition, in the embodiment of FIG. 7, the
이후, 사용자 장치(100)는 구매 정보에 대응하는 거래 대금인 코인을 포함하는 제6블록(BLK_4)을 판매자 장치(200)의 2차 공개키로 암호화하여 제6블록(BLK_4)의 식별 정보를 판매자 장치(200)에게 전송한다(S64~66). 사용자 장치(100) 및 판매자 장치(200) 사이에서 추가적으로 응답 블록인 BLK_5의 식별정보를 교환될 수 있으며, 사용자 장치(100)는 구매를 확인할 수 있다. Thereafter, the
도 6 및 도 7에서 사용자 장치(100)와 판매자 장치(200)는 상대방의 1차 및 2차 공개키를 이용하여 암호화를 진행한다. 그 결과 암호화 채널이 1차 및 2차로 이루어지므로 정보의 보안성을 높일 수 있다.6 and 7, the
또한, 도 6 및 도 7의 판매자 장치(200)와 사용자 장치(100)의 1차 및 2차 공개키를 이용하여 거래하는 과정은 사용자 장치(100)와 메타버스 서버(300) 사이의 거래에서도 구현할 수 있다. In addition, the process of transacting using the primary and secondary public keys of the
1차 공개키에 기반한 1차 암호화채널과 2차 공개키에 기반한 2차 암호화 채널을 이용해서 NFT나 가상의 아이템, 또는 이와 연계되는 현실 자산을 구매하기 위하여 사용자 장치(100)는 제품의 목록을 메타버스 서버(300)로부터 수신한다. In order to purchase an NFT, a virtual item, or a real asset related thereto using a primary encryption channel based on a primary public key and a secondary encryption channel based on a secondary public key, the
그리고 사용자 장치(100)는 목록에서 선택한 제품을 구매하기 위해 필요한 주문 상세정보(제품명, 수량, 설치희망일 등)을 서버(300)로 1차 및 2차 암호화 채널을 통해서 신청한다.In addition, the
이때, 메타버스 서버(300)는 재고수량, 생산, 배송, 설치 가능일정 등을 확인하여 가능한 날짜, 시간, 주문가능수량, 구매 가격 등의 정보를 1+2차 암호화 채널을 통해서 사용자 장치(100)에게 전송할 수 있다. At this time, the
사용자 장치(100)는 자신의 코인의 결제정보(수량 등)를 담아서 암호화 블록을 생성하여 노드들의 검증을 받은 후에 블록체인에 추가하고, 해당 블록의 주소를 1+2차 채널을 통해서 메타버스 서버(300)에게 전송한다. The
메타버스 서버(300)는 해당 주문정보와 코인을 확인하여, 해당 암호화 블록을 2차 서버 공개키 복호화 작업을 수행한 후에 다시 1차 서버 공개키 복호화 작업과 해쉬값 비교를 통하여, 정상적인 사용자 장치(100)가 주문을 하였음을 확인하고 사용자 장치(100)의 주문내역과 코인을 수령한다. The
그리고 메타버스 서버(300)는 NFT나 가상자산, 또는 현실 자산을 메타버스 세계 내에서 표시하는 아이템 등의 명세서의 (공개되는) 표제부에 기록되는 소유자를 사용자 장치(100)로 변경한다. 메타버스 서버(300)는 해당 명세서의 암호화 데이터부를 사용자 장치(100)의 2차 공개키로 암호화한 후에 다시 사용자 장치(100)의 1차 공개키로 암호화한 데이터를 첨부하고, 해쉬값을 표제부에 기록하여 블록을 형성한다. 또한, 메타버스 서버(300)는 해당 블록을 블록체인 노드들(500)의 검증을 받고 블록체인에 게시한다. And the
메타버스 서버(300)는 사용자 장치(100)에게 블록의 주소를 통지하며 사용자 장치(100)는 해당 블록을 읽어와서 2차 개인키로 복호화하고 해쉬값을 확인하여 동일한지 비교한 후에 다시 1차 개인키로 복호화하여 NFT의 내용을 확인할 수 있다. The
특히, 1차 및 2차 개인키를 생성함에 있어서, 메타버스 세계 내에서 캐릭터의 동시 수행 행위에서의 동일 시간간에 생체 정보 기반의 시큐어 다중 액티비티(Secure multiple activity)를 실행할 수 있다. In particular, in generating the primary and secondary private keys, it is possible to execute biometric information-based secure multiple activities during the same time in the character's simultaneous performance in the metaverse world.
즉, 메타버스 세계에서 사이버 캐릭터가 한 타이밍에 동시에 여러 개의 동작을 수행할 때 각 행위에 대하여 생체 신호 기반의 암호채널을 자동으로 형성한다. 그리고 각 암호화채널을 통해서 송수신되는 데이터는 메타버스 세계 내부뿐만 아니라 메타버스 외부의 다른 사용자 장치들(예를 들어 판매자 장치)인 컴퓨터, 핸드폰 네트워크 상에서 송수신되며, 데이터가 각 채널 별로 각각의 서로 다른 생체 정보를 바탕으로 하는 각각의 암호화키를 사용할 수 있으며, 각각의 암호화 채널을 형성하여 각각 서로 다른 데이터를 송수신할 수 있다. In other words, when a cyber character performs several actions at the same time in the metaverse world, a biosignal-based encryption channel is automatically formed for each action. In addition, the data transmitted and received through each encryption channel is transmitted and received not only inside the metaverse world but also on other user devices (eg seller devices) outside the metaverse, such as computer and mobile phone networks, and data is transmitted and received on different biometrics for each channel. Each encryption key based on information can be used, and each different data can be transmitted and received by forming each encryption channel.
일 실시예로, 메타버스 세계 내에서 캐릭터가 화상회의/화상통화를 수행하면서 스케이트 보드를 타면서 길가다가 아이크림을 구매해서 아이스크림을 먹는 행위를 한번에 여러 개의 동작을 수행할 수 있다. 이때 각각의 데이터들은 외부에 유출되지 않아야 하는 개인 정보가 포함된다. 화상통화는 가족, 친구, 회사 회의, 거래처 미팅을 수행할 수 있어서 개인 정보의 유출이 있어서는 안되며, 또한 업무상의 대화내용이 경쟁사에 유출되어서는 안되기 때문에 암호화 채널을 통해서 화상회의를 진행하는 것이 필요하다.As an embodiment, in the metaverse world, a character can perform several actions at once, such as purchasing eye cream and eating ice cream while riding a skateboard while conducting a video conference/video call. At this time, each data includes personal information that should not be leaked to the outside. Since video calls can hold family, friends, company meetings, and business partners meetings, personal information should not be leaked, and business conversations should not be leaked to competitors, so it is necessary to conduct video conferences through an encrypted channel. .
이때, 사용자 장치(100)는 화상회의의 내용을 법적인 구속력을 가지려면 녹화되어서 보존이 되어야 하는데, 해당 녹화데이터를 캐릭터의 원래 현실세계의 주인의 각막 신호 특징점 비트 패턴을 기반으로 한 암호화키와 음성 신호 특징점에서 추출한 비트 패턴을 결합하여 생성한 암호화키를 바탕으로 블록에 데이터를 암호화하여 기록하여 블록체인에 연결한다.At this time, the
또한, 메타버스 세계 내에서 캐릭터가 스케이트보드를 타고 이동하는 동작에서 발행하는 정보는 위치, 속도, 캐릭터의 동작(다리 구부리는 각도, 머리의 각도, 팔다리의 위치 등) 등이 있다. 사용자 장치(100)는 이들 정보에 기반해서 메타버스 서버(300)에게 사용자 장치(100)가 현재 캐릭터의 위치나 속도, 움직임 등을 전송하기 위하여 화상회의와 관련된 암호화 채널과 다른 별도의 암호화 채널을 생성하여 데이터를 전송할 수 있다. In addition, the information issued by the motion of a character riding a skateboard in the metaverse world includes position, speed, motion of the character (leg bending angle, head angle, limb position, etc.). The
메타버스 세계 내부에서 타 캐릭터에 의한 고가의 가상 아이템들을 강탈을 당하거나 해킹을 당할 가능성을 차단하기 위해 메타버스 세계 내부에서 각 캐릭터의 위치를 직접 공유하지 않고 암호화채널을 통해서만 전달하도록 사용자 장치(100)와 메타버스 서버(300), 그리고 다른 판매자 장치(200)를 구현할 수 있다.User device (100 ) and the
또한, 사용자 장치(100)는 스케이트보드를 타는 행위의 특성을 반영하여 목소리의 성문 특징점을 기반으로 한 암호화키를 생성하여 캐릭터와 메타버스 서버(300)와의 연결 및 데이터 송수신을 암호화한다. 또한 사용자 장치(100)는 캐릭터와 사용자의 사용자 장치들, 예를 들어 휴대폰 또는 가전제품과의 커넥션을 암호화할 수 있다.In addition, the
메타버스 세계 내에서 사용자 장치(100)가 제어하는 캐릭터가 스케이트보드를 타다가 길거리의 상점에서 아이스크림을 구매해서 다시 스케이트보드를 타고 이동하는 경우에는 음성통화를 위해서 위에서 생성한 암호화채널-1을 통해서 음성데이터가 송수신된다. In the case where a character controlled by the
한편, 별도의 캐릭터인 상점 주인(판매자 장치)과 대화를 하고, 가상화폐를 지급하여 아이스크림을 구매하기 위하여 캐릭터는 움직임을 멈추고, 가상 상점으로 이동하여 상점의 매장의 직원(판매자 장치)과 대화를 위해서 새로운 통신채널을 생성할 때에 새로운 암호화채널을 생성할 수 있다. On the other hand, in order to have a conversation with the store owner (seller device), which is a separate character, and to purchase ice cream by paying virtual currency, the character stops moving, moves to the virtual store, and has a conversation with a store employee (seller device). For this purpose, when a new communication channel is created, a new encryption channel may be created.
이를 위하여 사용자의 오프라인 핸드폰(사용자 장치)의 홍채인식 센서를 이용해서 현재 가상의 캐릭터를 조작하는 사람이 오프라인의 실제 사용자라는 것을 인증할 수 있다. 그리고, 상점의 직원(판매자 장치)와 새로운 세션을 형성하기 위하여 음성의 성문 특징점을 이용한 암호화키를 생성하여 캐릭터의 음성 데이터와 상점 직원의 음성데이터를 암호화하여 암호화된 음성대화채널, 문자채팅 채널 등을 형성할 수 있다.To this end, it is possible to authenticate that the person currently manipulating the virtual character is an offline actual user by using the iris recognition sensor of the user's offline mobile phone (user device). In addition, in order to form a new session with the store employee (seller device), an encryption key is generated using the voiceprint feature of the voice to encrypt the character's voice data and the store employee's voice data, such as an encrypted voice conversation channel, text chat channel, etc. can form
그리고 사용자 장치와 판매자 장치 둘 간의 주고받는 모든 데이터는 해당 암호화키로 암호화하여 블록을 형성하여 블록체인에 연결하여 추후에 캐릭터와 상점 직원간에 주고 받는 거래에 관한 내용 및 대화내용을 모두 기록하여 보관함으로서 범법적인 행위(EX: 사기, 협박, 등)를 추후에 증거로 삼아서 메타버스 내부 세계와 현실 세계에서 모두 처벌할 수 있는 법적인 근거로서 활용할 수 있다. In addition, all data exchanged between the user device and the seller device is encrypted with the corresponding encryption key to form a block and connected to the block chain to record and store all the contents of transactions and conversations exchanged between the character and the store employee in the future. Enemy acts (EX: fraud, intimidation, etc.) can be used as evidence later and used as legal grounds for punishment both in the metabus internal world and in the real world.
메타버스 세계 내에서의 음성은 현실 세계의 사용자의 음성을 음성 변조하여 사용하므로, 가상의 세계에서 다른 해커가 음성을 위조하여 해당 가상캐릭터의 신분을 위조하여 사용자의 가상 캐릭터가 범법행위(ex: 사기 구매, 협박, 피싱 등)들을 하는 것을 방지하기 위해 가상 캐릭터가 메타버스 세계에서 하는 행위들 각각은 서로 다른 암호화키로 암호화하여 데이터 통신을 수행한다. Since the voice in the metaverse world is used by modifying the voice of the user in the real world, another hacker in the virtual world forges the voice and forges the identity of the virtual character so that the user's virtual character commits a crime (ex: In order to prevent fraudulent purchases, blackmail, phishing, etc.), data communication is performed by encrypting each action of a virtual character in the metaverse world with a different encryption key.
그 결과 가상 캐릭터들간에 대화하거나 거래를 하는 경우에도 항상 암호화한 채널을 통해서 데이터, 가상화폐, 가상자산(ex: 옷, 신발, 캐릭터 등)을 매매, 양도할 수 있다.As a result, even when talking or trading between virtual characters, data, virtual currency, and virtual assets (ex: clothes, shoes, characters, etc.) can be traded and transferred through encrypted channels.
도 8은 본 발명의 일 실시예에 의한 장치들 사이의 암호화 메시지의 구성을 보여주는 도면이다. 8 is a diagram showing the configuration of an encryption message between devices according to an embodiment of the present invention.
사용자 장치(100)가 메타버스 서버(300)에게 전송하는 암호화 메시지는 서버의 1차 공개키(1차 서버 공개키)로 암호화된다. 메타버스 서버(300)가 도 8의 메시지를 서버의 1차 개인키로 복호화하면, 랜덤 넘버와 2차 주인공 공개키, 즉 사용자 장치(100)의 2차 공개키를 확인할 수 있다. 사용자 장치(100)의 2차 공개키는 앞서 도 4 내지 5에서 살펴본 바와 같이, 사용자의 신체 정보(예를 들어 음성 성문 정보)에서 추출된 2차개인키에 대응한다. The encrypted message transmitted from the
그리고 캐릭터의 행위에 따라 사용자 장치(100)와 서버(300) 사이에는 새로운 암호화 채널을 생성할 수 있다. 예를 들어, 사용자 장치(100)가 오프라인의 현실세계와 연동되는 행위를 메타버스 세계 내에서 수행할 경우에는 기존에 사용하던 암호화 채널과 별도의 암호화 채널을 생성한다. In addition, a new encryption channel may be created between the
그리고, 현실세계 연동 행위의 중요도에 따라서 2차 암호화키의 길이를 더 길게 형성하여 보안성을 높일 수 있다.In addition, security may be enhanced by forming a longer secondary encryption key according to the importance of the real world interlocking action.
예를 들어, 사용자 장치(100)가 메타버스 세계 내에서 부동산 거래를 하는 경우에, 가상 세계에서의 매매 행위가 현실세계에서의 토지, 상가, 건물의 매매 행위로 연결되는 법률적 행위를 하기 위해서 가상세계의 캐릭터가 오프라인의 자신임을 신원을 인증하는 것이 필요한 경우를 가정한다. 이때, 사용자는 사용자 장치(100), 예를 들어 가전제품 또는 휴대폰을 통해서, 기존에 가전장치에 저장된 지문의 패턴을 이용해서 장치에서 1차적으로 동일인임을 확인한다.For example, in the case where the
이때, 가상의 특정 공간(법원 등)에서 지문 또는 패턴인식으로 OTP를 형성해서 1차 신원인증을 수행한 후, 가상의 캐릭터가 해커가 위장한 것이 아님을 입증하기 위해, 2차적으로 현실세계의 사용자의 음성 성문 특징점을 바탕으로 생성한 사용자 장치(100)의 2차 공개키를 메타버스 서버(300)에게 전송한다. 이때, 1차 랜덤넘버와 서버의 공개키로 암호화해서 전송을 하면 서버는 해당 데이터를 복호화하여 랜덤넘버와 음성성문특징점에서 추출한 사용자 장치(100)의 2차공개키를 수신한다. 그리고 메타버스 서버(300)는 해당 2차 공개키로 랜덤넘버를 암호화한 후에 사용자 장치(100)에게 전송한다.At this time, after performing primary identity authentication by forming an OTP by fingerprint or pattern recognition in a specific virtual space (court, etc.), in order to prove that the virtual character is not a hacker disguised, a secondary user in the real world Transmits the secondary public key of the
사용자 장치(100)는 자신의 2차 개인키로 전송한 정보를 복호화하여 자신이 보냈던 랜덤넘버와 방금 수신된 랜덤넘버가 동일하면 믿을만한 서버로 인정을 하고, 부동산 거래에 관한 데이터를 암호화 채널을 통하여 송수신한다.The
도 9는 본 발명의 일 실시예에 의한 암호화키를 생성하는 3차원 신호 스페이스를 보여주는 도면이다. 9 is a diagram showing a three-dimensional signal space for generating an encryption key according to an embodiment of the present invention.
사용자 장치(100)가 사용자의 제1생체 정보, 제2생체 정보 및 제3생체 정보를 3차원 공간의 제1축, 제2축 및 제3축에 각각 배치하여 둘 이상의 축으로 구성된 점의 좌표를 2차 암호화키의 서브 집합으로 설정하는 실시예를 보여준다. The
위 3개 축의 좌표점들이 중첩되는 검은색 점의 좌표들이 전술한 좌표를 의미하며 원(70)의 반경 안에 있는 점들이 한 개의 서브 세트를 구성하는 키들의 서브 집합이 될 수 있다. 그리고 사용자 장치(100)는 이들 좌표들을 2차 암호화키의 서브집합으로 설정하여 2차 암호화키를 생성할 수 있다. The coordinates of the black dots where the coordinate points of the three axes overlap mean the above-mentioned coordinates, and the points within the radius of the
도 10은 본 발명의 일 실시예에 의한 가상 세계의 공간을 분할하는 예를 보여주는 도면이다.10 is a diagram showing an example of dividing a space of a virtual world according to an embodiment of the present invention.
사용자 장치(100)는 메타버스 서버(300)가 제공하는 메타버스 세계 내의 가상 자산을 소유하며, 사용자 장치(100)는 가상 자산의 좌표 정보를 전술한 2차 공개키 또는 1차 공개키로 암호화하여 자산 블록에 저장하고 추후 해당 가산 자산의 소유권을 입증할 수 있다. The
부동산 거래를 수행함에 있어서, 메타버스 세계 내의 가상의 땅, 건물 등의 모양을 현실세계와 달리 다양한 모양(직사각형이나 각지 형태가 아니라 손가락으로 터치하여 다양한 곡선으로 이루어진 지적도 등)을 지도로 그릴 수 있다. 또한, 현실세계에는 존재하지 않는 특이한 형태의 건축물을 메타버스 세계 내에 건축할 수 있다.In carrying out real estate transactions, different shapes of virtual land and buildings in the metaverse world can be mapped in various shapes (not rectangular or angular, but cadastral maps made of various curves by touching with a finger). . In addition, unique types of buildings that do not exist in the real world can be built in the metaverse world.
예를 들어, 메타버스 세계 내에서는 강남역 한복판에 에펠탑을 세우는 것이 가능하다. 그리고, 사용자 장치(100)는 그 소유권을 가상세계에서 인정받기 위해, 더 높은 수준의 3D 보안키를 생성할 수 있다. 이때 사용자 장치(100)는 3차원 보안키를 생성하기 위해, 생체 정보를 바탕으로 3D 신호 스페이스(Signal Space)를 수립하고, 각 생체정보(지문, 홍채, 음성)의 특징점들에게 부여된 소수(prime numbe)들을 3D 신호 스페이스(Signal Space)에 X축, Y축, Z축으로 매핑한다. 도 9에서 지문 특징점의 소수들의 축은 Y축, 음성성문 특징점의 소수들의 축은 X축, 그리고 홍채 특징점의 소수들의 축은 Z축으로 설정된다. For example, within the metaverse world, it is possible to build the Eiffel Tower in the middle of Gangnam Station. In addition, the
그리고, 사용자 장치(100)는 가장 근거리에 위치한 점들의 그룹을 형성하여 각각 P1 = {{{x11, y11, z11}, {x12, y12, z12}, {x23, y23, z23}}, {{x21, y21, z21}, {x22, y22, z22}, {x23, y23, z23}}, {{x31, y31, z31}, {x32, y32, z32}, {x33, y33, z33}}, { {x41, y41, z41}, {x42, y42, z42}, {x43, y43, z43} }} 라고 정의한다 그리고 사용자 장치(100)는 이들 점들을 이용하여 암호화키의 그룹을 형성할 수 있다. 그리고 사용자 장치(100)가 가상/현실의 자산의 정보를 기록할 때, 자산의 특징있는 영역의 구간을 분할하여, 전술한 암호화키의 그룹 중에서 임의의 키 그룹을 선택하여 자산의 분할된 구역마다 서로 다른 키들을 적용할 수 있다. Then, the
도 10은 암호화키를 생성함에 있어서 보안 레벨에 따라 차등화된 서비스를 제공하기 위해 지적도를 분할한다. 예를 들어, 도 10은 단순한 사각형의 형태가 아니라 복잡한 경계선을 가지는 지적도로 구성되어 있다. 그리고 지적도를 나타내기 위한 각각의 점들은 (a, b), (c, d), (e, f), (g, h), (i, j), (k, l), (m, n), (o, p), (q, r), (s, u), (v, w), (x, y)로 정의된다. 10 divides cadastral maps to provide differentiated services according to security levels in generating encryption keys. For example, FIG. 10 is composed of a cadastral map having complex boundary lines rather than a simple rectangular shape. And each point to indicate the cadastral map is (a, b), (c, d), (e, f), (g, h), (i, j), (k, l), (m, n ), (o, p), (q, r), (s, u), (v, w), (x, y).
그리고 이 중에서 (a, b), (c, d)는 지적도를 분할한 제1그룹에 포함된다. (e, f), (g, h), (i, j), (k, l)는 지적도를 분할한 제2그룹에 포함된다. (m, n), (o, p), (q, r), (s, u)는 지적도를 분할한 제3그룹에 포함된다. (v, w), (x, y)는 지적도를 분할한 제4그룹에 포함된다. Among them, (a, b) and (c, d) are included in the first group in which the cadastral map is divided. (e, f), (g, h), (i, j), and (k, l) are included in the second group in which the cadastral map is divided. (m, n), (o, p), (q, r), and (s, u) are included in the third group in which the cadastral map is divided. (v, w) and (x, y) are included in the fourth group in which the cadastral map is divided.
그리고, 지적도 분할 그룹 1, 2, 3, 4의 데이터를 암호화하기 위하여 보안도가 높은 키의 조합인 그룹 P1의 원소 키원소 서브그룹 중에서 랜덤하게 키의 서브 그룹들을 위 데이터의 갯수(4개, 사각형으로 표시)만큼 선택하여, 각각의 키를 위 분할 1, 2, 3, 4에 곱해서 암화화 데이터 스트림인 B1, B2, B3, B4를 생성하여 사용자 장치(100)가 서버에게 보안채널을 통해서 전송한다. In addition, in order to encrypt the data of cadastral
메타버스 서버(300)는 이전의 사용자 장치(100)와 상호 인증 메커니즘을 통해서 사용자 장치(100)의 생체인증 키들(동공, 음성, 지문 등에서 산출된 키들)의 정보를 저장하고 있다. 따라서, 메타버스 서버(300)는 도 9와 같이 3차원 키의 신호 스페이스(Signal Space)를 형성할 수 있으며, 각 특징점 좌표들을 매핑시켜서 각 그룹을 형성하는 룰에 대한 정보 및 각 암호화된 블록들이 4개가 수신되었음을 미리 확인할 수 있다.The
그리고 메타버스 서버(300)는 암호화 블록 4개를 사용자 장치(100)의 공개키 4개로 각각 복호화하여 각 지적도분할 1, 2, 3, 4의 정보를 해석할 수 있다. In addition, the
도 10에서 메타버스 세계에서의 가상의 자산의 소유를 위한 가산자산의 암호화 기술에 대해 살펴본다. 16개의 점의 좌표는 가상세계에서의 땅의 지도중 에서 주요 구분을 지을 수 있는 주요 지점에 대한 좌표이다. 그리고 4개의 점을 모으면 해당 영역의 땅을 구분할 수 있다. 4개의 점의 좌표를 집합으로 구성하여 {(a,b), (c,d),(e,f),(g,h)}, 형태로 표현한 집합이 4개가 존재한다. In FIG. 10, we look at the encryption technology of countable assets for the possession of virtual assets in the metaverse world. The coordinates of the 16 points are the coordinates of the main points that can be distinguished from the map of the land in the virtual world. And if you collect 4 dots, you can distinguish the land of the area. There are four sets expressed in the form of {(a,b), (c,d), (e,f), (g,h)} by composing the coordinates of four points.
2차 암호화 공개키의 길이는 충분히 길고, 임의의 지점을 각각 4군데를 지정하여, 암호화 비트의 스트림을 생성하고, 위 {(a,b), (c,d),(e,f),(g,h)}를 각 비트의 스트림을 곱해서 암호화된 비트를 생성한다.The length of the secondary encryption public key is sufficiently long, and each of four random points is designated to generate a stream of encryption bits, and the above {(a,b), (c,d), (e,f), (g,h)} multiplied by each stream of bits to produce encrypted bits.
실제로 가상셰계의 자산이나 토지의 좌표는 반듯한 선의 형태가 아니고 다양한 형태의 곡면과 3차원 입체 공간에 대한 3차원 좌표로 표현될 수 있다. 즉, 도 10은 간략하게 표현하기 위해서 짧은 길이의 숫자들의 집합들만을 표현하였으나 실제로 메타버스 세계 내에서 사용되는 입체적 형상을 지닌 가상자산들의 좌표는 길이가 충분히 긴 좌표들의 집합들일 수 있다. 즉, (a,b) = (0x1234567890ABCDEF, 0x9876543210FEDCDBA) 등의 형태로서 값 1개가 굉장히 긴 길이의 bit를 가질 수 있다. In fact, the coordinates of assets or land in the virtual world are not in the form of straight lines, but can be expressed as 3D coordinates for various types of curved surfaces and 3D space. That is, although FIG. 10 represents only short-length sets of numbers for simplicity, the coordinates of virtual assets having three-dimensional shapes actually used in the metaverse world may be sets of long-length coordinates. That is, in the form of (a,b) = (0x1234567890ABCDEF, 0x9876543210FEDCDBA), one value can have a very long bit.
입체적 형상의 좌표는 (a,b,c) = (0x1234567890ABCDEF, 0x9876543210FEDCDBA, 0xFFFFAAAADDDD)와 긴 길이를 가지는 비트들로 3차원좌표로 구성된다.The coordinates of a three-dimensional shape are composed of three-dimensional coordinates with (a,b,c) = (0x1234567890ABCDEF, 0x9876543210FEDCDBA, 0xFFFFAAAADDDD) and long bits.
메타버스 서버(300)는 (a, b, c)의 각 원소 a, b, c를 2차원키에서 추출한 충분히 긴 암호화시퀀스를 3개를 추출하여, 각각의 원소와 곱하여 암호화된 시퀀스 S1, S2, S3, S4, S5, S6, S7, S8, S9, S10, S11, S12 들을 블록의 암호화부에 넣은후에, "표제부+암호화부"로 구성된 블록을 형성하고, 노드들에게 무결성 검증을 받은 후에 블록체인에 블록을 연결함으로서 가상자산에 대한 소유권을 블록체인에 기록한다.The
전술한 실시예를 적용할 경우, 가전제품에서 사용자가 직접 비밀번호(개인키)를 입력하지 않아도 다수의 생체인증수단을 통해서 1차 암호채널 및 2차 암호채널을 형성하여 사용자 장치(100)와 서버(300)간에 인증을 수행하고 NFT, 아이템 등을 가상자산으로 구매할 수 있다. 특히, 생체 정보를 이용하여 암호화키들을 생성하고, 1차 암호화 개인정보와 구매정보를 2차 암호화채널을 통해 송수신하여 구매를 진행할 수 있다. NFT나 아이템 등은 1, 2차 암호화 과정을 거쳐 블록체인에 연결하여 양도될 수 있다. When the above-described embodiment is applied, the
또한, 가전 제품 등의 사용자 장치(100)에 특화된 전자 지갑을 기반으로 메타버스 세계에서 가상의 아이템 거래와 가상자산을 지불하기 위해 장치들 사이에 1차 암호화채널 및 2차 암호화채널을 형성하여 블록체인을 기반으로 2중으로 암호화된 NFT, 아이템과 가산자산과 교환할 수 있다. In addition, based on electronic wallets specialized for
종래에는 핸드폰 앱 또는 pc에서 사용자가 직접 개인정보를 입력하고, 신원인증을 받은 후에 각자 전자 지갑을 생성할 수 있었다. 그러나, 본 발명의 실시예를 적용할 경우, 집안에 설치된 가전제품에서 측정한 센서데이터를 메타버스 서버(300)가 심도있게 분석하여 각 고객을 음성성문 분석, 얼굴인식을 통해서 식별하고 각 개인별로 전자 지갑을 발행하며 메타버스 세계에서 주고 받는 NFT 또는 아이템에 대한 대가와 보상으로 가상화폐를 송금, 수신할 수 있다. Conventionally, users can directly enter personal information in a mobile phone app or PC, and after receiving identity authentication, each user can create an electronic wallet. However, when the embodiment of the present invention is applied, the
본 발명은 전자지갑을 핸드폰이나 PC의 웹브라우저의 플러그인앱 또는 PC에 설치하는 애플리케이션 형태로 구현하지 않는다. 전술한 장치들 또는 가전제품(냉장고, 세탁기, 건조기 등)등을 포괄하는 사용자 장치(100)에 전자지갑을 생성하고 가전제품이나 PC, 휴대폰 등이 센서를 통하여 습득한 로우 데이터(Raw Data)를 메타버스 서버(300)가 분석하여 각 개인을 식별하는 정보를 생성하여 전자지갑을 자동으로 생성한다. 그리고 안전한 개인키로서 개인의 음성성문, 지문인식, 동공인식, 걸음걸이 인식을 사용하여 가상화폐의 송금, 수신을 제어하여 편리성을 높일 수 있다. The present invention does not implement an electronic wallet in the form of a plug-in app of a web browser of a mobile phone or PC, or an application installed on a PC. Create an electronic wallet in the
메타버스 세계 내에서 사용자 장치(100)가 가상 자산 또는 "가산자산+현물자산(가전제품 등)"을 구매, 배송, 설치, AS, 양도 등의 행위를 할 경우, 지불되는 비용을 가상화폐로 자동으로 송금, 수신할 수 있도록 하여 보안성을 높이고 가상화폐로 현실세계의 제품(가전제품, 화장품, 기타 상품들 등)을 구매할 수 있다.In the metaverse world, when the
본 명세서에서 NFT(Non-Fungible Token)은 사용자 장치 또는 판매자 장치 사이에서 거래될 수 있는 가상 자산에 대한 정보를 포함한다. 이 정보는 메타버스 상에서, 혹은 블록체인을 이용하여 거래 가능하거나 또는 다른 장치들에게 배포될 수 있다. In this specification, NFT (Non-Fungible Token) includes information about virtual assets that can be traded between user devices or seller devices. This information can be transacted on the metaverse, or using a blockchain, or distributed to other devices.
본 명세서에서 가상자산 또는 NFT를 전송 및 수신한다는 의미는 가상자산이나 NFT가 블록체인에 포함되며 해당 가상자산 또는 NFT를 포함하는 블록의 식별정보(예를 들어 주소)를 전송하거나 수신하는 것을 일 실시예로 한다.In this specification, the meaning of transmitting and receiving a virtual asset or NFT means that the virtual asset or NFT is included in a blockchain and transmits or receives identification information (eg address) of a block including the virtual asset or NFT. example
또한, 가상자산은 전자지갑의 형태로 교환될 수 있으며, 각 장치들에게 고유하게 할당된 전자지갑에서 가상자산이 유통될 수 있다.In addition, virtual assets can be exchanged in the form of electronic wallets, and virtual assets can be circulated in electronic wallets uniquely assigned to each device.
도 11은 본 발명의 일 실시예에 의한 사용자 장치의 구성을 보여주는 도면이다. 사용자 장치(100)는 통신부(110), 제어부(120) 및 저장부(150)로 구성된다. 11 is a diagram showing the configuration of a user device according to an embodiment of the present invention. The
저장부(150)는 1차 암호화키 및 이에 대응하는 1차 공개키와 2차 암호화키 및 이에 대응하는 2차 공개키를 저장한다. 통신부(110)는 메타버스 서버(300), 판매자 장치(200) 및 블록체인 노드들(500)과 통신한다. 제어부(120)는 저장부(150)와 통신부(110)를 제어한다. 통신부(110)는 다른 장치와의 데이터 또는 블록의 식별 정보를 송수신하는 작업을 수행한다. 제어부(120)는 정보나 블록을 암호화 또는 복호화하거나 생성하는 작업을 수행한다. The
보다 상세히 살펴본다. 제어부(120)가 사용자의 제1생체 정보를 이용하여 1차 암호화키 및 이에 대응하는 1차 공개키를 생성하여 저장부(150)에 저장하고, 사용자의 제2생체 정보를 이용하여 2차 암호화키 및 이에 대응하는 2차 공개키를 생성하여 저장부(150)에 저장한다. Let's take a closer look. The
제어부(120)는 통신 대상인 메타버스 서버(300) 또는 판매자 장치(200)의 1차 공개키를 이용하여 2차 공개키 및 랜덤 넘버를 암호화한 제1블록을 생성하여 블록체인에 추가하는 프로세스를 수행한다.The
통신부(110)가 제1블록의 식별정보를 블록체인 노드(500)로부터 수신하여 메타버스 서버(300) 또는 판매자 장치(200)에게 전송할 수 있다. The
제어부(120)가 메타버스 서버(300) 또는 판매자 장치(200)로부터 수신한 제2블록의 식별정보를 이용하여 제2블록을 사용자 장치의 2차 암호화키로 복호화하여 랜덤 넘버를 확인한다. 그리고 제어부(120)는 메타버스 서버(300) 또는 판매자 장치(200)를 신뢰성있는 통신 상대 장치로 설정하고 통신부(110)가 메타버스 서버(300) 또는 판매자 장치(200)와 데이터 또는 블록의 식별정보를 송수신한다. The
전술한 암호화 과정 및 구성은 사용자 장치뿐만 아니라 판매자 장치에도 적용된다. The above encryption process and configuration are applied to the seller's device as well as the user's device.
또한, 전술한 과정에서는 1차 암호화키-1차 공개키와 2차 암호화키-2차 공개키를 생성하였으나, 동일한 메커니즘으로 3차 암호화키-3차 공개키를 생성할 수 있으며, 사용자 장치, 서버, 판매자 장치 등은 각각의 정보 공유 과정에서 각기 다른 암호화키-공개키를 사용하여 보안성을 높일 수 있다. 즉, 다중 암호화 채널을 유지함으로써 해킹 시도가 발생할 경우에도 데이터의 유출을 방지할 수 있다. In addition, in the above process, the first encryption key-first public key and the second encryption key-second public key were generated, but the third encryption key-third public key can be generated with the same mechanism, and the user device, Servers, vendor devices, etc. may increase security by using different encryption keys-public keys in each information sharing process. That is, by maintaining multiple encryption channels, data leakage can be prevented even when a hacking attempt occurs.
본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않으며 다양한 변경과 변형은 발명의 범위를 벗어나지 않는 한 본 발명의 범주에 포함된다. 각 구성 요소들이 각각 하나의 독립적인 구성요소인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램 또는 소프트웨어 등으로 구현될 수도 있다. 또는 구성요소가 하나의 장치 또는 모듈 내에 구현될 수도 있고, 혹은 하나의 구성요소가 다수의 장치 또는 모듈들에 나뉘어져서 구현될 수도 있다.The present invention may be embodied in many different forms and is not limited to the embodiments described herein, and various changes and modifications are included in the scope of the present invention without departing from the scope of the present invention. Although each component can be implemented as an independent hardware component, some or all of the components are selectively combined to perform some or all of the combined functions in one or a plurality of hardware program modules. It may be implemented as a computer program or software having Alternatively, a component may be implemented in one device or module, or one component may be implemented by being divided into multiple devices or modules.
100: 사용자 장치
200: 판매자 장치
300: 메타버스 서버
500: 블록체인 노드100: user device 200: seller device
300: metaverse server 500: blockchain node
Claims (16)
사용자 장치가 상기 사용자의 제2생체 정보를 이용하여 2차 암호화키 및 이에 대응하는 2차 공개키를 생성하여 저장하는 단계;
상기 사용자 장치는 통신 대상인 메타버스 서버 또는 판매자 장치의 1차 공개키를 이용하여 상기 2차 공개키 및 랜덤 넘버를 암호화한 제1블록의 식별정보를 상기 메타버스 서버 또는 상기 판매자 장치에게 전송하는 단계;
상기 사용자 장치가 메타버스 서버 또는 상기 판매자 장치로부터 수신한 제2블록의 식별정보를 이용하여 상기 제2블록을 상기 사용자 장치의 2차 암호화키로 복호화하여 상기 랜덤 넘버를 확인하는 단계; 및
상기 사용자 장치는 상기 메타버스 서버 또는 상기 판매자 장치를 신뢰성있는 통신 상대 장치로 설정하고 데이터 또는 블록의 식별정보를 송수신하는 단계를 포함하는, 다중 암호화 채널을 이용한 통신 방법.
generating and storing, by a user device, a primary encryption key and a primary public key corresponding to the primary encryption key using the user's first biometric information;
generating and storing, by a user device, a second encryption key and a corresponding second public key using the second biometric information of the user;
The user device using the primary public key of the metaverse server or seller device to communicate, transmitting identification information of the first block that encrypts the secondary public key and random number to the metaverse server or the seller device ;
Decrypting the second block with a secondary encryption key of the user device using the identification information of the second block received by the user device from the metaverse server or the seller device to check the random number; and
The user device sets the metaverse server or the seller device as a reliable communication counterpart device and transmits and receives data or block identification information.
상기 사용자 장치는 상기 메타버스 서버 또는 상기 판매자 장치로부터 상기 사용자 장치의 1차 공개키로 암호화된 제3블록의 식별 정보를 수신하여 상기 사용자 장치의 1차 암호화키로 상기 제3블록을 복호화하여 상기 판매자 장치의 1차 공개키를 확인하는 단계;
상기 사용자 장치는 상기 사용자 장치의 상기 2차 공개키, 구매 정보 및 상기 판매자 장치의 2차 공개키를 요청하는 제4블록을 상기 판매자 장치의 1차 공개키로 암호화하고 상기 제4블록의 식별 정보를 상기 판매자 장치에게 전송하는 단계를 더 포함하는, 다중 암호화 채널을 이용한 통신 방법.
According to claim 1,
The user device receives the identification information of the third block encrypted with the primary public key of the user device from the metaverse server or the seller device, decrypts the third block with the primary encryption key of the user device, and decrypts the seller device Checking the primary public key of;
The user device encrypts a fourth block requesting the secondary public key of the user device, purchase information, and the secondary public key of the seller device with the primary public key of the seller device, and generates identification information of the fourth block. Further comprising the step of transmitting to the seller device, a communication method using multiple encryption channels.
상기 사용자 장치는 상기 판매자 장치로부터 제5블록의 식별정보를 수신하여 상기 제5블록을 상기 사용자 장치의 2차 암호화키로 복호화하여 상기 판매자 장치의 2차 공개키를 확인하는 단계; 및
상기 사용자 장치는 상기 구매 정보에 대응하는 거래 대금인 코인을 포함하는 제6블록을 상기 판매자 장치의 상기 2차 공개키로 암호화하여 상기 제6블록의 식별 정보를 상기 판매자 장치에게 전송하는 단계를 더 포함하는, 다중 암호화 채널을 이용한 통신 방법.
According to claim 2,
the user device receiving identification information of a fifth block from the seller device, decrypting the fifth block with a secondary encryption key of the user device, and confirming a secondary public key of the seller device; and
The user device further comprising the step of encrypting a sixth block containing a coin that is the transaction price corresponding to the purchase information with the secondary public key of the seller device and transmitting identification information of the sixth block to the seller device. A communication method using multiple encryption channels.
상기 제1생체 정보는 상기 사용자의 지문의 특징점 정보이며,
상기 제2생체 정보는 상기 사용자의 홍채 특징점 또는 상기 사용자의 음성 특징점 중 어느 하나 이상인, 다중 암호화 채널을 이용한 통신 방법.
According to claim 1,
The first biometric information is feature point information of the user's fingerprint,
The second biometric information is at least one of the user's iris feature point and the user's voice feature point.
상기 사용자 장치는 상기 제1생체 정보의 특징점을 소수(prime number)의 리스트를 원형으로 생성하여 특정한 길이의 1차 암호화키를 산출하는 단계를 더 포함하는, 다중 암호화 채널을 이용한 통신 방법.
According to claim 1,
The user device further comprises calculating a primary encryption key of a specific length by generating a list of prime numbers of feature points of the first biometric information in a circular form.
상기 사용자 장치는 상기 제1생체 정보에서 산출된 정보 및 상기 제2생체 정보에서 산출된 정보 중 일부 비트를 추출하여 상기 2차 암호화키를 산출하는 단계를 더 포함하는, 다중 암호화 채널을 이용한 통신 방법.
According to claim 1,
The user device further comprises calculating the secondary encryption key by extracting some bits from among the information calculated from the first biological information and the information calculated from the second biological information. .
상기 2차 암호화키 및 이에 대응하는 2차 공개키를 생성하여 저장하는 단계는
상기 사용자 장치가 상기 사용자의 상기 제1생체 정보, 상기 제2생체 정보 및 제3생체 정보를 3차원 공간의 제1축, 제2축 및 제3축에 각각 배치하는 단계; 및
상기 둘 이상의 축으로 구성된 점의 좌표를 상기 2차 암호화키의 서브 집합으로 설정하는 단계를 더 포함하는, 다중 암호화 채널을 이용한 통신 방법.
According to claim 1,
The step of generating and storing the secondary encryption key and the secondary public key corresponding thereto
arranging, by the user device, the first, second, and third biological information of the user on a first axis, a second axis, and a third axis, respectively, in a 3D space; and
The communication method using multiple encryption channels further comprising setting coordinates of points composed of the two or more axes as a subset of the secondary encryption key.
상기 사용자 장치는 상기 메타버스 서버가 제공하는 메타버스 세계 내의 가상 자산을 소유하며,
상기 사용자 장치는 상기 가상 자산의 좌표 정보를 상기 2차 공개키 또는 상기 1차 공개키로 암호화하여 자산 블록에 저장하는 단계를 더 포함하는, 다중 암호화 채널을 이용한 통신 방법.
According to claim 1,
The user device owns virtual assets in the metaverse world provided by the metaverse server,
The user device further comprises encrypting the coordinate information of the virtual asset with the secondary public key or the primary public key and storing it in an asset block.
메타버스 서버, 판매자 장치 및 블록체인 노드들과 통신하는 통신부; 및
상기 저장부와 상기 통신부를 제어하는 제어부를 포함하며,
상기 제어부가 사용자의 제1생체 정보를 이용하여 1차 암호화키 및 이에 대응하는 1차 공개키를 생성하여 상기 저장부에 저장하고, 상기 사용자의 제2생체 정보를 이용하여 2차 암호화키 및 이에 대응하는 2차 공개키를 생성하여 상기 저장부에 저장한 후,
상기 제어부는 통신 대상인 메타버스 서버 또는 판매자 장치의 1차 공개키를 이용하여 상기 2차 공개키 및 랜덤 넘버를 암호화한 제1블록을 생성하여 상기 블록체인에 추가하는 프로세스를 수행하며,
상기 통신부가 상기 제1블록의 식별정보를 상기 블록체인 노드로부터 수신하여 상기 메타버스 서버 또는 상기 판매자 장치에게 전송하며,
상기 제어부가 상기 메타버스 서버 또는 상기 판매자 장치로부터 수신한 제2블록의 식별정보를 이용하여 상기 제2블록을 상기 사용자 장치의 2차 암호화키로 복호화하여 상기 랜덤 넘버를 확인한 후,
상기 제어부는 상기 메타버스 서버 또는 상기 판매자 장치를 신뢰성있는 통신 상대 장치로 설정하고 상기 통신부가 상기 메타버스 서버 또는 상기 판매자 장치와 데이터 또는 블록의 식별정보를 송수신하는, 사용자 장치.
a storage unit for storing a primary encryption key, a primary public key corresponding thereto, a secondary encryption key, and a secondary public key corresponding thereto;
A communication unit that communicates with the metaverse server, merchant device, and blockchain nodes; and
And a control unit for controlling the storage unit and the communication unit,
The control unit generates a primary encryption key and a primary public key corresponding thereto using the user's first biometric information and stores them in the storage unit, and uses the user's second biometric information to generate a secondary encryption key and a primary encryption key corresponding thereto. After generating the corresponding secondary public key and storing it in the storage unit,
The control unit performs a process of generating a first block in which the secondary public key and random number are encrypted using the primary public key of the metaverse server or seller device to be communicated and adding to the blockchain,
The communication unit receives the identification information of the first block from the blockchain node and transmits it to the metaverse server or the seller device,
After the controller checks the random number by decrypting the second block with the secondary encryption key of the user device using the identification information of the second block received from the metaverse server or the seller device,
The control unit sets the metaverse server or the seller device as a reliable communication counterpart device, and the communication unit transmits and receives identification information of data or blocks with the metaverse server or the seller device.
상기 통신부가 상기 메타버스 서버 또는 상기 판매자 장치로부터 상기 사용자 장치의 1차 공개키로 암호화된 제3블록의 식별 정보를 수신한 후,
상기 제어부가 상기 사용자 장치의 1차 암호화키로 상기 제3블록을 복호화하여 상기 판매자 장치의 1차 공개키를 확인한 후, 상기 사용자 장치의 상기 2차 공개키, 구매 정보 및 상기 판매자 장치의 2차 공개키를 요청하는 제4블록을 상기 판매자 장치의 1차 공개키로 암호화하며,
상기 통신부 상기 제4블록의 식별 정보를 상기 판매자 장치에게 전송하는, 사용자 장치.
According to claim 9,
After the communication unit receives the identification information of the third block encrypted with the primary public key of the user device from the metaverse server or the seller device,
After the control unit decrypts the third block with the primary encryption key of the user device and confirms the primary public key of the seller device, the secondary public key of the user device, purchase information, and secondary disclosure of the seller device The fourth block requesting a key is encrypted with the primary public key of the seller device,
The communication unit transmits the identification information of the fourth block to the seller device, the user device.
상기 통신부가 상기 판매자 장치로부터 제5블록의 식별정보를 수신하면 상기 제어부는 상기 제5블록을 상기 사용자 장치의 2차 암호화키로 복호화하여 상기 판매자 장치의 2차 공개키를 확인한 후, 상기 구매 정보에 대응하는 거래 대금인 코인을 포함하는 제6블록을 상기 판매자 장치의 상기 2차 공개키로 암호화하며,
상기 통신부는 상기 제6블록의 식별 정보를 상기 판매자 장치에게 전송하는, 사용자 장치.
According to claim 10,
When the communication unit receives the identification information of the fifth block from the seller device, the control unit decrypts the fifth block with the secondary encryption key of the user device, confirms the secondary public key of the seller device, Encrypting a sixth block containing coins corresponding to the transaction price with the secondary public key of the seller device;
The communication unit transmits the identification information of the sixth block to the seller device, the user device.
상기 제1생체 정보는 상기 사용자의 지문의 특징점 정보이며,
상기 제2생체 정보는 상기 사용자의 홍채 특징점 또는 상기 사용자의 음성 특징점 중 어느 하나 이상인, 사용자 장치.
According to claim 9,
The first biometric information is feature point information of the user's fingerprint,
The second biometric information is at least one of the user's iris feature point and the user's voice feature point.
상기 제어부는 상기 제1생체 정보의 특징점을 소수(prime number)의 리스트를 원형으로 생성하여 특정한 길이의 1차 암호화키를 산출하는, 사용자 장치.
According to claim 9,
The control unit calculates a primary encryption key of a specific length by generating a list of prime numbers of feature points of the first biometric information in a circular form.
상기 제어부는 상기 제1생체 정보에서 산출된 정보 및 상기 제2생체 정보에서 산출된 정보 중 일부 비트를 추출하여 상기 2차 암호화키를 산출하는, 사용자 장치.
According to claim 9,
wherein the control unit calculates the secondary encryption key by extracting some bits from among the information calculated from the first biological information and the information calculated from the second biological information.
상기 제어부는 상기 사용자의 상기 제1생체 정보, 상기 제2생체 정보 및 제3생체 정보를 3차원 공간의 제1축, 제2축 및 제3축에 각각 배치하여 상기 둘 이상의 축으로 구성된 점의 좌표를 상기 2차 암호화키의 서브 집합으로 설정하는, 사용자 장치.
According to claim 9,
The control unit arranges the first, second, and third biological information of the user on a first axis, a second axis, and a third axis of a 3D space, respectively, so that a point composed of the two or more axes is obtained. A user device that sets coordinates to a subset of the secondary encryption key.
상기 사용자 장치는 상기 메타버스 서버가 제공하는 메타버스 세계 내의 가상 자산을 소유하며,
상기 제어부는 상기 가상 자산의 좌표 정보를 상기 2차 공개키 또는 상기 1차 공개키로 암호화하여 자산 블록에 저장하는, 사용자 장치.
According to claim 9,
The user device owns virtual assets in the metaverse world provided by the metaverse server,
The control unit encrypts the coordinate information of the virtual asset with the secondary public key or the primary public key and stores it in an asset block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210155682A KR102658318B1 (en) | 2021-11-12 | 2021-11-12 | Method of communicationg using multiple secure channel and device implementing thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210155682A KR102658318B1 (en) | 2021-11-12 | 2021-11-12 | Method of communicationg using multiple secure channel and device implementing thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230069554A true KR20230069554A (en) | 2023-05-19 |
KR102658318B1 KR102658318B1 (en) | 2024-04-16 |
Family
ID=86546834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210155682A KR102658318B1 (en) | 2021-11-12 | 2021-11-12 | Method of communicationg using multiple secure channel and device implementing thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102658318B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180065694A (en) * | 2016-12-08 | 2018-06-18 | (주)아이티 노매즈 | System and method for authenticating identity using multi-biometrics |
JP2019102979A (en) * | 2017-12-01 | 2019-06-24 | ソラミツ株式会社 | Method related to transaction based on personal identification using biological information |
KR102154657B1 (en) * | 2018-11-22 | 2020-09-10 | 금오공과대학교 산학협력단 | Data transmission method of wireless communication system using block chain |
-
2021
- 2021-11-12 KR KR1020210155682A patent/KR102658318B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180065694A (en) * | 2016-12-08 | 2018-06-18 | (주)아이티 노매즈 | System and method for authenticating identity using multi-biometrics |
JP2019102979A (en) * | 2017-12-01 | 2019-06-24 | ソラミツ株式会社 | Method related to transaction based on personal identification using biological information |
KR102154657B1 (en) * | 2018-11-22 | 2020-09-10 | 금오공과대학교 산학협력단 | Data transmission method of wireless communication system using block chain |
Non-Patent Citations (1)
Title |
---|
Alfred J. Menezes 외 2명, Handbook of Applied Cryptography, CRC Press (1996.)* * |
Also Published As
Publication number | Publication date |
---|---|
KR102658318B1 (en) | 2024-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10147076B2 (en) | Digital currency (virtual payment cards) issued by central bank for mobile and wearable devices | |
US10521776B2 (en) | UN currency (virtual payment cards) issued by central bank or other issuer for mobile and wearable devices | |
US10521777B2 (en) | Crypto digital currency (virtual payment cards) issued by central bank or other issuer for mobile and wearable devices | |
US10055714B2 (en) | Digital currency (virtual payment cards) issued by central bank for mobile and wearable devices | |
US20210357893A1 (en) | Systems and methods for commerce in a distributed system with blockchain protocols and smart contracts | |
US20160125403A1 (en) | Offline virtual currency transaction | |
CN103370688B (en) | A kind of system and method being generated multifactor personalization server strong encryption keys by ease of user password | |
US20210224795A1 (en) | Escrow non-face-to-face cryptocurrency transaction device and method using phone number | |
US6339765B1 (en) | Method and apparatus for defining private currencies | |
US20150046337A1 (en) | Offline virtual currency transaction | |
CN106462843A (en) | Master applet for secure remote payment processing | |
CN107278307A (en) | Software layer is mutually authenticated | |
CN110383757A (en) | System and method for safe handling electronic identity | |
JP2009526321A (en) | System for executing a transaction in a point-of-sale information management terminal using a changing identifier | |
KR101951408B1 (en) | A System Providing Virtual Money Managerial System | |
JP7536743B2 (en) | System and method for cryptographic authentication of contactless cards - Patents.com | |
CN107240010B (en) | Method and system for transferring digital currency to digital currency chip card | |
Christodorescu et al. | Towards a two-tier hierarchical infrastructure: an offline payment system for central bank digital currencies | |
WO2020109972A1 (en) | Un currency (virtual payment cards) issued by central bank or other issuer for mobile and wearable devices | |
KR102205765B1 (en) | Method And Apparatus for Providing Wallet for Enhancing Security And keeping Crypto-currency | |
CN107230078B (en) | Method and system for paying digital currency using a visual digital currency chip card | |
CN110689412A (en) | Method, device, server and storage medium for game virtual article transaction based on block chain | |
US20230396430A1 (en) | Tag-based authentication system and methods for use therewith | |
CN107230074B (en) | Method and system for depositing digital currency into digital currency chip card | |
WO2023036143A1 (en) | Decentralized zero-trust identity verification and authentication system and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |