KR102310811B1 - 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템 - Google Patents

클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템 Download PDF

Info

Publication number
KR102310811B1
KR102310811B1 KR1020190128902A KR20190128902A KR102310811B1 KR 102310811 B1 KR102310811 B1 KR 102310811B1 KR 1020190128902 A KR1020190128902 A KR 1020190128902A KR 20190128902 A KR20190128902 A KR 20190128902A KR 102310811 B1 KR102310811 B1 KR 102310811B1
Authority
KR
South Korea
Prior art keywords
data
server
digital signature
encryption
key
Prior art date
Application number
KR1020190128902A
Other languages
English (en)
Other versions
KR20210045632A (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 KR1020190128902A priority Critical patent/KR102310811B1/ko
Publication of KR20210045632A publication Critical patent/KR20210045632A/ko
Application granted granted Critical
Publication of KR102310811B1 publication Critical patent/KR102310811B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

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

Abstract

본 발명은 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템에 관한 것으로서, 더욱 상세하게는, 클라우드의 안전한 저장소 내에 인증서와 개인키를 발급하여 저장함으로써, 사용자가 인증서 및 개인키를 직접 소지 하지 않더라도 클라우드 환경에서 데이터 전자서명을 수행하고, 데이터의 암호화 및 복호화를 수행할 수 있는, 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템에 관한 것이다.

Description

클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템 {Method and System for electronic authentication and encryption of data Based On Cloud System}
본 발명은 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템에 관한 것으로서, 더욱 상세하게는, 클라우드의 안전한 저장소 내에 인증서와 개인키를 발급하여 저장함으로써, 사용자가 인증서 및 개인키를 직접 소지 하지 않더라도 클라우드 환경에서 데이터 전자서명을 수행하고, 데이터의 암호화 및 복호화를 수행할 수 있는, 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템에 관한 것이다.
현대에는 스마트 시대의 도래로 인하여 인터넷의 보급과 정보통신기술의 급격한 발전으로 인해 클라우드 컴퓨팅 기술이 발전하고 있으며, 개인 또는 기업들은 개별적으로 저장하던 디지털 데이터를 클라우드 기반의 스토리지 또는 웹하드와 같은 온라인 저장소에 저장하여 시간과 공간의 제약 없이 항상 디지털 데이터를 다운로드 하여 원하는 작업을 수행할 수 있는 환경이 마련되고 있다.
한편, 현대에는 데이터의 송수신에 있어서, 특정 사용자가 보낸 데이터임을 인증하기 위한 전자서명 기술이 활용되고 있다. 종래의 기술에 따르면, 전자서명을 수행하는 데 필요한 어플리케이션 프로그램의 설치가 필수적이며 혹은 액티브엑스(ActiveX) 등의 보안 솔루션을 통해 악성코드의 탐지, 피싱 방지 등을 수행하여야만 한다. 그러나, 이러한 보안 솔루션은 상대적으로 고가여서 모든 서비스 제공자가 모든 사용자에게 보안 솔루션을 제공하는데 무리가 있는 것이 사실이며, 악성코드나 피싱의 유형은 날로 다양해지므로 보안솔루션 역시 계속 갱신 또는 업그레이드를 필요로 한다.
또한, 사용자 단말기를 통해 별도의 인증서 발급 절차 등을 필요로 하며, 전자서명을 위한 인증서 및 개인키를 사용자가 지정한 단말기와 같은 로컬 저장소에 직접 소지해야 하는 불편함이 존재한다. 이와 같이, 사용자가 인증서 및 개인키를 소지하는 경우, 사용자가 해당 단말기를 잃어버리는 경우, 개인키의 유출 위험이 증가함으로써 개인정보 침해 사고 발생가능성 또한 증가한다.
이와 같은 문제점을 해결하기 위해서, 사용자의 단말기에 설치되어 왔던 인증서를 클라우드 기반의 외부 시스템에 보관해두고, 본인인증이 필요한 시점에 상기 외부 시스템에 저장되어 있는 상태에서 인증서를 통한 전자서명을 수행할 수 있고, 데이터의 암호화 및 복호화 또한, 설치형 어플리케이션 및 보안솔루션의 설치가 필요 없이 클라우드 기반의 같은 외부 시스템에서 데이터의 암호화 및 복호화를 할 수 있는 방법이 필요하나, 이러한 서비스를 제공하는 종래의 기술은 전무하다.
본 발명은 클라우드의 안전한 저장소 내에 인증서와 개인키를 발급하여 저장함으로써, 사용자가 인증서 및 개인키를 직접 소지 하지 않더라도 클라우드 환경에서 데이터 전자서명을 수행하고, 데이터의 암호화 및 복호화를 수행할 수 있는, 클라우드 기반 데이터 전자인증 및 암호화 방법, 시스템 및 컴퓨터-판독가능 매체를 제공하는 것을 목적으로 한다.
상기와 같은 과제를 해결하기 위하여 본 발명은, 웹포탈서버, 전자서명서버, 암호화서버, 및 키관리서버를 포함하는 클라우드 시스템에 의한 데이터 전자서명 및 암호화 방법으로서, 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하는 제1단계; 상기 키관리서버에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명이 수행되고, 상기 키관리서버에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하여, 상기 발송사용자의 단말기로 송신하는 제2단계; 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터 및 상기 수신사용자의 정보를 수신하는 제3단계; 및 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 상기 검증정보의 검증결과에 따라 상기 키관리서버에 저장된 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하고, 상기 전자서명된 원문데이터를 상기 수신사용자의 단말기로 송신하는 제4단계;를 포함하는, 데이터 전자서명 및 암호화 방법을 제공한다.
본 발명의 일 실시예에서는, 상기 제2단계는, 전자서명단계를 포함하고, 상기 전자서명단계는, 상기 전자서명서버에 의하여, 상기 웹포탈서버로부터 상기 원문데이터를 수신하는 단계; 상기 키관리서버에 의하여, 상기 전자서명서버로부터 상기 원문데이터를 수신하는 단계; 상기 키관리서버에 의하여, 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행하여 전자서명데이터를 도출하는 단계; 및 상기 전자서명서버에 의하여, 상기 키관리서버로부터 상기 전자서명데이터를 수신하는 단계;를 포함하고, 상기 키관리서버는 상기 전자서명서버와 접속될 수 있고, 상기 웹포탈서버와는 접속되지 않을 수 있다.
본 발명의 일 실시예에서는, 상기 제2단계는, 발송데이터생성단계를 포함하고, 상기 발송데이터생성단계는, 상기 원문데이터 및 상기 전자서명의 수행에 의하여 도출된 전자서명데이터의 암호화를 수행하여 상기 암호화전자서명데이터를 도출하는 단계; 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출하는 단계; 상기 수신자정보, 상기 암호화전자서명데이터, 및 상기 메시지무결성검증코드에 기초하여 발송데이터를 생성하여 상기 발송사용자의 단말기로 송신하는 단계;를 포함할 수 있다.
본 발명의 일 실시예에서는, 상기 발송데이터는, 상기 수신자정보; 상기 암호화전자서명데이터; 및 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 포함할 수 있다.
본 발명의 일 실시예에서는, 상기 제4단계는, 상기 암호화서버에 의하여, 상기 웹포탈서버로부터 상기 수신사용자의 정보 및 상기 발송데이터를 수신하는 단계; 상기 암호화서버에 의하여, 상기 검증정보의 검증결과를 도출하는 검증단계; 상기 암호화서버에 의하여, 상기 검증결과에 따라 상기 암호화서버에서 상기 암호화전자서명데이터를 상기 키관리서버로 송신하는 단계; 상기 키관리서버에 의하여, 상기 암호화전자서명데이터의 복호화를 수행하는 복호화단계; 상기 암호화서버에 의하여, 상기 키관리서버로부터 복호화된 상기 전자서명된 원문데이터를 수신하는 단계; 및 상기 웹포탈서버에 의하여, 상기 암호화서버로부터 상기 전자서명된 원문데이터를 수신하는 단계;를 포함하고, 상기 키관리서버는 상기 전자서명서버와 접속될 수 있고, 상기 웹포탈서버와는 접속되지 않을 수 있다.
본 발명의 일 실시예에서는, 상기 제4단계는, 검증단계를 포함하고, 상기 검증단계는, 상기 수신사용자의 정보 및 상기 수신자정보의 일치여부에 기초하여 사용자검증결과를 도출하는 사용자검증단계; 및 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출하고, 상기 검증정보에 포함된 메시지무결성검증코드의 일치여부에 기초하여 메시지무결성검증결과를 도출하는 메시지무결성검증단계;를 포함할 수 있다.
본 발명의 일 실시예에서는, 상기 제4단계는, 복호화단계를 포함하고, 상기 복호화단계는, 상기 사용자검증결과 및 상기 메시지무결성검증결과가 검증으로 도출되는 경우, 상기 키관리서버에 저장된 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화할 수 있다.
상기와 같은 과제를 해결하기 위하여, 본 발명의 일 실시예는 웹포탈서버, 전자서명서버, 암호화서버, 및 키관리서버를 포함하고, 데이터 전자서명 및 암호화를 수행하기 위한 클라우드 시스템으로서, 상기 웹포탈서버는 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하고, 상기 키관리서버는 상기 키관리서버에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행하고, 상기 암호화서버는 상기 키관리서버에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하고, 상기 웹포탈서버는 상기 발송데이터를 상기 발송사용자의 단말기로 송신하고, 상기 웹포탈서버는 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터 및 상기 수신사용자의 정보를 수신하고, 상기 암호화서버는 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 상기 키관리서버는 상기 검증정보의 검증결과에 따라 상기 키관리서버에 저장된 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하고, 상기 웹포탈서버는 상기 전자서명된 원문데이터를 상기 수신사용자의 단말기로 송신하는, 데이터 전자서명 및 암호화를 수행하기 위한 클라우드 시스템을 제공한다.
상기와 같은 과제를 해결하기 위하여, 본 발명의 일 실시예는 웹포탈서버, 전자서명서버, 암호화서버, 및 키관리서버를 포함하는 클라우드 시스템에 의한 데이터 전자서명 및 암호화 방법으로서, 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하는 제1단계; 상기 키관리서버에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명이 수행되고, 상기 키관리서버에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하여, 상기 발송사용자의 단말기로 송신하는 제2단계; 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터, 상기 수신사용자의 정보 및 수신사용자의 공개키를 수신하는 제3단계; 및 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 상기 검증정보의 검증결과에 따라 상기 수신사용자의 공개키에 의하여 상기 키관리서버에 저장된 복호화키를 암호화한 암호화키데이터를 도출하고, 상기 암호화키데이터를 수신사용자의 단말기로 송신하는 제4단계; 및 수신사용자의 단말기에 의하여, 수신사용자의 개인키에 의하여 상기 암호화키데이터로부터 복호화키를 복호화하고, 상기 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하는 제5단계;를 포함하는, 데이터 전자서명 및 암호화 방법을 제공한다.
본 발명의 일 실시예에 따르면, 인증서 기반 전자서명 시 인증서와 개인키를 소지할 필요 없이 간편한 본인인증 만으로 데이터에 대한 전자서명을 수행할 수 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따르면, 클라우드 시스템에서 암호화 및 복호화를 수행함으로써, 사용자는 자신의 단말기에 Plug in과 같은 설치형 솔루션의 설치를 하지 않더라도 암호화 및 복호화를 할 수 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따르면, 클라우드 시스템에서 암호화 및 복호화를 수행함으로써, 사용자의 단말기에 Plug in과 같은 설치형 솔루션의 설치가 불필요 하게 되어, 설치형 솔루션의 도입 및 운영에 대한 투자 비용을 절감할 수 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따르면, 클라우드 시스템 내에 사용자의 인증서 및 개인키를 저장함으로써, 인증서 및 개인키의 유출을 방지하여, 개인정보 유출로 인한 피해를 절감할 수 있는 효과를 발휘할 수 있다.
본 발명의 일 실시예에 따르면 다수의 사용자 단말기와 접속하는 웹포탈서버는 사용자의 인증서 및 개인키가 저장된 키관리서버와 접속될 수 없는 시스템의 형태를 가짐으로써, 개인정보의 보안성이 강화되는 효과를 발휘할 수 있다.
도 1은 본 발명의 일 실시예에 따른 클라우드 기반 데이터 전자인증 및 암호화 방법의 전체적인 시스템 형태를 개략적으로 도시한다.
도 2는 본 발명의 일 실시예에 따른 클라우드 시스템의 제1단계 및 제2단계 수행 과정을 개략적으로 도시한다.
도 3은 본 발명의 일 실시예에 따른 클라우드 시스템의 제3단계 및 제4단계 수행 과정을 개략적으로 도시한다.
도 4는 본 발명의 일 실시예에 따른 클라우드 시스템의 전자서명 과정의 단계들을 개략적으로 도시한다.
도 5는 본 발명의 일 실시예에 따른 클라우드 시스템의 발송데이터의 생성 및 송신 과정의 단계들을 개략적으로 도시한다.
도 6은 본 발명의 일 실시예에 따른 발송사용자의 단말기로부터 수신한 정보의 처리과정을 개략적으로 도시한다.
도 7은 본 발명의 일 실시예에 따른 발송데이터의 형태를 개략적으로 도시한다.
도 8은 본 발명의 일 실시예에 따른 클라우드 시스템의 복호화 과정의 단계들을 개략적으로 도시한다.
도 9는 본 발명의 일 실시예에 따른 암호화서버의 메시지 무결성 검증 과정을 개략적으로 도시한다.
도 10은 본 발명의 일 실시예에 따른 수신사용자 단말기로부터 수신한 정보의 처리과정을 개략적으로 도시한다.
도 11은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 내부구성을 개략적으로 도시한다.
다양한 실시예들이 이제 도면을 참조하여 설명되며, 전체 도면에서 걸쳐 유사한 도면번호는 유사한 구성요소를 나타내기 위해서 사용된다. 본 명세서에서, 다양한 설명들이 본 발명의 이해를 제공하기 위해서 제시된다. 그러나 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다. 다른 예들에서, 공지된 구조 및 장치들은 실시예들의 설명을 용이하게 하기 위해서 블록 다이어그램 형태로 제공된다.
본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템", "~부" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정, 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있고, 일 컴포넌트는 하나의 컴퓨터
내에 로컬화될 수 있고, 또는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통한 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다.
또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하지만, 하나이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다.
또한, 제1, 제2등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1구성요소는 제2구성요소로 명명될 수 있고, 유사하게 제2구성요소도 제1구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 본 발명의 실시예들에서, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명의 실시예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하에서 언급되는 "사용자 단말"은 네트워크를 통해 서버나 타 단말에 접속할 수 있는 컴퓨터나 휴대용 단말기로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말 등과 같은 모든 종류의 핸드헬드 (Handheld) 기반의 무선 통신 장치를 포함할 수 있다. 또한, "네트워크"는 근거리 통신망(Local Area Network;LAN), 광역 통신망(Wide Area Network; WAN) 또는 부가가치 통신망(Value Added Network; VAN) 등과 같은 유선네트워크나 이동 통신망(mobile radio communication network) 또는 위성 통신망 등과 같은 모든 종류의 무선 네트워크로 구현될 수 있다.
도 1은 본 발명의 일 실시예에 따른 클라우드 기반 데이터 전자인증 및 암호화 방법의 전체적인 시스템 형태를 개략적으로 도시한다.
도 1의 발송사용자의 단말기 혹은 수신사용자의 단말기는 전술한 사용자 단말에 해당할 수 있고, 웹포탈서버(1100), 전자서명서버(1200), 암호화서버(1300), 및 키관리서버(1400)는 1 이상의 프로세서 및 1 이상의 메모리를 포함하는 컴퓨팅 장치에 해당한다. 도 1에는 웹포탈서버(1100), 전자서명서버(1200), 암호화서버(1300) 및 키관리서버(1400)가 분리되어 도시되어 있으나, 다른 실시예에서는, 웹포탈서버(1100), 전자서명서버(1200), 암호화서버(1300) 및 키관리서버(1400)가 통합된 형태의 서버로 존재할 수도 있다.
발송사용자의 단말기 및 수신사용자의 단말기는 클라우드 시스템의 웹포탈서버(1100)에 웹브라우져 프로그램을 통하여 접속하거나 혹은 전용 애플리케이션을 통하여 접속할 수 있다.
각각의 발송사용자의 단말기 및 수신사용자의 단말기는 바이오정보를 통해 인증을 수행하거나, 비밀번호를 입력하는 등의 방법으로 자신의 계정에 로그인 할 수 있다. 바이오정보는 지문, 홍채, 얼굴 인식, 목소리, 정맥 등 생체로부터 추출할 수 있는 생체정보 자체 혹은 동작 등의 행동적 특성의 생체정보를 모두 포함하는 정보로 해석되어야 할 것이다.
상기 웹포탈서버(1100)는, 발송사용자의 단말기 및 수신사용자의 단말기와 같은 사용자의 단말기, 전자서명서버(1200) 및 암호화서버(1300)에 접속하여 통신을 수행할 수 있고, 사용자의 단말기의 요청에 의하여 전자서명의 수행을 전자서명서버(1200)를 통하여 키관리서버(1400)에 요청하거나, 암호화 혹은 복호화의 수행을 암호화서버(1300)를 통하여 키관리서버(1400)에 요청할 수 있다.
상기 전자서명서버(1200)는, 웹포탈서버(1100)로부터 발송사용자의 단말기로부터 수신한 원문데이터 및 수신자정보를 수신하여, 키관리서버(1400)로 전자서명을 요청하고, 키관리서버(1400)가 도출한 전자서명데이터를 수신할 수 있다.
상기 암호화서버(1300)는, 웹포탈서버(1100)로부터 원문데이터, 수신자정보 및 전자서명데이터를 수신하여, 키관리서버(1400)로 암호화를 요청하고, 키관리서버(1400)가 도출한 암호화전자서명데이터를 수신하여, 발송데이터를 생성할 수 있다.
상기 키관리서버(1400)는, 전자서명을 수행하기 위한 인증서 및 개인키, 공개키, 암호화키, 및 복호화키 중 1 이상을 포함하는 키데이터를 저장하고 있고, 전자서명서버(1200) 및 암호화서버(1300)로부터 데이터를 수신하고, 전자서명, 암호화 및 복호화에 대한 요청을 수신하여 전자서명을 수행하거나, 저장된 키데이터에 의하여 암호화 및 복호화를 수행할 수 있다.
이하에서는, 클라우드 시스템의 동작에 대하여 더욱 자세하게 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 클라우드 시스템의 제1단계 및 제2단계 수행 과정을 개략적으로 도시한다.
본 발명의 클라우드 시스템은, 데이터 전자서명 및 암호화 서비스를 제공할 수 있다. 개략적으로, 클라우드의 안전한 저장소 내에 인증서와 개인키를 발급하여 저장함으로써, 사용자가 인증서 및 개인키를 직접 소지 하지 않더라도 클라우드 환경에서 데이터 전자서명을 수행하고, 데이터의 암호화 및 복호화를 수행할 수 있다.
도 2는 클라우드 시스템의 전자서명 수행 및 발송데이터를 생성하는 과정을 도시한다. 구체적으로, 웹포탈서버(1100), 전자서명서버(1200), 암호화서버(1300), 및 키관리서버(1400)를 포함하는 클라우드 시스템에 의한 데이터 전자서명 및 암호화 방법은, 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하는 제1단계; 상기 키관리서버(1400)에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명이 수행되고, 상기 키관리서버(1400)에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하여, 상기 발송사용자의 단말기로 송신하는 제2단계; 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터 및 상기 수신사용자의 정보를 수신하는 제3단계; 및 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 상기 검증정보의 검증결과에 따라 상기 키관리서버(1400)에 저장된 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하고, 상기 전자서명된 원문데이터를 상기 수신사용자의 단말기로 송신하는 제4단계;를 포함한다.
구체적으로, 단계S100에서는, 발송사용자의 단말기에서 클라우드 시스템으로 원문데이터 및 수신자정보를 송신한다. 원문데이터는 발송사용자가 수신사용자에게 보내고자 하는 정보로서, 그 형태는 다양할 수 있다. 수신자정보는 발송사용자가 발송사용자단말기를 통해 입력하는 원문데이터를 보내고자 하는 수신자의 정보이다. 상기 S100단계는 상기 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하는 제1단계와 상응할 수 있다.
단계 S110에서는, 키관리서버(1400)에 저장된 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행한다. 클라우드 시스템은 전자서명을 수행함으로써 상기 발송사용자의 단말기로부터 수신한 원문데이터에 대한 전자서명데이터를 도출한다.
단계 S120에서는, 키관리서버(1400)에 저장된 암호화키에 의하여 수신한 원문데이터 및 도출한 전자서명데이터의 암호화를 수행하여 원문데이터에 대한 암호화전자서명데이터를 도출한다.
단계 S130에서는, 클라우드 시스템은, 수신자정보 및 암호화전자서명데이터에 대한 무결성을 검증하는 메시지무결성검증코드를 도출한다.
단계 S140에서는, 클라우드 시스템은 수신자정보, 암호화전자서명데이터 및 메시지무결성검증코드에 기초하여 발송데이터를 생성한다.
단계 S150에서는, 클라우드 시스템은, 생성한 발송데이터를 발송사용자의 단말기로 송신하고, 발송데이터를 수신한 발송사용자의 단말기는 발송데이터를 수신할 수신사용자의 단말기로 발송데이터를 송신하여 데이터 통신을 할 수 있다. 상기 S110 내지 S150단계는, 상기 제2단계에 상응할 수 있다.
이와 같이, 발송사용자는 발송사용자의 단말기에 발송사용자의 인증서 및 개인키를 소지할 필요 없이, 개인정보가 포함되어 있는 민감한 문서를 전자서명을 수행할 수 있고, 클라우드 환경에서 전자서명 및 암호화를 수행하여 암호화 및 복호화를 수행한 데이터를 개별적인 문서로 발송할 수 있는 효과를 발휘할 수 있다.
도 3은 본 발명의 일 실시예에 따른 클라우드 시스템의 제3단계 및 제4단계 수행 과정을 개략적으로 도시한다.
구체적으로, 도 3은 본 발명의 클라우드 시스템의 검증정보를 검증하는 과정 및 발송데이터의 복호화를 수행하는 과정을 도시한다.
S200단계에서는, 수신사용자의 단말기는 발송사용자의 단말기로부터 수신한 발송데이터 및 수신사용자의 정보를 클라우드 시스템으로 송신한다.
S210단계에서는, 상기 발송데이터에 포함된 수신자정보 및 메시지무결성검증코드를 포함하는 검증정보에 기초하여 사용자검증 및 메시지무결성검증을 포함하는 검증결과를 도출한다.
S220단계에서는, S210단계에서 도출한 검증정보의 검증결과에 따라, 전자서명된 원문데이터가 암호화된 암호화전자서명데이터를 복호화 한다.
S230단계에서는, 클라우드 시스템은, 암호화전자서명데이터를 복호화하여 도출된 전자서명된 원문데이터를 수신사용자의 단말기로 송신한다.
S240단계에서는, 수신사용자의 단말기는, 클라우드 시스템으로부터 전자서명된 원문데이터를 수신하여 열람할 수 있고, 전자서명에 대한 검증을 수행할 수 있다.
이와 같은 방식으로, 수신사용자의 단말기는, 수신사용자의 정보를 이용한 간단한 인증만으로, 클라우드 시스템의 키관리서버(1400)에 저장된 복호화키에 의하여 수신한 발송데이터에 대한 복호화를 수행하여 개인정보가 포함되어 있는 민감한 문서를 유출위험 없이 안전하게 확인할 수 있는 효과를 발휘할 수 있다.
본 발명의 다른 실시예에서는, 수신사용자의 단말기는 암호화된 암호화전자서명데이터의 복호화를 직접 수행하기 위해, 상기 클라우드 시스템으로부터 복호화키를 수신할 수 있다. 바람직하게는, 본 발명의 클라우드 시스템 및 수신사용자의 단말기는, 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하는 제1단계; 상기 키관리서버에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명이 수행되고, 상기 키관리서버(1400)에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하여, 상기 발송사용자의 단말기로 송신하는 제2단계; 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터, 상기 수신사용자의 정보 및 수신사용자의 공개키를 수신하는 제3단계; 및 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 상기 검증정보의 검증결과에 따라 상기 수신사용자의 공개키에 의하여 상기 키관리서버(1400)에 저장된 복호화키를 암호화한 암호화키데이터를 도출하고, 상기 암호화키데이터를 수신사용자의 단말기로 송신하는 제4단계; 및 수신사용자의 단말기에 의하여, 수신사용자의 개인키에 의하여 상기 암호화키데이터로부터 복호화키를 복호화하고, 상기 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하는 제5단계;를 수행할 수 있다.
본 발명의 다른 실시예에서는, 상술한 바와 같은 제1단계 내지 제2단계의 수행 후, 클라우드 시스템(1000)은, 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터, 상기 수신사용자의 정보 및 상기 수신사용자의 공개키를 수신하는 제 3단계를 수행한다.
이후, 제4단계에서는, 암호화서버(1200)는 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 키관리서버(1400)는 상기 검증정보의 검증결과가 검증으로 도출되는 경우, 키관리서버(1400)에 저장된 복호화키를 수신사용자의 공개키에 의하여 암호화를 수행하여 암호화키데이터를 도출한다. 이후, 도출된 암호화키데이터는 암호화서버(1200)로 송신되고, 암호화서버(1200)는 수신한 암호화키데이터를 웹포탈서버로 송신한다. 이후, 웹포탈서버(1100)에 의하여 수신사용자의 단말기로 송신된다.
제5단계에서는, 수신사용자의 단말기는 수신사용자의 개인키에 의하여 웹포탈서버(1100)로부터 수신한 암호화키데이터를 복호화하여 복호화키를 도출한다. 이후, 암호화키데이터로부터 복호화된 복호화키에 의하여 발송데이터에 포함된 암호화전자서명데이터의 복호화를 수행하여, 전자서명된 원문데이터를 도출할 수 있다. 바람직하게는, 상기 수신사용자의 공개키 및 개인키는 트랙잭션에 따라 일회성으로 생성되어 사용 후 폐기될 수 있다.이와 같이 웹포탈서버(1100)로부터 수신사용자의 공개키로 암호화된 복호화키인 암호화키데이터를 수신한 수신사용자의 단말기는, 수신한 암호화키데이터를 수신사용자의 개인키로 복호화하여 복호화키를 도출하고, 복호화키에 의하여 발송데이터에 포함된 암호화전자서명데이터의 복호화를 직접 수행할 수 있다.
도 4는 본 발명의 일 실시예에 따른 클라우드 시스템의 전자서명 과정의 단계들을 개략적으로 도시한다.
전자서명을 수행하기 위해서는, 전자서명을 하고자 하는 주체의 인증서 및 개인키가 필요하다. 본 발명에서, 전자서명 수행에 필요한 인증서 및 개인키는 클라우드 시스템의 키관리서버(1400)에 저장되어 키관리서버(1400)에 의하여 전자서명 수행된다. 본 발명의 클라우드 시스템은, 상기 키관리서버(1400)에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명이 수행되고, 상기 키관리서버(1400)에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하여, 상기 발송사용자의 단말기로 송신하는 제2단계;를 수행하고, 상기 제2단계는, 전자서명단계를 포함하고, 상기 전자서명단계는, 상기 제2단계는, 전자서명단계를 포함하고, 상기 전자서명단계는, 상기 전자서명서버(1200)에 의하여, 상기 웹포탈서버(1100)로부터 상기 원문데이터를 수신하는 단계(S111); 상기 키관리서버(1400)에 의하여, 상기 전자서명서버(1200)로부터 상기 원문데이터를 수신하는 단계(S112);상기 키관리서버(1400)에 의하여, 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행하여 전자서명데이터를 도출하는 단계(S113); 상기 전자서명서버(1200)에 의하여, 상기 키관리서버(1400)로부터 상기 전자서명데이터를 수신하는 단계(S114); 및 상기 웹포탈서버(1100)에 의하여, 상기 전자서명서버(1200)로부터 상기 전자서명데이터를 수신하는 단계(S115);를 포함하고, 상기 키관리서버(1400)는 상기 전자서명서버(1200)와 접속될 수 있고, 상기 웹포탈서버(1100)와는 접속되지 않는다.
구체적으로 S111단계에서는, 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신한 웹포탈서버(1100)는 전자서명서버(1200)로 원문데이터를 송신한다.
S112단계에서는, 전자서명서버(1200)는, 웹포탈서버(1100)로부터 수신한 원문데이터를 키관리서버(1400)로 송신하여 원문데이터에 전자서명을 요청한다.
S113단계에서는, 키관리서버(1400)는 전자서명서버(1200)로부터 수신한 원문데이터를 키관리서버(1400)에 저장된 인증서 및 개인키에 의하여 전자서명을 수행하여 전자서명데이터를 도출한다. 저장된 인증서에는 발송사용자에 대한 식별정보, 발송사용자의 공개키, 인증서의 일련번호, 및 인증기관 정보, 인증기관의 서명 등을 포함할 수 있다. 일 예로, 키관리서버(1400)는 발송사용자의 공개키가 포함된 인증서를 개인키로 암호화하여 전자서명을 수행할 수 있다. 또는, 원문데이터의 해쉬값을 도출하여 개인키로 암호화하여 전자서명을 수행할 수도 있다. 이와 같이, 키관리서버(1400)가 수행할 수 있는 전자서명은, 인증서 및 개인키를 사용하는 방법이라면 일 예에 한정되지 않고, 다양한 형태로 수행될 수 있다.
S114단계에서는, 키관리서버(1400)는, 도출한 전자서명데이터를 전자서명서버(1200)로 송신한다.
S115단계에서는, 전자서명서버(1200)는, 키관리서버(1400)로부터 수신한 전자서명데이터를 웹포탈서버(1100)로 송신한다. 이와 같이, 키관리서버(1400)의 전자서명 수행에 의하여 도출된 전자서명데이터는 전자서명서버(1200)를 통하여 웹포탈서버(1100)에 송신된다. 바람직하게는, 키관리서버(1400)는, 전자서명서버(1200)와 접속될 수 있고, 웹포탈서버(1100)와는 접속되지 않는다. 이를 통해, 복수의 사용자의 단말기와 통신하는 웹포탈서버(1100)가 인증서 및 개인키와 같은 개인정보를 저장하고 있는 키관리서버(1400)와 직접 통신하지 않는 형태의 시스템에서 전자서명이 수행됨으로써, 데이터 통신의 보안성을 강화시킬 수 있는 효과를 발휘할 수 있다.
도 5는 본 발명의 일 실시예에 따른 클라우드 시스템의 발송데이터의 생성 및 송신 과정의 단계들을 개략적으로 도시한다.
본 발명의 클라우드 시스템은, 상기 키관리서버(1400)에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명이 수행되고, 상기 키관리서버(1400)에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하여, 상기 발송사용자의 단말기로 송신하는 제2단계;를 수행하고, 상기 제2단계는, 발송데이터생성단계를 포함하고, 상기 발송데이터생성단계는, 상기 원문데이터 및 상기 전자서명의 수행에 의하여 도출된 전자서명데이터의 암호화를 수행하여 상기 암호화전자서명데이터를 도출하는 단계(S320); 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출하는 단계(S340); 상기 수신자정보, 상기 암호화전자서명데이터, 및 상기 메시지무결성검증코드에 기초하여 발송데이터를 생성하여 상기 발송사용자의 단말기로 송신하는 단계(S350 및 S360);를 포함한다.
구체적으로, 단계S300에서는, 웹포탈서버(1100)는 발송사용자의 단말기로부터 수신한 원문데이터, 수신자정보 및 전자서명서버(1200)로부터 수신한 전자서명데이터를 암호화서버(1300)로 송신한다.
단계S310에서는, 암호화서버(1300)는 웹포탈서버(1100)로부터 수신한 원문데이터 및 전자서명데이터를 키관리서버(1400)로 송신한다.
단계S320에서는, 키관리서버(1400)는, 암호화서버(1300)로부터 수신한 원문데이터 및 전자서명데이터에 기초하여 키관리서버(1400)에 저장된 암호화키에 의하여 암호화전자서명데이터를 도출한다. 원문데이터에 대한 암호화를 수행하는 암호화키는 바람직하게는, 대칭키이다. 그러나, 암호화키는 대칭키에 한정되지 않고 상황에 따라 발송사용자의 개인키 및 공개키를 포함하는 비대칭키에 의하여 암호화를 수행할 수도 있다.
단계S330에서는, 상기 키관리서버(1400)는 S320단계에서 원문데이터 및 전자서명데이터의 암호화를 수행하여 도출한 암호화전자서명데이터를 암호화서버(1300)로 송신한다.
단계S340에서는, 상기 암호화서버(1300)는 웹포탈서버(1100)로부터 수신한 수신자정보 및 키관리서버(1400)로부터 수신한 암호화전자서명데이터에 대한 무결성을 검증하기 위한 메시지무결성검증코드를 도출한다. 본 발명의 일 실시예에서는, 암호화서버(1300)는 MAC(Message Authentication Code) 알고리즘을 이용하여 메시지무결성검증코드를 도출할 수 있다. 상기 암호화서버(1300)는 키관리서버(1400)에 저장된 암호화키에 의하여 상기 메시지무결성검증코드를 도출하고, 상기 암호화키는 대칭키이다. 본 발명의 다른 실시예에서는, 상기 수신자정보 및 암호화전자서명데이터의 해쉬값을 도출하여 해쉬값을 발송사용자의 개인키에 의하여 암호화를 수행하여 이를 메시지무결성검증코드로 사용할 수도 있다. 상기 메시지무결성검증코드는 암호화서버(1300)에 의하여 생성되고, 상기 암호화전자서명데이터는 키관리서버(1400)에 의하여 데이터의 암호화가 수행되어 생성된다.
단계S350에서는, 암호화서버(1300)는 수신자정보, 암호화전자서명데이터 및 메시지무결검증코드에 기초하여 발송데이터를 생성한다. 이와 같이 생성된 발송데이터는, 수신자정보, 암호화전자서명데이터 및 상기 수신자정보 및 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 포함한다.
단계S360에서는, 암호화서버(1300)는 생성한 발송데이터를 웹포탈서버(1100)로 송신한다.
이와 같은 방식으로, 클라우드 시스템의 키관리서버(1400)에 저장된 암호화키에 의하여 암호화를 수행하고, 발송데이터를 생성하여 발송사용자의 단말기로 송신함으로써, 발송사용자는 자신의 단말기에 개인키를 소지하지 않더라도 암호화를 할 수 있는 효과를 발휘할 수 있다.
또한, 클라우드 시스템에서 암호화를 수행함으로써, 사용자의 단말기에 Plug in과 같은 설치형 솔루션의 설치가 불필요 하게 되어, 설치형 솔루션의 도입 및 운영에 대한 투자 비용을 절감할 수 있는 효과를 발휘할 수 있다.
본 발명의 다른 실시예에서는, 발송사용자의 단말기는 클라우드 시스템으로 원문데이터를 송신함에 있어서, 암호화키의 전송을 요청할 수 있다. 클라우드 시스템은, 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하는 제1단계에서, 암호화키의 전송요청을 더 수신할 수 있다. 이 후, 웹포탈서버(1100)는 암호화키의 전송요청 및 원문데이터를 상기 전자서명서버(1200)로 송신하는 단계; 상기 전자서명서버(1200)는 수신한 상기 원문데이터 및 암호화키의 전송요청을 키관리서버(1400)로 송신하는 단계; 상기 키관리서버(1400)에서 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행하여 전자서명데이터를 도출하는 단계; 상기 키관리서버(1400)에서 상기 전자서명서버(1200)로 상기 전자서명데이터 및 암호화키를 송신하는 단계; 및 상기 전자서명서버(1200)가 상기 웹포탈서버(1100)로 상기 전자서명데이터 및 암호화키를 송신하는 단계;를 포함하는 제2전자서명단계를 수행한다. 이 후, 웹포탈서버(1100)는 전자서명데이터 및 암호화키를 발송사용자의 단말기로 송신하고, 상기 전자서명데이터 및 암호화키를 수신한 발송사용자의 단말기는, 웹포탈서버(1100)로부터 수신한 암호화키에 의하여 원문데이터 및 전자서명데이터의 암호화를 수행하여 암호화전자서명데이터를 도출하고, 수신자정보 및 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출하여 발송데이터를 생성할 수 있다. 이와 같이, 본 발명의 다른 실시예에서는, 발송사용자는 클라우드 시스템에서 발송사용자의 단말기를 통해 클라우드 시스템으로부터 암호화키를 제공 받아 발송사용자의 단말기에서 직접 암호화를 수행할 수 있는 효과를 발휘할 수 있다.
도 6은 본 발명의 일 실시예에 따른 발송사용자의 단말기로부터 수신한 정보의 처리과정을 개략적으로 도시한다.
구체적으로, 도 6은 클라우드 시스템에서 전자서명 및 암호화를 수행하는 과정에서 정보의 처리과정을 도시한다.
도 6의 (a)에 도시된 바와 같이, 발송사용자의 단말기는 원문데이터 및 수신자정보를 웹포탈서버(1100)로 송신한다. 웹포탈서버(1100)는 수신한 원문데이터를 전자서명서버(1200)로 송신하고, 전자서명서버(1200)는 수신한 원문데이터를 키관리서버(1400)로 송신한다. 키관리서버(1400)는 저장된 인증서 및 개인키에 의하여 수신한 원문데이터에 대한 전자서명을 수행하여 전자서명데이터를 도출한다. 도출된 전자서명데이터를 키관리서버(1400)는 전자서명서버(1200)로 송신하고, 전자서명서버(1200)는 전자서명데이터를 웹포탈서버(1100)로 송신한다.
이후, 도 6의 (b)에 도시된 바와 같이, 웹포탈서버(1100)는 발송사용자의 단말기로부터 수신한 원문데이터, 수신자정보 및 키관리서버(1400)로부터 수신한 전자서명데이터를 암호화서버(1300)로 송신한다. 암호화서버(1300)는, 웹포탈서버(1100)로부터 수신한 원문데이터 및 전자서명데이터를 키관리서버(1400)로 송신하고, 키관리서버(1400)는, 저장된 암호화키에 의하여 수신한 원문데이터 및 전자서명데이터의 암호화를 수행하여 암호화전자서명데이터를 도출한다.
이후, 도 6의 (c)에 도시된 바와 같이, 키관리서버(1400)는 도출한 암호화전자서명데이터를 암호화서버(1300)로 송신하고, 암호화서버(1300)는, 웹포탈서버(1100)로부터 수신한 수신자정보 및 키관리서버(1400)로부터 수신한 암호화전자서명데이터의 무결성을 검증하는 메시지무결성검증코드를 도출하는 알고리즘에 기초하여 메시지무결성검증코드를 도출한다.
이후, 도 6의 (d)에 도시된 바와 같이, 암호화서버(1300)는 수신자정보, 암호화전자서명데이터, 및 도출한 메시지무결성검증코드에 기초하여 발송데이터를 생성한다.
이와 같이, 발송사용자의 단말기 및 수신사용자의 단말기에는 인증서, 개인키, 암호화키, 복호화키와 같은 정보보안에 있어서 민감한 개인정보를 저장하고 있지 않더라도, 데이터에 대한 전자서명 및 데이터에 대한 암호화 및 복호화가 클라우드 시스템에서 이루어짐으로써, 개인정보의 유출위험을 방지할 수 있고 송수신데이터에 대한 보안성을 더욱 강화시킬 수 있는 효과를 발휘할 수 있다.
도 7은 본 발명의 일 실시예에 따른 발송데이터의 형태를 개략적으로 도시한다.
본 발명의 클라우드시스템의 암호화서버(1300)가 생성하는 발송데이터는 도 7에 도시된 바와 같이 수신자정보, 암호화전자서명데이터 및 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 포함한다.
수신자정보는, 발송사용자의 단말기를 통해 입력된 발송데이터를 수신할 수신사용자에 대한 정보를 의미한다.
암호화전자서명데이터는, 발송사용자의 단말기에서 송신한 원문데이터의 전자서명을 수행하여 도출된 전자서명데이터 및 원문데이터를 키관리서버(1400)에 저장된 암호화키에 의하여 암호화를 수행하여 도출한 데이터를 의미한다. 상기 암호화전자서명데이터는 암호화 된 형태로 발송데이터에 포함되어 송신되기 때문에, 개인정보가 포함되어 있는 민감한 문서도 유출의 위험성 없이 송신할 수 있는 효과를 발휘할 수 있다.
메시지무결성검증코드는 상기 수신자정보 및 암호화전자서명데이터에 대한 무결성을 검증하기 위한 코드로서, 암호화서버(1300)는 MAC(Message Authentication Code) 알고리즘을 이용하여 메시지무결성검증코드를 도출할 수 있다. 상기 암호화서버(1300)는 키관리서버(1400)에 저장된 암호화키에 의하여 상기 메시지무결성검증코드를 도출하고, 상기 암호화키는 대칭키이다.
혹은, 상기 수신자정보 및 암호화전자서명데이터의 해쉬값을 도출하여 해쉬값을 발송사용자의 개인키에 의하여 암호화를 수행하여 이를 메시지무결성검증코드로 사용할 수도 있다. 상기 메시지무결성검증코드는 암호화서버(1300)에 의하여 생성되고, 상기 암호화전자서명데이터는 키관리서버(1400)에 의하여 데이터의 암호화가 수행되어 생성된다. 이러한 메시지무결성검증코드는 수신 측에서 메시지무결성검증코드의 복호화를 수행하고, 상기 수신자정보 및 암호화전자서명데이터의 해쉬값을 도출하여 메시지무결성검증코드를 복호화 한 값과 비교하여 동일한 경우, 메시지의 무결성을 검증할 수 있다. 이후, 발송데이터의 암호화 된 전자서명된 원문데이터인 암호화전자서명데이터를 확인하기 위해서 메시지무결성검증코드를 검증하여, 상기 수신자정보 및 암호화전자서명데이터의 무결성이 검증되면, 암호화전자서명데이터의 복호화를 진행할 수 있다. 이와 같은 발송데이터는 클라우드 시스템 내에서 수신자정보, 암호화전자서명데이터, 및 메시지무결성검증코드로 분리 혹은 결합된 형태로 통신이 수행될 수 있다.
도 8은 본 발명의 일 실시예에 따른 클라우드 시스템의 복호화 과정의 단계들을 개략적으로 도시한다.
본 발명의 클라우드 시스템은, 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 상기 검증정보의 검증결과에 따라 상기 키관리서버(1400)에 저장된 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하고, 상기 전자서명된 원문데이터를 상기 수신사용자의 단말기로 송신하는 제4단계;를 수행하고, 상기 제4단계는, 상기 암호화서버(1300)에 의하여, 상기 웹포탈서버(1100)로부터 상기 수신사용자의 정보 및 상기 발송데이터를 수신하는 단계(S400); 상기 암호화서버(1300)에 의하여, 상기 검증정보의 검증결과를 도출하는 검증단계(S410 및 S420); 상기 암호화서버(1300)에 의하여, 상기 검증결과에 따라 상기 암호화서버(1300)에서 상기 암호화전자서명데이터를 상기 키관리서버(1400)로 송신하는 단계(S430); 상기 키관리서버(1400)에 의하여, 상기 키관리서버(1400)에 저장된 복호화키에 의하여 상기 암호화전자서명데이터의 복호화를 수행하는 복호화단계(S440); 상기 암호화서버(1300)에 의하여, 상기 키관리서버(1400)로부터 복호화된 상기 전자서명된 원문데이터를 수신하는 단계(S450); 상기 웹포탈서버(1100)에 의하여, 상기 암호화서버(1300)로부터 상기 전자서명된 원문데이터를 수신하는 단계(S460);를 포함하고, 상기 키관리서버(1400)는 상기 전자서명서버(1200)와 접속될 수 있고, 상기 웹포탈서버(1100)와는 접속되지 않는다.
구체적으로, S400단계에서는, 웹포탈서버(1100)는, 수신사용자의 단말기로부터 수신한 수신사용자의 정보 및 발송데이터를 암호화서버(1300)로 송신한다.
S410단계에서는, 암호화서버(1300)는 웹포탈서버(1100)로부터 수신한 수신사용자의 정보 및 발송데이터에 포함된 수신자정보의 일치여부에 기초하여 사용자검증결과를 도출한다. 수신사용자의 정보 및 수신자정보가 일치하는 경우, 검증으로 사용자검증결과를 도출하고, 수신사용자의 정보 및 수신자정보가 일치하지 않는 경우, 검증불가로 사용자검증결과가 도출된다.
S420단계에서는, 암호화서버(1300)는 사용자검증이 완료된 발송데이터에 포함된 수신자정보 및 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출한다. 이후, 발송데이터가 포함하는 검증정보에 포함된 메시지무결성검증코드와 암호화서버(1300)에서 직접 도출한 메시지무결성검증코드의 일치여부를 판별하여 메시지무결성검증결과를 도출한다. 바람직하게는, 검증정보는, 상기 수신자정보, 상기 수신사용자의 정보, 및 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 포함한다.
암호화서버(1300)에서 직접 도출한 메시지무결성검증코드와 상기 발송데이터에 포함된 메시지무결성검증코드가 일치하는 경우, 수신한 수신자정보 및 암호화전자서명데이터에 대한 메시지무결성검증결과를 검증으로 도출하고, 각각의 메시지무결성검증코드가 일치하지 않는 경우, 수신자정보 및 암호화전자서명데이터에 대한 메시지무결성검증결과를 검증불가로 도출한다.
S430단계에서는, 암호화서버(1300)는, 사용자검증결과 및 메시지무결성검증결과가 검증으로 도출되는 경우, 웹포탈서버(1100)로부터 수신한 발송데이터에 포함된 암호화전자서명데이터를 키관리서버(1400)로 송신한다.
S440단계에서는, 키관리서버(1400)는 저장된 복호화키에 의하여 암호화전자서명데이터에 대한 복호화를 수행하여 복호화 된 전자서명된 원문데이터를 도출한다.
S450단계에서는, 키관리서버(1400)는 복호화 된 전자서명된 원문데이터를 암호화서버(1300)로 송신한다.
S460단계에서는, 암호화서버(1300)는, 키관리서버(1400)로부터 수신한 복호화 된 전자서명된 원문데이터를 웹포털서버로 송신한다. 이와 같이, 키관리서버(1400)에서 복호화 된 전자서명된 원문데이터는 암호화서버(1300)를 통하여 웹포탈서버(1100)에 송신된다. 바람직하게는, 키관리서버(1400)는, 암호화서버(1300)와 접속될 수 있고, 웹포탈서버(1100)와는 접속되지 않는다.
이와 같이, 사용자검증 및 메시지무결성검증을 포함하는 발송데이터에 대한 검증단계을 수행하고, 검증단계의 수행을 통해 검증된 경우에만 수신한 발송데이터에 대한 복호화를 진행함으로써, 데이터 보안성을 향상시킬 수 있고, 복호화를 클라우드 시스템에서 수행함으로써, 수신사용자는 자신의 단말기에 복호화키를 소지하지 않더라도 복호화를 할 수 있는 효과를 발휘할 수 있다.
도 9는 본 발명의 일 실시예에 따른 암호화서버(1300)의 메시지 무결성 검증 과정을 개략적으로 도시한다.
도 9에 도시된 바와 같이, 암호화서버(1300)는 웹포탈서버(1100)로부터 수신한 발송데이터에서 메시지무결성검증코드를 분리한다. 이후, 암호화서버(1300)는, 수신자정보 및 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 직접 도출한다. 이후, 발송데이터에서 분리한 메시지무결성검증코드와 직접 도출한 메시지무결성검증코드를의 일치여부에 기초하여 메시지무결성검증결과를 도출한다. 비교한 2개의 메시지무결성검증코드가 일치하는 경우, 검증으로 메시지무결성검증결과를 도출하고, 2개의 메시지무결성검증코드가 일치하지 않는 경우, 수신한 수신자정보 및 암호화전자서명데이터의 위/변조가 이루어 진 것으로 판단하여 메시지무결성검증결과를 검증불가로 도출한다.
이와 같이, 메시지무결성검증을 수행함으로써, 발송데이터에 포함된 수신자정보 및 암호화전자서명데이터의 위/변조 여부를 검증할 수 있는 효과를 발휘할 수 있다.
도 10은 본 발명의 일 실시예에 따른 수신사용자 단말기로부터 수신한 정보의 처리과정을 개략적으로 도시한다.
구체적으로, 도 10은 클라우드 시스템에서 복호화를 수행하는 과정에서 정보의 처리과정을 도시한다.
도 10에 도시된 바와 같이, 수신사용자의 단말기는, 발송데이터 및 수신사용자의 정보를 웹포탈서버(1100)로 송신한다. 웹포탈서버(1100)는 수신한 발송데이터 및 수신사용자의 정보를 암호화서버(1300)로 송신하고, 암호화서버(1300)는 발송데이터에 포함된 검증정보를 검증하고, 검증한 검증결과에 따라, 발송데이터에 포함된 암호화전자서명데이터를 키관리서버(1400)로 송신한다. 이후, 키관리서버(1400)는 저장된 복호화키에 의하여 수신한 암호화전자서명데이터를 복호화하여 전자서명 된 원문데이터를 도출한다. 이와 같이 복호화를 수행하여 도출된 전자서명 된 원문데이터를 키관리서버(1400)는 암호화서버(1300)로 송신하고, 암호화서버(1300)는 전자서명 된 원문데이터를 웹포탈서버(1100)로 송신한다. 웹포탈서버(1100)는 수신한 전자서명 된 원문데이터를 수신사용자의 단말기로 송신하고, 수신사용자의 단말기는 원문데이터를 확인하고, 전자서명에 대한 검증을 수행할 수 있다. 이와 같이 클라우드 환경에 복호화를 수행하여, 수신사용자의 단말기에 복호화키를 소지하지 않고, 설치형 솔루션을 설치할 필요 없이 복호화를 수행할 수 있는 효과를 발휘할 수 있다.
도 11은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 내부구성을 개략적으로 도시한다.
도 1에 도시된 구성요소 전체 혹은 일부는 후술하는 컴퓨팅장치의 구성요소를 포함할 수 있다.
도 11에 도시한 바와 같이, 컴퓨팅 장치(11000)은 적어도 하나의 프로세서(processor)(11100), 메모리(memory)(11200), 주변장치 인터페이스(peripheral interface)(11300), 입/출력 서브시스템(I/Osubsystem)(11400), 전력 회로(11500) 및 통신 회로(11600)를 적어도 포함할 수 있다.
메모리(11200)는, 일례로 고속 랜덤 액세스 메모리(high-speed random access memory), 자기 디스크, 에스램(SRAM), 디램(DRAM), 롬(ROM), 플래시 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(11200)는 컴퓨팅 장치(11000)의 동작에 필요한 소프트웨어 모듈, 명령어 집합 또는 그밖에 다양한 데이터를 포함할 수 있다.
이때, 프로세서(11100)나 주변장치 인터페이스(11300) 등의 다른 컴포넌트에서 메모리(11200)에 액세스하는 것은 프로세서(11100)에 의해 제어될 수 있다. 상기 프로세서(11100)은 단일 혹은 복수로 구성될 수 있고, 연산처리속도 향상을 위하여 GPU 및 TPU 형태의 프로세서를 포함할 수 있다.
주변장치 인터페이스(11300)는 컴퓨팅 장치(11000)의 입력 및/또는 출력 주변장치를 프로세서(11100) 및 메모리 (11200)에 결합시킬 수 있다. 프로세서(11100)는 메모리(11200)에 저장된 소프트웨어 모듈 또는 명령어 집합을 실행하여 컴퓨팅 장치(11000)을 위한 다양한 기능을 수행하고 데이터를 처리할 수 있다.
입/출력 서브시스템(11400)은 다양한 입/출력 주변장치들을 주변장치 인터페이스(11300)에 결합시킬 수 있다. 예를 들어, 입/출력 서브시스템(11400)은 모니터나 키보드, 마우스, 프린터 또는 필요에 따라 터치스크린이나 센서등의 주변장치를 주변장치 인터페이스(11300)에 결합시키기 위한 컨트롤러를 포함할 수 있다. 다른 측면에 따르면, 입/출력 주변장치들은 입/출력 서브시스템(11400)을 거치지 않고 주변장치 인터페이스(11300)에 결합될 수도 있다.
전력 회로(11500)는 단말기의 컴포넌트의 전부 또는 일부로 전력을 공급할 수 있다. 예를 들어 전력 회로(11500)는 전력 관리 시스템, 배터리나 교류(AC) 등과 같은 하나 이상의 전원, 충전 시스템, 전력 실패 감지 회로(power failure detection circuit), 전력 변환기나 인버터, 전력 상태 표시자 또는 전력 생성, 관리, 분배를 위한 임의의 다른 컴포넌트들을 포함할 수 있다.
통신 회로(11600)는 적어도 하나의 외부 포트를 이용하여 다른 컴퓨팅 장치와 통신을 가능하게 할 수 있다.
또는 상술한 바와 같이 필요에 따라 통신 회로(11600)는 RF 회로를 포함하여 전자기 신호(electromagnetic signal)라고도 알려진 RF 신호를 송수신함으로써, 다른 컴퓨팅 장치와 통신을 가능하게 할 수도 있다.
이러한 도 11의 실시예는, 컴퓨팅 장치(11000)의 일례일 뿐이고, 컴퓨팅 장치(11000)은 도 11에 도시된 일부 컴포넌트가 생략되거나, 도 11에 도시되지 않은 추가의 컴포넌트를 더 구비하거나, 2개 이상의 컴포넌트를 결합시키는 구성 또는 배치를 가질 수 있다. 예를 들어, 모바일 환경의 통신 단말을 위한 컴퓨팅 장치는 도 11에 도시된 컴포넌트들 외에도, 터치스크린이나 센서 등을 더 포함할 수도 있으며, 통신 회로(1160)에 다양한 통신방식(WiFi, 3G, LTE, Bluetooth, NFC, Zigbee 등)의 RF 통신을 위한 회로가 포함될 수도 있다. 컴퓨팅 장치(11000)에 포함 가능한 컴포넌트들은 하나 이상의 신호 처리 또는 어플리케이션에 특화된 집적 회로를 포함하는 하드웨어, 소프트웨어, 또는 하드웨어 및 소프트웨어 양자의 조합으로 구현될 수 있다.
본 발명의 실시예에 따른 방법들은 다양한 컴퓨팅 장치를 통하여 수행될 수 있는 프로그램 명령(instruction) 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 특히, 본 실시예에 따른 프로그램은 PC 기반의 프로그램 또는 모바일 단말 전용의 어플리케이션으로 구성될 수 있다. 본 발명이 적용되는 애플리케이션은 파일 배포 시스템이 제공하는 파일을 통해 이용자 단말에 설치될 수 있다. 일 예로, 파일 배포 시스템은 이용자 단말이기의 요청에 따라 상기 파일을 전송하는 파일 전송부(미도시)를 포함할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로 (collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨팅 장치 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (9)

  1. 웹포탈서버, 전자서명서버, 암호화서버, 및 키관리서버를 포함하는 클라우드 시스템에 의한 데이터 전자서명 및 암호화 방법으로서,
    상기 키관리서버는, 상기 전자서명서버와 접속될 수 있고, 상기 웹포탈서버와는 접속되지 않고,
    발송사용자의 단말기 및 수신사용자의 단말기는 상기 웹포탈서버와만 통신할 수 있고,
    상기 키관리서버는, 상기 전자서명서버의 전자서명요청에 의해서만 전자서명을 수행하고,
    상기 키관리서버는, 상기 암호화서버의 암호화요청에 의해서만 데이터의 암호화를 수행하고,
    상기 키관리서버는, 전자서명을 수행하기 위한 인증서 및 개인키, 공개키, 암호화키, 및 복호화키 중 1 이상을 포함하는 키데이터를 저장하고 있고,
    상기 클라우드 시스템은,
    상기 웹포탈서버에 의하여, 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하는 제1단계;
    상기 키관리서버에 의하여, 상기 키관리서버에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명이 수행되고, 상기 암호화서버에 의하여, 상기 키관리서버에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하고, 상기 웹포탈서버에 의하여, 상기 발송사용자의 단말기로 송신하는 제2단계;
    상기 웹포탈서버에 의하여, 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터 및 상기 수신사용자의 정보를 수신하는 제3단계; 및
    상기 암호화서버에 의하여, 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 상기 키관리서버에 의하여, 상기 검증정보의 검증결과에 따라 상기 키관리서버에 저장된 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하고, 상기 웹포탈서버에 의하여, 상기 전자서명된 원문데이터를 상기 수신사용자의 단말기로 송신하는 제4단계;를 포함하고,
    상기 제2단계는, 전자서명단계를 포함하고,
    상기 전자서명단계는,
    상기 전자서명서버에 의하여, 상기 웹포탈서버로부터 상기 원문데이터를 수신하는 단계;
    상기 키관리서버에 의하여, 상기 전자서명서버로부터 상기 원문데이터를 수신하는 단계;
    상기 키관리서버에 의하여, 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행하여 전자서명데이터를 도출하는 단계; 및
    상기 전자서명서버에 의하여, 상기 키관리서버로부터 상기 전자서명데이터를 수신하는 단계;를 포함하고,
    상기 제2단계는, 발송데이터생성단계를 포함하고,
    상기 발송데이터생성단계는,
    상기 키관리서버에 의하여, 상기 원문데이터 및 상기 전자서명의 수행에 의하여 도출된 전자서명데이터의 암호화를 수행하여 상기 암호화전자서명데이터를 도출하는 단계;
    상기 암호화서버에 의하여, 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출하는 단계;
    상기 암호화서버에 의하여, 상기 수신자정보, 상기 암호화전자서명데이터, 및 상기 메시지무결성검증코드에 기초하여 발송데이터를 생성하여 상기 발송사용자의 단말기로 송신하는 단계;를 포함하는, 데이터 전자서명 및 암호화 방법.
  2. 삭제
  3. 삭제
  4. 청구항 1에 있어서,
    상기 발송데이터는,
    상기 수신자정보;
    상기 암호화전자서명데이터; 및
    상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 포함하는, 데이터 전자서명 및 암호화 방법.
  5. 청구항 1에 있어서,
    상기 제4단계는,
    상기 암호화서버에 의하여, 상기 웹포탈서버로부터 상기 수신사용자의 정보 및 상기 발송데이터를 수신하는 단계;
    상기 암호화서버에 의하여, 상기 검증정보의 검증결과를 도출하는 검증단계;
    상기 암호화서버에 의하여, 상기 검증결과에 따라 상기 암호화서버에서 상기 암호화전자서명데이터를 상기 키관리서버로 송신하는 단계;
    상기 키관리서버에 의하여, 상기 암호화전자서명데이터의 복호화를 수행하는 복호화단계;
    상기 암호화서버에 의하여, 상기 키관리서버로부터 복호화된 상기 전자서명된 원문데이터를 수신하는 단계; 및
    상기 웹포탈서버에 의하여, 상기 암호화서버로부터 상기 전자서명된 원문데이터를 수신하는 단계;를 포함하고,
    상기 키관리서버는 상기 전자서명서버와 접속될 수 있고, 상기 웹포탈서버와는 접속되지 않는, 데이터 전자서명 및 암호화 방법.
  6. 청구항 1에 있어서,
    상기 제4단계는, 검증단계를 포함하고,
    상기 검증단계는,
    상기 암호화서버에 의하여, 상기 수신사용자의 정보 및 상기 수신자정보의 일치여부에 기초하여 사용자검증결과를 도출하는 사용자검증단계; 및
    상기 암호화서버에 의하여, 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출하고, 상기 검증정보에 포함된 메시지무결성검증코드의 일치여부에 기초하여 메시지무결성검증결과를 도출하는 메시지무결성검증단계;를 포함하는, 데이터 전자서명 및 암호화 방법.
  7. 청구항 6에 있어서,
    상기 제4단계는, 복호화단계를 포함하고,
    상기 복호화단계는,
    상기 암호화서버에 의하여, 상기 사용자검증결과 및 상기 메시지무결성검증결과가 검증으로 도출되는 경우, 상기 키관리서버에 의하여, 상기 키관리서버에 저장된 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하는, 데이터 전자서명 및 암호화 방법.
  8. 웹포탈서버, 전자서명서버, 암호화서버, 및 키관리서버를 포함하고, 데이터 전자서명 및 암호화를 수행하기 위한 클라우드 시스템으로서,
    상기 키관리서버는, 상기 전자서명서버와 접속될 수 있고, 상기 웹포탈서버와는 접속되지 않고,
    발송사용자의 단말기 및 수신사용자의 단말기는 상기 웹포탈서버와만 통신할 수 있고,
    상기 키관리서버는, 상기 전자서명서버의 전자서명요청에 의해서만 전자서명을 수행하고,
    상기 키관리서버는, 상기 암호화서버의 암호화요청에 의해서만 데이터의 암호화를 수행하고,
    상기 키관리서버는, 전자서명을 수행하기 위한 인증서 및 개인키, 공개키, 암호화키, 및 복호화키 중 1 이상을 포함하는 키데이터를 저장하고 있고,
    상기 웹포탈서버는 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하고,
    상기 키관리서버는 상기 키관리서버에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행하고,
    상기 전자서명을 수행함에 있어서,
    상기 전자서명서버는 상기 웹포탈서버로부터 상기 원문데이터를 수신하고,
    상기 키관리서버에 의하여, 상기 전자서명서버로부터 상기 원문데이터를 수신하고,
    상기 키관리서버에 의하여, 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행하여 전자서명데이터를 도출하고,
    상기 전자서명서버에 의하여, 상기 키관리서버로부터 상기 전자서명데이터를 수신하고,
    상기 암호화서버는 상기 키관리서버에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하고,
    상기 발송데이터를 생성함에 있어서,
    상기 키관리서버는, 상기 원문데이터 및 상기 전자서명의 수행에 의하여 도출된 전자서명데이터의 암호화를 수행하여 상기 암호화전자서명데이터를 도출하고,
    상기 암호화서버는, 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출하고,
    상기 암호화서버는, 상기 수신자정보, 상기 암호화전자서명데이터, 및 상기 메시지무결성검증코드에 기초하여 발송데이터를 생성하고,
    상기 웹포탈서버는 상기 발송데이터를 상기 발송사용자의 단말기로 송신하고,
    상기 웹포탈서버는 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터 및 상기 수신사용자의 정보를 수신하고,
    상기 암호화서버는 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고,
    상기 키관리서버는 상기 검증정보의 검증결과에 따라 상기 키관리서버에 저장된 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하고,
    상기 웹포탈서버는 상기 전자서명된 원문데이터를 상기 수신사용자의 단말기로 송신하는, 데이터 전자서명 및 암호화를 수행하기 위한 클라우드 시스템.
  9. 웹포탈서버, 전자서명서버, 암호화서버, 및 키관리서버를 포함하는 클라우드 시스템에 의한 데이터 전자서명 및 암호화 방법으로서,
    상기 키관리서버는, 상기 전자서명서버와 접속될 수 있고, 상기 웹포탈서버와는 접속되지 않고,
    발송사용자의 단말기 및 수신사용자의 단말기는 상기 웹포탈서버와만 통신할 수 있고,
    상기 키관리서버는, 상기 전자서명서버의 전자서명요청에 의해서만 전자서명을 수행하고,
    상기 키관리서버는, 상기 암호화서버의 암호화요청에 의해서만 데이터의 암호화를 수행하고,
    상기 키관리서버는, 전자서명을 수행하기 위한 인증서 및 개인키, 공개키, 암호화키, 및 복호화키 중 1 이상을 포함하는 키데이터를 저장하고 있고,
    상기 클라우드 시스템은,
    상기 웹포탈서버에 의하여, 상기 웹포탈서버에 의하여, 발송사용자의 단말기로부터 원문데이터 및 수신자정보를 수신하는 제1단계;
    상기 키관리서버에 의하여, 상기 키관리서버에 저장된 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명이 수행되고, 상기 암호화서버에 의하여, 상기 키관리서버에 저장된 암호화키에 의하여 암호화된 상기 원문데이터에 대한 암호화전자서명데이터, 및 상기 수신자정보를 포함하는 발송데이터를 생성하고, 상기 웹포탈서버에 의하여, 상기 발송사용자의 단말기로 송신하는 제2단계;
    상기 웹포탈서버에 의하여, 상기 발송데이터의 수신사용자의 단말기로부터 상기 발송데이터, 상기 수신사용자의 정보 및 수신사용자의 공개키를 수신하는 제3단계; 및
    상기 암호화서버에 의하여, 상기 수신사용자의 정보 및 상기 발송데이터에 포함된 수신자정보를 포함하는 검증정보를 검증하고, 상기 키관리서버에 의하여, 상기 검증정보의 검증결과에 따라 상기 수신사용자의 공개키에 의하여 상기 키관리서버에 저장된 복호화키를 암호화한 암호화키데이터를 도출하고, 상기 웹포탈서버에 의하여, 상기 암호화키데이터를 수신사용자의 단말기로 송신하는 제4단계; 및
    수신사용자의 단말기에 의하여, 수신사용자의 개인키에 의하여 상기 암호화키데이터로부터 복호화키를 복호화하고, 상기 복호화키에 의하여 상기 암호화전자서명데이터로부터 전자서명된 원문데이터를 복호화하는 제5단계;를 포함하고,
    상기 제2단계는, 전자서명단계를 포함하고,
    상기 전자서명단계는,
    상기 전자서명서버에 의하여, 상기 웹포탈서버로부터 상기 원문데이터를 수신하는 단계;
    상기 키관리서버에 의하여, 상기 전자서명서버로부터 상기 원문데이터를 수신하는 단계;
    상기 키관리서버에 의하여, 상기 발송사용자의 인증서 및 개인키에 의하여 전자서명을 수행하여 전자서명데이터를 도출하는 단계; 및
    상기 전자서명서버에 의하여, 상기 키관리서버로부터 상기 전자서명데이터를 수신하는 단계;를 포함하고,
    상기 제2단계는, 발송데이터생성단계를 포함하고,
    상기 발송데이터생성단계는,
    상기 키관리서버에 의하여, 상기 원문데이터 및 상기 전자서명의 수행에 의하여 도출된 전자서명데이터의 암호화를 수행하여 상기 암호화전자서명데이터를 도출하는 단계;
    상기 암호화서버에 의하여, 상기 수신자정보 및 상기 암호화전자서명데이터의 무결성을 검증하기 위한 메시지무결성검증코드를 도출하는 단계;
    상기 암호화서버에 의하여, 상기 수신자정보, 상기 암호화전자서명데이터, 및 상기 메시지무결성검증코드에 기초하여 발송데이터를 생성하여 상기 발송사용자의 단말기로 송신하는 단계;를 포함하는, 데이터 전자서명 및 암호화 방법.
KR1020190128902A 2019-10-17 2019-10-17 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템 KR102310811B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190128902A KR102310811B1 (ko) 2019-10-17 2019-10-17 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190128902A KR102310811B1 (ko) 2019-10-17 2019-10-17 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20210045632A KR20210045632A (ko) 2021-04-27
KR102310811B1 true KR102310811B1 (ko) 2021-10-08

Family

ID=75725819

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190128902A KR102310811B1 (ko) 2019-10-17 2019-10-17 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR102310811B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102620056B1 (ko) 2023-07-11 2024-01-02 주식회사 지크립토 전자 서명 기반 데이터 저장 인증 기술을 지원하는신뢰 저장장치 및 그 장치의 구동방법, 그리고 위임 저장 인증 시스템

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100929488B1 (ko) * 2009-02-20 2009-12-03 주식회사 한국무역정보통신 서버 기반의 전자서명 위임 시스템 및 방법
KR101326732B1 (ko) 2012-07-24 2013-11-20 한전케이디엔주식회사 첨단계량 인프라를 위한 암호화 키를 이용한 원격검침방법
KR101974062B1 (ko) 2018-05-31 2019-04-30 이니텍(주) 클라우드 하드웨어 모듈 기반 전자 서명 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080007043A (ko) * 2006-07-14 2008-01-17 (주)에스디아이앤씨 전자문서교환시스템 및 전자문서교환시스템에서의 전자문서보안 서비스 구현 방법
KR101489447B1 (ko) * 2013-06-17 2015-02-03 김도형 메시지를 일상 대화로 암호화하는 정보 암호화 시스템 및 정보 암호화 방법
KR101863953B1 (ko) * 2016-06-16 2018-06-29 주식회사 티모넷 전자 서명 서비스 시스템 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100929488B1 (ko) * 2009-02-20 2009-12-03 주식회사 한국무역정보통신 서버 기반의 전자서명 위임 시스템 및 방법
KR101326732B1 (ko) 2012-07-24 2013-11-20 한전케이디엔주식회사 첨단계량 인프라를 위한 암호화 키를 이용한 원격검침방법
KR101974062B1 (ko) 2018-05-31 2019-04-30 이니텍(주) 클라우드 하드웨어 모듈 기반 전자 서명 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102620056B1 (ko) 2023-07-11 2024-01-02 주식회사 지크립토 전자 서명 기반 데이터 저장 인증 기술을 지원하는신뢰 저장장치 및 그 장치의 구동방법, 그리고 위임 저장 인증 시스템

Also Published As

Publication number Publication date
KR20210045632A (ko) 2021-04-27

Similar Documents

Publication Publication Date Title
US10277591B2 (en) Protection and verification of user authentication credentials against server compromise
EP3704613B1 (en) Provisioning trusted execution environment(s) based on chain of trust including platform
US10666642B2 (en) System and method for service assisted mobile pairing of password-less computer login
US9935773B2 (en) Trusted platform module certification and attestation utilizing an anonymous key system
US9807610B2 (en) Method and apparatus for seamless out-of-band authentication
KR101671351B1 (ko) 통합 보안 엔진을 사용하는 웹 서비스 제공자를 위한 프라이버시 강화 키 관리
US9166777B2 (en) Method and system for user authentication for computing devices utilizing PKI and other user credentials
WO2017000829A1 (zh) 一种基于生物特征的安全校验方法及客户端、服务器
CN106104542B (zh) 对于数据即服务(DaaS)的内容保护
JP2019508763A (ja) ローカルデバイス認証
US20160125180A1 (en) Near Field Communication Authentication Mechanism
KR102448333B1 (ko) 생체정보 기반 otp 인증 방법 및 시스템
US11050570B1 (en) Interface authenticator
US9288054B2 (en) Method and apparatus for authenticating and managing application using trusted platform module
US9565211B2 (en) Managing exchanges of sensitive data
US8918844B1 (en) Device presence validation
KR101739203B1 (ko) 일회용 개인키 기반 전자 서명과 동형 암호를 이용한 패스워드 기반 사용자 인증 방법
US20190297075A1 (en) Repeated secondary user authentication
JP6756056B2 (ja) 身元検証による暗号チップ
KR20160081255A (ko) Otp 제공을 위한 모바일 단말 및 그 동작 방법
CN110838919B (zh) 通信方法、存储方法、运算方法及装置
CN109960935B (zh) 确定tpm可信状态的方法、装置及存储介质
KR102310811B1 (ko) 클라우드 기반 데이터 전자인증 및 암호화 방법 및 시스템
KR101836211B1 (ko) 전자 기기 인증 매니저 장치
KR20220042939A (ko) 차량 내 전자식 제어기 보안성 평가 방법 및 그 장치

Legal Events

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