KR20220031095A - 인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체 - Google Patents

인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체 Download PDF

Info

Publication number
KR20220031095A
KR20220031095A KR1020227004361A KR20227004361A KR20220031095A KR 20220031095 A KR20220031095 A KR 20220031095A KR 1020227004361 A KR1020227004361 A KR 1020227004361A KR 20227004361 A KR20227004361 A KR 20227004361A KR 20220031095 A KR20220031095 A KR 20220031095A
Authority
KR
South Korea
Prior art keywords
authentication
time stamp
key
server
terminal
Prior art date
Application number
KR1020227004361A
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 베이징 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드
Publication of KR20220031095A publication Critical patent/KR20220031095A/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
    • 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/3297Cryptographic 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 time stamps, e.g. generation of time stamps
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp

Abstract

본 발명은 인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체를 제공한다. 상기 방법은, 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계; 서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신하는 단계; 서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하는 단계 - 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 및 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하는 단계를 포함한다.

Description

인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체
관련 출원의 상호 참조
본 발명은 출원번호가 202010898310.5이고 출원일자가 2020년 8월 31일이며 발명의 명칭이 “인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체”인 중국 특허 출원에 기반하여 제출하였고 상기 중국 특허 출원의 우선권을 주장하는 바, 상기 중국 특허 출원의 모든 내용은 참조로서 본 발명에 인용된다.
본 발명은 인터넷 기술분야에 관한 것으로, 특히 인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체에 관한 것이다.
인터넷 기술의 대중화 및 네트워크 서비스의 복잡 정도의 끊임없는 증가로 인해, 기존 기술에서 모든 컴퓨팅 태스크를 서버에 두는 운영 모드로 인해 서버의 부하가 점점 높아지고 있다. 상기 문제를 해결하기 위해, 네트워크 서비스의 관리자는 일부 또는 모든 컴퓨팅 태스크를 단말 기기에서 수행하여 서버의 부하를 감소시킨다. 예를 들어, WebAssembly(스택 기반 가상 머신의 바이너리 명령 포맷, wasm) 기술을 사용하여 컴퓨팅 태스크를 wasm 파일에 저장하고 이를 알고리즘 파일로서 단말 기기에 배치할 수 있다. 컴퓨팅 태스크가 알고리즘 파일을 통해 단말 기기에 배치되는 경우, 소스 코드는 단말 기기에 의해 완전히 제어되므로, 컴퓨팅 태스크가 불법적으로 호출되는 문제가 존재할 수 있다.
본 발명의 실시예는 인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체를 제공하여 인증 프로세스의 안전성을 향상시킬 수 있고, 나아가, 본 발명의 실시예에 의해 제공되는 인증 방법을 통해 컴퓨팅 태스크가 불법적으로 호출되는 것을 효과적으로 방지할 수 있다.
본 발명의 실시예에 따른 기술적 해결수단은 하기와 같이 구현된다.
본 발명의 실시예는, 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계; 서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신하는 단계; 서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하는 단계 - 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 및 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하는 단계를 포함하는 단말기에 적용되는 인증 방법을 제공한다.
상기 실시형태를 통해, 상기 검증할 정보에 대한 검증 프로세스를 서버 측에서 수행할 수 있음으로써, 단말기가 복잡한 알고리즘 태스크를 수행하는 프로세스에서, 단말기의 컴퓨팅 압력을 감소시키고; 이 밖에, 본 발명의 실시예에서 제공된 암호화/복호화 메커니즘은 또한 상이한 타임 스탬프에 따라 상이한 암호화/복호화 방법을 선택할 수 있음으로써, 인증 프로세스의 안전성을 더 향상시키며; 단말기와 서버는 동일한 암호화/복호화 메커니즘을 사용하므로, 배치가 쉽고 적용 가능성이 강하고; 본 발명의 실시예에 의해 제공되는 인증 방법을 통해 계산 태스크가 불법적으로 호출되는 것을 효과적으로 방지할 수도 있음으로써, 계산 태스크의 안전성을 향상시킨다.
일부 가능한 실시형태에서, 상기 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계는, 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하는 단계; 및 제1 키에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계를 포함한다.
일부 가능한 실시형태에서, 상기 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하는 단계는, 제1 타임 스탬프에 대해 제1 변환 처리를 수행하여 제1 파라미터를 획득하는 단계; 및 기설정된 초기 키 및 제1 파라미터에 대해 제2 변환 처리를 수행하여 제1 키를 획득하는 단계를 포함한다.
일부 가능한 실시형태에서, 상기 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하는 단계는, 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하는 단계; 및 제2 키에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하는 단계를 포함한다.
일부 가능한 실시형태에서, 상기 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하는 단계는, 제2 타임 스탬프에 대해 제1 변환 처리를 수행하여 제2 파라미터를 획득하는 단계; 및 기설정된 초기 키 및 제2 파라미터에 대해 제2 변환 처리를 수행하여 제2 키를 획득하는 단계를 포함한다.
상기 실시형태를 통해, 상이한 타임 스탬프에 따라 상이한 키를 생성하고, 상이한 타임 스탬프에 따라 생성된 키를 통해 검증할 정보에 대한 암호화 프로세스 및 제2 암호문에 대한 복호화 프로세스를 완료할 수 있음으로써, 단말기와 서버에서의 제1 암호문, 제2 암호문의 전송 프로세스의 안전성을 보장할 수 있고; 동시에, 상이한 타임 스탬프에 대응되는 암호화 키가 모두 상이하므로, 불법 사용자가 대량의 전송 암호문을 하이재킹하여 암호화 키를 해독하는 위험을 효과적으로 방지할 수 있으며; 동시에, 본 발명에 의해 제공된 동적 키는 제1 타임 스탬프에 따라 제1 변환 처리 및 제2 변환 처리를 거쳐 획득된 것이므로, 불법 사용자가 키 생성 알고리즘을 해독하는 난이도를 향상시키고, 인증 프로세스의 안전성을 더 향상시킨다.
일부 가능한 실시형태에서, 상기 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계 이전에, 방법은 알고리즘 파일에 대한 초기화 요청을 수신하는 단계를 더 포함하며, 초기화 요청은 알고리즘 파일 중의 알고리즘 태스크의 호출을 요청하기 위한 것이다.
일부 가능한 실시형태에서, 상기 인증 방법은, 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정하는 단계를 더 포함하고, 상기 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정하는 단계는, 인증 결과가 인증의 통과를 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 성공인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 허용하는 단계; 및 인증 결과가 인증에 통과하지 못했음을 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 금지하는 단계를 포함한다.
일부 가능한 실시형태에서, 상기 인증 방법은, 인증 결과의 상태 정보를 결정하는 단계; 및 인증 결과가 무효 상태인 경우, 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정하는 단계를 더 포함하고, 상기 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정하는 단계는, 인증 결과가 유효 상태인 경우, 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정하는 단계를 포함한다.
상기 실시형태를 통해, 상기 알고리즘 파일 중 알고리즘 태스크의 안전성을 보장할 수 있음으로써, 불법 사용자가 상기 알고리즘 파일 중 알고리즘 태스크를 불법적으로 호출하는 것을 방지한다.
일부 가능한 실시형태에서, 상기 인증 방법은, 서버에 시간 동기화 요청을 송신하고, 서버에 의해 송신된 시간 동기화 응답을 수신하며, 시간 동기화 응답에 따라 단말기와 서버 사이의 시간 동기화를 수행하는 단계를 더 포함하고, 상기 인증 결과의 상태 정보를 결정하는 단계는, 인증 결과를 획득한 경우, 시간 동기화를 수행한 후 단말기의 시스템 시간을 제3 타임 스탬프로 사용하는 단계; 및 제3 타임 스탬프 및 제2 타임 스탬프에 따라 인증 결과의 상태 정보를 결정하는 단계를 포함한다.
일부 가능한 실시형태에서, 상기 제3 타임 스탬프 및 제2 타임 스탬프에 따라 인증 결과의 상태 정보를 결정하는 단계는, 제3 타임 스탬프와 제2 타임 스탬프 사이의 시간 간격이 기설정된 유효 시간 임계값을 초과하는 경우, 인증 결과가 무효 상태인 것으로 결정하는 단계; 및 제3 타임 스탬프와 제2 타임 스탬프 사이의 시간 간격이 유효 시간 임계값을 초과하지 않은 경우, 인증 결과가 유효 상태인 것으로 결정하는 단계를 포함한다.
상기 실시형태를 통해, 제2 타임 스탬프 및 제3 타임 스탬프에 따라 상기 인증 결과의 생성 시간을 결정하고, 나아가 상기 인증 결과의 유효성을 결정할 수 있음으로써, 재전송 공격을 방지하고, 시스템의 안전성을 향상시킬 수 있다.
일부 가능한 실시형태에서, 상기 검증할 정보는 현재 도메인 네임, 랜덤 검사 코드 및 사용자에 의해 입력된 신원 식별자 중 적어도 하나를 포함한다.
본 발명의 실시예는, 단말기에 의해 송신된, 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 수신하는 단계; 제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하는 단계; 검증할 정보를 검증하여 인증 결과를 획득하는 단계; 제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득하는 단계; 및 단말기에 제2 타임 스탬프 및 제2 암호문을 포함한 인증 응답을 송신하는 단계를 포함하며, 인증 응답은 단말기가 복호화된 제2 암호문에 따라 인증 결과를 획득하도록 지시하기 위한 것인, 서버에 적용되는 인증 방법을 제공한다.
상기 실시형태를 통해, 상기 검증할 정보에 대한 검증 프로세스를 서버 측에서 수행할 수 있음으로써, 단말기가 복잡한 알고리즘 태스크를 수행하는 프로세스에서, 단말기의 컴퓨팅 압력을 감소시키고; 이 밖에, 본 발명의 실시예에서 제공된 암호화/복호화 메커니즘은 또한 상이한 타임 스탬프에 따라 상이한 암호화/복호화 방법을 선택할 수 있음으로써, 인증 프로세스의 안전성을 더 향상시키며; 단말기와 서버는 동일한 암호화/복호화 메커니즘을 사용하므로, 배치가 쉽고 적용 가능성이 강하고; 본 발명의 실시예에 의해 제공되는 인증 방법을 통해 컴퓨팅 태스크가 불법적으로 호출되는 것을 효과적으로 방지할 수도 있음으로써, 컴퓨팅 태스크의 안전성을 향상시킨다.
일부 가능한 실시형태에서, 상기 제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하는 단계는, 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하는 단계; 및 제1 키에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하는 단계를 포함한다.
일부 가능한 실시형태에서, 상기 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하는 단계는, 제1 타임 스탬프에 대해 제1 변환 처리를 수행하여 제1 파라미터를 획득하는 단계; 및 기설정된 초기 키 및 제1 파라미터에 대해 제2 변환 처리를 수행하여 제1 키를 획득하는 단계를 포함한다.
일부 가능한 실시형태에서, 상기 제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득하는 단계는, 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하는 단계; 및 제2 키에 따라 인증 결과를 암호화하여 제2 암호문을 획득하는 단계를 포함한다.
일부 가능한 실시형태에서, 상기 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하는 단계는, 제2 타임 스탬프에 대해 제1 변환 처리를 수행하여 제2 파라미터를 획득하는 단계; 및 기설정된 초기 키 및 제2 파라미터에 대해 제2 변환 처리를 수행하여 제2 키를 획득하는 단계를 포함한다.
상기 실시형태를 통해, 상이한 타임 스탬프에 따라 상이한 키를 생성하고, 상이한 타임 스탬프에 따라 생성된 키를 통해 검증할 정보에 대한 암호화 프로세스 및 제2 암호문에 대한 복호화 프로세스를 완료함으로써, 서버와 단말기에서의 제1 암호문, 제2 암호문의 전송 프로세스의 안전성을 보장할 수 있고; 동시에, 상이한 타임 스탬프에 대응되는 암호화 키가 모두 상이하므로, 불법 사용자가 대량의 전송 암호문을 하이재킹하여 암호화 키를 해독하는 위험을 효과적으로 방지할 수 있으며; 동시에, 본 발명에 의해 제공된 동적 키는 제1 타임 스탬프에 따라 제1 변환 처리 및 제2 변환 처리를 거쳐 획득된 것이므로, 불법 사용자가 키 생성 알고리즘을 해독하는 난이도를 향상시키고, 인증 프로세스의 안전성을 더 향상시킨다.
일부 가능한 실시형태에서, 상기 인증 방법은, 단말기에 의해 송신된 시간 동기화 요청을 수신하는 단계; 및 단말기에 시간 동기화 응답을 송신하는 단계를 더 포함하며, 시간 동기화 응답은 단말기가 서버와 시간 동기화를 수행하도록 지시하기 위한 것이다.
상기 실시형태를 통해, 제2 타임 스탬프 및 제3 타임 스탬프에 따라 상기 인증 결과의 생성 시간을 결정하고, 나아가 상기 인증 결과의 유효성을 결정할 수 있음으로써, 재전송 공격을 방지하고, 시스템의 안전성을 향상시킬 수 있다.
일부 가능한 실시형태에서, 상기 검증할 정보는 현재 도메인 네임, 랜덤 검사 코드 및 사용자에 의해 입력된 신원 식별자 중 적어도 하나를 포함한다.
본 발명의 실시예는,
제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하도록 구성되는 제1 암호화 부분;
서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신하도록 구성되는 제1 송신 부분;
서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하도록 구성되는 제1 수신 부분 - 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 및
제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하도록 구성되는 제1 복호화 부분을 포함하는 인증 장치를 제공한다.
본 발명의 실시예는,
단말기에 의해 송신된, 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 수신하도록 구성되는 제2 수신 부분;
제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하도록 구성되는 제2 복호화 부분;
검증할 정보를 검증하여 인증 결과를 획득하도록 구성되는 검증 부분;
제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득하도록 구성되는 제2 암호화 부분;
단말기에 제2 타임 스탬프 및 제2 암호문을 포함한 인증 응답을 송신하도록 구성되는 제2 송신 부분을 포함하며, 인증 응답은 단말기가 복호화된 제2 암호문에 따라 인증 결과를 획득하도록 지시하기 위한 것인 인증 장치를 제공한다.
본 발명의 실시예는,
실행 가능 명령을 저장하는 메모리; 및
상기 메모리에 저장된 실행 가능 명령을 실행할 경우, 본 발명의 실시예에 의해 제공되는 인증 방법을 구현하는 프로세서를 포함하는 인증 기기를 제공한다.
본 발명의 실시예는 실행 가능 명령이 저장된 컴퓨터 판독 가능 저장 매체를 제공하되, 상기 실행 가능 명령이 프로세서에 의해 실행될 경우 본 발명의 실시예에 의해 제공되는 인증 방법을 구현한다.
본 발명의 실시예는 컴퓨터 판독 가능 코드를 포함하는 컴퓨터 프로그램을 제공하되, 상기 컴퓨터 판독 가능 코드가 전자 기기에서 실행될 경우, 상기 전자 기기 중의 프로세서는 본 발명의 실시예에 의해 제공되는 인증 방법을 구현하기 위해 실행된다.
본 발명의 실시예는 하기와 같은 유리한 효과를 가진다.
본 발명의 실시예는 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계; 서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신하는 단계; 서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하는 단계 - 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 및 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하는 단계를 수행한다. 이로써, 상기 검증할 정보에 대한 검증 프로세스를 서버 측에서 수행할 수 있음으로써, 단말기가 복잡한 알고리즘 태스크를 수행하는 프로세스에서, 단말기의 계산 압력을 감소시키고; 이 밖에, 본 발명의 실시예에서 제공된 암호화/복호화 메커니즘은 또한 상이한 타임 스탬프에 따라 상이한 암호화/복호화 방법을 선택할 수 있음으로써, 인증 프로세스의 안전성을 더 향상시키며; 단말기와 서버는 동일한 암호화/복호화 메커니즘을 사용하므로, 배치가 쉽고 적용 가능성이 강하고; 본 발명의 실시예에 의해 제공되는 인증 방법을 통해 계산 태스크가 불법적으로 호출되는 것을 효과적으로 방지할 수도 있음으로써, 계산 태스크의 안전성을 향상시킨다.
도 1은 본 발명의 실시예에 의해 제공되는 인증 시스템의 하나의 선택 가능한 아키텍처 모식도이다.
도 2는 본 발명의 실시예에 의해 제공되는 인증 기기의 구조 모식도이다.
도 3은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 4는 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 5는 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 6은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 7은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 8은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 9는 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 10은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 11은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이다.
도 12는 본 발명의 실시예에 의해 제공되는 하나의 선택 가능한 인증 장치의 구성 구조 모식도이다.
도 13은 본 발명의 실시예에 의해 제공되는 하나의 선택 가능한 인증 장치의 구성 구조 모식도이다.
여기서의 도면은 명세서에 병합되어 본 명세서의 일부분을 구성하고, 이러한 도면은 본 발명에 부합되는 실시예를 도시하며, 명세서와 함께 본 발명의 기술적 해결수단을 설명하기 위한 것이다.
본 발명의 목적, 기술적 해결수단 및 장점이 더 명확해지도록, 아래 도면과 결부하여 본 발명을 더욱 상세하게 설명하되, 설명되는 실시예는 본 발명을 제한하는 것으로 이해해서는 아니되며, 당업자가 진보성 창출에 힘쓸 필요 없이 얻은 모든 다른 실시예는 모두 본 발명의 보호 범위에 속한다.
아래 설명에서, 언급된 “일부 실시예”는 모든 가능한 실시예의 부분 집합을 설명하지만, “일부 실시예”는 모든 가능한 실시예의 동일한 부분 집합 또는 상이한 부분 집합일 수 있고 또한 모순되지 않은 경우 서로 조합될 수 있음을 이해할 수 있다.
아래 설명에서, 언급된 용어 “제1/제2/제3”은 유사한 객체를 구별하기 위한 것일 뿐, 객체의 특정 순서를 나타내지 않으며, “제1/제2/제3”은 허용되는 경우에 본 실시예에서 설명된 본 발명의 실시예가 본 실시예에 도시되거나 설명된 순서를 제외한 순서에 따라 실시될 수 있도록 특정된 순서 또는 선후 순서를 호환할 수 있다.
달리 정의되지 않은 한, 본문에서 사용된 모든 기술 및 과학 용어는 당업자가 일반적으로 이해하는 의미와 동일한 의미를 갖는다. 본문에서 사용된 용어는 본 발명의 실시예에 대한 설명의 목적으로 사용될 뿐, 본 발명을 한정하지 않는다.
도 1을 참조하면, 도 1은 본 발명의 실시예에 의해 제공되는 인증 시스템(100)의 하나의 선택 가능한 아키텍처 모식도이고, 하나의 인증 애플리케이션을 지원하기 위해, 단말기(400)(단말기(400-1) 및 단말기(400-2)를 예시적으로 도시함)는 네트워크(300)를 통해 서버(200)에 연결되고, 네트워크(300)는 광역 통신망 또는 근거리 통신망, 또는 양자의 조합일 수 있다. 도 1은 또한 서버(200)가 서버 클러스터일 수 있음을 도시하였고, 상기 서버 클러스터는 서버(200-1 내지 200-3)를 포함하며, 마찬가지로, 서버(200-1 내지 200-3)는 실체적 머신일 수 있고, 가상화 기술(컨테이너 기술 및 가상 머신 기술 등)을 이용하여 구축된 가상 머신일 수도 있으며, 본 발명의 실시예는 이에 대해 한정하지 않고, 물론, 본 실시예에서 단일 서버를 사용하여 서비스를 제공할 수도 있다.
일부 가능한 실시형태에서, 단말기(400)가 알고리즘 파일에 대한 초기화 요청을 수신한 후, 단말기는 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하고, 단말기(400)에 연결된 서버(200)에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신하며, 서버(200)는 제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하고; 검증할 정보를 검증하여 인증 결과를 획득하며; 제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득한다. 서버(200)는 단말기(400)에 제2 타임 스탬프 및 제2 암호문을 포함한 인증 응답을 송신한다. 단말기(400)는 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버(200)의 인증 결과를 획득하고, 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정한다. 단말기(400)는 그래픽 인터페이스(410)(그래픽 인터페이스(410-1) 및 그래픽 인터페이스(410-2)를 예시적으로 도시함)에 상기 초기화 결과를 표시할 수 있다.
도 2를 참조하면, 도 2는 본 발명의 실시예에 의해 제공되는 인증 기기(500)의 구조 모식도이고, 도 2에 도시된 인증 기기(500)는 적어도 하나의 프로세서(510), 메모리(550), 적어도 하나의 네트워크 인터페이스(520) 및 사용자 인터페이스(530)를 포함한다. 인증 기기(500) 중 각각의 컴포넌트는 버스 시스템(540)을 통해 함께 커플링된다. 버스 시스템(540)은 이러한 컴포넌트 사이의 연결 통신을 구현하기 위한 것임을 이해할 수 있다. 버스 시스템(540)은 데이터 버스를 포함하는 이외에, 전원 버스, 제어 버스 및 상태 신호 버스를 더 포함한다. 하지만 명확한 설명을 위해, 도 2에서는 각 버스를 모두 버스 시스템(540)으로 나타냈다.
프로세서(510)는 범용 프로세서, 디지털 신호 프로세서(DSP, Digital Signal Processor), 또는 다른 프로그램 가능 논리 소자, 개별 게이트 또는 트랜지스터 논리 소자, 개별 하드웨어 컴포넌트 등과 같은 신호 처리 기능을 가지는 집적 회로 칩일 수 있고, 여기서, 범용 프로세서는 마이크로 프로세서 또는 임의의 통상적인 프로세서 등일 수 있다.
사용자 인터페이스(530)는 하나 이상의 스피커 및/또는 하나 이상의 시각적 디스플레이 스크린을 포함하는 미디어 콘텐츠의 프레젠테이션을 가능하게 하는 하나 이상의 출력 장치(531)를 포함한다. 사용자 인터페이스(530)는 키보드, 마우스, 마이크로폰, 터치 스크린 디스플레이, 카메라, 다른 입력 버튼 및 컨트롤과 같은 사용자 입력을 용이하게 하는 사용자 인터페이스 부분을 포함하는 하나 이상의 입력 장치(532)를 더 포함한다.
메모리(550)는 휘발성 메모리 또는 비휘발성 메모리를 포함하며, 휘발성 및 비휘발성 메모리를 모두 포함할 수도 있다. 여기서, 비휘발성 메모리는 판독 전용 메모리(ROM, Read Only Memory)일 수 있고, 휘발성 메모리는 랜덤 액세스 메모리(RAM, Random Access Memory)일 수 있다. 본 발명의 실시예에서 설명된 메모리(550)는 임의의 적합한 타입의 메모리를 의미한다. 메모리(550)는 프로세서(510)로부터 물리적으로 떨어져 있는 하나 이상의 저장 기기를 선택적으로 포함한다.
일부 가능한 실시형태에서, 메모리(550)는 다양한 동작을 지원하기 위해 데이터를 저장할 수 있고, 아래에 예시된 바와 같이, 이러한 데이터의 예시는 프로그램, 부분 및 데이터 구조 또는 이들의 서브세트 또는 슈퍼세트를 포함한다.
운영 체제(551)는 다양한 기본 서비스를 구현하고 하드웨어 기반 태스크를 처리하기 위한, 프레임워크 계층, 코어 라이브러리 계층, 드라이버 계층 등과 같은 다양한 기본 시스템 서비스를 처리하고 하드웨어 관련 태스크를 수행하도록 구성된 시스템 프로그램을 포함한다.
네트워크 통신 부분(552)은 하나 이상의 (유선 또는 무선) 네트워크 인터페이스(520)를 통해 다른 컴퓨팅 기기에 도달하도록 구성되고, 예시적인 네트워크 인터페이스(520)는 블루투스, 무선 호환성 인증(WiFi) 및 범용 직렬 버스(USB, Universal Serial Bus) 등을 포함한다.
표시 부분(553)은 사용자 인터페이스(530)와 관련된 하나 이상의 출력 장치(531)(예를 들어, 디스플레이 스크린, 스피커 등)를 통해 정보(예를 들어, 주변 기기를 작동하고 콘텐츠 및 정보를 표시하기 위한 사용자 인터페이스)를 표시할 수 있도록 구성된다.
입력 처리 부분(554)은 하나 이상의 입력 장치(532) 중 하나 이상의 사용자 입력 또는 상호 작용을 검출하고 검출된 입력 또는 상호 작용을 번역하도록 구성된다.
일부 가능한 실시형태에서, 본 발명의 실시예에 의해 제공되는 인증 장치는 소프트웨어와 하드웨어를 조합하는 방식으로 구현될 수 있고, 예시적으로, 본 발명의 실시예에 의해 제공되는 인증 장치는 본 발명의 실시예에 의해 제공되는 인증 방법을 수행하도록 프로그래밍된 하드웨어 디코딩 프로세서 형태의 프로세서를 사용할 수 있다.
일부 가능한 실시형태에서, 본 발명의 실시예에 의해 제공되는 인증 장치는 소프트웨어 방식으로 구현될 수 있고, 도 2는 프로그램 및 플러그 인 유닛 등 형태의 소프트웨어일 수 있는 메모리(550)에 저장된 인증 장치(555)를 도시하며, 상기 인증 기기가 단말기일 경우, 제1 암호화 부분(1201), 제1 송신 부분(1202), 제1 수신 부분(1203) 및 제1 복호화 부분(1204)을 포함하고; 상기 인증 기기가 서버일 경우, 제2 수신 부분(1301), 제2 복호화 부분(1302), 검증 부분(1303), 제2 암호화 부분(1304) 및 제2 송신 부분(1305) 등 소프트웨어 부분을 포함한다. 이러한 부분은 논리적이므로 구현된 기능에 따라 임의로 조합하거나 추가로 분할할 수 있다.
아래 각 부분의 기능을 설명한다.
다른 일부 실시예에서, 본 발명의 실시예에 의해 제공되는 장치는 하드웨어 방식으로 구현될 수 있고, 예시적으로, 본 발명의 실시예에 의해 제공되는 장치는 본 발명의 실시예에 의해 제공되는 인증 방법을 수행하도록 프로그래밍된 하드웨어 디코딩 프로세서 형태의 프로세서를 사용할 수 있으며, 예를 들어, 하드웨어 디코딩 프로세서 형태의 프로세서는 응용 주문형 집적 회로(ASIC, Application Specific Integrated Circuit), DSP, 프로그램 가능 논리 소자(PLD, Programmable Logic Device), 복잡한 프로그램 가능 논리 소자(CPLD, Complex Programmable Logic Device), 필드 프로그램 가능 게이트 어레이(FPGA, Field-Programmable Gate Array) 또는 다른 전자 소자를 사용할 수 있다.
본 발명의 실시예에 의해 제공되는 단말기의 예시적 응용과 실시를 결합하고, 본 발명의 실시예에서, 단말기를 수행 주체로 하여 본 발명의 실시예에 의해 제공되는 인증 방법을 설명한다.
도 3을 참조하면, 도 3은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 3에 도시된 단계와 결부하여 설명한다.
단계 S301에서, 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득한다.
일부 가능한 실시형태에서, 단말기는 타깃 서비스에 대한 사용 요청을 수신할 경우 본 발명의 실시예에 의해 제공되는 인증 방법을 수행할 수 있다. 상기 타깃 서비스는 적어도 하나의 알고리즘 태스크에 대응되고, 단말기는 상기 타깃 서비스를 사용하는 프로세스에서 상기 타깃 서비스에 대응되는 적어도 하나의 알고리즘 태스크를 호출할 수 있다. 하지만, 상기 타깃 서비스를 사용하기 전에 상기 타깃 서비스의 사용 권한(또는 상기 적어도 하나의 알고리즘 태스크에 대한 호출 권한)을 검증해야 하는데, 즉 상기 사용 요청을 검증하여 본 발명의 실시예에 의해 제공되는 인증 방법을 수행한다.
여기서, 단계 S301에서, 상기 제1 타임 스탬프는 단말기가 단계 S301을 수행하는 시스템 시간일 수 있고, 단말기가 상기 사용 요청을 수신하는 시스템 시간일 수도 있으며, 기설정 규칙에 따라 획득한 시스템 시간일 수도 있다. 상기 타깃 서비스는 다양한 조회 서비스, 이미지 인식 서비스, 컴퓨팅 서비스 등을 포함하지만 이에 한정되지 않는다. 상기 타깃 서비스가 이미지 인식 서비스인 것으로 예를 들면, 단말기는 상기 이미지 인식 서비스에 대한 사용 요청을 수신할 경우 상기 이미지 인식 서비스에 대응되는 인식 알고리즘 태스크를 호출해야 하므로, 상기 사용 요청에 응답하여, 단말기는 상기 이미지 인식 서비스에 대한 사용 요청을 인증하여 본 발명의 실시예에 의해 제공되는 인증 방법을 수행할 수 있다. 일부 가능한 실시형태에서, 상기 검증할 정보는 현재 도메인 네임, 랜덤 검사 코드 및 사용자에 의해 입력된 신원 식별자 중 적어도 하나를 포함할 수 있다.
여기서, 상기 검증할 정보가 현재 도메인 네임을 포함하는 경우, 단말기는 상기 사용 요청을 수시한 후 단말기가 현재 액세스한 도메인 네임(즉 현재 도메인 네임)을 획득하고, 상기 제1 타임 스탬프를 통해 상기 현재 도메인 네임을 암호화하여 현재 도메인 네임을 포함한 제1 암호문을 획득하며; 상기 검증할 정보가 랜덤 검사 코드를 포함하는 경우, 단말기는 상기 사용 요청을 수신한 후 기설정된 랜덤 알고리즘에 따라 하나의 랜덤 검사 코드를 생성하고, 상기 제1 타임 스탬프를 통해 상기 랜덤 검사 코드를 암호화하여 랜덤 검사 코드를 포함한 제1 암호문을 획득하며, 여기서, 매번 생성된 랜덤 검사 코드는 모두 상이하고; 상기 검증할 정보가 사용자에 의해 입력된 신원 식별자를 포함하는 경우, 단말기는 상기 사용 요청을 수신한 후 인터랙티브 윈도우를 통해 사용자가 대응되는 신원 식별자를 입력하도록 프롬프트하고, 상기 신원 식별자를 수신하며, 상기 제1 타임 스탬프를 통해 상기 신원 식별자를 암호화하여 랜덤 검사 코드를 포함한 제1 암호문을 획득하고, 여기서, 상기 신원 식별자는 비밀번호, 계정 비밀번호 등 형태를 포함할 수 있지만 이에 한정되지 않는다.
일부 가능한 실시형태에서, 상기 검증 정보는 “현재 도메인 네임+사용자에 의해 입력된 신원 식별자”의 형태일 수 있고, 여기서, 현재 도메인 네임과 상기 신원 식별자는 대응 관계를 가지는데, 다시 말하면, 단말기 측에 합법적 현재 도메인 네임과 신원 식별자의 대응 관계를 미리 저장할 수 있고, 현재 사용 요청에 대응되는 검증할 “현재 도메인 네임+사용자에 의해 입력된 신원 식별자”를 획득한 후, 단말기는 상기 합법적 현재 도메인 네임과 신원 식별자의 대응 관계에 따라 현재 사용 요청이 합법적인지 여부를 검출할 수 있다. 상기 합법적 현재 도메인 네임과 신원 식별자의 대응 관계는 서버 측에 저장될 수도 있고, 사용된 검출 방법은 단말기 측과 동일하다.
예를 들어, 합법적 현재 도메인 네임과 신원 식별자의 대응 관계는 하기 표 1에 나타낸 대응 관계를 포함한다.
사용자 식별자 1 사용자 식별자 2 사용자 식별자 3 사용자 식별자 4
도메인 네임 1 합법 합법 합법 합법
도메인 네임 2 합법 불법 합법 불법
도메인 네임 3 불법 합법 불법 합법
단말기가 수신한 타깃 서비스에 대한 사용 요청이 “도메인 네임 2+신원 식별자2”이면, 상기 사용 요청이 불법적인 것으로 결정하고; 사용 요청이 “도메인 네임 2+신원 식별자3”이면, 상기 사용 요청이 합법적인 것으로 결정한다. 상기 합법적 현재 도메인 네임과 신원 식별자의 대응 관계는 동시에 서버 측에 저장되거나 서버 측 또는 단말기 측에만 저장될 수 있다.
일부 가능한 실시형태에서, 단말기가 검증할 정보를 암호화하여 제1 암호문을 획득하는 프로세스에서, 사용된 암호화 메커니즘은 미리 설정된 것이고, 상기 암호화 메커니즘은 상이한 제1 타임 스탬프에 따라 상이한 제1 암호문을 생성할 수 있다.
일부 실시예에서, 상기 암호화 메커니즘은 복수 개의 상이한 암호화 방법을 포함할 수 있고, 각각의 암호화 방법은 모두 하나의 시간대에 대응된다. 암호화 프로세스에서, 제1 타임 스탬프가 위치한 시간대에 따라, 복수 개의 상이한 암호화 방법에서 타깃 암호화 방법을 선택하고, 상기 타깃 암호화 방법을 통해 암호화 프로세스를 완료하며; 일부 실시예에서, 상기 암호화 메커니즘은 상이한 제1 타임 스탬프에 따라 상이한 키를 생성하고, 상기 제1 타임 스탬프에 의해 생성된 키를 통해 암호화를 완료할 수 있다.
단계 S302에서, 서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신한다.
일부 가능한 실시형태에서, 서버에는 단말기와 동일한 암호화 메커니즘이 미리 저장되어 있고, 대응되게, 서버에는 암호화 메커니즘에 대응되는 복호화 메커니즘도 미리 저장되어 있다. 단말기가 서버에 상기 인증 요청을 송신하는 프로세스에서, 상기 제1 타임 스탬프는 일반 텍스트(plain text)를 송신되고, 상기 제1 암호문은 암호화를 거친 검증할 정보이다.
여기서, 상기 제1 타임 스탬프는 일반 텍스트를 통해 송신되므로, 서버는 상기 제1 타임 스탬프가 위치한 시간대에 따라, 복수 개의 상이한 복호화 방법에서 타깃 복호화 방법을 선택하고, 상기 타깃 복호화 방법을 통해 복호화 프로세스를 완료할 수 있으며; 서버는 또한 상이한 제1 타임 스탬프에 따라 상이한 키를 생성하고, 상기 제1 타임 스탬프에 의해 생성된 키를 통해 복호화를 완료할 수 있다.
일부 가능한 실시형태에서, 상기 인증 요청은, 제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하는 단계; 검증할 정보를 검증하여 인증 결과를 획득하는 단계; 제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득하는 단계; 단말기에 제2 타임 스탬프 및 제2 암호문을 포함한 인증 응답을 송신하는 단계를 수행하도록 서버를 지시하기 위한 것이고, 인증 응답은 단말기가 복호화된 제2 암호문에 따라 인증 결과를 획득하도록 지시하기 위한 것이다. 여기서, 서버는 화이트 리스트 형태를 통해 상기 검증할 정보를 검증할 수 있고, 상기 화이트 리스트에는 복수 개의 합법 정보가 미리 저장되어 있으며, 상기 검증할 정보가 상기 화이트 리스트에서 복수 개의 합법 정보 중 임의의 하나인 경우, 상기 검증할 정보에 대응되는 인증 결과는 인증의 통과이고, 상기 화이트 리스트에 상기 검증할 정보가 존재하지 않은 경우, 상기 검증할 정보에 대응되는 인증 결과는 인증에 통과되지 못한 것이다. 예를 들어, 검증할 정보가 “현재 도메인 네임+사용자에 의해 입력된 신원 식별자”를 포함하는 경우, 서버 측에는 하기 표 2에 나타낸 화이트 리스트가 미리 저장되어 있을 수 있다. 단말기가 수신한 타깃 서비스에 대한 사용 요청이 “도메인 네임 2+신원 식별자2”이면, 상기 사용 요청이 불법적인 것으로 결정하고; 사용 요청이 “도메인 네임 2+신원 식별자3”이면, 상기 사용 요청이 합법적인 것으로 결정한다.
화이트 리스트 번호 도메인 네임 사용자 식별자
1 도메인 네임 1 사용자 식별자 1
2 도메인 네임 1 사용자 식별자 2
3 도메인 네임 1 사용자 식별자 3
4 도메인 네임 2 사용자 식별자 1
5 도메인 네임 2 사용자 식별자 3
6 도메인 네임 3 사용자 식별자 2
단계 S303에서, 서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하고; 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함한다.
일부 가능한 실시형태에서, 서버에 의해 송신된 인증 응답과 단말기에 의해 송신된 인증 요청은 서로 대응된다. 상기 인증 요청은 요청 식별자를 더 포함할 수 있고, 상기 요청 식별자는 상이한 인증 요청을 구별하기 위한 것이며, 단말기가 동시에 복수 개의 인증 요청을 송신해야 하는 경우, 상이한 인증 요청에 상이한 요청 식별자를 분할할 수 있다. 대응되게, 인증 응답도 상기 요청 식별자를 포함하고, 요청 식별자를 매칭시켜 인증 요청에 대응되는 인증 응답을 결정할 수 있다.
일부 실시예에서, 상기 인증 응답은 일반 텍스트를 통해 전송된 제2 타임 스탬프, 및 인증 결과를 암호화하여 생성된 제2 암호문을 포함한다.
단계 S304에서, 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득한다.
일부 가능한 실시형태에서, 단말기는 제2 타임 스탬프에 따라 제2 암호문을 복호화하고, 사용된 복호화 메커니즘은 미리 설정된 것이며, 상기 암호화 메커니즘은 상이한 제1 타임 스탬프에 따라 상이한 인증 결과를 생성할 수 있다. 상기 복호화 메커니즘과 단말기 중의 암호화 메커니즘은 서로 대응된다.
일부 실시예에서, 암호화 메커니즘이 복수 개의 상이한 암호화 방법을 포함하고 각각의 암호화 방법이 모두 하나의 시간대에 대응되는 것인 경우, 상기 복호화 메커니즘도 상이한 복호화 방법을 포함하고, 각각의 시간대 중의 암호화 방법과 복호화 방법은 둘둘씩 대응되며; 일부 실시예에서, 암호화 메커니즘이 상이한 제1 타임 스탬프에 따라 상이한 키를 생성할 수 있고 상기 제1 타임 스탬프에 의해 생성된 키를 통해 암호화를 완료하는 것인 경우, 상기 복호화 메커니즘도 동일한 키 생성 방법을 사용하여 상이한 제1 타임 스탬프에 따라 상이한 키를 생성하고, 상기 제1 타임 스탬프에 의해 생성된 키를 통해 복호화 프로세스를 완료할 수 있다.
일부 가능한 실시형태에서, 복호화 실패이면, 인증 결과는 인증 실패이고; 복호화 성공이면, 상기 검증할 정보에 대한 서버의 인증 결과를 직접 획득할 수 있다.
도 3에 대한 본 발명의 실시예의 상기 예시적 실시를 통해 알 수 있는 바, 본 발명의 실시예는 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계; 서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신하는 단계; 서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하는 단계 - 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하는 단계를 수행한다. 이로써, 상기 검증할 정보에 대한 검증 프로세스를 서버 측에서 수행할 수 있음으로써, 단말기가 복잡한 알고리즘 태스크를 수행하는 프로세스에서, 단말기의 계산 압력을 감소시키고, 또한, 상기 검증할 정보를 검증하기 위한 화이트 리스트는 서버에 의해 유지되므로, 인증 프로세스에서 화이트 리스트의 안전성을 향상시키며; 이 밖에, 본 발명의 실시예에서 제공된 암호화/복호화 메커니즘은 또한 상이한 타임 스탬프에 따라 상이한 암호화/복호화 방법을 선택할 수 있음으로써, 인증 프로세스의 안전성을 더 향상시키며; 단말기와 서버는 동일한 암호화/복호화 메커니즘을 사용하므로, 배치가 쉽고 적용 가능성이 강하고; 본 발명의 실시예에 의해 제공되는 인증 방법을 통해 컴퓨팅 태스크가 불법적으로 호출되는 것을 효과적으로 방지할 수도 있음으로써, 컴퓨팅 태스크의 안전성을 향상시킨다.
도 4를 참조하면, 도 4는 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 3에 기반하여, 도 3에서의 단계 S301은 단계 S401 내지 단계 S402로 업데이트될 수 있고, 단계 S304는 단계 S403 내지 단계 S404로 업데이트될 수 있으며, 도 4에 도시된 단계와 결부하여 설명한다.
단계 S401에서, 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성한다.
일부 가능한 실시형태에서, 상기 키 생성 알고리즘은 상이한 제1 타임 스탬프에 따라 상이한 제1 키를 생성할 수 있다. 제1 타임 스탬프에 대해 제1 변환 처리를 수행하여 제1 파라미터를 획득하는 단계 S4011; 기설정된 초기 키 및 제1 파라미터에 대해 제2 변환 처리를 수행하여 제1 키를 획득하는 단계 S4012를 통해 상기 키 생성 알고리즘을 구현할 수 있다.
여기서, 상기 제1 변환 처리는 상기 제1 타임 스탬프 기반의 캐릭터 변환 처리이다. 동일한 제1 타임 스탬프에 대해, 제1 변환 처리를 통해 획득된 제1 파라미터도 동일하고, 상이한 제1 타임 스탬프에 대해, 제1 변환 처리를 통해 획득된 제1 파라미터는 상이하거나 동일할 수 있다. 제1 타임 스탬프가 0부터 9까지의 여러 자리 숫자를 포함하는 경우, 각 자리 숫자에 대응되는 캐릭터에 따라 숫자로 구성된 제1 타임 스탬프를 캐릭터로 구성된 제1 파라미터로 변환할 수 있고; 기설정된 순서 변경 규칙에 따라, 상기 제1 타임 스탬프 중 여러 자리 숫자의 대응되는 위치를 변경시켜 대응되는 위치가 변경된 제1 파라미터를 획득할 수도 있으며; 상기 제1 타임 스탬프 중 각 자리 숫자에 기설정 수치를 추가하여 상기 제1 파라미터를 구성할 수도 있다.
예를 들어, 제1 타임 스탬프가 “20200101”이면, 기설정된 “0은 A에 대응, 1은 B에 대응, 2는 C에 대응…”의 대응 관계에 따라 상기 제1 타임 스탬프를 “CACAABAB”로 변환시킬 수 있고; 상기 제1 타임 스탬프 중 각 자리 숫자의 대응되는 위치를 변경시킬 수도 있으며, 뒤집은 경우 획득된 제1 파라미터는 “10100202”이고; 상기 제1 타임 스탬프 중 각 자리 숫자에 기설정 수치(8을 예로 듬)를 추가할 수도 있으며, 획득된 제1 파라미터는 “9898810810” 또는 “98988A8A”이다.
일부 가능한 실시형태에서, 상기 제2 변환 처리는 획득된 제1 파라미터와 초기 키에 따라 제1 키를 생성할 수 있다. 여기서, 제2 변환 처리는 상기 제1 파라미터 중 각 캐릭터와 상기 초기 키 중 각 캐릭터에 대한 캐릭터 처리일 수 있고, 다양한 대체, 조합 등 캐릭터 처리 방식을 포함하지만 이에 한정되지 않는다.
예를 들어, 초기 키가 “ylaQxlGJ”이면, 제1 파라미터는 “CACAABAB”이고, 조합 방식을 사용하여 “ylaQxlGJCACAABAB”, “yClAaCQAxAlBGAJB” 등과 같은 제1 키를 획득할 수 있으며; 대체 방식을 사용하여 “ylaQABAB”, “yAaAxBGB” 등과 같은 제1 키를 획득할 수도 있고; 동시에 대체, 조합 등 캐릭터 처리 방식을 사용할 수도 있다.
단계 S402에서, 제1 키에 따라 검증할 정보를 암호화하여 제1 암호문을 획득한다.
단계 S403에서, 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성한다.
일부 가능한 실시형태에서, 상기 키 생성 알고리즘은 상이한 제2 타임 스탬프에 따라 상이한 제2 키를 생성할 수 있다. 제2 타임 스탬프에 대해 제1 변환 처리를 수행하여 제2 파라미터를 획득하는 단계 S4031; 기설정된 초기 키 및 제2 파라미터에 대해 제2 변환 처리를 수행하여 제2 키를 획득하는 단계 S4032를 통해 상기 키 생성 알고리즘을 구현할 수 있다. 여기서, 상기 키 생성 알고리즘과 단계 S401에서의 키 생성 알고리즘은 동일하다.
단계 S404에서, 제2 키에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득한다.
도 4에 대한 본 발명의 실시예의 상기 예시적 실시를 통해 알 수 있는 바, 본 발명의 실시예는 기설정된 키 생성 알고리즘, 상이한 타임 스탬프에 따라 상이한 키를 생성하고, 상이한 타임 스탬프에 따라 생성된 키를 통해 검증할 정보에 대한 암호화 프로세스 및 제2 암호문에 대한 복호화 프로세스를 완료할 수 있음으로써, 단말기와 서버에서의 제1 암호문, 제2 암호문의 전송 프로세스의 안전성을 보장할 수 있고; 동시에, 상이한 타임 스탬프에 대응되는 암호화 키가 모두 상이하므로, 불법 사용자가 대량의 전송 암호문을 하이재킹하여 암호화 키를 해독하는 위험을 효과적으로 방지할 수 있으며; 동시에, 본 발명에 의해 제공된 동적 키는 제1 타임 스탬프에 따라 제1 변환 처리 및 제2 변환 처리를 거쳐 획득된 것이므로, 불법 사용자가 키 생성 알고리즘을 해독하는 난이도를 향상시키고, 인증 프로세스의 안전성을 더 향상시킨다.
일부 가능한 실시형태에서, 도 5를 참조하면, 도 5는 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 3에 기반하여, 단계 S301 이전에, 단계 S501을 더 포함할 수 있고, 단계 S304 이후에, 단계 S502를 더 포함할 수 있다.
단계 S501에서, 알고리즘 파일에 대한 초기화 요청을 수신하고; 초기화 요청은 알고리즘 파일 중의 알고리즘 태스크의 호출을 요청하기 위한 것이다.
일부 가능한 실시형태에서, 단말기에 의해 수신된 타깃 서비스에 대한 사용 요청은 상기 타깃 서비스에 대응되는 알고리즘 태스크에 대한 호출 요청일 수 있다. 상기 알고리즘 태스크는 알고리즘 파일에 캡슐화되고, 단말기가 상기 타깃 서비스에 대응되는 서버에 액세스하는 프로세스에서, 서버에 의해 송신된 대량의 알고리즘 태스크가 캡슐화된 알고리즘 파일을 수신하고, 상기 알고리즘 파일에 대한 초기화 요청을 생성할 수 있다. 즉 상기 타깃 서비스에 대응되는 알고리즘 태스크를 호출하기 위해, 먼저 알고리즘 파일에 대한 초기화 요청에 따라 상기 알고리즘 파일을 초기화해야 하고, 초기화 성공인 경우, 단말기가 상기 알고리즘 파일 중의 모든 알고리즘 태스크 또는 상기 알고리즘 파일 중의 일부 알고리즘 태스크를 호출하는 것을 허용할 수 있으며; 초기화 실패인 경우, 단말기가 상기 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 금지한다.
여기서, 알고리즘 파일에 대한 초기화 요청을 수신한 후, 도 3에서 제공된 인증 단계를 수행한다.
단계 S502에서, 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정한다.
일부 가능한 실시형태에서, 상기 단계 S502는, 인증 결과가 인증의 통과를 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 성공인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 허용하는 단계 S5021을 더 포함한다. 이로써 상기 타깃 기능을 구현한다.
일부 가능한 실시형태에서, 상기 단계 S502는, 인증 결과가 인증에 통과하지 못했음을 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 금지하는 단계 S5022를 더 포함한다.
도 5에 대한 본 발명의 실시예의 상기 예시적 실시를 통해 알 수 있는 바, 본 발명의 실시예는 알고리즘 파일에 대한 초기화 요청을 획득하고, 서버가 암호화 채널을 통해 전송한 인증 결과를 획득하며, 인증 결과에 따라 초기화 결과를 획득하고, 상기 알고리즘 파일 중 알고리즘 태스크의 안전성을 보장할 수 있음으로써, 불법 사용자가 상기 알고리즘 파일 중 알고리즘 태스크를 불법적으로 호출하는 것을 방지한다.
일부 가능한 실시형태에서, 도 6을 참조하면, 도 6은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 5에 기반하여, 상기 인증 방법은 단계 S601, 단계 S602 및 단계 S603을 더 포함할 수 있다.
단계 S601에서, 서버에 시간 동기화 요청을 송신하고, 서버에 의해 송신된 시간 동기화 응답을 수신하며, 시간 동기화 응답에 따라 단말기와 서버 사이의 시간 동기화를 수행한다.
일부 가능한 실시형태에서, 상기 단계 S601은 단말기와 서버가 연결을 구축하는 프로세스에서 완료될 수 있고, 단계 S302 이전의 임의의 하나의 시점에서 수행될 수도 있다. 다시 말하면, 시간 동기화의 목적은 상기 제1 암호문을 포함한 인증 요청이 송신된 후 인증 응답 중 인증 결과를 획득하는 유효성을 보장하기 위한 것이다. 따라서, 상기 인증 결과의 유효성을 보장하기 위해, 상기 인증 요청을 송신하기 전에, 단말기와 서버 사이의 시간 동기화를 완료할 수 있다.
단계 S602에서, 인증 결과의 상태 정보를 결정한다.
여기서, 인증 결과가 무효 상태인 경우, 단계 S603을 수행하고; 인증 결과가 유효 상태인 경우, 단계 S502를 수행한다.
일부 가능한 실시형태에서, 인증 결과를 획득한 경우, 시간 동기화를 수행한 후 단말기의 시스템 시간을 제3 타임 스탬프로 사용하는 단계 S6021; 제3 타임 스탬프 및 제2 타임 스탬프에 따라 인증 결과의 상태 정보를 결정하는 단계 S6022를 통해 인증 결과의 상태 정보를 결정하는 것을 구현할 수 있다.
여기서, 상기 단계 S6022는 제3 타임 스탬프와 제2 타임 스탬프 사이의 시간 간격이 기설정된 유효 시간 임계값을 초과하는 경우, 인증 결과가 무효 상태인 것으로 결정하는 단계; 제3 타임 스탬프와 제2 타임 스탬프 사이의 시간 간격이 유효 시간 임계값을 초과하지 않은 경우, 인증 결과가 유효 상태인 것으로 결정하는 단계를 포함한다.
설명해야 할 것은, 상기 단계 S6022는, 제3 타임 스탬프와 제2 타임 스탬프 사이의 시간 간격이 기설정된 유효 시간 임계값을 초과하지 않은 경우, 또한 제3 타임 스탬프와 제2 타임 스탬프 사이의 시간 간격이 기설정된 최소 시간 간격을 초과하는 경우, 인증 결과가 유효 상태인 것으로 결정하는 단계를 더 포함한다. 상기 최소 시간 간격은 단말기와 서버 사이의 채널 품질과 관련된다.
예를 들어, 제3 타임 스탬프 T3, 제2 타임 스탬프 T2 및 유효 시간 임계값 Th이 존재하고 (T3-T2)>Th인 경우, 인증 결과가 무효 상태인 것으로 결정하고; (T3-T2)≤Th인 경우, 인증 결과가 유효 상태인 것으로 결정한다. 다른 실시형태에서, (T3-T2)≤Th인 경우, 최소 시간 간격 Tm과의 관계를 더 판단해야 하고, (T3-T2)>Tm인 경우, 인증 결과가 유효 상태인 것으로 결정하며; (T3-T2)≤Tm인 경우, 인증 결과가 무효 상태인 것으로 결정한다.
단계 S603에서, 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정한다.
여기서, 초기화 실패는 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 금지하기 위한 것이다.
도 6에 대한 본 발명의 실시예의 상기 예시적 실시를 통해 알 수 있는 바, 본 발명은 인증 요청을 송신하기 전에 단말기와 서버 사이의 시간 동기화를 완료함으로써, 제2 타임 스탬프 및 제3 타임 스탬프에 따라 상기 인증 결과의 생성 시간을 결정하고, 나아가 상기 인증 결과의 유효성을 결정할 수 있음으로써, 재전송 공격을 방지하고, 시스템의 안전성을 향상시킬 수 있다.
본 발명의 실시예에 의해 제공되는 단말기의 예시적 응용과 실시를 결합하고, 본 발명의 실시예에서, 서버를 수행 주체로 하여 본 발명의 실시예에 의해 제공되는 인증 방법을 설명한다.
도 7을 참조하면, 도 7은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 7에 도시된 단계와 결부하여 설명한다.
단계 S701에서, 단말기에 의해 송신된, 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 수신한다.
일부 가능한 실시형태에서, 상기 제1 암호문은 단말기가 미리 설정된 암호화 메커니즘을 통해 검증할 정보를 암호화하여 획득한 것이고, 상기 암호화 메커니즘은 상이한 제1 타임 스탬프에 따라 상이한 제1 암호문을 생성할 수 있다. 단말기가 서버에 상기 인증 요청을 송신하는 프로세스에서, 상기 제1 타임 스탬프는 일반 텍스트를 통해 송신되고, 상기 제1 암호문은 암호화를 거친 검증할 정보이다.
단계 S702에서, 제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득한다.
일부 가능한 실시형태에서, 상기 서버에는 단말기와 동일한 암호화 메커니즘이 미리 저장되어 있고, 대응되게, 서버에는 암호화 메커니즘에 대응되는 복호화 메커니즘도 미리 저장되어 있다. 서버는 상기 복호화 메커니즘에 따라 상기 제1 암호문을 복호화하여 상기 검증할 정보를 획득할 수 있다.
일부 가능한 실시형태에서, 서버가 상기 복호화 메커니즘에 따라 상기 제1 암호문을 복호화하는 프로세스에서, 복호화 실패로 인해 상기 검증할 정보를 획득할 수 없으면, 인증 결과가 인증 실패인 것으로 결정한다.
단계 S703에서, 검증할 정보를 검증하여 인증 결과를 획득한다.
일부 가능한 실시형태에서, 상기 검증할 정보는 현재 도메인 네임, 랜덤 검사 코드 및 사용자에 의해 입력된 신원 식별자 중 적어도 하나를 포함할 수 있다.
일부 가능한 실시형태에서, 상기 검증 정보는 “현재 도메인 네임+사용자에 의해 입력된 신원 식별자”의 형태일 수 있고, 여기서, 현재 도메인 네임과 상기 신원 식별자는 대응 관계를 가지는데, 다시 말하면, 서버에 화이트 리스트 방식을 통해 합법적 현재 도메인 네임과 신원 식별자의 대응 관계를 미리 저장할 수 있고, 검증할 “현재 도메인 네임+사용자에 의해 입력된 신원 식별자”를 획득한 후, 서버는 상기 합법적 현재 도메인 네임과 신원 식별자의 대응 관계에 따라 현재 사용 요청이 합법적인지 여부를 검출할 수 있다.
단계 S704에서, 제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득한다.
일부 가능한 실시형태에서, 상기 제2 타임 스탬프는 서버가 단말기에 의해 송신된 인증 요청을 수신하는 시간일 수 있고; 상기 제1 타임 스탬프를 직접 상기 제2 타임 스탬프로 사용하여, 단말기의 연산 압력을 감소시킬 수도 있으며; 인증 결과를 획득한 서버 시스템을 상기 제2 타임 스탬프로 사용할 수도 있다. 서버는 단말기에 미리 설정된 암호화 메커니즘과 동일한 암호화 메커니즘에 기반하여, 제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득할 수 있다.
단계 S705에서, 단말기에 제2 타임 스탬프 및 제2 암호문을 포함한 인증 응답을 송신하고; 인증 응답은 단말기가 복호화된 제2 암호문에 따라 인증 결과를 획득하도록 지시하기 위한 것이다.
일부 가능한 실시형태에서, 상기 인증 응답은, 서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하는 단계 - 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하는 단계를 수행하도록 단말기를 지시하기 위한 것이다. 인증 결과가 인증의 통과를 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 성공인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 허용하는 단계; 인증 결과가 인증에 통과하지 못했음을 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 금지하는 단계를 수행할 수도 있다.
도 7에 대한 본 발명의 실시예의 상기 예시적 실시를 통해 알 수 있는 바, 본 발명의 실시예는 단말기에 의해 송신된, 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 수신하는 단계; 제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하는 단계; 검증할 정보를 검증하여 인증 결과를 획득하는 단계; 제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득하는 단계; 단말기에 제2 타임 스탬프 및 제2 암호문을 포함한 인증 응답을 송신하는 단계를 수행하고, 인증 응답은 단말기가 복호화된 제2 암호문에 따라 인증 결과를 획득하도록 지시하기 위한 것이다. 이로써, 상기 검증할 정보에 대한 검증 프로세스를 서버 측에서 수행할 수 있음으로써, 단말기가 복잡한 알고리즘 태스크를 수행하는 프로세스에서, 단말기의 계산 압력을 감소시키고; 이 밖에, 본 발명의 실시예에서 제공된 암호화/복호화 메커니즘은 또한 상이한 타임 스탬프에 따라 상이한 암호화/복호화 방법을 선택할 수 있음으로써, 인증 프로세스의 안전성을 더 향상시키며; 단말기와 서버는 동일한 암호화/복호화 메커니즘을 사용하므로, 배치가 쉽고 적용 가능성이 강하다.
도 8을 참조하면, 도 8은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 7에 기반하여, 도 7에서의 단계 S702는 단계 S801 내지 단계 S802로 업데이트될 수 있고, 단계 S704는 단계 S803 내지 단계 S804로 업데이트될 수 있다.
단계 S801에서, 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성한다.
일부 가능한 실시형태에서, 상기 키 생성 알고리즘은 상이한 제1 타임 스탬프에 따라 상이한 제1 키를 생성할 수 있다. 제1 타임 스탬프에 대해 제1 변환 처리를 수행하여 제1 파라미터를 획득하는 단계 S8011; 기설정된 초기 키 및 제1 파라미터에 대해 제2 변환 처리를 수행하여 제1 키를 획득하는 단계 S8012를 통해 상기 키 생성 알고리즘을 구현할 수 있다. 여기서, 상기 키 생성 알고리즘과 단계 S401에서의 키 생성 알고리즘은 동일하다.
단계 S802에서, 제1 키에 따라 제1 암호문을 복호화하여 검증할 정보를 획득한다.
단계 S803에서, 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성한다.
일부 가능한 실시형태에서, 상기 키 생성 알고리즘은 상이한 제2 타임 스탬프에 따라 상이한 제2 키를 생성할 수 있다. 제2 타임 스탬프에 대해 제1 변환 처리를 수행하여 제2 파라미터를 획득하는 단계 S8031; 기설정된 초기 키 및 제2 파라미터에 대해 제2 변환 처리를 수행하여 제2 키를 획득하는 단계 S8032를 통해 상기 키 생성 알고리즘을 구현할 수 있다. 여기서, 상기 키 생성 알고리즘과 단계 S401에서의 키 생성 알고리즘은 동일하다. 여기서, 상기 키 생성 알고리즘과 단계 S401에서의 키 생성 알고리즘은 동일하다.
단계 S804에서, 제2 키에 따라 인증 결과를 암호화하여 제2 암호문을 획득한다.
도 8에 대한 본 발명의 실시예의 상기 예시적 실시를 통해 알 수 있는 바, 본 발명의 실시예는 기설정된 키 생성 알고리즘, 상이한 타임 스탬프에 따라 상이한 키를 생성하고, 상이한 타임 스탬프에 따라 생성된 키를 통해 검증할 정보에 대한 암호화 프로세스 및 제2 암호문에 대한 복호화 프로세스를 완료할 수 있음으로써, 서버와 단말기에서의 제1 암호문, 제2 암호문의 전송 프로세스의 안전성을 보장할 수 있고; 동시에, 상이한 타임 스탬프에 대응되는 암호화 키가 모두 상이하므로, 불법 사용자가 대량의 전송 암호문을 하이재킹하여 암호화 키를 해독하는 위험을 효과적으로 방지할 수 있으며; 동시에, 본 발명에 의해 제공된 동적 키는 제1 타임 스탬프에 따라 제1 변환 처리 및 제2 변환 처리를 거쳐 획득된 것이므로, 불법 사용자가 키 생성 알고리즘을 해독하는 난이도를 향상시키고, 인증 프로세스의 안전성을 더 향상시킨다.
도 9를 참조하면, 도 9는 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 7에 기반하여, 단계 S701 이전에, 상기 인증 방법 단계 S901 내지 단계 S902를 더 포함한다.
단계 S901에서, 단말기에 의해 송신된 시간 동기화 요청을 수신한다.
단계 S902에서, 단말기에 시간 동기화 응답을 송신하고; 시간 동기화 응답은 단말기가 서버와 시간 동기화를 수행하도록 지시하기 위한 것이다.
도 9에 대한 본 발명의 실시예의 상기 예시적 실시를 통해 알 수 있는 바, 본 발명은 인증 요청을 송신하기 전에 단말기와 서버 사이의 시간 동기화를 완료함으로써, 제2 타임 스탬프 및 제3 타임 스탬프에 따라 상기 인증 결과의 생성 시간을 결정하고, 나아가 상기 인증 결과의 유효성을 결정할 수 있음으로써, 재전송 공격을 방지하고, 시스템의 안전성을 향상시킬 수 있다.
일부 가능한 실시형태에서, 도 10을 참조하면, 도 10은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 10에 도시된 단계와 결부하여 설명한다.
단계 S1001에서, 단말기는 알고리즘 파일에 대한 초기화 요청을 수신하고; 초기화 요청은 알고리즘 파일 중의 알고리즘 태스크의 호출을 요청하기 위한 것이다.
단계 S1002에서, 단말기는 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득한다.
단계 S1003에서, 단말기는 서버에 시간 동기화 요청을 송신한다.
단계 S1004에서, 서버는 단말기에 의해 송신된 시간 동기화 요청을 수신하고, 단말기는 시간 동기화 응답을 송신한다.
단계 S1005에서, 단말기는 서버에 의해 송신된 시간 동기화 응답을 수신하고, 시간 동기화 응답에 따라 단말기와 서버 사이의 시간 동기화를 수행한다. 이때, 단말기는 서버와의 시간 동기화를 이미 완료하였다.
단계 S1006에서, 단말기는 서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신한다.
단계 S1007에서, 서버는 제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득한다.
단계 S1008에서, 서버는 검증할 정보를 검증하여 인증 결과를 획득한다.
단계 S1009에서, 서버는 제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득한다.
단계 S1010에서, 서버는 단말기에 제2 타임 스탬프 및 제2 암호문을 포함한 인증 응답을 송신한다.
단계 S1011에서, 단말기는 서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하고; 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함한다.
단계 S1012에서, 단말기는 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득한다.
단계 S1013에서, 단말기는 인증 결과의 상태 정보를 결정한다. 인증 결과가 무효 상태인 경우, 단계 S1014를 수행하고; 인증 결과가 유효 상태인 경우, 단계 S1015를 수행한다.
단계 S1014에서, 단말기는 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정한다.
단계 S1015에서, 단말기는 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정한다.
여기서, 단계 S1015는, 인증 결과가 인증의 통과를 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 성공인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 허용하는 단계 S1016; 인증 결과가 인증에 통과하지 못했음을 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 금지하는 단계 S1017을 포함한다.
도 10에 대한 본 발명의 실시예의 상기 예시적 실시를 통해 알 수 있는 바, 본 발명의 실시예는 상기 검증할 정보에 대한 검증 프로세스를 서버 측에서 수행할 수 있음으로써, 단말기가 복잡한 알고리즘 태스크를 수행하는 프로세스에서, 단말기의 컴퓨팅 압력을 감소시키고, 또한, 상기 검증할 정보를 검증하기 위한 화이트 리스트는 서버에 의해 유지되므로, 인증 프로세스에서 화이트 리스트의 안전성을 향상시키며; 이 밖에, 본 발명의 실시예에서 제공된 암호화/복호화 메커니즘은 또한 상이한 타임 스탬프에 따라 상이한 암호화/복호화 방법을 선택할 수 있음으로써, 인증 프로세스의 안전성을 더 향상시키며; 단말기와 서버는 동일한 암호화/복호화 메커니즘을 사용하므로, 배치가 쉽고 적용 가능성이 강하고; 본 발명의 실시예에 의해 제공되는 인증 방법을 통해 컴퓨팅 태스크가 불법적으로 호출되는 것을 효과적으로 방지할 수도 있음으로써, 컴퓨팅 태스크의 안전성을 향상시킨다.
아래, 하나의 실제 응용 장면에서의 본 발명의 실시예의 예시적 응용을 설명한다.
본 발명의 실시예는 알고리즘 파일 중의 컴퓨팅 태스크가 불법적으로 호출되는 문제를 해결할 수 있고, 여기서, 상기 알고리즘 파일은 다양한 포맷의 스크립트, 모듈을 포함할 수 있지만 이에 한정되지 않는다. 이해의 편의를 위해, 상기 알고리즘 파일이 wasm(WebAssembly) 파일인 것으로 예를 들어 본 발명의 실시예에 의해 제공되는 인증 방법을 설명한다.
wasm은 스택 기반 가상 머신의 바이너리 명령 포맷이다. wasm은 프로그래밍 언어의 이식 가능한 컴파일 타깃으로 설계됨으로써, 웹 페이지에서 클라이언트 및 서버 응용 프로그램을 배치할 수 있다. 알고리즘은 wasm을 통해 프론트엔드에 배치된 후, wasm의 소스 코드는 클라이언트에 의해 완전히 제어되므로, 이가 위치한 임베디드 환경에서 자연스럽게 호출될 수 있다. 권한이 없는 사용자가 wasm 중의 알고리즘 부분(알고리즘 태스크)을 무제한으로 호출하는 것을 방지하기 위해, wasm의 안전성을 강화하기 위해 인증 부분을 추가해야 한다. 현재, wasm에 대한 인증 연구에서 wasm 기술은 아직 초기 발전 단계이며 사용 가능한 인증 방식이 제한적이다. wasm의 네트워크 통신 능력은 이가 위치한 임베디드 환경에 의존하므로, 제3자에 의한 임베디드 환경의 변조도 wasm 인증의 위험을 증가시킨다.
관련 기술에서 다음과 같은 방법을 통해 인증 방안을 구현할 수 있다. 현재 도메인 네임을 획득하고 보유 중인 화이트 리스트에 있는지 여부를 검색하는 wasm가 먼저 자체 인증을 수행하는 방법; 및 랜덤 검사 코드 key를 권한 부여된 서버에 송신하고 서버가 key를 암호화하여 얻은 skey2를 획득하며, skey2와 wasm 자체가 key를 암호화하여 얻은 skey2’가 일치한지 여부를 비교하되, 일치하면 인증을 통과하는 핸드셰이크 검증을 수행하는 방법이다. 상기 인증 방법을 통해 wasm 내의 코드 보호 문제를 해결할 수 있지만, 여전히 다음과 같은 몇 가지 문제가 존재하는 바, 브라우저 측에서 유지할 수 있는 화이트 리스트 크기는 제한적이고; 화이트 리스트는 변조되기 쉬우며; 권한 부여 서버 배치가 번거롭고, 중개인이 요청을 하이재킹하여 다른 권한 부여 서버로 전달할 수 있으며, wasm과 권한 부여 서버가 보유하고 있는 키가 동일하면 인증을 통과할 수 있는데, 이러한 문제를 방지하려면, wasm과 권한 부여 서버의 키는 일대일로 대응되어야 하고, 즉 여러 세트의 키 방안이 필요한데, 이러면 다른 권한 부여 서버에 요청을 보내더라도 획득된 응답이 정확하지 않다.
따라서, 본 발명은 js(javascript, 함수 우선순위를 가진 경량급, 해석형 또는 즉시 컴파일형의 프로그래밍 언어) 네트워크 통신 능력을 기반으로 wasm의 원격 단말기 인증을 구현하고, 제3자가 js를 변조하고 중개인 공격(Man-in-the-Middle Attack)의 위험을 최대한 방지할 수 있는 인증 방법을 제공한다. 권한이 있는 사용자만 wasm 내의 알고리즘 인터페이스를 성공적으로 호출할 수 있도록 함으로써, 제3자 공격의 난이도를 증가시킨다.
일부 가능한 실시형태에서, wasm 파일에서 인증 부분을 추가하고, 알고리즘 인터페이스(알고리즘은 태스크임)가 호출되기 전에 먼저 초기화되며, 초기화 결과에 따라 알고리즘 인터페이스를 호출할 수 있는지 여부를 결정한다. 초기화 시 서버에 인증 요청을 송신하고 인증 결과를 기다리며, 결과에 따라 초기화 성공 여부를 결정한다. 인증 정보는 자체 획득 및 사용자 입력의 조합을 사용하고, 네트워크 통신에 암호화 전략을 추가한다.
도 11을 참조하면, 도 11은 본 발명의 실시예에 의해 제공되는 인증 방법의 하나의 선택 가능한 흐름 모식도이고, 도 11에 도시된 단계와 결부하여 설명한다.
단계 S1101에서, 현재 도메인 네임 domain을 주동적으로 획득한다.
단계 S1102에서, wasm 파일이 위치한 시스템 타임 스탬프 time_stamp1을 획득하고, time_stamp1에 대해 자체 정의된 제1 변환 처리를 수행하여 제1 파라미터를 형성한 다음, 제1 파라미터와 서버 및 wasm이 보유하고 있는 공통 초기 키 initial_key에 대해 자체 정의된 제2 변환 처리를 수행하여 암호화 키 key1을 형성한다. time_stamp1 및 initial_key라는 key1의 생성 프로세스를 기설정된 키 생성 알고리즘으로 저장할 수 있다. 여기서, time_stamp1은 상기 실시예에서의 제1 타임 스탬프이고; 암호화 키 key1은 상기 실시예에서의 제1 키이다.
단계 S1103에서, 사용자에 의해 입력된 appID(신원 식별자)를 수신한 다음, key1을 사용하여 appID 및 도메인 네임을 암호화하여 암호문 1을 획득한다. 여기서, 암호문 1은 상기 실시예에서의 제1 암호문이다.
단계 S1104에서, 서버에 시간 동기화 요청을 송신하고, 상기 요청도 단계 S1102, 단계 S1103과 동일한 메커니즘에 의해 암호화되어 time_stamp와 함께 서버로 송신되어, 서버 시간의 암호화 응답(메커니즘은 단계 S1106 내지 단계 S1110과 동일)을 획득한 후, 서버 시간을 기록되고 wasm 내부에서 보정되어, 서버와 동기화된 클록 clock’을 획득한다.
단계 S1105에서, 암호문 1과 time_stamp1의 일반 텍스트를 서버에 송신한다.
단계 S1106에서, 서버는 initial_key 및 수신된 time_stamp1에 대해, 기설정된 키 생성 알고리즘을 통해 복호화 키 key1을 획득한다.
단계 S1107에서, 서버는 암호문 1을 복호화하고, appID 및 대응되는 도메인 네임이 화이트 리스트 내에 있는지 여부를 조회하며, 결과를 인증 결과로 기록한다.
단계 S1108에서, 서버는 현재 타임 스탬프 time_stamp2를 획득한다. 여기서, 상기 time_stamp2는 상기 실시예에서의 제2 타임 스탬프이다.
단계 S1109에서, time_stamp2 및 initial_key에 대해, 기설정된 키 생성 알고리즘을 통해 암호화 키 key2를 획득한다. 여기서, 상기 key2는 상기 실시예에서의 제2 키이다.
단계 S1110에서, key2를 사용하여 인증 결과를 암호화하여 암호문 2를 획득하고, 암호문 2 및 time_stamp2의 일반 텍스트를 wasm 파일에 리턴시킨다. 여기서, 암호문 2는 상기 실시예에서의 제2 암호문이다.
단계 S1111에서, wasm 파일은 time_stamp2 및 initial_key에 대해, 기설정된 키 생성 알고리즘을 통해 복호화 키 key2를 획득하고, 암호문 2를 복호화하여 인증 결과를 획득한다.
단계 S1112에서, 인증 결과가 통과인지 여부를 판단한다.
단계 S1113에서, 인증 결과가 인증에 통과되지 않았거나 인증 결과가 복호화 실패이면, 초기화 실패이다.
단계 S1114에서, 인증 결과가 통과이면, wasm은 보정 클록을 조회하여 현재 보정 시간 time_stamp3을 획득하고, time_stamp3이 time_stamp2와 유효 기간의 합을 초과하는지 여부를 비교하되, 초과하면 초기화 실패이고, 아니면 성공이다. 여기서, time_stamp3은 상기 실시예에서의 제3 타임 스탬프이다.
일부 가능한 실시형태에서, wasm과 서버의 통신 프로세스에서 랜덤 검사 코드를 추가할 수 있는데, 즉 wasm이 시간 동기화 요청 또는 인증 암호문을 송신할 때 한 추가적인 섹션의 랜덤 문자열 추가하여 키 암호화에 의해 서버에 송신할 수 있고, 서버는 복호화 후 재암호화되어 응답과 함께 리턴되며, wasm은 상기 랜덤 검사 코드가 일지한지 여부를 검사하여 수신된 응답의 유효성을 결정하되, 일치하면 유효하고, 일치하지 않으면 유효하지 않다. 유사하게, 서버는 마찬가지로 첫 번째 응답 시 랜덤 검사 코드를 추가하여 두 번째 요청의 유효성을 검증할 수 있다.
본 발명의 실시예에 의해 제공되는 인증 방법을 통해 다음과 같은 기술적 효과에 도달할 수 있는 바, 키는 시간에 따라 변하므로, 중개인은 타임 스탬프 및 암호문을 변조하기 어렵고; 중개인은 어느 것이 인증을 통과한 암호문인지 결정하기 어려우며 또한 유효 시간 내에 통과한 암호문을 사용하기 어렵고; 도메인 네임의 획득은 wasm에 의해 완료되므로, 상기 코드 세그먼트가 바이트 코드로 컴파일되는데, 기존의 js 코드에 비해, 코드 세그먼트의 실행 단계가 외부에 노출되지 않으므로, 중개인은 인증 요청 정보가 어떠한 파라미터를 사용했는지 여부를 알기 어려우며; 배치가 쉽고 구현이 간단하다.
아래 구현의 일부로서 본 발명의 실시예에 의해 제공되는 인증 장치(555)의 예시적 구조를 계속하여 설명하고, 일부 가능한 실시형태에서, 도 12에 도시된 바와 같이, 메모리(550)에 저장된 인증 장치(555) 중의 부분은,
제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하도록 구성되는 제1 암호화 부분(1201);
서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신하도록 구성되는 제1 송신 부분(1202);
서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하도록 구성되는 제1 수신 부분(1203) - 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 및
제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하도록 구성되는 제1 복호화 부분(1204)을 포함할 수 있다.
일부 가능한 실시형태에서, 제1 암호화 부분(1201)은 또한, 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하고; 제1 키에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하도록 구성된다.
일부 가능한 실시형태에서, 제1 암호화 부분(1201)은 또한, 제1 타임 스탬프에 대해 제1 변환 처리를 수행하여 제1 파라미터를 획득하고; 기설정된 초기 키 및 제1 파라미터에 대해 제2 변환 처리를 수행하여 제1 키를 획득하도록 구성된다.
일부 가능한 실시형태에서, 제1 복호화 부분(1204)은 또한, 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하고; 제2 키에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하도록 구성된다.
일부 가능한 실시형태에서, 제1 복호화 부분(1204)은 또한, 제2 타임 스탬프에 대해 제1 변환 처리를 수행하여 제2 파라미터를 획득하고; 기설정된 초기 키 및 제2 파라미터에 대해 제2 변환 처리를 수행하여 제2 키를 획득하도록 구성된다.
일부 가능한 실시형태에서, 상기 인증 장치(555)는 초기화 부분을 더 포함하고, 상기 초기화 부분은, 알고리즘 파일에 대한 초기화 요청을 수신하도록 구성되되, 초기화 요청은 알고리즘 파일 중의 알고리즘 태스크의 호출을 요청하기 위한 것이다.
일부 가능한 실시형태에서, 상기 인증 장치(555)는 호출 부분을 더 포함하고, 상기 호출 부분은, 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정하도록 구성된다. 상기 호출 부분은 또한, 인증 결과가 인증의 통과를 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 성공인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 허용하며; 인증 결과가 인증에 통과하지 못했음을 나타내는 경우, 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정하고, 단말기가 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 금지하도록 구성된다.
일부 가능한 실시형태에서, 상기 인증 장치(555)는 상태 결정 부분을 더 포함하고, 상기 상태 결정 부분은, 인증 결과의 상태 정보를 결정하고; 인증 결과가 무효 상태인 경우, 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정하도록 구성된다. 상기 호출 부분은 또한, 인증 결과가 유효 상태인 경우, 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정하도록 구성된다.
일부 가능한 실시형태에서, 상기 인증 장치(555)는 제1 동기화 부분을 더 포함하고, 상기 제1 동기화 부분은, 서버에 시간 동기화 요청을 송신하고, 서버에 의해 송신된 시간 동기화 응답을 수신하며, 시간 동기화 응답에 따라 단말기와 서버 사이의 시간 동기화를 수행하도록 구성된다. 상기 상태 결정 부분은 또한, 인증 결과를 획득한 경우, 시간 동기화를 수행한 후 단말기의 시스템 시간을 제3 타임 스탬프로 사용하고; 제3 타임 스탬프 및 제2 타임 스탬프에 따라 인증 결과의 상태 정보를 결정하도록 구성된다.
일부 가능한 실시형태에서, 상기 상태 결정 부분은 또한, 제3 타임 스탬프와 제2 타임 스탬프 사이의 시간 간격이 기설정된 유효 시간 임계값을 초과하는 경우, 인증 결과가 무효 상태인 것으로 결정하고; 제3 타임 스탬프와 제2 타임 스탬프 사이의 시간 간격이 유효 시간 임계값을 초과하지 않은 경우, 인증 결과가 유효 상태인 것으로 결정하도록 구성된다.
일부 가능한 실시형태에서, 검증할 정보는 현재 도메인 네임, 랜덤 검사 코드 및 사용자에 의해 입력된 신원 식별자 중 적어도 하나를 포함한다.
일부 가능한 실시형태에서, 도 13에 도시된 바와 같이, 메모리(550)에 저장된 인증 장치(555) 중의 소프트웨어 부분은,
단말기에 의해 송신된, 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 수신하도록 구성되는 제2 수신 부분(1301);
제1 타임 스탬프에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하도록 구성되는 제2 복호화 부분(1302);
검증할 정보를 검증하여 인증 결과를 획득하도록 구성되는 검증 부분(1303);
제2 타임 스탬프에 따라 인증 결과를 암호화하여 제2 암호문을 획득하도록 구성되는 제2 암호화 부분(1304); 및
단말기에 제2 타임 스탬프 및 제2 암호문을 포함한 인증 응답을 송신하도록 구성되는 제2 송신 부분(1305)을 포함할 수 있되, 인증 응답은 단말기가 복호화된 제2 암호문에 따라 인증 결과를 획득하도록 지시하기 위한 것이다.
일부 가능한 실시형태에서, 제2 복호화 부분(1302)은 또한, 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하고; 제1 키에 따라 제1 암호문을 복호화하여 검증할 정보를 획득하도록 구성된다.
일부 가능한 실시형태에서, 제2 복호화 부분(1302)은 또한, 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하고, 제1 타임 스탬프에 대해 제1 변환 처리를 수행하여 제1 파라미터를 획득하며; 기설정된 초기 키 및 제1 파라미터에 대해 제2 변환 처리를 수행하여 제1 키를 획득하도록 구성된다.
일부 가능한 실시형태에서, 제2 암호화 부분(1304)은 또한, 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하고; 제2 키에 따라 인증 결과를 암호화하여 제2 암호문을 획득하도록 구성된다.
일부 가능한 실시형태에서, 제2 암호화 부분(1304)은 또한, 제2 타임 스탬프에 대해 제1 변환 처리를 수행하여 제2 파라미터를 획득하고; 기설정된 초기 키 및 제2 파라미터에 대해 제2 변환 처리를 수행하여 제2 키를 획득하도록 구성된다.
일부 가능한 실시형태에서, 상기 인증 장치(555)는 제2 동기화 부분을 더 포함하고, 상기 제2 동기화 부분은 또한, 단말기에 의해 송신된 시간 동기화 요청을 수신하고; 단말기에 시간 동기화 응답을 송신하도록 구성되되, 시간 동기화 응답은 단말기가 서버와 시간 동기화를 수행하도록 지시하기 위한 것이다.
일부 가능한 실시형태에서, 검증할 정보는 현재 도메인 네임, 랜덤 검사 코드 및 사용자에 의해 입력된 신원 식별자 중 적어도 하나를 포함한다.
본 발명의 실시예는 컴퓨터 프로그램 제품 또는 컴퓨터 프로그램을 제공하되, 상기 컴퓨터 프로그램 제품 또는 컴퓨터 프로그램은 컴퓨터 명령을 포함하고, 상기 컴퓨터 명령은 컴퓨터 판독 가능 저장 매체에 저장된다. 컴퓨터 기기의 프로세서는 컴퓨터 판독 가능 저장 매체에서 상기 컴퓨터 명령을 판독하고, 프로세서는 상기 컴퓨터 명령을 실행하여, 상기 컴퓨터 기기가 본 발명의 실시예에 따른 인증 방법을 수행하도록 한다.
본 발명의 실시예는 실행 가능 명령이 저장된 컴퓨터 판독 가능 저장 매체를 제공하고, 실행 가능 명령이 프로세서에 의해 실행될 경우, 프로세서가 본 발명의 실시예에 의해 제공되는 인증 방법을 수행하도록 하며, 예를 들어, 도 3, 도 4, 도 5, 도 6, 도 7, 도 8, 도 9, 도 10 또는 도 11에 도시된 방법을 수행하도록 한다.
일부 가능한 실시형태에서, 컴퓨터 판독 가능 저장 매체는 강유전체 랜덤 액세스 메모리(Ferroelectric Random Access Memory, FRAM), 판독 전용 메모리(Read-Only Memory, ROM), 프로그램 가능 판독 전용 메모리(Programmable read-only memory, PROM), 전기적 프로그램 가능 판독 전용 메모리(Electrical Programmable read-only memory, EPROM), 전기적 소거 가능 프로그램 가능 판독 전용 메모리(Electrical Erasable Programmable read-only memory, EEPROM), 플래시 메모리, 자기 표면 메모리, 광 디스크, 또는 CD-ROM 등 메모리일 수 있고; 상기 메모리 중 하나 또는 임의의 조합을 포함하는 다양한 기기일 수도 있다.
일부 가능한 실시형태에서, 실행 가능 명령 프로그램, 소프트웨어, 부분, 스크립트 또는 코드의 형태일 수 있고, 임의의 형태의 프로그래밍 언어(컴파일 또는 해석 언어, 또는 선언적 또는 프로세스적 언어를 포함)에 따라 프로그래밍되며, 독립적인 프로그램으로 배치되거나 부분, 컴포넌트, 서브루틴, 또는 계산 환경에서 사용하기 적합한 다른 유닛으로 배치되는 형태를 포함하는 임의의 형태에 따라 배치될 수 있다.
예시로서, 실행 가능 명령은 파일 시스템 중의 파일과 반드시 대응되지 않지만 다른 프로그램 또는 데이터를 저장하는 파일의 일부에 저장될 수 있고, 예를 들어, 하이퍼 텍스트 마크업 언어(HTML, Hyper Text Markup Language) 파일 중 하나 이상의 스크립트에 저장될 수 있으며, 논의된 프로그램에 전용되는 단일 파일에 저장될 수 있거나, 또는, 복수 개의 협업 파일(예를 들어, 하나 이상의 부분, 서브루틴 또는 코드 부분이 저장된 파일)에 저장될 수 있다.
예시로서, 실행 가능 명령은, 하나의 컴퓨팅 기기에서 실행되도록, 또는 하나의 위치에 위치한 복수 개의 컴퓨팅 기기에서 실행되도록, 또는, 복수 개의 위치에 분포되고 통신 네트워크를 통해 상호 연결된 복수 개의 컴퓨팅 기기에서 실행되도록 배치될 수 있다.
상술한 내용은 본 발명의 실시예일 뿐, 본 발명의 보호 범위를 한정하지 않는다. 본 발명의 사상 및 범위 내에서 진행한 임의의 수정, 등가적 대체 및 개선 등은 모두 본 발명의 보호 범위 내에 속한다.
본 발명은 인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체를 제공하되, 방법은, 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계; 서버에 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 송신하는 단계; 서버에 의해 송신된, 인증 요청에 대응되는 인증 응답을 수신하는 단계; 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 및 제2 타임 스탬프에 따라 제2 암호문을 복호화하여 검증할 정보에 대한 서버의 인증 결과를 획득하는 단계를 포함한다. 본 발명의 실시예는 인증 프로세스의 안전성을 향상시킬 수 있고, 나아가, 본 발명의 실시예에 의해 제공되는 인증 방법을 통해 계산 태스크가 불법적으로 호출되는 것을 효과적으로 방지할 수 있다.

Claims (23)

  1. 단말기에 적용되는 인증 방법으로서,
    제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계;
    서버에 상기 제1 암호문 및 상기 제1 타임 스탬프를 포함한 인증 요청을 송신하는 단계;
    상기 서버에 의해 송신된, 상기 인증 요청에 대응되는 인증 응답을 수신하는 단계 - 상기 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 및
    상기 제2 타임 스탬프에 따라 상기 제2 암호문을 복호화하여 상기 검증할 정보에 대한 상기 서버의 인증 결과를 획득하는 단계를 포함하는 인증 방법.
  2. 제1항에 있어서,
    상기 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계는,
    상기 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하는 단계; 및
    상기 제1 키에 따라 상기 검증할 정보를 암호화하여 상기 제1 암호문을 획득하는 단계를 포함하는 인증 방법.
  3. 제2항에 있어서,
    상기 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하는 단계는,
    상기 제1 타임 스탬프에 대해 제1 변환 처리를 수행하여 제1 파라미터를 획득하는 단계; 및
    기설정된 초기 키 및 상기 제1 파라미터에 대해 제2 변환 처리를 수행하여 상기 제1 키를 획득하는 단계를 포함하는 인증 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 제2 타임 스탬프에 따라 상기 제2 암호문을 복호화하여 상기 검증할 정보에 대한 상기 서버의 인증 결과를 획득하는 단계는,
    상기 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하는 단계; 및
    상기 제2 키에 따라 상기 제2 암호문을 복호화하여 상기 검증할 정보에 대한 상기 서버의 인증 결과를 획득하는 단계를 포함하는 인증 방법.
  5. 제4항에 있어서,
    상기 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하는 단계는,
    상기 제2 타임 스탬프에 대해 제1 변환 처리를 수행하여 제2 파라미터를 획득하는 단계; 및
    기설정된 초기 키 및 상기 제2 파라미터에 대해 제2 변환 처리를 수행하여 상기 제2 키를 획득하는 단계를 포함하는 인증 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하는 단계 이전에, 상기 인증 방법은,
    알고리즘 파일에 대한 초기화 요청을 수신하는 단계를 더 포함하며, 상기 초기화 요청은 상기 알고리즘 파일 중의 알고리즘 태스크의 호출을 요청하기 위한 것인 인증 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 인증 방법은,
    상기 인증 결과에 따라 알고리즘 파일의 초기화 결과를 결정하는 단계를 더 포함하고,
    상기 인증 결과에 따라 상기 알고리즘 파일의 초기화 결과를 결정하는 단계는,
    상기 인증 결과가 인증의 통과를 나타내는 경우, 상기 알고리즘 파일의 초기화 결과가 초기화 성공인 것으로 결정하고, 상기 단말기가 상기 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 허용하는 단계; 및
    상기 인증 결과가 인증에 통과하지 못하였음을 나타내는 경우, 상기 알고리즘 파일의 초기화 결과가 초기화 실패인 것으로 결정하고, 상기 단말기가 상기 알고리즘 파일 중의 알고리즘 태스크를 호출하는 것을 금지하는 단계를 포함하는 인증 방법.
  8. 제7항에 있어서,
    상기 인증 방법은,
    상기 인증 결과의 상태 정보를 결정하는 단계를 더 포함하고,
    상기 인증 결과에 따라 상기 알고리즘 파일의 초기화 결과를 결정하는 단계는,
    상기 인증 결과가 유효 상태인 경우, 상기 인증 결과에 따라 상기 알고리즘 파일의 초기화 결과를 결정하는 단계를 포함하는 인증 방법.
  9. 제8항에 있어서,
    상기 인증 방법은,
    상기 서버에 시간 동기화 요청을 송신하고, 상기 서버에 의해 송신된 시간 동기화 응답을 수신하며, 상기 시간 동기화 응답에 따라 상기 단말기와 상기 서버 사이의 시간 동기화를 수행하는 단계를 더 포함하고,
    상기 인증 결과의 상태 정보를 결정하는 단계는,
    상기 인증 결과를 획득한 경우, 시간 동기화를 수행한 후 상기 단말기의 시스템 시간을 제3 타임 스탬프로 사용하는 단계; 및
    상기 제3 타임 스탬프 및 상기 제2 타임 스탬프에 따라 상기 인증 결과의 상태 정보를 결정하는 단계를 포함하는 인증 방법.
  10. 제9항에 있어서,
    상기 제3 타임 스탬프 및 상기 제2 타임 스탬프에 따라 상기 인증 결과의 상태 정보를 결정하는 단계는,
    상기 제3 타임 스탬프와 상기 제2 타임 스탬프 사이의 시간 간격이 상기 유효 시간 임계값을 초과하지 않은 경우, 상기 인증 결과가 유효 상태인 것으로 결정하는 단계를 포함하는 인증 방법.
  11. 제1항 내지 제9항 중 어느 한 항에 있어서,
    상기 검증할 정보는 현재 도메인 네임, 랜덤 검사 코드 및 사용자에 의해 입력된 신원 식별자 중 적어도 하나를 포함하는 인증 방법.
  12. 서버에 적용되는 인증 방법으로서,
    단말기에 의해 송신된, 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 수신하는 단계;
    상기 제1 타임 스탬프에 따라 상기 제1 암호문을 복호화하여 검증할 정보를 획득하는 단계;
    상기 검증할 정보를 검증하여 인증 결과를 획득하는 단계;
    제2 타임 스탬프에 따라 상기 인증 결과를 암호화하여 제2 암호문을 획득하는 단계; 및
    상기 단말기에 상기 제2 타임 스탬프 및 상기 제2 암호문을 포함한 인증 응답을 송신하는 단계를 포함하며, 상기 인증 응답은 상기 단말기가 복호화된 제2 암호문에 따라 상기 인증 결과를 획득하도록 지시하기 위한 것인 인증 방법.
  13. 제12항에 있어서,
    상기 제1 타임 스탬프에 따라 상기 제1 암호문을 복호화하여 검증할 정보를 획득하는 단계는,
    상기 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하는 단계; 및
    상기 제1 키에 따라 상기 제1 암호문을 복호화하여 상기 검증할 정보를 획득하는 단계를 포함하는 인증 방법.
  14. 제13항에 있어서,
    상기 제1 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제1 키를 생성하는 단계는,
    상기 제1 타임 스탬프에 대해 제1 변환 처리를 수행하여 제1 파라미터를 획득하는 단계; 및
    기설정된 초기 키 및 상기 제1 파라미터에 대해 제2 변환 처리를 수행하여 상기 제1 키를 획득하는 단계를 포함하는 인증 방법.
  15. 제12항 내지 제13항 중 어느 한 항에 있어서,
    상기 제2 타임 스탬프에 따라 상기 인증 결과를 암호화하여 제2 암호문을 획득하는 단계는,
    상기 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하는 단계; 및
    상기 제2 키에 따라 상기 인증 결과를 암호화하여 제2 암호문을 획득하는 단계를 포함하는 인증 방법.
  16. 제15항에 있어서,
    상기 제2 타임 스탬프 및 기설정된 키 생성 알고리즘에 따라 제2 키를 생성하는 단계는,
    상기 제2 타임 스탬프에 대해 제1 변환 처리를 수행하여 제2 파라미터를 획득하는 단계; 및
    기설정된 초기 키 및 상기 제2 파라미터에 대해 제2 변환 처리를 수행하여 상기 제2 키를 획득하는 단계를 포함하는 인증 방법.
  17. 제12항 내지 제16항 중 어느 한 항에 있어서,
    상기 인증 방법은,
    상기 단말기에 의해 송신된 시간 동기화 요청을 수신하는 단계; 및
    상기 단말기에 시간 동기화 응답을 송신하는 단계를 더 포함하며, 상기 시간 동기화 응답은 상기 단말기가 상기 서버와 시간 동기화를 수행하도록 지시하기 위한 것인 인증 방법.
  18. 제12항 내지 제17항 중 어느 한 항에 있어서,
    상기 검증할 정보는 현재 도메인 네임, 랜덤 검사 코드 및 사용자에 의해 입력된 신원 식별자 중 적어도 하나를 포함하는 인증 방법.
  19. 인증 장치로서,
    제1 타임 스탬프에 따라 검증할 정보를 암호화하여 제1 암호문을 획득하도록 구성되는 제1 암호화 부분;
    서버에 상기 제1 암호문 및 상기 제1 타임 스탬프를 포함한 인증 요청을 송신하도록 구성되는 제1 송신 부분;
    상기 서버에 의해 송신된, 상기 인증 요청에 대응되는 인증 응답을 수신하도록 구성되는 제1 수신 부분 - 상기 인증 응답은 제2 암호문 및 제2 타임 스탬프를 포함함 - ; 및
    상기 제2 타임 스탬프에 따라 상기 제2 암호문을 복호화하여 상기 검증할 정보에 대한 상기 서버의 인증 결과를 획득하도록 구성되는 제1 복호화 부분을 포함하는 인증 장치.
  20. 인증 장치로서,
    단말기에 의해 송신된, 제1 암호문 및 제1 타임 스탬프를 포함한 인증 요청을 수신하도록 구성되는 제2 수신 부분;
    상기 제1 타임 스탬프에 따라 상기 제1 암호문을 복호화하여 검증할 정보를 획득하도록 구성되는 제2 복호화 부분;
    상기 검증할 정보를 검증하여 인증 결과를 획득하도록 구성되는 검증 부분;
    제2 타임 스탬프에 따라 상기 인증 결과를 암호화하여 제2 암호문을 획득하도록 구성되는 제2 암호화 부분;
    상기 단말기에 상기 제2 타임 스탬프 및 상기 제2 암호문을 포함한 인증 응답을 송신하도록 구성되는 제2 송신 부분을 포함하며, 상기 인증 응답은 상기 단말기가 복호화된 제2 암호문에 따라 상기 인증 결과를 획득하도록 지시하기 위한 것인 인증 장치.
  21. 인증 기기로서,
    실행 가능 명령을 저장하는 메모리; 및
    상기 메모리에 저장된 컴퓨터 프로그램을 실행할 경우, 제1항 내지 제11항 중 어느 한 항 또는 제12항 내지 제18항 중 어느 한 항에 따른 방법을 구현하는 프로세서를 포함하는 인증 기기.
  22. 컴퓨터 프로그램 명령이 저장된 컴퓨터 판독 가능 저장 매체로서,
    상기 컴퓨터 프로그램 명령이 프로세서에 의해 실행될 경우 제1항 내지 제11항 중 어느 한 항에 따른 방법, 또는 제12항 내지 제18항 중 어느 한 항에 따른 방법을 구현하는 컴퓨터 판독 가능 저장 매체.
  23. 컴퓨터 판독 가능 코드를 포함하는 컴퓨터 프로그램으로서,
    상기 컴퓨터 판독 가능 코드가 전자 기기에서 실행될 경우, 상기 전자 기기 중의 프로세서는 제1항 내지 제11항 중 어느 한 항에 따른 방법, 또는 제12항 내지 제18항 중 어느 한 항에 따른 방법을 구현하기 위해 실행되는 컴퓨터 프로그램.
KR1020227004361A 2020-08-31 2021-04-23 인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체 KR20220031095A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010898310.5A CN112073188B (zh) 2020-08-31 2020-08-31 鉴权方法、装置、设备及计算机可读存储介质
CN202010898310.5 2020-08-31
PCT/CN2021/089440 WO2022041806A1 (zh) 2020-08-31 2021-04-23 鉴权方法、装置、设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
KR20220031095A true KR20220031095A (ko) 2022-03-11

Family

ID=73665903

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227004361A KR20220031095A (ko) 2020-08-31 2021-04-23 인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체

Country Status (6)

Country Link
US (1) US20220209951A1 (ko)
JP (1) JP2022549395A (ko)
KR (1) KR20220031095A (ko)
CN (1) CN112073188B (ko)
TW (1) TW202222050A (ko)
WO (1) WO2022041806A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112073188B (zh) * 2020-08-31 2023-01-24 北京市商汤科技开发有限公司 鉴权方法、装置、设备及计算机可读存储介质
CN112672333B (zh) * 2020-12-15 2023-08-25 三维通信股份有限公司 设备连接方法及装置
CN112804214A (zh) * 2020-12-31 2021-05-14 四川瑞霆电力科技有限公司 一种基于智慧物联网的感知层数据安全接入方法及其系统
CN113014391B (zh) * 2021-01-22 2022-10-21 深圳市网心科技有限公司 嵌入式系统的鉴权方法、终端设备及计算机可读存储介质
CN114095150B (zh) * 2021-11-12 2024-01-26 微位(深圳)网络科技有限公司 身份鉴定方法、装置、设备及可读存储介质
CN114205170B (zh) * 2021-12-21 2023-11-17 厦门安胜网络科技有限公司 跨接口平台组网通信及服务加密调用方法
JP2023128985A (ja) * 2022-03-04 2023-09-14 カシオ計算機株式会社 ウェブアプリケーションサーバ、ウェブアプリケーションプログラム及びウェブアプリケーション提供方法
CN115037552A (zh) * 2022-06-29 2022-09-09 北京大甜绵白糖科技有限公司 鉴权方法、装置、设备及存储介质
CN114915504B (zh) * 2022-07-18 2022-12-20 广州万协通信息技术有限公司 安全芯片初始认证方法及系统
CN115242390B (zh) * 2022-09-26 2023-01-06 杭州思拓瑞吉科技有限公司 一种基于时间戳的储能控制数据包传输方法及组件
CN116319763B (zh) * 2023-05-19 2023-08-11 北京长亭科技有限公司 一种基于wasm技术的文件上传方法以及装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2689383B2 (ja) * 1988-02-18 1997-12-10 株式会社 日立製作所 暗号化通信システム
US7502466B2 (en) * 2005-01-06 2009-03-10 Toshiba Corporation System and method for secure communication of electronic documents
CN102685739B (zh) * 2011-12-08 2015-03-25 北京高森明晨信息科技有限公司 安卓企业应用的鉴权方法及系统
CN102724207B (zh) * 2012-06-28 2015-07-15 上海西本网络科技有限公司 服务请求的发送/处理方法和装置、客户端及服务端
JP5997588B2 (ja) * 2012-11-15 2016-09-28 株式会社エヌ・ティ・ティ・データ 通信システム、通信方法、通信装置、および通信プログラム
JP6017336B2 (ja) * 2013-02-12 2016-10-26 株式会社東芝 データ管理装置および電力使用量計算システム
US20140325225A1 (en) * 2013-04-27 2014-10-30 Quantron Inc. Self-authenticated method with timestamp
CN106161367A (zh) * 2015-04-07 2016-11-23 阿里巴巴集团控股有限公司 一种动态口令验证方法及系统、客户端和服务器
CN107301545B (zh) * 2017-04-14 2020-09-01 广州羊城通有限公司 一种基于时间戳的交易验证方法
KR20180119201A (ko) * 2017-04-24 2018-11-02 삼성전자주식회사 인증 시스템을 위한 전자 장치
CN107819572B (zh) * 2017-09-29 2021-01-22 北京比特大陆科技有限公司 命令传输方法、装置及电子设备
CN110011950B (zh) * 2018-01-04 2021-11-09 武汉斗鱼网络科技有限公司 一种视频流地址的鉴权方法及装置
CN109522726A (zh) * 2018-10-16 2019-03-26 平安万家医疗投资管理有限责任公司 小程序的鉴权方法、服务器及计算机可读存储介质
CN109684790B (zh) * 2018-12-26 2021-06-04 佛山市瑞德物联科技有限公司 软件启动方法、软件授权验证方法、设备和存储介质
CN110266653B (zh) * 2019-05-29 2021-09-14 深圳市梦网科技发展有限公司 一种鉴权方法、系统及终端设备
JP6707702B1 (ja) * 2019-09-18 2020-06-10 株式会社ソリトンシステムズ ユーザ認証装置及びプログラム
CN111432405A (zh) * 2020-03-31 2020-07-17 中电四川数据服务有限公司 一种用于电子病历的授权认证方法及系统
CN112073188B (zh) * 2020-08-31 2023-01-24 北京市商汤科技开发有限公司 鉴权方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN112073188B (zh) 2023-01-24
CN112073188A (zh) 2020-12-11
US20220209951A1 (en) 2022-06-30
JP2022549395A (ja) 2022-11-25
TW202222050A (zh) 2022-06-01
WO2022041806A1 (zh) 2022-03-03

Similar Documents

Publication Publication Date Title
KR20220031095A (ko) 인증 방법, 장치, 기기 및 컴퓨터 판독 가능 저장 매체
US11297055B2 (en) Multifactor contextual authentication and entropy from device or device input or gesture authentication
US11895096B2 (en) Systems and methods for transparent SaaS data encryption and tokenization
JP6335280B2 (ja) 企業システムにおけるユーザおよびデバイスの認証
EP3162103B1 (en) Enterprise authentication via third party authentication support
EP3850818B1 (en) Systems and methods for presenting additional content for a network application accessed via an embedded browser of a client application
CN101427510B (zh) 用于网络功能描述的数字通行
CN108959878B (zh) 用户认证系统中采用的方法以及其中包括的信息处理装置
CN109981665B (zh) 资源提供方法及装置、资源访问方法及装置和系统
EP3651439B1 (en) Systems and methods for saas overlays using an embedded browser
EP3651050A1 (en) Systems and methods for encrypted browser cache
CN112868212A (zh) 用于html应用的改进的远程显示协议的系统和方法
CN115037552A (zh) 鉴权方法、装置、设备及存储介质
Rath et al. Encryption-based second authentication factor solutions for qualified server-side signature creation
WO2015192656A1 (zh) 一种安全模式提示方法及装置
JP2023532976A (ja) ユーザの身元の検証のための方法およびシステム
CN113193956A (zh) 账号信息处理方法及装置
CN102426635B (zh) 文件信息显示装置、显示方法及系统
JP2022528366A (ja) Htmlブラウザ承認アプローチを含むコンピュータシステムおよび方法
KR102305691B1 (ko) 실시간 주문형 디지털 컨텐츠의 drm 패키징 방법과 이를 실행하기 위한 컴퓨팅 장치
EP4058921B1 (en) Device and method for secure communication
CN115906196A (zh) 一种移动存储方法、装置、设备及存储介质
CN116419212A (zh) 基于sim卡的身份认证方法、平台、sim卡及终端
CN118051899A (zh) 登录验证方法、装置、计算机设备、存储介质及程序产品

Legal Events

Date Code Title Description
A201 Request for examination