KR102621146B1 - 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버 - Google Patents

사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버 Download PDF

Info

Publication number
KR102621146B1
KR102621146B1 KR1020210115648A KR20210115648A KR102621146B1 KR 102621146 B1 KR102621146 B1 KR 102621146B1 KR 1020210115648 A KR1020210115648 A KR 1020210115648A KR 20210115648 A KR20210115648 A KR 20210115648A KR 102621146 B1 KR102621146 B1 KR 102621146B1
Authority
KR
South Korea
Prior art keywords
data
authentication
private cloud
cloud server
electronic terminal
Prior art date
Application number
KR1020210115648A
Other languages
English (en)
Other versions
KR20230032615A (ko
Inventor
이해인
Original Assignee
주식회사 에즈웰
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 에즈웰 filed Critical 주식회사 에즈웰
Priority to KR1020210115648A priority Critical patent/KR102621146B1/ko
Publication of KR20230032615A publication Critical patent/KR20230032615A/ko
Application granted granted Critical
Publication of KR102621146B1 publication Critical patent/KR102621146B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Abstract

사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버가 개시된다. 본 발명은 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 회원의 전자 단말로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 활성화 명령이 수신되면, 사전 설치되어 있는 전용 가상 머신(Virtual Machine)을 활용하여, 상기 회원에게 클라우드 기반의 컴퓨팅 작업 환경을 제공하고, 상기 전자 단말로부터 상기 컴퓨팅 작업 환경을 통해, 사설 클라우드 서버에 대한 액세스 요청 신호가 수신되면, 상기 회원에 대한 사용자 인증을 수행한 후 상기 사설 클라우드 서버에 저장되어 있는 데이터들을, 상기 사설 클라우드 서버로부터 수신하여 데이터 저장소에 저장한 후, 상기 전자 단말로, 상기 데이터 저장소에 저장되어 있는 데이터들에 대한 액세스가 가능함을 지시하는 안내 메시지를 전송하는 서비스 운영 서버에 대한 것이다.

Description

사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버 {SERVICE MANAGING SERVER FOR MANAGING VIRTUAL COMPUTING WORKING ENVIRONMENT PROVIDING SERVICE BASED ON CLOUD, WHICH ENABLES ACCESS TO THE DATA STORED IN A PRIVATE CLOUD SERVER}
본 발명은 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버에 대한 것이다.
최근, 초고속 인터넷 환경이 보급됨에 따라, 다양한 분야에서 클라우드 서비스의 활용이 증가하고 있다. 이러한 클라우드 서비스는, 데이터를 각 전자 단말이 아닌 별도의 클라우드 서버에 저장해 둠으로써, 사용자가 필요할 때에 데이터에 액세스하여 활용할 수 있도록 지원하는 서비스를 의미한다.
이러한 클라우드 서비스는 사용자에게 컴퓨팅 작업 환경을 제공하기 위해 활용될 수도 있는데, 이러한 클라우드 서비스를 통해, 사용자는 전자 단말에 별도의 운영체제를 설치하지 않더라도, 원격의 클라우드 서버에 접속하기만 하면, 클라우드 서버에서 실행되는 운영체제의 구동에 따른 컴퓨팅 작업 환경을 전자 단말이 스트리밍 방식으로 수신함으로써, 컴퓨팅 작업을 수행하기 위한 컴퓨팅 작업 환경을 제공받을 수 있다.
또한, 최근에는, 컴퓨팅 환경을 소프트웨어로 구현하는 가상 머신(Virtual Machine)과 관련된 기술에 대한 연구가 활발히 진행되고 있다. 이러한 가상 머신을 활용하면, 하나의 컴퓨터에서 사용자별로 서로 다른 가상 머신을 구동시켜 각 사용자에 맞춤형으로 구성된 컴퓨팅 작업 환경을 제공할 수 있기 때문에, 여러 사용자들이 동일한 컴퓨터를 사용하더라도 사용자들 간의 컴퓨팅 작업 환경을 분리할 수 있게 된다.
따라서, 클라우드 기반의 컴퓨팅 작업 환경을 제공하는 서비스를 다수의 사용자가 이용할 수 있도록 하기 위해, 클라우드 서비스에 있어서, 이러한 가상 머신 기술의 도입을 고려할 수 있다.
또한, 전 세계적으로 COVID-19의 유행이 장기간 지속됨에 따라, 재택 근무에 대한 수요가 증가하면서, 사용자가 인트라넷 등과 같은 사설 네트워크에 접속할 수 없는 환경에서도, 사설 클라우드 서버에 저장되어 있는 데이터에 액세스하여 원격지에서 업무를 수행할 수 있도록 지원해야 할 필요성이 증가하고 있다.
이와 관련해서, 외부에서 사설 클라우드 서버에 액세스할 수 있도록 지원하는 경우, 데이터 유출 등의 보안 상의 문제를 해결하기 위한 사용자 인증 기술이 도입될 필요가 있다.
따라서, 사용자에 대한 인증을 수행하여 인증된 사용자만이 사설 클라우드 서버에 저장된 데이터에 액세스할 수 있도록 지원하는 기술에 대한 연구가 필요하다.
본 발명은 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 회원의 전자 단말로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 활성화 명령이 수신되면, 사전 설치되어 있는 전용 가상 머신(Virtual Machine)을 활용하여, 상기 회원에게 클라우드 기반의 컴퓨팅 작업 환경을 제공하고, 상기 전자 단말로부터 상기 컴퓨팅 작업 환경을 통해, 사설 클라우드 서버에 대한 액세스 요청 신호가 수신되면, 상기 회원에 대한 사용자 인증을 수행한 후 상기 사설 클라우드 서버에 저장되어 있는 데이터들을, 상기 사설 클라우드 서버로부터 수신하여 데이터 저장소에 저장한 후, 상기 전자 단말로, 상기 데이터 저장소에 저장되어 있는 데이터들에 대한 액세스가 가능함을 지시하는 안내 메시지를 전송하는 서비스 운영 서버를 제시함으로써, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 회원들이 사설 클라우드 서버에 저장된 데이터에 액세스할 수 있도록 지원하고자 한다.
본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버는 상기 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 복수의 회원들 중 어느 한 명인 제1 회원의 전자 단말로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 활성화 명령이 수신되면, 상기 서비스 운영 서버에 사전 설치되어 있는 전용 가상 머신(Virtual Machine)을 실행한 후, 상기 전용 가상 머신에 사전 설치되어 있는 운영 체제(Operating System)를 구동하고, 상기 운영 체제의 구동에 따른 컴퓨팅 작업 환경을 구성하여, 상기 컴퓨팅 작업 환경에 대한 영상을 실시간 스트리밍 방식으로, 상기 전자 단말로 전송하는 영상 전송부, 상기 전자 단말로부터, 상기 컴퓨팅 작업 환경을 통해, 사설 네트워크(Private Network)를 통해 접속 가능한 것으로 지정된 사설 클라우드 서버 - 상기 사설 클라우드 서버는, 상기 서비스 운영 서버와 서로 접속 가능하도록 구성되어 있음 - 에 저장되어 있는 데이터들에 대한 액세스 요청 신호가 수신되면, 상기 제1 회원이 상기 사설 클라우드 서버에 액세스 가능하도록 지정된 사용자가 맞는지 여부에 대한 사용자 인증을 수행하는 인증 수행부, 상기 제1 회원에 대한 사용자 인증이 완료되면, 상기 사설 클라우드 서버로, 상기 사설 클라우드 서버에 저장되어 있는 데이터들의 전송을 요청하는 데이터 전송 요청부 및 상기 사설 클라우드 서버로부터, 상기 사설 클라우드 서버에 저장되어 있는 데이터들이 수신되면, 상기 사설 클라우드 서버로부터 수신된 데이터들을, 상기 서비스 운영 서버의 내부에 구비되어 있는 데이터 저장소에 저장한 후, 상기 전자 단말로, 상기 데이터 저장소에 저장되어 있는 데이터들에 대한 액세스가 가능함을 지시하는 안내 메시지를 전송하는 안내 메시지 전송부를 포함한다.
본 발명은 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 회원의 전자 단말로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 활성화 명령이 수신되면, 사전 설치되어 있는 전용 가상 머신(Virtual Machine)을 활용하여, 상기 회원에게 클라우드 기반의 컴퓨팅 작업 환경을 제공하고, 상기 전자 단말로부터 상기 컴퓨팅 작업 환경을 통해, 사설 클라우드 서버에 대한 액세스 요청 신호가 수신되면, 상기 회원에 대한 사용자 인증을 수행한 후 상기 사설 클라우드 서버에 저장되어 있는 데이터들을, 상기 사설 클라우드 서버로부터 수신하여 데이터 저장소에 저장한 후, 상기 전자 단말로, 상기 데이터 저장소에 저장되어 있는 데이터들에 대한 액세스가 가능함을 지시하는 안내 메시지를 전송하는 서비스 운영 서버를 제시함으로써, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 회원들이 사설 클라우드 서버에 저장된 데이터에 액세스할 수 있도록 지원할 수 있다.
도 1은 본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버의 동작 방법을 도시한 순서도이다.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.
도 1은 본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버의 구조를 도시한 도면이다.
도 1을 참조하면, 본 발명에 따른 서비스 운영 서버(110)는 영상 전송부(111), 인증 수행부(112), 데이터 전송 요청부(113) 및 안내 메시지 전송부(114)를 포함한다.
영상 전송부(111)는 상기 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 복수의 회원들 중 어느 한 명인 제1 회원(130)의 전자 단말(140)로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 활성화 명령이 수신되면, 서비스 운영 서버(110)에 사전 설치되어 있는 전용 가상 머신(Virtual Machine)을 실행한 후, 상기 전용 가상 머신에 사전 설치되어 있는 운영 체제(Operating System)를 구동하고, 상기 운영 체제의 구동에 따른 컴퓨팅 작업 환경을 구성하여, 상기 컴퓨팅 작업 환경에 대한 영상을 실시간 스트리밍 방식으로, 전자 단말(140)로 전송한다.
예컨대, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 복수의 회원들 중 어느 한 명인 제1 회원(130)을 '회원 1(130)'이라고 하고, 서비스 운영 서버(110)에 '회원 1(130)'의 전자 단말(140)로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 활성화 명령이 수신되었다고 가정하자.
그러면, 영상 전송부(111)는 서비스 운영 서버(110)에 사전 설치되어 있는 전용 가상 머신을 실행한 후, 상기 전용 가상 머신에 사전 설치되어 있는 운영 체제를 구동하고, 상기 운영 체제의 구동에 따른 컴퓨팅 작업 환경을 구성하여, 상기 컴퓨팅 작업 환경에 대한 영상을 실시간 스트리밍 방식으로, 전자 단말(140)로 전송할 수 있다.
인증 수행부(112)는 전자 단말(140)로부터, 상기 컴퓨팅 작업 환경을 통해, 사설 네트워크(Private Network)를 통해 접속 가능한 것으로 지정된 사설 클라우드 서버(150)에 저장되어 있는 데이터들에 대한 액세스 요청 신호가 수신되면, 제1 회원(130)이 사설 클라우드 서버(150)에 액세스 가능하도록 지정된 사용자가 맞는지 여부에 대한 사용자 인증을 수행한다.
여기서, 사설 클라우드 서버(150)는 서비스 운영 서버(110)와 서로 접속 가능하도록 구성되어 있다.
이때, 본 발명에 일실시예에 따르면, 인증 수행부(112)는 제1 회원(130)에 대한 사용자 인증을 수행하기 위한 구체적인 구성으로, 매핑 행렬 저장부(115), 인증 이벤트 발생부(116), 랜덤 생성부(117), 암호화 행렬 생성부(118), 피드백 명령 전송부(119) 및 인증 완료 처리부(120)를 포함할 수 있다.
매핑 행렬 저장부(115)에는 전자 단말(140)과 사전 공유하고 있는 n x n(n은 2 이상의 자연수임) 크기의 매핑(mapping) 행렬이 저장되어 있다.
여기서, 상기 매핑 행렬은, '1'과 '0'의 성분으로 구성된 행렬로, 상기 매핑 행렬을 구성하는 n2개의 성분들 중 t(t는 2 이상 n2 미만의 자연수임)개의 성분들은 '1'로 지정되어 있고, 나머지 n2-t개의 성분들은 '0'으로 지정되어 있다.
예컨대, n을 '3', t를 '4'라고 하는 경우, 매핑 행렬 저장부(115)에는, 전자 단말(140)과 사전 공유하고 있는 '3 x 3' 크기의 매핑 행렬로, ''과 같은 행렬이 저장되어 있을 수 있다.
인증 이벤트 발생부(116)는 전자 단말(140)로부터, 사설 클라우드 서버(150)에 저장되어 있는 데이터들에 대한 액세스 요청 신호가 수신되면, 제1 회원(130)이 사설 클라우드 서버(150)에 액세스 가능하도록 지정된 사용자가 맞는지 여부에 대한 사용자 인증을 수행하기 위한 인증 이벤트를 발생시킨다.
랜덤 생성부(117)는 인증 이벤트 발생부(116)에 의해 상기 인증 이벤트가 발생되면, t개의 인증 코드들과 n2-t개의 더미(dummy) 코드들을 랜덤하게 생성한다.
암호화 행렬 생성부(118)는 랜덤 생성부(117)에 의해 상기 t개의 인증 코드들과 상기 n2-t개의 더미 코드들이 생성되면, 상기 매핑 행렬에서, 상기 매핑 행렬을 구성하는 n2개의 성분들 중 '1'이 지정되어 있는 t개의 성분들을, 상기 t개의 인증 코드들로 하나씩 치환하고, '0'이 지정되어 있는 n2-t개의 성분들을, 상기 n2-t개의 더미 코드들로 하나씩 치환함으로써, n x n 크기의 암호화 행렬을 생성한다.
피드백 명령 전송부(119)는 암호화 행렬 생성부(118)에 의해 상기 암호화 행렬이 생성되면, 전자 단말(140)로, 상기 암호화 행렬을 전송하면서, 상기 암호화 행렬을 구성하는 n2개의 성분들 중 상기 t개의 인증 코드들을 추출하여 서비스 운영 서버(110)로 피드백할 것을 지시하는 피드백 명령을 전송한다.
이하에서는, 인증 이벤트 발생부(116), 랜덤 생성부(117), 암호화 행렬 생성부(118) 및 피드백 명령 전송부(119)의 동작을 예를 들어, 상세히 설명하기로 한다.
먼저, 전술한 예와 같이, 영상 전송부(111)에 의해, 상기 컴퓨팅 작업 환경에 대한 영상이 실시간 스트리밍 방식으로, 전자 단말(140)로 전송되었다고 하고, 그 이후, 전자 단말(140)로부터, 사설 클라우드 서버(150)에 저장되어 있는 데이터들에 대한 액세스 요청 신호가 수신되었다고 가정하자.
이때, 인증 이벤트 발생부(116)는 '회원 1(130)'이 사설 클라우드 서버(150)에 액세스 가능하도록 지정된 사용자가 맞는지 여부에 대한 사용자 인증을 수행하기 위한 인증 이벤트를 발생시킬 수 있다.
그러면, 랜덤 생성부(117)는 'P1, P2, P3, P4'와 같은 '4'개의 인증 코드들과, 'D1, D2, D3, D4, D5'와 같은 '5'개의 더미 코드들을 랜덤하게 생성할 수 있다.
그러고 나서, 암호화 행렬 생성부(118)는 상기 매핑 행렬인 행렬인 ''에서, 상기 매핑 행렬을 구성하는 '9'개의 성분들 중 '1'이 지정되어 있는 '4'개의 성분들을, '4'개의 인증 코드들로 하나씩 치환하고, '0'이 지정되어 있는 '5'개의 성분들을, '5'개의 더미 코드들로 하나씩 치환함으로써, '3 x 3' 크기의 암호화 행렬을 생성할 수 있다.
이때, 암호화 행렬 생성부(118)는 상기 매핑 행렬을 구성하는 '9'개의 성분들 중 '1'이 지정되어 있는 '4'개의 성분들을, '4'개의 인증 코드들로 하나씩 치환하고, '0'이 지정되어 있는 '5'개의 성분들을, '5'개의 더미 코드들로 하나씩 치환할 때, 좌측열에서 우측열의 방향으로, 상단행에서 하단행의 방향으로 순차적으로 하나씩 치환할 수 있다. 즉, 암호화 행렬 생성부(118)는 상기 매핑 행렬에서 '1행 1열, 1행 2열, 1행 3열, 2행 1열, 2행 2열, 2행 3열, 3행 1열, 3행 2열, 3행 3열'의 순서로 각 성분들 중 '1'이 지정되어 있는 성분을 '4'개의 인증 코드들로 하나씩 치환할 수 있고, '0'이 지정되어 있는 성분을 '5'개의 더미 코드들로 하나씩 치환할 수 있다.
관련해서, 상기 매핑 행렬인 ''의 '1행 1열'의 성분은 '1'이므로, 암호화 행렬 생성부(118)는 상기 매핑 행렬의 '1행 1열'의 성분을, '4'개의 인증 코드들 중 하나인 'P1'로 치환할 수 있다. 또한, 상기 매핑 행렬의 '1행 2열'의 성분은 '0'이므로, 암호화 행렬 생성부(118)는 상기 매핑 행렬의 '1행 2열'의 성분을, '5'개의 더미 코드들 중 하나인 'D1'로 치환할 수 있다.
이러한 방식으로, 암호화 행렬 생성부(118)는 상기 매핑 행렬인 ''에서, 상기 매핑 행렬을 구성하는 '9'개의 성분들 중 '1'이 지정되어 있는 '4'개의 성분들을, 'P1, P2, P3, P4'로 하나씩 치환하고, '0'이 지정되어 있는 '5'개의 성분들을, 'D1, D2, D3, D4, D5'로 하나씩 치환함으로써, '3 x 3' 크기의 암호화 행렬을 ''와 같이 생성할 수 있다.
그러면, 피드백 명령 전송부(119)는 전자 단말(140)로, 상기 암호화 행렬인 ''를 전송하면서, 상기 암호화 행렬을 구성하는 '9'개의 성분들 중 상기 '4'개의 인증 코드들을 추출하여 서비스 운영 서버(110)로 피드백할 것을 지시하는 피드백 명령을 전송할 수 있다,
이때, 본 발명의 일실시예에 따르면, 전자 단말(140)은 메모리 상에 상기 매핑 행렬을 사전 저장하고 있고, 서비스 운영 서버(110)로부터, 상기 암호화 행렬과 상기 피드백 명령이 수신되면, 상기 암호화 행렬과 상기 매핑 행렬 간의 아다마르 곱(Hadamard product)을 연산하여 n x n 크기의 연산 행렬을 생성한 후, 상기 연산 행렬을 구성하는 n2개의 성분들 중 '0'이 아닌 t개의 성분들을, 상기 t개의 인증용 성분들로 추출하여 서비스 운영 서버(110)로 피드백할 수 있다.
여기서, 아다마르 곱이란, 같은 크기의 행렬에서 각 성분을 곱하는 연산을 의미한다. 예컨대, '[a b c]'와 '[x y z]'라는 행렬이 있을 때, 두 행렬 간의 아다마르 곱을 연산하면, '[ax by cz]'라는 행렬이 산출될 수 있다.
예컨대, 전술한 예와 같이, n를 '3', t를 '4'라고 하고, 상기 매핑 행렬을 ''이라고 하는 경우, 전자 단말(141)의 메모리 상에는 상기 매핑 행렬인 ''이 사전 저장되어 있을 수 있다.
또한, 전술한 예와 같이, 피드백 명령 전송부(119)에 의해, 전자 단말(140)로, 상기 암호화 행렬인 ''가 전송되면서, 상기 암호화 행렬을 구성하는 '9'개의 성분들 중 상기 '4'개의 인증 코드들을 추출하여 서비스 운영 서버(110)로 피드백할 것을 지시하는 피드백 명령이 전송됨에 따라, 전자 단말(140)에, 상기 암호화 행렬과 상기 피드백 명령이 수신되었다고 하는 경우, 전자 단말(140)은 상기 암호화 행렬인 ''와 상기 매핑 행렬인 '' 간의 아다마르 곱을 연산하여, '3 x 3' 크기의 연산 행렬을 ''과 같이 생성할 수 있다.
이때, 상기 연산 행렬인 ''을 구성하는 '9'개의 성분들 중 '0'이 아닌 성분들이 'P1, P2, P3, P4' 이므로, 전자 단말(140)은 상기 연산 행렬로부터, 'P1, P2, P3, P4'를 '4'개의 인증용 성분들로 추출하여, 서비스 운영 서버(110)로 피드백할 수 있다.
이렇게, 피드백 명령 전송부(119)에 의해, 전자 단말(140)로 상기 암호화 행렬과 상기 피드백 명령이 전송된 이후, 전자 단말(140)로부터, 상기 피드백 명령에 대응하여, 상기 암호화 행렬을 구성하는 n2개의 성분들 중 t개의 인증용 성분들(상기 t개의 인증용 성분들은 상기 암호화 행렬을 구성하는 n2개의 성분들 중 상기 매핑 행렬에서의 '1'의 성분이 위치하는 지점과 대응되는 지점에 위치하는 성분들임)이 추출되어 피드백되면, 인증 완료 처리부(120)는 상기 t개의 인증용 성분들을 상기 t개의 인증 코드들과 비교하여, 상기 t개의 인증용 성분들이 상기 t개의 인증 코드들과 모두 일치하는 것으로 확인되는 경우, 제1 회원(130)이 사설 클라우드 서버(150)에 액세스 가능하도록 지정된 사용자가 맞는 것으로 최종 확인하여, 제1 회원(130)에 대한 사용자 인증을 완료 처리한다.
예컨대, 전술한 예와 같이, 전자 단말(140)이 상기 연산 행렬로부터 'P1, P2, P3, P4'를 '4'개의 인증용 성분들로 추출하여, 서비스 운영 서버(110)로 피드백함에 따라, 서비스 운영 서버(110)에, '4'개의 인증용 성분들인 'P1, P2, P3, P4'가 피드백되었다고 가정하자.
이때, 전술한 예에 따르면, 상기 '4'개의 인증 코드들 역시 'P1, P2, P3, P4'이므로, 인증 완료 처리부(120)는 상기 '4'개의 인증용 성분들을 '4'개의 인증 코드들과 비교하여, 상기 '4'개의 인증용 성분들이 '4'개의 인증 코드들과 모두 일치하는 것으로 확인할 수 있다.
여기서, 상기 '4'개의 인증용 성분들이 '4'개의 인증 코드들과 모두 일치한다는 것은, 전자 단말(140)의 메모리 상에, 서비스 운영 서버(110)와 사전 공유하고 있는 상기 매핑 행렬이 저장되어 있다는 의미이므로, 인증 완료 처리부(120)는 '회원 1(130)'이 사설 클라우드 서버(150)에 액세스 가능하도록 지정된 사용자가 맞는 것으로 최종 확인하여, '회원 1(130)'에 대한 인증을 완료 처리할 수 있다.
이렇게, 인증 수행부(112)에 의해 제1 회원(130)에 대한 사용자 인증이 완료되면, 데이터 전송 요청부(113)는 사설 클라우드 서버(150)로, 사설 클라우드 서버(150)에 저장되어 있는 데이터들의 전송을 요청한다.
안내 메시지 전송부(114)는 사설 클라우드 서버(150)로부터, 사설 클라우드 서버(150)에 저장되어 있는 데이터들이 수신되면, 사설 클라우드 서버(150)로부터 수신된 데이터들을, 서비스 운영 서버(110)의 내부에 구비되어 있는 데이터 저장소에 저장한 후, 전자 단말(140)로, 상기 데이터 저장소에 저장되어 있는 데이터들에 대한 액세스가 가능함을 지시하는 안내 메시지를 전송한다.
이하에서는, 데이터 전송 요청부(113) 및 안내 메시지 전송부(114)의 동작을 예를 들어, 상세히 설명하기로 한다.
먼저, 전술한 예와 같이, 인증 수행부(112)에 의해 '회원 1(130)'에 대한 사용자 인증이 완료되었다고 하는 경우, 데이터 전송 요청부(113)는 사설 클라우드 서버(150)로, 사설 클라우드 서버(150)에 저장되어 있는 데이터들의 전송을 요청할 수 있다.
이때, 사설 클라우드 서버(150)에 '데이터 1, 데이터 2'이 저장되어 있다고 하는 경우, 사설 클라우드 서버(150)는 '데이터 1, 데이터 2'를 서비스 운영 서버(110)로 전송할 수 있다.
이에 따라, 서비스 운영 서버(110)에 사설 클라우드 서버(150)로부터, '데이터 1, 데이터 2'가 수신되면, 안내 메시지 전송부(114)는 '데이터 1, 데이터 2'를 서비스 운영 서버(110)의 내부에 구비되어 있는 데이터 저장소에 저장할 수 있다.
그러고 나서, 안내 메시지 전송부(114)는 전자 단말(140)로, 상기 데이터 저장소에 저장되어 있는 데이터들인 '데이터 1, 데이터 2'에 대한 액세스가 가능함을 지시하는 안내 메시지를 전송할 수 있다.
그러면, '회원 1(130)'은 상기 안내 메시지를 확인한 후, 서비스 운영 서버(110)를 통해서 전자 단말(140)에 제공되고 있는 상기 컴퓨팅 작업 환경을 이용하여, 상기 데이터 저장소에 저장되어 있는 '데이터 1, 데이터 2'에 액세스 할 수 있다.
이때, 본 발명의 일실시예에 따르면, 서비스 운영 서버(110)는 수정 처리부(121), 삭제 처리부(122) 및 저장 처리부(123)를 더 포함할 수 있다.
수정 처리부(121)는 안내 메시지 전송부(114)에 의해 전자 단말(140)로 상기 안내 메시지가 전송된 이후, 전자 단말(140)로부터, 상기 데이터 저장소에 저장되어 있는 데이터들 중 어느 하나인 제1 데이터에 대한 수정 명령이 수신되면, 상기 수정 명령에 따라, 상기 데이터 저장소에 저장되어 있는 상기 제1 데이터를 수정한다.
삭제 처리부(122)는 전자 단말(140)로부터, 상기 데이터 저장소에 저장되어 있는 데이터들 중 어느 하나인 제2 데이터에 대한 삭제 명령이 수신되면, 상기 데이터 저장소에 저장되어 있는 상기 제2 데이터를 삭제한다.
저장 처리부(123)는 전자 단말(140)로부터, 상기 데이터 저장소에 저장되어 있는 데이터들에 포함되지 않는 신규 데이터인 제3 데이터에 대한 저장 명령이 수신되면, 상기 데이터 저장소에 상기 제3 데이터를 저장한다.
이하에서는, 수정 처리부(121), 삭제 처리부(122) 및 저장 처리부(123)의 동작을 예를 들어, 상세히 설명하기로 한다.
먼저, 전술한 예와 같이, 안내 메시지 전송부(114)에 의해 전자 단말(140)로, 상기 데이터 저장소에 저장되어 있는 '데이터 1, 데이터 2'에 대한 액세스가 가능함을 지시하는 안내 메시지가 전송되었다고 가정하자.
그 이후, '회원 1(130)'이 전자 단말(140)에 제공되고 있는 상기 컴퓨팅 작업 환경을 통해서, 상기 데이터 저장소에 저장되어 있는 '데이터 1, 데이터 2'에 액세스한 후, 전자 단말(140) 상에 '데이터 1'에 대한 수정 명령을 인가함에 따라, 서비스 운영 서버(110)에 전자 단말(140)로부터, '데이터 1'에 대한 수정 명령이 수신되었다고 하는 경우, 수정 처리부(121)는 상기 수정 명령에 따라, 상기 데이터 저장소에 저장되어 있는 '데이터 1'을 수정할 수 있다.
이때, '데이터 1'이 '데이터 A'로 수정되었다고 하는 경우, 상기 데이터 저장소에는, '데이터 A, 데이터 2'가 저장되어 있게 된다.
그 이후, '회원 1(130)'이 전자 단말(140) 상에 '데이터 2'에 대한 삭제 명령을 인가함에 따라, 서비스 운영 서버(110)에 전자 단말(140)로부터, '데이터 2'에 대한 삭제 명령이 수신되었다고 하는 경우, 삭제 처리부(122)는 상기 데이터 저장소에 저장되어 있는 '데이터 2'를 삭제할 수 있다.
그러면, 상기 데이터 저장소에는, '데이터 A'가 저장되어 있게 된다.
또한, 회원 1(130)'이 전자 단말(140) 상에 상기 데이터 저장소에 저장되어 있는 데이터들에 포함되지 않는 신규 데이터인 '데이터 3'에 대한 저장 명령을 인가함에 따라, 서비스 운영 서버(110)에 전자 단말(140)로부터, '데이터 3'에 대한 저장 명령이 수신되었다고 하는 경우, 저장 처리부(123)는 상기 데이터 저장소에 '데이터 3'을 신규로 저장할 수 있다.
그러면, 상기 데이터 저장소에는 '데이터 A, 데이터 3'이 저장되어 있게 된다.
이때, 본 발명의 일실시예에 따르면, 서비스 운영 서버(110)는 대체 요청부(124)를 더 포함할 수 있다.
대체 요청부(124)는 전자 단말(140)로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 종료 명령이 수신되면, 상기 운영 체제를 종료시키고, 상기 전용 가상 머신을 종료시킨 후, 사설 클라우드 서버(150)로, 상기 데이터 저장소에 저장되어 있는 데이터들을 전송하면서, 사설 클라우드 서버(150)에 저장되어 있는 데이터들을 상기 데이터 저장소에 저장되어 있는 데이터들로 대체할 것을 요청한다.
먼저, 전술한 예와 같이, 상기 데이터 저장소에 '데이터 A, 데이터 3'이 저장되어 있다고 하고, 이러한 상태에서, 서비스 운영 서버(110)에 전자 단말(140)로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 종료 명령이 수신되었다고 가정하자.
그러면, 대체 요청부(124)는 상기 운영 체제를 종료시키고, 상기 전용 가상 머신을 종료시킨 후, 사설 클라우드 서버(150)로, 상기 데이터 저장소에 저장되어 있는 데이터들인 '데이터 A, 데이터 3'을 전송하면서, 사설 클라우드 서버(150)에 저장되어 있는 데이터들을 '데이터 A, 데이터 3'으로 대체할 것을 요청할 수 있다.
이때, 전술한 예에 따르면, 사설 클라우드 서버(150)에는 '데이터 1, 데이터 2'가 저장되어 있으므로, 사설 클라우드 서버(150)에 '데이터 A, 데이터 3'과 상기 대체 요청이 수신되면, 사설 클라우드 서버(150)는 사설 클라우드 서버(150)에 저장되어 있는 '데이터 1, 데이터 2'를 '데이터 A, 데이터 3'로 대체할 수 있다. 즉, '회원 1(130)'에 의해, 상기 데이터 저장소에 저장되어 있는 데이터들에 대한 수정, 삭제 및 저장이 수행된 후, 상기 가상 컴퓨팅 작업 환경 제공 서비스가 종료되면, 서비스 운영 서버(110)는 사설 클라우드 서버(150)로, 상기 데이터 저장소에 저장되어 있는 데이터들과 상기 대체 요청을 전송함으로써, 사설 클라우드 서버(150)에 저장되어 있는 데이터들이, '회원 1(130)'에 의해 수정, 삭제 및 저장이 수행된 상기 데이터 저장소에 저장되어 있는 데이터들로 대체될 수 있도록 처리할 수 있다.
도 2는 본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버의 동작 방법을 도시한 순서도이다.
단계(S210)에서는 상기 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 복수의 회원들 중 어느 한 명인 제1 회원의 전자 단말로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 활성화 명령이 수신되면, 상기 서비스 운영 서버에 사전 설치되어 있는 전용 가상 머신을 실행한 후, 상기 전용 가상 머신에 사전 설치되어 있는 운영 체제를 구동하고, 상기 운영 체제의 구동에 따른 컴퓨팅 작업 환경을 구성하여, 상기 컴퓨팅 작업 환경에 대한 영상을 실시간 스트리밍 방식으로, 상기 전자 단말로 전송한다.
단계(S220)에서는 상기 전자 단말로부터, 상기 컴퓨팅 작업 환경을 통해, 사설 네트워크를 통해 접속 가능한 것으로 지정된 사설 클라우드 서버(상기 사설 클라우드 서버는, 상기 서비스 운영 서버와 서로 접속 가능하도록 구성되어 있음)에 저장되어 있는 데이터들에 대한 액세스 요청 신호가 수신되면, 상기 제1 회원이 상기 사설 클라우드 서버에 액세스 가능하도록 지정된 사용자가 맞는지 여부에 대한 사용자 인증을 수행한다.
단계(S230)에서는 상기 제1 회원에 대한 사용자 인증이 완료되면, 상기 사설 클라우드 서버로, 상기 사설 클라우드 서버에 저장되어 있는 데이터들의 전송을 요청한다.
단계(S240)에서는 상기 사설 클라우드 서버로부터, 상기 사설 클라우드 서버에 저장되어 있는 데이터들이 수신되면, 상기 사설 클라우드 서버로부터 수신된 데이터들을, 상기 서비스 운영 서버의 내부에 구비되어 있는 데이터 저장소에 저장한 후, 상기 전자 단말로, 상기 데이터 저장소에 저장되어 있는 데이터들에 대한 액세스가 가능함을 지시하는 안내 메시지를 전송한다.
이때, 본 발명의 일실시예에 따르면, 단계(S220)에서는 상기 전자 단말과 사전 공유하고 있는 n x n(n은 2 이상의 자연수임) 크기의 매핑 행렬(상기 매핑 행렬은, '1'과 '0'의 성분으로 구성된 행렬로, 상기 매핑 행렬을 구성하는 n2개의 성분들 중 t(t는 2 이상 n2 미만의 자연수임)개의 성분들은 '1'로 지정되어 있고, 나머지 n2-t개의 성분들은 '0'으로 지정되어 있음)이 저장되어 있는 매핑 행렬 저장부를 유지하는 단계, 상기 전자 단말로부터, 상기 사설 클라우드 서버에 저장되어 있는 데이터들에 대한 액세스 요청 신호가 수신되면, 상기 제1 회원이 상기 사설 클라우드 서버에 액세스 가능하도록 지정된 사용자가 맞는지 여부에 대한 사용자 인증을 수행하기 위한 인증 이벤트를 발생시키는 단계, 상기 인증 이벤트가 발생되면, t개의 인증 코드들과 n2-t개의 더미 코드들을 랜덤하게 생성하는 단계, 상기 t개의 인증 코드들과 상기 n2-t개의 더미 코드들이 생성되면, 상기 매핑 행렬에서, 상기 매핑 행렬을 구성하는 n2개의 성분들 중 '1'이 지정되어 있는 t개의 성분들을, 상기 t개의 인증 코드들로 하나씩 치환하고, '0'이 지정되어 있는 n2-t개의 성분들을, 상기 n2-t개의 더미 코드들로 하나씩 치환함으로써, n x n 크기의 암호화 행렬을 생성하는 단계, 상기 암호화 행렬이 생성되면, 상기 전자 단말로, 상기 암호화 행렬을 전송하면서, 상기 암호화 행렬을 구성하는 n2개의 성분들 중 상기 t개의 인증 코드들을 추출하여 상기 서비스 운영 서버로 피드백할 것을 지시하는 피드백 명령을 전송하는 단계 및 상기 전자 단말로 상기 암호화 행렬과 상기 피드백 명령이 전송된 이후, 상기 전자 단말로부터, 상기 피드백 명령에 대응하여, 상기 암호화 행렬을 구성하는 n2개의 성분들 중 t개의 인증용 성분들(상기 t개의 인증용 성분들은 상기 암호화 행렬을 구성하는 n2개의 성분들 중 상기 매핑 행렬에서의 '1'의 성분이 위치하는 지점과 대응되는 지점에 위치하는 성분들임)이 추출되어 피드백되면, 상기 t개의 인증용 성분들을 상기 t개의 인증 코드들과 비교하여, 상기 t개의 인증용 성분들이 상기 t개의 인증 코드들과 모두 일치하는 것으로 확인되는 경우, 상기 제1 회원이 상기 사설 클라우드 서버에 액세스 가능하도록 지정된 사용자가 맞는 것으로 최종 확인하여, 상기 제1 회원에 대한 사용자 인증을 완료 처리하는 단계를 포함할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 전자 단말은 메모리 상에 상기 매핑 행렬을 사전 저장하고 있고, 상기 서비스 운영 서버로부터, 상기 암호화 행렬과 상기 피드백 명령이 수신되면, 상기 암호화 행렬과 상기 매핑 행렬 간의 아다마르 곱을 연산하여 n x n 크기의 연산 행렬을 생성한 후, 상기 연산 행렬을 구성하는 n2개의 성분들 중 '0'이 아닌 t개의 성분들을, 상기 t개의 인증용 성분들로 추출하여 상기 서비스 운영 서버로 피드백할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 서비스 운영 서버의 동작 방법은 상기 전자 단말로 상기 안내 메시지가 전송된 이후, 상기 전자 단말로부터, 상기 데이터 저장소에 저장되어 있는 데이터들 중 어느 하나인 제1 데이터에 대한 수정 명령이 수신되면, 상기 수정 명령에 따라, 상기 데이터 저장소에 저장되어 있는 상기 제1 데이터를 수정하는 단계, 상기 전자 단말로부터, 상기 데이터 저장소에 저장되어 있는 데이터들 중 어느 하나인 제2 데이터에 대한 삭제 명령이 수신되면, 상기 데이터 저장소에 저장되어 있는 상기 제2 데이터를 삭제하는 단계 및 상기 전자 단말로부터, 상기 데이터 저장소에 저장되어 있는 데이터들에 포함되지 않는 신규 데이터인 제3 데이터에 대한 저장 명령이 수신되면, 상기 데이터 저장소에 상기 제3 데이터를 저장하는 단계를 더 포함할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 서비스 운영 서버의 동작 방법은 상기 전자 단말로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 종료 명령이 수신되면, 상기 운영 체제를 종료시키고, 상기 전용 가상 머신을 종료시킨 후, 상기 사설 클라우드 서버로, 상기 데이터 저장소에 저장되어 있는 데이터들을 전송하면서, 상기 사설 클라우드 서버에 저장되어 있는 데이터들을 상기 데이터 저장소에 저장되어 있는 데이터들로 대체할 것을 요청하는 단계를 더 포함할 수 있다.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버의 동작 방법은 도 1을 이용하여 설명한 서비스 운영 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일실시예에 따른 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
110: 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버
111: 영상 전송부 112: 인증 수행부
113: 데이터 전송 요청부 114: 안내 메시지 전송부
115: 매핑 행렬 저장부 116: 인증 이벤트 발생부
117: 랜덤 생성부 118: 암호화 행렬 생성부
119: 피드백 명령 전송부 120: 인증 완료 처리부
121: 수정 처리부 122: 삭제 처리부
123: 저장 처리부 124: 대체 요청부
130: 제1 회원
140: 제1 회원의 전자 단말
150: 사설 클라우드 서버

Claims (5)

  1. 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버에 있어서,
    상기 가상 컴퓨팅 작업 환경 제공 서비스에 가입되어 있는 복수의 회원들 중 어느 한 명인 제1 회원의 전자 단말로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 활성화 명령이 수신되면, 상기 서비스 운영 서버에 사전 설치되어 있는 전용 가상 머신(Virtual Machine)을 실행한 후, 상기 전용 가상 머신에 사전 설치되어 있는 운영 체제(Operating System)를 구동하고, 상기 운영 체제의 구동에 따른 컴퓨팅 작업 환경을 구성하여, 상기 컴퓨팅 작업 환경에 대한 영상을 실시간 스트리밍 방식으로, 상기 전자 단말로 전송하는 영상 전송부;
    상기 전자 단말로부터, 상기 컴퓨팅 작업 환경을 통해, 사설 네트워크(Private Network)를 통해 접속 가능한 것으로 지정된 사설 클라우드 서버 - 상기 사설 클라우드 서버는, 상기 서비스 운영 서버와 서로 접속 가능하도록 구성되어 있음 - 에 저장되어 있는 데이터들에 대한 액세스 요청 신호가 수신되면, 상기 제1 회원이 상기 사설 클라우드 서버에 액세스 가능하도록 지정된 사용자가 맞는지 여부에 대한 사용자 인증을 수행하는 인증 수행부;
    상기 제1 회원에 대한 사용자 인증이 완료되면, 상기 사설 클라우드 서버로, 상기 사설 클라우드 서버에 저장되어 있는 데이터들의 전송을 요청하는 데이터 전송 요청부;
    상기 사설 클라우드 서버로부터, 상기 사설 클라우드 서버에 저장되어 있는 데이터들이 수신되면, 상기 사설 클라우드 서버로부터 수신된 데이터들을, 상기 서비스 운영 서버의 내부에 구비되어 있는 데이터 저장소에 저장한 후, 상기 전자 단말로, 상기 데이터 저장소에 저장되어 있는 데이터들에 대한 액세스가 가능함을 지시하는 안내 메시지를 전송하는 안내 메시지 전송부;
    상기 전자 단말로 상기 안내 메시지가 전송된 이후, 상기 전자 단말로부터, 상기 데이터 저장소에 저장되어 있는 데이터들 중 어느 하나인 제1 데이터에 대한 수정 명령이 수신되면, 상기 수정 명령에 따라, 상기 데이터 저장소에 저장되어 있는 상기 제1 데이터를 수정하는 수정 처리부;
    상기 전자 단말로부터, 상기 데이터 저장소에 저장되어 있는 데이터들 중 어느 하나인 제2 데이터에 대한 삭제 명령이 수신되면, 상기 데이터 저장소에 저장되어 있는 상기 제2 데이터를 삭제하는 삭제 처리부; 및
    상기 전자 단말로부터, 상기 데이터 저장소에 저장되어 있는 데이터들에 포함되지 않는 신규 데이터인 제3 데이터에 대한 저장 명령이 수신되면, 상기 데이터 저장소에 상기 제3 데이터를 저장하는 저장 처리부
    를 포함하는 서비스 운영 서버.
  2. 제1항에 있어서,
    상기 인증 수행부는
    상기 전자 단말과 사전 공유하고 있는 n x n(n은 2 이상의 자연수임) 크기의 매핑(mapping) 행렬 - 상기 매핑 행렬은, '1'과 '0'의 성분으로 구성된 행렬로, 상기 매핑 행렬을 구성하는 n2개의 성분들 중 t(t는 2 이상 n2 미만의 자연수임)개의 성분들은 '1'로 지정되어 있고, 나머지 n2-t개의 성분들은 '0'으로 지정되어 있음 - 이 저장되어 있는 매핑 행렬 저장부;
    상기 전자 단말로부터, 상기 사설 클라우드 서버에 저장되어 있는 데이터들에 대한 액세스 요청 신호가 수신되면, 상기 제1 회원이 상기 사설 클라우드 서버에 액세스 가능하도록 지정된 사용자가 맞는지 여부에 대한 사용자 인증을 수행하기 위한 인증 이벤트를 발생시키는 인증 이벤트 발생부;
    상기 인증 이벤트가 발생되면, t개의 인증 코드들과 n2-t개의 더미(dummy) 코드들을 랜덤하게 생성하는 랜덤 생성부;
    상기 t개의 인증 코드들과 상기 n2-t개의 더미 코드들이 생성되면, 상기 매핑 행렬에서, 상기 매핑 행렬을 구성하는 n2개의 성분들 중 '1'이 지정되어 있는 t개의 성분들을, 상기 t개의 인증 코드들로 하나씩 치환하고, '0'이 지정되어 있는 n2-t개의 성분들을, 상기 n2-t개의 더미 코드들로 하나씩 치환함으로써, n x n 크기의 암호화 행렬을 생성하는 암호화 행렬 생성부;
    상기 암호화 행렬이 생성되면, 상기 전자 단말로, 상기 암호화 행렬을 전송하면서, 상기 암호화 행렬을 구성하는 n2개의 성분들 중 상기 t개의 인증 코드들을 추출하여 상기 서비스 운영 서버로 피드백할 것을 지시하는 피드백 명령을 전송하는 피드백 명령 전송부; 및
    상기 전자 단말로 상기 암호화 행렬과 상기 피드백 명령이 전송된 이후, 상기 전자 단말로부터, 상기 피드백 명령에 대응하여, 상기 암호화 행렬을 구성하는 n2개의 성분들 중 t개의 인증용 성분들 - 상기 t개의 인증용 성분들은 상기 암호화 행렬을 구성하는 n2개의 성분들 중 상기 매핑 행렬에서의 '1'의 성분이 위치하는 지점과 대응되는 지점에 위치하는 성분들임 - 이 추출되어 피드백되면, 상기 t개의 인증용 성분들을 상기 t개의 인증 코드들과 비교하여, 상기 t개의 인증용 성분들이 상기 t개의 인증 코드들과 모두 일치하는 것으로 확인되는 경우, 상기 제1 회원이 상기 사설 클라우드 서버에 액세스 가능하도록 지정된 사용자가 맞는 것으로 최종 확인하여, 상기 제1 회원에 대한 사용자 인증을 완료 처리하는 인증 완료 처리부
    를 포함하는 서비스 운영 서버.
  3. 제2항에 있어서,
    상기 전자 단말은
    메모리 상에 상기 매핑 행렬을 사전 저장하고 있고, 상기 서비스 운영 서버로부터, 상기 암호화 행렬과 상기 피드백 명령이 수신되면, 상기 암호화 행렬과 상기 매핑 행렬 간의 아다마르 곱(Hadamard product)을 연산하여 n x n 크기의 연산 행렬을 생성한 후, 상기 연산 행렬을 구성하는 n2개의 성분들 중 '0'이 아닌 t개의 성분들을, 상기 t개의 인증용 성분들로 추출하여 상기 서비스 운영 서버로 피드백하는 것을 특징으로 하는 서비스 운영 서버.
  4. 삭제
  5. 제1항에 있어서,
    상기 전자 단말로부터, 상기 가상 컴퓨팅 작업 환경 제공 서비스에 대한 종료 명령이 수신되면, 상기 운영 체제를 종료시키고, 상기 전용 가상 머신을 종료시킨 후, 상기 사설 클라우드 서버로, 상기 데이터 저장소에 저장되어 있는 데이터들을 전송하면서, 상기 사설 클라우드 서버에 저장되어 있는 데이터들을 상기 데이터 저장소에 저장되어 있는 데이터들로 대체할 것을 요청하는 대체 요청부
    를 더 포함하는 서비스 운영 서버.
KR1020210115648A 2021-08-31 2021-08-31 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버 KR102621146B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210115648A KR102621146B1 (ko) 2021-08-31 2021-08-31 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210115648A KR102621146B1 (ko) 2021-08-31 2021-08-31 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버

Publications (2)

Publication Number Publication Date
KR20230032615A KR20230032615A (ko) 2023-03-07
KR102621146B1 true KR102621146B1 (ko) 2024-01-04

Family

ID=85512754

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210115648A KR102621146B1 (ko) 2021-08-31 2021-08-31 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버

Country Status (1)

Country Link
KR (1) KR102621146B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102102168B1 (ko) * 2013-10-21 2020-04-21 한국전자통신연구원 가상 데스크탑 서비스 장치 및 방법
KR102168327B1 (ko) * 2019-10-28 2020-10-21 주식회사 한글과컴퓨터 차량용 단말의 위치 정보를 기초로 알림 메시지의 공유를 지원하는 알림 메시지 공유 서비스 장치 및 그 동작 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150116537A (ko) * 2014-04-07 2015-10-16 한국전자통신연구원 가상 사설 클라우드 시스템에서의 사용자 인증 방법 및 가상 사설 클라우드 서비스 제공 장치
KR102253577B1 (ko) * 2019-09-18 2021-05-18 주식회사 에즈웰 사용자 인증 기반의 가상 데스크톱 환경의 제공이 가능한 컴퓨팅 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102102168B1 (ko) * 2013-10-21 2020-04-21 한국전자통신연구원 가상 데스크탑 서비스 장치 및 방법
KR102168327B1 (ko) * 2019-10-28 2020-10-21 주식회사 한글과컴퓨터 차량용 단말의 위치 정보를 기초로 알림 메시지의 공유를 지원하는 알림 메시지 공유 서비스 장치 및 그 동작 방법

Also Published As

Publication number Publication date
KR20230032615A (ko) 2023-03-07

Similar Documents

Publication Publication Date Title
CN107294729B (zh) 区块链中不同节点之间的通信方法及装置
US11307969B2 (en) Methods for improved web application testing using remote headless browsers and devices thereof
CN109981297B (zh) 区块链处理方法、装置、设备及存储介质
EP2798561B1 (en) Biometric cloud communication and data movement
US8898765B2 (en) Signing off from multiple domains accessible using single sign-on
JP4654329B1 (ja) コンテンツ提示型認証システム
JP6595625B2 (ja) 自動再チャージシステム、方法、およびサーバ
CN110704863B (zh) 配置信息处理方法、装置、计算机设备和存储介质
TW201407378A (zh) 藉由存取標記之集中管理以用於雲端儲存之有效資料轉移
CN108449187B (zh) 一种令牌刷新的方法及装置
CN103841117A (zh) 一种基于Cookie机制的JAAS登录方法和服务器
CN112685091A (zh) 基于大数据的业务请求处理方法、装置、设备和介质
CN113505354A (zh) 一种数据处理方法、装置及存储介质
KR102253577B1 (ko) 사용자 인증 기반의 가상 데스크톱 환경의 제공이 가능한 컴퓨팅 장치
KR102621146B1 (ko) 사설 클라우드 서버에 저장된 데이터에 대한 액세스를 가능하게 하는 클라우드 기반의 가상 컴퓨팅 작업 환경 제공 서비스를 운영하기 위한 서비스 운영 서버
KR20180090060A (ko) 사물 인터넷 보안 모듈
CN114448722B (zh) 跨浏览器登录方法、装置、计算机设备和存储介质
KR102602189B1 (ko) 클라우드 기반의 문서 공유 서비스를 운영하기 위한 문서 공유 서비스 서버 및 그 동작 방법
CN110795182A (zh) 云主机创建方法和系统
US20090100135A1 (en) Device and method of sharing contents among devices
KR102442674B1 (ko) 사설 클라우드 서버에 대한 액세스를 관리하는 액세스 관리 서버 및 그 동작 방법
US11188240B2 (en) Information processing system and non-transitory computer readable medium for access permission control
CN114338130A (zh) 信息的处理方法、装置、服务器及存储介质
KR102575679B1 (ko) 클라우드 기반의 가상 컴퓨팅 작업 환경을 제공하는 클라우드 서비스를 운영하기 위한 클라우드 서비스 운영 서버
KR102545272B1 (ko) 클라우드 오피스 서비스를 제공하기 위한, 클라우드 스토리지와 클라이언트 단말 간의 인터페이싱을 지원하는 인터페이싱 지원 서버 및 그 동작 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right