KR102368805B1 - Notification server using blockchain-based mobile hacking prevention process and notification method using the same - Google Patents

Notification server using blockchain-based mobile hacking prevention process and notification method using the same Download PDF

Info

Publication number
KR102368805B1
KR102368805B1 KR1020200058248A KR20200058248A KR102368805B1 KR 102368805 B1 KR102368805 B1 KR 102368805B1 KR 1020200058248 A KR1020200058248 A KR 1020200058248A KR 20200058248 A KR20200058248 A KR 20200058248A KR 102368805 B1 KR102368805 B1 KR 102368805B1
Authority
KR
South Korea
Prior art keywords
user terminal
notification
server
master user
authentication
Prior art date
Application number
KR1020200058248A
Other languages
Korean (ko)
Other versions
KR20210140804A (en
Inventor
최봉결
Original Assignee
최봉결
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 최봉결 filed Critical 최봉결
Priority to KR1020200058248A priority Critical patent/KR102368805B1/en
Publication of KR20210140804A publication Critical patent/KR20210140804A/en
Application granted granted Critical
Publication of KR102368805B1 publication Critical patent/KR102368805B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/30Transportation; Communications
    • G06Q50/50
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/08Annexed information, e.g. attachments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/23Reliability checks, e.g. acknowledgments or fault reporting
    • H04L51/30
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • H04L67/26
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp

Abstract

본 발명은 알림공지서버 및 알림공지방법에 관한 것이다.
본 발명에서는 알림공지내용을 제목, 내용 및 첨부이미지로 구성하고, 첨부임지를 등록할 때 진위 여부에 대한 인증을 수행하고, 시퀀셜 채널번호가 부여된 암호화된 통신 채널을 사용하는 알림공지서버 및 알림공지방법이 개시된다.
본 발명에 따른 알림공지서버 및 알림공지방법에 의하면, 개인정보를 사용할 때 동의를 구하고 동의에 따라 해당 개인정보를 제공한 개인에게 보상을 제공할 수 있게 되었다.
The present invention relates to a notification notification server and notification notification method.
In the present invention, the notification notification server and notification using an encrypted communication channel to which the content of the notification notice is composed of a title, contents and an attached image, authenticity is verified when registering the attached assignment, and an encrypted communication channel to which a sequential channel number is assigned. A known method is disclosed.
According to the notification notification server and notification notification method according to the present invention, it is possible to obtain consent when using personal information and to provide compensation to the individual who provided the corresponding personal information in accordance with the consent.

Description

블록체인기반 모바일 해킹방지 프로세스를 이용한 알림공지서버 및 알림공지방법{NOTIFICATION SERVER USING BLOCKCHAIN-BASED MOBILE HACKING PREVENTION PROCESS AND NOTIFICATION METHOD USING THE SAME}Notification notification server and notification notification method using blockchain-based mobile hacking prevention process

본 발명은 블록체인기반 모바일 해킹방지 프로세스를 이용한 알림공지서버 및 알림공지방법에 관한 것으로서, 보다 구체적으로는 제3자 인증서버를 이용하여 알림 공지를 전송하는 단말 및 수신하는 단말기를 인증하고, 나아가 일련번호가 부여된 세션키 통신 방식을 적용하여 뛰어난 보안성을 갖는 블록체인기반 모바일 해킹방지 프로세스를 이용한 알림공지서버 및 알림공지방법에 관한 것이다.The present invention relates to a notification notification server and notification notification method using a block chain-based mobile hacking prevention process, and more specifically, to a terminal transmitting and receiving a notification notification using a third-party authentication server, and further It relates to a notification notification server and notification notification method using a block chain-based mobile hacking prevention process that has excellent security by applying a session key communication method assigned with a serial number.

우편물의 종류 중 내용증명이라는 것이 있다. 내용증명은 발신인이 해당 문서를 수신인에게 발송한 바 있음을 제3자인 우체국에서 증명해 주는 우편이다. 내용증명 방식으로 우편물을 발송하기 위해서는 동일한 문서를 세 부 작성해서 우체국에 가져가면 한 부는 발신인에게 반환하고, 다른 한 부는 수신인에게 우편 송부하고, 나머지 한 부는 우체국에서 보관하는 방식이다. 이러한 내용증명 우편물 발송은 법적으로 송부한 사실을 입증할 수 있으므로 향후 법적 분쟁을 대비하기 위해 자주 이용하는 우편 발송 방식이다.One of the types of mail is a certificate of contents. A proof of content is a postal mail that proves that the sender has sent the document to the recipient, which is a third party post office. In order to send mail using the proof-of-contents method, the same document is filled out in detail and brought to the post office, one copy is returned to the sender, the other copy is mailed to the recipient, and the other copy is kept at the post office. Sending mail with proof of content is a mail delivery method that is often used to prepare for legal disputes in the future because it can prove that it was sent legally.

그런데 이러한 내용증명 우편 방식은 이용 절차가 불편하고 우편 요금이 비교적 고가이므로 일반인이 손쉽게 이용하기 어려운 점이 있다. 또한 내용증명 우편물의 경우 수신인을 주식회사 대표자로 지정하여 송부하였는데 해당 주식회사의 직원이 이를 수신하고 고의든 착오에 의한 것이든 이를 대표자에게 전달하지 않은 경우라도 법적으로는 대표이사에게 전달되었다고 본다. 이는 행정적 및 법률적 측면에서는 문제가 없다고 할 수 있으나 대표자 입장에서는 실질적으로 받지 못한 것이므로 억울한 입장에 놓여지게 된다.However, this method of proof-of-contents is inconvenient to use and the postage is relatively expensive, so it is difficult for the general public to use it easily. Also, in the case of mail with certified contents, the recipient is designated as the representative of the corporation and sent, but even if the employee of the relevant corporation receives it and does not deliver it to the representative, whether intentionally or by mistake, it is legally considered to have been delivered to the CEO. It can be said that there is no problem in administrative and legal aspects, but from the point of view of the representative, it is not actually received, so it is placed in an unfair position.

한편, 실생활에서는 법적인 증명까지는 필요없으나 발신인이 수신인에게 문서 또는 메세지를 전달하고 수신인은 해당 문서 또는 메세지를 보았음을 확인해야 하는 일이 빈번히 발생한다. 한국에서는 주식회사 카카오에서 운영하는 일명 '카톡'을 이용하여 간단한 내용 또는 문서를 전달하고 수신인이 이를 수신하였음을 확인할 수 있는 표시를 제공하여 이용자에게 많은 호응을 얻고 있다. 그런데 카톡은 해킹에 취약하여 중요한 문서 및 메세지 전달하기에는 보안에 취약한 문제점을 지니고 있는 상태이다.Meanwhile, although legal proof is not required in real life, it frequently occurs that the sender delivers a document or message to the recipient and the recipient has to confirm that the document or message has been viewed. In Korea, simple contents or documents are delivered using so-called 'KakaoTalk' operated by Kakao Co., Ltd., and an indication is provided to confirm that the recipient has received it, which is well received by users. However, because KakaoTalk is vulnerable to hacking, it has a weak security problem in delivering important documents and messages.

한국등록특허 제10-2042935호 (2019.11.04. 등록)Korean Patent Registration No. 10-2042935 (Registered on 11/04/2019)

본 발명은 상기와 같은 문제점을 해결하고자 하는 것으로서, 보안을 유지하면서 발신인이 수신인에게 안전하게 문서를 송부할 수 있는 알림공지서버 및 알림공지방법을 제공하는 것을 목적으로 한다.An object of the present invention is to solve the above problems, and to provide a notification notification server and notification notification method by which a sender can safely send a document to a recipient while maintaining security.

본 발명의 상기 목적은 제목, 내용 및 첨부이미지로 구성되는 알림공지문서를 작성한 후 발송하는 마스터 사용자단말과, 상기 알림공지문서를 수신하는 복수 개 패밀리 사용자단말과, 상기 마스터 사용자단말 및 상기 패밀리 사용자단말을 인증하는 인증서버 및 상기 마스터 사용자단말과 상기 패밀리 사용자단말 사이에서 상기 알림공지문서를 전달하는 알림공지서버로 구성되는 알림공지시스템에서, 상기 알림공지서버에서 상기 알림공지문서를 전송하는 방법에 있어서, 마스터 사용자단말로부터 상기 마스터 사용자단말의 고유정보, 패밀리 사용자 리스트 및 상기 알림공지문서를 전송받는 제1단계와, 제1단계에서 전송받은 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 구성하는 첨부이미지를 상기 인증서버로 전송하는 제2단계와, 인증서버로부터 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 인증받은 후 난수를 발생시켜 전달받는 제3단계와, 제3단계에서 전송받은 난수를 상기 마스터 사용자단말에 전송한 후, 상기 마스터 사용자단말로부터 상기 난수, 상기 마스터 사용자단말 고유정보, 상기 첨부이미지(이하, 이를 '(난수, 고유정보, 첨부)'라 함)를 해쉬하여 생성되는 해쉬값을 전달받는 제4단계와, 제4단계에서 전송받은 (난수, 고유정보, 첨부) 해쉬값을 다시 한 번 더 해쉬하여 상기 인증서버로 전송하는 제5단계 및 인증서버로부터 인증 결과를 수령하고, 인증된 경우 상기 마스터 사용자단말에 알림공지문서를 저장하는 제6단계를 포함하는 것을 특징으로 하는 알림공지서버에서 알림공지문서를 전송하는 방법에 의해서 달성 가능하다.The above object of the present invention is a master user terminal that prepares and sends a notification notification document composed of a title, content and attached image, a plurality of family user terminals that receive the notification notification document, the master user terminal and the family user In a notification notification system comprising an authentication server for authenticating a terminal and a notification server for transmitting the notification document between the master user terminal and the family user terminal, the method for transmitting the notification notification document from the notification server In the following, the first step of receiving the unique information of the master user terminal, the family user list, and the notification notification document from the master user terminal, and configuring the unique information and the notification notification document of the master user terminal received in the first step A second step of transmitting the attached image to the authentication server, a third step of generating and receiving a random number after authenticating the master user terminal's unique information and the notification notice document from the authentication server, and the third step; After transmitting the received random number to the master user terminal, the random number, the master user terminal unique information, and the attached image (hereinafter referred to as '(random number, unique information, attached)') are hashed from the master user terminal. The fourth step of receiving the generated hash value, the fifth step of hashing the (random number, unique information, attached) hash value transmitted in the fourth step once more and transmitting it to the authentication server, and the authentication result from the authentication server This can be achieved by a method of transmitting a notification notification document from a notification notification server, characterized in that it includes a sixth step of receiving and storing the notification notification document in the master user terminal when authenticated.

본 발명의 또 다른 목적은 제목, 내용 및 첨부이미지로 구성되는 알림공지문서를 작성한 후 발송하는 마스터 사용자단말과, 상기 알림공지문서를 수신하는 복수 개 패밀리 사용자단말과, 상기 마스터 사용자단말 및 상기 패밀리 사용자단말을 인증하는 인증서버 및 상기 마스터 사용자단말과 상기 패밀리 사용자단말 사이에서 상기 알림공지문서를 전달하는 알림공지서버로 구성되는 알림공지시스템에서, 상기 알림공지서버는 마스터 사용자단말로부터 상기 마스터 사용자단말의 고유정보, 패밀리 사용자 리스트 및 상기 알림공지문서를 전송받고, 전송받은 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 구성하는 첨부이미지를 상기 인증서버로 전송하고, 상기 인증서버로부터 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 인증받은 후 난수를 발생시켜 전달받고, 전송받은 상기 난수를 상기 마스터 사용자단말에 전송한 후, 상기 마스터 사용자단말로부터 상기 난수, 상기 마스터 사용자단말 고유정보, 상기 첨부이미지(이하, 이를 '(난수, 고유정보, 첨부)'라 함)를 해쉬하여 생성되는 해쉬값을 전달받고, 전송받은 (난수, 고유정보, 첨부) 해쉬값을 다시 한 번 더 해쉬하여 상기 인증서버로 전송하고, 상기 인증서버로부터 인증 결과를 수령하고, 인증된 경우 상기 마스터 사용자단말에 알림공지문서를 저장하는 것을 특징으로 하는 알림공지서버에 의해서 달성 가능하다.Another object of the present invention is a master user terminal that prepares and sends a notification notice document composed of title, content and attached image, a plurality of family user terminals that receive the notification notice document, the master user terminal and the family In the notification notification system comprising an authentication server for authenticating a user terminal and a notification server for delivering the notification document between the master user terminal and the family user terminal, the notification server is Receives the unique information, the family user list, and the notification notification document, transmits the received unique information of the master user terminal and the attached image constituting the notification document to the authentication server, and the master user from the authentication server After authenticating the terminal's unique information and the notification notification document, a random number is generated and transmitted, and the received random number is transmitted to the master user terminal, and then the random number from the master user terminal, the master user terminal unique information, the Receive a hash value generated by hashing the attached image (hereinafter referred to as '(random number, unique information, attachment)'), and hash the received (random number, unique information, attachment) hash value once again It can be achieved by the notification notification server, characterized in that it transmits to the authentication server, receives the authentication result from the authentication server, and stores the notification notification document in the master user terminal when it is authenticated.

마스터 단말이 패밀리 사용자 리스트를 생성할 수 있다. 먼저 각 패밀리 사용자단말이 개인정보를 입력받고(제b1단계), 제b1단계에서 입력된 패밀리 사용자단말의 개인정보를 개인정보데이터베이스로 저장하고(제b2단계), 마스터 사용자단말은 개인정보데이터베이스를 조회하여 복수 개 패밀리 사용자단말의 개인정보를 획득한다(제b3단계). 이러한 b3단계에서 획득된 개인정보는 적어도 일부 항목이 블랭크 처리되어 사용할 수 없는 정보이다. 마스터 사용자단말은 제b3단계에서 획득된 개인정보 중에서 적어도 일부 개인정보에 대해 구매 요청을 하고(제b4단계) 구매 요청된 개인정보를 개인정보데이터베이스로부터 마스터 사용자단말로 전송받는다(제b5단계). 마스터 단말은 제b5단계에서 전송된 개인정보를 이용하여 패밀리 사용자 리스트를 생성할 수 있게 되는 것이다(제b6단계)The master terminal may create a list of family users. First, each family user terminal receives personal information (step b1), stores the personal information of the family user terminal input in step b1 as a personal information database (step b2), and the master user terminal stores the personal information database Obtain personal information of a plurality of family user terminals by inquiring (step b3). The personal information obtained in step b3 is information that cannot be used because at least some items are blanked. The master user terminal makes a purchase request for at least some of the personal information obtained in step b3 (step b4) and receives the requested personal information from the personal information database to the master user terminal (step b5). The master terminal will be able to create a list of family users using the personal information transmitted in step b5 (step b6)

본 발명에 따른 알림공지서버 및 알림공지방법에 의하면, 암호화된 채널 개설 방식을 사용함으로써 패킷을 탈취하여도 hash되어 있으며, 해시를 풀더라도 혼합해시(난수값이포함)가 되어 있어서 TTL적용으로 유효한 시간값이 지나서 전자전송의 이미지 알림공지정보를 해킹할 수 없게 된다. 또한 이와 더불어 시퀀셜 채널번호를 이용함으로써 인증된 사용자단말 사이의 첨부이미지 보안도 수행할 수 있게 되었다.According to the notification notification server and notification notification method according to the present invention, by using the encrypted channel opening method, the packet is hashed even when the packet is stolen, and even if the hash is unpacked, a mixed hash (including a random number value) is obtained. After the valid time value has passed, the image notification information of electronic transmission cannot be hacked. In addition, by using the sequential channel number, it is possible to secure attached images between authenticated user terminals.

또한, 본 발명에 따른 알림공지서버 및 알림공지방법에 의하면, 개인정보를 사용할 때 동의를 구하고 동의에 따라 해당 개인정보를 제공한 개인에게 보상을 제공할 수 있게 되었다.In addition, according to the notification notification server and notification notification method according to the present invention, it is possible to obtain consent when using personal information and to provide compensation to the individual who provided the corresponding personal information in accordance with the consent.

도 1은 본 발명에 따른 블록체인 기반의 사용자단말 및 알림공지서버 간의 다중 보안 인증 시스템의 구성도.
도 2는 본 발명에 따른 등록 단계의 등록 과정을 나타낸 블록 순서도.
도 3은 본 발명의 제1 실시예에 따른 알림공지서버 접근요청 및 승인 과정을 나타낸 업무 흐름도.
도 4는 본 발명의 제2 실시예에 따른 알림공지서버 접근요청 및 승인 과정을 나타낸 업무 흐름도.
도 5는 본 발명의 제3 실시예에 따른 알림공지서버 접근요청 및 승인 과정을 나타낸 업무 흐름도.
도 6은 본 발명에 따른 인증서버의 개인정보 해킹방지 프로세스를 나타낸 처리 순서도.
도 7은 본 발명에 따른 개인정보 해킹방지 프로세스에 있어서, Byte 단위 레코드 2분할을 위한 알고리즘을 나타낸 프로그램 소스 코드 일부.
도 8은 지금까지 설명한 제3자 인증 방식을 복합적으로 사용하여 사용자단말을 인증하는 과정을 설명하는 흐름도.
도 9는 본 발명에 따른 일 실시예인 알림 공지 시스템을 이용하여 알림을 공지하는 과정을 설명하는 흐름도.
도 10은 본 발명에서 실행되는 암호화된 통신 채널 개설 흐름을 설명하는 흐름도.
도 11은 지금까지 설명한 제3자 인증 방식을 복합적으로 사용하여 마스터 사용자단말이 알림공지 등록 메뉴를 실행할 경우 이를 인증하는 과정을 설명하는 흐름도.
도 12는 인증된 사용자단말 사이에 패킷이 탈취되는 것을 방지하기 위해 본 발명에서 실행되는 암호화된 통신 채널 개설 흐름을 설명하는 흐름도.
도 13은 개인이 정보를 입력하고 이를 활용하는 절차를 설명하는 흐름도.
도 14는 개인 정보를 먼저 구매하여 보관 및 저장하고 있는 개인단말이 있을 경우, 해당 개인단말로부터 개인정보를 입수하는 흐름을 설명하는 흐름도
1 is a configuration diagram of a multi-security authentication system between a block chain-based user terminal and a notification notification server according to the present invention.
Figure 2 is a block flow diagram showing a registration process of the registration step according to the present invention.
3 is a flowchart illustrating a notification notification server access request and approval process according to the first embodiment of the present invention.
4 is a flowchart illustrating a notification notification server access request and approval process according to a second embodiment of the present invention.
5 is a flowchart illustrating a notification notification server access request and approval process according to a third embodiment of the present invention.
6 is a processing flow chart showing a process for preventing personal information hacking of the authentication server according to the present invention.
7 is a part of a program source code showing an algorithm for dividing into two records in units of bytes in the personal information hacking prevention process according to the present invention.
8 is a flowchart illustrating a process of authenticating a user terminal by using the third-party authentication method described so far in a complex manner.
9 is a flowchart illustrating a process of notifying a notification using a notification notification system according to an embodiment of the present invention.
10 is a flowchart illustrating an encrypted communication channel establishment flow executed in the present invention.
11 is a flowchart illustrating a process of authenticating when a master user terminal executes a notification notification registration menu by using the third-party authentication method described so far in a complex manner.
12 is a flowchart illustrating an encrypted communication channel establishment flow executed in the present invention to prevent packets from being hijacked between authenticated user terminals;
13 is a flowchart illustrating a procedure for an individual to input information and utilize it.
14 is a flowchart for explaining the flow of obtaining personal information from a personal terminal when there is a personal terminal in which personal information is first purchased, stored and stored;

본 명세서에서 사용하는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used herein are used only to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present specification, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof exists in the specification, and includes one or more other features or It should be understood that the existence or addition of numbers, steps, operations, components, parts, or combinations thereof does not preclude the possibility of addition.

또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.In addition, in this specification, when a component is referred to as “connected” or “connected” with another component, the component may be directly connected or directly connected to the other component, but in particular It should be understood that, unless there is a description to the contrary, it may be connected or connected through another element in the middle.

또한, 본 명세서에서, "제1, 제2" 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Also, in this specification, terms such as “first, second” may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.

이하에서, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예, 장점 및 특징에 대하여 상세히 설명하도록 한다.Hereinafter, preferred embodiments, advantages and features of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 블록체인 기반의 사용자단말 및 알림공지서버 간의 다중 보안 인증 시스템의 구성도이다. 도 1을 참조하면, 블록체인 기반의 사용자단말 및 알림공지서버 간의 다중 보안 인증 시스템은 크게 알림공지서버(20), 사용자단말(10), 인증서버(30), 블록체인(40) 및 AI(50)를 포함한다.1 is a configuration diagram of a multi-security authentication system between a block chain-based user terminal and a notification notification server according to the present invention. 1, the multiple security authentication system between the block chain-based user terminal and the notification notification server is largely a notification notification server 20, user terminal 10, authentication server 30, block chain 40 and AI ( 50).

본 발명의 알림공지서버(20)는 음성통신망, 데이터통신망 및 와이파이망 등의유무선 인터넷망을 통해 사용자단말(10)과 통신하여 사용자단말(10)이 공지하고자 하는 내용을 다운받아 저장하고 이를 복수의 수신처 사용자단말(10)에 전송하는 기능을 수행하는 컴퓨터 장치이다.The notification notification server 20 of the present invention communicates with the user terminal 10 through a wired/wireless Internet network such as a voice communication network, a data communication network, and a Wi-Fi network, and downloads and stores the contents to be notified by the user terminal 10, and stores it It is a computer device that performs a function of transmitting to the destination user terminal 10 of the.

본 발명의 사용자단말(10)은 유무선 인터넷망을 통해 알림공지서버(20)와 통신함으로써 알림을 공지하고자 하는 내용을 작성하여 발송하는 발신측 사용자단말과 발송측 사용자단말이 공지한 내용을 알림공지서버(20)로부터 다운받는 수신측 사용자단말로 구성된다. 사용자단말(10)은 스마트폰, 태블릿PC, 웨어러블 디바이스, PDA와 같은 모바일 단말기일 수 있고, 더 나아가 데크탑, 노트북 컴퓨터 등도 이에 해당할 수 있다.The user terminal 10 of the present invention communicates with the notification notification server 20 through a wired/wireless Internet network to create and send out the contents to be notified of the notification, and the sending user terminal and the sending user terminal notify the notification. It consists of a receiving-side user terminal downloaded from the server (20). The user terminal 10 may be a mobile terminal such as a smart phone, a tablet PC, a wearable device, or a PDA, and furthermore, a desktop computer, a notebook computer, and the like may correspond to this.

사용자단말(10)은 인증서버(30)에 의한 인증절차를 통해 알림공지서버(20)에 대한 접근 권한을 승인받아 알림을 공지하거나 수신할 수 있게 된다.The user terminal 10 can notify or receive a notification by being approved for access to the notification notification server 20 through an authentication procedure by the authentication server 30 .

블록체인(40)은 분산 원장을 적용하는 네트워크망을 의미하며, AI(50)는 인공지능컴퓨터를 의미한다. AI(50)는 사용자단말(10)과 인증서버(30), 알림공지서버(20)와 인증서버(30) 및 사용자단말(10)과 알림공지서버(20) 사이의 데이터 흐름을 빅데이터 처리하고, 해킹 여부를 판단하는 해킹인지데이터를 구비한다.The block chain 40 refers to a network to which a distributed ledger is applied, and the AI 50 refers to an artificial intelligence computer. AI 50 processes the data flow between the user terminal 10 and the authentication server 30, the notification notification server 20 and the authentication server 30, and the user terminal 10 and the notification notification server 20 as big data and hacking recognition data for determining whether or not hacking is performed.

한편, 사용자단말(10)에는 인증서버(30) 또는 알림공지서버(20)와 연계되어 구동하는 어플리케이션 프로그램(이하, '알공 앱'이라 칭함)이 설치될 수 있다. 상기 경우, 사용자단말(10)의 등록/변경/추가시 또는 알림공지서버(20) 승인 요청시, 사용자단말(10)은 이에 탑재된 알공 앱을 구동한 후 사용자 아이디/패스워드를 입력하여 로그인함으로써 인증서버(30) 또는 알림공지서버(20)와 연동되고, 이로써 사용자단말(10)의 등록/변경/추가 및 알림공지서버(20) 접근 허락을 위한 과정을 진행할 수 있게 된다. 여기서, 사용자 아이디(ID)와 패스워드(password)는 알공 앱 설치시 또는 회원가입시 생성할 수 있다.On the other hand, the user terminal 10 may be installed with an application program (hereinafter, referred to as 'algong app') that is driven in connection with the authentication server 30 or the notification server 20 . In this case, when registering/changing/adding the user terminal 10 or requesting approval of the notification server 20, the user terminal 10 runs the Algong app mounted thereon and then logs in by inputting a user ID/password. It is interlocked with the authentication server 30 or the notification server 20, whereby the registration/change/addition of the user terminal 10 and the process for allowing access to the notification server 20 can be performed. Here, a user ID (ID) and password (password) can be generated when installing the Algon app or when registering as a member.

또한 회원가입시 통상 사용자 인증(User Authentication)은 거래 당사자 간에 상대의 신분을 검증하는 것(Identity Validation)으로, 하나의 세션 동안에 거래 당사자(사람, 프로세스, 클라이언트, 서버, 장비 등) 간에 상대의 신원주장(identity claim)에 대해 유효성을 성립시키는 것이며, 사용자(개인신분)별로 식별하며 인증한다.In addition, when signing up for membership, user authentication usually verifies the identity of the counterparty between the parties to the transaction (Identity Validation). (identity claim) is to establish validity, and it is identified and authenticated for each user (personal identity).

본 발명에서는 사용자가 사용자단말(10)을 통해서 인증서버(30) 혹은 인증서버(30) 내의 제3자 인증 API를 통해서 인증하여 최초 접속하여 실시하게 된다. 사용자 인증을 위한 방식으로 사용자의 휴대전화 번호, 주민등록번호, 각종 신분증 번호, 생체정보 등이 있다.In the present invention, the user authenticates through the authentication server 30 or a third-party authentication API in the authentication server 30 through the user terminal 10, and the first access is performed. Methods for user authentication include the user's mobile phone number, resident registration number, various identification numbers, and biometric information.

본 발명의 인증서버(30)는 사용자단말(10) 및 알림공지서버(20)를 등록하고, 사용자단말(10)로부터 알림공지서버(20)에 대한 접근(access) 요청이 있는 경우, 해당 사용자단말(10)의 정당성을 인증하며, 정당성 인증 시 해당 사용자단말(10)에 의한 알림공지서버의 접근을 승인한다.The authentication server 30 of the present invention registers the user terminal 10 and the notification notification server 20, and when there is a request for access to the notification notification server 20 from the user terminal 10, the corresponding user Authenticates the legitimacy of the terminal 10, and approves the access of the notification server by the user terminal 10 when the legitimacy is authenticated.

참고로, 본 발명에서 지칭하는 '등록'이란 사용자단말(10)의 알림공지서버(20) 승인시 필요한 인증수단(즉, 등록 해시값)의 생성, 기록 및 저장을 포함한다. 더 나아가, 본 발명의 '등록'은 사용자단말(10) 관련 정보와, 이 사용자단말(10)의 접근 대상이 되는 알림공지서버(20) 관련 정보 등을 인증서버(30)에 입력 및 저장하는 것을 더 포함할 수 있다.For reference, 'registration' referred to in the present invention includes generation, recording, and storage of authentication means (ie, registration hash value) required for approval of the notification notification server 20 of the user terminal 10 . Furthermore, the 'registration' of the present invention is to input and store information related to the user terminal 10 and the notification notification server 20 to be accessed by the user terminal 10 in the authentication server 30. may include more.

이하에서는, 인증서버(30)의 구체적인 기능들에 대하여 설명하도록 한다. 여기서, 인증서버(30)의 기능들이란 사용자단말(10)의 알림공지서버(20) 접근요청을 승인하고, 개인정보 해킹을 방지하기 위한 기능들을 포함한다.Hereinafter, specific functions of the authentication server 30 will be described. Here, the functions of the authentication server 30 include functions for approving a request for access to the notification server 20 of the user terminal 10 and preventing personal information hacking.

제1 실시예에 따르면, 인증서버(30)는 등록 해시값 관련 정보를 블록체인(40)에 기록하는 기능을 포함한다.According to the first embodiment, the authentication server 30 includes a function of recording registration hash value related information in the block chain 40 .

'등록 해시값 관련 정보'는 제1 해시에 관한 정보이거나, 제2 해시에 관한 정보이거나, 또는 상기 제1 해시와 상기 제2 해시가 혼합된 해시(이하, 제1 혼합 해시)에 관한 정보이다.'Registered hash value related information' is information about a first hash, information about a second hash, or information about a hash in which the first hash and the second hash are mixed (hereinafter, a first mixed hash) .

확장 실시예로서, 상기 '등록 해시값 관련 정보'는 제1 해시, 제2 해시 또는 제3 해시에 관한 정보이거나, 또는 제1 해시, 제2 해시, 및 제3 해시 중 적어도 2개가 혼합된 해시(이하, 제2 혼합해시)에 관한 정보일 수 있다.As an extended embodiment, the 'registered hash value related information' is information about a first hash, a second hash, or a third hash, or a hash in which at least two of the first hash, the second hash, and the third hash are mixed. (hereinafter, the second mixed hash) may be information.

구체적으로, 상기 '등록 해시값 관련 정보'는 제1 해시의 후술할 제1 식별정보의 조합 방식에 관한 정보(이하, 제1 조합정보)이거나, 제2 해시의 후술할 제2 식별정보의 조합 방식(이하, 제2 조합정보)에 관한 정보이거나, 제3 해시의 후술할 제3 식별정보의 조합 방식(이하, 제3 조합정보)에 관한 정보이거나, 또는 제1,2 혼합 해시의 제1,2,3 식별정보의 조합 방식(이하, 혼합 조합정보)에 관한 정보를 포함한다.Specifically, the 'registered hash value related information' is information on a combination method of first identification information to be described later of a first hash (hereinafter, first combination information), or a combination of second identification information to be described later in a second hash Information on a method (hereinafter, second combination information), information on a combination method of third identification information to be described later (hereinafter, third combination information) of the third hash, or first and second combination hashes ,2,3 Includes information on a combination method of identification information (hereinafter, mixed combination information).

제1 해시는 알림공지서버(20)에 고유한 다수의 식별정보(이하, 제1 식별정보) 중 적어도 2개의 식별정보로 이루어진다.The first hash consists of at least two pieces of identification information among a plurality of identification information unique to the notification notification server 20 (hereinafter, first identification information).

제1 식별정보는 알림공지서버(20)의 물리코드 관련 정보, 운영체제(OS) 관련 정보, 및 앱(App) 관련 정보를 포함하고, 통신패킷 정보 및 제조사 정보를 더 포함할 수 있다.The first identification information includes physical code-related information of the notification notification server 20, operating system (OS)-related information, and app-related information, and may further include communication packet information and manufacturer information.

따라서, 제1 해시는 해당 알림공지서버(20)의 물리코드 관련 정보, 운영체제(OS) 관련 정보, 앱(App) 관련 정보, 통신패킷 정보 및 제조사 정보 중 적어도 2개의 정보의 조합으로 이루어질 수 있다.Accordingly, the first hash may be made of a combination of at least two pieces of information among physical code related information, operating system (OS) related information, app related information, communication packet information, and manufacturer information of the notification notification server 20. .

구체적으로, 제1 식별정보의 물리코드 관련 정보는 해당 알림공지서버(20)의 시리얼 넘버(Serial Number), CPU 정보 및 모델번호 등을 포함한다.Specifically, the physical code related information of the first identification information includes a serial number (Serial Number) of the notification notification server 20, CPU information, model number, and the like.

제1 식별정보의 운영체제(OS) 관련 정보는 해당 알림공지서버(20)에 탑재된 운영체제(OS)의 버전(Version) 정보 및 OS 종류 등을 포함한다.The operating system (OS) related information of the first identification information includes version information and the OS type of the operating system (OS) mounted on the notification notification server 20 .

제1 식별정보의 앱(App) 관련 정보는 해당 알림공지서버(20)에 탑재된 어플리케이션의 버전(version) 정보 및 체크썸(checksum) 정보 등을 포함한다. 여기서, 해당 알림공지서버(20)에 탑재된 앱이란 전술한 알공 앱일 수 있다.App-related information of the first identification information includes version information and checksum information of the application mounted on the notification notification server 20 in question. Here, the app mounted on the notification notification server 20 may be the aforementioned Algong app.

제1 식별정보의 통신패킷 정보는 알림공지서버(20)의 접속 경로 정보를 포함하고, 제조사 정보는 해당 알림공지서버(20)의 제조사와 관련된 정보를 포함할 수 있다.The communication packet information of the first identification information may include connection path information of the notification notification server 20 , and the manufacturer information may include information related to the manufacturer of the notification notification server 20 .

참고로, 제1 실시예의 등록 해시값 관련 정보는 사용자단말(10)이 인증서버(30)에 접속하여 등록하거나, 또는 인증서버(30)가 생성하여 등록을 시도하는 사용자단말(10)에게 제공할 수도 있다.For reference, the information related to the registration hash value of the first embodiment is provided to the user terminal 10 that the user terminal 10 accesses and registers the authentication server 30, or the authentication server 30 generates and attempts to register. You may.

제2 해시는 사용자단말(10)에 고유한 다수의 식별정보(이하, 제2 식별정보) 중 적어도 2개의 식별정보로 이루어진다.The second hash consists of at least two pieces of identification information among a plurality of pieces of identification information unique to the user terminal 10 (hereinafter, second identification information).

제2 식별정보는 사용자단말(10)의 물리코드 관련 정보, 운영체제(OS) 관련 정보, 및 앱(App) 관련 정보를 포함하고, 통신패킷 정보 및 제조사 정보를 더 포함할 수 있다.The second identification information includes physical code-related information of the user terminal 10, operating system (OS)-related information, and App-related information, and may further include communication packet information and manufacturer information.

따라서, 제2 해시는 해당 사용자단말(10)의 물리코드 관련 정보, 운영체제(OS) 관련 정보, 앱(App) 관련 정보, 통신패킷 정보 및 제조사 정보 중 적어도 2개 정보의 조합으로 이루어질 수 있다.Accordingly, the second hash may be formed of a combination of at least two pieces of information among physical code related information, operating system (OS) related information, App related information, communication packet information, and manufacturer information of the corresponding user terminal 10 .

구체적으로, 제2 식별정보의 물리코드 관련 정보는 해당 사용자단말(10)의 이동통신번호, 시리얼 넘버, 모델번호, USIM 정보, MAC 주소 정보, 스마트폰 고유번호(IMEI) 등을 포함한다.Specifically, the physical code-related information of the second identification information includes a mobile communication number, serial number, model number, USIM information, MAC address information, smart phone unique number (IMEI), etc. of the corresponding user terminal 10 .

제2 식별정보의 운영체제(OS) 관련 정보는 해당 사용자단말(10)에 탑재된 운영체제(OS)의 버전(Version) 정보 및 OS 종류 등을 포함한다.The operating system (OS) related information of the second identification information includes version information and an OS type of the operating system (OS) mounted on the corresponding user terminal 10 .

제2 식별정보의 앱(App) 관련 정보는 해당 사용자단말(10)에 탑재된 어플리케이션의 버전(version) 정보 및 체크썸(checksum) 정보 등을 포함한다. 여기서, 해당 사용자단말(10)에 탑재된 앱이란 전술한 알공 앱일 수 있다.App-related information of the second identification information includes version information and checksum information of an application mounted on the corresponding user terminal 10 . Here, the app mounted on the user terminal 10 may be the aforementioned Algong app.

제2 식별정보의 통신패킷 정보는 사용자단말(10)의 접속 경로 정보를 포함하고, 제조사 정보는 해당 사용자단말(10)의 제조사와 관련된 정보를 포함할 수 있다.The communication packet information of the second identification information may include access path information of the user terminal 10 , and the manufacturer information may include information related to the manufacturer of the corresponding user terminal 10 .

제3 해시는 사용자단말(10)의 사용자에 고유한 다수의 식별정보(이하, '제3 식별정보'라 칭함) 중 적어도 2개의 제3 식별정보으로 이루어질 수 있다. The third hash may include at least two pieces of third identification information among a plurality of pieces of identification information unique to the user of the user terminal 10 (hereinafter, referred to as 'third identification information').

제3 식별정보는 전화번호, 이름, 생년월일, 접속시간, 접속IP 및 GPS 정보를 포함할 수 있다.The third identification information may include a phone number, name, date of birth, access time, access IP and GPS information.

더 나아가, 제3 식별정보는 사용자단말(10)과 알림공지서버(20) 간에 형성된 유무선 네트워크 장비나 기타 서버 등으로 이루어진 식별정보를 더 포함할 수 있다.Furthermore, the third identification information may further include identification information made up of wired/wireless network equipment or other servers formed between the user terminal 10 and the notification server 20 .

확장 실시예에 따르면, 등록 해시값 관련 정보는 제1 해시, 제2 해시, 제3 해시 또는 혼합 해시에 난수값이 더 혼합된 해시에 관한 정보일 수 있다. 이와 같은 경우, 난수값은 인증서버(30) 또는 알림공지서버(20)가 생성하여 상기 사용자단말(10)에게 제공할 수 있다.According to an extended embodiment, the registered hash value related information may be information about a hash in which a random number is further mixed with a first hash, a second hash, a third hash, or a mixed hash. In this case, the random number value may be generated by the authentication server 30 or the notification server 20 and provided to the user terminal 10 .

제2 실시예에 따르면, 인증서버(30)는 사용자단말(10)이 등록을 시도할 시, 등록 해시값 관련 정보로서 해시값 자체를 블록체인(40)에 기록하도록 구성될 수 있다.According to the second embodiment, when the user terminal 10 attempts to register, the authentication server 30 may be configured to record the hash value itself in the block chain 40 as registration hash value related information.

즉, 제1 실시예는 해시값 자체가 아니라, 특정 해시값(즉, 등록 해시값)을 생성하기 위한 제1 식별정보 및(또는) 제2 식별정보의 '조합방식'을 블록체인(40)에 기록하도록 구성되는 반면, 제2 실시예는 등록 해시값에 해당하는 실질적인 값을 블록체인(40)에 기록하는 점이 차이점이다.That is, the first embodiment is not the hash value itself, but the 'combination method' of the first identification information and/or the second identification information for generating a specific hash value (that is, a registered hash value) in the block chain 40 Whereas, the second embodiment is different in that the actual value corresponding to the registered hash value is recorded in the block chain 40 .

제1 실시예의 '조합방식'에 대하여 설명하면 다음과 같다. 예컨대, 등록 해시값이 제1 식별정보의 OS 정보 'A'와 앱 버전 정보 'B', 그리고 제2 식별정보의 물리코드 'C'와 OS 정보'D'로 이루어진 값이라고 가정하자.The 'combination method' of the first embodiment will be described as follows. For example, it is assumed that the registered hash value is a value composed of OS information 'A' and app version information 'B' of the first identification information, and physical code 'C' and OS information 'D' of the second identification information.

상기 경우, 제2 실시예의 블록체인(40)에 기록되는 대상인 '등록 해시값'은 이 등록 해시값을 구성하는 각 식별정보 항목에 대응하는 실질적인 값 즉, 'A,B,C,D'의 조합으로 생성된 값에 해당한다.In this case, the 'registered hash value', which is the object recorded in the block chain 40 of the second embodiment, is the actual value corresponding to each identification information item constituting the registered hash value, that is, 'A, B, C, D' Corresponds to the value generated by the combination.

반면, 제1 실시예의 블록체인(40)에 기록되는 대상인 '등록 해시값 관련 정보'는 이 등록 해시값을 생성시 필요한 식별정보들의 항목 정보를 의미한다. 즉, '등록 해시값 관련 정보'는 등록 해시값을 구성하는 각 식별정보의 실질적인 값이 아니라, 이 값의 상위개념인 식별정보 항목을 지칭한다. 따라서, 상기 예시의 경우, 제1 식별정보의 제1 항목인 OS 정보 항목, 제2 항목인 앱 버전 정보 항목, 제2 식별정보의 제1 항목인 물리코드 항목 및 제2 항목인 OS 정보 항목이 '등록 해시값 관련 정보'에 해당하게 된다.On the other hand, 'registration hash value related information', which is an object recorded in the block chain 40 of the first embodiment, means item information of identification information required to generate this registered hash value. That is, 'registration hash value related information' refers not to the actual value of each identification information constituting the registered hash value, but to the identification information item that is a higher concept of this value. Accordingly, in the case of the above example, the OS information item as the first item of the first identification information, the app version information item as the second item, the physical code item as the first item and the OS information item as the second item of the second identification information are It corresponds to 'registered hash value related information'.

따라서, 제2 실시예에 따르면, 등록 해시값은 제1 해시 또는 제2 해시를 이용하여 생성한 값이거나, 또는 제1 해시와 제2 해시를 조합하여 생성한 값으로 이루어진다.Accordingly, according to the second embodiment, the registered hash value is a value generated using the first hash or the second hash, or a value generated by combining the first hash and the second hash.

확장 실시예로서, 등록 해시값은 제1 해시, 제2 해시 또는 제3 해시를 이용하여 생성한 값이거나, 또는 제1 해시, 제2 해시 및 제3 해시 중 적어도 2개를 조합하여 생성한 값일 수 있다.As an extended embodiment, the registered hash value is a value generated using the first hash, the second hash, or the third hash, or a value generated by combining at least two of the first hash, the second hash, and the third hash can

즉, 등록 해시값을 생성하기 위한 해시의 종류 및 그 조합수는 보안 강도에 비례하여 증가할 수 있다.That is, the type of hash for generating the registered hash value and the number of combinations thereof may increase in proportion to the security strength.

또 다른 확장 실시예로서, 등록 해시값은 난수값을 더 조합하여 생성한 값일 수 있다. 상기 경우, 난수값은 사용자단말(10)이 등록 시도 또는 알림공지서버(20) 접속 승인 요청을 위해 등록 해시값을 생성하고자 할 경우, 인증서버(30)가 이를 생성하여 사용자단말(10)에게 제공하도록 구성될 수 있다. 또 다른 실시예로서, 난수값은 사용자단말(10)이 등록 해시값을 생성하고자 할 경우, 알림공지서버(20)가 이를 생성하여 사용자단말(10)에게 제공하도록 구성될 수 있다.As another extended embodiment, the registered hash value may be a value generated by further combining random number values. In this case, when the user terminal 10 wants to generate a registration hash value for a registration attempt or a request for approval of access to the notification notification server 20, the authentication server 30 generates it and sends it to the user terminal 10. can be configured to provide. As another embodiment, when the user terminal 10 wants to generate a registered hash value, the random number value may be configured so that the notification server 20 generates it and provides it to the user terminal 10 .

제2 실시예에서, 사용자단말(10)이 등록 해시값을 생성 등록할 경우, 이 등록 해시값은 인증서버(30)에 전송되고, 인증서버(30)는 이를 수신하여 블록체인(40)에 기록 보관한다. 한편, 등록 해시값은 이를 생성한 사용자단말(10)이 인증서버(30)에게 직접 전송하도록 구성될 수 있다. 또는, 등록 해시값은 알림공지서버(20)를 경유하여 인증서버(30)에 제공될 수 있다. 즉, 사용자단말(10)이 알림공지서버에게 등록 해시값을 전송하면, 알림공지서버(20)는 이를 수신하여 인증서버(30)에게 전달하도록 구성될 수 있다.In the second embodiment, when the user terminal 10 generates and registers a registration hash value, the registered hash value is transmitted to the authentication server 30, and the authentication server 30 receives it and stores it in the block chain 40 Keep records. Meanwhile, the registered hash value may be configured so that the user terminal 10 that has generated it directly transmits the registered hash value to the authentication server 30 . Alternatively, the registered hash value may be provided to the authentication server 30 via the notification notification server 20 . That is, when the user terminal 10 transmits the registration hash value to the notification notification server, the notification notification server 20 may be configured to receive it and deliver it to the authentication server 30 .

본 발명의 블록체인(40)은 분산형(Decentralized) 전자 원장 내지 데이터베이스 플랫폼으로서, 스레드(thread) 상의 디지털 기록 또는 트랜잭션을 블록이라고 부르고, 이를 통해 공개되거나 통제된 사용자 세트가 전자 원장에 참여할 수 있으며, 각각 타임스탬프가 적용되고 이전의 것과 연계된 트랜잭션에 대한 변경 불가능한 기록을 생성한다.The blockchain 40 of the present invention is a decentralized electronic ledger or database platform. A digital record or transaction on a thread is called a block, through which a public or controlled set of users can participate in the electronic ledger. , each time-stamped and creates an immutable record of the transaction associated with the previous one.

인증서버(30)는 이와 같이 블록체인(40)으로 연결되어 있는 공동체 즉, 사용자 세트 중 하나의 참여자에 해당하게 된다.The authentication server 30 corresponds to a community connected by the block chain 40 in this way, that is, one participant in the user set.

블록체인(40)은 분산 네트워크 기반의 타임스탬프 서버를 통해서 거래를 처리하는 구조를 가지고 있다. 블록체인(40)은 분산 데이터 구조로 구성되어 있는데, 타임스탬프 기록이 있는 수많은 블록들이 연결되어 있다. 각 블록은 해시값을 통해서 신원 확인을 할 수 있으며, 앞의 블록을 참조하는 구조를 가지고 있다.The blockchain 40 has a structure for processing transactions through a distributed network-based timestamp server. The blockchain 40 is composed of a distributed data structure, in which numerous blocks with timestamp records are connected. Each block can be identified through a hash value and has a structure that refers to the previous block.

구체적으로, 블록체인(40)은 크게는 이전 블록헤더의 전자서명, 해시값, 현재 블록의 타임스탬프, 해시값 등으로 이루어진 블록헤더(Block Header)와 트랜잭션 등으로 이루어진다. 따라서, 제1 블록에 기록된 제1 해시값은 제1 블록과 체인으로 연결되는 제2 블록에 '이전 블록 해시값'으로 담기게 된다.Specifically, the block chain 40 is largely composed of a block header consisting of a digital signature of a previous block header, a hash value, a timestamp of the current block, a hash value, etc. and a transaction. Accordingly, the first hash value recorded in the first block is stored as a 'previous block hash value' in the second block connected to the first block by a chain.

본 발명의 등록 해시값 관련 정보 또는 등록 해시값은 블록체인(40)의 블록바디에 기록되고, 인덱스값을 위해 해당 해시값에 사용자 코드(예컨대, 일련넘버)를 추가하여 블록체인(40)을 구성할 수 있다. 일 실시예에 따르면, 사용자 코드는 해당 해시값 앞에 배치될 수 있다.The registered hash value related information or registered hash value of the present invention is recorded in the block body of the block chain 40, and for an index value, a user code (eg, serial number) is added to the hash value to create the block chain 40 configurable. According to an embodiment, the user code may be placed before the corresponding hash value.

따라서, 최초 생성 및 등록된 해시값(즉, 최초 등록 해시값)을 블록체인(40)에 기록한 일시가 해당 블록체인(40)의 최초 블록의 타임스탬프에 해당하게 된다.Accordingly, the date and time when the first generated and registered hash value (ie, the first registered hash value) is recorded in the block chain 40 corresponds to the timestamp of the first block of the block chain 40 .

제1 실시예에 따르면, 인증서버(30)는 알림공지서버(20)의 접근 승인을 요청받을 시, 사용자단말(10)이 생성한 인증 해시값을 수신하고, 블록체인(40)에 기록된 등록 해시값 관련 정보를 이용하여 상기 인증 해시값의 정당성을 판별하는 기능(이하, '정당성 판별기능'이라 칭함)을 포함한다. 그리고, 인증서버는 판별 결과 해당 인증 해시값이 정당성이 있을 경우, 해당 사용자단말(10)의 알림공지서버(20)의 접근 승인하는 기능을 더 포함한다.According to the first embodiment, the authentication server 30 receives an authentication hash value generated by the user terminal 10 when receiving a request for access approval of the notification notification server 20, and is recorded in the block chain 40 and a function of determining the validity of the authentication hash value by using the registered hash value related information (hereinafter referred to as a 'legitimacy determination function'). And, when the authentication hash value is valid as a result of the determination, the authentication server further includes a function of approving access of the notification notification server 20 of the corresponding user terminal 10 .

제1 실시예에 따르면, 인증서버(30)는 전술한 제1 식별정보, 제2 식별정보 및 제3 식별정보 중 적어도 2개의 식별정보를 입력받아 관리용 DB에 저장하는 기능을 더 포함한다.According to the first embodiment, the authentication server 30 further includes a function of receiving at least two pieces of identification information among the above-described first identification information, second identification information, and third identification information and storing the received identification information in a management DB.

인증서버(30)의 정당성 판별기능에 대하여 구체적으로 설명하면 다음과 같다.The validity determination function of the authentication server 30 will be described in detail as follows.

인증서버(30)는 알림공지서버(20)의 접근 승인을 요청받을 시, 블록체인(40)에 기록된 조합방식에 관한 정보를 열람한다. 여기서, 블록체인(40)에 기록된 조합방식 정보는 사용자단말(10)에 의한 등록과정에서 결정된 '식별정보 조합방식'에 관한 정보로서, 전술한 제1 조합정보, 제2 조합정보, 제3 조합정보 또는 혼합 조합정보 중 어느 하나일 수 있다.When the authentication server 30 receives a request for permission to access the notification notification server 20 , the authentication server 30 reads information about the combination method recorded in the block chain 40 . Here, the combination method information recorded in the block chain 40 is information about the 'identification information combination method' determined in the registration process by the user terminal 10, and the first combination information, the second combination information, and the third It may be any one of combination information or mixed combination information.

그리고, 인증서버(30)는 블록체인(40)에서 열람한 조합방식 정보에 해당하는 조합방식에 따라, 해당 사용자단말(10) 및 알림공지서버(20)와 관련하여 관리용 DB에 저장된 제1 식별정보, 제2 식별정보 및(또는) 제3 식별정보를 조합하여 등록 해시값을 생성한다.And, according to the combination method corresponding to the combination method information read in the block chain 40, the authentication server 30 is the first stored in the management DB in relation to the user terminal 10 and the notification notification server 20. A registered hash value is generated by combining the identification information, the second identification information, and/or the third identification information.

그리고, 인증서버(30)는 이와 같은 등록 해시값을, 사용자단말(10)이 전송한 인증 해시값과 비교하여, 해당 인증 해시값의 정당성(즉, 해당 사용자단말(10)의 정당성)을 판별한다.Then, the authentication server 30 compares this registered hash value with the authentication hash value transmitted by the user terminal 10, and determines the validity of the authentication hash value (that is, the validity of the user terminal 10). do.

등록 해시값과 인증 해시값의 비교결과, 인증 해시값이 등록 해시값과 일치할 경우, 인증서버(30)는 해당 사용자단말(10)의 알림공지서버(20) 접근을 승인한다.As a result of comparing the registered hash value and the authentication hash value, if the authentication hash value matches the registered hash value, the authentication server 30 approves the notification notification server 20 access of the corresponding user terminal 10 .

결국, 본 발명의 인증 해시값은 알림공지서버(20)의 접근 승인을 요청하는 사용자단말(10)의 정당성을 판별하기 위한 인증수단이다. 만약, 사용자단말(10)이 정당한 사용자단말이라면, 이 사용자단말(10)은 인증서버(30)에 등록한 등록 해시값과 동일한 해시값(즉, 인증 해시값)을 생성하여 인증서버(30)에게 전송하게 된다.After all, the authentication hash value of the present invention is an authentication means for determining the legitimacy of the user terminal 10 requesting access approval of the notification notification server 20 . If the user terminal 10 is a legitimate user terminal, the user terminal 10 generates a hash value identical to the registered hash value registered in the authentication server 30 (that is, an authentication hash value) to the authentication server 30 . will send

만약, 사용자단말(10)이 정당하지 않은 사용자단말이라면, 등록 해시값과 동일한 해시값(즉, 인증 해시값)을 생성할 수 없게 되고, 결국 알림공지서버(20)의 접근 승인을 받을 수 없게 된다.If the user terminal 10 is an invalid user terminal, it is impossible to generate a hash value identical to the registered hash value (that is, an authentication hash value), and in the end, it is impossible to obtain access approval from the notification notification server 20 do.

따라서, 인증 해시값은 등록 해시값과 동일한 식별정보를 이용하여 생성한 값으로 이루어진다. 즉, 인증 해시값은 제1 해시, 제2 해시 또는 제2 해시를 이용하여 생성한 값이거나, 또는 제1 해시, 제2 해시 및 제3 해시 중 적어도 2개를 조합하여 생성한 값일 수 있다.Accordingly, the authentication hash value consists of a value generated using the same identification information as the registration hash value. That is, the authentication hash value may be a value generated using the first hash, the second hash, or the second hash, or a value generated by combining at least two of the first hash, the second hash, and the third hash.

등록 해시값과 마찬가지로, 인증 해시값의 제1 해시는 알림공지서버(20)에 고유한 다수의 제1 식별정보 중 적어도 2개의 제1 식별정보의 조합으로 이루어지고, 제2 해시는 사용자단말(10)에 고유한 다수의 제2 식별정보 중 적어도 2개의 제2 식별정보의 조합으로 이루어지며, 제3 해시는 사용자단말(10)의 사용자에 고유한 다수의 제3 식별정보 중 적어도 2개의 제3 식별정보의 조합으로 이루어진다. 인증 해시값에 있어서, 제1,2,3 식별정보의 상세 구성은 등록 해시값에서 설명한 바와 동일하다.Like the registration hash value, the first hash of the authentication hash value is made of a combination of at least two first identification information among a plurality of first identification information unique to the notification notification server 20, and the second hash is the user terminal ( 10) is made of a combination of at least two pieces of second identification information among a plurality of second identification information unique to It consists of a combination of 3 identification information. In the authentication hash value, the detailed configuration of the first, second, and third identification information is the same as described in the registered hash value.

한편, 인증 해시값은 이를 생성한 사용자단말(10)이 인증서버(30)에게 직접 전송하도록 구성될 수 있다. 또는, 인증 해시값은 알림공지서버(20)를 경유하여 인증서버(30)에 제공될 수 있다. 즉, 사용자단말(10)이 알림공지서버에게 인증 해시값을 전송하면, 알림공지서버(20)는 이를 수신하여 인증서버(30)에게 전달하도록 구성될 수 있다.Meanwhile, the authentication hash value may be configured so that the user terminal 10 that has generated it directly transmits the authentication hash value to the authentication server 30 . Alternatively, the authentication hash value may be provided to the authentication server 30 via the notification notification server 20 . That is, when the user terminal 10 transmits the authentication hash value to the notification notification server, the notification notification server 20 may be configured to receive it and deliver it to the authentication server 30 .

제2 실시예에 따르면, 인증서버(30)는 알림공지서버(20)의 접근 승인을 요청받을 시, 사용자단말(10)이 생성한 인증 해시값을 수신하여 블록체인(40)에 기록된 등록 해시값과 비교하고, 비교 결과 인증 해시값이 블록체인(40)에 기록된 등록 해시값과 일치할 경우, 해당 사용자단말(10)의 알림공지서버(20) 접근을 승인하도록 구성될 수 있다.According to the second embodiment, the authentication server 30 receives an authentication hash value generated by the user terminal 10 when receiving a request for access approval of the notification notification server 20 and registers recorded in the block chain 40 . The hash value is compared, and when the authentication hash value matches the registered hash value recorded in the block chain 40 as a result of the comparison, it may be configured to approve the notification notification server 20 access of the corresponding user terminal 10 .

전술한 제1 실시예 또는 제2 실시예를 통해, 사용자단말(10)의 알림공지서버(20) 접근 요청에 대한 승인이 이루어지면, 인증서버(30)는 해당 사용자단말(10)에게 접근 허가 메시지를 전달하고, 해당 알림공지서버(20)에게 접근 요청을 전달한다.Through the above-described first or second embodiment, when the user terminal 10 approves the request for access to the notification server 20 , the authentication server 30 grants access to the user terminal 10 . The message is transmitted, and an access request is transmitted to the notification notification server 20 .

그리고, 알림공지서버(20)와 사용자단말(10) 간에 암호화 통신 채널이 개설되어 상호 통신이 가능하게 된다.Then, an encrypted communication channel is established between the notification notification server 20 and the user terminal 10 to enable mutual communication.

만약, 인증 해시값과 등록 해시값의 비교 결과, 인증 해시값이 등록 해시값과 불일치할 경우, 인증서버(30)는 해당 사용자단말(10)에게 접근 불승인 메시지를 전달하고 통신을 종료한다.If, as a result of comparing the authentication hash value and the registration hash value, the authentication hash value does not match the registration hash value, the authentication server 30 delivers an access disapproval message to the corresponding user terminal 10 and ends communication.

본 발명의 인증서버(30)는 사용자단말(10)과 정보 송수신 시의 보안, 그리고 알공 앱 보안(즉, 해킹 및 위변조 방지)을 위해 다음의 기능을 더 수행하도록 구성될 수 있다.The authentication server 30 of the present invention may be configured to further perform the following functions for security when transmitting and receiving information with the user terminal 10, and for security of the Algon app (ie, prevention of hacking and forgery).

인증서버(30)는 사용자단말(10)이 알공 앱에 로그인 시 새로운 세션키를 발급하거나, 또는 사용자단말(10)의 접근 대상인 알림공지서버(20)에게 주기적으로 새로운 세션키를 발급한다. 이후, 사용자단말(10)의 알림공지서버(20) 접근 시도시 가장 최근에 발급받은 세션키를 이용하여, 사용자단말(10)과 인증서버(30) 간에 정보 송수신을 위한 통신을 수행하도록 구성될 수 있다. 여기서, 사용자단말(10)과 인증서버(30) 간에 송수신하는 정보는 예컨대, 제1,2,3 식별정보, 등록 해시값, 인증 해시값 정보 등일 수 있다.The authentication server 30 issues a new session key when the user terminal 10 logs in to the Algon app, or periodically issues a new session key to the notification notification server 20 that is an access target of the user terminal 10 . Then, when the user terminal 10 attempts to access the notification server 20, using the most recently issued session key, the user terminal 10 and the authentication server 30 to perform communication for transmitting and receiving information. can Here, the information transmitted and received between the user terminal 10 and the authentication server 30 may be, for example, first, second, and third identification information, a registered hash value, and authentication hash value information.

한편, 난수값을 더 조합하여 등록 해시값과 인증 해시값을 생성하도록 구성될 경우, 인증서버(30)는 사용자단말(10)로부터 알공 앱의 무결성 검증키를 수신하고, 이 무결성 검증키를 이용하여 상기 알공 앱의 프로그램이 변조되었는지 여부를 검사하도록 구성될 수 있다. 인증서버(30)는 상기 검사 결과 알공 앱이 변조되지 않은 경우, 해당 사용자단말(10)에게 난수값을 제공한다. 이와 같은 무결성 검증키는 알공 앱의 버전 정보 또는 소스코드의 체크썸(checksum) 정보를 이용하여 생성한 키값일 수 있다.On the other hand, when configured to generate a registered hash value and an authentication hash value by further combining random number values, the authentication server 30 receives the integrity verification key of the Algon app from the user terminal 10, and uses the integrity verification key It may be configured to check whether the program of the Algong app has been tampered with. The authentication server 30 provides a random number value to the user terminal 10 when the Algong app is not tampered with as a result of the inspection. Such an integrity verification key may be a key value generated using the version information of the Algon app or checksum information of the source code.

전술한 본 발명의 블록체인 기반의 모바일 단말 및 알림공지서버 간의 다중 보안 인증 시스템은 하나의 사용자단말(10)을 예시로 들어 설명하였으나, 다수의 사용자단말을 등록하고 이 다수의 사용자단말이 동일한 알림공지서버(20)에 대하여 접근 승인을 요청하고, 알림공지를 다운로드할 수 있도록 구성할 수도 있음은 물론이다.The multi-security authentication system between the block chain-based mobile terminal and the notification notification server of the present invention described above has been described with one user terminal 10 as an example, but a plurality of user terminals are registered and the plurality of user terminals receive the same notification It goes without saying that the notification server 20 may be configured to request access approval and download the notification notification.

예컨대, 제1 사용자단말이 알림공지서버의 접근을 위해 관련 정보를 블록체인(40)에 등록 저장하였다면, 제2 사용자단말, 제3 사용자단말,.., 제N 사용자단말 역시 전술한 동일한 방법에 따라 해당 사용자단말 관련 정보를 블록체인(40)에 등록한 후, 인증서버(30)의 인증 과정을 통해 알림공지서버의 접근 요청 및 접근 승인을 진행할 수 있다.For example, if the first user terminal registers and stores related information in the block chain 40 for access to the notification server, the second user terminal, the third user terminal,... Accordingly, after registering the user terminal-related information in the block chain 40 , the notification notification server access request and access approval can be performed through the authentication process of the authentication server 30 .

상기 경우, 인증서버(30)는 사용자단말(10)의 알림공지서버(20)에 대한 접근 권한에 따라, 사용자단말(10)을 마스터(Master)와 패밀리(Family)로 구분하여 등록하도록 구성될 수 있다.In this case, the authentication server 30 is configured to register the user terminal 10 by dividing it into a master and a family according to the access right to the notification notification server 20 of the user terminal 10. can

그리고, 인증서버(30)는 패밀리로 구분된 사용자단말의 등록 시도시 마스터로 구분된 사용자단말의 승인을 요구하거나, 이 승인을 조건으로 패밀리로 구분된 사용자단말의 등록을 인가하도록 구성될 수 있다. 예를 들어, 아파트 입주민을 대상으로 알림공지 서비스를 수행할 경우, 공지를 보내는 아파트 관리소장이 마스터 사용자단말로 등록하고 나머지 입주민을 패밀리로 구분된 사용자단말로 등록하는 것이다. 마스터 사용자단말은 알림공지를 작성할 수 있는 권한이 부여되고, 작성된 알림공지에 포함된 첨부를 알림공지서버에 전송하고 수정할 수 있는 권한이 부여되며, 패밀리 사용자단말의 가입을 승인할 수 있게 된다.And, the authentication server 30 may be configured to request approval of the user terminal divided by the master when attempting to register the user terminal divided into the family, or to authorize the registration of the user terminal divided into the family as a condition of this approval. . For example, when a notification service is provided for apartment residents, the apartment manager who sends the notification registers as a master user terminal and the rest of the residents as user terminals divided into families. The master user terminal is given the authority to create a notification notice, and is given the right to transmit and modify the attachments included in the created notification notice to the notification notification server, and can approve the subscription of the family user terminal.

일 실시예에 따르면, 인증서버(30)는 알림공지서버에 대한 접근 권한에 따라 마스터(Master)와 패밀리(Family)로 구분하여 등록할 수 있으며, 상기 경우, 패밀리로 구분된 사용자단말(예컨대, 제2,3,..N 사용자단말)의 등록 시 마스터로 구분된 사용자단말(예컨대, 제1 사용자단말)의 승인을 얻어야 그 등록 및 알림공지서버에 대한 접근 요청/승인이 가능하도록 구성될 수 있다. 즉, 아파트 관리소장이 마스터 사용자단말로 등록되어 있는 경우 해당 아파트 주민이 패밀리 사용자단말로 등록을 요청하는 경우 지금까지 설명한 인증절차 외에도 마스터 사용자단말에 문자 등을 이용하여 등록을 요청하는 패밀리 단말의 전화번호 등을 전송하고 승인을 요청하도록 하는 것이다.According to an embodiment, the authentication server 30 can be registered as a master and a family according to the access right to the notification server, and in this case, the user terminals divided into families (eg, When registering the second, third,..N user terminals), it is necessary to obtain the approval of the user terminal (eg, the first user terminal) divided into the master. there is. In other words, if the apartment manager is registered as a master user terminal, if the apartment resident requests registration as a family user terminal It sends a number, etc. and asks for approval.

한편, 등록된 사용자단말(10)을 변경하고자 할 경우, 등록 사용자단말(10)은 인증서버(30)에 사용자단말 변경을 요청할 수 있다. 상기 경우, 등록 사용자단말(10)은 인증 해시값을 생성하여 인증서버(30)에 전송하면, 이를 수시한 인증서버(30)는 블록체인(40)에 기록된 등록 해시값과 비교한다. 비교 결과, 인증 해시값이 등록 해시값과 일치할 경우, 등록 사용자단말(10)을 다른 사용자단말로 변경하는 업무를 승인하도록 구성될 수 있다. 여기서, 등록 사용자단말의 변경은 전술한 마스터에 해당하는 사용자단말을 변경하는 것을 포함할 수 있다.Meanwhile, when changing the registered user terminal 10 , the registered user terminal 10 may request the authentication server 30 to change the user terminal. In this case, when the registered user terminal 10 generates an authentication hash value and transmits it to the authentication server 30 , the authentication server 30 receiving it compares it with the registered hash value recorded in the block chain 40 . As a result of the comparison, when the authentication hash value matches the registered hash value, it may be configured to approve the task of changing the registered user terminal 10 to another user terminal. Here, the change of the registered user terminal may include changing the user terminal corresponding to the above-described master.

본 발명의 인증서버(30)는 사용자단말(10) 및 사용자단말(10)의 접근 대상이 되는 알림공지서버 관련 정보 등을 입력받아 자체 관리용 DB에 저장하는데, 이와 같은 정보는 전술한 등록 해시값의 속성에 해당한다. 따라서, 이와 같은 개인정보가 해킹되면, 알림공지서버 접근제어 해킹(즉, 정당하지 않은 사용자단말에 대한 오승인)이 발생될 수 있는 바, 이를 방지할 수 있는 방안이 구축되어야 한다.The authentication server 30 of the present invention receives the user terminal 10 and information related to the notification server to be accessed by the user terminal 10 and stores it in a DB for self-management, such information is the above-described registration hash It corresponds to the property of the value. Therefore, when such personal information is hacked, a notification notification server access control hacking (ie, erroneous approval of an unauthorized user terminal) may occur, and a method to prevent this should be established.

이하에서는, 도 6을 참조하여, 인증서버(30)의 기능들 중 개인정보 해킹을 방지하기 위한 기능에 대하여 설명하도록 한다.Hereinafter, a function for preventing personal information hacking among functions of the authentication server 30 will be described with reference to FIG. 6 .

인증서버(30)는 알림공지서버(20)에 고유한 다수의 식별정보(즉, 제1 식별정보)와, 사용자단말(10)에 고유한 다수의 식별정보(즉, 제2 식별정보)를 저장 관리하는 기능을 포함한다. 한편, 사용자에 고유한 다수의 식별정보(즉, 제3 식별정보)를 저장 관리할 수도 있다.The authentication server 30 provides a plurality of identification information unique to the notification notification server 20 (ie, first identification information) and a plurality of identification information unique to the user terminal 10 (ie, second identification information). Includes storage management functions. Meanwhile, a plurality of pieces of identification information unique to the user (ie, third identification information) may be stored and managed.

구체적으로, 인증서버(30)는 사용자단말(10) 또는 알림공지서버로부터 제1 식별정보와 제2 식별정보를 입력받아 개인정보 레코드를 구성하도록 구성된다(S21). 한편, 인증서버(30)는 제3 식별정보를 입력받아 개인정보 레코드를 구성할 수도 있음은 물론이다. 따라서, 본 발명에서 지칭하는 '개인정보 레코드'란 전술한 식별정보(즉, 제1,2,3 식별정보)의 레코드를 의미하거나, 이를 포함하는 레코드일 수 있다.Specifically, the authentication server 30 is configured to receive the first identification information and the second identification information from the user terminal 10 or the notification server to configure a personal information record (S21). On the other hand, it goes without saying that the authentication server 30 may configure a personal information record by receiving the third identification information. Accordingly, the 'personal information record' referred to in the present invention may mean a record of the aforementioned identification information (ie, first, second, and third identification information) or a record including the same.

여기서, 개인정보 레코드(Record)는 데이터 필드(Data Field)에 연관성 있게 저장되어 있는 데이터들의 집합체를 의미한다. 그리고, '데이터 필드'는 각 데이터들을 저장하는 항목으로서, 이러한 필드들로 구성된 데이터의 집합체를 데이터 테이블(Data Table)이라 하며, 여러 개의 데이터 테이블이 모여 하나의 데이터베이스 (DB)를 구성한다. 각 데이터 테이블의 필드 개수는 테이블 별로 상이할 수 있다.Here, the personal information record (Record) refers to a collection of data stored in relation to the data field. In addition, a 'data field' is an item for storing each data, and the aggregate of data composed of these fields is called a data table, and several data tables are gathered to constitute one database (DB). The number of fields in each data table may be different for each table.

개인정보 레코드 구성이 완료되면, 인증서버(30)는 이 개인정보 레코드를 암호화 처리한다. 바람직한 실시예에 따르면, 인증서버(30)는 AES 알고리즘 (Advanced Encryption Standard Algorithm)에 따라 개인정보 레코드를 암호화하도록 구성될 수 있다(S23).When the configuration of the personal information record is completed, the authentication server 30 encrypts the personal information record. According to a preferred embodiment, the authentication server 30 may be configured to encrypt the personal information record according to the AES algorithm (Advanced Encryption Standard Algorithm) (S23).

참고로, AES 알고리즘은 국가 표준으로 사용되었던 DES(Data Encryption Standard)의 취약점을 보안하기 위해 고안된 암호 알고리즘으로서, 미국 표준으로 사용되고 있는 대칭 암호 알고리즘이다. AES 알고리즘은 DES 암호 알고리즘과 다르게 파이스텔 암호(Feistel Cipher)를 가지고 있지 않으며, 암호 블록 크기는 128bit이다. 또한 알고리즘의 변경 없이도 128bit뿐만 아니라 192bit, 256bit 블록 크기로 확장이 가능하다.For reference, the AES algorithm is an encryption algorithm designed to secure the vulnerability of the Data Encryption Standard (DES), which was used as a national standard, and is a symmetric encryption algorithm used as an American standard. Unlike the DES encryption algorithm, the AES algorithm does not have a Feistel cipher, and the cipher block size is 128 bits. In addition, it is possible to expand the block size to 192-bit and 256-bit as well as 128-bit without changing the algorithm.

인증서버(30)는 개인정보 레코드를 복수 개의 군으로 분할하도록 구성된다 (S25). 예컨대, 인증서버(30)는 개인정보 레코드를 2분할 또는 3분할 방식으로 분류할 수 있으며, 이때 Byte 단위 또는 Bit 단위 shift 알고리즘에 따라 분할할 수 있다.The authentication server 30 is configured to divide the personal information record into a plurality of groups (S25). For example, the authentication server 30 may classify the personal information record in a two- or three-division method, and in this case, it may be divided according to a Byte unit or Bit unit shift algorithm.

바람직한 실시예에 따르면, 인증서버(30)는 개인정보 레코드 중 홀수항에 해당하는 개인정보 레코드는 제1 군으로 분할하고, 개인정보 레코드 중 짝수항에 해당하는 개인정보 레코드는 제2 군으로 분할하도록 구성될 수 있다. 참고로, 도 7은 Byte 단위 레코드 3분할을 위한 알고리즘으로서, 개인정보 레코드를 3군으로 상호 분리하는 코드를 나타내고 있다.According to a preferred embodiment, the authentication server 30 divides the personal information records corresponding to the odd-numbered terms among the personal information records into a first group, and divides the personal information records corresponding to the even-numbered terms among the personal information records into the second group. can be configured to For reference, FIG. 7 shows a code for dividing personal information records into three groups as an algorithm for dividing records in units of bytes into three groups.

개인정보 레코드의 분할이 완료되면, 인증서버(30)는 제1 군에 속하는 개인정보 레코드는 제1 서버에 저장하고, 제2 군에 속하는 개인정보 레코드는 상기 제1 서버와 구분되는 제2 서버에 저장하며, 제N 군에 속하는 개인정보 레코드는 제1,2,3 서버와 구분되는 제N 서버에 저장한다(S27). 따라서, 서로 다른 군에 속하는 개인정보 레코드는 서로 다른 서버에 분산 저장된다. 따라서, 일부 서버가 해킹되더라도 복호화가 불가능하고, 개인정보의 파악이 불가능한 바, 알림공지서버(20)의 보안성을 크게 향상시킬 수 있다.When the division of the personal information record is completed, the authentication server 30 stores the personal information record belonging to the first group in the first server, and the personal information record belonging to the second group is a second server that is separated from the first server , and the personal information records belonging to the N-th group are stored in the N-th server that is distinguished from the first, second, and third servers (S27). Accordingly, personal information records belonging to different groups are distributed and stored in different servers. Therefore, even if some servers are hacked, decryption is impossible, and since it is impossible to grasp personal information, the security of the notification notification server 20 can be greatly improved.

인증서버(30)는 해킹 등으로 인한 인증서버 작동불능 및 원상복구를 대비하여, 전술한 개인정보 레코드들을 WORM(Write Once Read Many) 디스크에 기록하여 백업하도록 구성될 수 있다(S29). 상기 경우, 바람직하게는, 제1 군에 속하는 개인정보 레코드는 제1 WORM 디스크에 기록하고, 제2 군에 속하는 개인정보 레코드는 상기 제1 WORM 디스크와 구분되는 제2 WORM 디스크에 기록하며, 제N 군에 속하는 개인정보 레코드는 상기 제1,2 WORM 디스크와 구분되는 제N WORM 디스크에 기록하도록 구성될 수 있다.The authentication server 30 may be configured to record and back up the aforementioned personal information records on a Write Once Read Many (WORM) disk in preparation for the authentication server inoperability and restoration due to hacking (S29). In this case, preferably, the personal information record belonging to the first group is recorded on a first WORM disk, and the personal information record belonging to the second group is recorded on a second WORM disk which is separate from the first WORM disk, The personal information record belonging to the N group may be configured to be recorded on an Nth WORM disk that is distinct from the first and second WORM disks.

WORM 디스크는 하드디스크를 기반으로 하는 대용량 표준 네트워크 스토리지로서, 한번 저장된 데이터는 관리자 권한으로도 삭제와 위변조를 할 수 없다. WORM (Write Once Read Many) 디스크는 데이터를 한 번밖에 기록할 수 없으나, 이에 기록된 데이터는 수없이 읽을 수 있다.A WORM disk is a large-capacity standard network storage based on a hard disk, and once stored data cannot be deleted or forged even with administrator privileges. A WORM (Write Once Read Many) disc can write data only once, but the data written to it can be read many times.

이하에서는, 본 발명의 블록체인 기반의 모바일 사용자단말 및 알림공지서버 간의 다중 보안 인증 방법에 대하여 설명하도록 한다. 참고로, 후술할 다중 보안 인증 방법의 각 단계를 수행하는 각 주체(예컨대, 사용자단말, 알림공지서버, 인증서버 등)의 세부적인 내용 및 구성은 앞서 설명한 바와 동일하므로 그에 대한 상세한 설명은 생략하기로 한다.Hereinafter, a multi-security authentication method between the blockchain-based mobile user terminal and the notification server of the present invention will be described. For reference, the detailed content and configuration of each subject (eg, user terminal, notification server, authentication server, etc.) performing each step of the multi-security authentication method to be described later is the same as described above, so a detailed description thereof will be omitted. do it with

본 발명의 본 발명의 블록체인 기반의 모바일 사용자단말 및 알림공지서버 간의 다중 보안 인증 방법은 크게, 등록 해시값 생성 및 등록 단계와, 알림공지서버 접근요청/승인 단계를 포함한다.The multi-security authentication method between the block chain-based mobile user terminal and the notification server according to the present invention largely includes generating and registering a registration hash value, and requesting/approving access to the notification server.

(1) 등록 단계(1) Registration step

등록 단계는 사용자단말(10)의 정당성 인증과 관련된 정보를 블록체인(40)에 기록 저장하는 절차이다.The registration step is a procedure for recording and storing information related to authenticity authentication of the user terminal 10 in the block chain 40 .

도 2는 본 발명에 따른 등록 단계의 등록 과정을 나타낸 블록 순서도이다.2 is a block flow diagram illustrating a registration process of a registration step according to the present invention.

제1 실시예에 따르면, 먼저, 사용자단말(10)이 알공 앱을 구동하거나 또는 인증서버(30)에 접속하여 등록 해시값을 생성한다(S10). 또는, 사용자단말(10)의 등록 요청시, 인증서버(30)가 등록 해시값을 생성할 수도 있다.According to the first embodiment, first, the user terminal 10 runs the Algong app or accesses the authentication server 30 to generate a registered hash value (S10). Alternatively, when the user terminal 10 requests registration, the authentication server 30 may generate a registration hash value.

등록 해시값 생성이 완료되면, 인증서버(30)가 등록 해시값 관련 정보를 블록체인(40)에 기록함으로써 등록 해시값의 등록 과정이 완료된다.When the generation of the registered hash value is completed, the authentication server 30 records the registered hash value related information in the block chain 40, thereby completing the registration process of the registered hash value.

여기서, 상기 '등록 해시값 관련 정보'는 제1 해시, 제2 해시 또는 제3 해시에 관한 정보이거나, 또는 제1 해시, 제2 해시, 및 제3 해시 중 적어도 2개가 혼합된 해시에 관한 정보일 수 있다.Here, the 'registered hash value related information' is information about a first hash, a second hash, or a third hash, or information about a hash in which at least two of the first hash, the second hash, and the third hash are mixed can be

구체적으로, '등록 해시값 관련 정보'는 제1 해시의 후술할 제1 식별정보의 조합 방식에 관한 정보(이하, 제1 조합정보)이거나, 제2 해시의 후술할 제2 식별정보의 조합 방식(이하, 제2 조합정보)에 관한 정보이거나, 제3 해시의 후술할 제3 식별정보의 조합 방식(이하, 제3 조합정보)에 관한 정보이거나, 또는 제1,2 혼합 해시의 제1,2,3 식별정보의 조합 방식(이하, 혼합 조합정보)에 관한 정보를 포함한다. Specifically, the 'registered hash value related information' is information on a combination method of first identification information to be described later of a first hash (hereinafter, first combination information) or a combination method of second identification information to be described later of a second hash (hereinafter, second combination information), or information on a combination method (hereinafter, third combination information) of the third identification information to be described later of the third hash, or the first of the first and second mixed hashes; 2,3 Includes information on a combination method of identification information (hereinafter, mixed combination information).

한편, 등록 해시값 관련 정보를 블록체인(40)에 기록하는 단계는 인덱스값으로 기능하는 사용자 코드를 등록 해시값에 추가하는 단계(S11)와, 사용자 코드가 추가된 등록 해시값 관련 정보를 블록체인(40)의 바디에 기록하는 단계(S12)를 더 포함할 수 있다.On the other hand, the step of recording the registered hash value related information in the block chain 40 includes the step of adding a user code that functions as an index value to the registered hash value (S11), and a block of the registered hash value related information to which the user code is added. It may further include a step (S12) of writing to the body of the chain (40).

단계 S10 ~ S12가 완료되면, 해당 사용자단말(10)의 등록 해시값 관련 정보는 블록체인(40)에 저장되어, 사용자단말(10)의 정당성 인증 과정에서 사용된다.When steps S10 to S12 are completed, information related to the registered hash value of the user terminal 10 is stored in the block chain 40 and used in the legitimacy authentication process of the user terminal 10 .

제2 실시예에 따르면, 사용자단말(10)은 전술한 제1 해시, 제2 해시 또는 제3 해시를 이용하여 등록 해시값을 생성하거나, 또는 이들을 조합하여 등록 해시값을 생성할 수 있고, 더 나아가 난수값을 더 조합하여 등록 해시값을 생성할 수도 있다. 만약, 등록 해시값 생성시 난수값을 더 조합할 경우, 이 난수값은 인증서버(30) 또는 알림공지서버(20)로부터 제공받은 것일 수 있다.According to the second embodiment, the user terminal 10 may generate a registered hash value using the above-described first hash, second hash or third hash, or a combination thereof to generate a registered hash value, Furthermore, a registered hash value may be generated by further combining random number values. If the random number value is further combined when generating the registration hash value, the random number value may be provided by the authentication server 30 or the notification notification server 20 .

이때, 사용자단말(10)은 탑재된 알공 앱을 구동하여 등록 해시값을 생성할 수 있고, 생성된 등록 해시값을 인증서버(30) 또는 알림공지서버(20)에 전송할 수 있다.At this time, the user terminal 10 may generate a registered hash value by driving the mounted Algong app, and may transmit the generated registered hash value to the authentication server 30 or the notification server 20 .

등록 해시값은 사용자단말(10)이 인증서버(30)에게 직접 전송하거나, 또는 알림공지서버(20)를 경유하여 인증서버(30)에 제공될 수 있다. 즉, 사용자단말(10)이 알림공지서버에게 등록 해시값을 전송하면, 알림공지서버(20)는 이를 수신하여 인증서버(30)에게 전달하도록 구성될 수 있다.The registered hash value may be directly transmitted by the user terminal 10 to the authentication server 30 , or may be provided to the authentication server 30 via the notification notification server 20 . That is, when the user terminal 10 transmits the registration hash value to the notification notification server, the notification notification server 20 may be configured to receive it and deliver it to the authentication server 30 .

인증서버(30)는 사용자단말(10) 또는 알림공지서버(20)로부터 수신한 등록 해시값을 블록체인(40)에 기록함으로써, 등록 해시값의 등록 과정이 완료된다.The authentication server 30 records the registered hash value received from the user terminal 10 or the notification notification server 20 in the block chain 40, thereby completing the registration process of the registered hash value.

한편, 등록 해시값을 블록체인에 기록하는 단계는 인덱스값으로 기능하는 사용자 코드를 등록 해시값에 추가하는 단계와, 사용자 코드가 추가된 등록 해시값을 블록체인(40)의 바디에 기록하는 단계를 더 포함할 수 있다.On the other hand, the step of recording the registered hash value in the block chain includes the steps of adding a user code functioning as an index value to the registered hash value, and recording the registered hash value to which the user code is added in the body of the block chain 40 may further include.

전술한 과정이 완료되면, 해당 사용자단말(10)의 등록 해시값은 블록체인(40)에 저장되어, 사용자단말(10)의 정당성 인증 과정에서 사용된다.When the above-described process is completed, the registered hash value of the user terminal 10 is stored in the block chain 40 and used in the legitimacy authentication process of the user terminal 10 .

(2) 알림공지서버 접근요청 및 승인 단계(2) Notification notification server access request and approval steps

알림공지서버 접근요청 및 승인 단계는 사용자단말(10)이 인증서버(30)에게 알림공지서버(20)의 접근을 승인을 요청하고, 인증서버(30)가 이 요청에 응답하여 해당 사용자단말(10)의 정당성을 검증한 후 알림공지서버(20)에 대한 접근을 승인하는 단계이다. 이와 같은 알림공지서버 접근요청 및 승인 단계는 다양한 실시 형태로 구현될 수 있다.In the notification notification server access request and approval step, the user terminal 10 requests the authentication server 30 to approve the access of the notification notification server 20, and the authentication server 30 responds to this request to the user terminal ( After verifying the legitimacy of 10), it is a step of authorizing access to the notification notification server 20 . Such notification notification server access request and approval steps may be implemented in various embodiments.

(2-1) 제1 실시예(2-1) first embodiment

도 3은 본 발명의 제1 실시예에 따른 알림공지서버 접근요청 및 승인 과정을 나타낸 업무 흐름도이다.3 is a flowchart illustrating a notification notification server access request and approval process according to the first embodiment of the present invention.

도 3을 참조하면, 사용자단말(10)에서 알공 앱을 구동하여 알림공지서버(20)로 로그인을 수행한다. 이때, 알림공지서버(20)에 정상적으로 로그인이 수행되지 않은 경우 실패횟수를 카운딩하며 최초 인증신청 단계로 가서 처음부터 인증 과정을 다시 진행한다.Referring to FIG. 3 , the user terminal 10 runs the Algong app to log in to the notification server 20 . At this time, if the log-in to the notification notification server 20 is not normally performed, the number of failures is counted and the first authentication application step is performed and the authentication process is performed again from the beginning.

알림공지서버(20)에 정상적으로 로그인 수행되면 알림공지서버(20)에서 사용자단말(10)의 로그인을 승인한다. 그리고, 로그인이 승인되면 사용자단말(10)에서 알림공지서버(20)로 사용자단말(10) 정보와 사용자단말(10)에 설치된 알공 앱의 무결성 검증키(예컨대, 버전 정보, 체크썸 (checksum) 등)를 전송한다(S101).When log-in to the notification notification server 20 is normally performed, the notification notification server 20 approves the login of the user terminal 10 . And, when the login is approved, the user terminal 10 information from the user terminal 10 to the notification server 20 and the integrity verification key of the Algon app installed in the user terminal 10 (eg, version information, checksum) etc.) is transmitted (S101).

알림공지서버(20)는 사용자단말(10)로부터 수신된 사용자단말정보, 무결성 검증키 및 알림공지서버 정보를 인증서버(30)로 전송한다(S103).The notification server 20 transmits the user terminal information, the integrity verification key, and the notification server information received from the user terminal 10 to the authentication server 30 (S103).

인증서버(30)는 알림공지서버(20)로부터 수신한 무결성 검증키를 검사하여, 해당 사용자단말(10)의 알공 앱에 이상이 없는지 확인한다(S105). 여기서, 알공 앱에 이상이 없는지 확인하는 것은 예컨대 해당 알공 앱이 해킹 등에 의해 위조/변조되었는지를 검사하는 것을 의미할 수 있다. 그리고, 무결성 검증키 검사는 인증서버(30)의 관리용 단말 DB에 기등록된 사용자단말(10)의 알공 앱 무결성 검증키와 비교하는 방식으로 수행될 수 있다.The authentication server 30 checks the integrity verification key received from the notification notification server 20, and confirms that there is no abnormality in the Algong app of the corresponding user terminal 10 (S105). Here, checking whether there is an abnormality in the Algon app may mean, for example, checking whether the Algong app is forged/falsified by hacking or the like. And, the integrity verification key check may be performed in a manner of comparing the integrity verification key of the user terminal 10 registered in the management terminal DB of the authentication server 30 .

무결성 검증키 검사 결과, 해당 알공 앱에 이상이 있을 경우, 인증서버(30)는 알림공지서버에게 인증실패 메시지를 전송하게 된다. 그리고, 알림공지서버(20)는 수신된 인증실패 메시지를 사용자단말(10)에게 전달한다.As a result of the integrity verification key check, if there is an error in the corresponding Algong app, the authentication server 30 transmits an authentication failure message to the notification notification server. And, the notification server 20 transmits the received authentication failure message to the user terminal (10).

무결성 검증키 검사 결과, 해당 알공 앱에 이상이 없을 경우, 인증서버(30)는 해당 사용자단말(10)의 알공 앱에 이상이 없음을 통보한다(S107). 그러면, 알림공지서버(20)는 난수 생성기를 통해 난수값을 생성하여 사용자단말(10)로 전송한다(S109).As a result of the integrity verification key check, if there is no abnormality in the corresponding Algon App, the authentication server 30 notifies that there is no abnormality in the Algon App of the corresponding user terminal 10 (S107). Then, the notification server 20 generates a random number value through the random number generator and transmits it to the user terminal 10 (S109).

알림공지서버(20)로부터 난수값이 수신되면, 사용자단말(10)은 난수값을 이용하여 인증 해시값을 생성한 후, 이를 알림공지서버(20)로 전송한다(S111). 여기서, 인증 해시값은 사용자단말(10)의 정당성을 확인하기 위한 인증수단으로서, 전술한 바와 같이 제1 해시, 제2 해시 또는 제3 해시를 이용하여 생성한 값이거나, 또는 상기 제1 해시, 상기 제2 해시 및 제3 해시 중 적어도 2개를 조합하여 생성한 값이다. 더 나아가, 인증 해시값은 난수값을 더 조합하여 생성한 값일 수 있다.When the random number value is received from the notification notification server 20, the user terminal 10 generates an authentication hash value using the random number value, and then transmits it to the notification notification server 20 (S111). Here, the authentication hash value is an authentication means for confirming the legitimacy of the user terminal 10, and is a value generated using the first hash, the second hash, or the third hash as described above, or the first hash; A value generated by combining at least two of the second hash and the third hash. Furthermore, the authentication hash value may be a value generated by further combining random number values.

알림공지서버(20)는 사용자단말(10)로부터 수신한 인증 해시값, 사용자단말 정보, 및 알림공지서버 정보를 인증서버(30)로 전송한다(S113).The notification notification server 20 transmits the authentication hash value received from the user terminal 10, the user terminal information, and the notification notification server information to the authentication server 30 (S113).

알림공지서버(20)로부터 인증 해시값이 수신되면, 인증서버(30)는 관리용 DB에 등록 저장된 식별정보, 알림공지서버(20)에서 생성된 난수값, 및 블록체인(40)에 기록된 등록 해시값 관련 정보를 이용하여 등록 해시값을 생성한다(S117).When the authentication hash value is received from the notification notification server 20, the authentication server 30 records the identification information registered and stored in the management DB, the random number generated by the notification notification server 20, and the block chain 40. A registered hash value is generated by using the registered hash value related information (S117).

구체적으로, 인증서버(30)는 알림공지서버(20)의 접근 승인을 요청받을 시(즉, 알림공지서버(20)로부터 인증 해시값을 수신시), 블록체인(40)에 기록된 등록 해시값 관련 정보 즉, 조합방식에 관한 정보를 열람한다(S115). 여기서, 블록체인(40)에 기록된 조합방식 정보는 도 1에서 설명한 바와 동일하다.Specifically, when the authentication server 30 receives a request for access approval of the notification notification server 20 (that is, when receiving an authentication hash value from the notification notification server 20), the registration hash recorded in the block chain 40 Value-related information, that is, information on a combination method is read (S115). Here, the combination method information recorded in the block chain 40 is the same as described in FIG. 1 .

그리고, 인증서버(30)는 블록체인(40)에서 열람한 조합방식 정보에 해당하는 조합방식에 따라, 해당 사용자단말(10) 및 알림공지서버(20)와 관련하여 관리용 DB에 저장된 제1 식별정보, 제2 식별정보 및(또는) 제3 식별정보를 조합하여 등록 해시값을 생성한다. 만약 난수값을 더 이용할 경우, 등록 해시값은 난수값을 더 조합하여 생성한다.And, according to the combination method corresponding to the combination method information read in the block chain 40, the authentication server 30 is the first stored in the management DB in relation to the user terminal 10 and the notification notification server 20. A registered hash value is generated by combining the identification information, the second identification information, and/or the third identification information. If additional random number values are used, the registered hash value is generated by further combining the random number values.

그리고, 인증서버(30)는 사용자단말(10)이 생성한 인증 해시값을 등록 해시값과 비교하여, 해당 인증 해시값의 정당성(즉, 해당 사용자단말의 정당성)을 판별한다(S119).Then, the authentication server 30 compares the authentication hash value generated by the user terminal 10 with the registered hash value to determine the validity of the authentication hash value (that is, the validity of the user terminal) (S119).

상기 비교결과, 인증 해시값이 등록 해시값과 일치하지 않을 경우, 인증서버(30)는 알림공지서버(20)로 인증실패 메시지를 전송하게 되고, 이러한 인증실패 메시지는 알림공지서버(20)에서 다시 사용자단말(10)로 전송되어 인증이 실패했음이 통보된다.As a result of the comparison, if the authentication hash value does not match the registered hash value, the authentication server 30 transmits an authentication failure message to the notification notification server 20, and this authentication failure message is transmitted from the notification notification server 20. It is transmitted back to the user terminal 10 to notify that authentication has failed.

비교결과, 인증 해시값이 등록 해시값과 일치할 경우, 인증서버(30)는 알림공지서버(20)에 로그인한 사용자단말(10)을 정당한 사용자단말(10)로 인증하고, 인증성공 메시지를 알림공지서버에게 전송하고, 인증 결과 및 인증된 사용자단말(10)의 단말정보와 알림공지서버 정보를 등록한다(S121).As a result of the comparison, if the authentication hash value matches the registered hash value, the authentication server 30 authenticates the user terminal 10 logged into the notification notification server 20 as a legitimate user terminal 10, and sends an authentication success message It is transmitted to the notification server, and the authentication result and terminal information and notification server information of the authenticated user terminal 10 are registered (S121).

그리고, 인증서버(30)가 알림공지서버(20)로 인증성공 메시지를 전송하면, 알림공지서버(20)는 이를 사용자단말(10)로 전달함으로써 인증이 성공했음을 통보한다 (S123).Then, when the authentication server 30 transmits the authentication success message to the notification notification server 20, the notification notification server 20 notifies the authentication success by delivering it to the user terminal 10 (S123).

그리고, 알림공지서버(20)와 사용자단말(10) 간에 암호화 통신 채널이 개설되어, 사용자단말(10)이 알림공지서버(20)를 접속하는 것이 가능하게 된다(S125).Then, an encrypted communication channel is established between the notification notification server 20 and the user terminal 10, so that the user terminal 10 can connect to the notification notification server 20 (S125).

(2-2) 제2 실시예(2-2) second embodiment

도 4는 본 발명의 제2 실시예에 따른 알림공지서버 접근요청 및 승인 과정을 나타낸 업무 흐름도이다.4 is a flowchart illustrating a notification notification server access request and approval process according to a second embodiment of the present invention.

도 4를 참조하면, 사용자단말(10)에서 알공 앱을 구동하여 인증서버(30)로 로그인을 수행한다. 이때, 인증서버(30)에 정상적으로 로그인이 수행되지 않은 경우 실패횟수를 카운딩하며 최초 인증신청 단계로 가서 처음부터 인증 과정을 다시 진행한다.Referring to FIG. 4 , the user terminal 10 runs the Algong app to log in to the authentication server 30 . At this time, if the login is not performed normally in the authentication server 30, the number of failures is counted, and the authentication process proceeds again from the beginning by going to the initial authentication application stage.

인증서버(30)에 정상적으로 로그인 수행되면 인증서버(30)에서 사용자단말(10)의 로그인을 승인한다. 그리고, 로그인이 승인되면 사용자단말(10)에서 인증서버(30)로 사용자단말(10) 정보와 사용자단말(10)에 설치된 알공 앱의 무결성 검증키(예컨대, 버전 정보, 체크썸 (checksum) 등)를 전송한다(S201).When the login is normally performed in the authentication server 30 , the authentication server 30 approves the login of the user terminal 10 . And, when the login is approved, the user terminal 10 information from the user terminal 10 to the authentication server 30 and the integrity verification key (eg, version information, checksum) of the Algon app installed in the user terminal 10, etc. ) is transmitted (S201).

인증서버(30)는 사용자단말(10)로부터 수신한 무결성 검증키를 검사하여, 해당 사용자단말(10)의 알공 앱에 이상이 없는지 확인한다(S203). 여기서, 알공 앱에 이상이 없는지 확인하는 것은 예컨대 해당 알공 앱이 해킹 등에 의해 위조/변조되었는지를 검사하는 것을 의미할 수 있다. 그리고, 무결성 검증키 검사는 인증서버(30)의 관리용 단말 DB에 기등록된 사용자단말(10)의 알공 앱 무결성 검증키와 비교하는 방식으로 수행될 수 있다.The authentication server 30 checks the integrity verification key received from the user terminal 10, and confirms that there is no abnormality in the Algong app of the user terminal 10 (S203). Here, checking whether there is an abnormality in the Algon app may mean, for example, checking whether the Algong app is forged/falsified by hacking or the like. In addition, the integrity verification key check may be performed in a manner of comparing the integrity verification key of the user terminal 10 registered in the management terminal DB of the authentication server 30 with the Arkong app integrity verification key.

무결성 검증키 검사 결과, 해당 알공 앱에 이상이 있을 경우, 인증서버(30)는 사용자단말(10)에게 인증실패 메시지를 전송하게 된다.As a result of the integrity verification key check, if there is an error in the corresponding Algong app, the authentication server 30 transmits an authentication failure message to the user terminal 10 .

무결성 검증키 검사 결과, 해당 알공 앱에 이상이 없을 경우, 인증서버(30)는 해당 사용자단말(10)에게 이상이 없음을 통보한다(S205). 그러면, 인증서버(30)는 난수 생성기를 통해 난수값을 생성하여 사용자단말(10)로 전송한다(S207).As a result of the integrity verification key check, if there is no abnormality in the corresponding Algong app, the authentication server 30 notifies the user terminal 10 that there is no abnormality (S205). Then, the authentication server 30 generates a random number value through the random number generator and transmits it to the user terminal 10 (S207).

인증서버(30)로부터 난수값이 수신되면, 사용자단말(10)은 난수값을 이용하여 인증 해시값을 생성한 후, 이 인증 해시값과 해당 사용자단말(10)의 단말정보를 알림공지서버(20)로 전송한다(S209).When the random number value is received from the authentication server 30, the user terminal 10 generates an authentication hash value using the random number value, and then sends the authentication hash value and the terminal information of the user terminal 10 to the notification server ( 20) (S209).

알림공지서버(20)는 사용자단말(10)로부터 수신한 인증 해시값, 사용자단말 정보, 및 알림공지서버 정보를 인증서버(30)로 전송한다(S211).The notification notification server 20 transmits the authentication hash value received from the user terminal 10, the user terminal information, and the notification notification server information to the authentication server 30 (S211).

알림공지서버(20)로부터 인증 해시값이 수신되면, 인증서버(30)는 관리용 DB에 등록 저장된 식별정보, 알림공지서버(20)에서 생성된 난수값, 및 블록체인(40)에 기록된 등록 해시값 관련 정보를 이용하여 등록 해시값을 생성한다(S215).When the authentication hash value is received from the notification notification server 20, the authentication server 30 records the identification information registered and stored in the management DB, the random number generated by the notification notification server 20, and the block chain 40. A registered hash value is generated by using the registered hash value related information (S215).

구체적으로, 인증서버(30)는 알림공지서버(20)의 접근 승인을 요청받을 시(즉, 알림공지서버(20)로부터 인증 해시값을 수신시), 블록체인(40)에 기록된 등록 해시값 관련 정보 즉, 조합방식에 관한 정보를 열람한다(S213). 여기서, 블록체인(40)에 기록된 조합방식 정보는 도 1에서 설명한 바와 동일하다.Specifically, when the authentication server 30 receives a request for access approval of the notification notification server 20 (that is, when receiving an authentication hash value from the notification notification server 20), the registration hash recorded in the block chain 40 Value-related information, that is, information on a combination method is read (S213). Here, the combination method information recorded in the block chain 40 is the same as described in FIG. 1 .

그리고, 인증서버(30)는 블록체인(40)에서 열람한 조합방식 정보에 해당하는 조합방식에 따라, 해당 사용자단말(10) 및 알림공지서버(20)와 관련하여 관리용 DB에 저장된 제1 식별정보, 제2 식별정보 및(또는) 제3 식별정보를 조합하여 등록 해시값을 생성한다. 만약 난수값을 더 이용할 경우, 등록 해시값은 난수값을 더 조합하여 생성한다.And, according to the combination method corresponding to the combination method information read in the block chain 40, the authentication server 30 is the first stored in the management DB in relation to the user terminal 10 and the notification notification server 20. A registered hash value is generated by combining the identification information, the second identification information, and/or the third identification information. If additional random number values are used, the registered hash value is generated by further combining the random number values.

그리고, 인증서버(30)는 사용자단말(10)이 생성한 인증 해시값을 등록 해시값과 비교하여, 해당 인증 해시값의 정당성(즉, 해당 사용자단말의 정당성)을 판별한다(S217).Then, the authentication server 30 compares the authentication hash value generated by the user terminal 10 with the registered hash value to determine the validity of the authentication hash value (that is, the validity of the user terminal) (S217).

상기 비교결과, 인증 해시값이 등록 해시값과 일치하지 않을 경우, 인증서버(30)는 사용자단말(10)로 인증실패 메시지를 전송하여 인증이 실패했음이 통보한다.As a result of the comparison, if the authentication hash value does not match the registered hash value, the authentication server 30 transmits an authentication failure message to the user terminal 10 to notify that authentication has failed.

상기 비교결과, 인증 해시값이 등록 해시값과 일치할 경우, 인증서버(30)는 해당 사용자단말(10)을 정당한 사용자단말로 인증하고, 인증성공 메시지를 사용자단말(10)에게 전송하여 인증이 성공했음이 통보하고, 인증 결과 및 인증된 사용자단말(10)의 단말정보와 알림공지서버 정보를 등록한다(S219).As a result of the comparison, if the authentication hash value matches the registered hash value, the authentication server 30 authenticates the corresponding user terminal 10 as a legitimate user terminal, and transmits an authentication success message to the user terminal 10 to perform authentication. Notifies of success, and registers the authentication result, terminal information of the authenticated user terminal 10, and notification notification server information (S219).

그리고, 알림공지서버(20)와 사용자단말(10) 간에 암호화 통신 채널이 개설되어, 사용자단말(10)이 알림공지서버(20)를 접속하는 것이 가능하게 된다(S221).Then, an encrypted communication channel is established between the notification notification server 20 and the user terminal 10, so that the user terminal 10 can connect to the notification notification server 20 (S221).

(2-3) 제3 실시예(2-3) Third embodiment

도 5는 본 발명의 제3 실시예에 따른 알림공지서버 접근요청 및 승인 과정을 나타낸 업무 흐름도이다.5 is a flowchart illustrating a notification notification server access request and approval process according to a third embodiment of the present invention.

도 5를 참조하면, 사용자단말(10)에서 알공 앱을 구동하여 어플리케이션 검증서버(50)로 로그인을 수행한다. 이때, 어플리케이션 검증서버(50)에 정상적으로 로그인이 수행되지 않은 경우 실패횟수를 카운딩하며 최초 인증신청 단계로 가서 처음부터 인증 과정을 다시 진행한다.Referring to FIG. 5 , the user terminal 10 runs the Algong app to log in to the application verification server 50 . At this time, if the login to the application verification server 50 is not normally performed, the number of failures is counted and the first authentication application step is performed and the authentication process is performed again from the beginning.

어플리케이션 검증서버(50)에 정상적으로 로그인 수행되면 어플리케이션 검증서버(50)에서 사용자단말(10)의 로그인을 승인한다. 그리고, 로그인이 승인되면 사용자단말(10)에서 어플리케이션 검증서버(50)로 사용자단말 정보와 사용자단말에 설치된 알공 앱의 무결성 검증키(예컨대, 버전 정보, 체크썸 (checksum) 등)를 전송한다(S301).When the application verification server 50 is normally logged in, the application verification server 50 approves the login of the user terminal 10 . And, when the login is approved, the user terminal 10 to the application verification server 50 transmits the user terminal information and the integrity verification key (eg, version information, checksum, etc.) of the Algon app installed in the user terminal ( S301).

어플리케이션 검증서버(50)는 사용자단말(10)로부터 수신한 무결성 검증키를 검사하여, 해당 사용자단말(10)의 알공 앱에 이상이 없는지 확인한다(S303).The application verification server 50 checks the integrity verification key received from the user terminal 10, and confirms that there is no abnormality in the Algong app of the corresponding user terminal 10 (S303).

무결성 검증키 검사 결과, 해당 알공 앱에 이상이 있을 경우, 어플리케이션 검증서버(50)는 사용자단말(10)에게 인증실패 메시지를 전송하게 된다.As a result of the integrity verification key check, if there is an abnormality in the corresponding Algong app, the application verification server 50 transmits an authentication failure message to the user terminal 10 .

무결성 검증키 검사 결과, 해당 알공 앱에 이상이 없을 경우, 어플리케이션 검증서버(50)는 해당 사용자단말(10)에게 이상이 없음을 통보한다(S305). 그리고, 어플리케이션 검증서버(50)는 난수값을 생성한 후, 이 난수값을 이용하여 인증 해시값을 생성한다(S309).As a result of the integrity verification key check, if there is no abnormality in the corresponding Algong app, the application verification server 50 notifies the user terminal 10 that there is no abnormality (S305). Then, the application verification server 50 generates a random number value, and then uses the random number value to generate an authentication hash value (S309).

한편, 어플리케이션 검증서버(50)에서 해당 알공 앱에 이상이 없음이 통보되는 경우, 사용자단말(10)은 알림공지서버(20)로 사용자단말(10)의 단말정보를 전송한다(S307). 그러면, 알림공지서버(20)는 사용자단말(10)로부터 수신된 사용자단말 정보와 알림공지서버 정보를 인증서버(30)로 전송한다(S311).On the other hand, when the application verification server 50 is notified that there is no abnormality in the corresponding Algong app, the user terminal 10 transmits the terminal information of the user terminal 10 to the notification notification server 20 (S307). Then, the notification server 20 transmits the user terminal information and the notification server information received from the user terminal 10 to the authentication server 30 (S311).

어플리케이션 검증서버(50)는 사용자단말(10)의 단말정보와 인증 해시값을 인증서버(30)로 전송한다(S313). 그러면, 인증서버(30)는 관리용 DB에 등록 저장된 식별정보, 어플리케이션 검증서버(50)에서 생성된 난수값, 및 블록체인(40)에 기록된 등록 해시값 관련 정보를 이용하여 등록 해시값을 생성한다(S317).The application verification server 50 transmits the terminal information and the authentication hash value of the user terminal 10 to the authentication server 30 (S313). Then, the authentication server 30 uses the registered and stored identification information in the management DB, the random number generated by the application verification server 50, and the registered hash value related information recorded in the block chain 40 to obtain the registered hash value. generated (S317).

구체적으로, 인증서버(30)는 알림공지서버(20)의 접근 승인을 요청받을 시(즉, 어플리케이션 검증서버(50)로부터 인증 해시값을 수신시), 블록체인(40)에 기록된 등록 해시값 관련 정보 즉, 조합방식에 관한 정보를 열람한다(S315). 여기서, 블록체인(40)에 기록된 조합방식 정보는 도 1에서 설명한 바와 동일하다.Specifically, when the authentication server 30 receives a request for access approval of the notification notification server 20 (that is, when receiving an authentication hash value from the application verification server 50), the registration hash recorded in the block chain 40 Value-related information, that is, information on a combination method is read (S315). Here, the combination method information recorded in the block chain 40 is the same as described in FIG. 1 .

그리고, 인증서버(30)는 블록체인(40)에서 열람한 조합방식 정보에 해당하는 조합방식에 따라, 관리용 DB에 저장된 제1 식별정보, 제2 식별정보 및(또는) 제3 식별정보를 조합하여 등록 해시값을 생성한다. 만약 난수값을 더 이용할 경우, 등록 해시값은 난수값을 더 조합하여 생성한다.And, according to the combination method corresponding to the combination method information read in the block chain 40, the authentication server 30 stores the first identification information, the second identification information and/or the third identification information stored in the management DB. Combined to create a registered hash value. If additional random number values are used, the registered hash value is generated by further combining the random number values.

그리고, 인증서버(30)는 블록체인(40)에서 열람한 조합방식 정보에 해당하는 조합방식에 따라, 해당 사용자단말(10) 및 알림공지서버(20)와 관련하여 관리용 DB에 저장된 제1 식별정보, 제2 식별정보 및(또는) 제3 식별정보를 조합하여 등록 해시값을 생성한다. 만약 난수값을 더 이용할 경우, 등록 해시값은 난수값을 더 조합하여 생성한다.And, according to the combination method corresponding to the combination method information read in the block chain 40, the authentication server 30 is the first stored in the management DB in relation to the user terminal 10 and the notification notification server 20. A registered hash value is generated by combining the identification information, the second identification information, and/or the third identification information. If additional random number values are used, the registered hash value is generated by further combining the random number values.

그리고, 인증서버(30)는 인증 해시값과 등록 해시값을 비교하여, 해당 인증 해시값의 정당성(즉, 해당 사용자단말의 정당성)을 판별한다(S319).Then, the authentication server 30 compares the authentication hash value with the registered hash value to determine the validity of the authentication hash value (that is, the validity of the user terminal) (S319).

상기 비교결과, 인증 해시값이 등록 해시값과 일치하지 않을 경우, 인증서버(30)는 사용자단말(10)로 인증실패 메시지를 전송하여 인증이 실패했음이 통보한다.As a result of the comparison, if the authentication hash value does not match the registered hash value, the authentication server 30 transmits an authentication failure message to the user terminal 10 to notify that authentication has failed.

상기 비교결과, 인증 해시값이 등록 해시값과 일치할 경우, 인증서버(30)는 해당 사용자단말(10)을 정당한 사용자단말로 인증하고, 인증성공 메시지를 사용자단말(10)에게 전송하여 인증이 성공했음이 통보하고, 인증 결과 및 인증된 사용자단말(10)의 단말정보와 알림공지서버 정보를 등록한다(S321).As a result of the comparison, if the authentication hash value matches the registered hash value, the authentication server 30 authenticates the corresponding user terminal 10 as a legitimate user terminal, and transmits an authentication success message to the user terminal 10 to perform authentication. It notifies that it has succeeded, and registers the authentication result, terminal information of the authenticated user terminal 10, and notification notification server information (S321).

그리고, 알림공지서버(20)와 사용자단말(10) 간에 암호화 통신 채널이 개설되어, 사용자단말(10)이 알림공지서버(20)에 접근하는 것이 가능하게 된다(S323).Then, an encrypted communication channel is established between the notification notification server 20 and the user terminal 10, so that the user terminal 10 can access the notification notification server 20 (S323).

도 8은 지금까지 설명한 제3자 인증 방식을 복합적으로 사용하여 사용자단말을 인증하는 과정을 설명하는 흐름도이다. 사용자단말(10)이 로그인 한 후, 사용자단말(10)의 알공 앱에서 사용자단말(10)을 인증받아야 하는 메뉴로 진입하였을 때 사용자단말의 고유정보를 알림공지서버(20)로 전송하고 알림공지서버(20)는 인증서버(30)로 사용자단말의 고유정보를 전송하고, 인증서버(30)는 인증DB(Auth DB)에 저장되어있는 단말기 고유정보와 비교한다.8 is a flowchart illustrating a process of authenticating a user terminal by using the third-party authentication method described so far in a complex manner. After the user terminal 10 logs in, when the user terminal 10 enters the menu to be authenticated in the Algong app of the user terminal 10, the unique information of the user terminal is transmitted to the notification server 20 and notification The server 20 transmits the unique information of the user terminal to the authentication server 30 , and the authentication server 30 compares it with the terminal-specific information stored in the authentication DB (Auth DB).

비교결과 거짓일 경우 로그 DB(Log DB)에 일시와 인증 실패 내용을 저장하고 참일 경우 인증서버(30)에서 생성한 난수값을 알림공지서버(20)를 통하여 사용자단말(10)로 전달한다.If the comparison result is false, the date and time and authentication failure details are stored in the log DB. If true, the random number value generated by the authentication server 30 is transmitted to the user terminal 10 through the notification notification server 20 .

난수값을 전달받은 사용자단말(10)은 사용자단말의 고유정보와 난수값을 혼합하여 제1혼합해시값을 만들어 알림공지서버(20)에 전달한다.The user terminal 10 receiving the random number value creates a first mixed hash value by mixing the unique information of the user terminal and the random number value, and transmits it to the notification notification server 20 .

제1혼합해시값을 전달받은 알림공지서버(20)는 한 번 더 해시함수를 적용하여 인증해시값으로 만들어 인증서버(30)에 전달한다.The notification notification server 20 that has received the first mixed hash value applies the hash function once more to create an authentication hash value and transmits it to the authentication server 30 .

알림공지서버(20)는 전달받은 인증해시값과 인증서버(30)에서 인증 DB(Auth DB)와 해시DB(Hash DB), 동일한 난수값을 활용하여 같은 방법으로 생성한 등록해시값을 비교한다.The notification notification server 20 compares the received authentication hash value with the registered hash value generated in the same way by using the authentication DB (Auth DB) and the hash DB (Hash DB) from the authentication server 30, and the same random number value. do.

거짓일 경우 로그 DB(Log DB)에 일시와 인증 실패 내용을 저장하고 참일 경우 인증서버(30)에서 인증성공 메세지(예:Auth OK)를 알림공지서버(20)에 전달한다. 인증이 완료된 사용자단말(10)은 알림공지서버(20)에서 사용자단말(10)로 해당 메뉴를 실행할 수 있도록 허여한다. 인증DB(Auth DB)에서는 사용자단말(10)의 인증 정보를 비교하고, 해시DB(Hash DB)에서는 혼합해시 값을 비교한다. 인증에 실패한 경우 로그DB(Log DB)에서 해킹인지 아닌지 걸러주는 역할을 한다.If it is false, the date and time and authentication failure details are stored in the log DB. If true, the authentication server 30 transmits an authentication success message (eg, Auth OK) to the notification notification server 20 . The user terminal 10 for which authentication has been completed permits the notification notification server 20 to execute the corresponding menu to the user terminal 10 . The authentication information of the user terminal 10 is compared in the authentication DB (Auth DB), and mixed hash values are compared in the hash DB (Hash DB). If authentication fails, it plays a role of filtering out whether the log DB is hacked or not.

도 9는 본 발명에 따른 일 실시예인 알림 공지 시스템을 이용하여 알림을 공지하는 과정을 설명하는 흐름도이다. 전술한 예와 동일한 상황으로 아파트 관리 소장 스마트폰 단말을 마스터 사용자단말(10a)로 설정하고 해당 아파트의 일반 소유자를 패밀리 사용자단말(10b)로 가정하여 설명한다.9 is a flowchart illustrating a process of notifying a notification using the notification notification system according to an embodiment of the present invention. In the same situation as in the above-described example, it is assumed that the smart phone terminal of the apartment management owner is set as the master user terminal 10a and the general owner of the apartment is the family user terminal 10b.

마스터 사용자단말(10a)은 알림공지를 하고자 하는 내용을 '제목, 내용, 첨부이미지'로 구성되는 알림공지문서를 작성하고 마스터 사용자단말에 저장한다(S501). 제목은 한 줄을 넘지 않으며 공지하고자 하는 핵심 내용을 간단히 알리기 위한 단문 형식을 갖는다. 내용은 제목보다 상세하게 문자 형식으로 알림 내용을 설명하는 문장으로 구성된다. 첨부이미지는 알림 내용 전체를 공지하는 문서를 촬영한 이미지 파일을 의미한다. 예를 들어, 본 발명 이전에 아파트 입주민에게 '매주 화, 목요일마다 아파트 농산물 장터 개설'이라는 내용을 알리기 위해서는 엘리베이트 또는 출입문 인근에 위치하는 게시판에 관리소장의 도장이 날인된 관련 공문을 게시하게 된다. 본 발명에서 의미하는 첨부이미지란 이러한 공지 내용을 전자 문서(PDF, 한글, 워드, 그림파일)로 작성한 후 출력한 문서를 촬영한 이미지 파일로 보면 된다. 즉, 공지된 알림을 정확히 확인하기 위해서는 제목 및 내용만으로는 파악할 수 없으며 반드시 첨부이미지를 확인해야 하는 것이다.The master user terminal 10a prepares a notice notice document composed of 'title, content, and attached image' for the content to be notified, and stores it in the master user terminal (S501). The title does not exceed one line and is in the form of a short paragraph to briefly inform the main content to be announced. The content consists of sentences that explain the content of the notification in text format in more detail than the title. The attached image refers to an image file of a document that notifies the entire notification content. For example, prior to the present invention, in order to inform apartment residents of the contents of 'opening of an apartment agricultural market every Tuesday and Thursday', a related official document with the seal of the management director stamped on the bulletin board located near the elevator or entrance is posted. Attached image as used in the present invention can be viewed as an image file obtained by photographing the document printed after writing such notice as an electronic document (PDF, Hangul, Word, or picture file). In other words, in order to accurately check the announced notification, the title and content alone cannot be grasped, and the attached image must be checked.

작성된 알림공지문서는 알림공지서버(20)로 전송된다(S503). 이때 해당 알림공지문서를 받아볼 패밀리 리스트도 함께 전송된다. S503 단계에서 전송되는 패밀리 리스트는 해당 공지문서를 실제 수령할 각각의 패밀리 사용자단말 리스트가 전송될 수도 있으며 각 패밀리 사용자단말 리스트를 전송하는 대신에 미리 저장된 그룹명을 송부할 수도 있다. 사용자단말을 등록하는 단계 또는 별도 절차로 알림공지를 수행하기 위한 마스터 사용자단말 및 복수 개 패밀리 사용자단말을 지정하는 단계에서 알림공지서버에 이러한 리스트를 그룹으로 미리 저장해 두기 때문에 S503 단계에서는 해당 패밀리를 특정하기 위한 식별자만 전송하면 되는 것이다. 예를 들어, A아파트 관리소장(마스터 사용자단말)은 전체 입주민(패밀리 사용자단말)을 수신 리스트로 하는 'A아파트 전체 입주민' 그룹 또는 A아파트 관리소장(마스터 사용자단말)은 전체 입주민 중에서 투표로 선정된 관리임원(패밀리 사용자단말)만을 수신 리스트로 하는 'A아파트 관리임원' 그룹을 지정하여 운영할 수도 있다. 이와 같이 그룹은 마스터 사용자단말에 의해 원하는 수만큼 생성될 수 있다. 이와 같은 예에서는 S503단계에서 수신인을 특정하기 위해 전체 패밀리 사용자단말 리스트를 지정할 필요없이 'A아파트 전체 입주민' 그룹이라고 지정하여 송부하면 되는 것이다.The prepared notification notification document is transmitted to the notification notification server 20 (S503). At this time, a list of families to receive the notification notification document is also transmitted. In the family list transmitted in step S503, a list of each family user terminal that will actually receive the notification document may be transmitted, or a group name stored in advance may be transmitted instead of transmitting each family user terminal list. In the step of registering the user terminal or in the step of designating a master user terminal and a plurality of family user terminals for performing a notification notification as a separate procedure, since these lists are stored in advance as a group in the notification server, in step S503, the corresponding family is specified It is only necessary to transmit an identifier for For example, the manager of apartment A (master user terminal) is selected by voting from among all the residents, or the 'All residents of apartment A' group, which has all residents (family user terminals) as the recipient list, or the manager of apartment A (master user terminal) is selected by voting from among all residents It is also possible to designate and operate the 'Apartment management executives' group, which has only the registered management executives (family user terminals) as the receiving list. In this way, a desired number of groups can be created by the master user terminal. In this example, in step S503, there is no need to designate the entire family user terminal list in order to specify the recipient, but the 'Apartment All Residents' group may be designated and transmitted.

알림공지서버(20)는 송부받은 알림공지문서를 저장하고(S505), 패밀리 리스트 대상 패밀리 사용자단말(10b)에게 푸시 방식으로 제목 및 내용을 전송하고(S509), 전송 이력을 블록체인(40)에 트랜잭션한다. S509 단계에서는 첨부이미지는 패밀리 사용자단말(10b)에 전송되지는 않는다. 패밀리 사용자단말(10b)이 푸시 방식으로 수신된 제목 및 내용을 확인하고 전체 상세한 내용을 확인하기 위해서 알림공지서버(20)에 알림공지를 요청하면(S511), 알림공지서버(20)는 저장되어 있던 첨부이미지에 타임 스탬프를 생성하고(S513), 타임 스탬프가 찍힌 첨부이미지를 패밀리 사용자단말(10b)에 다운로드시키며(S515), 다운로드 기록을 블록체인(40)에 트랜잭션하게 된다(S517). 패밀리 사용자단말(10b)이 타임스탬프 완료된 첨부이미지를 열람하게 되면(S519) 해당 열람 기록도 블록체인 네트워크에 트랜잭션하게 되는 것이다(S521).Notification server 20 stores the sent notification notification document (S505), transmits the title and contents in a push manner to the family list target family user terminal 10b (S509), and transmits the transmission history to the block chain 40 transact on In step S509, the attached image is not transmitted to the family user terminal 10b. When the family user terminal 10b requests a notification notification to the notification notification server 20 in order to check the title and contents received in the push method and check the entire detailed contents (S511), the notification notification server 20 is stored and A time stamp is created on the attached image (S513), the attached image with the time stamp is downloaded to the family user terminal 10b (S515), and the download record is transacted on the block chain 40 (S517). When the family user terminal 10b reads the time-stamped attached image (S519), the reading record is also transacted with the block chain network (S521).

도 9의 흐름에서 알림공지서버(20)와 마스터 사용자단말(10a) 및 알림공지서버(20)와 패밀리 사용자단말(10b)은 암호화된 세션키 방식 통신을 이용하여 진행된다. 도 10은 본 발명에서 실행되는 암호화된 통신 채널 개설 흐름을 설명하는 흐름도이다. 도 3 내지 도 5에 의해서 사용자단말 및 알림공지서버에 대하여 인증서버(30)를 통한 제3자 인증을 마친 후 도 3에서는 S125단계, 도 4에서는 S221단계 및 도 5에서는 S323단계에서 통신 채널이 개설되게 된다. 도 10에서는 이러한 암호화된 통신 채널 개설 흐름을 설명한다.In the flow of FIG. 9 , the notification notification server 20, the master user terminal 10a, and the notification notification server 20 and the family user terminal 10b use encrypted session key communication. 10 is a flowchart illustrating an encrypted communication channel establishment flow executed in the present invention. After third-party authentication through the authentication server 30 is completed for the user terminal and notification notification server according to FIGS. 3 to 5, the communication channel is established in step S125 in FIG. 3, step S221 in FIG. 4, and step S323 in FIG. will be opened FIG. 10 describes the flow of establishing such an encrypted communication channel.

사용자단말(10)은 통신 채널 개통을 요청한다(①). 이때 SD(Session ID)와 PID(Peer ID)를 함께 전송한다. 알림공지서버(20)은 SD와 PID를 인증서버(30)로 전달한다. 인증서버(30)는 전달받은 SD와 PID가 서버 DB에 있는 값과 일치하면 알림공지서버(20)로 난수값을 전달한다. 알림공지서버(20)는 인증서버(30)로부터 전달받은 난수값을 사용자단말(10)로 전달한다(②).The user terminal 10 requests to open a communication channel (①). At this time, SD (Session ID) and PID (Peer ID) are transmitted together. The notification notification server 20 transmits the SD and PID to the authentication server 30 . The authentication server 30 transmits a random number value to the notification notification server 20 when the received SD and PID match values in the server DB. The notification server 20 transmits the random number value received from the authentication server 30 to the user terminal 10 (②).

전달받은 난수값을 사용자단말정보와 조합한 후, 해쉬화하여 알림공지서버(20)로 전달한다(③). 사용자단말(10)로부터 전달받은 해쉬값을 알림공지서버의 고유값으로 한번 더 해쉬화하여 최종해쉬값을 인증서버(30)로 전달한다(④).After combining the received random number value with user terminal information, it is hashed and transmitted to the notification notification server 20 (③). The hash value transmitted from the user terminal 10 is hashed once more with the unique value of the notification notification server, and the final hash value is transmitted to the authentication server 30 (④).

인증서버(30)에서는 전달받은 최종해쉬값과 블록체인(40)에 기 저장되어져 있는 사용자단말 정보와 조합정보를 활용하여 난수값과 조합하여 해쉬화한 인증해쉬값이 일치하는지 검사한다(⑤). 인증 성공시 통신채널 개통을 허용하고, 인증 실패시 통신채널 개통을 불허용한다(⑥).The authentication server 30 checks whether the received final hash value matches the hashed authentication hash value by combining it with a random number using the user terminal information and combination information previously stored in the block chain 40 (⑤) . Communication channel opening is allowed when authentication is successful, and communication channel opening is not allowed when authentication fails (⑥).

이러한 인증방식을 적용하더라도 여전히 몇 가지 보안상 문제점이 발생될 수 있다. 한가지 문제점은 마스터 사용자단말(10)이 생성하는 알림공지에 포함된 첨부이미지의 진위 여부에 대한 검증이 충분하지 않다는 것이다. 이를 해결하기 위하여 본 발명에서는 도 11에 제시된 바와 같이 마스터 사용자단말(10)이 알림공지등록메뉴를 실행할 경우 도 8과는 추가적인 인증 절차로 수행되도록 구현하였다.Even if this authentication method is applied, some security problems may still occur. One problem is that verification of the authenticity of the attached image included in the notification notice generated by the master user terminal 10 is not sufficient. In order to solve this problem, in the present invention, as shown in FIG. 11 , when the master user terminal 10 executes the notification notification registration menu, it is implemented as an additional authentication procedure as shown in FIG. 8 .

도 11은 지금까지 설명한 제3자 인증 방식을 복합적으로 사용하여 마스터 사용자단말이 알림공지 등록 메뉴를 실행할 경우 이를 인증하는 과정을 설명하는 흐름도이다. 마스터 사용자단말(10)이 로그인 한 후, 마스터 사용자단말(10)의 알공 앱에서 알림공지 등록 메뉴를 실행할 경우, 마스터 사용자단말의 고유정보 및 첨부이미지를 알림공지서버(20)로 전송하고 알림공지서버(20)는 인증서버(30)로 사용자단말의 고유정보 및 첨부이미지를 전송하고, 인증서버(30)는 먼저 마스터 사용자단말의 고유정보를 인증DB(Auth DB)에 저장되어있는 단말기 고유정보와 비교한다. 비교결과 거짓일 경우 로그 DB(Log DB)에 일시와 인증 실패 내용을 저장하고 마스터 사용자단말(10)에 통지한다.11 is a flowchart illustrating a process of authenticating when the master user terminal executes a notification notification registration menu by using the third-party authentication method described so far in a complex manner. After the master user terminal 10 logs in, when the notification notification registration menu is executed in the Algong app of the master user terminal 10, the master user terminal's unique information and attached image are transmitted to the notification notification server 20 and the notification notification The server 20 transmits the user terminal's unique information and the attached image to the authentication server 30, and the authentication server 30 first stores the master user terminal's unique information in the authentication DB (Auth DB). compare with If the comparison result is false, the date and time and authentication failure details are stored in the log DB, and the master user terminal 10 is notified.

참일 경우 첨부이미지로부터 위도, 경도, GPS위치정보, 이미지의 카메라정보, 사이즈, 해상도, 이미지 이름, etc ….등의 데이터를 분류하고 분류된 데이터를 이용하여 인증DB(Auth DB)에 저장되어있는 마스터 사용자단말(10) 정보와 비교한다. 따라서 마스터 사용자단말(10)의 경우는 해당 마스트 사용자단말(10)이 일반적으로 거주 또는 머무는 위도, 경도, GPS위치정보를 사전에 파악한 후 저장하여야 하며 마스터 사용자단말(10)에 구비된 카메라 정보 등도 사전에 파악한 후 저장해 두어야 한다.If true, latitude, longitude, GPS location information, camera information of the image, size, resolution, image name, etc… from the attached image. Classify the data such as . and compare it with the master user terminal 10 information stored in the authentication DB (Auth DB) using the classified data. Therefore, in the case of the master user terminal 10, the latitude, longitude, and GPS location information where the corresponding master user terminal 10 generally resides or stays must be identified in advance and stored, and camera information provided in the master user terminal 10 is also It should be identified in advance and saved.

첨부이미지 비교결과 거짓일 경우 로그 DB(Log DB)에 일시와 인증 실패 내용을 저장하고 마스터 사용자단말(10)에 통지하고, 참일 경우에는 인증서버(30)에서 생성한 난수값을 알림공지서버(20)를 통하여 사용자단말(10)로 전달한다.If the attached image comparison result is false, the date and time and authentication failure details are stored in the log DB and notified to the master user terminal 10. If true, the random number value generated by the authentication server 30 is sent to the notification notification server ( 20) through the user terminal 10.

난수값을 전달받은 사용자단말(10)은 사용자단말의 고유정보와 난수값을 혼합하여 제1혼합해시값을 만들어 알림공지서버(20)에 전달한다. 제1혼합해시값을 전달받은 알림공지서버(20)는 한 번 더 해시함수를 적용하여 인증해시값으로 만들어 인증서버(30)에 전달한다. 알림공지서버(20)는 전달받은 인증해시값과 인증서버(30)에서 인증 DB(Auth DB)와 해시DB(Hash DB), 동일한 난수값을 활용하여 같은 방법으로 생성한 등록해시값을 비교한다.The user terminal 10 receiving the random number value creates a first mixed hash value by mixing the unique information of the user terminal and the random number value, and transmits it to the notification notification server 20 . The notification notification server 20 that has received the first mixed hash value applies the hash function once more to create an authentication hash value and transmits it to the authentication server 30 . The notification notification server 20 compares the received authentication hash value with the registered hash value generated in the same way by using the authentication DB (Auth DB) and the hash DB (Hash DB) from the authentication server 30, and the same random number value. do.

거짓일 경우 로그 DB(Log DB)에 일시와 인증 실패 내용을 저장하고 참일 경우 인증서버(30)에서 인증성공 메세지(예:Auth OK)를 알림공지서버(20)에 전달한다. 인증이 완료된 사용자단말(10)은 알림공지서버(20)에서 사용자단말(10)로 해당 메뉴를 실행할 수 있도록 허여한다. 인증DB(Auth DB)에서는 사용자단말(10)의 인증 정보를 비교하고, 해시DB(Hash DB)에서는 혼합해시 값을 비교한다. 인증에 실패한 경우 로그DB(Log DB)에서 해킹인지 아닌지 걸러주는 역할을 한다.If it is false, the date and time and authentication failure details are stored in the log DB. If true, the authentication server 30 transmits an authentication success message (eg, Auth OK) to the notification notification server 20 . The user terminal 10 for which authentication has been completed permits the notification notification server 20 to execute the corresponding menu to the user terminal 10 . The authentication information of the user terminal 10 is compared in the authentication DB (Auth DB), and mixed hash values are compared in the hash DB (Hash DB). If authentication fails, it plays a role of filtering out whether the log DB is hacked or not.

도 11과 도 9에 제시된 처리 흐름의 연관성에 대해 설명하기로 한다. 도 11에 제시된 단계는 도 9에서 S5505단계 이전에 수행되는 절차로 이해하면 된다. 즉, 도 9에서 S501단계에서 마스터 사용자단말(10a)에서 작성한 '제목, 내용 및 첨부이미지'로 이루어지는 알림공지내용을 작성한 후 S503단계에서 알림공지서버(20)로 알림공지내용이 전부 전송되는 것으로 설명되었으나, 도 11을 적용할 경우 도 9에서 S503단계는 제목, 내용 및 패밀리 리스트만 알림공지서버(20)로 전송되고, 첨부이미지와 마스터 사용자단말(10a)로부터 전송받은 고유정보는 인증서버로 전송한 후(이러한 정보는 알림공지서버를 경유한 후 인증서버로 전송되어도 무방함) 도 11에 따라 고유정보 및 첨부이미지에 따른 인증을 수행한 후, 도 9의 S505단계부터 적용하면 되는 것이다. 구체적으로는 S503단계에서 알림공지내용, 패밀리 리스트 및 마스터 사용자단말 고유정보가 마스터 사용자단말(10a)로부터 알림공지서버(20)로 전송되는 것으로 수정되어야 한다. The correlation between the processing flows shown in FIG. 11 and FIG. 9 will be described. The step shown in FIG. 11 may be understood as a procedure performed before step S5505 in FIG. 9 . That is, in FIG. 9, after writing the notification notification content consisting of 'title, content and attached image' written in the master user terminal 10a in step S501 in FIG. 9, the notification notification content is transmitted to the notification notification server 20 in step S503. However, when FIG. 11 is applied, in step S503 in FIG. 9, only the title, content, and family list are transmitted to the notification notification server 20, and the attached image and the unique information transmitted from the master user terminal 10a are sent to the authentication server. After transmission (this information may be transmitted to the authentication server after passing through the notification notification server), authentication is performed according to the unique information and the attached image according to FIG. 11, and then applied from step S505 in FIG. Specifically, in step S503, the notification notification content, the family list, and the master user terminal-specific information should be modified to be transmitted from the master user terminal 10a to the notification notification server 20.

도 11에 제시된 방향으로 인증을 수행하더라도 알림공지서버(20)로부터 해당 공지문서에 대한 패밀리 사용자단말(10b)로 인증받지 않은 패밀리 사용자단말(10b)이 수신 리스트로 지정되지 않은 첨부 문서에 접근하여 열람할 수 있는 문제가 발생될 수 있다. 이는 인증서버(30)로부터 인증을 받은 패밀리 사용자단말(10b)은 알림공지서버(20)와 통신 채널이 형성되어 있기 때문에 수신인으로 포함되어 있지 않은 패밀리 사용자단말과 알림공지서버(20) 사이의 패킷을 탈취하기가 비교적 용이하기 때문이다. 예를 들어, 'A아파트 전체 입주민' 그룹에 속하나 'A아파트 관리임원' 그룹에는 속하지 않는 패밀리 사용자단말 중 하나를 패밀리 제1사용자단말이라고 가정하기로 한다. 패밀리 제1사용자단말의 경우 인증서버에 의한 인증에 문제가 없으므로 알림공지서버(20)와 통신 채널이 형성될 수 있다. 그런데 이와 같이 통신 채널이 형성된 상태에서 A아파트 관리소장(마스터 사용자단말)이 'A아파트 관리임원' 그룹에 속하는 패밀리 사용자단말('패밀리 제2사용자단말'이라 함)에 송부한 첨부이미지를 열람하기 위해 알림공지서버(20)와 패밀리 제2사용자단말 사이의 패킷을 탈취하여 승인되지 않은 문서를 볼 수 있는 문제가 발생될 수 있다.Even if authentication is performed in the direction shown in FIG. 11, the family user terminal 10b that is not authenticated as the family user terminal 10b for the notification document from the notification notification server 20 accesses the attached document that is not designated as the reception list. Reading problems may arise. This is because the family user terminal 10b authenticated by the authentication server 30 has a communication channel with the notification server 20, so the packet between the family user terminal and the notification server 20 is not included as a recipient. This is because it is relatively easy to deodorize. For example, it is assumed that one of the family user terminals belonging to the group 'All residents in apartment A' but not in the group 'Apartment management executives' is the first family user terminal. In the case of the first family user terminal, since there is no problem in authentication by the authentication server, a communication channel can be formed with the notification notification server 20 . However, in the state in which the communication channel is established in this way, to view the attached image sent by the head of apartment A (master user terminal) to the family user terminal (referred to as the 'family second user terminal') belonging to the 'A apartment management executive' group For this purpose, a problem may occur in which an unauthorized document may be viewed by hijacking the packet between the notification notification server 20 and the second family user terminal.

본 발명에서는 이러한 문제점을 해결하기 위하여 암호화된 통신 채널이 개설될 때마다 시퀀셜하게 채널번호를 발생시켜 사용하는 방식을 제안한다. 여기서 시퀀셜하게 채널번호를 발생시킨다는 것은 일정한 규칙에 따라 순차적으로 증가하거나 감소하는 채널번호를 발생시킨다는 것이다. 예를 들어, '1, 2, 3, 4, 5, ...' 또는 '1, 3, 5, 7, 9, ...' 또는 '1000, 999, 998, 997, 996, ..." 등을 예로 들 수 있다.In order to solve this problem, the present invention proposes a method of sequentially generating and using a channel number whenever an encrypted communication channel is established. Here, sequentially generating channel numbers means generating channel numbers that sequentially increase or decrease according to a certain rule. For example, '1, 2, 3, 4, 5, ...' or '1, 3, 5, 7, 9, ...' or '1000, 999, 998, 997, 996, ... ", etc., for example.

도 12는 인증된 사용자단말 사이에 패킷이 탈취되는 것을 방지하기 위해 본 발명에서 실행되는 암호화된 통신 채널 개설 흐름을 설명하는 흐름도이다. 도 3 내지 도 5에 의해서 사용자단말 및 알림공지서버에 대하여 인증서버(30)를 통한 제3자 인증을 마친 후 도 3에서는 S125단계, 도 4에서는 S221단계 및 도 5에서는 S323단계에서 통신 채널이 개설되게 된다. 도 10에서는 이러한 암호화된 통신 채널 개설 흐름을 설명한다.12 is a flowchart illustrating an encrypted communication channel establishment flow executed in the present invention in order to prevent packets from being hijacked between authenticated user terminals. After third-party authentication through the authentication server 30 is completed for the user terminal and notification notification server according to FIGS. 3 to 5, the communication channel is established in step S125 in FIG. 3, step S221 in FIG. 4, and step S323 in FIG. will be opened FIG. 10 describes the flow of establishing such an encrypted communication channel.

사용자단말(10)은 통신 채널 개통을 요청한다(①). 이때 SD(Session ID)와 PID(Peer ID)를 함께 전송한다. 알림공지서버(20)는 SD와 PID를 인증서버(30)로 전달한다. 인증서버(30)는 전달받은 SD와 PID가 서버 DB에 있는 값과 일치하면 알림공지서버(20)로 난수값과 시퀀셜하게 부여된 채널번호(이하, '시퀀셜 채널번호'이라 함)를 생성시켜 전달한다. 알림공지서버(20)는 인증서버(30)로부터 전달받은 난수값과 시퀀셜 채널번호를 사용자단말(10)로 전달한다(②).The user terminal 10 requests to open a communication channel (①). At this time, SD (Session ID) and PID (Peer ID) are transmitted together. The notification notification server 20 transmits the SD and PID to the authentication server 30 . The authentication server 30 generates a random number and a sequentially assigned channel number (hereinafter referred to as a 'sequential channel number') to the notification notification server 20 when the received SD and PID match the values in the server DB. transmit The notification server 20 transmits the random number value and the sequential channel number received from the authentication server 30 to the user terminal 10 (②).

전달받은 난수값을 사용자단말정보와 조합한 후, 해쉬화하고 시퀀셜 채널번호와 함께 알림공지서버(20)로 전달한다(③). 사용자단말(10)로부터 전달받은 해쉬값을 알림공지서버의 고유값으로 한번 더 해쉬화한 최종해쉬값과 시퀀셜 채널번호와 함께 인증서버(30)로 전달한다(④).After combining the received random number value with user terminal information, it is hashed and transmitted to the notification notification server 20 together with the sequential channel number (③). The hash value received from the user terminal 10 is hashed once more as a unique value of the notification notification server, and the final hash value and the sequential channel number are transmitted to the authentication server 30 (④).

인증서버(30)에서는 전달받은 최종해쉬값과 블록체인(40)에 기 저장되어져 있는 사용자단말 정보와 조합정보를 활용하여 난수값과 조합하여 해쉬화한 인증해쉬값이 일치하는지 검사한다(⑤). 인증 성공시 시퀀셜 채널번호를 전송하면서 통신채널 개통을 허용하고, 인증 실패시 통신채널 개통을 불허용한다(⑥).The authentication server 30 checks whether the received final hash value matches the hashed authentication hash value by combining it with a random number using the user terminal information and combination information previously stored in the block chain 40 (⑤) . Communication channel opening is allowed while transmitting a sequential channel number when authentication is successful, and communication channel opening is not allowed when authentication fails (⑥).

도 12와 같이 사용자단말(10)과 알림공지서버(20) 사이에 암호화된 통신 채널이 개설될 때마다 시퀀셜 채널번호를 부여하면 전술한 예시에 제시된 바와 같이 첨부이미지 열람이 허가되지 않은 패밀리 제1사용자단말이 첨부이미지 열람이 허가된 패밀리 제2사용자단말의 첨부이미지를 확인하기 위해서는 암호화된 통신 채널상의 패킷을 탈취하여야 한다. 그런데 패킷을 탈취할 경우 시퀀셜 채널번호도 함께 탈취할 수 밖에 없다. 따라서 인증서버(30)는 현재까지 생성된 최신의 시퀀셜 채널번호보다 이전에 발생된 시퀀셜 채널번호를 이용하여 패킷이 전송되는 것을 파악하게 되면 정당한 패킷이 아님을 파악하고 해당 암호화된 통신 채널을 폐쇄해 버리는 방안으로 이미 인증된 사용자단말 사이의 첨부이미지 보안도 수행할 수 있게 되는 것이다.As shown in FIG. 12, when an encrypted communication channel is established between the user terminal 10 and the notification notification server 20, a sequential channel number is assigned, as shown in the above example, the family first in which viewing of the attached image is not permitted. In order for the user terminal to check the attached image of the second user terminal of the family in which the viewing of the attached image is permitted, the packet on the encrypted communication channel must be hijacked. However, when the packet is hijacked, the sequential channel number is inevitably hijacked as well. Therefore, when the authentication server 30 detects that a packet is transmitted using a sequential channel number generated earlier than the latest sequential channel number generated so far, it identifies that the packet is not a legitimate packet and closes the encrypted communication channel. As a way to discard it, security of attached images between already authenticated user terminals can also be performed.

즉, 도 12에 따른 암호화된 채널 개설 방식에 의하면 패킷을 탈취하여도 hash되어 있고 hash된 값을 100번 이상의 hash가 되어 있으며, 해시를 푸는데도 성능좋은 슈퍼컴퓨터로 상당한 시간이 소요되며, 해시를 풀더라도 혼합해시(난수값이포함)가 되어 있어서 TTL적용으로 유효한 시간값이 지나서 전자전송의 이미지 알림공지정보를 해킹할 수 없게 된다. 이와 더불어 시퀀셜 채널번호를 이용함으로써 인증된 사용자단말 사이의 첨부이미지 보안도 수행할 수 있게 되었다. That is, according to the encrypted channel opening method according to FIG. 12, even if the packet is stolen, the hashed value is hashed more than 100 times. Even if unpacked, it is a mixed hash (including random number values), so the valid time value has passed due to TTL application, making it impossible to hack the image notification notice information of electronic transmission. In addition, by using the sequential channel number Attached image security between authenticated user terminals can also be performed.

개인정보를 본인 동의없이 제3자에게 전송하면 개인에게 불이익이 발생할 수 있으므로 불법으로 규정하고 있다. A아파트 관리소장(마스터 사용자단말)이 전체 입주민(패미릴 사용자단말)의 정보를 사용하는 것도 개인정보를 이용하는 것이므로 사전 허락을 받아야 한다. 본 발명에서는 개인정보 이용을 사전에 허락하고 보상하는 체계에 대해서도 설명하기로 한다. 도 13은 개인이 정보를 입력하고 이를 활용하는 절차를 설명하는 흐름도이다.It is illegal to transmit personal information to a third party without the person's consent as it may cause disadvantages to individuals. The use of personal information by the apartment management manager (master user terminal) of the apartment A (master user terminal) is also using personal information, so prior permission must be obtained. In the present invention, a system for allowing and rewarding the use of personal information in advance will also be described. 13 is a flowchart illustrating a procedure for an individual to input information and utilize it.

본인의 정보 활용을 원하는 개인은 정보관리앱에 제공되는 입력화면을 통하여 개인 정보를 입력한다(단계 ⓐ). 입력된 정보는 개인정보서비스제공자에 전송되며(단계 ⓑ) 해당 정보는 개인정보DB에 저장된다(단계 ⓒ). 이와 함께 개인정보는 암호화되고 개인 디지털키를 생헝한 후 블록체인 네트워크(40)에 저장된다(단계ⓓ). Individuals who want to use their own information enter their personal information through the input screen provided in the information management app (step ⓐ). The entered information is transmitted to the personal information service provider (step ⓑ) and the information is stored in the personal information DB (step ⓒ). Along with this, personal information is encrypted and stored in the blockchain network 40 after generating a personal digital key (step ⓓ).

개인정보를 활용하고자 하는 활용기업단말은 개인정보서비스제공자에 접속한 후 원하는 정보를 검색하고 필요한 범위의 개인정보를 조회한다(단계ⓔ). 이러한 조회 내역은 개인단말의 정보관리앱에 통지되며, 보상으로 일정한 포인트 또는 페이를 포인트 전자지갑에 제공하고(단계ⓕ) 블록체인 네트워크(40)망에도 해당 조회기록을 분산 저장한다(단계 ⓖ).After accessing the personal information service provider, the terminal of the enterprise that wants to utilize personal information searches for the desired information and inquires the personal information within the required range (step ⓔ). These inquiry details are notified to the personal terminal information management app, and a certain point or pay is provided to the point e-wallet as a reward (step ⓕ), and the inquiry record is also distributed and stored in the blockchain network 40 network (step ⓖ) .

활용기업단말은 단계ⓔ에서 조회한 개인정보 중에서 원하는 개인을 선별한 후 선별된 개인정보 데이터만을 구매를 요청한다(단계 ⓗ). 개인정보서비스제공자는 이러한 구매 내역이 발생하였음을 개인단말의 정보관리앱에 통지하고, 동의 여부를 문의한다(단계 ⓘ). 개인단말 소유자는 동의 또는 거부 의사를 개인정보서비스제공자에 통지하고(단계 ⓙ), 개인정보서비스제공자는 동의를 받은 개인의 개인정보만을 활용기업단말에 전송하고(단계 ⓚ), 블록체인 네트워크(40)망에 해당 조회기록을 분산 저장한 후(단계 ⓛ) 개인단말에 개인정보를 판매하였음을 알리고 일정한 포인트 또는 페이를 포인트 전자지갑에 제공한다(단계 ⓜ).After selecting the desired individual from the personal information inquired in step ⓔ, the terminal of the utilizing company requests to purchase only the selected personal information data (step ⓗ). The personal information service provider notifies the information management app of the personal terminal that such a purchase has occurred, and asks for consent (step ⓘ). The personal terminal owner notifies the personal information service provider of consent or refusal (step ⓙ), and the personal information service provider transmits only the personal information of the individual for whom consent has been obtained (step ⓚ), and the blockchain network (40 ) After distributing the inquiry record in the network (step ⓛ), notify the personal terminal that personal information has been sold and provide a certain point or pay to the point e-wallet (step ⓜ).

도 13에서 개인단말은 A 아파트 입주민이 소유한 단말(스마트폰)이 될 수 있고, 활용기업단말은 A 아파트 관리소장 단말이 될 수 있음은 물론이다. 도 13에 제시된 절차에 따라 A 아파트 관리소장이 입주민 개인정보를 구매하게 되면 A 아파트 관리소장 단말에는 동의한 입주민 정보가 저장 구비된다. 이 상태에서 A 아파트 관리소장(마스터 사용자단말)이 동의를 받은 입주민(패미릴 사용자단말) 정보를 사용하는 것은 아파트 관리를 위한 용도로만 입주민이 사용하도록 허가한 것이다. 따라서 A아파트 관리소장이 보유하고 있는 입주민 정보를 아파트 내에서 장터를 개장하는 상인에게 임의로 제공할 경우 이는 입주민이 허락한 사용범위를 벗어나는 것이므로 불법이 되는 것이다. 개인정보를 이용 문제는 향후에도 점점 더 중요해 질 것이므로 본 발명에서는 이를 체계적으로 관리하는 방안을 제시한다.Of course, the personal terminal in FIG. 13 may be a terminal (smartphone) owned by the resident of Apartment A, and the terminal of the utilizing company may be the terminal of the apartment manager A. When the apartment manager A purchases the personal information of the resident according to the procedure shown in FIG. 13 , the agreed resident information is stored in the terminal of the apartment manager A. In this state, the use of the information of the resident (Famiril user terminal) with the consent of the apartment manager A (master user terminal) is permitted to be used by the resident only for the purpose of apartment management. Therefore, if the manager of Apartment A arbitrarily provides the resident information possessed by the apartment manager to a merchant who opens a market in the apartment, it is illegal because it is outside the scope of use permitted by the resident. Since the problem of using personal information will become more and more important in the future, the present invention proposes a method for systematically managing it.

도 14는 개인 정보를 먼저 구매하여 보관 및 저장하고 있는 개인단말이 있을 경우, 해당 개인단말로부터 개인정보를 입수하는 흐름을 설명하는 흐름도이다. A 아파트 관리소장 단말에 먼저 구매한 A 아파트 입주민 데이터가 저장 구비되어 있는 상태를 예를 들어 설명하기로 한다.14 is a flowchart for explaining a flow of obtaining personal information from a personal terminal when there is a personal terminal in which personal information is first purchased and stored and stored. A state in which data of resident A, which was purchased first, is stored in the terminal of the apartment manager A will be described as an example.

A 아파트 관리소장은 보유 중인 A 아파트 입주민 정보를 데이터플랫폼으로 전송할 준비를 한다(단계 ①). 전송 준비는 다양한 방식으로 이루어질 수 있으며 예로서 API Sync를 통해서 이루어질 수 있다. 데이터플랫폼은 API Sync를 통해 개인 또는 단체가 보유 중인 개인정보의 포맷을 파악한 후 이를 DB에 저장할 포맷으로 변환한 후 개인정보DB에 저장하는 모듈이다. 개인정보서비스제공자는 알림공지서버에 구비되는 하나의 구성일 수 있으며 또는 별도의 서비스제공자로 구현될 수도 있음은 물론이다.The manager of apartment A prepares to transmit the resident information of apartment A that he has to the data platform (step ①). Transmission preparation can be done in various ways, for example, through API Sync. The data platform is a module that identifies the format of personal information held by an individual or group through API Sync, converts it into a format to be stored in the DB, and stores it in the personal information DB. Of course, the personal information service provider may be a single component provided in the notification notification server or may be implemented as a separate service provider.

개인정보서비스제공자는 A 아파트 입주민들에게 보유 중인 입주민 정보를 사용범위 내에서 제공해도 되는지 여부를 문의하고 동의를 요청한다(단계 ②). 이러한 동의 요청은 문자 등으로 송부할 수 있으며, 데이터플랫폼의 url 등을 정보가 함께 제공된다. A 아파트 입주민이 동의 또는 거부하면 해당 동의 또는 거부 정보는 데이터플랫폼으로 전송된다(단계 ③). 데이터플랫폼은 A 아파트 관리소장의 단말로부터 전송된 입주민 개인정보 중에서 동의를 받은 A 아파트 입주민 정보만을 개인정보DB에 저장한다(단계 ④). 이와 동시에 개인정보는 암호화 및 개인디지털키를 생성하여 블록체인(40) 네트망에 분산 저장된다(단계 ⑤).The personal information service provider asks the residents of Apartment A whether they can provide the resident information they have within the scope of use and asks for their consent (step ②). Such a consent request can be sent by text message, etc., and information such as the url of the data platform is provided. If the resident of Apartment A agrees or refuses, the consent or rejection information is transmitted to the data platform (step ③). The data platform stores only the resident information of apartment A that has received consent from the personal information of the resident transmitted from the terminal of the apartment manager A in the personal information DB (step ④). At the same time, personal information is encrypted and a personal digital key is generated and stored in a distributed manner in the blockchain 40 network (step ⑤).

개인정보를 활용하고자 하는 활용기업(A아파트 장터 개설 상인 스마트폰)은 API Sync를 형성하여 개인정보DB와 접속한 후 개인정보 활용에 동의한 아파트 입주민의 개인정보를 조회한다(단계 ⑥). 개인정보를 사용한 A 아파트 입주민에게는 개인데이터 조회 내역을 알려줌과 동시에 보상(포인트 또는 pay)을 지급한 후(단계⑦) 해당 조회 기록을 블록체인(40) 네트워크 상에 분산 저장되어 접근 기록을 투명하게 저장한다(단계 ⑧). 이후 단계는 도 13에 제시된 흐름에 따라 진행된다.A company that wants to utilize personal information (smartphones, merchants opening an apartment market A) forms API Sync, connects to the personal information DB, and inquires about the personal information of apartment residents who have agreed to use personal information (step ⑥). After notifying the occupants of apartment A who used personal information and paying compensation (points or pay) at the same time (step ⑦), the inquiry records are distributed and stored on the blockchain 40 network to make the access records transparent Save (step ⑧). Subsequent steps proceed according to the flow presented in FIG. 13 .

도 15는 도 13의 단계 ⓐ에 제시된 정보관리앱을 통하여 개인정보를 입력하는 화면 및 도 13의 단계 ⓔ에서 조회된 화면의 일례이다. 도 15(a)에 도시된 바와 같이 입력항목에 세부내용을 기재하고, 각 입력항목에 대한 공개 여부를 체크하게 된다. 도 15(a)에 제시된 정보는 개인정보DB에 저장되지만 활용기업 단말 등에 의해 조회될 경우에는 도 15(b)에 제시된 바와 같이 공개를 거부한 입력항목은 제거되고 공개를 허여한 입력항목은 데이터 일부를 블랭크 처리한 후 제공한다. 활용기업이 개인정보를 구매하면 공개를 허여한 입력항목을 블랭크 처리없이 제공하게 되는 것이다.15 is an example of a screen for inputting personal information through the information management app presented in step ⓐ of FIG. 13 and the screen viewed in step ⓔ of FIG. 13 . As shown in Fig. 15 (a), details are written in the input items, and whether each input item is disclosed or not is checked. The information presented in Fig. 15(a) is stored in the personal information DB, but when it is inquired by the terminal of the utilizing company, as shown in Fig. 15(b), the input item that refuses to be disclosed is removed, and the input item that is allowed to be disclosed is data A portion is provided after blanking. When a company that uses personal information purchases personal information, it will provide the input items that are allowed to be disclosed without blank processing.

도 13 및 도 14에 제시된 처리 흐름을 이용하여 A 아파트 관리소장이 패밀리 사용자 리스트를 생성하는 흐름에 대해 정리해 보기로 한다. 먼저 각 패밀리 사용자단말이 개인정보를 입력받고(제b1단계), 제b1단계에서 입력된 패밀리 사용자단말의 개인정보를 개인정보데이터베이스로 저장하고(제b2단계), 마스터 사용자단말은 개인정보데이터베이스를 조회하여 복수 개 패밀리 사용자단말의 개인정보를 획득한다(제b3단계). 이러한 b3단계에서 획득된 개인정보는 적어도 일부 항목이 블랭크 처리되어 사용할 수 없는 정보이다. 마스터 사용자단말은 제b3단계에서 획득된 개인정보 중에서 적어도 일부 개인정보에 대해 구매 요청을 하고(제b4단계) 구매 요청된 개인정보를 개인정보데이터베이스로부터 마스터 사용자단말로 전송받는다(제b5단계). 마스터 단말은 제b5단계에서 전송된 개인정보를 이용하여 패밀리 사용자 리스트를 생성할 수 있게 되는 것이다(제b6단계).A flow of creating a list of family users by the manager of apartment A using the processing flow shown in FIGS. 13 and 14 will be summarized. First, each family user terminal receives personal information (step b1), stores the personal information of the family user terminal input in step b1 as a personal information database (step b2), and the master user terminal stores the personal information database Obtain personal information of a plurality of family user terminals by inquiring (step b3). The personal information obtained in step b3 is information that cannot be used because at least some items are blanked. The master user terminal makes a purchase request for at least some of the personal information obtained in step b3 (step b4) and receives the requested personal information from the personal information database to the master user terminal (step b5). The master terminal will be able to create a list of family users by using the personal information transmitted in step b5 (step b6).

상기에서 본 발명의 바람직한 실시예가 특정 용어들을 사용하여 설명 및 도시되었지만 그러한 용어는 오로지 본 발명을 명확히 설명하기 위한 것일 뿐이며, 본 발명의 실시예 및 기술된 용어는 다음의 청구범위의 기술적 사상 및 범위로부터 이탈되지 않고서 여러가지 변경 및 변화가 가해질 수 있는 것은 자명한 일이다. 이와 같이 변형된 실시예들은 본 발명의 사상 및 범위로부터 개별적으로 이해되어져서는 안되며, 본 발명의 청구범위 안에 속한다고 해야 할 것이다.In the above, preferred embodiments of the present invention have been described and illustrated using specific terms, but such terms are only for clearly describing the present invention, and the embodiments and described terms of the present invention are the spirit and scope of the following claims. It is obvious that various changes and changes can be made without departing from it. Such modified embodiments should not be separately understood from the spirit and scope of the present invention, but should be considered to fall within the scope of the claims of the present invention.

10: 사용자 단말
15: 분석서버
20: 알림공지서버
30: 인증서버
40: 블록체인
10: user terminal
15: analysis server
20: notification notification server
30: authentication server
40: Blockchain

Claims (10)

삭제delete 삭제delete 제목, 내용 및 첨부이미지로 구성되는 알림공지문서를 작성한 후 발송하는 마스터 사용자단말과, 상기 알림공지문서를 수신하는 복수 개 패밀리 사용자단말과, 상기 마스터 사용자단말 및 상기 패밀리 사용자단말을 인증하는 인증서버 및 상기 마스터 사용자단말과 상기 패밀리 사용자단말 사이에서 상기 알림공지문서를 전달하는 알림공지서버로 구성되는 알림공지시스템에서, 상기 알림공지서버에서 상기 알림공지문서를 전송하는 방법에 있어서,
상기 마스터 사용자단말로부터 상기 마스터 사용자단말의 고유정보, 패밀리 사용자 리스트 및 상기 알림공지문서를 전송받는 제1단계와,
상기 제1단계에서 전송받은 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 구성하는 첨부이미지를 상기 인증서버로 전송하는 제2단계와,
상기 인증서버로부터 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 인증받은 후 난수를 발생시켜 전달받는 제3단계와,
상기 제3단계에서 전송받은 난수를 상기 마스터 사용자단말에 전송한 후, 상기 마스터 사용자단말로부터 상기 난수, 상기 마스터 사용자단말 고유정보, 상기 첨부이미지(이하, 이를 '(난수, 고유정보, 첨부)'라 함)를 해쉬하여 생성되는 해쉬값을 전달받는 제4단계와,
상기 제4단계에서 전송받은 (난수, 고유정보, 첨부) 해쉬값을 다시 한 번 더 해쉬하여 상기 인증서버로 전송하는 제5단계 및
상기 인증서버로부터 인증 결과를 수령하고, 인증된 경우 상기 마스터 사용자단말에 알림공지문서를 저장하는 제6단계와,
상기 패밀리 사용자단말 리스트에 해당되는 복수 개 상기 패밀리 사용자단말에 상기 알림공지문서의 제목 및 내용을 푸쉬 방식으로 전송하는 제7단계와,
상기 패밀리 사용자단말로부터 첨부이미지를 요청받는 제8단계와,
상기 제8단계의 요청에 따라 상기 첨부이미지에 타임스탬프를 형성하는 제9단계 및
타임스탬프가 형성된 상기 첨부이미지를 상기 패밀리 사용자에게 전달하는 제10단계를 포함하고,
상기 마스터 사용자단말과 상기 알림공지서버 사이의 통신은 암호화된 통신 채널에서 수행되는 것을 특징으로 하는 알림공지서버에서 알림공지문서를 전송하고,
상기 암호화된 통신채널은
마스터 사용자단말로부터 SD(Session ID) 및 PID(Peer ID)를 전송받으면서 통신 채널 개통을 요청받는 제a1단계와,
상기 SD와 상기 PID를 상기 인증서버(30)로 전달하는 제a2단계와,
상기 인증서버로부터 난수값과 시퀀셜하게 부여된 채널번호(이하, '시퀀셜 채널번호'이라 함)를 전송받은 후, 상기 난수값을 상기 마스터 사용자단말로 전송하는 제a3단계;
상기 마스트 사용자단말로부터 상기 마스트 사용자단말의 고유 정보 및 난수값을 이용하여 해쉬화한 제1해쉬결과을 전달받는 제a4단계;
상기 마스터 사용자단말로부터 전달받은 제1해쉬값을 상기 알림공지서버의 고유값으로 한 번 더 해쉬화한 최종해쉬값과 시퀀셜 채널번호를 상기 인증서버로 전송하는 제a5단계;
상기 인증서버로부터 인증 성공시 상기 시퀀셜 채널번호가 부여된 통신채널을 개통받는 제a6단계를 이용하여 개설되는 것을 특징으로 하는 알림공지서버에서 알림공지문서를 전송하는 방법.
A master user terminal that prepares and sends a notification notice document composed of a title, content, and attached image, a plurality of family user terminals that receive the notification notice document, and an authentication server for authenticating the master user terminal and the family user terminal and a notification server configured to transmit the notification document between the master user terminal and the family user terminal, the method for transmitting the notification document from the notification server,
A first step of receiving the unique information of the master user terminal, the family user list, and the notification notice document from the master user terminal;
a second step of transmitting the unique information of the master user terminal received in the first step and an attached image constituting the notification notification document to the authentication server;
A third step of receiving and generating a random number after authenticating the unique information of the master user terminal and the notification notification document from the authentication server;
After transmitting the random number received in the third step to the master user terminal, the random number, the master user terminal unique information, and the attached image (hereinafter referred to as '(random number, unique information, attached)' a fourth step of receiving a hash value generated by hashing the
A fifth step of hashing the (random number, unique information, attached) hash value transmitted in the fourth step once more and transmitting it to the authentication server; and
a sixth step of receiving an authentication result from the authentication server, and storing a notification notice document in the master user terminal when authentication is performed;
A seventh step of transmitting the title and content of the notification notice document to the plurality of family user terminals corresponding to the family user terminal list in a push manner;
An eighth step of receiving a request for an attached image from the family user terminal;
A ninth step of forming a timestamp in the attached image according to the request of the eighth step; and
A tenth step of delivering the attached image with a timestamp formed thereto to the family user,
Transmitting a notification notice document from the notification notification server, characterized in that the communication between the master user terminal and the notification server is performed in an encrypted communication channel,
The encrypted communication channel is
Step a1 of receiving a request to open a communication channel while receiving SD (Session ID) and PID (Peer ID) from the master user terminal;
a second step of transferring the SD and the PID to the authentication server 30;
a3 step of transmitting the random number value to the master user terminal after receiving the random number value and the sequentially assigned channel number (hereinafter referred to as 'sequential channel number') from the authentication server;
a4 step of receiving a hashed first hash result using the unique information and random number value of the mast user terminal from the master user terminal;
a5th step of transmitting a final hash value obtained by hashing the first hash value received from the master user terminal as a unique value of the notification server once more and a sequential channel number to the authentication server;
A method of transmitting a notification notification document from a notification notification server, characterized in that when authentication is successful from the authentication server, the communication channel to which the sequential channel number is assigned is opened using step a6.
제목, 내용 및 첨부이미지로 구성되는 알림공지문서를 작성한 후 발송하는 마스터 사용자단말과, 상기 알림공지문서를 수신하는 복수 개 패밀리 사용자단말과, 상기 마스터 사용자단말 및 상기 패밀리 사용자단말을 인증하는 인증서버 및 상기 마스터 사용자단말과 상기 패밀리 사용자단말 사이에서 상기 알림공지문서를 전달하는 알림공지서버로 구성되는 알림공지시스템에서, 상기 알림공지서버에서 상기 알림공지문서를 전송하는 방법에 있어서,
상기 마스터 사용자단말로부터 상기 마스터 사용자단말의 고유정보, 패밀리 사용자 리스트 및 상기 알림공지문서를 전송받는 제1단계와,
상기 제1단계에서 전송받은 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 구성하는 첨부이미지를 상기 인증서버로 전송하는 제2단계와,
상기 인증서버로부터 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 인증받은 후 난수를 발생시켜 전달받는 제3단계와,
상기 제3단계에서 전송받은 난수를 상기 마스터 사용자단말에 전송한 후, 상기 마스터 사용자단말로부터 상기 난수, 상기 마스터 사용자단말 고유정보, 상기 첨부이미지(이하, 이를 '(난수, 고유정보, 첨부)'라 함)를 해쉬하여 생성되는 해쉬값을 전달받는 제4단계와,
상기 제4단계에서 전송받은 (난수, 고유정보, 첨부) 해쉬값을 다시 한 번 더 해쉬하여 상기 인증서버로 전송하는 제5단계 및
상기 인증서버로부터 인증 결과를 수령하고, 인증된 경우 상기 마스터 사용자단말에 알림공지문서를 저장하는 제6단계를 포함하고,
상기 마스터 사용자단말과 상기 알림공지서버 사이의 통신은 암호화된 통신 채널에서 수행되는 것을 특징으로 하는 알림공지서버에서 알림공지문서를 전송하고,
상기 암호화된 통신채널은
마스터 사용자단말로부터 SD(Session ID) 및 PID(Peer ID)를 전송받으면서 통신 채널 개통을 요청받는 제a1단계와,
상기 SD와 상기 PID를 상기 인증서버(30)로 전달하는 제a2단계와,
상기 인증서버로부터 난수값과 시퀀셜하게 부여된 채널번호(이하, '시퀀셜 채널번호'이라 함)를 전송받은 후, 상기 난수값을 상기 마스터 사용자단말로 전송하는 제a3단계;
상기 마스트 사용자단말로부터 상기 마스트 사용자단말의 고유 정보 및 난수값을 이용하여 해쉬화한 제1해쉬결과을 전달받는 제a4단계;
상기 마스터 사용자단말로부터 전달받은 제1해쉬값을 상기 알림공지서버의 고유값으로 한 번 더 해쉬화한 최종해쉬값과 시퀀셜 채널번호를 상기 인증서버로 전송하는 제a5단계;
상기 인증서버로부터 인증 성공시 상기 시퀀셜 채널번호가 부여된 통신채널을 개통받는 제a6단계를 이용하여 개설되는 것을 특징으로 하는 알림공지서버에서 알림공지문서를 전송하는 방법.
A master user terminal that prepares and sends a notification notice document composed of a title, content, and attached image, a plurality of family user terminals that receive the notification notice document, and an authentication server for authenticating the master user terminal and the family user terminal and a notification server configured to transmit the notification document between the master user terminal and the family user terminal, the method for transmitting the notification document from the notification server,
A first step of receiving the unique information of the master user terminal, the family user list, and the notification notice document from the master user terminal;
a second step of transmitting the unique information of the master user terminal received in the first step and an attached image constituting the notification notification document to the authentication server;
A third step of receiving and generating a random number after authenticating the unique information of the master user terminal and the notification notification document from the authentication server;
After transmitting the random number received in the third step to the master user terminal, the random number, the master user terminal unique information, and the attached image (hereinafter referred to as '(random number, unique information, attached)' a fourth step of receiving a hash value generated by hashing the
A fifth step of hashing the (random number, unique information, attached) hash value transmitted in the fourth step once more and transmitting it to the authentication server; and
A sixth step of receiving an authentication result from the authentication server, and storing a notification notice document in the master user terminal if authentication is performed;
Transmitting a notification notice document from the notification notification server, characterized in that the communication between the master user terminal and the notification server is performed in an encrypted communication channel,
The encrypted communication channel is
Step a1 of receiving a request to open a communication channel while receiving SD (Session ID) and PID (Peer ID) from the master user terminal;
a second step of transferring the SD and the PID to the authentication server 30;
a3 step of transmitting the random number value to the master user terminal after receiving the random number value and the sequentially assigned channel number (hereinafter referred to as 'sequential channel number') from the authentication server;
a4 step of receiving a hashed first hash result using the unique information and random number value of the mast user terminal from the master user terminal;
a5th step of transmitting a final hash value obtained by hashing the first hash value received from the master user terminal as a unique value of the notification server once more and a sequential channel number to the authentication server;
A method of transmitting a notification notification document from a notification notification server, characterized in that when authentication is successful from the authentication server, the communication channel to which the sequential channel number is assigned is opened using step a6.
제3항 또는 제4항에 있어서,
상기 제1단계 이전에 수행되는 단계로서,
상기 각 패밀리 사용자단말이 개인정보를 입력하는 제b1단계와,
상기 제b1단계에서 입력된 패밀리 사용자단말의 개인정보를 개인정보데이터베이스로 저장하는 제b2단계와,
상기 마스터 사용자단말은 상기 개인정보데이터베이스를 조회하여 복수 개 패밀리 사용자단말의 개인정보를 획득하는 제b3단계와,
- 상기 제b3단계에서 획득된 개인정보는 적어도 일부 항목이 블랭크 처리되어 사용할 수 없음-
상기 마스터 사용자단말은 상기 제b3단계에서 획득된 적어도 일부 개인정보를 구매 요청하는 제b4단계와,
상기 제b4단계의 구매 요청된 개인정보를 상기 개인정보데이터베이스로부터 상기 마스터 사용자단말에 전송하는 제b5단계 및
- 상기 제b3단계에서 획득된 개인정보는 블랭크 처리되어 있지 않음-
상기 제b5단계에서 전송된 개인정보를 이용하여 상기 패밀리 사용자 리스트를 생성하는 제b6단계를 포함하는 것을 특징으로 하는 알림공지서버에서 알림공지문서를 전송하는 방법.
5. The method of claim 3 or 4,
As a step performed before the first step,
A step b1 of inputting personal information by each of the family user terminals;
Step b2 of storing the personal information of the family user terminal input in step b1 as a personal information database;
A step b3 of the master user terminal acquiring personal information of a plurality of family user terminals by inquiring the personal information database;
- At least some items of the personal information obtained in step b3 are blank and cannot be used-
a step b4 of the master user terminal requesting to purchase at least some of the personal information obtained in step b3;
Step b5 of transmitting the personal information requested for purchase of step b4 from the personal information database to the master user terminal;
- The personal information obtained in step b3 is not blank-
A method of transmitting a notification notice document from a notification notification server, comprising the step b6 of generating the list of family users by using the personal information transmitted in step b5.
삭제delete 삭제delete 삭제delete 제목, 내용 및 첨부이미지로 구성되는 알림공지문서를 작성한 후 발송하는 마스터 사용자단말과, 상기 알림공지문서를 수신하는 복수 개 패밀리 사용자단말과, 상기 마스터 사용자단말 및 상기 패밀리 사용자단말을 인증하는 인증서버 및 상기 마스터 사용자단말과 상기 패밀리 사용자단말 사이에서 상기 알림공지문서를 전달하는 알림공지서버로 구성되는 알림공지시스템에서, 상기 알림공지서버는
상기 마스터 사용자단말로부터 상기 마스터 사용자단말의 고유정보, 패밀리 사용자 리스트 및 상기 알림공지문서를 전송받고, 전송받은 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 구성하는 첨부이미지를 상기 인증서버로 전송하고, 상기 인증서버로부터 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 인증받은 후 난수를 발생시켜 전달받고, 전송받은 상기 난수를 상기 마스터 사용자단말에 전송한 후, 상기 마스터 사용자단말로부터 상기 난수, 상기 마스터 사용자단말 고유정보, 상기 첨부이미지(이하, 이를 '(난수, 고유정보, 첨부)'라 함)를 해쉬하여 생성되는 해쉬값을 전달받고, 전송받은 (난수, 고유정보, 첨부) 해쉬값을 다시 한 번 더 해쉬하여 상기 인증서버로 전송하고, 상기 인증서버로부터 인증 결과를 수령하고, 인증된 경우 상기 마스터 사용자단말에 알림공지문서를 저장하는 것을 특징으로 하고,
상기 마스터 사용자단말과 상기 알림공지서버 사이의 통신은 암호화된 통신 채널에서 수행되는 것을 특징으로 하며,
상기 암호화된 통신채널은
마스터 사용자단말로부터 SD(Session ID) 및 PID(Peer ID)를 전송받으면서 통신 채널 개통을 요청받고, 상기 SD와 상기 PID를 상기 인증서버(30)로 전달하고, 상기 인증서버로부터 난수값과 시퀀셜하게 부여된 채널번호(이하, '시퀀셜 채널번호'이라 함)를 전송받은 후, 상기 난수값을 상기 마스터 사용자단말로 전송하고, 상기 마스트 사용자단말로부터 상기 마스트 사용자단말의 고유 정보 및 난수값을 이용하여 해쉬화한 제1해쉬결과을 전달받고, 상기 마스터 사용자단말로부터 전달받은 제1해쉬값을 상기 알림공지서버의 고유값으로 한 번 더 해쉬화한 최종해쉬값과 시퀀셜 채널번호를 상기 인증서버로 전송하고, 상기 인증서버로부터 인증 성공시 상기 시퀀셜 채널번호가 부여된 통신채널을 개통받아 개설되는 것을 특징으로 하는 알림공지서버.
A master user terminal that prepares and sends a notification notice document composed of a title, content, and attached image, a plurality of family user terminals that receive the notification notice document, and an authentication server for authenticating the master user terminal and the family user terminal and a notification server configured to transmit the notification document between the master user terminal and the family user terminal, wherein the notification server comprises:
The master user terminal receives the unique information of the master user terminal, the family user list, and the notification document, and transmits the received unique information of the master user terminal and the attached image constituting the notification document to the authentication server. and, after authenticating the unique information of the master user terminal and the notification notification document from the authentication server, generating and receiving a random number, and transmitting the received random number to the master user terminal, the random number from the master user terminal , a hash value generated by hashing the master user terminal unique information and the attached image (hereinafter referred to as '(random number, unique information, attachment)'), and the received (random number, unique information, attachment) hash Hashing the value once more and transmitting it to the authentication server, receiving an authentication result from the authentication server, and storing a notification notice document in the master user terminal when authentication is performed,
Communication between the master user terminal and the notification server is characterized in that it is performed in an encrypted communication channel,
The encrypted communication channel is
While receiving SD (Session ID) and PID (Peer ID) from the master user terminal, a communication channel opening request is received, the SD and the PID are transmitted to the authentication server 30, and a random number value is sequentially received from the authentication server After receiving the assigned channel number (hereinafter referred to as 'sequential channel number'), the random number value is transmitted to the master user terminal, and the master user terminal uses unique information and random number values of the master user terminal from the master user terminal. Receive the hashed first hash result, and transmit the final hash value and the sequential channel number hashed once more by hashing the first hash value delivered from the master user terminal to the unique value of the notification server to the authentication server, , Notification notification server, characterized in that when authentication is successful from the authentication server, the communication channel to which the sequential channel number is assigned is opened and established.
제목, 내용 및 첨부이미지로 구성되는 알림공지문서를 작성한 후 발송하는 마스터 사용자단말과, 상기 알림공지문서를 수신하는 복수 개 패밀리 사용자단말과, 상기 마스터 사용자단말 및 상기 패밀리 사용자단말을 인증하는 인증서버 및 상기 마스터 사용자단말과 상기 패밀리 사용자단말 사이에서 상기 알림공지문서를 전달하는 알림공지서버로 구성되는 알림공지시스템에서, 상기 알림공지서버는
상기 마스터 사용자단말로부터 상기 마스터 사용자단말의 고유정보, 패밀리 사용자 리스트 및 상기 알림공지문서를 전송받고, 전송받은 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 구성하는 첨부이미지를 상기 인증서버로 전송하고, 상기 인증서버로부터 상기 마스터 사용자단말의 고유정보 및 상기 알림공지문서를 인증받은 후 난수를 발생시켜 전달받고, 전송받은 상기 난수를 상기 마스터 사용자단말에 전송한 후, 상기 마스터 사용자단말로부터 상기 난수, 상기 마스터 사용자단말 고유정보, 상기 첨부이미지(이하, 이를 '(난수, 고유정보, 첨부)'라 함)를 해쉬하여 생성되는 해쉬값을 전달받고, 전송받은 (난수, 고유정보, 첨부) 해쉬값을 다시 한 번 더 해쉬하여 상기 인증서버로 전송하고, 상기 인증서버로부터 인증 결과를 수령하고, 인증된 경우 상기 마스터 사용자단말에 알림공지문서를 저장하는 것을 특징으로 하고,
상기 알림공지서버는
상기 패밀리 사용자단말 리스트에 해당되는 복수 개 상기 패밀리 사용자단말에 상기 알림공지문서의 제목 및 내용을 푸쉬 방식으로 전송하고, 상기 패밀리 사용자단말로부터 첨부이미지를 요청받고, 상기 요청에 따라 상기 첨부이미지에 타임스탬프를 형성하고, 상기 타임스탬프가 형성된 상기 첨부이미지를 상기 패밀리 사용자에게 전달하는 것을 특징으로 하고,
상기 암호화된 통신채널은
마스터 사용자단말로부터 SD(Session ID) 및 PID(Peer ID)를 전송받으면서 통신 채널 개통을 요청받고, 상기 SD와 상기 PID를 상기 인증서버(30)로 전달하고, 상기 인증서버로부터 난수값과 시퀀셜하게 부여된 채널번호(이하, '시퀀셜 채널번호'이라 함)를 전송받은 후, 상기 난수값을 상기 마스터 사용자단말로 전송하고, 상기 마스트 사용자단말로부터 상기 마스트 사용자단말의 고유 정보 및 난수값을 이용하여 해쉬화한 제1해쉬결과을 전달받고, 상기 마스터 사용자단말로부터 전달받은 제1해쉬값을 상기 알림공지서버의 고유값으로 한 번 더 해쉬화한 최종해쉬값과 시퀀셜 채널번호를 상기 인증서버로 전송하고, 상기 인증서버로부터 인증 성공시 상기 시퀀셜 채널번호가 부여된 통신채널을 개통받아 개설되는 것을 특징으로 하는 알림공지서버.
A master user terminal that prepares and sends a notification notice document composed of a title, content, and attached image, a plurality of family user terminals that receive the notification notice document, and an authentication server for authenticating the master user terminal and the family user terminal and a notification server configured to transmit the notification document between the master user terminal and the family user terminal, wherein the notification server comprises:
The master user terminal receives the unique information of the master user terminal, the family user list, and the notification document, and transmits the received unique information of the master user terminal and the attached image constituting the notification document to the authentication server. and, after authenticating the unique information of the master user terminal and the notification notification document from the authentication server, generating and receiving a random number, and transmitting the received random number to the master user terminal, the random number from the master user terminal , a hash value generated by hashing the master user terminal unique information and the attached image (hereinafter referred to as '(random number, unique information, attachment)'), and the received (random number, unique information, attachment) hash Hashing the value once more and transmitting it to the authentication server, receiving an authentication result from the authentication server, and storing a notification notice document in the master user terminal when authentication is performed,
The notification server
Transmitting the title and content of the notification notice document to a plurality of the family user terminals corresponding to the family user terminal list in a push manner, receiving a request for an attached image from the family user terminal, and adding time to the attached image according to the request Forming a stamp and delivering the attached image with the timestamp formed to the family user,
The encrypted communication channel is
While receiving SD (Session ID) and PID (Peer ID) from the master user terminal, a communication channel opening request is received, the SD and the PID are transmitted to the authentication server 30, and a random number value is sequentially received from the authentication server After receiving the assigned channel number (hereinafter referred to as 'sequential channel number'), the random number value is transmitted to the master user terminal, and the master user terminal uses unique information and random number values of the master user terminal from the master user terminal. Receive the hashed first hash result, and transmit the final hash value and the sequential channel number hashed once more by hashing the first hash value delivered from the master user terminal to the unique value of the notification server to the authentication server, , Notification notification server, characterized in that when authentication is successful from the authentication server, the communication channel to which the sequential channel number is assigned is opened and established.
KR1020200058248A 2020-05-15 2020-05-15 Notification server using blockchain-based mobile hacking prevention process and notification method using the same KR102368805B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200058248A KR102368805B1 (en) 2020-05-15 2020-05-15 Notification server using blockchain-based mobile hacking prevention process and notification method using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200058248A KR102368805B1 (en) 2020-05-15 2020-05-15 Notification server using blockchain-based mobile hacking prevention process and notification method using the same

Publications (2)

Publication Number Publication Date
KR20210140804A KR20210140804A (en) 2021-11-23
KR102368805B1 true KR102368805B1 (en) 2022-03-02

Family

ID=78695132

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200058248A KR102368805B1 (en) 2020-05-15 2020-05-15 Notification server using blockchain-based mobile hacking prevention process and notification method using the same

Country Status (1)

Country Link
KR (1) KR102368805B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101862860B1 (en) * 2017-01-11 2018-05-31 주식회사 코인플러그 Method for providing payment gateway service in use of merkle tree structure on the basis of unspent transaction output protocol and servers using the same

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102265788B1 (en) * 2018-09-03 2021-06-16 (주)아이씨엔캐스트 Multi-security authentication system and method between blockchain-based mobile terminals and IoT devices
WO2020122292A1 (en) 2018-12-14 2020-06-18 부경대학교 산학협력단 Blockchain-based anonymous message transmitter reputation system and reputation appraisal method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101862860B1 (en) * 2017-01-11 2018-05-31 주식회사 코인플러그 Method for providing payment gateway service in use of merkle tree structure on the basis of unspent transaction output protocol and servers using the same

Also Published As

Publication number Publication date
KR20210140804A (en) 2021-11-23

Similar Documents

Publication Publication Date Title
US11528138B2 (en) Methods and systems for a digital trust architecture
US7676433B1 (en) Secure, confidential authentication with private data
US7549049B2 (en) Dynamic auditing of electronic elections
KR102177848B1 (en) Method and system for verifying an access request
US8976008B2 (en) Cross-domain collaborative systems and methods
CN114631286B (en) Encrypted asset hosting system with custom logic
KR102265788B1 (en) Multi-security authentication system and method between blockchain-based mobile terminals and IoT devices
US20070150299A1 (en) Method, system, and apparatus for the management of the electronic files
US20090271321A1 (en) Method and system for verification of personal information
US20090133107A1 (en) Method and device of enabling a user of an internet application access to protected information
US20100017619A1 (en) Systems and methods for secure and authentic electronic collaboration
US20010034836A1 (en) System for secure certification of network
US20060041514A1 (en) Secure internet transactions on unsecured computers
EP3579595B1 (en) Improved system and method for internet access age-verification
JP2000196583A (en) Broadcast communication system
US20170104748A1 (en) System and method for managing network access with a certificate having soft expiration
US10867326B2 (en) Reputation system and method
CN108352983A (en) Information communication system, information communication program and information communicating method
JPH05298174A (en) Remote file access system
KR102368805B1 (en) Notification server using blockchain-based mobile hacking prevention process and notification method using the same
CN116980163A (en) Data processing method, device, equipment and medium based on trusted execution environment
US20140245412A1 (en) Linking credentials in a trust mechanism
JP4523359B2 (en) Access control system, access control method, and access control program
TWI737139B (en) Personal data protection application system and personal data protection application method
WO2022070406A1 (en) Control method, information processing device, information processing system, and control program

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant