KR20200012845A - 점진적 키 암호화 알고리즘 - Google Patents

점진적 키 암호화 알고리즘 Download PDF

Info

Publication number
KR20200012845A
KR20200012845A KR1020197032592A KR20197032592A KR20200012845A KR 20200012845 A KR20200012845 A KR 20200012845A KR 1020197032592 A KR1020197032592 A KR 1020197032592A KR 20197032592 A KR20197032592 A KR 20197032592A KR 20200012845 A KR20200012845 A KR 20200012845A
Authority
KR
South Korea
Prior art keywords
encrypted data
data
encrypted
segment
data segment
Prior art date
Application number
KR1020197032592A
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 KR20200012845A publication Critical patent/KR20200012845A/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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06K9/0008
    • G06K9/001
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1347Preprocessing; Feature extraction
    • G06V40/1359Extracting features related to ridge properties; Determining the fingerprint type, e.g. whorl or loop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/12Fingerprints or palmprints
    • G06V40/1365Matching; Classification
    • G06V40/1376Matching features related to ridge properties or fingerprint texture
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • 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
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • 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/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3242Cryptographic 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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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/3271Cryptographic 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 using challenge-response
    • H04L9/3278Cryptographic 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 using challenge-response using physically unclonable functions [PUF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/80Recognising image objects characterised by unique random patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/50Maintenance of biometric data or enrolment thereof
    • G06V40/53Measures to keep reference information secret, e.g. cancellable biometrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/20Manipulating the length of blocks of bits, e.g. padding or block truncation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • 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
    • 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/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Biomedical Technology (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

양자 컴퓨터와 같은 병렬 컴퓨팅 수단에 의한 무차별 대입 공격에 대한 저항력을 증가시키는 데이터를 암호화하기 위한 방법이 설명된다. 데이터를 암호화하기 위해, 복수의 데이터 세그먼트들로 분리되며, 각각의 데이터 세그먼트들은 상이한 암호화 키를 사용하여 암호화된다. 암호화된 데이터 세그먼트들은 그런 다음 상기 암호화된 데이터 세그먼트들의 병렬 공격을 방해하는 방식으로 암호화된 데이터 파일로 배열된다. 예를 들어, 암호화된 데이터 세그먼트들의 길이는 불균일할 수 있고 및/또는 암호화된 데이터 파일 내에서 암호화된 데이터 세그먼트들의 간격은 불균일할 수 있다. 각 암호화된 세그먼트는 다음 세그먼트에 대한 포인터를 포함할 수 있으며, 따라서 인증된 수취자가 암호화된 데이터 세그먼트들의 길이 및/또는 간격의 사전 지식 없이 데이터 파일을 순차적으로 복호화할 수 있게 한다.

Description

점진적 키 암호화 알고리즘
본 발명은 데이터를 암호화 및 복호화하는 방법에 관한 것으로, 구체적으로 데이터의 상이한 부분들에 상이한 키들을 사용하는 데이터의 암호화 및 복호화에 관한 것이다.
지불 산업(payment industry)은 은행 계좌 번호, 비밀 번호, 청구 주소 등과 같은 민감한 고객 정보를 항상 안전하게 유지해야 한다. 그러나, 보안은 상인 네트워크 또는 인터넷을 통해 민감한 데이터의 전달을 필요로 하는 온라인 상거래로의 이동을 고려할 때 특히 중요해지고 있다.
신용 카드의 40년 된 마그네틱 스트립을 인피니온(lnfineon) 사에 의한 SEL-78 씨규리티 컨트롤러와 같은, 특수한 마이크로컨트롤러-기반 반도체 지불 칩으로 교체하는데 꾸준한 진전이 있었다. 이러한 유형의 칩은, 플라스틱 캐리어 카드에 임베디드될 때, 통신하기 위해 매우 짧은 거리에 걸쳐 결합될 수 있는 금속 접촉 플레이트 및/또는 안테나를 특징으로 하는 EMV 칩 카드로 기능하도록 프로그램될 수 있다. 마이크로컨트롤러는 부정사용 방지(tamper resistant)되도록 설계되어, (PIN 또는 비밀 암호화 키와 같은) 비밀 정보가 그 메모리에 더욱 안전하게 저장될 수 있다. 이러한 특징은 칩 카드 기술이 가져다주는 보안상의 이점들을 뒷받침한다.
칩 기반 신용 카드들은 작고, 심한 계산상 제약이 있다. 작은 폼 팩터(form factor)로 캡슐화될 수 있는 프로세싱 능력, 메모리 및 보안 로직의 양은 한정되어 있다. 또한, 비-갈바닉(non-galvanic) 접촉(또는 비접촉) 카드 동작들에만 의존하는 카드의 경우, 에너지가 안테나를 통해 “도입(inducted)”되며, 이에 따라 카드 내부의 전자 장치들에 전력을 공급하기 위해 가용 에너지를 더 제한하므로, 낮은 레벨의 전력/에너지만 카드에 공급될 수 있다.
최근의 개발은 EMV 카드에 생체측정 센서들을 통합하는 것이다. 이러한 카드는 카드 소유자의 (지문 또는 다른 생체측정 기반 템플릿과 같은) 생체측정 데이터를 저장, 전송, 수신 및 검증하도록 구성될 수 있다. 생체측정 식별자들은 변경될 수 없기 때문에 사용자의 생체측정 데이터를 보호하는 것은 특히 중요하다. 따라서, 사용자의 생체측정 데이터가 인증되지 않은 자에 의해 획득되면, 그들은 그 데이터를 무한정으로 사용하게 될 것이다.
일반적으로, 보안 데이터는 보안 통신에 공통으로 사용되는 RSA 프레임워크와 같은 다양한 알고리즘 암호화 메커니즘에 의해 보호되어 왔다. RSA는 비대칭 암호화 알고리즘이며, 암호화 및 복호화에 각각 도출된 상이한 키 쌍을 사용한다는 것을 의미한다.
공개 암호화 키와 같은 두 키들 중 하나에 대한 정보를 누구나 받을 수 있고, 메시지를 암호화하기 위해 공개 키를 적용할 수 있지만, 개인 복호화 키의 소유자만이 합당한 시간 안에 메시지를 효율적으로 복호화할 수 있다. RSA 암호체계의 능력 및 보안은 “팩토링 문제(factoring problem)”가 어렵다는 전제에 기초한다. 즉, 개인 복호화 키의 지식이 없는 RSA 암호문의 복호화는 많은 개수들을 팩토링하기 위한 효율적인 알고리즘이 아직 없기 때문에 실행 불가능하다.
오늘날의 컴퓨팅 능력은 매우 결연한 해커가 알고리즘이 고갈될 때까지 위기에 처할 수 있게 하는 것을 가능하게 한다. 또한, 다가오는 양자 컴퓨팅(quantum computing)(“QC”)의 도입으로, RSA 키들을 팩토링하는 것과 같은, 일부 종류의 하드 팩토링 문제들이 점점 더 타협에 취약해질 것이다. 따라서, 제3자에 의한 생체측정 및 기타 데이터의 개입, 수정 및 위조로부터 발신자와 수취자를 더 잘 보호하기 위해 QC 도입을 예상할 필요가 있다. 이는 스마트 카드 플랫폼의 생체측정 템플릿과 같은 민감한 개인 정보의 안전한 저장, 네트워크를 통한 보안 데이터 서버로부터의 생체측정 데이터 전송 및 전송된 데이터에 대한 저장된 생체측정 템플릿의 인증과 같은 민감한 개인 정보를 안전하게 보호하는데 또한 영향을 미친다.
제1 측면에서 보면, 본 발명은 복수의 데이터 세그먼트들을 포함하는 데이터를 암호화하는 방법으로서, 상기 방법은,
복수의 암호화 데이터 세그먼트들을 부여하기 위해 각각의 데이터 세그먼트들을 암호화하는 단계로서, 상이한 암호화 키가 각 데이터 세그먼트를 암호화하는데 사용되는, 단계, 및 암호화된 데이터 세그먼트들을 포함하는 암호화된 데이터 파일을 생성하는 단계를 포함하며, 암호화된 데이터 세그먼트들의 길이들은 불균일하고 및/또는 암호화된 데이터 파일 내에서 암호화된 데이터 세그먼트들의 간격은 불균일한, 상기 방법을 포함하는 방법을 제공한다.
이 방법에 따르면, 많은 수의 키들이 데이터의 비교적 작은 세그먼트들을 암호화하는데 사용되며, 이는 무차별 대입 공격(brute force attacks)을 사용하여 암호화를 무산시키는 것을 어렵게 한다. 게다가, 암호화된 데이터 세그먼트들의 길이들이 서로 다르거나 암호화된 데이터 파일 내에서 데이터 세그먼트들이 불균일하게 이격되거나 오프셋되기 때문에, 공격자는 각 암호화된 세그먼트가 시작 및/또는 종료되는 곳을 알 수 없으므로 암호화된 데이터 파일은 양자 컴퓨터(quantum computer)와 같은 병렬 컴퓨팅 공격에 강하다. 따라서, 파일의 암호화 전체를 공격하려는 시도는 많은 가능한 연속적인 순열치환(permutation)을 공격해야 하기 때문에 어렵다.
결과적으로, 설명된 방법은 대규모 병렬 프로세싱 공격들에 내성이 있는(resistant) 매우 강력한 암호화를 허용하거나, 또는 대안적으로는 복수의 암호화 키 및 짧은 (가변 길이) 데이터 세그먼트들의 사용으로 인해 비교적 약한 암호화 알고리즘을 사용하여 동등하게 강한 암호화가 달성될 수 있게 하여, 저전력 장치에서도 빠른 프로세싱을 허용한다.
바람직하게는, 암호화 키들에 대응되는 복호화 키들 중 어느 것도 상기 복호화 키들 중 임의의 다른 키에 대응되는 복호화 키에 기초하여 계산될 수 없다. 그 결과, 공격자가 하나의 데이터 세그먼트에 사용된 암호화를 분해하고 그 복호화 키를 결정하면, 공격자는 임의의 후속 데이터 세그먼트에 대한 복호화 키를 결정할 수 없다.
각 데이터 세그먼트는 바람직하게는 암호화된 데이터 파일 내에서 다음 암호화된 데이터 세그먼트의 위치 및/또는 길이를 식별하기 위한 인디케이터(indicator)를 포함한다. 인디케이터는 다음 암호화된 데이터 세그먼트의 위치 및/또는 숫자 길이를 지시하는 포인터(pointer)일 수 있다. 대안적으로, 인디케이터는, 예를 들어, 암호화 및 복호화 당사자들에게 알려진 다른 데이터 또는 프로세스들과 조합하여, 위치 및/또는 길이로부터 도출하기에 적합한 데이터를 포함할 수 있다. 따라서, 데이터 세그먼트는 인증된 수취자에 의해 순서대로 복호화되므로, 그들은 시리즈의 다음 데이터 세그먼트에 즉시 액세스할 수 있다. 그러나, 상기에 논의된 바와 같이, 인증되지 않은 파일의 수취자는 각 데이터 세그먼트가 시작되거나 종료되는 곳을 알지 못하므로 병렬 컴퓨팅 공격을 통해 파일 전체를 쉽게 공격할 수 없다.
암호화 데이터 세그먼트들의 불균일한 간격은 다양한 방식으로 달성될 수 있다. 예를 들어, 랜덤 데이터의 랜덤 길이가 데이터 세그먼트들 간에 추가될 수 있어 특정 데이터 조각이 암호화된 데이터 세그먼트 또는 랜덤 데이터의 암호문의 일부인지 여부를 검출하는 것이 가능하지 않다.
바람직하게는, 암호화된 데이터 세그먼트들은 연속되지 않은 순서로 암호화된 데이터 파일 내에 저장된다. 따라서, 세그먼트들은 임의의 순서로 될 수 있을 것이며, 이용 가능한 순열치환의 가능한 수를 증가시킨다.
데이터 세그먼트들은 암호화 및 복호화하는 암호화 알고리즘을 사용하여 암호화될 수 있다. 암호화 알고리즘은 블록 암호, 즉, 키에 의해 명시되는, 블록으로 알려진, 고정 길이의 비트 그룹에 불변형 변환을 적용하는 암호화 알고리즘일 수 있다. 예시적인 암호화 알고리즘은, 예를 들어, 고급 암호 표준(Advanced Encryption Standard)(AES) 알고리즘 및 타원 곡선 암호(Elliptic Curve Cryptography)(ECC) 알고리즘을 포함한다.
블록 암호를 사용할 때, 불균일한 데이터 세그먼트 길이는, 예를 들어, 각 세그먼트에서 상이한 수의 블록들을 사용하여 달성될 수 있다. 대안적으로, 상이한 데이터 세그먼트들에 대해 상이한 블록 길이들을 사용하는 것이 가능할 수 있다. 블록 길이를 변경하는 것은 또한 키 길이에 대응되는 변경을 필요로 할 것이라는 점이 이해될 것이다.
바람직하게는, 각 암호화 키는 공통 시드 값으로부터 생성된다. 따라서, 모든 암호화키들 (따라서 대칭 키 알고리즘을 위한 복호화 키)을 생성하는 데에는 단일 시드 값만이 요구된다. 그러나, 공통 시드 값들로부터 암호화 키들을 생성하는 알고리즘은 비-가역적인(non-reversible) 것이 바람직한 것으로, 즉 암호화 키들 중 하나를 발견한 공격자가 시드 값을 결정하기 위해 이를 사용할 수 없도록 한다. 시드 값은, 예를 들어, 제조 동안, 예를 들어, 전자 장치의 보안 메모리에 저장된 고유한 코드일 수 있고, 및/또는 물리적 복제방지 기능(physically unclonable funtion)(PUF)을 통해서와 같은 특정 전자 장치 내에 내제된 고유한 특성을 측정하여 도출될 수 있다. PUF는 반도체 집적 회로에서 마이크로 결함의 고유한 특성들(unique characteristics)로 인해 발생하는 고유 동작(inherent behaviour)이다.
각 데이터 세그먼트는 데이터 세그먼트의 적어도 일부의 무결성을 검증하기 위한 메시지 인증 코드를 포함할 수 있다. 메시지 인증 코드(message authentication code; MAC)는 메시지를 인증, 즉 명시된 송신자로부터 온 메시지가 전송 중에 변경되지 않았음을 확인하는데 사용된 짧은 정보이다. MAC 알고리즘은, 인증될 비밀키 및 임의의 길이(arbitrary-length) 메시지를 입력으로 받아 MAC (때로는 태그로 불림)를 출력한다. MAC를 생성하기 위한 많은 가능한 알고리즘들이 있지만, 키에 대한 지식 없이 주어진 메시지에 대한 유효 MAC를 계산하는 것은 계산상으로 실행할 수 없어야 한다.
메시지 인증 코드는 각 데이터 세그먼트에 대한 암호화 키를 사용하여 생성될 수 있다. 대안예에서, 메시지 인증 코드들은 암호화 키들을 생성하기 위한 시드 값에 기초하여 생성된 비밀 키들을 사용하여 생성될 수 있다. 일반적으로, 메시지 인증 코드는 암호 해시(cryptographic hash)와 같은 메시지로부터 도출된 정보를 포함한다.
메시지 인증 코드는 바람직하게는 또한 이전 데이터 세그먼트의 적어도 일부의 무결성을 검증하기에 적합하다. 예를 들어, 이전 세그먼트의 일부는 이전 세그먼트의 메시지 인증 코드를 포함한다. 따라서, 후속 메시지 인증 코드들의 재계산을 추가로 요구하기 때문에 메시지에 대한 임의의 조작(tampering)은 어렵다.
데이터는 생체측정 데이터를 포함할 수 있으며, 각 데이터 세그먼트는 생체측정 식별자 또는 생체측정 템플릿의 개별 개수를 정의하는 데이터를 나타낸다. 일 실시예에서, 각 데이터 세그먼트는 생체측정 식별자 또는 생체측정 템플릿의 단일 특징점을 정의하는 데이터를 나타낼 수 있다. 상기에 논의된 바와 같이, 사람의 생체측정 식별자는 변경될 수 없으므로 결정적으로 생체측정 데이터를 보호하는 것이 중요하다.
생체측정 식별자는 예를 들어 지문일 수 있다. 지문의 경우, 특징점은 릿지 말미(ridge ending), 릿지 분기(ridge bifurcation), 짧거나 독립적인 릿지, 섬(island), 릿지 인클로저(ridge enclosure), 돌출부(spur), 교차(crossover) 또는 브릿지(bridge), 삼각형(delta), 코어(core) 중 임의의 하나 이상을 포함할 수 있다. 오늘날 지문의 표현에 사용된 가장 공통의 특징점은 릿지 말미 및 릿지 분기이다. 다른 생체측정 특징점은 초음파 방법을 통해 분해된 것과 같은 - 특징의 3 차원 표현을 포함할 수 있는 특징 내 지오미트리(intra-feature geometries) 또는 다른 메트릭스(metrics)를 포함할 수 있다.
일반적으로 특징점은 적어도 위치 (예를 들어, 카테시안(Cartesian) 또는 레이디얼(radial) 좌표 시스템의) 및 특징점 각도로 표현될 수 있다. 그러나, 특징점은 또한 또는 대안적으로 상대 좌표 시스템에서 이웃하는 특징점의 위치들을 정의하여 표현될 수 있다. 데이터가 이웃하는 특징점을 정의하는 데이터를 포함하고 다른 특징점이 상이한 수의 이웃하는 특징점을 가질 수 있을 경우, 그 결과 데이터 세그먼트들은 자연적으로 상이한 길이일 수 있다. 일부 실시예들에서, 생체측정 데이터는 3 차원으로 표현될 수 있다.
제2 측면에서 보면, 본 발명은 또한 복수의 암호화된 데이터 세그먼트들을 포함하는 암호화된 데이터 파일을 복호화하는 방법으로서, 암호화된 데이터 세그먼트들의 길이들은 불균일하고 및/또는 암호화된 데이터 파일 내에서 암호화된 데이터 세그먼트들의 간격은 불균일한, 상기 방법을 제공하며, 상기 방법은, 제1 암호화된 데이터 세그먼트의 위치를 식별하고; 복호화 키를 사용하여 제1 암호화된 데이터 세그먼트를 복호화하는 단계; 및 각 후속 암호화된 데이터 세그먼트에 대해: 후속 암호화된 데이터 세그먼트의 위치를 식별하고; 이전에 사용된 임의의 복호화 키와 상이한 복호화 키를 사용하여 후속 암호화된 데이터 세그먼트를 복호화하는 단계를 포함한다.
제1 암호화된 데이터 세그먼트의 위치 및/또는 길이는 암호화된 데이터 파일을 복호화하기 전에 알려져 있을 수 있다. 예를 들어, 제1 암호화된 데이터 세그먼트의 위치는 암호화된 데이터 파일의 제1 비트와 같이 사전 합의될 수 있다. 대안적으로 또는 부가적으로, 제1 암호화된 데이터 세그먼트의 위치는 암호화된 데이터 파일에 포함될 수 있다. 예를 들어, 파일은 제1 데이터 비트의 위치를 나타내는 메타데이터를 포함할 수 있다. 메타데이터는 암호화되지 않은 형식일 수 있거나, 또는 이 또한 암호화될 수도 있다.
후속 암호화된 데이터 세그먼트의 위치 및 길이를 식별하는 단계는 이전 데이터 세그먼트에 포함된 식별자로부터 후속 암호화된 데이터 세그먼트의 위치 및 길이를 식별하는 단계를 포함할 수 있다. 예를 들어, 암호화된 데이터 세그먼트들은 연속되지 않은 순서로 암호화된 데이터 파일 내에 저장될 수 있다.
대안적으로, 암호화된 데이터 세그먼트들이 연속적인 순서로 암호화된 데이터 파일 내에 저장되는 경우, 데이터 세그먼트는 데이터 세그먼트의 말미를 나타내는 식별자를 포함할 수 있다. 따라서, 후속 암호화된 데이터 세그먼트의 위치를 식별하는 것은 이전 암호화된 데이터 세그먼트의 말미를 식별하는 것을 포함할 수 있다. 이는 바람직하게는 복호화 후에만 가능하다; 따라서 공격자는 여전히 원시 암호화된 데이터 파일에 기초하여 각 데이터 세그먼트의 길이를 결정할 수 없을 것이다.
데이터 세그먼트들은 데이터를 암호화 및 복호화하는 암호화 알고리즘을 사용하여 암호화될 수 있다. 데이터 세그먼트들은 블록 암호 암호화 알고리즘을 사용하여 암호화될 수 있다.
각 복호화 키는 물리적 복제방지 기능(PUF)로부터 도출될 수 있는 공통 시드 값으로부터 생성될 수 있다. 공통 시드 값은 바람직하게는 암호화된 데이터 파일 내에 포함되지 않는다. 예를 들어, 공통 시드 값은 사전 합의된 비밀 값일 수 있거나 예를 들어 공개 키 암호화를 사용하여 암호화된 데이터 파일로부터 개별적으로 교환될 수 있다.
각 데이터 세그먼트는 데이터 세그먼트의 적어도 일부의 무결성을 검증하기 위한 메시지 인증 코드를 포함할 수 있다. 메시지 인증 코드는 또한 이전 데이터 세그먼트의 적어도 일부의 무결성을 검증하기에 적합할 수 있다. 이전 세그먼트의 일부는 이전 세그먼트의 메시지 인증 코드를 포함한다.
상기 방법은 각 데이터 세그먼트에 대한 메시지 인증 코드를 생성하는 단계 및 생성된 메시지 인증 코드를 암호화된 데이터 세그먼트로부터의 메시지 인증 코드와 비교하는 단계를 더 포함할 수 있다.
또 다른 측면을 보면, 본 발명은 또한, 설명된 선택적인 또는 바람직한 특징들 중 어느 하나를 선택적으로 포함하는, 컴퓨터 프로그램, 또는 컴퓨터 프로그램 제품을 저장하는 유형의 컴퓨터 판독 가능 매체로서, 컴퓨터 프로그램 제품이, 프로세서에 의해 실행 시, 프로세서가 상기에 설명된 방법들 중 어느 하나를 수행하는 컴퓨터 실행 가능한 명령들을 포함하는, 상기 컴퓨터 프로그램 또는 상기 유형의 컴퓨터 판독 가능 매체를 포함한다는 것을 알 수 있다.
본 발명은 또한, 설명된 선택적인 또는 바람직한 특징들 중 어느 하나를 선택적으로 포함하는, 상기에 설명된 방법들 중 임의의 하나 이상을 수행하도록 배열된 전자 장치를 제공한다는 것을 알 수 있다. 예를 들어, 전자 장치는 암호화 방법 및 복호화 방법 둘 다를 수행하도록 적응될 수 있다.
전자 장치는, 예를 들어, 컴퓨팅 디바이스일 수 있거나 스마트카드일 수 있다.
제3 측면에서 보면, 본 발명은 또한 암호화된 데이터 파일로서, 복수의 암호화된 데이터 세그먼트들을 포함하며, 각 암호화된 세그먼트가 상이한 암호화 키로 암호화되고, 암호화된 데이터 세그먼트들의 길이들은 불균일하고 및/또는 암호화된 데이터 파일 내에서 암호화된 데이터 세그먼트들의 간격은 불균일한, 상기 암호화된 데이터 파일을 제공한다.
상기에 논의된 바와 같이, 제안된 암호화된 데이터 파일은 암호화된 데이터 세그먼트들의 길이들이 다르고 및/또는 데이터 세그먼트들이 암호화된 데이터 파일 내에서 불균일하게 이격되기 때문에 무차별 대입 공격을 사용하여 파기되기가 어렵고, 특히 병렬 컴퓨팅 공격에 강하며, 따라서 공격자는 병렬 기술들을 사용하여 암호화를 공격하기 위해서는 순차적으로 파일을 첨부해야 하거나 많은 추가 순열치환을 시도해야 한다는 것을 의미한다.
바람직하게는, 암호화 키들에 대응되는 복호화 키들 중 어느 것도 상기 암호화 키들 중 임의의 다른 키에 대응되는 복호화 키에 기초하여 계산될 수 없다.
암호화된 데이터 세그먼트들은 연속되지 않은 순서로 암호화된 데이터 파일 내에 저장될 수 있다. 각 데이터 세그먼트는 암호화된 데이터 파일 내에서 다음 암호화된 데이터 세그먼트의 위치 및/또는 길이를 식별하는 인디케이터를 포함할 수 있다.
암호화된 데이터 세그먼트들은, AES 알고리즘 또는 ECC 알고리즘과 같은, 데이터를 암호화 및 복호화하는 암호화 알고리즘을 사용하여 암호화될 수 있다.
각 데이터 세그먼트는 데이터 세그먼트의 적어도 일부의 무결성을 검증하기 위한 암호화된 메시지 인증 코드를 포함할 수 있다. 메시지 인증 코드는 또한 이전 데이터 세그먼트의 데이터 세그먼트의 적어도 일부의 무결성을 검증하기 위한 것이다. 이전 데이터 세그먼트의 일부는 이전 세그먼트의 메시지 인증 코드를 포함한다.
암호화된 데이터 파일은 암호화된 생체측정 데이터를 포함할 수 있으며, 각 데이터 세그먼트는 개별 개수의 생체측정 식별자의 특징점들을 정의하는 데이터를 나타낼 수 있다. 각 데이터 세그먼트는 생체측정 식별자의 단일 특징점을 정의하는 데이터를 나타낼 수 있다.
암호화된 데이터 파일은 제1 측면에 따른 방법에 의해 생성될 수 있으며, 그 방법 또는 그의 바람직한 측면들로부터 발생하는 임의의 특징들을 포함할 수 있다. 마찬가지로, 암호화된 데이터 파일은 제2 측면에 따른 방법들에 의해 복호화 가능할 수 있으며, 그 방법 또는 그의 바람직한 측면들에 사용하기 위해 요구되는 임의의 것들을 포함할 수 있다.
제4 측면에서 보면, 본 발명은 상기에 설명된 바와 같은 암호화된 데이터 파일을 저장하는 데이터 저장 요소를 제공한다.
본 발명은 또한 데이터 저장 요소를 포함하는 전자 장치를 제공할 수 있다. 전자 장치는 지불 카드와 같은 스마트카드일 수 있다.
전자 장치는, 임의의 선택적인 또는 바람직한 특징들을 선택적으로 포함하여, 제2 측면에서 설명된 바와 같은 암호화 방법을 수행하도록 배열된다.
암호화된 데이터 파일은 암호화된 생체측정 데이터를 포함할 수 있으며, 각 데이터 세그먼트는 개별 개수의 생체측정 식별자의 특징점을 정의하는 데이터를 나타내며, 장치는 생체측정 센서를 포함할 수 있다. 장치는 복호화된 생체측정 데이터와 생체측정 센서를 사용하여 스캐닝된 생체측정 데이터를 비교하도록 추가로 배열될 수 있다.
이제 본 발명에 대한 특정 바람직한 실시예들이 단지 예시로서 다음과 같은 첨부 도면들을 참조하여 보다 상세히 설명될 것이다:
도 1은 암호화 과정의 단계를 예시한다;
도 2는 생체 측정 인증 스마트카드로 암호화 데이터 파일을 전송하는 컴퓨팅 디바이스를 예시한다; 그리고
도 3은 스마트카드의 보안 메모리에 저장된 수신된 암호화 데이터 파일의 구조 및 관련 비밀 메타데이터의 구조를 예시한다.
이하의 실시예는 n 차원으로 정보를 분할하는(각각 개별 생체측정 특징점 벡터들을 나타내는) 병렬 컴퓨팅 방지 및 양자 컴퓨팅 방지 데이터 보호 프로세스를 설명한다. 데이터 요소들은 순차적으로 저장되는 것이 아니라, 각각 하나의 기록에서부터 다른 기록까지 상이한 데이터 속성들을 갖는 개별 요소들(섹션화된 생체측정 정보와 같은 고정 길이 데이터를 반드시 포함하지는 않음)로 나뉜다. 그런 다음, 이러한 기록들은 연속적이고 점진적인 키 변환에 따라 달라지는 변형 암호화 키(mutating encryption key)로 보호된다.
암호화는 저장된 정보의 무결성을 더욱 보장하기 위해 메시지 인증 코드(MAC)에 따라 보안을 향상시키기 위해 (아래에 논의된 다양한 기법들에 기초하여 순열치환될 수 있는) 지속적으로 순열치환되는 암호화 키를 사용한다. 정적 키(static key)(모든 데이터 요소들에 공통)와 달리, 암호화 키를 순열치환하면, 양자 컴퓨터에 의한 공격과 같은 병렬 컴퓨팅 공격뿐만 아니라 무차별 대입 공격을 더 잘 견딜 수 있기 때문에, 암호화된 데이터 추출의 어려움이 증가될 수 있다.
종래(선행) 구현예의 복수의 데이터 저장 요소들의 프로세싱은 다음과 같다:
● 송신자(sender)와 수신자(receiver)는 생체측정 데이터를 전송하기 전에 사용될 비밀 키에 합의한다. 예를 들어, 공개 키 암호화를 사용하거나, 공개 키 교환(디피-헬만(Diffie-Hellman) 키 교환)을 사용하거나, 사전 협상을 사용한다.
● 송신자는 비밀 키를 사용하여 암호화된 수신자에 대한 데이터를 전송한다. 송신자는 또한 수신자에게도 전달되는 전송 데이터 및 비밀 키에 기초하여 메시지 인증 코드를 생성한다.
● 상대편에서, 수신자는 비밀 키를 사용하여 데이터를 복호화한다.
● 수신자는 상대편에서 손상되지 않은 데이터가 수신되는 것을 보장하기를 원하며, 송신자가 그 데이터를 실제로 보냈다는 보증을 원한다. 이를 위해, 수신자는 수신된 데이터와 비밀 키에 기초하여 메시지 인증 코드를 생성하고, 그 값을 송신자로부터 메시지와 함께 수신된 메시지 인증 코드와 비교한다.
● 계산된 값이 수신된 값과 다르면, 그 데이터는 도중에 변경되어 스마트카드가 무용지물이 된 것으로 가정될 수 있다.
● 계산된 값이 수신된 값과 동일하면, 그 데이터는 무결성 및 인증 테스트를 통과한 것으로 가정될 수 있다.
"일회성 키(one-time-key)" 암호화 기반 접근 방법과 유사한 더 높은 수준의 엔트로피 정보 보호를 달성하려면, 변형, 자체 검증, 점진적 키 마이그레이션 프로세스를 도입하여 달성할 수 있으며, 이는 본질적으로 QC 기반 취약성의 악용을 방지하는 계산상 복잡성을 추가한다. 순열치환되는 암호화 키를 추가로 적용하면 보호를 강화하고, 이전에 인코딩된 특징점 맵(map)의 재현(recreation)에 엔트로피 및 순차적 계산 시행 둘 모두가 추가된다.
임의의 재생 가능한 기능이 키를 순열치환하는데 사용될 수 있지만, 이 기능은 바람직하게는 적어도 비-가역적 기능이어야 한다. 키 순열치환 프로세스를 수행하기 위한 예시적인 기법들은 일회성 패스워드의 생성을 위해 공지된 기법을 포함할 수 있다. 바람직한 실시예에서, 키 순열치환 프로세스는 유전 변이 알고리즘(genetic mutation algorithm)을 사용한다. 일부 실시예들에서, 키 순열치환 알고리즘은 키가 순열치환될 때마다 생성된 키의 길이가 변경되도록 허용할 수 있다.
키의 순열치환을 위한 적합한 유전 변이 알고리즘 기법들의 특정 예들은 다음 논문들에서 찾을 수 있다:
아라그, 실만(ARRAG, Silman) 등의, "Replace AES Key Expansion Algorithm by Modified Genetic Algorithm", 어플라이드 매스매티컬 사이언스, 2013년, Vol. 7. no. 144, 7161-7171, 데비, 에스(DEVI, S.) 등의 "A Public Key Cryptosystem using ECC and Genetic Algorithm", 인터내셔널 저널 오브 엔지니어링 리서치 앤 테크놀로지, 2014년 2월, Vol. 3, Issu2.
예시된 실시예에 따른 복수의 데이터 저장 요소들의 프로세싱은 다음과 같으며, 도 1에 도식적으로 도시된다.
● 송신자와 수신자는 생체측정 데이터를 전송하기 전에 사용될 비밀 키 시드(secret key seed)에 합의한다. 상기와 같이, 이는 공개 키 암호화, 공개 키 교환을 사용하거나, 또는 사전 협상에 의해 합의할 수 있다. 일 실시예에서, 비밀 키 시드는 물리적 복제방지 기능(physically unclonable function; PUF) 또는 스마트카드와 같은 디바이스의 다른 고유한, 물리적으로 도출할 수 있는 특성으로부터 도출될 수 있다.
● 그런 다음, 데이터는 복수의 데이터 세그먼트들로 분할된다. 예를 들어, 생체측정 데이터의 경우, 각 데이터 세그먼트는 단일 특징점을 나타낼 수 있다.
데이터 세그먼트는 반드시 동일한 길이일 필요는 없으며, 옵션으로서 각 데이터 세그먼트의 시작 비트들 사이에 불균일한 간격을 생성하도록 랜덤 데이터가 데이터 세그먼트들 사이에 추가될 수 있다.
● 다음으로, 데이터 세그먼트들이 암호화될 순서인 암호화 순서가 생성된다. 순서는 바람직하게는 적어도 비-순차적이며 랜덤이거나 의사 랜덤(pseudo-random)일 수 있다. 이 순서는 암호화 장치에서 국지적으로 생성될 수 있으며, 예정될 필요는 없다.
그러나, 수취자는 암호화 순서의 제1 데이터 세그먼트를 식별할 수 있어야 한다. 예를 들어, 포인터는 제1 데이터 세그먼트를 식별하기 위해 암호화되지 않은 포맷에 포함될 수 있거나, 또는 시작 데이터 세그먼트가 수취자, 예를 들어, 제1 데이터 세그먼트와 사전 합의될 수 있다.
● 다음으로, 암호화 순서에서 다음 세그먼트를 나타내는 포인터가 각각의 데이터 세크먼트들(물론 최종 세그먼트는 제외)에 추가된다.
● 그런 다음, 데이터 세그먼트는 암호화 순서에서 설정된 순서로 하나씩 암호화된다. 각 세그먼트에 대한 암호화 프로세스는 다음과 같다:
o 키 시드(key seed)가 변형된다. 예를 들어, 키 시드는 제1 단방향 함수에 의해 수정될 수 있다.
o 다음으로, 예를 들어, 변형된 키 시드에 제2의, 다른 단방향 함수를 사용하여 암호화 키가 생성된다. 상이한 단방향 함수들을 사용함으로써, 이전 키는 후속 키를 계산하는데 사용될 수 없다.
o 코딩된 선택적 메시지 인증이 (아래에 논의되는 바와 같이) 생성되어 데이터 세그먼트에 추가될 수 있다.
o 데이터 세그먼트는 생성된 암호화 키를 사용하여 암호화된다.
따라서, 각 데이터 세그먼트는 다음 세그먼트에 대한 링크를 포함하며, 순열치환되는 키 시드(permutating key seed)로부터 계산된 상이한 암호화 키를 사용하여 암호화된다.
이러한 유형의 프로세싱은 복수의 암호화 키들이 사용되고 각 키는 비교적 적은 비율의 데이터만을 암호화하기 때문에 무차별 대입 공격(brute force attacks)에 대한 내성이 강하다. 그러나, 암호화 키들은 상대적으로 쉽게 계산될 수 있으므로 암호화 및 복호화 과정을 크게 지연시키지 않는다.
게다가, 프로세싱은 양자 컴퓨터와 같은 극도의 병렬 처리 디바이스들로부터의 공격에 특히 강하다. 이는 파일 내에서 다음 세그먼트들이 어디에 위치되는지를 알기 위해서는 이전 세그먼트들이 해독되어야 하기 때문이다. 인증되지 않은 자가 강제로 전체 파일을 해독하려고 시도하는 경우, 컴퓨팅 디바이스는 각 암호화된 세그먼트가 어디서 시작되고 끝나는지를 알지 못할 것이며, 따라서 테스트해야 할 가능한 순열치환의 수가 크게 증가할 것이다.
옵션으로서, 다양한 데이터 세그먼트를 암호화하는데 상이한 키 길이 및/또는 상이한 암호화 알고리즘이 사용될 수 있다. 이 경우, 각 데이터 세그먼트는 후속 데이터 블록에 사용될 키 길이 및/또는 암호화 알고리즘의 인디케이션(indication)을 포함할 수 있다. 이 경우, 암호화/복호화 키를 생성하는데 사용된 단방향 기능은 적절한 키를 행성하기 위해 표시된 키 길이 및/또는 암호화 알고리즘에 기초하여 선택될 수 있다.
상기에 논의된 바와 같이, 보안층을 추가하도록 메시지 인증 코드(message authentication code; MAC)가 생체 데이터와 공존할 수 있다. 메시지 인증은 데이터의 진위성(authenticity) 및 무결성(integrity)을 검증하기 위해 암호체계에 사용된 방법이다. 메시지 인증의 무결성 측면은 데이터가 의도된 수취자에 도달하기 전에 어떠한 방식으로든 수정되거나 변경되지 않음을 보장하는 것과 관련이 있으며, 진위성 측면은 수신자가 데이터가 발신될 것으로 예상되는 엔티티(entity)로부터 데이터가 발신되는 것임을 보장하는 것과 관련이 있다. 각 MAC는 이전 MAC에 링크되며 다양한 정도의 검증 요건들로 프로그램될 수 있다. MAC 길이는 가변 길이(variable lengths)일 수 있으며, 이 가변 길이는 데이터 세그먼트 길이를 변경함으로써 알고리즘을 해킹하는 것을 보다 어렵게 만들기 때문에 추가 이점을 제공한다.
임의의 데이터 세그먼트의 손상은 파일의 나머지 부분을 판독할 수 없게 될 것이므로 암호화된 데이터 파일은 강력한 오류 수정 보호 기능을 포함해야 한다.
암호화된 데이터 파일을 해독하기 위해, 다음과 같이 암호화부의 프로세스가 반대로 수행된다.
● 송신자와 수신자는 생체측정 데이터를 전송하기 전에 사용될 비밀 키 시드에 합의한다.
● 수신자는 상기에 논의된 바와 같이 암호화된 송신자로부터 암호화된 데이터 파일을 수신한다.
● 수신자는 암호화 순서의 제1 데이터 세그먼트를 식별한다. 예를 들어, 상기에 논의된 바와 같이, 포인터는 제1 데이터 세그먼트를 식별하기 위해 암호화되지 않은 포맷에 포함될 수 있거나, 또는 시작 데이터 세그먼트가 송신자와 사전 합의될 수 있다.
● 그런 다음, 데이터 세그먼트들은 다음과 같이 하나씩 복호화된다:
o 키 시드가 변형된다. 예를 들어, 키 시드는 단방향 함수에 의해 수정될 수 있다.
o 다음으로, 예를 들어, 변형된 키 시드에 다른 단방향 함수를 사용하여 암호화/복호화 키가 생성된다.
o 데이터 세그먼트는 생성된 암호화 키를 사용하여 복호화된다.
o 옵션으로서, 메시지 인증 코드가 생성되고 데이터 세그먼트에 포함된 메시지 인증 코드와 비교된다.
알고리즘은 스마트카드와 같은 계산적으로 제약된 환경뿐만 아니라 하드웨어 및 소프트웨어에서 쉽게 구현되는 것으로 잘 알려진 대칭 및 비대칭 알고리즘 둘 다에 의해 실현될 수 있으며, 다양한 공격 기술들에 대한 우수한 방어를 제공한다. 대칭 및 비대칭 알고리즘 모두 순열치환 키를 사용하여 스마트카드의 제약된 컴퓨팅 환경에서 빠르고 효율적으로 처리될 수 있다. 사용될 수 있는 예시적인 암호화 알고리즘이 아래에 논의된다.
고급 암호 표준(Advanced Encryption Standard)(“AES”) 데이터 암호화는, 예를 들어, 수학적으로 효율적인 암호 알고리즘이지만, 그 주요 강점은 키 길이 옵션에 있다. 암호화 알고리즘을 크랙킹(crack)하는데 필요한 시간은 통신을 보안하는데 사용된 키의 길이와 직접 관련된다.
AES는 128 비트, 192 비트 및 256 비트의 암호화 키드을 사용하여 128 비트 블록의 데이터를 암호화 및 복호화한다. 128 비트 키의 경우에 대해서는 10 라운드, 256 비트 키의 경우 14 라운드가 있다 - 라운드(round)는 입력 평문(input plaintext)의 대체(substitution), 전치(transposition) 및 혼합(mixing)을 포함하는 여러 프로세싱 단계들로 구성되며, 암호문의 최종 출력으로 변환한다.
이 알고리즘의 키 확장은 AES에 취약한 키가 없음을 보장하는데 도움이 된다. 취약한 키는 예측 가능한 방식으로 암호문의 보안을 감소시키는 키이다. 예로서, DES는 취약한 키를 가진 것으로 알려져 있다. DES의 취약한 키는 16 라운드 마다 동일한 라운드 키를 생성하는 키이다. 이러한 종류의 DES의 취약한 키는 모든 라운드 키들이 동일해지도록 하여, 암호화가 번갈아 자가-반전(self-inverting)되게 한다. 즉, 평문이 암호화된 다음 다시 암호화되면, 동일한 평문으로 되돌릴 것이다. 이는, 아래에 설명된, AES나 타원 곡선 암호에서는 발생할 수 없다.
타원 곡선 암호(Elliptical Curve Cryptography)("ECC")는 비교적 짧은 암호화키에 사용되는 효율적인 암호화 알고리즘이다. RSA와 같은 다른 1세대 암호화 공개 키 알고리즘들보다 더 빠르며, 더 적은 컴퓨팅 능력을 요구하며, 이는 저전력 및 계산상 제약 환경에 바람직하게 된다. 예를 들어, 160 비트 ECC 암호화 키는 1024 비트 RSA 암호화 키와 동일한 보안을 제공하며, 구현되는 플랫폼에 따라 15 배까지 더 빠를 수 있다.
타원 곡선은 두 축을 교차하는 루핑선(looping line)으로 표시된다. ECC는 라인이 축들과 교차하는 지점들로부터 도출된 수학적 그룹으로부터 생성된 특정 유형의 방정식의 특성들에 기초한다. 곡선 상의 한 지점에 숫자를 곱하면 곡선상에 다른 지점이 생기지만, 원시 지점과 지점과 결과를 알고 있더라도 사용된 숫자를 찾기가 매우 어렵다. 타원 곡선에 기초한 방정식은 암호화 목적에 매우 중요할 수 있는 특성을 갖는다: 이들은 수행하는 것이 비교적 쉽지만 그 반대는 매우 어렵다.
도 2는 암호화 알고리즘이 컴퓨팅 디바이스(100)에서 생체 인식 스마트카드(202)로 전송되는 생체측정 데이터를 보호하는데 사용되는 예시적인 상황을 예시한다.
스마트카드(202)는 온-보드 지문 센서(230) 및 스마트카드(202)의 베어러(bearer)의 지문 확인을 위한 내부 제어 유닛(도시되지 않음)을 포함한다. 스마트카드(202)는, 예를 들어, 카드 베어러의 신원의 확인 후에만 액세스 또는 지불 거래를 허용하는 출입관리카드(access card) 또는 지불카드(payment card)일 수 있다. 이러한 디바이스들은, WO2016/055665에 설명된 바와 같이, 본 기술분야의 숙련자들에게 알려질 것이며, 구체적인 세부사항들은 본 출원에 명시되지 않을 것이다.
예시된 실시예에서, 생체측정 템플릿은 중앙 컴퓨터(100)에 저장된다. 생체측정 템플릿은 사용자 지문의 복수의 특징점들, 예를 들어, 릿지 말미(ridge endings) 및 릿지 분기(ridge bifurcations)를 나타내는 데이터로 구성된다. 각 특징점은, 예를 들어, 좌표 위치 및 특징점 각도로 표현될 수 있다. 각 특징점을 나타내는 데이터는 또한 각 특징점에 이웃하는 다른 특징점들의 상대적 위치들을 정의하는 데이터를 포함할 수 있다.
사용자가 신규 스마트카드(202)를 발급받았을 때, 그들의 생체측정 템플릿을 스마트카드 상에 임베딩하는 것이 필요하다. WO2016/055665의 시스템은 사용자가 온-보드 지문 센서(230)를 사용하여 스마트카트에 직접 등록하도록 한다. 그러나, 인증되지 않은 사람이 그들의 생체측정 데이터를 인터셉트하여 거짓으로 등록할 수 있는 위험이 있다. 따라서, 사용자는 그들의 신원이 확인될 수 있는 은행과 같은 안전한 위치에서 그들의 생체측정 데이터를 한번 등록할 수 있으며, 이 생체측정 템플릿은 컴퓨팅 디바이스(100)에 저장될 수 있다.
생체측정 템플릿을 스마트카드(202)에 등록하기 위해서는, 따라서 생체측정 템플릿을 스마트카드(202)로 전송하는 것이 필요하다. 따라서, 템플릿은 템플릿이 인터셉트되는 경우 판독되거나 사용될 수 없도록 하는 것이 바람직하다. 따라서, 생체측정 템플릿을 암호화하는 것이 필요하다.
각 스마트카드(202)는 고유한, 비빌 키로 미리 프로그램된다. 이는 스마트카드(202)의 보안 메모리(210)에 저장되며, 컴퓨터(100)의 보안 데이터베이스에도 저장될 수 있다.
전송 전에, 생체측정 템플릿은 먼저 상기에 설명된 기술을 사용하여 그리고 스마트카드(202)의 비밀 키를 암호화 키 시드로 사용하여 암호화된다. 암호화에 사용된 각 데이터 세그먼트는 특징점들 중 단일 특징점을 나타내며, 키는 각 세그먼트에 대해 치환된다. 결과적인 암호화된 데이터 파일은 그런 다음 컴퓨팅 디바이스(100)에서 스마트카드(202)로 전송된다.
도 3에 예시된 바와 같이, 스마트카드 메모리(210)는 비밀 키를 저장하며, 이는 암호화된 데이터 파일을 복호화하고, MAC들을 사용하여 데이터 파일을 검증한 다음 스마트카드(202)의 보안 메모리(210) 내의 생체측정 템플릿에 대응되는 특징점 맵을 재구성하는데 사용될 수 있다.
상기 실시예는 전송의 맥락에서 설명되는 반면, 설명된 암호화 기술은 또한 데이터의 안전한 저장을 위해 사용될 수 있음이 이해될 것이다. 예를 들어, 카드 자체에 생체측정 등록할 경우, 생체측정 템플릿을 전송할 필요가 없다. 바람직하게는 템플릿은 고유 PUF, 또는 디바이스에 고유한 동등한 키를 사용하여 암호화된다. 이러한 방식으로, 암호화된 템플릿이 획득되더라도, 임의의 다른 센서/스마트카드에서는 사용될 수 없다.

Claims (37)

  1. 복수의 데이터 세그먼트들을 포함하는 데이터를 암호화하는 방법에 있어서, 상기 방법은,
    복수의 암호화된 데이터 세그먼트들을 부여하기 위해 각각의 상기 데이터 세그먼트들을 암호화하는 단계로서, 상이한 암호화 키가 각 데이터 세그먼트를 암호화하는데 사용되는, 단계, 및
    상기 암호화된 데이터 세그먼트들을 포함하는 암호화된 데이터 파일을 생성하는 단계
    를 포함하며,
    상기 암호화된 데이터 세그먼트들의 길이들은 불균일하고 및/또는 상기 암호화된 데이터 파일 내에서 상기 암호화된 데이터 세그먼트들의 간격은 불균일하고;
    각 데이터 세그먼트는 상기 암호화된 데이터 파일 내에서 다음 암호화된 데이터 세그먼트의 위치 및/또는 길이를 식별하는 인디케이터를 포함하는,
    방법.
  2. 제1항에 있어서, 상기 암호화 키들에 대응되는 복호화 키들 중 어느 것도 상기 암호화 키들 중 임의의 다른 하나에 대응되는 복호화 키에 기초하여 계산될 수 없는, 방법.
  3. 제1항 또는 제2항에 있어서, 상기 암호화된 데이터 세그먼트들은 연속되지 않은 순서로 상기 암호화된 데이터 파일 내에 저장되는, 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 데이터 세그먼트들은 타원 곡선 암호(ECC) 암호화 알고리즘을 사용하여 암호화되는, 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 각 암호화 키는 공통 시드 값으로부터 생성되는, 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서, 각 암호화 키는 도출된 물리적 복제방지 기능(PUF)으로부터 생성되는, 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 각 데이터 세그먼트는 상기 데이터 세그먼트의 적어도 일부의 무결성을 검증하기 위한 메시지 인증 코드를 포함하는, 방법.
  8. 제7항에 있어서, 상기 메시지 인증 코드 또한 이전 데이터 세그먼트의 적어도 일부의 무결성을 검증하기 위한 것인, 방법.
  9. 제8항에 있어서, 상기 이전 세그먼트의 상기 일부는 상기 이전 세그먼트의 메시지 인증 코드를 포함하는, 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서, 상기 데이터는 생체측정 데이터를 포함하며, 각 데이터 세그먼트는 개별 개수의 상기 생체측정 식별자의 특징점을 정의하는 데이터를 나타내는, 방법.
  11. 제10항에 있어서, 각 데이터 세그먼트는 상기 생체측정 식별자의 단일 특징점을 정의하는 데이터를 나타내는, 방법.
  12. 복수의 암호화된 데이터 세그먼트들을 포함하는 암호화된 데이터 파일을 복호화하는 방법으로서,
    상기 암호화된 데이터 세그먼트들의 길이들은 불균일하고 및/또는 상기 암호화된 데이터 파일 내에서 상기 암호화된 데이터 세그먼트들의 간격은 불균일한,
    상기 방법에 있어서,
    제1 암호화된 데이터 세그먼트의 위치를 식별하고;
    복호화 키를 사용하여 상기 제1 암호화된 데이터 세그먼트를 복호화하는 단계; 및
    각 후속 암호화된 데이터 세그먼트에 대해:
    이전 데이터 세그먼트에 포함된 인디케이터에 기초하여 상기 후속 암호화된 데이터 세그먼트의 위치를 식별하고;
    이전에 사용된 임의의 복호화 키와 상이한 복호화 키를 사용하여 상기 후속 암호화된 데이터 세그먼트를 복호화하는 단계
    를 포함하는, 방법.
  13. 제12항에 있어서, 상기 제1 암호화된 데이터 세그먼트의 상기 위치는 상기 암호화된 데이터 파일을 복호화하기 전에 알려져 있는, 방법.
  14. 제12항 또는 제13항에 있어서, 상기 제1 암호화된 데이터 세그먼트의 상기 위치는 상기 암호화된 데이터 파일에 포함되는, 방법.
  15. 제12항 내지 제14항 중 어느 한 항에 있어서, 상기 암호화된 데이터 세그먼트들은 연속되지 않은 순서로 상기 암호화된 데이터 파일 내에 저장되는, 방법.
  16. 제12항 내지 제15항 중 어느 한 항에 있어서, 각 복호화 키는 공통 시드 값으로부터 생성되며, 상기 공통 시드 값은 상기 암호화된 데이터 파일 내에 포함되지 않는, 방법.
  17. 제12항 내지 제16항 중 어느 한 항에 있어서, 각 데이터 세그먼트는 상기 데이터 세그먼트의 적어도 일부의 무결성을 검증하기 위한 메시지 인증 코드를 포함하는, 방법.
  18. 제17항에 있어서, 상기 메시지 인증 코드 또한 이전 데이터 세그먼트의 적어도 일부의 상기 무결성을 검증하기 위한 것인, 방법.
  19. 제18항에 있어서, 상기 이전 세그먼트의 상기 일부는 상기 이전 세그먼트의 메시지 인증 코드를 포함하는, 방법.
  20. 제17항, 제18항 또는 제19항에 있어서,
    각 데이터 세그먼트에 대한 메시지 인증 코드를 생성하는 단계 및 상기 생성된 메시지 인증 코드를 상기 암호화된 데이터 세그먼트로부터의 상기 메시지 인증 코드와 비교하는 단계를 더 포함하는, 방법.
  21. 컴퓨터 프로그램 또는 컴퓨터 프로그램을 저장하는 유형의 컴퓨터 판독 가능 매체에 있어서, 상기 컴퓨터 프로그램은, 프로세서에 의해 수행 시, 상기 프로세서가 제1항 내지 제20항 중 어느 한 항에 따른 방법을 수행하도록 하는 컴퓨터 실행 가능한 명령들을 포함하는, 컴퓨터 프로그램 또는 유형의 컴퓨터 판독 가능 매체.
  22. 제1항 내지 제11항 중 어느 한 항에 따른 방법 및/또는 제12항 내지 제20항 중 어느 한 항에 따른 방법을 수행하도록 배열된 전자 장치.
  23. 복수의 암호화된 세그먼트들을 포함하는 암호화된 데이터 파일에 있어서,
    각 암호화된 데이터 세그먼트는 상이한 암호화 키로 암호화되며, 상기 암호화된 데이터 세그먼트들의 길이들은 불균일하고 및/또는 상기 암호화된 데이터 파일 내에서 상기 암호화된 데이터 세그먼트들의 간격은 불균일하며, 각 데이터 세그먼트는 상기 암호화된 데이터 파일 내에서 다음 암호화된 데이터 세그먼트의 위치 및/또는 길이를 식별하는 인디케이터를 포함하는, 암호화된 데이터 파일.
  24. 제23항에 있어서, 상기 암호화 키들에 대응되는 복호화 키들 중 어느 것도 상기 암호화 키들 중 임의의 다른 하나에 대응되는 복호화 키에 기초하여 계산될 수 없는, 암호화된 데이터 파일.
  25. 제23항 또는 제24항에 있어서, 상기 암호화된 데이터 세그먼트들은 연속되지 않은 순서로 상기 암호화된 데이터 파일 내에 저장되는, 암호화된 데이터 파일.
  26. 제23항 내지 제25항 중 어느 한 항에 있어서, 상기 암호화된 데이터 세그먼트들은 타원 곡선 암호(ECC) 암호화 알고리즘을 사용하여 암호화되는, 암호화된 데이터 파일.
  27. 제23항 내지 제26항 중 어느 한 항에 있어서, 각 데이터 세그먼트는 상기 데이터 세그먼트의 적어도 일부의 무결성을 검증하기 위한 암호화된 메시지 인증 코드를 포함하는, 암호화된 데이터 파일.
  28. 제27항에 있어서, 상기 메시지 인증 코드 또한 이전 데이터 세그먼트의 적어도 일부의 데이터 세그먼트의 무결성을 검증하기 위한 것인, 암호화된 데이터 파일.
  29. 제28항에 있어서, 상기 이전 데이터 세그먼트의 상기 일부는 상기 이전 데이터 세그먼트의 메시지 인증 코드를 포함하는, 암호화된 데이터 파일.
  30. 제23항 내지 제29항 중 어느 한 항에 있어서, 상기 암호화된 데이터 파일은 암호화된 생체측정 데이터를 포함하며, 각 데이터 세그먼트는 개별 개수의 상기 생체측정 식별자의 특징점을 정의하는 데이터를 나타내는, 암호화된 데이터 파일.
  31. 제30항에 있어서, 각 데이터 세그먼트는 상기 생체인증 식별자의 단일 특징점을 정의하는 데이터를 나타내는, 암호화된 데이터 파일.
  32. 제23항 내지 제31항 중 어느 한 항에 따른 암호화된 데이터 파일을 저장하는 데이터 저장 요소.
  33. 제32항에 따른 데이터 저장 요소를 포함하는 전자 장치.
  34. 제33항에 있어서, 상기 전자 장치는 스마트카드이고, 바람직하게는 지불 카드인, 전자 장치.
  35. 제33항 또는 제34항에 있어서, 상기 전자 장치는 제12항 내지 제20항 중 어느 한 항에 따른 방법을 수행하도록 배열되는, 전자 장치.
  36. 제35항에 있어서, 상기 암호화된 데이터 파일은 암호화된 생체측정 데이터를 포함하며, 각 데이터 세그먼트는 개별 개수의 상기 생체측정 식별자의 특징점을 정의하는 데이터를 나타내는, 전자 장치.
  37. 제36항에 있어서, 상기 장치는 생체측정 센서를 포함하며, 상기 복호화된 생체측정 데이터와 상기 생체측정 센서를 사용하여 스캐닝된 생체측정 데이터를 비교하도록 추가로 배열된, 전자 장치.
KR1020197032592A 2017-06-01 2018-05-31 점진적 키 암호화 알고리즘 KR20200012845A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762513730P 2017-06-01 2017-06-01
US62/513,730 2017-06-01
GB1710329.2 2017-06-28
GB1710329.2A GB2563294A (en) 2017-06-01 2017-06-28 Progressive key encryption Algorithm
PCT/EP2018/064373 WO2018220138A1 (en) 2017-06-01 2018-05-31 Progressive key encryption algorithm

Publications (1)

Publication Number Publication Date
KR20200012845A true KR20200012845A (ko) 2020-02-05

Family

ID=59523494

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197032592A KR20200012845A (ko) 2017-06-01 2018-05-31 점진적 키 암호화 알고리즘

Country Status (8)

Country Link
US (1) US20200106600A1 (ko)
EP (1) EP3632033A1 (ko)
JP (1) JP2020522205A (ko)
KR (1) KR20200012845A (ko)
CN (1) CN110710155A (ko)
GB (1) GB2563294A (ko)
TW (1) TW201904231A (ko)
WO (1) WO2018220138A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024058298A1 (ko) * 2022-09-16 2024-03-21 조금배 Hard sat 생성 방법 및 sat에 기반을 둔 양자 내성 암호 알고리즘 구현 방법

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10546138B1 (en) 2016-04-01 2020-01-28 Wells Fargo Bank, N.A. Distributed data security
TWI741413B (zh) * 2018-11-27 2021-10-01 大陸商上海耕岩智能科技有限公司 指紋加密方法、指紋加密傳輸方法、解密方法及裝置、存儲介質、終端
WO2020159328A1 (ko) * 2019-02-01 2020-08-06 주식회사 아이씨티케이 홀딩스 인증 정보 처리 방법 및 장치와 인증 정보 처리 방법 장치를 포함한 사용자 단말
CN110048856B (zh) * 2019-04-25 2022-05-31 高创(苏州)电子有限公司 数据传输方法、装置和pos机系统
WO2020263298A1 (en) * 2019-06-26 2020-12-30 Google Llc Data authentication for storage systems
US11218303B2 (en) * 2020-03-27 2022-01-04 Ahp-Tech Inc. Quantum attack-resistant system to facilitate and enhance processes of cryptography key exchange
CN111711645A (zh) * 2020-08-19 2020-09-25 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN112184444B (zh) * 2020-09-29 2023-08-18 平安科技(深圳)有限公司 基于信息的特征进行信息处理的方法、装置、设备及介质
US11502830B2 (en) 2020-10-12 2022-11-15 Kyndryl, Inc. Ultrasound split key transmission for enhanced security
CN113901503A (zh) * 2021-10-26 2022-01-07 北京云迹科技有限公司 一种加密方法、加密装置和解密方法、解密装置
WO2023095242A1 (ja) * 2021-11-25 2023-06-01 富士通株式会社 認証方法、認証プログラム、および情報処理装置
US20230185940A1 (en) * 2021-12-13 2023-06-15 Docusign, Inc. Batch processing of audit records
CN114329104B (zh) * 2021-12-23 2022-07-08 珠海市鸿瑞信息技术股份有限公司 一种基于电力配电的报文加密传输系统及方法
US11620393B1 (en) * 2022-05-14 2023-04-04 Aswath Premaradj System and method for facilitating distributed peer to peer storage of data
US20240021041A1 (en) * 2022-07-15 2024-01-18 Capital One Services, Llc Techniques for personal identification number management for contactless cards

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2288519A (en) * 1994-04-05 1995-10-18 Ibm Data encryption
US6490353B1 (en) * 1998-11-23 2002-12-03 Tan Daniel Tiong Hok Data encrypting and decrypting apparatus and method
US7003107B2 (en) * 2000-05-23 2006-02-21 Mainstream Encryption Hybrid stream cipher
US7242772B1 (en) * 2000-09-07 2007-07-10 Eastman Kodak Company Encryption apparatus and method for synchronizing multiple encryption keys with a data stream
US7382878B2 (en) * 2001-06-22 2008-06-03 Uponus Technologies, Llc System and method for data encryption
US9344278B2 (en) * 2011-10-18 2016-05-17 Broadcom Corporation Secure data transfer using random ordering and random block sizing
US8744078B2 (en) * 2012-06-05 2014-06-03 Secure Channels Sa System and method for securing multiple data segments having different lengths using pattern keys having multiple different strengths
US9397830B2 (en) * 2012-12-30 2016-07-19 Raymond Richard Feliciano Method and apparatus for encrypting and decrypting data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024058298A1 (ko) * 2022-09-16 2024-03-21 조금배 Hard sat 생성 방법 및 sat에 기반을 둔 양자 내성 암호 알고리즘 구현 방법

Also Published As

Publication number Publication date
US20200106600A1 (en) 2020-04-02
GB2563294A (en) 2018-12-12
CN110710155A (zh) 2020-01-17
EP3632033A1 (en) 2020-04-08
WO2018220138A1 (en) 2018-12-06
TW201904231A (zh) 2019-01-16
GB201710329D0 (en) 2017-08-09
JP2020522205A (ja) 2020-07-27

Similar Documents

Publication Publication Date Title
KR20200012845A (ko) 점진적 키 암호화 알고리즘
US20060195402A1 (en) Secure data transmission using undiscoverable or black data
CN103413159B (zh) 一种基于cpk的rfid电子凭证离线鉴真防伪实现方法及系统
CA2373787C (en) Self authentication ciphertext chaining
CN110381055B (zh) 医疗供应链中的rfid系统隐私保护认证协议方法
CN111327419B (zh) 基于秘密共享的抗量子计算区块链的方法及系统
CN104376465A (zh) 一种安全的移动支付方法
JP2009272737A (ja) 秘匿認証システム
CN109347923A (zh) 基于非对称密钥池的抗量子计算云存储方法和系统
CN101588238A (zh) 制证系统中证件卡的加密和解密的方法
CN110768782B (zh) 基于非对称密钥池和ibs的抗量子计算rfid认证方法及系统
CN110620764B (zh) 基于非对称密钥池和二次剩余的抗量子计算rfid认证方法及系统
CN105873043B (zh) 一种用于移动终端的网络私匙的生成及应用方法及其系统
CN104820807B (zh) 一种智能卡数据处理方法
JP5378702B2 (ja) 秘匿認証システム
US20160224979A1 (en) System and Method for Encryption of Financial Transactions Using One-Time Keys (Transaction Pad Encryption)
CN109948387A (zh) 基于二次剩余轻量级rfid的群组标签认证方法
Abiega-L’Eglisse et al. A new fuzzy vault based biometric system robust to brute-force attack
CN114491591A (zh) 一种匿踪查询的数据使用授权方法、设备、存储介质
CN104780049B (zh) 一种安全读写数据的方法
US8681972B2 (en) Method of executing a cryptographic calculation
CN114244509A (zh) 使用移动终端进行sm2一次一密双向认证开锁的方法
CN114244529A (zh) 使用电子钥匙进行sm2一次一密双向认证开锁的方法
CN110113152B (zh) 基于非对称密钥池对和数字签名的量子通信服务站密钥协商方法和系统
CN107766725B (zh) 抗模板攻击的数据传输方法及系统