KR20190113840A - 2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스 - Google Patents

2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스 Download PDF

Info

Publication number
KR20190113840A
KR20190113840A KR1020197023898A KR20197023898A KR20190113840A KR 20190113840 A KR20190113840 A KR 20190113840A KR 1020197023898 A KR1020197023898 A KR 1020197023898A KR 20197023898 A KR20197023898 A KR 20197023898A KR 20190113840 A KR20190113840 A KR 20190113840A
Authority
KR
South Korea
Prior art keywords
dimensional code
server
information
generating
request
Prior art date
Application number
KR1020197023898A
Other languages
English (en)
Other versions
KR102208895B1 (ko
Inventor
웨이 구오
Original Assignee
알리바바 그룹 홀딩 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 알리바바 그룹 홀딩 리미티드 filed Critical 알리바바 그룹 홀딩 리미티드
Publication of KR20190113840A publication Critical patent/KR20190113840A/ko
Application granted granted Critical
Publication of KR102208895B1 publication Critical patent/KR102208895B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
    • G06K17/0022Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
    • 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
    • H04L9/3249Cryptographic 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 using RSA or related signature schemes, e.g. Rabin scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Power Engineering (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Collating Specific Patterns (AREA)

Abstract

본 출원은 2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스를 개시한다. 본 방법은, 제1 서버에 의해 2차원 코드 생성 요청을 제2 서버로 전송하는 단계로서, 이 요청은 2차원 코드를 생성하기 위한 정보를 포함하는, 전송하는 단계; 수신된 2차원 코드 생성 요청에 따라 제2 서버에 의해, 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 단계; 디지털 서명을 포함하는 상기 2차원 코드 정보를 제1 서버로 전송하는 단계; 및 제1 서버에 의해, 2차원 코드 정보를 사용하여 상기 2차원 코드를 생성하는 단계를 포함한다. 본 발명에 따른 실시예에서, 2차원 코드는 서버와 다른 서버 사이의 상승 효과에 의해 생성되어, 2차원 코드의 보안 및 효과성이 향상되고, 2차원 코드 인식 프로세스에서, 2차원 코드가 변조되었는지 여부를 인식하는 것이 편리하다.

Description

2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스
<우선권의 청구>
본 출원은 2017년 2월 14일자로 출원된 중국 특허 출원 번호 201710078901.6호에 대해 우선권을 주장하며, 이의 전체 내용은 본원에 참조로 통합된다.
<기술분야>
본 출원은 그래픽 이미지 기술 분야, 특히 2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스에 관한 것이다.
2차원 바코드라고도 알려진 2차원 코드는 특정 규칙에 따라 (2차원 방향으로) 평면에 분포된 특정 유형의 기하학적 그래프에 의해 형성된 막대/공간 교호 그래프를 사용하여 데이터 부호 정보를 기록한다. 2차원 코드는 큰 정보 용량, 넓은 코딩 범위, 강한 허용 오차 및 높은 디코딩 신뢰성과 같은 특징을 가지며, 낮은 비용 및 용이한 제조와 같은 이점을 추가로 갖는다. 따라서 2차원 코드는 사람들의 삶에 광범위하게 적용된다.
인터넷의 발달과 모바일 단말의 대중화로 인해, 일상 생활의 모든 곳에서 2차원 코드를 볼 수 있다. 예를 들어, 판매자는 결제시에 결제 2차원 코드를 게시할 수 있고, 사용자는 애플리케이션에서 2차원 코드 스캐닝 기능을 사용하여 결제 2차원 코드를 스캐닝할 수 있다. 또는, 상품 프로모션에서, 판매자는 2차원 코드를 스캐닝하고 애플리케이션을 다운로드하도록 지나가는 사람들을 유인하기 위해 2차원 코드를 다운로드하는 앱을 (지하철 또는 쇼핑몰과 같은) 비교적 혼잡한 장소에 게시할 수 있다. 따라서, 판매자 또는 제3자는 사용자에게 진정하고 유효한 2차원 코드를 제공할 필요가 있으며, 사용자는 이러한 2차원 코드를 효과적으로 검증해야 한다.
종래 기술을 연구 및 실시할 때, 본 발명의 발명자는 사람들이 육안으로 2차원 코드의 진위를 판단하기가 어렵고, 2차원 코드 인식 중에, 모바일 폰 애플리케이션 내의 스캐닝 유닛이 어떠한 검증 없이 다양한 2차원 코드를 직접 인식한다는 것을 알게 되었다. 2차원 코드의 진위 및 유효성을 보장하기 위해 2차원 코드를 생성하기 위한 기술적 해결책이 현재 요구되고 있으며, 이에 따라 2차원 코드의 인식 중에 2차원 코드의 진위를 판단하기 위한 기술 해결책이 또한 요구되고 있음을 알 수 있다.
전술한 정보는 단지 본 개시의 이해를 용이하게 하기 위해 배경 정보로서 제시된 것이다. 전술한 정보 중 임의의 것이 본 개시의 선행 기술로서 적용될 수 있는지 여부에 대해서는 아직 결정되거나 언급되지 않았다.
본 발명의 주요 목적은 전술한 문제점을 해결하기 위해 2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스를 제공하는 것이다.
본 발명의 일 양태는 2차원 코드 생성 방법을 제공하며, 본 방법은, 제1 서버에 의해, 2차원 코드 생성 요청을 전송하는 단계로서, 요청은 2차원 코드를 생성하기 위한 정보를 포함하는, 전송하는 단계; 수신된 2차원 코드 생성 요청에 따라 제2 서버에 의해, 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 단계; 디지털 서명을 포함하는 2차원 코드 정보를 제1 서버로 전송하는 단계; 및 제1 서버에 의해, 2차원 코드 정보를 사용하여 2차원 코드를 생성하는 단계를 포함한다.
본 발명의 일 양태는 2차원 코드 생성 방법을 제공하며, 본 방법은 제1 서버에 의해 실행되며, 2차원 코드 생성 요청을 제2 서버로 전송하는 단계로서, 요청은 2차원 코드를 생성하기 위한 정보를 포함하는, 전송하는 단계; 제2 서버로부터, 제2 서버에 의해 생성된 디지털 서명을 포함하는 2차원 코드 정보를 수신하는 단계; 및 2차원 코드 정보를 사용하여 2차원 코드를 생성하는 단계를 포함한다.
본 발명의 일 양태는 2차원 코드 생성 디바이스를 제공하며, 2차원 코드 생성 요청을 제2 서버로 전송하도록 구성된 전송 유닛으로서, 요청은 2차원 코드를 생성하기 위한 정보를 포함하는, 전송 유닛; 제2 서버로부터, 제2 서버에 의해 생성된 디지털 서명을 포함하는 2차원 코드 정보를 수신하도록 구성된 수신 유닛; 및 2차원 코드 정보를 사용하여 2차원 코드를 생성하도록 구성된 생성 유닛을 포함한다.
본 발명의 일 양태는 2차원 코드 생성 방법을 제공하며, 본 방법은 제2 서버에 의해 실행되며, 2차원 코드 생성 요청을 제1 서버로부터 수신하는 단계로서, 요청은 2차원 코드를 생성하기 위한 정보를 포함하는, 수신하는 단계; 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 단계; 및 디지털 서명을 포함하는 2차원 코드 정보를 제1 서버로 전송하는 단계를 포함한다.
본 발명의 일 양태는 2차원 코드 생성 장치를 제공하며, 본 장치는, 제1 서버로부터 2차원 코드 생성 요청을 수신하도록 구성된 수신 유닛으로서, 요청은 2차원 코드를 생성하기 위한 정보를 포함하는 수신 유닛; 2차원 코드를 생성하기 위한 정보에 디지털 서명하도록 구성된 프로세싱 유닛; 및 디지털 서명을 포함하는 2차원 코드 정보를 제1 서버로 전송하도록 구성된 전송 유닛을 포함한다.
본 발명의 일 양태는 2차원 코드 생성 시스템을 제공한다. 본 시스템은 제1 서버 및 제2 서버를 포함한다. 제1 서버는, 2차원 코드 생성 요청을 2차원 서버로 전송하도록 구성된 전송 유닛으로서, 요청은 2차원 코드를 생성하기 위한 정보를 포함하는, 전송 유닛; 제2 서버로부터, 제1 서버에 의해 생성된 디지털 서명을 포함하는 2차원 코드 정보를 수신하도록 구성된 수신 유닛; 및 2차원 코드 정보를 사용하여 2차원 코드를 생성하도록 구성된 생성 유닛을 포함한다. 제2 서버는, 제1 서버로부터 요청을 수신하도록 구성된 수신 유닛; 2차원 코드를 생성하기 위한 정보에 디지털 서명하도록 구성된 프로세싱 유닛; 및 디지털 서명을 포함하는 2차원 코드 정보를 제1 서버로 전송하도록 구성된 전송 유닛을 포함한다.
본 발명의 다른 양태는 2차원 코드 인식 방법을 제공하며, 2차원 코드를 생성하기 위한 정보에 대해 디지털 서명하는 서버에 대응하는 애플리케이션을 시작하는 단계; 애플리케이션에서 스캐닝 유닛을 사용하여 2차원 코드를 스캐닝하는 단계; 공개 키를 사용하여 스캐닝된 2차원 코드를 검증하는 단계; 및 검증이 성공하면 스캐닝된 2차원 코드에 대응하는 정보를 인식하는 단계를 포함한다.
본 발명의 다른 양태는 2차원 코드 인식 디바이스를 제공하며, 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 서버에 대응하는 애플리케이션을 시작하도록 구성된 시작 유닛; 애플리케이션에서 스캐닝 유닛을 사용하여 2차원 코드를 스캐닝하도록 구성된 스캐닝 유닛; 공개 키를 사용하여 스캐닝된 2차원 코드를 검증하도록 구성된 검증 유닛; 및 검증 유닛에 의해 수행된 검증이 성공하면 스캐닝된 2차원 코드에 대응하는 정보를 인식하도록 구성된 인식 유닛을 포함한다.
종래 기술과 비교하여, 본 발명에 따른 실시예에서, 2차원 코드는 서버와 다른 서버 사이의 상승 효과(synergistic effect)에 의해 생성되어, 2차원 코드의 보안 및 효과성 향상되고, 2차원 코드 인식 프로세스에서, 2차원 코드가 변조되었는지 여부를 인식하는 것이 편리하다. 또한, 본 발명의 다른 실시예에 따르면, 공개 키를 사용하여 특정 애플리케이션을 통해 2차원 코드에 대응하는 정보가 인식되어, 2차원 코드 인식 프로세스에서 진위 판단이 추가되어 2차원 코드가 변조되는(tampered) 것을 방지한다.
본원에 설명되는 첨부 도면은 본 출원의 추가적인 이해를 제공하고 본 출원의 일부를 구성하기 위해 사용된다.
본 출원의 도식적인 실시예 및 그 설명은 본 출원을 예시하기 위해 사용되며, 본 출원에 대한 부적절한 제한을 구성하지는 않는다. 첨부 도면에서:
도 1은 본 발명의 일 실시예에 따른 2차원 코드 생성 방법이 적용되는 시나리오의 도면이다.
도 2는 도 1에 나타내어진 서버(110)와 서버(120) 사이의 상호 작용 프로세스의 개략도이다.
도 3은 본 발명의 일 실시예에 따른 2차원 코드의 인식의 개략도이다.
도 4는 본 발명의 일 실시예에 따른 제1 서버에 의해 실행되는 2차원 코드 생성 방법의 흐름도이다.
도 5는 도 4에 나타내어진 2차원 코드 생성 방법을 실행하는 2차원 코드 생성 디바이스의 블록도이다.
도 6은 본 발명의 일 실시예에 따른 제2 서버에 의해 실행되는 2차원 코드 생성 방법의 흐름도이다.
도 7은 도 6에 나타내어진 2차원 코드 생성 방법을 실행하는 2차원 코드 생성 디바이스의 블록도이다.
도 8은 본 발명의 일 실시예에 따른 2차원 코드 인식 방법의 흐름도이다.
도 9는 본 발명의 일 실시예에 따라 도 8에 나타내어진 2차원 코드 인식 방법을 실행하는 2차원 코드 인식 디바이스의 블록도이다.
도 10은 본 발명의 일 실시예에 따른 전자 디바이스의 블록도이다.
도 11은 본 개시의 구현예에 따라 2D 코드를 생성하기 위한 컴퓨터-구현 방법의 예를 예시하는 흐름도이다.
본 출원의 목적, 기술적 해결책 및 이점을 보다 명확하게 하기 위해, 본 출원의 기술적 해결책이 본 출원의 특정 실시예 및 대응하는 도면을 참조하여 더욱 상세히 설명된다. 명백하게, 설명된 실시예는 본 출원의 모든 실시예가 아닌 단지 일부일 뿐이다. 창의적 노력 없이 본 기술 분야의 통상의 기술자에 의해 도출된 다른 모든 실시예는 본 출원의 보호 범위에 속한다.
이하, 첨부된 도면을 참조하여 실시예를 보다 상세하게 설명한다. 동일한 참조 번호는 언제나 동일한 요소를 나타낸다. 본 발명의 보다 명확한 이해를 위해, 본 발명과 관련된 용어를 이하에 설명한다.
단말/전자 디바이스는 일반적으로 네트워크 시스템에서 사용자에 의해 사용되고 서버와 통신하도록 구성된 장치를 지칭한다. 본 발명의 일 실시예에서 제공되는 2차원 코드 생성 방법은 2차원 코드 생성 디바이스에 의해 실행될 수 있다. 본 발명의 일 실시예에서 제공되는 2차원 코드 인식 방법은 2차원 코드 인식 디바이스에 의해 실행될 수 있다. 2차원 코드 생성 디바이스 및 2차원 코드 인식 디바이스는 각각 단말/전자 디바이스일 수 있다. 본 발명에 따른 단말/전자 디바이스는 디스플레이 유닛을 갖는 다음의 디바이스들 중 임의의 것을 포함할 수 있지만, 이에 제한되지는 않는다: 퍼스널 컴퓨터(PC), (셀룰러 폰, 퍼스널 디지털 어시스턴트(PDA), 디지털 카메라, 휴대용 게임 콘솔, MP3 플레이어, 휴대용/개인용 멀티미디어 플레이어(PMP), 휴대용 전자 책, 태블릿 PC, 휴대용 랩탑 PC 및 글로벌 포지셔닝 시스템(GPS) 내비게이터와 같은) 모바일 장치, 스마트 TV 등.
애플리케이션(앱(app))은 컴퓨터 운영 체제(OS) 또는 모바일 OS 상에서 사용자에 의해 직접 실행될 수 있는 소프트웨어이다. 애플리케이션은 내장형 애플리케이션 또는 단말의 저장 유닛에 저장된 제3자 애플리케이션을 포함할 수 있다. 내장형 애플리케이션은 단말에 사전-설치된 애플리케이션을 지칭한다. 예를 들어, 내장형 애플리케이션은 브라우저, 이-메일 또는 인스턴트 메신저일 수 있다. 제3자 애플리케이션은 다양화되어 있으며 온라인 시장에서 다운로드되어 단말 상에 설치되는, 예를 들어, 결제 애플리케이션, 쇼핑 애플리케이션, 엔터테인먼트 애플리케이션 등과 같은 애플리케이션을 지칭한다.
도 1은 본 발명의 일 실시예에 따른 2차원 코드 생성 방법이 적용되는 시나리오의 도면이다.
도 1에 나타내어진 바와 같이, 서버(110) 및 서버(120)는 유선 또는 무선 방식으로 접속된다. 본 발명의 실시예에서, 무선 접속은 블루투스 및 근거리 통신(NFC)과 같은 일-대-일 무선 접속일 수 있고, 무선 근거리 통신 네트워크(WiFi)가 또한 보안 보장 시나리오에서 사용될 수 있음을 이해해야 한다.
서버(110)는 2차원 코드를 생성하기 위한 서버이다. 예를 들어, 서버(110)는 애플리케이션 서버, 웹사이트 서버 등일 수 있다. 예를 들어, 서버(110)가 결제 애플리케이션 서버인 경우, 애플리케이션 서버(110)는 사용자 입력에 응답하여 상품에 대한 2차원 코드를 생성할 수 있다. 대안적으로, 서버(110)가 웹사이트 서버인 경우, 요구에 따라 서버(110)에 의해 생성된 다양한 2차원 코드가 디스플레이 상에 표시될 수 있다. 서버(120)는 (Alipay™ 서버와 같은) 허가된 인증(authorized certification)을 가진 제3자 서버이다.
서버(110) 및 서버(120)는 모두 컴퓨팅 서비스를 제공하는 전자 디바이스이며, 서버 요청에 응답하고 프로세싱을 수행할 수 있음에 유의해야 한다. 또한, 2개의 서버의 아키텍처는 범용 컴퓨터의 아키텍처와 유사하다. 본 발명에서 서버(110)와 서버(120)는 상이한 서비스를 제공한다.
도 1을 참조하면, 서버(110)와 서버(120)는 상호 작용 프로세스를 수행한 후, 서버(110)는 서버(120)에 의해 제공된 정보에 따라 2차원 코드를 생성한다. 이는 도 2를 참조하여 아래에 상세하게 설명될 것이므로 여기에서는 설명하지 않는다.
다음으로, 서버(110)는 2차원 코드를 디스플레이 상에 표시할 수 있거나, (프린터와 같은) 출력 디바이스를 사용하여 2차원 코드를 직접 출력한다. 그리고, 사용자는 모바일 단말의 스캐닝 유닛을 사용하여 2차원 코드를 스캐닝할 수 있다.
서버(110)와 서버(120) 사이의 상호 작용 프로세스가 도 2를 참조하여 아래에서 상세히 설명될 것이다.
도 2에 나타내어진 바와 같이, 단계 210에서, 서버(110)는 2차원 코드 생성 요청을 서버(120)에 전송한다. 요청은 2차원 코드를 생성하기 위한 정보(간략히 2차원 코드 정보로 칭해짐)를 포함할 수 있다. 예를 들어, 2차원 코드 정보는 수취인 계정 정보를 포함할 수 있거나, 2차원 코드 정보는 웹사이트 정보를 포함할 수 있다.
선택적으로, 단계 210을 수행하기 전에, 서버(110)는 사전에 서버(120)에 등록 요청을 전송한다. 등록 요청은 현재 등록과 관련된 모든 정보를 포함할 수 있다. 예를 들어, 서버(110)는 다양한 자격 증명, 예를 들어, 비즈니스 인증서, 상품 상세 사항 등을 서버(120)에 제공할 수 있다. 다음으로, 서버(110)에 의해 제공된 정보를 성공적으로 검증한 후, 서버(120)는 서버(110)의 등록을 완료한다. 또한, 서버(110)에 의해 제공된 자격 증명은 서버(120)의 메모리에 저장된다. 선택적으로, 자격 증명은 원격 메모리에 저장될 수 있다. 이러한 방식으로, 호출이 필요할 때, 자격 증명은 원격 메모리의 주소를 사용하여 호출된다.
이러한 방식으로, 서버(110)가 2차원 코드 생성 요청을 서버(120)에 전송한 후, 서버(120)는 서버(110)가 서버(120)에 등록되었는지 여부를 결정하기 위해 서버(110)에 대한 검증을 수행한다. 등록되지 않았다면, 서버(120)는 후속 서비스를 제공하지 않으며 서버(110)에 등록을 수행하도록 상기시킨다. 구체적으로, 서버(120)는 서버(110)의 2차원 코드 생성 요청을 거부할 수 있고 서버(110)에 등록 초대(registration invitation)를 전송한다. 서버(110)가 서버(120)에 이미 등록되어 있다면, 후속 단계가 수행된다.
전술한 등록 단계를 통해, 서버(120)는 검증을 통과한 모든 디바이스에 대해 서비스를 제공함으로써, 서버(120)에 의해 상승적으로 생성된 2차원 코드의 유효성을 보장하고, 서버(110)의 판매자와 가능한 분쟁에서 사용하기 위한 증거를 보존할 수 있다.
단계 220에서, 서버(120)는 비대칭 암호화 알고리즘에 기초하여 2차원 코드 정보에 디지털 서명할 수 있다. 구체적으로, 서버(120)는 비대칭 암호화 알고리즘에 기초하고 (서버(120)에 저장되어 있는) 사전-생성된 개인 키를 사용하여 단계 210에서 2차원 코드 생성 요청에서 2차원 코드 정보에 디지털 서명할 수 있다. 이러한 방식으로, 2차원 코드 인식 프로세스에서, 공개 키를 사용하여 2차원 코드가 성공적으로 스캐닝되면, 이는 2차원 코드가 서버(120)를 사용하여 서버(110)에 의해 생성된 2차원 코드임을 나타낸다. 스캐닝이 실패하면, 이는 2차원 코드가 아마도 위조 2차원 코드이거나 단지 서버(110)에 의해서 생성되었지만 서버(120)를 사용하여 프로세싱되지 않는 2차원 코드임을 나타낸다.
서버(120)는 상이한 2차원 코드 정보에 따라 상이한 디지털 서명을 생성한다는 점에 유의해야 한다. 즉, 서버(120)는 상이한 2차원 코드 정보에 따라 상이한 개인 키를 제공할 수 있으며, 그 후 각각의 개인 키를 사용하여 상이한 2차원 코드 정보에 디지털 서명할 수 있다. 따라서, 동일한 웹사이트에 의해 전송된 상이한 상품에 대한 상이한 링크 정보에 있어서도, 상이한 개인 키를 사용하여 상이한 링크 정보에 대해 디지털 서명이 만들어진다.
전술한 비대칭 암호화 알고리즘은 공개 키 암호화 알고리즘으로 지칭될 수 있다. 이 알고리즘에서, 데이터는 공개 키를 사용하여 암호화되며, 대응하는 개인 키를 사용해야만 복호화될 수 있다. 대안적으로, 개인 키를 사용하여 데이터가 암호화되고, 대응하는 공개 키를 사용하여 복호화된다. 예시적인 실시예에 따르면, 비대칭 암호화 알고리즘은 RSA 공개 키 암호화 알고리즘, 엘가말(Elgamal) 암호화 알고리즘, 배낭(knapsack) 알고리즘 및 타원 곡선 암호(ECC) 암호화 알고리즘을 포함할 수 있다. 본 발명의 목적은 2차원 코드의 진위 및 유효성을 보장하기 위한 것이며, 바람직하게는 생성된 트랜잭션 데이터를 암호화하는 데에 RSA 공개 키 암호화 알고리즘이 선택될 수 있다.
비대칭 암호화 알고리즘을 사용하여 데이터에 디지털 서명하는 것은 이 분야의 일반적인 기술적 수단이므로, 그 상세한 설명은 본원에서 생략한다. 비대칭 암호화 알고리즘의 예가 위에서 제공되었지만, 본 기술 분야의 통상의 기술자는 디지털 서명을 생성할 수 있는 모든 비대칭 암호화 알고리즘이 여기에 적용될 수 있음에 유의해야 한다.
다음으로, 단계 230에서, 서버(120)는 디지털 서명을 포함하는 2차원 코드 정보를 서버(110)로 전송한다. 디지털 서명을 포함하는 2차원 코드 정보를 수신한 후, 단계 240에서, 서버(110)는 디지털 서명을 포함하는 2차원 코드 정보를 사용하여 2차원 코드를 생성한다. 구체적으로, 2차원 코드는 2차원 코드 생성 알고리즘에 기초하고 2차원 코드 정보뿐 아니라 디지털 서명을 사용하여 생성될 수 있다. 바람직하게는, 2차원 코드 생성 알고리즘은 QR(Quickresponse) 코드 알고리즘을 포함한다.
2차원 코드 생성 알고리즘을 사용하여 2차원 코드를 생성하는 것이 이 분야의 일반적인 기술 수단이므로, 그 상세한 설명은 본원에서 생략한다. 본 기술 분야의 통상의 기술자는 2차원 코드를 생성할 수 있는 모든 2차원 코드 생성 알고리즘이 여기에 적용될 수 있음을 이해해야 한다.
다음으로, 2차원 코드에 대한 검증의 개략도가 도 3을 참조하여 아래에서 상세하게 설명될 것이다.
도 3에 나타내어진 바와 같이, 사용자는 모바일 단말을 사용하여 디스플레이 상에 표시되는 전자 2차원 코드 또는 출력 디바이스에 의해 출력된 2차원 코드를 검증할 수 있다.
사용자는 서버(120)에 대응하는 애플리케이션을 시작할 수 있다. 예를 들어, 사용자는 모바일 단말에서 Alipay™ 서버에 대응하는 Alipay™ 애플리케이션을 시작할 수 있다. 후속하여, 사용자는 애플리케이션에서 스캐닝 유닛을 사용하여 디스플레이 상에 표시된 2차원 코드 또는 인쇄된 2차원 코드를 스캐닝한다.
2차원 코드 인식 프로세스에서, 서버(120)에 대응하는 애플리케이션이 2차원 코드에 대응하는 공개 키를 포함하거나 획득할 수 있기 때문에, 사용자는 서버(120)에 대응하는 애플리케이션에서 스캐닝 유닛을 사용해야 한다는 것에 유의해야 한다.
선택적으로, 애플리케이션에서 스캐닝 유닛을 사용하여 2차원 코드가 스캐닝된 후, 공개 키는 서버(120) 또는 공개 키를 저장하는 원격 저장 디바이스로부터 획득될 수 있다. 후속적으로, 공개 키를 사용하여 스캐닝된 2차원 코드에 대해 검증이 수행된다. 검증이 성공하면, 다음 동작을 수행하기 위해 2차원 코드가 성공적으로 인식될 수 있다. 즉, 2차원 코드의 인식 결과에 따라 2차원 코드에 대응하는 동작 인터페이스가 모바일 단말의 디스플레이 인터페이스 상에 표시될 수 있다. 예를 들어, 2차원 코드의 인식 결과가 Alipay™에 대한 링크인 경우, 모바일 단말은 Alipay™ 애플리케이션을 호출함으로써 Alipay™에 대한 동작 인터페이스를 디스플레이 유닛 상에 표시한다. 2차원 코드의 인식 결과가 WeChat에 대한 링크인 경우, 모바일 단말은 WeChat 애플리케이션을 호출함으로써 WeChat에 대한 동작 인터페이스를 디스플레이 유닛 상에 표시한다. 2차원 코드의 인식 결과가 웹사이트에 대한 링크인 경우, 모바일 단말은 브라우저 애플리케이션을 호출함으로써 브라우저에 대한 동작 인터페이스를 디스플레이 유닛 상에 표시한다.
검증이 실패하면, 2차원 코드가 변조되었음을 나타낸다. 또한, 이러한 경우도 가능하다: 2차원 코드를 변조하는 조작자가 또한 서버(120)에 등록되고, 원래의 2차원 코드를 변조하기 위한 2차원 코드가 또한 서버(120)에 의해 상승적으로 생성된다. 예를 들어, 판매자 B는 판매자 A에 의해 외부에 게시된 2차원 코드를 해체하고 자신의 2차원 코드를 게시한다. 이 경우, 서버(120)에 대응하는 애플리케이션에서 스캐닝 유닛을 사용함으로써 판매자 B의 2차원 코드가 성공적으로 인식될 수 있다. 이 문제를 해결하기 위해, 전술한 스캐닝 프로세스가 기록될 수 있다. 이러한 방식으로, 2차원 코드를 변조하는 조작자는 스캐닝 기록에 따라 결정될 수 있고, 조작자의 아이덴티티가 등록 중에 조작자에 의해 제공된 정보에 따라 결정될 수 있다.
도 4는 본 발명의 일 실시예에 따른 제1 서버에 의해 실행되는 2차원 코드 생성 방법의 흐름도이다.
단계 S410에서, 2차원 코드 생성 요청이 제2 서버로 전송되며, 이 요청은 2차원 코드를 생성하기 위한 정보를 포함한다.
단계 S420에서, 제2 서버에 의해 생성된 디지털 서명을 포함하는 2차원 코드 정보가 제2 서버로부터 수신된다.
단계 S430에서, 2차원 코드가 2차원 코드 정보를 사용하여 생성된다.
대안적인 실시예에서, 2차원 코드 생성 요청을 제2 서버로 전송하는 단계 전에, 본 방법은 등록 요청을 제2 서버로 전송하는 단계를 더 포함하며, 등록 요청은 현재 등록과 관련된 모든 정보를 포함한다.
도 5는 도 4에 나타내어진 2차원 코드 생성 방법을 실행하는 2차원 코드 생성 디바이스(즉, 제1 서버)의 블록도이다.
본 기술 분야의 통상의 기술자는 도 5에 나타내어진 2차원 코드 생성 디바이스의 구조가 본 발명의 전자 디바이스를 제한하지 않음을 이해할 수 있다. 전자 디바이스는 도면에 나타내어진 것보다 많거나 적은 컴포넌트를 포함할 수 있거나, 일부 컴포넌트가 결합되거나, 상이한 컴포넌트 레이아웃이 채용될 수 있다.
도 5에 나타내어진 바와 같이. 2차원 코드 생성 디바이스는 전송 유닛(510), 수신 유닛(520) 및 생성 유닛(530)을 포함할 수 있다.
전송 유닛(510)은 2차원 코드 생성 요청을 제2 서버로 전송하도록 구성될 수 있으며, 이 요청은 2차원 코드를 생성하기 위한 정보를 포함한다.
수신 유닛(520)은 제2 서버로부터, 제2 서버에 의해 생성된 디지털 서명을 포함하는 2차원 코드 정보를 수신하도록 구성될 수 있다.
생성 유닛(530)은 2차원 코드 정보를 사용하여 2차원 코드를 생성하도록 구성될 수 있다.
대안적인 실시예에서, 전송 유닛(510)은 2차원 코드 생성 요청을 제1 서버로 전송하기 전에 등록 요청을 제1 서버로 전송하도록 구성되며, 등록 요청은 현재 등록과 관련된 모든 정보를 포함한다.
도 6은 본 발명의 일 실시예에 따라 제2 서버에 의해 실행되는 2차원 코드 생성 방법의 흐름도이다.
단계 S610에서, 2차원 코드 생성 요청이 제1 서버로부터 수신되고, 이 요청은 2차원 코드를 생성하기 위한 정보를 포함한다.
단계 S620에서, 2차원 코드를 생성하기 위한 정보에 디지털 서명된다.
단계 S630에서, 디지털 서명을 포함하는 2차원 코드 정보가 제1 서버로 전송된다.
선택적인 실시예에서, 제1 서버로부터 2차원 코드 생성 요청을 수신하는 단계 전에, 본 방법은, 등록 요청을 제1 서버로부터 수신하는 단계를 더 포함하며, 등록 요청은 현재 등록과 관련된 모든 정보를 포함한다. 또한, 제1 서버로부터 등록 요청을 수신하는 단계 후에, 2차원 코드 생성 방법은, 등록 요청에 따라 제1 서버의 등록을 완료하는 단계를 더 포함할 수 있다.
도 7은 도 6에 나타내어진 2차원 코드 생성 방법을 실행하는 2차원 코드 생성 디바이스(즉, 제2 서버)의 블록도이다.
본 기술 분야의 통상의 기술자는 도 7에 나타내어진 2차원 코드 생성 디바이스의 구조가 본 발명의 전자 디바이스를 제한하지 않음을 이해할 수 있다. 전자 디바이스는 도면에 나타내어진 것보다 많거나 적은 컴포넌트를 포함할 수 있거나, 일부 컴포넌트가 결합되거나, 상이한 컴포넌트 레이아웃이 채용될 수 있다.
2차원 코드 생성 디바이스는 수신 유닛(710), 프로세싱 유닛(720) 및 전송 유닛(730)을 포함할 수 있다.
수신 유닛(710)은 제1 서버로부터 2차원 코드 생성 요청을 수신하도록 구성되며, 이 요청은 2차원 코드 생성을 위한 정보를 포함한다. 대안적인 실시예에서, 수신 유닛은 등록 요청을 제1 서버로부터 수신하도록 또한 구성되며, 등록 요청은 현재 등록에 관한 모든 정보를 포함한다.
대안적인 실시예에서, 2차원 코드 생성 디바이스는 등록 유닛을 포함할 수 있고, 등록 유닛은 등록 요청에 따라 제1 서버의 등록을 완료하도록 구성된다.
프로세싱 유닛(720)은 2차원 코드를 생성하기 위한 정보에 디지털 서명하도록 구성된다. 선택적으로, 프로세싱 유닛(720)은 비대칭 암호화 알고리즘에 기초하여 그리고 개인 키를 사용하여 2차원 코드를 생성하기 위한 정보에 디지털 서명하도록 구성될 수 있다.
전송 유닛(730)은 디지털 서명을 포함하는 2차원 코드 정보를 제1 서버로 전송하도록 구성된다.
대안적인 실시예에서, 2차원 코드 생성 디바이스는 결정 유닛을 더 포함한다. 결정 유닛은 제1 서버가 제2 서버에 등록되어 있는지 여부를 결정하도록 구성된다. 등록되어 있다면, 2차원 코드를 생성하기 위한 정보에 대한 수신된 2차원 코드 생성 요청에 따라 디지털 서명된다. 등록되어 있지 않다면, 2차원 코드를 생성하기 위한 정보에 디지털 서명되지 않고, 등록 초대가 제1 서버로 전송된다.
대안적인 실시예에서, 2차원 코드를 생성하기 위한 상이한 정보에 따라, 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 단계에서 상이한 개인 키가 사용된다.
다른 예시적인 실시예에서, 2차원 코드 생성 시스템이 제공될 수 있다. 이 시스템은 도 5에 나타내어진 2차원 코드 생성 디바이스 및 도 7에 나타내어진 2차원 코드 생성 디바이스를 포함한다.
전술한 바와 같이, 본 발명의 실시예에서 제공되는 2차원 코드 생성 방법 및 디바이스에 따르면, 서버와 다른 서버 간의 상승 효과에 의해 2차원 코드가 생성되어, 2차원 코드의 보안 및 효과성이 향상되고, 2차원 코드 인식 프로세스에서, 2차원 코드가 변조되었는지 여부를 인식하는 것이 편리하다.
도 8은 본 발명의 일 실시예에 따른 2차원 코드 인식 방법의 흐름도이다.
단계 S810에서, 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 서버에 대응하는 애플리케이션이 시작된다.
단계 S820에서, 2차원 코드는 애플리케이션에서 스캐닝 유닛을 사용하여 스캐닝된다.
단계 S830에서, 스캐닝된 2차원 코드는 공개 키를 사용하여 검증된다.
단계 S840에서, 검증이 성공하면 스캐닝된 2차원 코드에 대응하는 정보가 인식된다.
대안적인 실시예에서, 공개 키는 서버 또는 원격 저장 디바이스로부터 획득된다. 또한, 본 방법은 검증 단계에서 관련 정보를 저장하는 단계를 더 포함할 수 있다.
도 9는 본 발명의 일 실시예에 따라 도 8에 나타내어진 2차원 코드 인식 방법을 실행하는 2차원 코드 인식 디바이스의 블록도이다.
본 기술 분야의 통상의 기술자는 도 9에 나타내어진 2차원 코드 인식 디바이스의 구조가 본 발명의 전자 디바이스를 제한하지 않음을 이해할 수 있다. 전자 디바이스는 도면에 나타내어진 것보다 많거나 적은 컴포넌트를 포함할 수 있거나, 일부 컴포넌트가 결합되거나, 상이한 컴포넌트 레이아웃이 채용될 수 있다.
2차원 코드 인식 디바이스는 시작 유닛(910), 스캐닝 유닛(920), 검증 유닛(930) 및 인식 유닛(940)을 포함할 수 있다.
시작 유닛(910)은 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 서버에 대응하는 애플리케이션을 시작하도록 구성될 수 있다.
스캐닝 유닛(920)은 애플리케이션에서 스캐닝 유닛을 사용하여 2차원 코드를 스캐닝하도록 구성될 수 있다.
검증 유닛(930)은 공개 키를 사용하여 스캐닝된 2차원 코드를 검증하도록 구성될 수 있다.
인식 유닛(940)은 검증에 의해 수행된 검증이 성공하면 스캐닝된 2차원 코드에 대응하는 정보를 인식하도록 구성될 수 있다.
대안적인 실시예에서, 공개 키는 서버 또는 원격 저장 디바이스로부터 획득된다.
대안적인 실시예에서, 2차원 코드 인식 디바이스는 저장 유닛을 더 포함하고, 저장 유닛은 검증 단계에서 관련 정보를 저장하도록 구성된다.
도 10은 본 발명의 일 실시예에 따른 2차원 코드 생성 방법 또는 2차원 코드 인식 방법을 수행하는 전자 디바이스의 블록도이다. 도 10을 참조하면, 전자 디바이스는 하드웨어 레벨에서 프로세서, 내부 버스, 네트워크 인터페이스, 메모리 및 비휘발성 저장소를 포함한다. 확실히, 전자 디바이스는 서비스에 필요한 다른 하드웨어를 더 포함할 수 있다. 프로세서는 비휘발성 저장소로부터 메모리로 대응하는 컴퓨터 프로그램을 판독하고 컴퓨터 프로그램을 실행하여 로직 레벨에서 웹페이지 스크린샷 장치를 형성한다. 명백히, 소프트웨어 구현에 추가하여, 본 출원은 로직 디바이스 또는 소프트웨어 및 하드웨어 결합 방식과 같은 다른 구현예를 배제하지 않는다. 즉, 이하의 프로세싱 절차는 다양한 로직 유닛에 의해 실행되는 것으로 제한되지 않고, 하드웨어 또는 로직 디바이스에 의해 실행될 수도 있다.
본 발명의 실시예에 따라 제공되는 2차원 코드 인식 방법 및 디바이스는 공개 키를 사용하여 2차원 코드에 대응하는 정보를 특정 애플리케이션을 통해 인식하여, 2차원 코드 인식 프로세스에 진위 판단을 추가하고, 2차원 코드가 변조되는 것을 방지한다.
1990년대에, 기술 개선은 하드웨어 개선(예를 들어, 다이오드, 트랜지스터 및 스위치와 같은 회로 구조의 개선) 또는 소프트웨어 개선(방법 절차의 개선)으로서 명확하게 구분될 수 있다. 그러나 기술의 발전에 따라, 현재 많은 방법 절차의 개선은 하드웨어 회로 구조에 대한 직접적인 개선으로 간주될 수 있다. 거의 모든 설계자는 개선된 방법 절차를 하드웨어 회로에 프로그래밍하여 대응하는 하드웨어 회로 구조를 획득한다. 따라서, 하드웨어 엔티티 모듈을 사용하여 방법 절차의 개선이 구현될 수 없다고 가정하는 것은 부적절하다. 예를 들어, 프로그래머블 로직 디바이스(PLC)(예를 들어, 필드 프로그래머블 게이트 어레이(FPGA))는 로직 기능이 사용자에 의해 프로그래밍된 디바이스에 의해 결정되는 집적 회로이다. 설계자는 칩 제조업체에 전용 집적 회로 칩을 설계 및 제조할 것을 요청할 필요 없이, 디지털 시스템을 PLD의 단편에 "통합"하도록 스스로 프로그래밍한다. 또한, 현재 프로그래밍은 집적 회로 칩을 수동으로 제조하는 대신, "로직 컴파일러" 소프트웨어를 사용하여 대부분 구현된다. 로직 컴파일러 소프트웨어는 프로그램을 개발하고 작성하는 데 사용되는 소프트웨어 컴파일러와 유사하며, 컴파일링 전의 원본 코드는 하드웨어 기술 언어(HDL: Hardware Description Language)로 칭해지는 특정 프로그래밍 언어를 사용하여 또한 작성될 필요가 있다. 어드밴스드 불리언 표현 언어(ABEL: Advanced Boolean Expression Language), 알테라 하드웨어 기술 언어(AHDL: Altera Hardware Description Language), 컨플루언스(Confluence), 코넬 유니버시티 프로그래밍 언어(CUPL: Cornell University Programming Language), HDCal, 자바 하드웨어 기술 언어(JHDL: Java Hardware Description Language), Lava, Lola, My HDL, PALASM 및 루비 하드웨어 기술 언어(RHDL: Ruby Hardware Description Language)와 같은 많은 유형의 HDL이 있으며, 이 중 현재 초고속 집적 회로 하드웨어 기술 언어(VHDL: High-Speed-Integrated Circuit Hardware Description Language) 및 Verilog가 가장 일반적으로 사용된다. 본 기술 분야의 통상의 기술자는 또한 로직 방법 절차를 구현하기 위한 하드웨어 회로가 전술한 몇몇 하드웨어 기술 언어를 사용하여 방법 절차를 약간 논리적으로 프로그래밍하고 이를 집적 회로로 프로그래밍함으로써 용이하게 획득될 수 있음을 알아야 한다.
컨트롤러는 임의의 적절한 방식으로 구현될 수 있다. 예를 들어, 컨트롤러는, 예를 들어, 마이크로프로세서 또는 프로세서 및 (마이크로) 프로세서, 로직 게이트, 스위치, 애플리케이션 특정 집적 회로(ASIC: Application Specific Integrated Circuit), 프로그래머블 로직 컨트롤러 및 내장형 마이크로-컨트롤러에 의해 실행 가능한 컴퓨터 판독 가능 프로그램 코드(예를 들어, 소프트웨어 또는 펌웨어)를 저장하는 컴퓨터 판독 가능 매체의 형태일 수 있다. 컨트롤러의 예는 ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 및 Silicone Labs C8051F320과 같은 마이크로-컨트롤러를 포함하지만 이에 제한되지는 않는다. 메모리 컨트롤러는 또한 메모리의 제어 논리의 일부로서 구현될 수 있다. 본 기술 분야의 통상의 기술자는 또한 순수한 컴퓨터 판독 가능 프로그램 코드를 사용하여 컨트롤러가 구현될 수 있고, 또한 방법의 단계가 컨트롤러로 하여금 스위치, 애플리케이션 특정 집적 회로, 프로그래머블 로직 컨트롤러, 내장형 마이크로컨트롤러 등의 형태로 동일한 기능을 구현할 수 있도록 논리적으로 프로그래밍될 수 있음을 알 것이다. 따라서, 이러한 유형의 컨트롤러는 하드웨어 컴포넌트로 간주될 수 있고, 다양한 기능을 구현하기 위해 그 내부에 포함된 장치는 하드웨어 컴포넌트 내부의 구조로 또한 간주될 수 있다. 또는, 다양한 기능을 구현하기 위해 사용되는 장치는 방법을 구현하기 위한 모듈 및 하드웨어 컴포넌트 내부의 구조 모두로서 고려될 수도 있다.
전술한 실시예에 예시된 시스템, 디바이스, 모듈 또는 유닛은 특정 기능을 갖는 컴퓨터 칩 또는 엔티티 또는 제품을 사용하여 구체적으로 구현될 수 있다. 통상적인 구현 디바이스는 컴퓨터이다. 구체적으로, 컴퓨터는 예를 들어, 개인용 컴퓨터, 랩탑 컴퓨터, 셀룰러 폰, 카메라 폰, 스마트 폰, 퍼스널 디지털 어시스턴트, 미디어 플레이어, 내비게이션 디바이스, 이메일 디바이스, 게임 콘솔, 태블릿 컴퓨터, 웨어러블 디바이스 또는 이들 디바이스의 임의의 조합일 수 있다.
설명의 편의를 위해, 장치가 설명될 때, 각각의 설명에 대한 기능의 관점에서 다양한 유닛으로 분할된다. 확실히, 본 출원이 구현될 때, 유닛의 기능은 동일한 또는 복수의 단편의 소프트웨어 및/또는 하드웨어로 구현될 수 있다.
본 기술 분야의 통상의 기술자는 본 발명의 실시예가 방법, 시스템 또는 컴퓨터 프로그램 제품으로 제공될 수 있음을 이해해야 한다. 따라서, 본 발명은 완전한 하드웨어 실시예, 완전한 소프트웨어 실시예, 또는 소프트웨어와 하드웨어를 결합한 실시예로서 구현될 수 있다. 또한, 본 발명은 컴퓨터 사용 가능 프로그램 코드를 포함하는 (자기 디스크 메모리, CD-ROM, 광 메모리 등을 포함하지만 이에 제한되지는 않는) 하나 이상의 컴퓨터 사용 가능 저장 매체 상에 구현된 컴퓨터 프로그램 제품일 수 있다.
본 출원은 본 발명의 실시예에 따른 방법, 디바이스(시스템) 및 컴퓨터 프로그램 제품에 따른 흐름도 및/또는 블록도를 참조하여 설명된다. 컴퓨터 프로그램 명령어는 흐름도 및/또는 블록도에서 각각의 프로세스 및/또는 블록 및 흐름도 및/또는 블록도에서 프로세스 및/또는 블록의 조합을 구현하기 위해 사용될 수 있음을 이해해야 한다. 이들 컴퓨터 프로그램 명령어는 범용 컴퓨터, 특수-목적 컴퓨터, 내장형 프로세서 또는 기계를 생성하기 위한 임의의 다른 프로그래머블 데이터 프로세싱 디바이스의 프로세서에 제공되어, 컴퓨터 또는 임의의 다른 프로그래머블 데이터 프로세싱 디바이스의 프로세서에 의해 실행되는 명령어는 흐름도에서 하나 이상의 프로세스 및/또는 블록도에서 하나 이상의 블록에서 특정 기능을 구현하기 위한 장치를 생성한다.
이들 컴퓨터 프로그램 명령어는 또한 컴퓨터 판독 가능 메모리에 저장된 명령어가 명령 장치를 포함하는 아티팩트를 생성하도록, 컴퓨터 또는 임의의 다른 프로그래머블 데이터 프로세싱 디바이스가 특정 방식으로 작동하도록 명령할 수 있는 컴퓨터 판독 가능 메모리에 저장될 수 있다. 명령 장치는 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서 특정 기능을 구현한다.
이들 컴퓨터 프로그램 명령어는 또한 컴퓨터 또는 다른 프로그래머블 데이터 프로세싱 디바이스 상에 로딩될 수 있어, 일련의 동작 단계가 컴퓨터 또는 다른 프로그래머블 디바이스 상에서 수행되어 컴퓨터-구현 프로세싱을 생성한다. 따라서, 컴퓨터 또는 다른 프로그래머블 디바이스 상에서 실행되는 명령어는 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서 특정 기능을 구현하기 위한 단계를 제공한다.
통상적인 구성에서, 연산 디바이스는 하나 이상의 중앙 처리 장치(CPU), 입력/출력 인터페이스, 네트워크 인터페이스 및 메모리를 포함한다.
메모리는 휘발성 메모리, 랜덤 액세스 메모리(RAM) 및/또는 비휘발성 메모리, 예를 들어, 판독-전용 메모리(ROM) 또는 플래시 RAM과 같은 컴퓨터 판독 가능 매체를 포함할 수 있다. 메모리는 컴퓨터 판독 가능 매체의 일례이다.
컴퓨터 판독 가능 매체는 비휘발성 및 휘발성 매체뿐만 아니라 이동식 및 비이동식 매체를 포함하고, 임의의 방법 또는 기술에 의해 정보 저장을 구현할 수 있다. 정보는 컴퓨터 판독 가능 명령어, 데이터 구조 및 프로그램 또는 다른 데이터일 수 있다. 컴퓨터의 저장 매체는 예를 들어, 상변화 메모리(PRAM), 정적 랜덤 액세스 메모리(SRAM), 동적 랜덤 액세스 메모리(DRAM), 다른 유형의 RAM, ROM, 전자적으로 소거 가능한 프로그래머블 판독-전용 메모리(EEPROM: electrically erasable programmable read-only memory), 플래시 메모리 또는 다른 메모리 기술, 컴팩트 디스크 판독-전용 메모리(CD-ROM: compact disk read-only memory), 디지털 버서타일 디스크(DVD: digital versatile disc) 또는 다른 광 저장소, 카세트 테이프, 자기 테이프/자기 디스크 저장소 또는 다른 자기 저장 디바이스, 또는 임의의 다른 비전송 매체를 포함하지만 이에 제한되지 않으며, 컴퓨팅 디바이스에 의해 액세스되는 정보를 저장하는 데 사용될 수 있다. 이 텍스트의 정의에 따르면, 컴퓨터 판독 가능 매체는 변조된 데이터 신호 및 반송파와 같은 일시적 매체를 포함하지 않는다.
"포함하다(include)", "포괄하다(comprise)" 또는 이의 다른 변형은 비배타적인 포함을 포괄하도록 의도되어, 일련의 요소를 포함하는 프로세스, 방법, 상품 또는 디바이스는 그 요소를 포함할 뿐만 아니라 명확하게 열거되지 않은 다른 요소도 포함하거나, 프로세스, 방법, 상품 또는 디바이스의 고유 요소를 더 포함한다는 것에 또한 유의해야 한다. 더 이상의 제한이 없는 경우, "포함하는(including a/an)..."에 의해 정의된 요소는, 그 요소를 포함하는 프로세스, 방법, 상품 또는 디바이스가 다른 동일한 요소를 더 갖는 것을 배제하지 않는다.
본 기술 분야의 통상의 기술자는 본 출원의 실시예가 방법, 시스템 또는 컴퓨터 프로그램 제품으로 제공될 수 있음을 이해해야 한다. 따라서, 본 출원은 완전한 하드웨어 실시예, 완전한 소프트웨어 실시예, 또는 소프트웨어와 하드웨어를 결합한 실시예로서 구현될 수 있다. 또한, 본 출원은 컴퓨터 사용 가능 프로그램 코드를 포함하는 하나 이상의 컴퓨터 사용 가능 저장 매체(자기 디스크 메모리, CD-ROM, 광 메모리 등을 포함하지만 이에 제한되지 않음) 상에 구현된 컴퓨터 프로그램 제품의 형태일 수 있다.
본 출원은 컴퓨터, 예를 들어, 프로그램 모듈에 의해 실행되는 컴퓨터 실행 가능 명령어의 일반적인 맥락에서 설명될 수 있다. 일반적으로, 프로그램 모듈은 특정 작업을 실행하거나 특정 추상 데이터 유형을 구현하는 데 사용되는 루틴, 프로그램, 객체, 어셈블리, 데이터 구조 등을 포함한다. 본 출원은 또한 분산 컴퓨팅 환경에서 구현될 수 있고, 분산 컴퓨터 환경에서, 작업은 통신 네트워크를 통해 접속된 원격 프로세싱 디바이스를 사용하여 실행된다. 분산 컴퓨터 환경에서, 프로그램 모듈은 저장 디바이스를 포함하는 로컬 및 원격 컴퓨터 저장 매체에 위치될 수 있다.
본 명세서의 실시예는 점진적으로 설명되고, 실시예의 동일하거나 유사한 부분은 서로를 참조하여 얻어질 수 있으며, 각각의 실시예는 다른 실시예와 상이한 부분을 강조한다. 특히, 시스템 실시예는 기본적으로 방법 실시예와 유사하므로, 간단하게 설명되며, 관련 부분에 대해서는 방법 실시예의 부분의 설명을 참조할 수 있다.
전술한 설명은 본 출원의 실시예일 뿐이며, 본 출원을 제한하려고 의도된 것이 아니다. 본 기술 분야의 통상의 기술자에게 본 출원은 다양한 수정 및 변형을 가질 수 있다. 본 출원의 사상 및 원리를 벗어나지 않고 이루어진 임의의 수정, 동등한 교체, 개선 등은 모두 본 출원의 청구항의 범위 내에 속해야 한다.
도 11은 본 개시의 구현예에 따른, 2D 코드를 생성하기 위한 컴퓨터-구현 방법(1100)의 예를 예시하는 흐름도이다. 명확하게 표현하기 위해, 후술하는 설명은 일반적으로 이 설명의 다른 도면들과 관련하여 방법(1100)을 설명한다. 그러나, 방법(1100)은 예를 들어, 임의의 시스템, 환경, 소프트웨어 및 하드웨어, 또는 시스템, 환경, 소프트웨어 및 하드웨어의 조합에 의해 수행될 수 있다는 것이 이해될 것이다. 일부 구현예에서, 방법(1100)의 다양한 단계는 병렬로, 조합하여, 루프로 또는 임의의 순서로 실행될 수 있다. 방법(1100)은 전술한 제2 서버와 같은, 디지털 서명을 포함하는 2D 코드 암호화 정보를 제공하는 서버에 의해 수행될 수 있다.
1102에서, 제1 서버를 인증 및 등록하기 위한 제1 서버로부터의 등록 정보가 수신된다. 등록 요청은 서버 등록과 관련된 정보를 포함할 수 있다. 예를 들어, 서버는 비즈니스 인증서 또는 상품 상세 사항과 같은 다양한 자격 인증을 제공할 수 있다. 자격 인증이 검증된 후 서버가 등록될 수 있다. 1102로부터, 방법(1100)은 1104로 진행한다.
1104에서, 등록 정보가 인증되면 제1 서버가 등록된다. 1104로부터, 방법(1100)은 1106으로 진행한다.
1106에서, 등록 정보가 저장된다. 서버에 의해 제공된 자격 인증을 포함하는 등록 정보는 로컬 메모리 또는 원격 메모리에 저장될 수 있다. 이와 같이, 자격 인증은 장래의 참조를 위해 찾을 수 있다. 1106으로부터, 방법(1100)은 1108로 진행한다.
1108에서, 2D 코드를 생성하기 위한 제1 서버로부터의 요청이 수신되며, 이 요청은 2D 코드로 인코딩될 정보를 포함한다. 2D 코드를 사용하여 인코딩될 정보는 결제를 수신하기 위한 계정 정보 또는 사용자를 대응하는 웹사이트로 리디렉팅할 수 있는 웹사이트 정보를 포함할 수 있다. 1108로부터, 방법(1100)은 1110으로 진행한다.
1110에서, 2D 코드로 인코딩될 정보는 비대칭 암호화를 사용하여 디지털 서명을 생성함으로써 디지털 서명된다. 디지털 서명은 2D 코드 생성 요청에 포함된 2D 코드 정보에 대해 생성될 수 있다. 일부 경우에, 2D 코드 정보에 대한 디지털 서명은 비대칭 암호화 알고리즘 및 사전-생성된 개인 키에 기초하여 생성될 수 있다. 예를 들어, 디지털 서명은 RSA 암호화 알고리즘에 기초하여 생성될 수 있다. 대응하는 공개 키를 사용하여 사용자 컴퓨팅 디바이스에 의해 2D 코드가 성공적으로 스캐닝되면, 2D 코드가 디지털 서명된 2D 코드 정보에 기초하여 제1 서버에 의해 생성됨을 나타낼 수 있다. 2D 코드 스캐닝이 실패하면, 2D 코드가 변조되거나 디지털 서명된 2D 코드 정보에 기초하여 생성되지 않았음을 나타낼 수 있다. 일부 경우에, 디지털 서명을 제공하는 서버는, 2D 코드 생성 요청을 전송하는 서버가 등록된 서버인지 여부를 확인할 수 있다. 등록된 서버가 아니라면, 서버는 2D 코드 생성 요청을 거부할 수 있다. 1110으로부터, 방법(1100)은 1112로 진행한다.
1112에서, 디지털 서명된 정보는 제1 서버로 전송된다. 제1 서버는 수신된 디지털 서명된 2D 코드 정보를 사용하여 2D 코드를 생성할 수 있다. 1112로부터, 방법(1100)은 1114로 진행한다.
1114에서, 2D 코드가 사용자 컴퓨팅 디바이스에 의해 스캐닝된 후에 2D 코드가 복호화된다. 사용자는 제2 서버에 의해 제공된 애플리케이션, 소프트웨어 또는 소프트웨어 개발 키트(SDK)를 사용하여 2D 코드를 스캐닝할 수 있다. 일부 경우에, 2D 코드를 스캐닝한 후, 제2 서버는 공개 키를 사용하여 2D 코드에 포함된 디지털 서명을 검증할 수 있다. 디지털 서명이 인증되면, 제2 서버는 2D 코드를 복호화하고 복호된 정보를 사용자에게 전송할 수 있다. 일부 경우에, 디지털 서명 검증 알고리즘은 제2 서버에 의해 제공되고 사용자 컴퓨팅 디바이스에 설치되는 애플리케이션, 소프트웨어 또는 SDK에 포함될 수 있다. 이러한 경우에, 사용자는 사용자 컴퓨팅 디바이스 상에서 이용 가능한 디지털 서명 검증 알고리즘을 사용하여 2D 코드를 복호화할 수 있다. 스캐닝이 실패하면, 2D 코드가 변조되었을 수 있다. 사용자는 2D 코드를 신뢰될 수 없음을 통지받을 수 있다. 1114로부터, 방법(1100)은 1116으로 진행한다.
1116에서, 2D 코드가 스캐닝된 기록이 제2 서버 상에 저장되고, 이 기록은 2D 코드를 인코딩하는 제1 서버를 포함한다. 제2 서버는 2D 코드의 스캐닝 활동을 저장할 수 있다. 스캐닝이 성공했지만 디지털 서명된 정보를 오용하는 다른 서버에 의해 2D 코드가 생성된 경우, 2D 코드의 스캐닝 활동이 저장되므로 제2 서버에 의해 오용이 식별될 수 있다. 1116 이후에, 방법(1100)이 종료된다.
본 명세서에 설명된 주제 및 기능적 동작의 구현은 디지털 전자 회로, 유형으로 구현된 컴퓨터 소프트웨어 또는 펌웨어, 본 명세서에 개시된 구조 및 이들의 구조적 등가물을 포함하는 컴퓨터 하드웨어 또는 이들 중 하나 이상의 조합으로 구현될 수 있다. 설명된 주제의 소프트웨어 구현은 하나 이상의 컴퓨터 프로그램, 즉, 컴퓨터 또는 컴퓨터-구현 시스템에 의한 실행을 위해, 또는 컴퓨터 또는 컴퓨터-구현 시스템의 동작을 제어하기 위해 유형의 비일시적 컴퓨터-판독 가능 매체 상에 인코딩된 컴퓨터 프로그램 명령어의 하나 이상의 모듈로서 구현될 수 있다. 대안적으로 또는 부가적으로, 프로그램 명령어는 인공적으로 생성된 전파된 신호, 예를 들어, 컴퓨터 또는 컴퓨터-구현 시스템에 의한 실행을 위해 수신기 장치로의 송신을 위해 정보를 인코딩하도록 생성되는 기계-생성 전기, 광학 또는 전자기 신호로/신호 상에 인코딩될 수 있다. 컴퓨터-저장 매체는 기계-판독 가능 저장 디바이스, 기계-판독 가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 디바이스, 또는 컴퓨터-저장 매체의 조합일 수 있다. 하나 이상의 컴퓨터를 구성한다는 것은 하나 이상의 컴퓨터가 하드웨어, 펌웨어 또는 소프트웨어(또는 하드웨어, 펌웨어 및 소프트웨어의 조합)를 설치하여 하나 이상의 컴퓨터에 의해 소프트웨어가 실행될 때 특정 컴퓨팅 동작이 수행됨을 의미한다.
"실시간(real-time)", "실시간(real time)", "실시간(realtime)", "실제(빠른) 시간(RFT: real fast time)", "거의 실시간(NRT: near(ly) real-time)" "준 실시간(quasi real-time)" 또는 (본 기술 분야의 통상의 기술자에 의해 이해되는) 유사 용어는, 개인이 실질적으로 동시에 발생하는 액션 및 반응을 인지하도록 액션 및 반응이 시간적으로 근접하다는 것을 의미한다. 예를 들어, 데이터에 액세스하려는 개인의 액션 후의 데이터의 표시(또는 표시의 시작)에 대한 응답에 대한 시간차는 1 밀리초(ms) 미만, 1 초(s) 미만 또는 5 초 미만일 수 있다. 요청된 데이터는 즉시 표시(또는 표시를 위해 개시)될 필요는 없지만, 설명된 컴퓨팅 시스템의 프로세싱 한계 및 예를 들어, 데이터를 수집, 정확하게 측정, 분석, 프로세싱, 저장 또는 송신하기 위해 필요한 시간을 고려하여 임의의 의도적인 지연 없이 표시(또는 표시를 위해 개시)된다.
"데이터 프로세싱 장치", "컴퓨터" 또는 "전자 컴퓨터 디바이스"라는 용어(또는 본 기술 분야의 통상의 기술자에게 이해되는 것과 동등한 용어)는 데이터 프로세싱 하드웨어를 지칭하며, 예를 들어, 프로그래머블 프로세서, 컴퓨터, 또는 복수의 프로세서 또는 컴퓨터를 포함하여, 모든 종류의 장치, 디바이스 및 데이터를 프로세싱하기 위한 기계를 포함한다. 컴퓨터는 또한 특수 목적 로직 회로, 예를 들어, 중앙 처리 장치(CPU), FPGA(필드 프로그래머블 게이트 어레이) 또는 ASIC(애플리케이션-특정 집적 회로)일 수 있거나 이를 추가로 포함할 수 있다. 일부 구현예에서, 컴퓨터 또는 컴퓨터-구현 시스템 또는 특수 목적 로직 회로(또는 컴퓨터 또는 컴퓨터-구현 시스템 및 특수 목적 로직 회로의 조합)는 하드웨어 기반 또는 소프트웨어 기반(또는 하드웨어 기반 및 소프트웨어 기반의 조합)일 수 있다. 컴퓨터는 선택적으로 컴퓨터 프로그램을 위한 실행 환경을 생성하는 코드, 예를 들어, 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 또는 실행 환경의 조합을 구성하는 코드를 포함할 수 있다. 본 개시는 일부 유형의 운영 체제, 예를 들어, LINUX, UNIX, WINDOWS, MAC OS, ANDROID, IOS, 다른 운영 체제 또는 운영 체제의 조합과 함께 컴퓨터 또는 컴퓨터-구현 시스템의 사용을 고려한다.
프로그램, 소프트웨어, 소프트웨어 애플리케이션, 유닛, 모듈, 소프트웨어 모듈, 스크립트, 코드 또는 다른 컴포넌트로 또한 지칭되거나 설명될 수 있는 컴퓨터 프로그램은 컴파일링 또는 인터프리팅된 언어 또는 선언적 또는 절차적 언어를 포함하여 임의의 형태의 프로그래밍 언어로 작성될 수 있으며, 예를 들어, 컴퓨팅 환경에서 사용하기 위한 독립형 프로그램, 모듈, 컴포넌트 또는 서브루틴을 포함하여 임의의 형태로 배치될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 대응할 수 있지만 반드시 그럴 필요는 없다. 프로그램은 다른 프로그램이나 데이터를 보유하는 파일의 일부, 예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트, 해당 프로그램 전용의 단일 파일 또는 복수의 조정된 파일, 예를 들어, 하나 이상의 모듈, 서브-프로그램 또는 코드의 일부를 저장하는 파일에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 또는 하나의 장소에 위치되거나 복수의 장소에 걸쳐 분산되어 통신 네트워크에 의해 상호 접속되는 복수의 컴퓨터 상에서 실행되도록 배치될 수 있다.
다양한 도면에 예시된 프로그램의 일부는 다양한 객체, 방법 또는 다른 프로세스를 사용하여 설명된 특징 및 기능을 구현하는 유닛 또는 모듈과 같은 개별 컴포넌트로서 예시될 수 있지만, 프로그램은 대신 다수의 서브-유닛, 서브-모듈, 제3자 서비스, 컴포넌트, 라이브러리 및 다른 컴포넌트를 적절히 포함할 수 있다. 반대로, 다양한 컴포넌트의 특징과 기능은 적절하게 단일 컴포넌트로 결합될 수 있다. 연산 결정에 사용되는 임계값은 정적으로, 동적으로 또는 정적 및 동적 모두로 결정될 수 있다.
설명된 방법, 프로세스 또는 로직 흐름은 본 개시와 일치하는 기능의 하나 이상의 예를 나타내며, 개시를 설명되거나 예시된 구현예로 제한하려고 의도된 것이 아니라 설명된 원리 및 특징과 일치하는 가장 넓은 범위에 따르도록 의도된다. 설명된 방법, 프로세스 또는 로직 흐름은 입력 데이터를 조작하고 출력 데이터를 생성함으로써 기능을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래머블 컴퓨터에 의해 수행될 수 있다. 방법, 프로세스 또는 로직 흐름은 예를 들어, CPU, FPGA 또는 ASIC와 같은 특수 목적 로직 회로에 의해 또한 수행될 수 있으며, 컴퓨터는 CPU, FPGA 또는 ASIC와 같은 특수 목적 로직 회로로서 또한 구현될 수 있다.
컴퓨터 프로그램을 실행하기 위한 컴퓨터는 범용 또는 특수 목적의 마이크로프로세서, 또는 둘 다 또는 다른 유형의 CPU에 기초할 수 있다. 일반적으로 CPU는 명령어와 데이터를 메모리로부터 받고 메모리에 작성한다. 컴퓨터의 필수 요소는 명령어를 수행 또는 실행하기 위한 CPU, 및 명령어 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한 예를 들어, 자기, 자기-광 디스크, 또는 광 디스크와 같은, 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스를 포함하거나, 이로부터 데이터를 수신하거나 이로 데이터를 전송하거나 둘 모두를 수행하도록 동작 가능하게 커플링될 것이다. 그러나 컴퓨터는 이러한 디바이스를 가질 필요가 없다. 또한, 컴퓨터는 다른 디바이스, 예를 들어, 모바일 폰, 퍼스널 디지털 어시스턴트(PDA), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, 글로벌 포지셔닝 시스템(GPS) 수신기 또는 휴대용 메모리 저장 디바이스에 내장될 수 있다.
컴퓨터 프로그램 명령어 및 데이터를 저장하기 위한 비일시적 컴퓨터-판독 가능 매체는 예를 들어, 반도체 메모리 디바이스, 예를 들어, 액세스 메모리(RAM), 판독-전용 메모리(ROM), 상변화 메모리(PRAM), 정적 랜덤 액세스 메모리(SRAM), 동적 랜덤 액세스 메모리(DRAM), 소거 가능 프로그래머블 판독-전용 메모리(EPROM), 전기 소거 가능 프로그래머블 판독-전용 메모리(EEPROM) 및 플래시 메모리 디바이스; 자기 디바이스, 예를 들어, 테이프, 카트리지, 카세트, 내부/이동식 디스크; 자기-광 디스크; 및 광 메모리 디바이스, 예를 들어, 디지털 버서타일/비디오 디스크(DVD), 컴팩트 디스크(CD)-ROM, DVD+/-R, DVD-RAM, DVD-ROM, 고해상도/밀도(HD)-DVD 및 BLU-RAY/BLU-RAY DISC(BD) 및 다른 광 메모리 기술을 포함하여 모든 형태의 영구/비영구 또는 휘발성/비휘발성 메모리, 매체 및 메모리 디바이스를 포함할 수 있다. 메모리는 캐시, 클래스, 프레임워크, 애플리케이션, 모듈, 백업 데이터, 잡(job), 웹 페이지, 웹 페이지 템플릿, 데이터 구조, 데이터베이스 테이블, 동적 정보를 저장하는 저장소(repository) 또는 임의의 파라미터, 변수, 알고리즘, 명령어, 규칙, 제약 또는 참조를 포함하는 다다른 적절한 정보를 포함하여 다양한 객체 또는 데이터를 저장할 수 있다. 부가적으로, 메모리는 로그, 정책, 보안 또는 액세스 데이터 또는 보고 파일과 같은 다른 적절한 데이터를 포함할 수 있다. 프로세서 및 메모리는 특수 목적 로직 회로에 의해 보완되거나 이에 통합될 수 있다.
사용자와의 상호 작용을 제공하기 위해, 본 명세서에 설명되는 주제의 구현예는 사용자에게 정보를 표시하기 위한 디스플레이 디바이스, 예를 들어, CRT(음극선관), LCD(액정 디스플레이), LED(발광 다이오드) 또는 플라즈마 모니터 및 사용자가 컴퓨터에 대한 입력을 제공할 수 있는 키보드 및 포인팅 디바이스, 예를 들어, 마우스, 트랙볼 또는 트랙패드를 갖는 컴퓨터 상에 구현될 수 있다. 압력 감지를 갖는 태블릿 컴퓨터 표면, 용량 또는 전기 감지를 사용하는 멀티-터치 스크린 또는 다른 유형의 터치스크린과 같은 터치 스크린을 사용하여 컴퓨터에 입력이 또한 제공될 수 있다. 다른 유형의 디바이스를 사용하여 사용자와 상호 작용할 수 있다. 예를 들어, 사용자에게 제공되는 피드백은 (시각, 청각, 촉각 또는 피드백 유형의 조합과 같은) 임의의 형태의 감각 피드백일 수 있다. 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하여 임의의 형태로 수신될 수 있다. 또한, 컴퓨터는 사용자에 의해 사용되는 클라이언트 컴퓨팅 디바이스에 문서를 전송하고 이로부터 문서를 수신함으로써(예를 들어, 웹 브라우저로부터 수신된 요청에 응답하여 사용자의 모바일 컴퓨팅 디바이스 상의 웹 브라우저에 웹 페이지를 전송함으로써) 사용자와 상호 작용할 수 있다.
"그래픽 사용자 인터페이스" 또는 "GUI"라는 용어는 하나 이상의 그래픽 사용자 인터페이스 및 특정 그래픽 사용자 인터페이스의 각각의 디스플레이를 설명하기 위해 단수 또는 복수로 사용될 수 있다. 따라서, GUI는 정보를 프로세싱하고 정보 결과를 사용자에게 효율적으로 제시하는 웹 브라우저, 터치 스크린 또는 커맨드 라인 인터페이스(CLI: command line interface)를 포함하지만 이에 제한되지 않는 임의의 그래픽 사용자 인터페이스를 나타낼 수 있다. 일반적으로, GUI는 다수의 사용자 인터페이스(UI) 요소를 포함하며, 그 일부 또는 전부는 상호 작용 필드, 풀-다운 리스트 및 버튼과 같은 웹 브라우저와 연관된다. 이러한 UI 요소 및 다른 UI 요소는 웹 브라우저의 기능과 관련되거나 이를 나타낼 수 있다.
본 명세서에 설명되는 주제의 구현예는 예를 들어, 데이터 서버와 같은 백-엔드 컴포넌트를 포함하거나 미들웨어 컴포넌트, 예를 들어, 애플리케이션 서버를 포함하거나 프론트-엔드 컴포넌트, 예를 들어, 본 명세서에서 설명되는 그래픽 사용자 인터페이스를 갖는 클라이언트 컴퓨터를 포함하거나, 이러한 백-엔드, 미들웨어, 또는 프론트-엔드 컴포넌트 중 하나 이상의 임의의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 컴포넌트는 임의의 형태 또는 유선 또는 무선 디지털 데이터 통신의 매체(또는 데이터 통신의 조합), 예를 들어, 통신 네트워크에 의해 상호 접속될 수 있다. 통신 네트워크의 예는 근거리 네트워크(LAN: local area network), 무선 액세스 네트워크(RAN: radio access network), 메트로폴리탄 영역 네트워크(MAN: metropolitan area network), 광역 네트워크(WAN: wide area network), 마이크로파 액세스를 위한 월드와이드 상호 운용(WIMAX: worldwide interoperability for microwave access), 예를 들어 802.11 a/b/g/n 또는 802.20(또는 본 개시에 따른 802.llx 및 802.20 또는 다른 프로토콜의 조합)을 사용하는 무선 근거리 네트워크(WLAN: wireless local area network), 인터넷의 전부 또는 일부, 다른 통신 네트워크 또는 통신 네트워크의 조합을 포함한다. 통신 네트워크는 예를 들어, 인터넷 프로토콜(IP) 패킷, 프레임 릴레이 프레임, 비동기식 전달 모드(ATM: Asynchronous Transfer Mode) 셀, 음성, 비디오, 데이터 또는 네트워크 노드 사이의 다른 정보와 통신할 수 있다.
컴퓨팅 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 원격으로 있으며 통상적으로 통신 네트워크를 통해 상호 작용한다. 클라이언트와 서버의 관계는 각 컴퓨터 상에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생한다.
본 명세서는 많은 특정 구현 상세 사항을 포함하지만, 이들은 본 발명의 개념의 범위 또는 청구될 수 있는 것의 범위에 대한 제한으로 해석되어서는 안 되며, 오히려 특정 발명의 개념의 특정 구현에 특정될 수 있는 특징의 설명으로 해석되어야 한다. 별도의 구현예와 관련하여 본 명세서에서 설명되는 특정의 특징은 또한 조합하여, 단일 구현으로 구현될 수 있다. 반대로, 단일 구현의 맥락에서 설명되는 다양한 특징은 또한 복수의 구현으로, 개별적으로 또는 임의의 서브-조합으로 구현될 수 있다. 또한, 전술한 특징이 특정 조합으로 작용하는 것으로 설명되고 심지어 처음에 이와 같이 청구되었지만, 청구된 조합으로부터의 하나 이상의 특징은 일부 경우에, 조합으로부터 제외될 수 있고, 청구된 조합은 서브-조합 또는 서브-조합의 변형에 대한 것일 수 있다.
주제의 특정 구현예가 설명되었다. 설명된 구현예의 다른 구현예, 변경 및 치환은 본 기술 분야의 통상의 기술자에게 명백한 바와 같이 이하의 청구범위 내에 있다. 동작이 도면 또는 청구항에서 특정 순서로 도시되어 있지만, 이는 이러한 동작이 나타내어진 특정 순서로 또는 순차적인 순서로 수행되거나, 예시된 모든 동작이 바람직한 결과를 획득하기 위해 수행되는 것을(일부 동작은 선택적인 것으로 고려될 수 있음) 요구하는 것으로 이해되어서는 안된다. 특정 상황에서, 멀티태스킹 또는 병렬 프로세싱(또는 멀티태스킹과 병렬 프로세싱의 조합)이 유리할 수 있고 적절한 것으로 간주되어 수행될 수 있다.
또한, 전술한 구현예에서 다양한 시스템 모듈 및 컴포넌트의 분리 또는 통합은 모든 구현에서 이러한 분리 또는 통합을 요구하는 것으로 이해되어서는 안 되며, 설명된 프로그램 컴포넌트 및 시스템은 일반적으로 단일 소프트웨어 제품으로 함께 통합될 수 있거나 복수의 소프트웨어 제품으로 패키징될 수 있음이 이해되어야 한다.
따라서, 전술한 예시적인 구현예는 본 개시를 정의하거나 제한하지 않는다. 본 개시의 사상 및 범위를 벗어나지 않고 다른 변경, 대체 및 변경이 또한 가능하다.
또한, 임의의 청구된 구현예는 적어도 컴퓨터-구현 방법; 컴퓨터-구현 방법을 수행하기 위해 컴퓨터-판독 가능 명령어를 저장하는 비일시적 컴퓨터-판독 가능 매체; 및 컴퓨터-구현 방법 또는 비일시적 컴퓨터-판독 가능 매체에 저장된 명령을 수행하도록 구성된 하드웨어 프로세서와 상호 운용 가능하게 커플링된 컴퓨터 메모리를 포함하는 컴퓨터 시스템에 적용 가능한 것으로 고려된다.

Claims (15)

  1. 2차원 코드를 생성하기 위한 방법으로서, 제2 서버에 의해 실행되는, 2차원 코드를 생성하기 위한 방법에 있어서,
    제1 서버로부터 2차원 코드 생성 요청을 수신하는 단계로서, 상기 요청은 2차원 코드를 생성하기 위한 정보를 포함하는, 수신하는 단계;
    상기 2차원 코드를 생성하기 위한 상기 정보에 디지털 서명하는 단계; 및
    상기 디지털 서명된 정보를 상기 제1 서버로 전송하는 단계
    를 포함하는, 2차원 코드 생성 방법.
  2. 제1항에 있어서, 상기 제1 서버로부터 상기 2차원 코드 생성 요청을 수신하는 단계 전에, 현재 등록과 관련된 정보를 포함하는 등록 요청을 상기 제1 서버로부터 수신하는 단계를 더 포함하는, 2차원 코드 생성 방법.
  3. 제2항에 있어서, 상기 등록 요청을 상기 제1 서버로부터 수신하는 단계 후에,
    상기 현재 등록과 관련된 정보를 성공적으로 검증한 후에 상기 등록 요청에 따라 상기 제1 서버의 등록을 완료하는 단계를 더 포함하는, 2차원 코드 생성 방법.
  4. 제3항에 있어서,
    상기 등록 정보를 저장하는 단계를 더 포함하는, 2차원 코드 생성 방법.
  5. 제3항 또는 제4항에 있어서, 상기 2차원 코드를 생성하기 위한 상기 정보에 디지털 서명하는 단계 전에,
    상기 제1 서버가 상기 제2 서버에 등록되어 있는지 여부를 결정하는 단계를 더 포함하고,
    등록되었다면, 상기 수신된 2차원 코드 생성 요청에 따라 상기 2차원 코드를 생성하기 위한 상기 정보에 디지털 서명하고; 및
    등록되지 않았다면, 상기 2차원 코드를 생성하기 위한 상기 정보에 디지털 서명하지 않고, 등록 초대(registration invitation)를 상기 제1 서버로 전송하는, 2차원 코드 생성 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 단계는, 비대칭 암호화 알고리즘에 기초하여, 그리고 개인 키를 사용하여, 상기 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 단계를 포함하는, 2차원 코드 생성 방법.
  7. 제6항에 있어서,
    상기 비대칭 암호화 알고리즘은 RSA 알고리즘을 포함하는, 2차원 코드 생성 방법.
  8. 제6항에 있어서,
    상기 2차원 코드를 생성하기 위한 정보에 디지털 서명하는 단계에서는 상기 2차원 코드를 생성하기 위한 상이한 정보에 따라, 상이한 각각의 개인 키들이 사용되는, 2차원 코드 생성 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    상기 제2 서버에 대응하는 애플리케이션을 시작하는 단계;
    상기 애플리케이션에서 스캐닝 유닛을 사용하여 상기 2차원 코드를 스캐닝하는 단계;
    공개 키를 사용하여 상기 스캐닝된 2차원 코드를 검증하는 단계; 및
    상기 검증이 성공하면, 상기 스캐닝된 2차원 코드에 대응하는 정보를 인식하는 단계를 더 포함하는, 2차원 코드 생성 방법.
  10. 제9항에 있어서,
    상기 검증이 성공하지 못하면, 상기 2차원 코드가 변조된(tampered) 것으로 결정하는 단계를 더 포함하는, 2차원 코드 생성 방법.
  11. 제9항에 있어서,
    상기 공개 키는 상기 제2 서버 또는 원격 저장 디바이스로부터 획득되는, 2차원 코드 생성 방법.
  12. 제9항에 있어서,
    상기 검증하는 단계와 관련된 정보를 저장하는 단계를 더 포함하는, 2차원 코드 생성 방법.
  13. 2차원 코드를 생성하기 위한 방법으로서, 제1 서버에 의해 실행되는, 2차원 코드 생성 방법에 있어서,
    2차원 코드 생성 요청을 제2 서버로 전송하는 단계로서, 상기 요청은 2차원 코드를 생성하기 위한 정보를 포함하는 것인, 상기 2차원 코드 생성 요청을 전송하는 단계;
    상기 제2 서버로부터, 상기 제2 서버에 의해 생성된 디지털 서명을 포함하는 2차원 코드 정보를 수신하는 단계; 및
    상기 2차원 코드 정보를 사용하여 2차원 코드를 생성하는 단계
    를 포함하는, 2차원 코드 생성 방법.
  14. 제13항에 있어서, 상기 2차원 코드 생성 요청을 상기 제2 서버로 전송하는 단계 전에, 현재 등록과 관련된 정보를 포함하는 등록 요청을 상기 제2 서버로 전송하는 단계를 더 포함하는, 2차원 코드 생성 방법.
  15. 전자 디바이스에 있어서,
    제13항 또는 제14항의 방법을 수행하도록 구성된 복수의 유닛을 포함하는 제1 서버; 및
    제1항 내지 제12항 중 어느 한 항의 방법을 수행하도록 구성된 복수의 유닛을 포함하는 제2 서버
    를 포함하는, 전자 디바이스.
KR1020197023898A 2017-02-14 2018-02-14 2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스 KR102208895B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710078901.6A CN107067056A (zh) 2017-02-14 2017-02-14 二维码生成方法及其设备和二维码识别方法及其设备
CN201710078901.6 2017-02-14
PCT/US2018/018157 WO2018152184A1 (en) 2017-02-14 2018-02-14 Two-dimensional code generation method and device, and two-dimensional code recognition method and device

Publications (2)

Publication Number Publication Date
KR20190113840A true KR20190113840A (ko) 2019-10-08
KR102208895B1 KR102208895B1 (ko) 2021-01-29

Family

ID=59598223

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197023898A KR102208895B1 (ko) 2017-02-14 2018-02-14 2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스

Country Status (11)

Country Link
US (1) US10693663B2 (ko)
EP (1) EP3568812A1 (ko)
JP (1) JP6859513B2 (ko)
KR (1) KR102208895B1 (ko)
CN (1) CN107067056A (ko)
AU (1) AU2018220925B2 (ko)
CA (1) CA3053462C (ko)
PH (1) PH12019501894A1 (ko)
SG (1) SG11201907394UA (ko)
TW (1) TW201830291A (ko)
WO (1) WO2018152184A1 (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107451800B (zh) * 2017-08-23 2020-10-23 北京三快在线科技有限公司 一种虚拟资源转移方法及装置,电子设备
CN107507007A (zh) * 2017-08-30 2017-12-22 努比亚技术有限公司 一种支付二维码验证方法、终端及计算机可读存储介质
CN108108629B (zh) * 2017-10-31 2021-05-04 国家电网公司 基于二维码的电力设备信息管理方法
CN110119643B (zh) * 2018-02-07 2020-11-03 北京三快在线科技有限公司 二维码生成方法及装置、二维码识别方法及装置
CN108537314A (zh) * 2018-03-27 2018-09-14 中国工商银行股份有限公司 基于二维码的产品营销系统及方法
CN108696510B (zh) * 2018-04-17 2021-08-03 新大陆(福建)公共服务有限公司 一种基于云端多渠道协同生产二维码方法以及系统
CN110544083A (zh) * 2018-05-29 2019-12-06 北京意锐新创科技有限公司 基于移动支付设备的二维码显示方法和装置
CN110544091A (zh) * 2018-05-29 2019-12-06 北京意锐新创科技有限公司 用于支持金融级的支付方法和装置
CN108681895A (zh) * 2018-07-26 2018-10-19 深圳市万通顺达科技股份有限公司 一种基于动态二维码的支付方法及支付系统
CN109060840B (zh) * 2018-08-10 2022-04-05 北京极智嘉科技股份有限公司 二维码的质量监测方法、装置、机器人、服务器和介质
CN109409472B (zh) * 2018-08-24 2022-11-22 创新先进技术有限公司 二维码生成方法、数据处理方法、装置及服务器
CN111881386B (zh) * 2018-08-31 2024-03-12 创新先进技术有限公司 一种基于扫码操作的页面访问方法、装置及系统
CN111314104B (zh) * 2018-12-12 2022-11-25 中国移动通信集团北京有限公司 一种即时通信业务操作行为识别方法及装置
CN109685187B (zh) * 2018-12-28 2021-12-14 优城(宁波)地铁科技有限公司 一种批量发码模式功能的模块
CN110046687A (zh) * 2019-03-01 2019-07-23 阿里巴巴集团控股有限公司 条码展示方法、设备以及装置
CN110321752B (zh) * 2019-06-03 2023-07-14 创新先进技术有限公司 离线图形码的校验方法及装置
US20210035240A1 (en) * 2019-08-01 2021-02-04 Robert Scott Echols Trustable information chain for fishing, seafood, or other industries
CN110648147B (zh) * 2019-09-11 2023-11-21 郑州地铁集团有限公司 用于轨道交通闸机二维码交易的信息交互方法及存储介质
TWI724877B (zh) * 2020-04-24 2021-04-11 國立臺北商業大學 金融產業之二維條碼應用系統及其方法
CN111787364B (zh) * 2020-07-13 2022-05-06 聚好看科技股份有限公司 媒体数据获取方法、智能电视及移动终端
CN112559846B (zh) * 2020-11-16 2023-10-03 北京版信通技术有限公司 一种app编码认证系统及其实现方法
CN113298516A (zh) * 2021-06-22 2021-08-24 中国农业银行股份有限公司 二维码的处理方法、装置、设备、介质及程序产品
TWI778804B (zh) * 2021-09-22 2022-09-21 阿丹電子企業股份有限公司 可快速定位與識別的高強固性二維碼及其定位與識別方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102779263A (zh) * 2012-06-19 2012-11-14 袁开国 基于pki和数字签名的可信二维码方案
CN103839097A (zh) * 2014-03-20 2014-06-04 武汉信安珞珈科技有限公司 一种基于数字签名的二维码生成方法和装置
JP6145792B2 (ja) * 2014-05-29 2017-06-14 合同会社Qrテクノロジー デジタル署名型2次元コード生成装置、及びデジタル署名型2次元コード認証装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3207192B1 (ja) 2000-05-02 2001-09-10 株式会社 ジェネス 認証方法および装置
US20090293112A1 (en) 2004-12-03 2009-11-26 Stephen James Moore On-line generation and authentication of items
US20160210491A9 (en) * 2008-09-30 2016-07-21 Apple Inc. Systems and methods for secure wireless financial transactions
WO2010132928A1 (en) * 2009-05-18 2010-11-25 Mikoh Corporation Biometric identification method
CN102170357B (zh) * 2011-05-31 2013-09-25 北京虎符科技有限公司 组合密钥动态安全管理系统
US20120310852A1 (en) 2011-06-02 2012-12-06 Honeywell International Inc. Establishing an e-badge via mobile pre-registration for a visitor management system
CN102243739A (zh) * 2011-07-04 2011-11-16 中国建设银行股份有限公司 基于二维码的手机银行支付方法、系统及客户端
US9152903B2 (en) 2011-11-04 2015-10-06 Ebay Inc. Automated generation of QR codes with embedded images
US20140282923A1 (en) 2013-03-14 2014-09-18 Motorola Mobility Llc Device security utilizing continually changing qr codes
CN104077624A (zh) * 2013-03-26 2014-10-01 中国银联股份有限公司 带防伪二维码的电子票据的生成方法、校验方法及其系统
US9137420B1 (en) * 2014-04-17 2015-09-15 Xerox Corporation Service-oriented multifunction devices
CN104134142B (zh) * 2014-08-11 2017-09-29 东南大学 一种基于二维码识别的地铁购票、检票方法
CN105024824B (zh) * 2014-11-05 2018-12-21 浙江码博士防伪科技有限公司 基于非对称加密算法的可信标签的生成与验证方法及系统
CN104320263B (zh) 2014-11-12 2018-11-06 贺瑞 电子授权委托书实现、查验方法、服务器及系统
CN105959108A (zh) * 2016-06-27 2016-09-21 收付宝科技有限公司 对云支付限制密钥进行加密及解密的方法、装置和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102779263A (zh) * 2012-06-19 2012-11-14 袁开国 基于pki和数字签名的可信二维码方案
CN103839097A (zh) * 2014-03-20 2014-06-04 武汉信安珞珈科技有限公司 一种基于数字签名的二维码生成方法和装置
JP6145792B2 (ja) * 2014-05-29 2017-06-14 合同会社Qrテクノロジー デジタル署名型2次元コード生成装置、及びデジタル署名型2次元コード認証装置

Also Published As

Publication number Publication date
AU2018220925B2 (en) 2020-07-09
AU2018220925A1 (en) 2019-08-29
CA3053462C (en) 2020-08-18
JP2020509674A (ja) 2020-03-26
US10693663B2 (en) 2020-06-23
TW201830291A (zh) 2018-08-16
PH12019501894B1 (en) 2020-06-01
EP3568812A1 (en) 2019-11-20
KR102208895B1 (ko) 2021-01-29
SG11201907394UA (en) 2019-09-27
PH12019501894A1 (en) 2020-06-01
CN107067056A (zh) 2017-08-18
WO2018152184A1 (en) 2018-08-23
JP6859513B2 (ja) 2021-04-14
US20180234252A1 (en) 2018-08-16
CA3053462A1 (en) 2018-08-23

Similar Documents

Publication Publication Date Title
KR102208895B1 (ko) 2차원 코드 생성 방법 및 디바이스, 그리고 2차원 코드 인식 방법 및 디바이스
RU2727098C1 (ru) Способ и устройство установки ключей и отправки данных
US11315112B2 (en) Blockchain data processing method, apparatus, device, and system
US10892896B2 (en) Using biometric features for user authentication
US20200274859A1 (en) User authentication system with self-signed certificate and identity verification with offline root certificate storage
US8909933B2 (en) Decoupled cryptographic schemes using a visual channel
CN110492990A (zh) 区块链场景下的私钥管理方法、装置及系统
WO2021208743A1 (zh) 应用程序的账户绑定
KR20170041741A (ko) 호스팅된 인증 서비스를 구현하기 위한 시스템 및 방법
KR20190107696A (ko) 이미지 생성 방법 및 디바이스
TWI697854B (zh) 支付乘車費的方法、裝置及設備
KR102407821B1 (ko) 데이터 처리 방법, 단말 장치, 및 데이터 처리 시스템
WO2019165875A1 (zh) 一种交易处理方法、服务器、客户端及系统
CN109560933B (zh) 基于数字证书的认证方法及系统、存储介质、电子设备
CN105812313B (zh) 恢复会话的方法和服务器、生成会话凭证的方法和装置
US11282045B2 (en) Methods, devices, and systems for verifying digital tickets at a client
CN112968899B (zh) 一种加密通信的方法与设备
US11641363B2 (en) Methods and systems for verifying the authenticity of a remote service
CN105323287B (zh) 第三方应用程序的登录方法及系统
CN114844694A (zh) 信息处理方法、装置、设备和存储介质

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
N231 Notification of change of applicant