KR101200331B1 - 크로스 도메인 간 전자서명 방법 - Google Patents

크로스 도메인 간 전자서명 방법 Download PDF

Info

Publication number
KR101200331B1
KR101200331B1 KR1020110044536A KR20110044536A KR101200331B1 KR 101200331 B1 KR101200331 B1 KR 101200331B1 KR 1020110044536 A KR1020110044536 A KR 1020110044536A KR 20110044536 A KR20110044536 A KR 20110044536A KR 101200331 B1 KR101200331 B1 KR 101200331B1
Authority
KR
South Korea
Prior art keywords
signature
verification
key
server
original text
Prior art date
Application number
KR1020110044536A
Other languages
English (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 KR1020110044536A priority Critical patent/KR101200331B1/ko
Application granted granted Critical
Publication of KR101200331B1 publication Critical patent/KR101200331B1/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
    • 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
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 HTML5가 지원하는 웹 저장소를 이용하여 별도의 플러그-인 프로그램의 도움 없이도 전자서명을 위한 키의 생성, 저장 및 배포를 수행하고, 이렇게 생성된 키를 이용하여 서명 및 검증을 수행하도록 함으로써 사용자의 웹 접근성을 향상시킴과 함께 플러그-인 제작, 배포와 같은 고비용의 작업을 제거하여 사회 전체의 전자서명 인프라 비용을 줄일 수 있음은 물론 이러한 플러그-인 프로그램의 이식 과정에서 사용자 컴퓨터에 각종 악성 코드가 도입되는 것을 방지할 수 있도록 한 크로스 도메인 간 전자서명 방법에 관한 것이다.
본 발명의 일 특징에 따른 크로스 도메인 간 전자서명 방법은 웹 저장소를 지원하여 전자서명을 위한 서명키를 상기 웹 저장소에 저장하는 사용자 브라우저가 탑재된 사용자 단말의 상기 사용자 브라우저에 의해 수행되되, 원문텍스트에 대해 전자서명을 요구하는 서명요구 서버에 검증키가 저장되어 있는 검증 서버의 정보를 전달하는 단계; 전자서명할 원문텍스트 또는 상기 원문텍스트를 암호화 알고리즘으로 처리하여 얻어진 암호화값을 상기 검증 서버로부터 전달받는 경우에 상기 원문텍스트 또는 상기 암호화값을 상기 서명키로 처리하여 생성된 서명텍스트를 상기 검증 서버에 전달하는 단계 및 상기 서명요구 서버로부터 검증완료 페이지를 전송받는 단계를 포함하여 이루어진다.

Description

크로스 도메인 간 전자서명 방법{Digital Signing Method among Cross Domains}
본 발명은 크로스 도메인 간 전자서명 방법에 관한 것으로, 특히 HTML5가 지원하는 웹 저장소를 이용하여 별도의 플러그-인 프로그램의 도움 없이도 전자서명을 위한 키의 생성, 저장 및 배포를 수행하고, 이렇게 생성된 키를 이용하여 서명 및 검증을 수행하도록 할 수 있도록 한 크로스 도메인 간 전자서명 방법에 관한 것이다.
잘 알려진 바와 같이, 웹 저장소가 지원되기 전까지는 브라우저가 컴퓨터의 저장소, 통상적으로 하드디스크에 접근하는 것이 제한되었던바, 종래에 브라우저가 컴퓨터의 저장소에 접근(읽기/쓰기)하기 위해서는 Active X나 Java 등의 기술을 이용한 플러그-인(Plug-in) 프로그램의 도움이 필요했다.
이러한 문제는 전자서명 분야에도 동일하게 적용되었는바, 여러 종류의 브라우저에서 전자서명을 하기 위해서는 각 브라우저 플랫폼마다 별도의 플러그-인 프로그램이 요구되었다. 그런데, 이러한 플러그-인 프로그램의 설치는 사용자의 웹 접근성을 악화시킬 뿐만 아니라 플러그-인 프로그램이 악성 코드의 주된 배포 루트가 되는 등 플러그-인 프로그램으로 인한 피해가 갈수록 심각해지는 문제점이 있었다.
이와는 별도로 전자서명을 요구하는 기관의 입장에서는 저마다의 플러그-인 프로그램을 제작하여 배포하는데 막대한 비용이 소요됨으로써 사회 전체의 전자서명 인프라 비용이 증가하는 문제점이 있었다.
본 발명은 전술한 문제점을 해결하기 위해 안출된 것으로서, HTML5가 지원하는 웹 저장소를 이용하여 별도의 플러그-인 프로그램의 도움 없이도 전자서명을 위한 키의 생성, 저장 및 배포를 수행하고, 이렇게 생성된 키를 이용하여 서명 및 검증을 수행하도록 함으로써 사용자의 웹 접근성을 향상시킴과 함께 플러그-인 제작, 배포와 같은 고비용의 작업을 제거하여 사회 전체의 전자서명 인프라 비용을 줄일 수 있음은 물론 이러한 플러그-인 프로그램의 이식 과정에서 사용자 컴퓨터에 각종 악성 코드가 도입되는 것을 방지할 수 있도록 한 크로스 도메인 간 전자서명 방법을 제공함을 목적으로 한다.
전술한 목적을 달성하기 위한 본 발명의 일 특징에 따른 크로스 도메인 간 전자서명 방법은 웹 저장소를 지원하여 전자서명을 위한 서명키를 상기 웹 저장소에 저장하는 사용자 브라우저가 탑재된 사용자 단말의 상기 사용자 브라우저에 의해 수행되되, 원문텍스트에 대해 전자서명을 요구하는 서명요구 서버에 검증키가 저장되어 있는 검증 서버의 정보를 전달하는 단계; 전자서명할 원문텍스트 또는 상기 원문텍스트를 암호화 알고리즘으로 처리하여 얻어진 암호화값을 상기 검증 서버로부터 전달받는 경우에 상기 원문텍스트 또는 상기 암호화값을 상기 서명키로 처리하여 생성된 서명텍스트를 상기 검증 서버에 전달하는 단계 및 상기 서명요구 서버로부터 검증완료 페이지를 전송받는 단계를 포함하여 이루어진다.
전술한 구성에서, 상기 서명키 및 상기 검증키는 상기 검증 서버에서 제공하는 서명키 발행 페이지에 구현된 서명키 및 검증키 생성용 자바 스크립트를 통해 생성되고, 상기 검증키는 상기 사용자 브라우저에 의해 검증 서버에 전달되어 저장되는 것을 특징으로 한다.
본 발명의 다른 특징에 따른 크로스 도메인 간 전자서명 방법은 원문텍스트에 대한 전자서명을 요구하는 서명요구 서버에 의해 수행되되, 사용자 단말에 탑재된 사용자 브라우저로부터 검증키가 저장되어 있는 검증 서버의 정보를 전달받는 단계; 전자서명이 요구되는 원문텍스트를 생성하고 상기 원문텍스트 또는 상기 원문텍스트를 암호화 알고리즘으로 처리하여 얻어진 암호화값과 검증 결과를 전달받을 자기의 회신 URL 정보를 상기 검증 서버의 검증 URL로 방향 재설정하여 상기 사용자 브라우저에 전송하는 단계 및 상기 검증 서버로부터 검증 결과를 전송받는 경우에 상기 검증 결과가 담긴 검증완료 페이지를 상기 사용자 브라우저에 전달하는 단계를 포함하여 이루어진다.
전술한 구성에서, 상기 서명키 및 상기 검증키는 상기 검증 서버에서 제공하는 서명키 발행 페이지에 구현된 서명키 및 검증키 생성용 자바 스크립트를 통해 생성되고, 상기 검증키는 상기 사용자 브라우저에 의해 검증 서버에 전달되어 저장되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따른 크로스 도메인 간 전자서명 방법은 전자서명을 위한 서명키를 웹 저장소에 저장한 사용자 브라우저가 탑재된 사용자 단말의 상기 사용자 브라우저가 서명요구 서버에 접속하는 단계; 상기 서명요구 서버가 검증키가 저장된 검증 서버의 정보를 상기 사용자 브라우저로부터 전달받는 단계; 상기 서명요구 서버가 전자서명이 요구되는 원문텍스트를 생성하고 상기 원문텍스트 또는 상기 원문텍스트를 암호화 알고리즘으로 처리하여 얻어진 암호화값을 생성하는 단계; 상기 서명요구 서버가 상기 원문 텍스트 또는 상기 암호화값과 검증 결과를 전달받을 자기의 회신 URL 정보를 상기 검증 서버의 검증 URL로 방향 재설정하여 상기 사용자 브라우저에 전송하는 단계; 상기 검증 서버가 상기 암호화값이 포함된 서명 페이지를 상기 사용자 브라우저에 전달하여 전자서명을 요청하는 단계; 상기 사용자 브라우저가 상기 원문텍스트 또는 상기 암호화값을 상기 서명키로 처리하여 생성된 서명텍스트를 상기 검증 서버에 전달하는 단계; 상기 검증 서버가 상기 검증키와 상기 암호화값에 의해 상기 서명텍스트를 검증한 후에 그 검증 결과를 상기 회신 URL로 방향 재설정하여 상기 사용자 브라우저에 전송하는 단계 및 상기 서명요구 서버가 상기 검증 결과에 따른 검증완료 페이지를 상기 사용자 브라우저에 전송하는 단계를 포함하여 이루어진다.
전술한 구성에서, 상기 서명키 및 상기 검증키는 상기 검증 서버에서 제공하는 서명키 발행 페이지에 구현된 서명키 및 검증키 생성용 자바 스크립트를 통해 생성된 후에 상기 서명키는 상기 웹 저장소에 저장되고, 상기 검증키는 상기 사용자 브라우저에 의해 검증 서버에 전달되어 저장되는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따르면, 전술한 모든 방법 중 어느 하나를 실행하는 프로그램이 수록되어 컴퓨터로 읽을 수 있는 기록 매체가 제공된다.
본 발명의 크로스 도메인 간 전자서명 방법에 따르면, HTML5가 지원하는 웹 저장소를 이용하여 별도의 플러그-인 프로그램의 도움 없이도 전자서명을 위한 키의 생성, 저장 및 배포를 수행하고, 이렇게 생성된 키를 이용하여 서명 및 검증을 수행하도록 함으로써 사용자의 웹 접근성을 향상시킴과 함께 플러그-인 제작, 배포와 같은 고비용의 작업을 제거하여 사회 전체의 전자서명 인프라 비용을 줄일 수 있음은 물론 이러한 플러그-인 프로그램의 이식 과정에서 사용자 컴퓨터에 각종 악성 코드가 도입되는 것을 방지할 수가 있다.
도 1은 본 발명의 크로스 도메인 간 전자서명 방법을 설명하기 위한 시퀀스 차트.
이하에는 첨부한 도면을 참조하여 본 발명의 크로스 도메인 간 전자서명 방법의 바람직한 실시예에 대해 상세하게 설명한다.
도 1은 본 발명의 크로스 도메인 간 전자서명 방법을 설명하기 위한 시퀀스 차트인바, 설명에 앞서 본 발명의 기초가 되는 HTML5를 설명함과 함께 본 발명에서 사용하는 용어에 대해 개략적으로 정의한다.
잘 알려진 바와 같이, HTML(HyperText Markup Language)은 우리가 보는 웹페이지의 내용을 보기 좋게 배치하거나 색이나 이미지를 넣고, 다른 웹페이지의 연결을 넣는 등에 사용하는 일종의 프로그래밍 언어인데, 인터넷 익스플로러, 파이어폭스 또는 크롬과 같이 인터넷에서 웹문서를 볼 수 있게 해주는 브라우저를 통해 구현된다. 즉, 브라우저가 그 태그를 보고 그에 맞는 형태로 모양을 바꿔 사용자에게 보여주는 것이다.
한편, 인터넷이 발전하면서 단순히 글이나 그림 정도를 보여 주는데 그치지 않고 멀티미디어를 보여주는 것이 요구되고 있는바, 이러한 요구로 인해 여러 개발사들이 플러그-인 기술이나 마이크로소프트사의 ActiveX 기술 등을 통해 합의 없이 제 각각의 멀티미디어를 보여줄 수 있는 프로그램을 개발하였다. 그러나 이로 인해 해당 멀티미디어가 어떤 브라우저에서는 나오고 어떤 브라우저에서는 안 나오는 등의 상황이 발생하게 되었고, 각 업체들 또한 이런 상황을 해결하기 위해 많은 노력을 경주하고 있다.
이런 배경 하에서 HTML5가 웹 페이지를 표현하는 새로운 버전의 언어로 표준화되고 있는바, 그 주요 특징으로는 웹 페이지에 동영상과 오디오를 각각 정의하는 video와 audio 엘리먼트 기능 및 웹사이트의 정보를 로컬 컴퓨터에 저장하고 나중에 다시 읽을 수 있는 방법을 제공하는 로컬 저장소 기능 등이 있다.
상기 로컬 저장소의 기능은 기존의 쿠키(Cookie)와 비슷하지만 그보다 더 크고 많은 양의 정보를 다룰 수 있도록 설계되어 있다, 현재, HTML5를 지원하는 브라우저로는 마이크로소프트사의 인터넷 익스플로러 8.0(IE 8.0) 이상 및 사파리 6.0 이상 등이 있다.
본 발명에서 웹 저장소(통상적으로 PC의 하드디스크로 구현됨)는 HTML5 표준에서 제공하는 웹 스토리지(Web Storage) 또는 웹 데이터베이스(Web Database)를 일컫는바, 전통적인 쿠키와 같이 특정 도메인에서만 접근 가능한 특징을 가지고 있다. 자바 스크립트(Java script)는 웹 브라우저가 내장한 스크립트 언어이다. 발행 도메인(100)은 전자서명을 위한 데이터를 생성하고 저장하는 과정에서 접속한 사이트의 도메인을 일컫는데, 어떤 도메인이어도 관계가 없으나 사회적인 공신력을 갖춘 기관, 예를 들어 은행에서 운영하는 사이트의 도메인 등이 되는 것이 바람직할 것이다. 한편, 전자서명을 위해서는 서명키('개인키'라고도 함) 및 검증키('공개키'라고도 함)를 생성해야 하는데, 이 중에서 브라우저에는 서명키 단독 또는 서명키와 검증키가 모두 저장될 수 있다.
참고적으로 서명키를 X, 검증키를 Y, 서명함수를 f, 검증함수를 g, 서명할 원문텍스트, 예를 들어 거래내역이나 이체내역 등을 M 이라고 했을 때, 서명값(S), 즉 서명텍스트(S)는 S= f(M, X)가 된다. 검증이란 g(M, S, Y)의 결과로서 참(true) 또는 거짓(false) 중 하나가 된다.
한편, 발행 도메인(100)만이 사용자가 생성하고 저장한 데이터에 접근할 수 있는 권한을 갖추고 있는데, 이는 HTML5에서 웹 저장소를 정의할 때 "데이터를 생성한 도메인만이 해당 데이터에 접근할 수 있도록" 규격을 정했기 때문이다.
서비스 도메인(Service Domain)(300)은 서비스를 공급하는 도메인으로서 발행 도메인(100) 이외의 모든 서비스 제공 사이트의 도메인을 지칭하는바, 각종 포털이나 온라인 쇼핑몰 또는 금융 기관 사이트의 도메인 등이 될 수 있을 것이다. 앞 선 설명에 따르면, 서비스 도메인(300)은 발행 도메인(100)에서 생성하여 저장한 데이터에 접근하는 권한을 갖추고 있지 못하다. 단, 발행 도메인(100) 자체가 서비스 도메인이 될 수도 있다.
도 1로 돌아가서, 사용자 컴퓨터에 HTML5 표준을 지원하는 브라우저(이하 '사용자 브라우저'라 한다)(200)가 탑재된 상태에서, 먼저 사용자 브라우저(200)는 발행 도메인(100)에 접속하여 서명키 발행 페이지를 요청(단계 S10)하고, 이러한 요청에 대한 응답으로 발행 도메인(100)은 사용자 브라우저(200)에게 미리 정해진 양식의 발행 페이지를 제공(단계 S12)한다.
그런데, 서명키를 발급받고자 하는 사용자는 단계 S10의 발행 페이지 요청 이전에 공인인증서 발급시와 마찬가지로 발행 도메인(100)의 오프라인 업소, 예를 들어 은행 지점 등을 방문하여 서명키를 등록하겠다는 의사 표시를 한 후에 확인 절차를 거침으로써 서명키 발행 과정에서 사용될 임시 비밀번호를 부여받을 수도 있다.
이 경우에, 사용자가 발행 페이지에 상기 임시 비밀번호를 입력한 후에 서명키 발행을 요청하면 발행 도메인(100)에서는 이렇게 입력된 임시 비밀번호가 자기가 부여하여 데이터베이스에 저장하고 있는 임시 비밀번호와 일치하는지를 확인한 후에 일치하는 경우에는 발행 페이지에 구현된 스크립트. 예를 들어 발행 페이지에 구현된 서명키 및 검증키 생성용 자바 스크립트를 통해 서명키와 이를 검증하는 검증키를 생성(단계 S14)한 후에 이 중에서 검증키를 발행 도메인(100)에 전송(단계 S16)한다. 여기에서, 서명키는 의사 난수에 의해 랜덤하게 생성될 수 있고, 나아가 사용자가 상기 발행 페이지에 구비된 서명키 비밀번호 입력란에 입력한 서명키 비밀번호에 의해 암호화되어 생성될 수도 있다.
다음으로 발행 도메인(100)은 이렇게 전달받은 검증키를 자신이 운용하는 데이터베이스에 해당 사용자의 식별정보와 매칭시켜 저장(S18)한 후에 검증키 저장 완료 사실을 사용자 브라우저(200)에 통보(단계 S20)한다. 사용자 브라우저(200)는 검증키 저장 완료 사실을 통보받는 즉시 서명키를 웹 저장소의 지정된 장소에 저장(단계 S22)하게 된다. 도면에서 "X" 표시는 현재의 절차가 종료되었음을 나타내는바, 이상의 단계 S22까지에 의해 서명키와 검증키의 생성 및 저장이 완료된다.
이 상태에서, 사용자 브라우저(200)가 전자서명이 필요한 서비스 도메인(300), 예를 들어 온라인 쇼핑몰 사이트이나 금융기관 사이트 등에 접속(단계 S30)하여 물품이나 서비스를 구매한 후에 결제 등을 위해 전자서명을 하거나 인터넷 뱅킹, 예를 들어 온라인 계좌 이체를 하고자 하면 서비스 도메인(300)은 검증을 위해 사용자 브라우저(200)에 발행 도메인 입력 페이지를 제공(단계 S32)한다. 이후 사용자 브라우저(200)는 이러한 발행 도메인 입력 페이지를 통해 사용자로부터 발행 도메인에 관한 정보를 입력 또는 선택(단계 S34)받아 서비스 도메인(300)에 전달하는데, 예를 들어 입력 페이지에 마련된 입력창을 통해 "국민은행" 또는 "http://www.kbstar.com"과 같은 발행 도메인의 정보를 수동 입력받거나 입력 페이지에 나열된 발행 도메인 리스트에서 하나를 선택받게 된다.
다음으로, 서비스 도메인(300)은 서명이 필요한 원문텍스트, 예를 들어 거래 내역이나 이체 내역을 해시 함수(hash function)로 암호화(단계 S36)하는데, 이렇게 얻어진 해시값과 검증 결과를 전달받을 자기(서비스 도메인)의 회신 URL 정보를 발행 도메인(100)의 검증 URL(Uniform Resource Locator)로 방향 재설정(Redirection)하여 사용자 브라우저(200)에 전송(단계 S38)한다.
여기에서 해시 함수는 컴퓨터 암호화 기술의 일종으로 요약 함수(要約函數) 또는 메시지 다이제스트 함수(message digest function)라고도 하는데 주어진 원문(原文)에서 고정된 길이의 의사난수(疑似亂數)를 생성하는 연산기법이며 이에 의해 생성된 값을 '해시값'이라고 한다.
이에 대해 부연하면, 통신회선을 통해서 데이터를 주고받을 때 경로(經路)의 양쪽 끝에서 데이터의 해시값을 구해서 보낸 쪽과 받은 쪽의 값을 비교하면 데이터를 주고받는 도중에 여기에 변경이 가해졌는지 어떤지를 확인할 수 있다. 해시 함수는 불가역적(不可逆的)인 일방향함수를 포함하고 있기 때문에 해시값에서 원문을 재현할 수는 없고, 동일한 해시값을 가진 다른 데이터를 작성하는 것도 극히 어렵다. 여기에서, 일방향함수란 함정문 함수(trap door function)라고도 하는 것으로, 제수(除數)에서 결과를 구하는 것은 간단하지만 결과에서 제수를 구하는 것을 어려운 함수를 말한다.
다음으로, 발행 도메인(100)은 서비스 도메인(300)으로부터 전달받은 회신 URL 정보와 해시값을 일시적으로 저장한 후에 상기 해시값이 포함된 서명 페이지를 사용자 브라우저(200)에 전달(단계 S40)하여 전자서명을 요청한다. 이에 응하여 사용자 브라우저(200)는 웹 저장소에 저장된 서명키를 추출하여 해시값에 전자서명을 수행(단계 S42)한 후에 이에 의해 생성된 서명텍스트를 발행 도메인(100)에 전달(단계 S44)하는데, 이 과정에서 종래와 마찬가지로 사용자가 사전에 설정한 전자서명 비밀번호가 일치하는 경우에 한하여 전자서명을 수행할 수도 있을 것이다.
다음으로, 사용자 브라우저(200)로부터 서명텍스트를 전달받은 발행 도메인(100)은 이후 자체적으로 저장하고 있는 검증키와 해시값에 의해 서명텍스트를 검증(단계 S46)한 후에 그 검증 결과, 예를 들어 참(true) 또는 거짓(false)과 관련된 정보를 상기 회신 URL, 즉 서비스 도메인(300)의 URL로 방향 재설정하여 사용자 브라우저(200)에 전송(단계 S48)한다. 여기에서, 발행 도메인(100)에서의 검증 내용에는, 예를 들어 정상 발급 여부뿐만 아니라 유효 기간 만료 여부 등이 포함될 수도 있다.
마지막으로 이러한 검증 결과를 전달받은 서비스 도메인(300)이 검증완료 페이지를 사용자 브라우저(200)에 전송(단계 S50)함으로써 프로그램이 종료된다.
본 발명의 크로스 도메인 간 전자서명 방법은 전술한 실시예에 국한되지 않고 본 발명의 기술 사상이 허용하는 범위 내에서 자유롭게 변형될 수 있을 것이다. 예를 들어, 전술한 서명키 발급 과정에서의 본원 확인 시에 임시 비밀번호 대신에 기타의 금융정보, 예를 들어 계좌 비밀번호나 보안카드 일련번호 등이 사용될 수도 있을 것이다.
또한 사용자 브라우저(200)가 PC에 탑재되는 것으로 설명하고, 웹 저장소로 PC의 하드디스크를 예로 들어 설명하였으나 동일 기능을 수행하는 것이 가능한 경우에는 사용자 브라우저가 스마트폰이나 PDA(Personal Digital Assistance) 등과 같은 휴대용 정보통신 단말기에 탑재될 수도 있을 것이며 이 경우에 웹 저장소는 여기에 내장 또는 외장된 플래시 메모리가 될 수 있을 것이다.
한편, 단계 S22에서의 서명키 저장 시에 향후 문제 발생시 사후적인 책임 소재를 가리기 위해 검증키가 함께 저장될 수도 있고, 뿐만 아니라 단계 S22에서의 서명키 저장이 단계 S14에서 서명키 생성과 동시에 수행, 즉 단계 S16 이전에 수행될 수도 있을 것이다.
단계 S36은 생략될 수도 있는데, 이 경우에 단계 S38에서는 해시값 대신에 원문텍스트가 사용자 브라우저(200)에 방향 재설정 전송되고, 단계 S40에서 사용자 브라우저에 전달되는 서명 페이지에는 원문텍스트가 포함되며, 사용자 브라우저(200)는 웹 저장소에 저장된 서명키를 추출하여 원문텍스트에 대해 전자서명을 수행하는 것으로 프로그램이 변경될 것이다.
나아가 단계 S48에서 발행 도메인(100)은 검증 결과를 전송할 때 검증 데이터, 즉 서명텍스트와 이를 검증할 수 있는 검증키를 함께 전송할 수도 있는데, 서비스 도메인(300)은 이러한 검증키를 자체의 데이터베이스에 원문텍스트와 매칭시켜 저장하고 있다가 향후 문제 발생시 책임 소재를 가리는데 사용할 수도 있을 것이다. 또한 상기 해시 함수에 의하 암호화 대신에 다른 암호화 알고리즘이 사용될 수도 있을 것이다.
이하 특허청구범위에서 '사용자 단말'은 사용자 브라우저가 탑재된 PC와 휴대용 정보통신 단말기를 통칭하는 개념으로 사용되고, 검증 서버와 서명요구 서버는 각각 발행 도메인의 사이트에 구축된 서버와 서비스 도메인의 사이트에 구축된 서버를 통칭하는 개념으로 사용됨을 밝혀둔다. 또한 특허청구범위에서 암호화값이라 함은 해시 함수에 의해 암호화된 해시값 또는 다른 암호화 알고리즘에 의해 암호화된 값을 일컫는다.
100: 발행 도메인, 200: 사용자 브라우저,
300: 서비스 도메인

Claims (7)

  1. 웹 저장소를 지원하여 전자서명을 위한 서명키를 상기 웹 저장소에 저장하는 사용자 브라우저가 탑재된 사용자 단말의 상기 사용자 브라우저에 의해 수행되되,
    원문텍스트에 대해 전자서명을 요구하는 서명요구 서버에 검증키가 저장되어 있는 검증 서버의 정보를 전달하는 단계;
    전자서명할 원문텍스트 또는 상기 원문텍스트를 암호화 알고리즘으로 처리하여 얻어진 암호화값을 상기 검증 서버로부터 전달받는 경우에 상기 원문텍스트 또는 상기 암호화값을 상기 서명키로 처리하여 생성된 서명텍스트를 상기 검증 서버에 전달하는 단계 및
    상기 서명요구 서버로부터 검증완료 페이지를 전송받는 단계를 포함하여 이루어진 크로스 도메인 간 전자서명 방법.
  2. 제 1 항에 있어서,
    상기 서명키 및 상기 검증키는 상기 검증 서버에서 제공하는 서명키 발행 페이지에 구현된 서명키 및 검증키 생성용 자바 스크립트를 통해 생성되고,
    상기 검증키는 상기 사용자 브라우저에 의해 검증 서버에 전달되어 저장되는 것을 특징으로 하는 크로스 도메인 간 전자서명 방법.
  3. 원문텍스트에 대한 전자서명을 요구하는 서명요구 서버에 의해 수행되되,
    사용자 단말에 탑재된 사용자 브라우저로부터 검증키가 저장되어 있는 검증 서버의 정보를 전달받는 단계;
    전자서명이 요구되는 원문텍스트를 생성하고 상기 원문텍스트 또는 상기 원문텍스트를 암호화 알고리즘으로 처리하여 얻어진 암호화값과 검증 결과를 전달받을 자기의 회신 URL 정보를 상기 검증 서버의 검증 URL로 방향 재설정하여 상기 사용자 브라우저에 전송하는 단계 및
    상기 검증 서버로부터 검증 결과를 전송받는 경우에 상기 검증 결과가 담긴 검증완료 페이지를 상기 사용자 브라우저에 전달하는 단계를 포함하여 이루어진 크로스 도메인 간 전자서명 방법.
  4. 제 1 항에 있어서,
    상기 서명키 및 상기 검증키는 상기 검증 서버에서 제공하는 서명키 발행 페이지에 구현된 서명키 및 검증키 생성용 자바 스크립트를 통해 생성되고,
    상기 검증키는 상기 사용자 브라우저에 의해 검증 서버에 전달되어 저장되는 것을 특징으로 하는 크로스 도메인 간 전자서명 방법.
  5. 전자서명을 위한 서명키를 웹 저장소에 저장한 사용자 브라우저가 탑재된 사용자 단말의 상기 사용자 브라우저가 서명요구 서버에 접속하는 단계;
    상기 서명요구 서버가 검증키가 저장된 검증 서버의 정보를 상기 사용자 브라우저로부터 전달받는 단계;
    상기 서명요구 서버가 전자서명이 요구되는 원문텍스트를 생성하고 상기 원문텍스트 또는 상기 원문텍스트를 암호화 알고리즘으로 처리하여 얻어진 암호화값을 생성하는 단계;
    상기 서명요구 서버가 상기 원문 텍스트 또는 상기 암호화값과 검증 결과를 전달받을 자기의 회신 URL 정보를 상기 검증 서버의 검증 URL로 방향 재설정하여 상기 사용자 브라우저에 전송하는 단계;
    상기 검증 서버가 상기 암호화값이 포함된 서명 페이지를 상기 사용자 브라우저에 전달하여 전자서명을 요청하는 단계;
    상기 사용자 브라우저가 상기 원문텍스트 또는 상기 암호화값을 상기 서명키로 처리하여 생성된 서명텍스트를 상기 검증 서버에 전달하는 단계;
    상기 검증 서버가 상기 검증키와 상기 암호화값에 의해 상기 서명텍스트를 검증한 후에 그 검증 결과를 상기 회신 URL로 방향 재설정하여 상기 사용자 브라우저에 전송하는 단계 및
    상기 서명요구 서버가 상기 검증 결과에 따른 검증완료 페이지를 상기 사용자 브라우저에 전송하는 단계를 포함하여 이루어진 크로스 도메인 간 전자서명 방법.
  6. 제 5 항에 있어서,
    상기 서명키 및 상기 검증키는 상기 검증 서버에서 제공하는 서명키 발행 페이지에 구현된 서명키 및 검증키 생성용 자바 스크립트를 통해 생성된 후에 상기 서명키는 상기 웹 저장소에 저장되고, 상기 검증키는 상기 사용자 브라우저에 의해 검증 서버에 전달되어 저장되는 것을 특징으로 하는 크로스 도메인 간 전자서명 방법.
  7. 제 1 항 내지 제 6 항 중 어느 한 항의 방법을 실행하는 프로그램이 수록되어 컴퓨터로 읽을 수 있는 기록 매체.
KR1020110044536A 2011-05-12 2011-05-12 크로스 도메인 간 전자서명 방법 KR101200331B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110044536A KR101200331B1 (ko) 2011-05-12 2011-05-12 크로스 도메인 간 전자서명 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110044536A KR101200331B1 (ko) 2011-05-12 2011-05-12 크로스 도메인 간 전자서명 방법

Publications (1)

Publication Number Publication Date
KR101200331B1 true KR101200331B1 (ko) 2012-11-12

Family

ID=47564490

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110044536A KR101200331B1 (ko) 2011-05-12 2011-05-12 크로스 도메인 간 전자서명 방법

Country Status (1)

Country Link
KR (1) KR101200331B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106709347A (zh) * 2016-11-25 2017-05-24 腾讯科技(深圳)有限公司 应用运行的方法及装置
KR101815145B1 (ko) * 2016-06-28 2018-01-05 한국전자인증(주) 크로스 도메인간 인증서 공유방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101815145B1 (ko) * 2016-06-28 2018-01-05 한국전자인증(주) 크로스 도메인간 인증서 공유방법
CN106709347A (zh) * 2016-11-25 2017-05-24 腾讯科技(深圳)有限公司 应用运行的方法及装置

Similar Documents

Publication Publication Date Title
Mishra et al. Privacy protected blockchain based architecture and implementation for sharing of students’ credentials
KR101780636B1 (ko) 인증 정보의 발급 방법 및 이를 지원하는 블록체인기반 인증 정보 관리 서버
KR101799343B1 (ko) 인증 정보의 사용 방법, 파기 방법 및 이를 지원하는 블록체인기반 인증 정보 관리 서버
CN112333198B (zh) 安全跨域登录方法、***及服务器
US9015820B1 (en) Cross site request forgery mitigation in multi-domain integrations
US8819253B2 (en) Network message generation for automated authentication
JP6697005B2 (ja) 支払方法、装置及びシステム
KR20200002985A (ko) 데이터 공유 방법, 클라이언트, 서버, 컴퓨팅 장치 및 저장 매체
CA2494513C (en) Digital-signed digital document exchange supporting method and information processor
CN110188550B (zh) 一种区块链的数据验证方法和装置
US9401911B2 (en) One-time password certificate renewal
CN1714356B (zh) 使用标准演示引擎作数字权限管理的***及方法
US10616209B2 (en) Preventing inter-application message hijacking
KR101974062B1 (ko) 클라우드 하드웨어 모듈 기반 전자 서명 방법
CN106845986A (zh) 一种数字证书的签章方法及***
CN113015991A (zh) 安全的数字钱包处理***
CN111177735A (zh) 身份认证方法、装置、***和设备以及存储介质
KR101388930B1 (ko) 분리 서명 기반의 사용자 인증 장치 및 방법
CN104486301A (zh) 登录验证方法及装置
KR101200331B1 (ko) 크로스 도메인 간 전자서명 방법
JP6444344B2 (ja) 認証サーバ、仲介サーバおよび広告配信サーバ
JP5036500B2 (ja) 属性証明書管理方法及び装置
KR20100033053A (ko) 무선 통신 네트워크를 통한 카드 결제 서비스 시스템 및 그방법과 카드 결제 서비스 기능을 갖춘 이동통신 단말기
US11405196B2 (en) Authenticate transactions of secured file in blockchain
Marian et al. Requirements Analysis for a System for Certifying Online Content

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151104

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161116

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181030

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20191022

Year of fee payment: 8