KR20190020542A - 장치 내 브라우저의 스크립트 엔진과 외부 이동 단말기를 이용한 전자 서명 메시지 생성 - Google Patents

장치 내 브라우저의 스크립트 엔진과 외부 이동 단말기를 이용한 전자 서명 메시지 생성 Download PDF

Info

Publication number
KR20190020542A
KR20190020542A KR1020170105629A KR20170105629A KR20190020542A KR 20190020542 A KR20190020542 A KR 20190020542A KR 1020170105629 A KR1020170105629 A KR 1020170105629A KR 20170105629 A KR20170105629 A KR 20170105629A KR 20190020542 A KR20190020542 A KR 20190020542A
Authority
KR
South Korea
Prior art keywords
mobile terminal
signature
data
application server
source data
Prior art date
Application number
KR1020170105629A
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 KR1020170105629A priority Critical patent/KR20190020542A/ko
Publication of KR20190020542A publication Critical patent/KR20190020542A/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/321Cryptographic 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 a third party or a trusted authority

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 명세서는 웹 브라우저를 통해 웹 페이지를 표시하는 동작; 상기 웹 브라우저 내에서 실행되는 스크립트 엔진에 의하여 상기 애플리케이션 서버로부터 소스 데이터를 수신하는 동작; 이동 단말기 정보를 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성하고, 상기 서명 요청 메시지가 상기 이동 단말기에 전송되도록 중계 서버에 전송하는 동작; 상기 소스 데이터에 대한 전자 서명 데이터를 포함하도록 상기 이동 단말기에서 생성된 서명 메시지를 상기 중계 서버로부터 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 서명 메시지를 상기 애플리케이션 서버로 전송하는 동작; 및 상기 서명 메시지에 포함된 상기 전자 서명 데이터의 검증 결과를 수신하는 동작을 포함하도록 구성된 방법을 게시한다.

Description

장치 내 브라우저의 스크립트 엔진과 외부 이동 단말기를 이용한 전자 서명 메시지 생성{GENERATING DIGITAL SIGNATURE MESSAGES USING A SCRIPT ENGINE IN A DEVICE AND AN EXTERNAL MOBILE TERMINAL}
본 명세서는 장치 내 브라우저 내에서 실행되는 스크립트 엔진과 외부 이동 단말기를 이용하여 전자 서명 메시지를 생성하는 것에 관한 것이다.
최근 널리 사용되는 PKI(Public Key Infrastructure) 기반의 보안 프로토콜은 상호 암호학적 관련성에 따라 생성된 개인키(private key) 및 공개키(public key) 쌍을 이용하여 암호화/복호화, 전자 서명/검증 등의 기능을 수행하기 위해 사용된다. PKI 기반의 암호화 기능이 안전하게 수행되기 위해서는 장치 내에의 개인키가 외부 접근으로부터 차단되어 있는지, 구체적으로는 암호화 기능 수행 시 개인키 정보 또는 이에 의해 계산되는 중간 데이터 등에 대한 접근이 차단되어 있는지 등이 보장되어야 한다.
웹 페이지를 통해 제공되는 서비스의 경우, 웹 브라우저를 사용하여 서비스 관련 웹 페이지를 열람하던 중 Log-in 등의 기능을 수행하기 위하여 브라우저와 별도 설치된 외부 프로그램을 실행하거나, 또는 브라우저 내에 임베딩 되어 실행되는 코드를 실행시키는 경우가 있으며, 이는 외부 프로그램에 의하여 개인키 또는 개인키를 이용한 연산 결과에 대해 공격을 시도할 수 있는 경로가 될 수 있다.
특히, 개인 소유의 전자장치가 아니라 공공 장소에서 다수의 사용자가 공유하는 컴퓨터의 경우, 이미 설치된 프로그램을 신뢰할 수 없는 문제가 발생할 수 있다. 이와 달리, 다수의 사용자가 공유하는 컴퓨터에서 인가된 리스트에 포함된 프로그램이 아닌 별도의 프로그램을 설치하지 못하도록 설정된 되어 있는 경우, 또는 장치 내에서 전자 서명 등을 수행하는 경우 장치 내에서 개인키가 보호되지 않은 채로 지역 저장 공간에 저장 또는 임시 저장되는 경우 외부 공격으로부터 취약하게 된다.
본 명세서는 클라이언트 장치의 전자적 서명 방법을 제시한다. 상기 방법은 웹 브라우저를 통해 웹 페이지를 표시하는 동작; 상기 웹 브라우저 내에서 실행되는 스크립트 엔진에 의하여 상기 애플리케이션 서버로부터 소스 데이터를 수신하는 동작; 이동 단말기 정보를 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성하고, 상기 서명 요청 메시지가 상기 이동 단말기에 전송되도록 중계 서버에 전송하는 동작; 상기 소스 데이터에 대한 전자 서명 데이터를 포함하도록 상기 이동 단말기에서 생성된 서명 메시지를 상기 중계 서버로부터 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 서명 메시지를 상기 애플리케이션 서버로 전송하는 동작; 및 상기 서명 메시지에 포함된 상기 전자 서명 데이터의 검증 결과를 수신하는 동작을 포함하도록 구성될 수 있다.
상기 방법 및 그 밖의 실시 예는 다음과 같은 특징을 포함할 수 있다. 상기 전자 서명 데이터는 상기 소스 데이터를 상기 이동 단말기 내에 저장된 개인키(private key)를 이용하여 전자적으로 서명한 값이고, 상기 전자 서명 데이터의 검증 결과는 상기 전자 서명 데이터를 상기 개인키와 암호학적으로 상관 관계가 있는 공개키(public key)를 이용하여 검증한 결과일 수 있다. 또한, 상기 소스 데이터는 서명 대상이 되는 대상 데이터 또는 임의의 랜덤 데이터를 포함할 수 있다. 또한, 상기 소스 데이터는 상기 애플리케이션 서버에 대한 사용자 인증 정보, 로긴 정보, 금융 거래 정보를 포함할 수 있다. 또한, 상기 소스 데이터는 상기 웹 페이지에 포함된 DOM(Document Object Model)의 형태로 상기 애플리케이션 서버로부터 수신된 것일 수 있다. 또한, 상기 이동 단말기 정보는 상기 이동 단말기의 전화번호, 식별 정보 중 어느 하나를 포함할 수 있다. 또한, 상기 이동 단말기 정보는 상기 클라이언트 장치의 사용자로부터 입력되는 것일 수 있다. 또한, 상기 이동 단말기 정보는 상기 애플리케이션 서버로부터 사용자의 회원 정보로서 기록된 전화번호 또는 사용자 식별 정보를 포함할 수 있다.
한편, 본 명세서는 전자적 서명을 수행하는 장치를 개시한다. 상기 장치는 애플리케이션 서버 및 중계서버와 연결되어 데이터를 송수신하도록 설정된 통신부; 사용자 입력을 수신하도록 설정된 입력부; 상기 애플리케이션 서버로부터 수신한 웹 페이지를 표시하도록 설정된 디스플레이부; 상기 통신부, 상기 입력부 및 상기 디스플레이부와 전기적으로 연결되어, 이를 제어하는 프로그램을 실행하도록 설정된 제어부를 포함하도록 구성될 수 있다. 상기 프로그램은 상기 디스플레이부에 웹 브라우저를 통해 웹 페이지를 표시하는 동작; 상기 통신부를 통해 상기 웹 브라우저 내에서 실행되는 스크립트 엔진에 의하여 상기 애플리케이션 서버로부터 소스 데이터를 수신하는 동작; 상기 입력부를 통해 이동 단말기 정보를 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성하고, 상기 서명 요청 메시지가 상기 이동 단말기에 전송되도록 중계 서버에 전송하는 동작; 상기 소스 데이터에 대한 전자 서명 데이터를 포함하도록 상기 이동 단말기에서 생성된 서명 메시지를 상기 중계 서버로부터 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 서명 메시지를 상기 애플리케이션 서버로 전송하는 동작; 및 상기 서명 메시지에 포함된 상기 전자 서명 데이터의 검증 결과를 수신하는 동작을 수행할 수 있다.
한편, 본 명세서는 애플리케이션 서버, 클라이언트 장치, 중계 서버 및 이동 단말기를 포함하는 전자적 서명 시스템의 제어 방법을 제시한다.
상기 클라이언트 장치가 상기 애플리케이션 서버로부터 웹 페이지 데이터를 수신하는 동작; 상기 클라이언트 장치가 웹 브라우저를 통해 상기 웹 페이지를 표시하는 동작; 상기 클라이언트 장치가 상기 웹 페이지에 포함된 서명 요청 메뉴에 대한 선택 입력을 수신한 후, 상기 웹 브라우저 내의 스크립트 엔진에 의하여 상기 애플리케이션 서버로부터 소스 데이터를 수신하는 동작; 상기 클라이언트 장치가 상기 이동 단말기의 접속 정보를 수신하는 동작; 상기 클라이언트 장치가 상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성하는 동작; 상기 클라이언트 장치가 상기 서명 요청 메시지를 상기 중계 서버에 전송하는 동작; 상기 중계 서버가 상기 서명 요청 메시지에 포함된 이동 단말기 정보를 기초로 선택된 상기 이동 단말기로 상기 소스 데이터를 전송하는 동작; 상기 소스 데이터에 대한 정보를 상기 이동 단말기의 디스플레이에 표시하는 동작; 상기 이동 단말기 내에 저장된 개인키(private key)에 접근하기 위한 장치내 인증을 수행하는 동작; 상기 소스 데이터에 대하여 상기 개인키를 이용하여 전자적으로 서명함으로써 전자 서명 데이터를 생성하고, 상기 전자 서명 데이터를 포함하는 서명 메시지를 생성하는 동작; 상기 서명 메시지를 상기 중계 서버로 전송하는 동작; 상기 클라이언트 장치가 상기 서명 메시지를 상기 중계 서버로부터 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 서명 메시지를 상기 애플리케이션 서버로 전송하는 동작; 및 상기 서명 메시지에 포함된 상기 전자 서명 데이터의 검증 결과를 수신하는 동작을 포할 수 있다.
본 명세서에 개시된 실시예에 따르는 클라이언트 장치는 다수의 사용자가 사용하는 컴퓨터의 경우 서명을 위한 프로그램 설치, 개인키 임시 저장 등을 거치지 않고 전자 서명 등의 암호화 기능을 가진 개인용 이동 단말기를 이용할 수 있다.
본 명세서에 개시된 실시 예에 따르는 클라이언트 장치에는 개인키를 이용하는 프로그램의 설치가 불필요하며, 웹 브라우저 플랫폼 내의 스크립트 엔진을 이용하여 장치 내 다른 프로세스의 개입을 최소화하며 외부 단말기의 암호화 기능을 수행할 수 있다.
본 명세서에 개시된 실시 예를 따르는 클라이언트 장치는 애플리케이션 서버가 요구하는 서명 및 서명 메시지를 생성하기 위하여 웹 브라우저 외에 별도의 보안 프로그램을 실행할 필요가 없다. 클라이언트 장치는 웹 브라우저 환경에서 실행되는 스크립트 엔진을 통해 외부 이동 단말기의 보안기능에 의해 생성된 서명 데이터 및 서명 메시지를 애플리케이션 서버의 요구에 맞게 전달할 수 있다.
본 명세서에 개시된 실시 예를 따르는 클라이언트 장치는 외부 이동 단말기의 보안 기능을 단순 서명만 수행하는 하드웨어 보안 모듈(Hardware Security Module, HSM)로서 사용하는 것이 아니라, 서명 결과를 포함하는 서명 메시지 자체를 생성할 수 있든 장치로 사용할 수 있다.
본 명세서에 개시된 실시 예를 따르는 클라이언트 장치는 다수가 이용하는 공용 클라이언트 장치인 경우(예를 들어, 공공장소에 위치한 PC, 은행 고객창구에서 사용하는 PC, PC방 등에서 사용하는 것과 같이 임대 형태로 사용 후 반환해야 하는 PC 등, 제한된 브라우징 기능만 수행하는 키오스크 장치 등)라 하더라도, 서명을 위한 프로그램 설치의 문제, 공용 컴퓨터에 개인의 인증서를 설치하는 문제, 서명 동작 수행 시 미리 설치된 악성코드에 의하여 메모리 해킹이 발생할 가능성 등을 현저하게 감소시킬 수 있다.
도 1은 본 명세서에 개시된 실시 예를 따라 이동 단말기를 이용하여 서명을 수행하는 예시적인 전자적 서명 시스템을 도시한다.
도 2는 본 명세서에 개시된 실시 예를 따르는 전자적 서명 시스템의 동작 방법을 도시한다.
도 3은 클라이언트 장치의 예시적인 구성을 도시한다.
본 명세서에 개시된 기술은 보안 장치에 적용될 수 있다. 그러나 본 명세서에 개시된 기술은 이에 한정되지 않고, 상기 기술의 기술적 사상이 적용될 수 있는 모든 전자 장치 및 방법에도 적용될 수 있다.
본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 명세서에 개시된 기술의 사상을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 명세서에 개시된 기술이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 명세서에 개시된 기술의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 본 명세서에 개시된 기술이 속하는 분야에서 통상의 지식을 가진 자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 명세서에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥 상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
본 명세서에서 사용되는 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예들을 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
또한, 본 명세서에 개시된 기술을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 기술의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 기술의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 그 기술의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
도 1은 본 명세서에 개시된 실시 예를 따라 이동 단말기를 이용하여 서명을 수행하는 예시적인 전자적 서명 시스템을 도시한다. 전자적 서명 시스템(100)은 애플리케이션 서버(110), 클라이언트 장치(120), 중계서버(130) 및 이동단말기(140)을 포함하도록 구성될 수 있다. 전자적 서명 시스템(100)을 구성하는 장치들은 네트워크를 통해서 연결된다.
애플리케이션 서버(110)는 네트워크 상에 서비스를 제공하는 서버일 수 있다. 애플리케이션 서버(110)는 웹 페이지 형태의 데이터를 유/무선 통신망에 연결된 장치에 전달할 수 있는 웹 서버 형태일 수 있다. 애플리케이션 서버(110)는 하나 이상의 서버 컴퓨팅 장치의 형태로 구현될 수 있다.
애플리케이션 서버(110)는 암호화 함수(cryptographic function)을 이용하여 인증(authentication), 전자 서명(digital signature) 등의 기능을 수행할 수 있다. 또한 애플리케이션 서버(110)는 암호화 함수를 이용하여 제공하는 서비스의 보안 기능(security function)을 제공할 수 있다. 예를 들어, 애플리케이션 서버(110)가 금융관련 서비스인 경우 거래 내용의 확인을 위하여 무결성, 부인방지 등의 기능을 제공하기 위하여 암호화 기능이 수행될 수 있다. 본 명세서에 개시된 전자적인 서명은 애플리케이션 서버(110)가 제공하는 보안 기능의 적어도 일부의 요소 기술로 사용될 수 있다.
애플리케이션 서버(110)는 서비스 이용자의 이동 단말기의 식별 번호를 저장할 수 있다. 이동 단말기의 식별 번호는 예를 들어, 전화번호, 단말기에 설정된 메시징 ID일 수 있다. 서비스 이용자의 이동 단말기의 식별 번호는 중계 서버가 서비스 이용자의 이동 단말기로 메시지를 전송하기 위하여 사용될 수 있다. 예를 들어, 이동 단말기의 식별 번호가 전화번호인 경우, 중계 서버는 SMS, MMS 등의 통신망을 이용한 메시징 방식을 이용하여 이동 단말기에 데이터를 전달할 수 있다. 또한 이동 단말기의 식별 번호는 예를 들어, 애플ID, 구글ID와 같이 이동 단말기에 적용된 기본 메시지 시스템에서 사용되는 정보일 수 있으며, 이 경우 중계 서버는 기본 메시지 서비스를 이용하여 이동 단말기로 메시지를 전송할 수 있다. 예를 들어, 중계 서버는 이동 단말기에 설정된 메시징 ID를 기초로 PUSH 등의 방법을 통해 메시지를 이동 단말기에 메시지를 전송할 수 있다. 또한, 서비스 이용자의 식별 번호는 애플리케이션 서버(110)에 저장된 것이 아니라, 사용자로부터 입력 받아 사용할 수 있다.
클라이언트 장치(120)는 유/무선으로 통신망에 연결되어, 애플리케이션 서버(110) 및 다른 장치들과 통신할 수 있으며, 예를 들어, 데스크톱(desktop), 랩톱(laptop), 스마트폰, 태블릿, 키오스크(kiosk) 장치, 셋탑박스(set-top box) 등 다양한 형태의 전자 장치로 구현될 수 있다. 클라이언트 장치(120)는 웹 서버가 제공하는 웹페이지를 열람하고 데이터 입력 등이 가능한 웹 브라우저가 설치되어 있는 장치이다. 클라이언트 장치(120)의 웹 브라우저는 스크립트 엔진(script engine)이 포함되어 웹 서버 등 외부 장치와 통신을 수행할 수 있으며, 웹 서버로부터 전송된 데이터를 해석하고, 외부 장치에 HTTP(Hyper-Text Transfer Protocol) 방식 등을 이용하여 데이터를 송수신 할 수 있다.
클라이언트 장치(120)의 웹 브라우저에 포함된 스크립트 엔진은, 예를 들어, 자바스크립트 엔진(JavaScript Engine)일 수 있다. 클라이언트 장치(120)에 포함된 자바스크립트 엔진은 웹 환경에서 널리 사용되는 것으로, DOM(Data Object Model) 객체에 접근하는 간단한 코드를 수행하는 것을 비롯하여, AJAX(Asynchronous JavaScript and XML) 기술을 이용하여 데스크탑 어플리케이션 수준의 웹 애플리케이션을 구현할 수 있는 성능의 스크립트 엔진일 수 있다. 클라이언트 장치(120)의 스크립트 엔진은 브라우저의 구성요소 중 하나로서 스크립트 언어로 표현된 코드를 컴파일하여 스레드 형태로 실행하는 기능을 수행할 수 있다. 스크립트 엔진에 의해 수행되는 스레드는 클라이언트 장치(120) 내에서 실행되고 있는 다른 프로세스와 구분되어 수행될 수 있다.
중계서버(130)는 유/무선 통신망에 연결되어 클라이언트 장치(120) 및 이동 단말기(140)과 데이터를 송수신할 수 있는 장치이다. 중계 서버(130)는 하나 이상의 서버로 구현될 수 있으며, 네트워크 상의 요청을 SMS, MMS, Push Messaging 등의 기능을 이용하여 이동 단말기로 전송할 수 있다. 또한, 중계 서버(130)는 이동 단말기(140)의 보안 실행 환경을 원격에서 제어할 수 있도록 허가된 서버일 수 있다. 이를 위하여 중계 서버(130)와 이동 단말기(140) 내의 보안 실행 환경에서 동작하도록 승인된 어플리케이션과의 상호 인증 동작이 수행될 수 있다.
이동단말기(140)는 암호화 기능을 수행하는 모듈을 포함할 수 있다. 이동단말기(140)는 암호화 기능을 수행하기 위한 별도의 보안 레벨을 가진 실행환경을 운용할 수 있다. 이를 위하여 이동 단말기(140)는 보안 레벨이 다른 복수의 실행 환경을 운용할 수 있다. 이동 단말기(140) 내의 일반 실행 환경은 낮은 보안 레벨을 가진 실행 환경으로, 예를 들어, REE(rich execution environment)이라고 불릴 수 있다. 또한, 일반 실행 환경과 구분되는 보안 실행 환경은 높은 보안 레벨을 가진 실행환경으로, 예를 들어, TEE(trusted execution environment)이라고 불릴 수 있다. 일반 실행 환경은, 예를 들어, 이동 단말기 내의 일반 어플리케이션, 공유 메모리, Rich OS 컴포넌트, 일반 장치 드라이버 등이 실행되는 환경일 수 있다. 일반 실행 환경 내의 일반 어플리케이션은 전화, 메시지, 결제, 알람, 브라우저, 또는 카메라 등의 일반적인 기능을 수행할 수 있는 하나 이상의 어플리케이션을 포함할 수 있다. 다만, 이동 단말기(140)의 보안 실행 환경은, 예를 들면, 상대적으로 높은 보안 레벨이 요구되는 데이터를 안전한 환경 내에서 저장하고 관련 동작을 수행할 수 있다. 이동 단말기(140)는, 예를 들면, 암호화 기능을 수행하기 위하여 필요한 암호화 키를 보안 실행 환경에 저장할 수 있으며, 암호화 키를 이용한 서명, 검증, 암호화 또는 복호화와 같은 암호화 기능을 보안 실행 환경에서 실행할 수 있다. 이동 단말기(140)의 보안 실행 환경은 장치 내에 포함된 애플리케이션 프로세서(application processor) 상에서 동작할 수 있고, 별도의 신뢰할 수 있는 하드웨어 구조에 기반하여 동작할 수 있다. 보안 실행 환경은, 예를 들면, 어플리케이션 프로세서 또는 메모리를 일반 영역과 보안 영역으로 구분하여 보안 영역에서 동작할 수 있다. 보안 실행 환경은 보안이 필요한 소프트웨어나 하드웨어를 보안 영역에서만 동작하게 하도록 설정할 수 있으며, 일반 실행환경에서 수행되는 애플리케이션 등은 일반 실행 환경 및 보안 실행 환경 모두를 위한 공유 메모리(shared memory) 또는 보안 실행 환경에 대한 API 등을 통해서 보안 실행 환경의 동작 결과물에 접근 할 수 있다. 상기 보안 실행 환경은, 예를 들어, TrustZone, IPT, Secure Enclave 등으로 불릴 수 있다.
이동 단말기(140)는 보안 사용자 인터페이스(trusted user interface, TUI)를 구비할 수 있다. 보안 사용자 인터페이스는 보안 실행 환경에서 디스플레이에 표시하고, 디스플레이와 결합된 입력 모듈을 통해 사용자 입력을 수신하는 동작을 진행하는 동안 일반 실행 환경에서 실행되는 어플리케이션과 독립된 입출력 동작을 수행할 수 있도록 한다. 또한 디스플레이에 표시된 화면이 보안 실행 환경 내에서 실행되는 승인된 어플리케이션(trusted application)에 의해서 출력되는 것인지 확인할 수 있게 한다. 본 명세서에 개시된 기술을 따르는 이동 단말기(140)는 보안 실행 환경에서 전자적인 서명에 필요한 동작을 수행하며 사용자에게 서명 내용을 표시하거나 확인을 요청하는 화면 등을 표시하는 동작은 보안 사용자 인터페이스를 이용하여 수행할 수 있다.
도 2는 본 명세서에 개시된 실시 예를 따르는 전자적 서명 시스템의 동작 방법을 도시한다.
클라이언트 장치(120)는 사용자가 애플리케이션 서버(110)이 제공하는 웹 페이지를 열람하기 위한 장치이며, 서명 요청을 수행하기 전에 사전 작업으로 웹 브라우저를 실행한다(151). 웹 브라우저는, 예를 들어, 자바스크립트(JavaScript)와 같은 언어로 표현된 실행 코드를 수행시킬 수 있는 스크립트 엔진을 포함한다.
클라이언트 장치(120)가 상기 애플리케이션 서버(110)로 서명을 위한 웹페이지를 요청하고(153), 애플리케이션 서버(110)는 상기 요청에 대응하여 서명을 위한 웹 페이지 데이터를 전송한다(155). 클라이언트 장치(120)는 애플리케이션 서버(110)로부터 수신한 웹페이지 데이터를 디스플레이에 표시한다(157). 일 실시예로서, 클라이언트 장치(120)가 표시하는 웹 페이지에는 서명 요청 메뉴가 표시될 수 있으며, 표시된 웹 페이지가 서비스 이용을 위하여 로그인이 필요한 페이지로 이동하기 위한 페이지 인 경우, 상기 서명 요청 메뉴는, 예를 들어, '로그인', '공인인증서로그인' 등과 같이 인증을 위한 서명을 요청하는 메뉴일 수 있다. 다른 실시 예로서, 클라이언트 장치(120)가 표시하는 웹 페이지에는 금융 거래를 위한 서명 요청 메뉴가 표시될 수 있으며, 표시된 웹 페이지가 거래 내용을 확인하기 위해 필요한 페이지로 이동하기 위한 페이지 인 경우, 상기 서명 요청 메뉴는 '이체확인', '거래내용 확인' 등과 같이 인증을 위한 서명을 요청하는 메뉴일 수 있다. 그 밖에 상기 서명 요청 메뉴는 클라이언트 장치(120)의 사용자에 대한 실명 확인일 수 있다.
다음으로, 클라이언트 장치(120)가 상기 서명 요청 메뉴에 대한 선택 입력을 수신한 후, 상기 스크립트 엔진에 의하여 애플리케이션 서버(110)로부터 소스 데이터를 수신할 수 있다(159). 상기 소스 데이터는 서명 대상이 되는 대상 데이터 또는 임의의 랜덤 데이터를 포함할 수 있다. 상기 대상 데이터는 전자적 서명(digital signature)에 의하여 보호될 데이터이며, 사용자의 비밀키(private key)를 이용하여 서명이 이루어지므로 상기 비밀키를 사용할 수 있는 권한을 가진 자의 서명에 해당하여 사용자 인증 기능을 수행할 수 있다. 일 실시 예에서, 상기 대상 데이터는 상기 애플리케이션 서버에 대한 사용자 인증 정보, 로긴 정보, 금융 거래 정보를 포함할 수 있다. 상기 대상 데이터는 클라이언트 장치(120)의 별도 요청에 의해서 애플리케이션 서버(110)로부터 수신할 수 있다. 그 밖에 상기 대상 데이터는 상기 웹페이지 전송(155)에 포함되어 미리 전송되었고, 클라이언트 장치(120)는 상기 웹 페이지로부터 필요한 상기 대상 데이터를 획득할 수 있다. 상기 대상 데이터는 상기 웹 페이지에 포함된 DOM(Document Object Model)의 형태로 수신된 것일 수 있다. 상기 소스 데이터는 임의의 랜덤 데이터(random data)를 포함할 수 있으며, 재연 공격(replay attack)을 방지하기 위한 수단이 될 수 있다.
다음으로, 클라이언트 장치(120)는 이동 단말기(140)의 접속 정보를 수신할 수 있다(161). 상기 이동 단말기의 접속 정보는 서비스 이용자의 이동 단말기를 식별할 수 있는 정보이며, 추후 중계서버(130)는 이동 단말기의 접속 정보를 기초로 데이터를 전송할 이동 단말기를 선택할 수 있다. 이동 단말기의 식별 번호는 예를 들어, 전화번호, 또는 단말기에 설정된 메시징 ID일 수 있다.
일 실시 예에서, 클라이언트 장치(120)는 웹 페이지 상의 사용자 입력을 통해 상기 이동 단말기(140)의 접속 정보를 수신할 수 있다. 클라이언트 장치(120)가 직접 사용자로부터 입력 받는 이동 단말기의 접속 정보는, 예를 들어, 이동 단말기(140)의 전화번호, 또는 메시징 ID를 포함할 수 있다.
다른 실시 예에서, 클라이언트 장치(120)가 수신하는 정보는 이동 단말기의 접속 정보를 획득하기 위한 간접적인 정보 즉, 중계 서버(130) 또는 어플리케이션 서버(110)의 사용자 이름(username)과 같은 사용자 식별정보(ID)일 수 있다. 클라이언트 장치(120)는 애플리케이션 서버(110)가 미리 저장하고 있는 이동 단말기 식별 정보를 수신할 수도 있다(161a). 이 경우 상기 이동 단말기 정보는 애플리케이션 서버(110) 내의 사용자의 회원 정보로서 기록된 전화번호 또는 기타 사용자 식별 정보일 수 있다. 즉, 클라이언트 장치(120)는 애플리케이션 서버(110)에게 제공하는 사용자 식별 정보를 기초로 상기 사용자의 이동 단말기 접속 정보를 수신할 수 있다.
다음으로, 클라이언트 장치(120)는 상기 웹 브라우저 상에서 실행되는 상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성할 수 있다. 상기 서명 요청 메시지는 외부 장치에게 상기 소스 데이터에 대한 서명을 요청하기 위한 것이다. 클라이언트 장치(120)는 생성된 상기 서명 요청 메시지를 중계 서버(130)로 전송할 수 있다(163). 이는 본 명세서에 개시된 전자적 서명 방법을 따르는 클라이언트 장치가 서명이 필요한 상기 소스 데이터에 대하여 외부 기기에 구비된 서명 기능을 이용하여 서명 데이터를 획득할 수 있도록 요청하는 동작이다. 종래에는 클라이언트 장치(120)에 설치된 웹 브라우저 외의 다른 프로세스 또는 웹 브라우저에 임베딩(embedding)되어 실행되는 코드에 의하여 상기 소스 데이터에 대한 전자 서명을 수행하였으나, 이는 공인인증서 또는 개인키 등의 보안상 민감한 정보를 데이터를 클라이언트 장치(120)에 저장할 수 없거나, 연산 결과에 대한 유출 우려로 인하여 실행이 곤란한 점을 개선하기 위하여 중계 서버(130)를 거쳐 사용자의 이동 단말기(140)에 구비된 보안 기능을 이용하기 위한 것이다. 실시 예에 따라, 중계 서버(130)가 사용자 데이터베이스를 가지도록 구현된 경우 클라이언트 장치(120)는 중계 서버(130) 내의 상기 데이터베이스로부터 이동 단말기 정보를 획득할 수 있도록 상기 서명 요청 메시지에 명시적인 이동 단말기 정보 대신 사용자 식별 정보를 포함시킬 수 있다.
다음으로, 중계 서버(130)가 클라이언트 장치(120)로부터 수신한 상기 서명 요청 메시지에 포함된 상기 소스 데이터를 이동 단말기(140)에 전송할 수 있다(165). 일 실시 예로서, 중계 서버(130)는 상기 서명 요청 메시지에 포함된 이동 단말기 정보를 기초로 선택된 이동 단말기(140)에 상기 소스 데이터를 전송한다.
다음으로, 이동 단말기(140)는 중계 서버(130)로부터 소스 데이터를 수신하고, 보안 사용자 인터페이스를 통하여 이동 단말기(140)의 디스플레이에 상기 소스 데이터를 표시할 수 있다(167).
다음으로, 이동 단말기(140)는 장치 내 보안 실행 환경을 사용하기 위하여 필요한 경우 보안 사용자 인터페이스를 통하여 장치 내 인증 정보를 수신하고, 상기 인증 정보를 기초로 보안 실행 환경을 사용할 수 있도록 장치 내 인증을 수행한다(169).
다음으로, 이동 단말기(140)는 상기 소스 데이터에 대하여 상기 보안 실행 환경 내에서 사용자의 개인키를 이용하여 전자적으로 서명함으로써 전자 서명 데이터를 생성한다(171). 이동 단말기(140)는 상기 생성된 전자 서명 데이터를 애플리케이션 서버(110)가 수신할 것으로 기대하는 서명 메시지 포맷으로 생성할 수 있다. 일 실시 예에서, 이동 단말기(140)는 상기 전자 서명 데이터를 기초로 공개키 암호 표준(Public-Key Cryptography Standard, PKCS) #7에 해당하는 암호 메시지 포맷에 해당하는 서명 메시지를 생성할 수 있다. 종래 기술에서는, 클라이언트 장치(120) 내에서 웹 브라우저 외에 별도로 설치되어 실행되는 보안 프로그램에 의하여 서명 메시지를 생성할 수 밖에 없었으나, 본 명세서에 개시된 기술에 따르면, 이동 단말기(140)에 탑재된 보안 기능을 이용하여 애플리케이션 서버(110)이 인식할 수 있는 서명 메시지 포맷이 생성될 수 있다. 다른 실시 예에서, 이동 단말기(140)는 상기 서명 데이터를 기초로 애플리케이션 서버(110)가 인식 가능한 미리 정해진 포맷의 서명 메시지를 생성할 수 있다.
다음으로, 이동 단말기(140)는 상기 생성된 서명 메시지를 중계 서버(130)에 전송하고(173), 중계 서버(130)는 상기 서명 메시지를 수신하여 클라이언트 장치(120)에 전송할 수 있다(175). 클라이언트 장치(120)는 상기 서명 메시지를 수신하고 상기 스크립트 엔진에 의하여 애플리케이션 서버(110)에 전송한다(177).
다음으로, 애플리케이션 서버(110)는 상기 서명 메시지를 수신하고, 상기 서명 메시지 내에 포함된 상기 서명 데이터를 검증한다(179). 검증 동작은 애플리케이션 서버(110)에 미리 저장된 사용자의 인증서 또는 공개키 정보를 이용하여 애플리케이션 서버(110)가 제공한 소스 데이터에 대하여 올바른 전자 서명이 이루어 졌는지를 확인하는 것이다. 애플리케이션 서버(110)는 상기 검증 결과를 클라이언트 장치(120)에 전송할 수 있다(181).
도 3은 클라이언트 장치의 예시적인 구성을 도시한다. 클라이언트 장치(120)는 애플리케이션 서버 및 중계서버와 연결되어 데이터를 송수신하도록 설정된 통신부(121); 사용자 입력을 수신하도록 설정된 입력부(123); 상기 애플리케이션 서버로부터 수신한 웹 페이지를 표시하도록 설정된 디스플레이부(125); 상기 통신부, 상기 입력부 및 상기 디스플레이부와 전기적으로 연결되어, 이를 제어하는 프로그램을 실행하도록 설정된 제어부(127)를 포함하도록 구성될 수 있다. 제어부(127)이 실행하는 프로그램은 본 명세서에 개시된 클라이언트 장치의 동작을 포함하도록 구성될 수 있다. 예를 들어, 상기 프로그램은 상기 디스플레이부에 웹 브라우저를 통해 웹 페이지를 표시하는 동작; 상기 통신부를 통해 상기 웹 브라우저 내에서 실행되는 스크립트 엔진에 의하여 상기 애플리케이션 서버로부터 소스 데이터를 수신하는 동작; 상기 입력부를 통해 이동 단말기 정보를 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성하고, 상기 서명 요청 메시지가 상기 이동 단말기에 전송되도록 중계 서버에 전송하는 동작; 상기 소스 데이터에 대한 전자 서명 데이터를 포함하도록 상기 이동 단말기에서 생성된 서명 메시지를 상기 중계 서버로부터 수신하는 동작; 상기 스크립트 엔진에 의하여 상기 서명 메시지를 상기 애플리케이션 서버로 전송하는 동작; 및 상기 서명 메시지에 포함된 상기 전자 서명 데이터의 검증 결과를 수신하는 동작을 수행하는 명령어를 포함할 수 있다.
이상에서 본 명세서의 기술에 대한 바람직한 실시 예가 첨부된 도면들을 참조하여 설명되었다. 여기서, 본 명세서 및 청구 범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 한다.
본 발명의 범위는 본 명세서에 개시된 실시 예들로 한정되지 아니하고, 본 발명은 본 발명의 사상 및 특허청구범위에 기재된 범주 내에서 다양한 형태로 수정, 변경, 또는 개선될 수 있다.

Claims (10)

  1. 웹 브라우저를 통해 웹 페이지를 표시하는 동작;
    상기 웹 브라우저 내에서 실행되는 스크립트 엔진에 의하여 상기 애플리케이션 서버로부터 소스 데이터를 수신하는 동작;
    이동 단말기 정보를 수신하는 동작;
    상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성하고, 상기 서명 요청 메시지가 상기 이동 단말기에 전송되도록 중계 서버에 전송하는 동작;
    상기 소스 데이터에 대한 전자 서명 데이터를 포함하도록 상기 이동 단말기에서 생성된 서명 메시지를 상기 중계 서버로부터 수신하는 동작;
    상기 스크립트 엔진에 의하여 상기 서명 메시지를 상기 애플리케이션 서버로 전송하는 동작; 및
    상기 서명 메시지에 포함된 상기 전자 서명 데이터의 검증 결과를 수신하는 동작을 포함하는 클라이언트 장치의 전자적 서명 방법.
  2. 제1 항에 있어서,
    상기 전자 서명 데이터는 상기 소스 데이터를 상기 이동 단말기 내에 저장된 개인키(private key)를 이용하여 전자적으로 서명한 값이고,
    상기 전자 서명 데이터의 검증 결과는 상기 전자 서명 데이터를 상기 개인키와 암호학적으로 상관 관계가 있는 공개키(public key)를 이용하여 검증한 결과인 클라이언트 장치의 전자적 서명 방법.
  3. 제2 항에 있어서,
    상기 소스 데이터는 서명 대상이 되는 대상 데이터 또는 임의의 랜덤 데이터를 포함하는 클라이언트 장치의 전자적 서명 방법.
  4. 제3 항에 있어서,
    상기 소스 데이터는 상기 애플리케이션 서버에 대한 사용자 인증 정보, 로긴 정보, 금융 거래 정보를 포함하는 클라이언트 장치의 전자적 서명 방법.
  5. 제4 항에 있어서, 상기 소스 데이터는 상기 웹 페이지에 포함된 DOM(Document Object Model)의 형태로 상기 애플리케이션 서버로부터 수신된 클라이언트 장치의 전자적 서명 방법.
  6. 제1 항에 있어서, 상기 이동 단말기 정보는 상기 이동 단말기의 전화번호, 식별 정보 중 어느 하나를 포함하는 클라이언트 장치의 전자적 서명 방법.
  7. 제6 항에 있어서, 상기 이동 단말기 정보는 상기 클라이언트 장치의 사용자로부터 입력되는 클라이언트 장치의 전자적 서명 방법.
  8. 제6 항에 있어서, 상기 이동 단말기 정보는 상기 애플리케이션 서버로부터 사용자의 회원 정보로서 기록된 전화번호 또는 사용자 식별 정보를 포함하는 클라이언트 장치의 전자적 서명 방법.
  9. 애플리케이션 서버 및 중계서버와 연결되어 데이터를 송수신하도록 설정된 통신부;
    사용자 입력을 수신하도록 설정된 입력부;
    상기 애플리케이션 서버로부터 수신한 웹 페이지를 표시하도록 설정된 디스플레이부;
    상기 통신부, 상기 입력부 및 상기 디스플레이부와 전기적으로 연결되어, 이를 제어하는 프로그램을 실행하도록 설정된 제어부를 포함하되,
    상기 프로그램은
    상기 디스플레이부에 웹 브라우저를 통해 웹 페이지를 표시하는 동작;
    상기 통신부를 통해 상기 웹 브라우저 내에서 실행되는 스크립트 엔진에 의하여 상기 애플리케이션 서버로부터 소스 데이터를 수신하는 동작;
    상기 입력부를 통해 이동 단말기 정보를 수신하는 동작;
    상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성하고, 상기 서명 요청 메시지가 상기 이동 단말기에 전송되도록 중계 서버에 전송하는 동작;
    상기 소스 데이터에 대한 전자 서명 데이터를 포함하도록 상기 이동 단말기에서 생성된 서명 메시지를 상기 중계 서버로부터 수신하는 동작;
    상기 스크립트 엔진에 의하여 상기 서명 메시지를 상기 애플리케이션 서버로 전송하는 동작; 및
    상기 서명 메시지에 포함된 상기 전자 서명 데이터의 검증 결과를 수신하는 동작을 수행하는 명령어를 포함하는 클라이언트 장치.
  10. 애플리케이션 서버, 클라이언트 장치, 중계 서버 및 이동 단말기를 포함하는 전자적 서명 시스템의 제어 방법으로,
    상기 클라이언트 장치가 상기 애플리케이션 서버로부터 웹 페이지 데이터를 수신하는 동작;
    상기 클라이언트 장치가 웹 브라우저를 통해 상기 웹 페이지를 표시하는 동작;
    상기 클라이언트 장치가 상기 웹 페이지에 포함된 서명 요청 메뉴에 대한 선택 입력을 수신한 후, 상기 웹 브라우저 내의 스크립트 엔진에 의하여 상기 애플리케이션 서버로부터 소스 데이터를 수신하는 동작;
    상기 클라이언트 장치가 상기 이동 단말기의 접속 정보를 수신하는 동작;
    상기 클라이언트 장치가 상기 스크립트 엔진에 의하여 상기 이동 단말기 정보 및 상기 소스 데이터를 포함하는 서명 요청 메시지를 생성하는 동작;
    상기 클라이언트 장치가 상기 서명 요청 메시지를 상기 중계 서버에 전송하는 동작;
    상기 중계 서버가 상기 서명 요청 메시지에 포함된 이동 단말기 정보를 기초로 선택된 상기 이동 단말기로 상기 소스 데이터를 전송하는 동작;
    상기 소스 데이터에 대한 정보를 상기 이동 단말기의 디스플레이에 표시하는 동작;
    상기 이동 단말기 내에 저장된 개인키(private key)에 접근하기 위한 장치내 인증을 수행하는 동작;
    상기 소스 데이터에 대하여 상기 개인키를 이용하여 전자적으로 서명함으로써 전자 서명 데이터를 생성하고, 상기 전자 서명 데이터를 포함하는 서명 메시지를 생성하는 동작;
    상기 서명 메시지를 상기 중계 서버로 전송하는 동작;
    상기 클라이언트 장치가 상기 서명 메시지를 상기 중계 서버로부터 수신하는 동작;
    상기 스크립트 엔진에 의하여 상기 서명 메시지를 상기 애플리케이션 서버로 전송하는 동작; 및
    상기 서명 메시지에 포함된 상기 전자 서명 데이터의 검증 결과를 수신하는 동작을 포함하는 시스템의 전자적 서명 방법.
KR1020170105629A 2017-08-21 2017-08-21 장치 내 브라우저의 스크립트 엔진과 외부 이동 단말기를 이용한 전자 서명 메시지 생성 KR20190020542A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170105629A KR20190020542A (ko) 2017-08-21 2017-08-21 장치 내 브라우저의 스크립트 엔진과 외부 이동 단말기를 이용한 전자 서명 메시지 생성

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170105629A KR20190020542A (ko) 2017-08-21 2017-08-21 장치 내 브라우저의 스크립트 엔진과 외부 이동 단말기를 이용한 전자 서명 메시지 생성

Publications (1)

Publication Number Publication Date
KR20190020542A true KR20190020542A (ko) 2019-03-04

Family

ID=65759864

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170105629A KR20190020542A (ko) 2017-08-21 2017-08-21 장치 내 브라우저의 스크립트 엔진과 외부 이동 단말기를 이용한 전자 서명 메시지 생성

Country Status (1)

Country Link
KR (1) KR20190020542A (ko)

Similar Documents

Publication Publication Date Title
EP3291504B1 (en) Authentication and secure transmission of data between signature devices and host computers using transport layer security
US11870769B2 (en) System and method for identifying a browser instance in a browser session with a server
US9838205B2 (en) Network authentication method for secure electronic transactions
US20230245092A1 (en) Terminal for conducting electronic transactions
US9325708B2 (en) Secure access to data in a device
EP3208732A1 (en) Method and system for authentication
EP2999189A1 (en) Network authentication method for secure electronic transactions
CN107979467B (zh) 验证方法及装置
EP3662430B1 (en) System and method for authenticating a transaction
US20180130056A1 (en) Method and system for transaction security
CN108616352B (zh) 基于安全元件的动态口令生成方法和系统
CN108335105B (zh) 数据处理方法及相关设备
EP3133791B1 (en) Double authentication system for electronically signed documents
JP6378424B1 (ja) 無欠性及び保安性が強化された使用者認証方法
US11936649B2 (en) Multi-factor authentication
US20240113898A1 (en) Secure Module and Method for App-to-App Mutual Trust Through App-Based Identity
KR20190020542A (ko) 장치 내 브라우저의 스크립트 엔진과 외부 이동 단말기를 이용한 전자 서명 메시지 생성
KR102547682B1 (ko) Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법
KR101737925B1 (ko) 도전-응답 기반의 사용자 인증 방법 및 시스템
KR20170032155A (ko) Otp를 이용한 사용자 인증 방법 및 시스템
KR20220116483A (ko) 악성 프로그램 코드 주입으로부터의 보호를 위한 시스템 및 방법
KR102092377B1 (ko) 사용자 인증 시스템 및 그 방법, 그리고 이에 적용되는 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E601 Decision to refuse application