KR102564618B1 - 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법 - Google Patents

송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법 Download PDF

Info

Publication number
KR102564618B1
KR102564618B1 KR1020220049439A KR20220049439A KR102564618B1 KR 102564618 B1 KR102564618 B1 KR 102564618B1 KR 1020220049439 A KR1020220049439 A KR 1020220049439A KR 20220049439 A KR20220049439 A KR 20220049439A KR 102564618 B1 KR102564618 B1 KR 102564618B1
Authority
KR
South Korea
Prior art keywords
sender
receiver
encryption
plaintext
key
Prior art date
Application number
KR1020220049439A
Other languages
English (en)
Inventor
정희성
Original Assignee
주식회사 네오패드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 네오패드 filed Critical 주식회사 네오패드
Priority to KR1020220049439A priority Critical patent/KR102564618B1/ko
Priority to PCT/KR2023/005488 priority patent/WO2023204678A1/ko
Application granted granted Critical
Publication of KR102564618B1 publication Critical patent/KR102564618B1/ko

Links

Classifications

    • 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
    • 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
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 송신자 및 수신자의 암호대상인 미디어 콘텐츠 파일에 대하여 송신자 또는 수신자의 기기에서 작성하여 저장된 미디어 콘텐츠 파일을 송신자 평문의 암호키, 공통키 배송용 암호키 및 복호키로 사용하는 암호 시스템 및 방법을 제공한다.
본 발명은 공통키 암호방식을 기반으로 키배송의 문제, 키생성 및 관리를 용이하게할 뿐만 아니라 생성암호가 정보이론적 안전성을 보증하는 암호시스템 및 방법을 제공한다.
본 발명은 송신자 및 수신자가 스마트폰 등에서 손쉽게 암호 대상의 평문, 암호 및 복호키를 선택 가능하게 하여 보다 유저 프렌드리한 암호 시스템 및 방법을 제공한다
즉 제 3 실시예는 상기 수신자가 상기 송신자의 평문의 암호문을 전송 받은 후에 상기 수신자가 송신자에게 수신자의 공통키 배송용 공개키와 비밀키 암호문을 전송하는 방법이고 변형의 제 4실시예는 상기 송신자가 평문의 암호문을 상기 수신자에게 전송하기 전에 상기 수신자로부터 수신자의 상기 공통키 키배송 공개키와 비밀키 암호문을 미리 전송 받는 방식이다.
도 13 은 본 발명의 제5 실시예의 처리 흐름도이다.
한편 본 발명의 상기 공통키 암호키 배송 방법의 암호 처리 시간은 다른 기존의 방법보다 약 1000배에서 10000배 빠르다는 것이 알려져 있다. 또 본 발명의 키배송 방식에 있어 공개키 방식에 의한 암호키 파일의 스타트 포인트 비밀키의 암호는 단순하여 기존의 공개키 방식에 의한 키공유 방식보다 월등히 간단하다.
특히 본 발명의 멀티미디어 콘텐츠 파일을 암호키로 사용하는 기술적 의의는 원타임 패드 암호가 가진 정보이론적 안전성에 기반하는 암호이면서 계산량의 안전성도 겸비하는 점에 있다. 도 본 발명의 키는 한번 쓰고 버리는 원타임 암호로서 쓰기 편하고 생성이 간편한 암호이다.

Description

송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법 {Encryption system and method using media content file of sender or receiver}
본 발명은 다양한 정보기기 상에 장치 가능한 암호시스템 및 방법이다
인터넷에 연결되는 디바이스가 기하급수적으로 늘어남에 따라 연결되는 디바이스 및 디바이스 간에 오고가는 정보 및 데이터에 대한 시큐리티 문제는 향후 심각한 기술과제이다. 새로운 상거래 시장, 즉 메타버스로 대표되는 가상공간에서 오가는 상거래 물품에 대한 진위여부, NFT게임의 아이템 거래 등에서 암호기술 또한 더욱 중요해지고 있다.
또, 수많은 비밀데이터가 클라우드와 같은 원격의 컴퓨터 서버 상에 보관됨에 따라 네트워크 상의 데이터에 대한 보호 기술이 더욱 중요해지고 있다. 상기와 같은 데이터 통신의 안전성은 네트워크 상에서 송수신되는 정보의 암호화 방법에 달려있다
현재의 암호통신 기술들은 복잡한 수식을 이용하고 이들 수식을 푸는데 엄청난 시간이 걸린다는 소위 계산의 복잡도를 기준으로 암호의 계산량적 안전성을 보증한다. 또 대표적인 차세대 기술로서 포스트양자암호 및 양자키배송 방식등이 알려져 있다
1. US 11,233,628 Equivocation augmentation dynamic secrecy system 2. US 11,177,959 Cryptography method and system for securing data via electronic transmission 3. US 11,176,624 Privacy-preserving smart metering 4. US 11,165,563 Symmetric key stream cipher cryptographic method and device 5. US 11,095,442 Generating unique cryptographic keys from a pool of random elements 6. US 10,873,448 Technique to generate symmetric encryption algorithms 7. US 10,348,704 Method for a dynamic perpetual encryption cryptosystem 8. US 10,263,785 Cryptography method and system for securing data via electronic transmission 9. US 10,069,805 Polymorphic one time pad matrix 10. US 9,032,208 Communication terminal, communication system, communication method and communication program 11. US 9,001,998 Data encryption and decryption method and apparatus 12. US 8,948,377 Encryption device, encryption system, encryption method, and encryption program 13. US 8,942,373 Data encryption and decryption method and apparatus 14. US 8,824,686 Cluster key synchronization 15. US 8,611,542 Peer to peer key synchronization 16. US 8,607,046 System and method for signing a message to provide one-time approval to a plurality of parties 17. US 8,401,186 Cloud storage data access method, apparatus and system based on OTP 18. US 8,249,255 System and method for securing communications between devices 19. US 7,971,234 Method and apparatus for offline cryptographic key establishment 20. US 7,945,075 Converting a digital image from color to gray-scale
본 발명은 상기와 같은 기술 요구 환경에서 가치있는 데이터의 교환과 거래에 있어 보안성을 제공하는 암호 기술을 제공하는 데에 있다
본 발명은 정보이론적 안전성을 가지며 쓰기 쉽고 간편하며 경제적인 새로운 암호 시스템 및 방법을 제공한다.
본 발명은 송신자 및 수신자의 암호대상인 미디어 콘텐츠 파일에 대하여 송신자 또는 수신자의 기기에서 작성하여 저장된 미디어 콘텐츠 파일을 평문의 암호키, 공통키 배송용 키 및 복호키로 사용하는 암호 시스템 및 방법을 제공한다.
본 발명은 송신자 및 수신자가 스마트폰 등에서 손쉽게 선택적으로 암호 대상, 암호 및 복호키를 선택 가능하게 하여 보다 유저 프렌드리한 암호 시스템 및 방법을 제공한다.
본 발명은 스마트폰과 같은 기기에서 빠르고 키 공유 비용이 낮은 공통키 기반 암호시스템 및 방법을 제공한다.
상기와 같은 기술 과제를 해결하고자 하는 본 발명의 실시예에 따른 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템은 다음과 같은 구성으로 이루워진다.
본 발명은 네트워크로 연결된 송신자 또는 수신자 기기 상의 암호시스템에 있어서 상기 송신자 또는 수신자 기기는 스마트폰, 테블릿, 스마트워치, PC, CCTV, GPS, 및 센서 디바이스 중 하나 이상을 포함하며 상기 송신자 기기는 송신자의 암호대상인 평문을 저장할 수 있는 메모리 수단을 구비한다
상기 송신자의 암호대상인 평문은 문자텍스트 파일, 사진 이미지 파일, 오디오 파일 및 비디오 파일 등의 콘텐츠 파일을 포함하는 수단을 구비한다.
상기 송신자의 암호대상인 평문에 대하여 상기 수신자 또는 송신자가 제공하는 콘텐츠 파일를 암호키로 사용하여 송신자 평문의 암호문을 생성하는 수단을 구비한다
상기 송신자 또는 수신자의 암호키로 사용하는 콘텐츠 파일은 적어도 문자데이터의 텍스트 파일, 사진 , 그래픽 이미지, 오디오 및 비디오 파일 중에서 적어도 하나를 포함하는 수단을 구비한다.
상기 송신자의 평문 암호문은 상기 송신자의 평문 파일의 비트열과 상기 수신자 또는 송신자가 제공하는 콘텐츠 파일의 비트열을 배타적 논리합으로 계산하여 생성하는 수단을 구비한다.
상기 생성된 송신자 평문의 암호문을 수신자의 기기로 전송하는 수단을 구비한다.
상기 송신자 평문의 암호문을 수신한 수신자는 상기 송신자 또는 수신자가 제공하는 콘텐츠 파일을 사용하여 상기 송신자 평문의 암호문을 평문으로 복호화하는 수단을 구비힌다.
또 상기 송신자가 제공하는 콘텐츠 파일을 암호키로 사용하여 송신자 평문의 암호문을 생성하는 경우는 상기 송신자 평문의 암호문을 수신하는 수신자가 공통키 배송을 위한 공개키로서 수신자의 기기에 저장되어 있는 상기 콘텐츠 파일을 사용하는 수단을 구비한다
상기 수신자의 공통키 배송을 위한 공개키의 콘텐츠 파일은 문자데이터의 텍스트 파일, 사진 , 그래픽 이미지, 오디오 그리고 비디오 파일 중에서 적어도 하나를 포함하는 수단을 구비한다
상기 수신자가 상기 공통키 배송을 위한 공개키로서 수신자의 상기 콘텐츠 파일을 송신자 기기로 전송하는 수단을 구비한다.
상기 송신자는 상기 수신자가 보내온 공통키 배송용 공개키인 수신자의 콘텐츠 파일과 송신자의 평문 암호키를 사용하여 송신자의 평문 암호키를 암호화하는 수단을 구비한다
상기 송신자가 암호화한 송신자의 평문 암호키의 암호문을 수신자의 기기로 전송하는 수단을 구비한다.
상기 송신자의 평문 암호키의 암호문을 수신한 수신자가 상기 수신자의 공통키 배송용 공개키인 콘텐츠 파일을 사용하여 상기 송신자의 평문 암호키로 복호화하는 수단을 구비한다.
상기 수신자가 복호화한 송신자의 평문 암호키를 사용하여 상기 송신자의 평문 암호문을 송신자의 평문으로 복호화하는 수단을 더 구비한다..
더불어, 상기 송신자가 상기 수신자가 보내온 공통키 배송용 공개키인 수신자의 콘텐츠 파일과 송신자의 평문 암호키를 사용하여 송신자의 평문 암호키를 암호화하는 수단은 공통키 배송용 공개키인 상기 콘텐츠 파일의 비트열과 상기 송신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여 이루워진다.
상기 수신자가 복호화한 송신자의 평문 암호키를 사용하여 상기 송신자의 평문 암호문을 송신자의 평문으로 복호화하는 수단을 더 구비한다.
또 상기 네트워크로 연결된 송신자 또는 수신자 기기 상의 암호시스템은 상기 생성된 송신자의 평문 암호문을 상기 수신자의 기기로 전송하면, 상기 수신자는 상기 수신한 송신자의 평문 암호문을 상기 수신자의 공통키 배송용 공개키에 해당하는 미디어 콘텐츠 파일을 선택하여 상기 송신자의 평문 암호문의 비트열과 상기 수신자의 공개암호키 파일의 비트열을 배타적 논리합으로 계산하여 송신자 평문 암호문과 같은 길이의 수신자 공통키 배송용 공개키의 결합 파일을 생성하는 수단을 구비한다.
상기 절차에 의해 생성된 송신자 암호문과 같은 길이의 공통키 배송용 공개키의 결합 파일의 비트열을 다시 상기 송신자의 평문 암호문의 비트열과 배타적 논리합으로 계산하여 상기 송신자의 암호키의 길이와 같은 상기 수신자의 공통키 배송용 공개 키를 생성하는 수단을 구비한다.
상기 송신자 암호키의 길이와 같이 생성된 수신자의 공통키 배송용 공개키 파일은 상기 송신자의 기기 상에서 송신자의 평문 암호키와 배타적 논리합으로 계산하여 새로운 파일를 생성하는 수단을 구비한다..
상기 새롭게 생성된 파일은 상기 송신자에 의해서 상기 송신자 기기에서 상기 수신자의 기기로 전송되며 상기 송신자의 평문 암호키를 배송하는 파일이 되는 수단을 구비한다..
상기 송신자의 평문 암호키를 배송하는 파일을 수신한 상기 수신자는 상기 송신자의 평문 암호키를 배송하는 파일의 비트열과 상기 수신자의 공통키 배송용 공개키 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자의 평문의 암호키를 획득하는 수단을 구비한다..
상기 수신자는 상기 수신한 송신자의 평문 암호문의 비트열과 상기 송신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자의 평문을 획득하는 수단을 더 구비한다..
본 발명의 상기 네트워크로 연결된 송신자 또는 수신자 기기 상의 암호시스템은
상기 송신자 또는 수신자 기기는 스마트폰, 테블릿, PC, CCTV 그리고 스마트워치 중 하나 이상을 포함하고 상기 송신자 또는 수신자 기기는 오디오 또는 비디오 암호 통화가 가능한 수단을 더 구비할 수 있다.
상기 기기의 오디오 또는 비디오 암호 통화가 가능한 수단은
상기 송신자 또는 수신자는 상기 통화 모드를 선택하고 통화 개시전에 상기 송신자 또는 수신자는 통화 상대방에게 평문 암호키를 전송하며 동시에 상기 통화 상대방의 평문 암호키 파일 및 비밀키를 교환할 수 있는 수단을 구비한다.,
상기 통화 상대방의 평문 암호키 파일은 상기 수신자의 콘텐츠 파일로서 문자데이터의 텍스트 파일, 사진 , 그래픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하는 수단을 구비한다.
상기 송신자 또는 수신자는 자신들의 기기에서 상기 평문 암호키 파일 및 비밀키의 암호문을 생성하여 각각의 통화 상대방의 기기로 전송할 수 있는 수단을 구비한다.,
상기 통화 상대방의 상기 공개키를 전송 받거나 또는 상기 평문 암호키 및 비밀키를 교환하는 상기 송신자 또는 수신자는 자신들의 상기 평문 암호키 파일과 비밀키의 암호문을 상기 통화 상대방에게 전송할 수 있는 수단을 구비한다.
상기 통화 상대방의 평문 암호키 파일과 비밀키 암호문을 수신한 상기 송신자 또는 수신자는 상기 비밀키의 암호문을 복호화한 후, 통화를 개시할 수 있는 수단을 구비한다.
상기 송신자 또는 수신자의 통화 데이터의 비트열과 상기 송신자 또는 수신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여, 상기 계산결과를 암호통화 데이터로 통신 상대방에게 전송할 수 있는 수단을 구비한다.
상기 전송되는 암호통화 데이터의 비트열을 상호 수신한 상기 송신자 또는 수신자는 상대방의 암호통화 데이터를 자신의 기기 상에서 평문 암호키 파일과 비밀키 정보를 사용하여 복호화할 수 있는 수단을 구비한다.
또 상기 기기의 오디오 또는 비디오 암호 통화가 가능한 수단은
상기 송신자 또는 수신자는 상기 통화 모드를 선택하고 통화 개시전에 통화 상대방에게 상기 송신자 또는 수신자의 공개키, 평문 암호키 파일 및 비밀키의 암호문을 상호 교환 전송하는 수단을 구비한다.
상기 통화 상대방의 평문 암호키 파일은 상기 수신자의 콘텐츠 파일로서 문자데이터의 텍스트 파일, 사진 , 그래픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하는 수단을 구비한다.
상기 공개키, 평문 암호키 파일 및 비밀키의 암호문을 전송받은 상기 송신자 또는 수신자는 자신의 기기에서 상기 비밀키의 암호문을 복호화하여 상기 평문 암호키 파일의 암호화 스타트 포인트를 확인하고 통화 수신 상태 완료를 각각의 통화 상대의 기기로 전송하여 알리는 수단을 구비한다..
상기 송신자 또는 수신자는 통화 상대방의 수신 대기 상태를 확인하고 통화 당사자는 자신의 평문 암호키 파일의 암호화 스타트 포인트를 설정한 후, 암호통화를 개시하는 수단을 구비한다.
상기 통화 당사자의 통화 데이터의 비트열과 상기 송신자 또는 수신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여 암호통화 파일을 생성하고, 상기 생성되는 암호통화 데이터를 통화회선을 통하여 통화 상대방에게 전송하는 수단을 구비한다.
상기 통화회선을 통하여 전송되는 암호통화 데이터의 비트열을 상호 수신한 상기 송신자 또는 수신자는 상대방의 통화 암호문을 자신의 기기 상에서 상기 평문 암호문 파일과 비밀키 정보를 사용하여 복호화하는 수단을 구비한다.
본 발명의 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 방법은 네트워크로 연결된 송신자 또는 수신자 기기 상의 암호방법에 있어서, 상기 송신자 또는 수신자 기기는 스마트폰, 테블릿, 스마트워치, PC, CCTV, GPS, 및 센서 디바이스 중 하나 이상을 포함하며, 상기 송신자 기기는 송신자의 암호대상인 평문을 저장할 수 있고, 상기 송신자의 암호대상인 평문은 문자텍스트 파일, 사진 이미지 파일, 오디오 파일, 비디오 파일 등의 콘텐츠 파일을 포함하며, 상기 송신자의 암호대상인 평문에 대하여 상기 수신자 또는 송신자가 제공하는 콘텐츠 파일를 암호키로 사용하여 송신자 평문의 암호문을 생성하고, 상기 송신자 또는 수신자의 암호키로 사용하는 콘텐츠 파일은 적어도 문자데이터의 텍스트 파일, 사진 , 그레픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하며, 상기 송신자의 평문 암호문은 상기 수신자 또는 송신자가 제공하는 상기 콘텐츠 파일을 사용하여 암호화하고, 상기 송신자의 평문 암호문은 상기 송신자의 평문 파일의 비트열과 상기 수신자 또는 송신자가 제공하는 콘텐츠 파일의 비트열을 배타적 논리합으로 계산하여 생성하며, 상기 생성된 송신자 평문의 암호문을 수신자의 기기로 전송하고, 상기 송신자 평문의 암호문을 수신한 수신자는 상기 송신자 또는 수신자가 제공하는 콘텐츠 파일을 사용하여 상기 송신자의 평문 암호문을 평문으로 복호화하는 방법으로 이루어진다.
삭제
삭제
삭제
삭제
삭제
삭제
또 상기 송신자의 평문 암호문 생성에 상기 송신자가 제공하는 콘텐츠 파일을 평문 암호키로 사용하는 경우는 상기 송신자 평문의 암호문을 수신하는 수신자가 공통키 배송을 위한 공개키로서 수신자의 기기에 저장되어 있는 상기 콘텐츠 파일을 사용하고, 상기 수신자의 공통키 배송을 위한 공개키의 콘텐츠 파일 문자데이터의 텍스트 파일, 사진, 그래픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하며, 상기 수신자가 상기 공통키 배송을 위한 공개키로서 수신자의 상기 콘텐츠 파일을 송신자 기기로 전송하고, 상기 송신자가 상기 수신자가 보내온 공통키 배송용 공개키인 수신자의 콘텐츠 파일과 송신자의 평문 암호키를 사용하여 송신자의 평문 암호키를 암호화하며, 상기 송신자가 암호화한 송신자의 평문 암호키의 암호문을 수신자의 기기로 전송하고, 상기 송신자의 평문 암호키의 암호문을 수신한 수신자가 상기 수신자의 공통키 배송용 공개키인 콘텐츠 파일을 사용하여 상기 송신자의 평문 암호키로 복호화하며, 상기 수신자가 복호화한 송신자의 평문 암호키를 사용하여 상기 송신자의 평문 암호문을 송신자의 평문으로 복호화하는 방법을 더 구비한다.
삭제
삭제
삭제
삭제
삭제
삭제
상기 송신자가 암호화한 송신자의 평문 암호키의 암호문을 수신자의 기기로 전송하고
상기 송신자의 평문 암호키의 암호문을 수신한 수신자가 상기 수신자의 공통키 배송용 공개키인 콘텐츠 파일을 사용하여 상기 송신자의 평문 암호키로 복호화하며
또 본 발명의 상기 네트워크로 연결된 송신자 또는 수신자 기기 상의 암호방법은, 상기 생성된 송신자의 평문 암호문을 상기 수신자의 기기로 전송하면 상기 수신자는 상기 수신한 송신자의 평문 암호문을 상기 수신자의 공통키 배송용 공개키에 해당하는 미디어 콘텐츠 파일을 선택하여 상기 송신자의 평문 암호문의 비트열과 상기 수신자의 공통키 배송용 공개키 파일의 비트열을 배타적 논리합으로 계산하여 송신자 평문 암호문과 같은 길이의 수신자 공통키 배송용 공개키의 결합 파일을 생성하고, 상기 절차에 의해 생성된 송신자 암호문과 같은 길이의 수신자 공통키 배송용 공개키의 결합 파일의 비트열을 다시 상기 송신자의 평문 암호문의 비트열과 배타적 논리합으로 계산하여 상기 송신자의 암호키의 길이와 같은 상기 수신자의 공통키 배송용 공개키를 생성하며, 상기 송신자 암호키의 길이와 같이 생성된 수신자의 공통키 배송용 공개키 파일은 상기 송신자의 기기 상에서 송신자의 평문 암호키를 배타적 논리합으로 계산하여 새로운 파일을 생성하고, 상기 새롭게 생성된 파일은 상기 송신자에 의해서 상기 송신자 기기에서 상기 수신자의 기기로 전송되며 상기 송신자의 평문 암호키를 배송하는 파일이 되며, 상기 송신자의 평문 암호키를 배송하는 파일을 수신한 상기 수신자는 상기 송신자의 평문 암호키를 배송하는 파일의 비트열과 상기 수신자의 공통키 배송용 공개키 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자의 평문의 암호키를 획득하고, 상기 수신자는 상기 수신한 송신자의 평문 암호문의 비트열과 상기 송신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자의 평문을 획득하는 방법을 더 구비하고, 상기 수신자가 보내온 공통키 배송용 공개키인 수신자의 콘텐츠 파일과 송신자의 평문 암호키를 사용하여 송신자의 평문 암호키를 암호화하는 방법은, 상기 송신자 평문 암호키의 파일의 비트열과 상기 수신자 공통키 배송용 공개키 파일의 비트열을 배타적 논리합으로 계산하여 이루어지며, 상기 송신자가 상기 수신자가 보내온 공통키 배송용 공개키인 수신자의 콘텐츠 파일과 송신자의 평문 암호키를 사용하여 송신자의 평문 암호키를 암호화하는 방법은, 상기 공통키 배송용 공개키인 상기 수신자 콘텐츠 파일의 비트열과 상기 송신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여 이루어지고, 상기 송신자의 평문 암호키의 암호문을 수신한 수신자가 상기 수신자의 공통키 배송용 공개키인 콘텐츠 파일을 사용하여 상기 송신자의 평문 암호키로 복호화하는 방법은, 상기 수신자가 수신한 송신자 평문 암호키의 암호문 파일의 비트열과 상기 수신자의 공통키 배송용 공개키 파일의 비트열을 배타적 논리합으로 계산하여 이루어지며, 본 발명의 상기 네트워크로 연결된 송신자 또는 수신자 기기 상의 암호방법은, 상기 송신자 또는 수신자 기기는 스마트폰, 테블릿, PC, CCTV 그리고 스마트워치 중 하나 이상을 포함하고 상기 송신자 또는 수신자 기기는 오디오 또는 비디오 암호 통화가 가능한 방법을 더 구비하고, 상기 기기의 오디오 또는 비디오 암호 통화가 가능한 방법은, 상기 송신자 또는 수신자는 상기 통화 모드를 선택하고 통화 개시전에 상기 송신자 또는 수신자는 통화 상대방에게 평문 암호키 파일을 전송하며 동시에 상기 통화 상대방의 평문 암호키 파일 및 비밀키를 교환할 수 있고, 상기 통화 상대방의 평문 암호키 파일은 상기 수신자의 콘텐츠 파일로서 문자데이터의 텍스트 파일, 사진 , 그래픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하며, 상기 송신자 또는 수신자는 자신들의 기기에서 상기 평문 암호키 파일 및 비밀키의 암호문을 생성하여 각각의 통신 상대의 기기로 전송할 수 있고, 상기 통신 상대방의 상기 공개키를 전송 받거나 또는 상기 평문 암호키 및 비밀키를 교환하는 상기 송신자 또는 수신자는 자신들의 상기 평문 암호키 파일과 비밀키의 암호문을 상기 통산 상대방에게 전송할 수 있으며, 상기 통화 상대방의 평문 암호키 파일과 비밀키 암호문을 수신한 상기 송신자 또는 수신자는 상기 비밀키의 암호문을 복호화한 후, 통화를 개시할 수 있고, 상기 송신자 또는 수신자의 통화 데이터의 비트열과 상기 송신자 또는 수신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여, 상기 계산결과를 암호통화 데이터로 통신 상대방에게 전송할 수 있으며, 상기 전송되는 암호통화 데이터의 비트열을 상호 수신한 상기 송신자 또는 수신자는 상대방의 암호통화 데이터를 자신의 기기 상에서 평문 암호키 파일과 비밀키 정보를 사용하여 복호화할 수 있는 방법으로 이루어진다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
상기 기기의 오디오 또는 비디오 암호 통화가 가능한 방법은, 상기 송신자 또는 수신자는 상기 통화 모드를 선택하고 통화 개시전에 통화 상대방에게 상기 송신자 또는 수신자의 공개키, 평문 암호키 파일 및 비밀키의 암호문을 상호 교환 전송할 수 있으며, 상기 통화 상대방의 평문 암호키 파일은 상기 수신자의 콘텐츠 파일로서 문자데이터의 텍스트 파일, 사진 , 그래픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하며, 상기 공개키, 평문 암호키 파일 및 비밀키의 암호문을 전송받은 상기 송신자 또는 수신자는 자신의 기기에서 상기 비밀키의 암호문을 복호화하여 상기 평문 암호키 파일의 암호화 스타트 포인트를 확인하고 통화 수신 상태 완료를 각각의 통화 상대의 기기로 전송하여 알리며, 상기 송신자 또는 수신자는 통화 상대방의 수신 대기 상태를 확인하고 통화 당사자는 자신의 평문 암호키 파일의 암호화 스타트 포인트를 설정한 후, 암호통화를 개시할 수 있고, 상기 통화 당사자의 통화 데이터의 비트열과 상기 송신자 또는 수신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여 암호통화 파일을 생성하고, 상기 생성되는 암호통화 데이터를 통화회선을 통하여 통신 상대방에게 전송하는 방법을 포함하고, 상기 통화회선을 통하여 전송되는 암호통화 데이터의 비트열을 상호 수신한 상기 송신자 또는 수신자는 상대방의 통화 암호문을 자신의 기기 상에서 상기 공개 암호문 파일과 비밀키 정보를 사용하여 복호화하는 방법을 구비하며, 상기 평문 암호키 파일의 암호화 스타트 포인트를 확인하고 통화 수신 상태 완료를 각각의 통화 상대의 기기로 전송하여 알리고 상기 암호화 스타트 포인트의 설정을 하는 방법은 소프트웨어 프로그램에 의해 자동으로 또는 상기 송신자 또는 수신자의 수동작으로 실행할 수 있는 방법을 구비한 암호방법으로 이루어진다.
삭제
삭제
삭제
삭제
삭제
삭제
상기 통화 상대방의 평문 암호키 파일은 상기 수신자의 콘텐츠 파일로서 문자데이터의 텍스트 파일, 사진 , 그래픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하며
상기 공개키, 평문 암호키 파일 및 비밀키의 암호문을 전송받은 상기 송신자 또는 수신자는 자신의 기기에서 상기 비밀키의 암호문을 복호화하여 상기 평문 암호키 파일의 암호화 스타트 포인트를 확인하고 통화 수신 상태 완료를 각각의 통화 상대의 기기로 전송하여 알리며.
상기 송신자 또는 수신자는 통화 상대방의 수신 대기 상태를 확인하고 통화 당사자는 자신의 평문 암호키 파일의 암호화 스타트 포인트를 설정한 후, 암호통화를 개시할 수 있고.
상기 통화 당사자의 통화 데이터의 비트열과 상기 송신자 또는 수신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여 암호통화 파일을 생성하고, 상기 생성되는 암호통화 데이터를 통화회선을 통하여 통신 상대방에게 전송하는 방법을 포함하고
상기 통화회선을 통하여 전송되는 암호통화 데이터의 비트열을 상호 수신한 상기 송신자 또는 수신자는 상대방의 통화 암호문을 자신의 기기 상에서 상기 공개 암호문 파일과 비밀키 정보를 사용하여 복호화하는 방법을 구비하며
상기 평문 암호키 파일의 암호화 스타트 포인트를 확인하고 통화 수신 상태 완료를 각각의 통화 상대의 기기로 전송하여 알리고 상기 암호화 스타트 포인트의 설정을 하는 방법은 소프트웨어 프로그램에 의해 자동으로 또는 상기 송신자 또는 수신자의 수동작으로 실행할 수 있는 방법을 구비한 암호방법으로 이루워진다.
본 발명은 상기와 같은 수단과 방법으로 암호시스템 및 암호방법을 구성하고 있다.
첫째, 본 발명의 암호는 정보이론적으로 안전한 암호를 제공한다. 본 발명의 암호키 생성을 위한 시드(seed)는 기존의 난수생성기 및 의사난수생성기와는 다르게 송신자, 수신자 등 유저의 멀티미디어 컨텐츠 파일을 사용하기 때문에 암호의 안전성은 보장된다. 상기 유저의 멀티미디어 컨텐츠 파일은 무작위성이 충분하고, 예측이 불가능하며 재현이 불가능하므로 정보이론적으로도 안전성을 보증한다. 또 본 발명의 암호에 대한 안전성은 샤년 수식으로 입증이 가능하다.
둘째, 본 발명의 암호는 스마트폰을 비롯한 소형의 기기에서 비싼 난수생성기의 도입없이 일상의 생활에서 제작 가능한 멀티미디어 컨텐츠 파일을 사용하여 암호키를 생성하고 키 관리를 행하기 때문에 경제적이며 유저 친화적인 암호 서비스를 제공할 수 있다.
셋째, 본 발명의 암호는 향후 서비스 시장이 형설될 센서 네트워크, NFT 서비스, 메타버스, 자율 지동차, 드론, 원격 의료, 등등에서 요구되고 있는 암호 기술에서 교환되는 다양한 멀티미디어 정보, 데이터에 유연하게 대응할 수 있는 암호 기술을 제공할 수 있다.
넷째. 본 발명의 암호는 향후, 양자컴퓨터의 등장등의 기술 혁신에도 유연하게 사용가능한 암호 시스템 및 방법을 제공할 수 있다.
다섯째, 본 발명의 암호는 기존의 암호 방식과는 달리 유저 스스로가 자신의 기기에서 암호대상 멀티미디어 콘텐츠의 평문과 암호키 생성 멀티미디어 콘텐츠를 취사선택하여 손쉽게 이용할 수 있는 암호시스템 및 방법을 제공할 수 있다.
도1a 와 도 1b 는 본 발명의 암호 시스템 및 방법이 적용되는 인프라 구조 및 네트워크 환경을 나타낸다.
도 2 는 본 발명의 미디어 콘텐츠 파일 저장을 나타내는 스마트폰의 앨범 메뉴를 나타낸다.
도 3 및 도 4 는 본 발명에서 키로 사용가능한 사진 이미지를 나타내고 비밀키 생성을 위한 암호화 스타트 포인트의 픽셀 좌표값을 나타낸다.
도 5 는 본 발명의 키로 사용가능한 텍스트 파일의 예시이고 스타트 포인트의 문자위치의 행렬값과 문자코드값unicode의 예시를 나타낸다.
도 6 은 사진 이미지 파일의 픽셀에 대한 RGB데이터를 나타낸다.
도 7 은 오디오 파일의 비트열과 암호화 스타트 포인트 정보의 예시를 나타낸다.
도 8 은 비디오 파일의 비트열과 암호화 스타트 포인트 정보의 예시를 나타낸다.
도 9 는 본 발명의 실시예 1의 처리 흐름도를 나타낸다.
도 10 은 본 발명의 실시예에서 송신자 평문암호 파일의 생성 결과를 예시한다.
도 11 은 본 발명의 실시예 2의 처리를 나타내는 흐름도이다.
도 12 는 본 발명의 실시예3의 처리를 나타내는 흐름도이다.
도 13 은 본 발명의 실시예5의 처리를 나타내는 흐름도이다.
5G, 6G 로 대표되는 무선 통신 그리고 초고속 인터넷으로 연결되는 IOT 환경에서, 관련하는 정보 또는 데이터의 통신, 저장, 관리에 있어 시큐리티 문제는 더욱 강조되는 기술분야이다.
즉 다양한 가전, 의료기기, 사무기기, 산업기계, 자율 자동차, 드론 , web 카메라 등이 초연결되는 IOT 환경에서 네트워크 상에서 오가는 데이터 또는 정보에 대한 보안 암호 기술 그리고 NFT와 같은 새로운 상거래 환경에서 생산 유통되는 데이터의 원본 등 정보, 데이터를 도청자의 불법적 사이버 공격으로부터 지켜내는 정보 보호 기술은 대단히 중요한 기술 분야이다
도1a와 도 1b는 본 발명의 암호 시스템 및 방법이 적용되는 인프라 구조 및 네트워크 환경을 나타낸다.
도 2는 본 발명의 미디어 콘텐츠 파일 저장을 나타내는 스마트폰의 앨범 메뉴를 나타낸다.
도 3및 도 4는 본 발명에서 키로 사용가능한 사진 이미지를 나타내고 비밀키 생성을 위한 암호화 스타트 포인트의 픽셀 좌표값을 나타낸다.
도 5는 본 발명의 키로 사용가능한 텍스트 파일의 예시이고 스타트 포인트의 문자위치의 행렬값과 문자코드값unicode의 예시를 나타낸다.
도 6은 사진 이미지 파일의 픽셀에 대한 RGB데이터를 나타낸다.
도 7은 오디오 파일의 비트열과 암호화 스타트 포인트 정보의 예시를 나타낸다.
도 8은 비디오 파일의 비트열과 암호화 스타트 포인트 정보의 예시를 나타낸다.
도 9는 본 발명의 실시예 1의 처리 흐름도를 나타낸다.
도 10은 본 발명의 실시예에서 송신자 평문암호 파일의 생성 결과를 예시한다.
도 11은 본 발명의 실시예 2의 처리를 나타내는 흐름도이다.
도 12는 본 발명의 실시예3의 처리를 나타내는 흐름도이다.
도 13은 본 발명의 실시예5의 처리를 나타내는 흐름도이다.
5G, 6G로 대표되는 무선 통신 그리고 초고속 인터넷으로 연결되는 IOT 환경에서, 관련하는 정보 또는 데이터의 통신, 저장, 관리에 있어 시큐리티 문제는 더욱 강조되는 기술분야이다. 즉 다양한 가전, 의료기기, 사무기기, 산업기계, 자율 자동차, 드론 , web 카메라 등이 초연결되는 IOT 환경에서 네트워크 상에서 오가는 데이터 또는 정보에 대한 보안 암호 기술 그리고 NFT와 같은 새로운 상거래 환경에서 생산 유통되는 데이터의 원본 등 정보, 데이터를 도청자의 불법적 사이버 공격으로부터 지켜내는 정보 보호 기술은 대단히 중요한 기술 분야이다
본 발명에서의 용어 정의는 다음과 같다. 데이터 또는 정보의 암호란 타인으로부터 자신의 데이터 또는 정보를 감추기 위한 기술을 말한다. 즉 허가 받지 않는 사람은 정보를 읽거나 볼 수 없게 하는 기술이 암호이다.
본 발명에서는 어느 정보기기에서 어느 정보를 발신 또는 송신하는 사람 또는 기기를 송신자(sender)라 정의한다. 상기 발신 또는 송신된 정보를 수신하는 사람 또는 기기를 수신자(receiver)라 정의한다. 또 상기 발신되는 정보를 총칭하여 메세지(message)라 정의한다. 발신하는 메세지를 타인이 읽어 볼 수 없도록 하려면 발신 메세지를 암호화(encrypt)해야 한다. 암호화하기 전의 메세지를 평문(plaintext)이라 하고 암호화된 후의 메세지를 암호문(ciphertext)라 부른다. 평문을 암호기술(cryptography)를 사용하여 암호화하는 목적은 평문의 기밀성(confidentiality)을 지키기 위함이다. 암호화된 암호문을 읽기 위해서는 암호문을 평문으로 다시 바꾸어야 하고 이를 복호화라고 한다. 암호화하기 위한 절차을 '암호화 알고리즘', 복호화 절차을 '복호화 알고리즘'이라 하고 이 두 알고리즘을 통칭하여 '암호알고리즘'이라 한다. 상기 평문을 암호문으로 만들기 위해서는 암호키가 필요하고 암호문을 평문으로 바꾸는데는 복호키가 필요하다. 상기 평문, 암호문 그리고 키를 암호의 3요소라 한다.
본 발명에서는 상기 암호와 관련한 일반적인 용어의 정의를 참조하되 보다 확대하여 관련 용어를 정의한다. 본 발명에서는 송신자 또는 수신자는 예를 들면 메타버스 세계에서 정보를 주고 받는 아바타, NFT의 원본 소유자 또는 판매자, 수신자는 NFT원본의 관리자 또는 구매자와 동일한 개념으로 정의한다. 또 발신되는 정보를 메시지라 하는 것처럼 본 발명에서는 암호대상이 되는 모든 것을 평문(plaintext)이라 정의한다. 즉 상기 평문은 문자데이터 파일, 사진 또는 그래픽 이미지 파일, 오디오 파일, 비디오 파일 또는 이들 파일이 결합한 멀티미디어 파일을 포함할 수 있다. 또 본 발명에서의 암호파일(cipherfile)은 상기 암호문과 동일한 의미이다.
본 발명에서의 송신자 또는 수신자의 정보기기의 종류에는 스마트폰, 테블릿, PC, 스마트 워치등의 정보기기, CCTV, GPS 등 각종의 센서 또는 디바이스등을 포함하며 상기 기기로부터 출력되는 데이터는 수치, 문자, 오디오, 비디오 등과 이들 데이터가 혼합된 멀티미디어 데이터를 포함한다. 상기의 기기로부터 출력되는 모든 데이터를 암호화 대상이 되는 평문으로 정의한다. 따라서 본 발명에서는 기존의 암호 대상의 평문뿐만 아니라 드론, 자율 자동차, 또는 센서 네트워크, 게임, NFT 그리고 메타버스(metaverse)와 관련하는 각종의 데이터 또는 정보 중에서 암호 대상이 되는 것들을 모두 포함하여 평문이라 정의한다.
본 발명에서는 인터넷 등 네트워크 상에서 오가는 타인의 데이터 또는 정보에 대하여 악의를 가지고 도청, 개변조, 절취를 목적으로 억세스하고자 하는 사람 또는 기기를 도청자(eavesdropper)라 한다.
본 발명의 목적은 상기 기존의 암호 방식보다 뛰어난 암호방식을 제공하는데 있다. 본 발명의 암호 방식의 시스템 및 방법이 주지의 암호기술과 다름을 설명하기 위하여 상기 주지의 암호 방식에 대하여 설명한다.
상기 주지의 암호 방식에는 대칭키/공통키 암호 (symmetric key), 공개키 (public-key)암호, 하이브리드(hybrid) 암호, 타원곡선(elliptic curve) 그리고 포스트양자암호(post-quantum) 방식 등이 널리 알려져 있다. 상기 각각의 암호 방식은 각각의 서로 다른 암호 알고리즘을 사용하며. 각각의 암호 알고리즘에는 필수적으로 키(key)를 사용한다
(1)공통키/대칭키 암호
‚‹통키 암호 방식은 대칭키 암호라고도 한다. 공통키 암호방식의 특징은 암호 알고리즘과 복호화 알고리즘에서 동일한 키를 사용하는 방식이다. 고전적인 공통키 암호방식에는 G.S Vernam이 발명한 기계식 암호 방식(US. Patent 1,310,719)이 있다
(a)Vernam 암호 알고리즘과 one-time pad 암호
vernam 의 암호 알고리즘은 평문의 암호화 및 암호문의 복호화 알고리즘에서 배타적 논리합이라는 논리 계산을 사용한다.
배타적 논리합이란 비트계산의 연산자로 아래와 같은 계산 결과를 가진다
a b ab
0 0 1
0 1 0
1 0 0
1 1 1
상기 배타적 논리합(exculusive or)의 계산을 실제의 암호 알고리즘에 적용하여 설명한다. 예를 들어, 평문을 m = ”를 암호 키 k = aa bb cc dd ee(16진수)로 암호화 및 복화화를 해본다、
자연언어 데이터의 비트계산은 문자코드를 2진수로 변환하여야 하므로 상기 평문을 2진수로 변환하면 데이터가 길어져서 편의상 16진수로 변환하면
m' = 68 65 6c 6c 6f 이 된다.
m'와 k로 배타적 논리합(로 표시)을 계산하면
c = m' k = c2 de a0 b1 81 이 되며 c가 암호문이 된다. 이 암호문 c을 수신자에게 송신한다.
수신자는 상기 암호문 c를 수신한 후, c를 k로 다시 배타적 논리합을 계산한다. 계산 결과 m'을 얻을 수 있고 m'는 상기 평문의 16진수 표현 데이터이다. 이것을 ASCCI코드로 변환하면 송신자의 평문을 다시 계산할 수 있다.
m' = c k = 68 65 6c 6c 6f
m = "hello"
이와 같이 암호화한 문장을 보낼 수 있다. 키인 k(aa bb cc dd ee)는 미리 송신측과 수신측에서 동시에 공유되는 정보이고 평문과 길이가 같아야 한다.
원타임 패드란 일회성 암호를 말한다. 한번 쓰고 버리는 암호이다
상기 배넘 암호을 위시한 원타임 패드 암호는 해독이 불가능하다. 즉 도청자가 암호화된 메세지c를 도청해도 메세지 메세지m의 정보를 얻을 수 없다.
왜냐하면 암호키 k가 완전히 랜덤하게 생성되는 것이라면 c=m= c k 도 완전히 랜덤한 메세지가 되기 때문에 c로부터 m의 정보를 얻을 수 없다.
원타임 패드 암호는 검색해야 할 키수가 많아서 현실적으로 해독할 수 없다. 또 키 검색을 위하여 복호해가면 언젠가는 평문과 일치하는 암호키를 찾아낼 수는 있어도 상기 평문이 진짜인가 아닌가를 판단할 수 없다. 1949년 샤넌(shannon)에 의해서 원타임 패드의 암호는 '정보이론적으로 안전하다'는 것이 수학적으로 입증된 바 있다
배넘 암호와 같은 원타임 패드는 최고의 안전성을 가짐에도 다음과 같은 문제점 때문에 실용적이지 않다.
원타임 패드 암호의 결점은 다음과 같다.
첫째, 키의 배송 문제이다. 공통키 암호는 암호화와 복호화에 동일한 키를 사용한다. 따라서 송신자와 수신자는 사전 준비로 보내는 메세지와 같은 길이의 암호키 난수열 k을 공유할 필요가 있다. 예를 들면, 100비트를 암호화해서 보낼 경우 사전에 100비트의 암호키와 복호키의 난수열을 공유해야 한다.
이것은 어려운 일로 'k 를 어떻게 공유할 것인가 이 과제가 공통키 암호의 키배송 문제이다.
둘째, 키의 재이용 금지이다. 원타임 패드 암호에서는 메세지를 보낼 때마다 송신자와 수신자는 새로운 다른 공통키 난수열 k를 필요로 한다. 만일 한번 공유한 k를 계속해서 사용한다면 암호문 해석으로 해독될 기회가 많아지기 때문이다.
셋째, 키의 생성 및 동기(synchronous)이다. 원타임 패드 암호는 암호 메세지를 바꿀 때마다 메세지 평문 길이 만큼의 새로운 암호키가 필요하나 새로운 암호키를 생성하기가 용이하지 않다. 게다가 메시지의 길이와 암호키의 길이가 같아야 한다. 한 개의 비트라도 어긋나거나 다를 경우, 그 이후의 복호화는 불가능해진다
넷째, 키의 관리이다. 메세지를 바꿀 때마다 새로운 키가 필요하다면 메세지에 비례하여 키 수도 증가하므로 상기 키의 생성, 관리 코스트가 증가하게 된다. 공통키 암호의 경우, 송신자와 수신자가 N명이라면 N(N-1)/2키가 필요하다. 암호문의 복호를 위해서는 상기 암호키를 보관 관리해야 한다. 키를 보존하지 않으면 암호문을 복호할 수 없기 때문이다.
상기와 같이 원타임 패드의 암호는 '정보이론적으로 안전'하나 운용상에 문제가 있어 실용적이지 못하다. 따라서 바람직한 새로운 암호 기술이란 '정보이론적으로 안전'하면서 상기와 같은 결점을 줄일 수 있는 암호가 이상적이며 본 발명의 목표이기도 하다.
(b) 스트림암호, 블럭암호
공통키 암호에는 스트림(stream) 암호와 블럭(block) 암호가 있다. 스트림 암호는 데이터의 흐름(stream)에 따라 순차적으로 처리해 가는 알고리즘의 총칭이다. 스트림 암호는 1비트 또는 수비트 단위로 처리하는 공통키 암호이다. 메세지 평문과 키를 차례차례 배타적 논리합으로 계산하는 배넘 암호와 동일하게 처리 속도가 빠르다. 비밀키의 사이즈는 평문 사이즈 보다 작아도 되며 암호키는 비밀키에서 생성한 의사난수(psudo random number)를 사용한다. 스트림 암호에서는 비밀키를 고정해서는 안된다. 비밀키는 의사난수생성기의 시드(seed)가 되고 같은 비밀키로부터는 같은 의사난수열(psudo radom number string)이 생성된다. 따라서 암호문과 대응하는 평문을 알 경우, 의사난수열이 특정되므로 도청시 위험하다.
블럭암호란 평문을 일정 단위의 블럭으로 분할하여 암호화하는 공통키 암호방식이다. 상기 하나의 블럭은 비밀키로 암호화하면 항상 같은 암호문이 되는 알고리즘이다. 모든 블럭에 대하여 암호화하는 몇가지 방법이 있고 각각의 블럭에 암호화 모드가 부여된다. 블럭 암호의 대표적인 것으로 DES(Data Encrytion Standard), AES(Advanced Encrytion Standard)등이 있다. DES는 64비트의 평문을 36비트키를 이용하여 64비트 암호문으로 암호화하는 알고리즘이다. AES는 하나의 블럭을 128비트로 분할하고 키 사이즈는 128, 192, 256비트를 고른다. AES암호화는 상기 선택한 비밀키에 따라 초기 설정한 후, 그라운드(ground) 라 불리우는 처리를 일정 회수 되풀이하여 암호화를 실행한다.
상기한 공통키 암호는 처리 속도는 빠른 반면, 키 공유의 문제는 어렵다. 즉 송신자와 수신자는 동일한 공통키를 공유해야 하나 사전에 공통키를 공유하는데는 어려움이 크다.
(c)키의 공유
-DH법
상기 공통키 암호의 난제인 키공유 즉 키배송 문제를 최초 해결한 것은 Deffie와 Hellman이 제안한 것으로 DH 법이라 한다. DH법의 개요는 다음과 같다.
송신자는 수신자에게 2개의 소수 P와 G(생성원)을 송신하고 난수 A를 준비하여 GA mod P의 계산결과를 수신자에게 송신한다. 수신자는 난수 B를 준비하고 GB mod P를 계산하여 그 결과를 송신자에게 송신한다.
상기 송신자는 수신자가 보내온 계산 결과를 A 승하여 mod P를 구한다. 즉
송신자가 계산한 키 = (GB mod P)A mod P가 되며 이 값이 송신자의 암호키가 된다.
한편 수신자도 송신자가 보내온 게산 결과를 B승하여 mod P값을 구한다.
수신자가 계산한 키 = (GA mod P)B mod P가 되며 이 값이 수신자의 암호키가 된다.
상기 계산 결과 값은 같은 값이 되어 같은 키를 공유하는 결과가 된다.
-양자키배송
상기 키배송을 양자의 성질을 이용해서 실행하는 방식을 양자키배송QKD(Quantum Key Distribution)이라 한다. QKD는 평문의 암호를 공통키로 실행하고 상기 공통키를 QKD를 이용하여 배송한다.
(2)공개키 암호
공통키 암호(public-key cryptography)의 키공유 문제를 해결하는 또 하나의 암호 방식이 공개키 암호이다. 공개키 암호는 공통키 암호와는 달리 암호화할 때의 키와 복호화할 때의 키를 서로 다르게 하는 암호방식이다. 공개키 암호는 키생성, 암호화, 복호화 3개의 알고리즘으로 이루워진다. 공개키 암호의 대표적인 방식이 RSA암호이고 그 개요는 다음과 같다. E와 N이 암호용 공개키이고 D와 N이 복호용 비밀키이다.
암호문 = (plain text)E mod N, N = p x q (p, q는 소수), L =lcm(p-1, q-1), gcd(E, L)= 1
plain text = 암호문D mod N, E x D mod L =1
RSA암호의 안전성은 현재의 수퍼컴퓨터를 이용하더라도 큰 소수의 곱(2048bit)의 소인수분해는 현실적인 시간내에는 풀 수 없다는 이론에 근거한다.
상기 RSA암호는 에러 정정 기능을 가진 양자컴퓨터가 개발된다면 쇼어 알고리즘(Shor's algorithm)을 이용하여 해독이 가능하다고 알려지고 있다. 쇼어 알고리즘은 양자컴퓨터로 양자푸리에 변환(quantum Fourier transform)을 사용하여 고속으로 인수분해가 가능하다고 알려져있다. 쇼어의 알고리즘으로 2048비트의 소인수분해가 실현된다면 RSA2048 암호는 풀리게되어 암호의 효용성은 사라진다.
(3) 하이브리드 암호
공개키 암호의 결점, 즉 대칭암호에 비해 약 1000배에서 10000배 정도 처리 속도가 늦고[https://www.cryptopp.com/benchmarks.html], man-in-the-moddle 공격에 약함이 알려진 결과, 그 대안으로 하이브리드 암호가 제안되었다. 하이브리드 암호의 개요는 다음과 같다. 메시지를 일단 고속의 대칭암호로 암호화한다. 상기 메시지를 암호화할 때, 사용한 암호키를 공개키로 암호화한다. 메시지의 길이에 비하여 대칭암호는 키가 짧아 속도가 빠르다. 하이브리드 암호에서는 의사난수생성기, 대칭암호, 공개키 암호 기술을 동시에 사용한다.
(4) 타원곡선 암호
타원곡선( elliptic curve) 이라 불리우는 수학적인 대상물을 이용한 암호기술 전반을 뜻한다. 타원곡선을 사용한 공개키 암호, 키공유, 서명 등이 있다. 짧은 키사이즈로 높은 안전성을 가지고 있어 널리 보급되고 있다.
타원곡선 암호의 알고리즘은 다음과 같다.
평문 m을 타원곡선E 상의 점 하나로 변환하고, 임의의 난수 r, 공개키 pk, 비밀키 x, 그리고 기준점 P를 설정한 후, c1 =rP를 계산한다. 공개키 pk를 사용하여 c2 = M +rY(Y=xP)를 계산하고 c = ( c1 c2 )를 암호문으로 생성한다.
한편 복호 알고리즘은 다음과 같다.
M = c2 - x c1의 계산으로 암호문을 평문으로 복호화한다.
(5)포스트 양자암호
양자컴퓨터를 사용해도 해독이 어려운 암호를 포스트 양자암호 또는 양자내성암호(post- quantum cryptography)라한다. 포스트 양자암호란 양자컴퓨터라도 풀기 어려운 암호를 말하며 현재의 컴퓨터 상에서 동작하는 암호를 말한다. 양자내성암호는 기반이 되는 수학적 난제에 따라 격자 기반 암호(lattice-based cryptography), 코드 기반(cide-based) 암호, 다변수 기반(multi-variate) 암호, 아이소제니 기반(isogeny-based )암호, 해시 기반(hash-based) 전자서명 등이 있다.
상기와 같이 암호기술은 메세지 평문의 종류, 암호화키의 생성, 암호 알고리즘, 키의 공유를 위한 키배송이 핵심 과제임을 알 수 있다.
본 발명은 상기 기존의 암호기술과는 다른 암호화키의 생성, 암호 알고리즘, 키 배송 시스템 및 방법을 제공한다.
도 1a 및 1b는 본 발명의 암호 기술이 실행되는 시스템 및 네트워크 환경을 나타내는 실시예이다. 도 1a는 모바일 클라우드를 포함한 네트워크 그리고 도 2b는 P2P 네트워크 환경에서의 본 발명 기술이 활용되는 실시예이다. 그러나 본 발명의 암호방식은 네트워크의 종류와는 상관 없다. 예를 들면 인터넷, 블루투스, WIFI, 5G, 6G무선, 양자 네트워크 등 어느 것이든 실시 가능하다. 또 발명의 암호가 실행되는 기기는 스마트폰, 스마트 워치, CCTV, 센서기기, 테블릿, PC, 등 네트워크에 연결될 수 있는 기기라면 어떤 것이든 가능하다.
본 발명은 송신자의 암호대상이 되는 평문에 대한 암호기술을 제공한다. 상기한대로 본 발명의 평문이란 송신자의 문자 텍스트 파일, 오디오 파일, 비디오 파일 또는 상기 데이터를 혼합한 멀티미디어 파일 등 암호대상을 통칭한다. 상기 암호대상의 평문에는 상기 NFT와 결합되는 작품, 즉 문자텍스트, 사진, 그래픽, 그림, 오디오, 비디오 그리고 상기 데이터를 혼합한 멀티미디어 파일을 포함할 수 있다.
상기 평문의 생성 방식에는 어떤 방식이든 상관 없이 디지털화 가능한 것이면 상관없다, 예를 들면 그림, 음악 등 사람이 수동적으로 제작한 예술 작품 또는 디지털 기기로 제작한 사진, 그래픽, 오디오, 비디오 작품등, 디지털화 가능한 것이면 어느 방식으로 제작된 것이라도 암호가 필요한 대상이라면 평문이 될 수 있다. 더불어 상기 평문은 주로 송신자, 수신자의 기기로 제작되고 저장, 관리된다.
본 발명의 암호키는 다음과 같이 생성된다.
본 발명에서 암호키 생성는 난수의 생성과 직접적으로 관련된다.
암호에서 난수는 대칭암호의 키 생성 및 메세지 인증에 쓰이고 공개키 암호 및 디지털 서명의 키 페어(key pair)의 생성 등에 주로 쓰인다. 키가 도청자에게 알려지면 안되기 때문에 암호키를 알 수 없도록 하기 위해서 난수를 사용한다. 난수의 성질을 분류하면
다음과 같다. 1)무작위성: 통계적 편향이 없이 난잡할 것 2)예측불가능성: 과거의 수열로부터 다음의 수열을 예측할 수 없을 것 3)재현 불가능성 : 같은 수열을 만들 수 없을 것. 즉 재현할려면 원본을 보관해 둘 수 밖에 없을 것 등으로 분류된다.
암호키를 생성하는데 사용된 난수가 얼마나 무작위한 것인지는 보안 시스템의 안전성을 판단하는 데 큰 영향을 준다. 겉으로 보이기에만 무작위하게 보이는 수준이 아니라, 진정한 무작위성을 제공하는 순수 난수가 필요하다. 현재 알려진 난수생성기에는 다음과 같은 것들이 있다. 하드웨어에 의한 난수 생성으로 CPU에서 발생하는 열잡음, 키스트록의 속도, 마우스의 움직임 등등이 있고, 소프트웨어에 의한 의사 난수 생성 방법에는 1)무작위 법 2)선형 합동법 3)일방향 해쉬함를 쓰는 법 4)암호를 쓰는 법 5) ANSI X9.1 등이 있다. 또 양자 난수 생성으로 사람이 아닌 순수 자연 현상의 물리계에서 추출하여 생성한 난수가 있다. 진성 난수(completely random number), 자연 난수, 순수 난수라고도 부른다. 양자난수생성기는 방사성 붕괴나 진동, 광자 편광 관찰 같은 양자역학 현상등에서 발생하는 무작위성에 의존하는 난수 생성기이다
본 발명은 기존의 상기 난수 생성 방법과는 다르게 상기 유저(송신자/수신자)의 스마트폰 등의 기기에서 생성, 저장, 관리되고 있는 송신자 또는 수신자의 미디어 콘텐츠 파일을 키로 사용하는 암호기술이다. 본 발명은 상기 송신자의 멀티미디어로 작성된 평문에 대하여 암호 또한 송신자 또는 수신자의 멀티미디어 콘텐츠 파일을 암호키로 사용하는 암호기술이다.
상기 본 발명의 송신자 또는 수신자의 멀티미디어 콘텐츠 파일의 암호키는 정보이론적으로 안전성을 보증하는 키로서 이것을 이용하여 암호화와 복호화를 실행한다.
도 2는 본 발명의 암호키를 생성하는 난수 생성기로서 사용이 가능한 스마트폰의 '앨범'폴더에 저장되어 있는 송신자 또는 수신자가 작성한 사진 이미지이다. 상기 앨범 폴더의 메뉴는 비디오, 셀카, live photo, screen shot등등으로 구성되어 있다. 상기 스마트폰의 앨범에 저장되어 있는 비디오, 셀카 사진등은 멀티미디어 콘텐츠 파일을 포함하고 있으며 이들 파일들은 바이너리 데이터로 저장되어 있고 이들 바이너리 데이터를 비트열이라고도 부른다.
본 발명의 특징은 상기 유저의 미디어 컨텐츠 파일의 바이너리 데이터가 암호대상인 평문일 수 있으며 또한 상기 평문의 암호화에 이용하는 '키'로도 사용할 수 있는 것이다.
상기 송신자 또는 수신자의 스마트폰에 저장되어 있는 데이터에 대하여 설명한다.
도 2의 사진의 이미지는 픽셀이라는 단위로 구성되어 저장되어 있다. 상기 사진 이미지는 카메라를 사용하여 생성된다. 따라서 카메라의 해상도에 따라 생성되는 사진 이미지의 픽셀 수는 달라진다. 예를 들면 Iphone 13 프로의 전면, 후면 카메라의 해상도는 각각 12백만 픽셀이다. 상기 카메라로 한장의 사진을 찍었을 때, 1200만 픽셀을 가진 사진을 생성할 수 있음을 의미한다. 이들 생성된 사진 이미지는 스마트폰의 디스플레이에 표시된다. Iphone 13프로의 경우 디스플레이의 해상도는 6.1인치의 경우, 1170 x 2532픽셀, 그리고 6.7인치의 경우, 1284x2778픽셀을 가지고 있다. 상기 스마트폰으로 촬영된 사진은 압축되어 상기 디스플레이에 표시된다.
도 3및 도 4의 사진이미지는 컬러이다. 컬러 이미지의 경우, 도 6과 같이 사진 데이터인 하나의 픽셀은 3개의 컬러 데이터RGB(Red, Green, Blue)로 나타낸다. 각각의 컬러 데이터 값은 0-255사이의 값을 가지며, 픽셀의 컬러 Red, Green, Blue의 정도를 나타낸다. 각 픽셀은 8비트의 기본 컬러값을 조합하여 256x256x256= 16, 777,216가지의 컬러를 표현할 수 있다. 즉 하나의 픽셀의 컬러는 컬러 3개의 조합수 24비트를 이용하여 표현한다. 또 상기 컬러픽셀에는 픽셀의 투명도(transperancy)를 나타내는 알파(alpha)값 8비트를 더하여 픽셀당 32비트의 데이터 값으로 나타낼 수 있다. 또 상기 디스플레이 상의 픽셀의 위치(X, Y)를 나타낼 수 있고 디스플레이상의 한 픽셀을 특정하여 검색할 수도 있다. 따라서 스마트폰 상의 특정 지점의 픽셀 컬러값을 검색할 수도 있고 특정 컬러값을 가진 디스플레이상의 픽셀 위치를 찾아낼 수도 있다.
그러므로 1024*1024 픽셀의 이미지일 경우 저장 공간은 약 24Mbits가 소요된다. 저장을 위해 필요한 공간을 줄이기 위해 압축 기법이 사용된다. 유명한 압축 기법으로는 ISO 에서 표준화된 JPEG(Joint Photographers Encoding Group) 과 GIF(Graphic Interchange Format) 과 TIFF(Tag Image Format) 등이 있다. 이와 같은 사진 이미지를 본 발명의 키로 사용할 수 있다.
도 5은 본 발명에서 암호키의 난수로 사용가능한 문자텍스트의 파일을 나타낸다. 문자데이터는 unicode로 나타낸다.
도 7은 유저의 스마트폰에서 제작 가능한 음성, 음악 등의 오디오로 이루워진 미디어 콘텐츠 파일의 생성 과정을 나타낸다. 오디오의 아날로그 데이터를 디지털화하여 바이너리 데이터로 변환하는 과정을 나타낸다.
본 발명은 송신자의 암호대상이 되는 평문에 대한 암호기술을 제공한다.
상기한대로 본 발명의 평문이란 송신자의 문자 텍스트 파일, 오디오 파일, 비디오 파일 또는 상기 데이터를 혼합한 멀티미디어 파일 등 암호대상을 통칭한다.
상기와 같은 과정으로 유저의 스마트폰에서 제작된 유저의 멀티미디어 컨텐트인 오디오 파일의 바이너리 데이터를 본 발명의 키로 사용할 수 있다.
도 8는 오디오와 비디오가 합성된 멀티미디어 동영상 파일에 대한 바이너리 데이터의 생성을 나타낸 것이다. 간단한 프로그램으로 MP3, MP4의 포멧으로 압축된 멀티미디어 콘텐츠인 비디오 파일의 데이터를 나타낸다. 상기 비디오 파일은 바이너리 데이터로 표현되나 길이가 길어 편의상 16진 데이터로 변환 표시한 것이다. 상기 동영상의 바이너리 데이터 파일로부터 특정 오디오 및 비디오 화상 데이터, 특정 시간의 콘텐츠 및 동영상의 콘텐츠를 검색하여 지정할 수 있다
디지털화된 비디오는 큰 저장 공간을 요구한다. 저장 공간을 줄이기 위해서는 압축 기법의 적용이 필요하다. MPEG (Motion Pictures Encoding Group) 은 압축과 비디오 저장매체를 위해 ISO 에서 정한 표준이다 . 표준 MPEG 2 , MPEG3, 그리고 MPEG4등은 압축된 비디오와 함께 오디오를 저장하는 방법을 제공한다.
본 발명은 상기와 같이 유저의 스마트폰에서 제작된 멀티미디어 콘텐츠인 비디오 파일의 바이너리 데이터를 '키'로 사용할 수 있다
본 발명의 유저의 멀티미디어 콘텐츠 파일의 바이너리 데이터를 사용하는 키는 기존의 난수생성기에서 생성하는 키와는 다음과 같은 기본적인 차이가 있다.
첫째, 본 발명의 난수 생성기로서의 유저의 미디어 콘텐츠 파일은 복사에 의하지 않는 한 재현 불가능하다. 왜냐 하면 송신자 또는 수신자가 개인으로 제작한 미디어 파일은 동일한 것이 될 수 없다. 각각의 개인은 동일 시간, 동일 공간이라 할지라도 동일한 데이터로 만들어지는 콘텐츠를 생산할 수가 없다. 설사 동일한 시간, 위치, 상황에서 동일한 콘텐츠를 생산한다고 가정해도 각 개인이 생산한 콘텐츠의 데이터의 비트열까지는 동일할 수 없다. 각각의 개인이 생산하는 콘텐츠는 생산자, 생산일시, 위치, 대상 등등의 메타데이터로 구분할 수 있듯이 외형으로는 동일하게 보여도 재현 가능한 콘텐츠를 결코 생산할 수 없음은 경험적으로도 알 수 있다. 공간성을 갖는 텍스트나 화상등과 시간성을 갖는 음향이나 동영상 또는 애니메이션 그리고 이들 미디어 데이터들이 통합, 구성되는 멀티미디어 데이터는 각 구성 미디어 특성에 따라서 공간적이고 시간적인 관계를 복잡하게 갖는다. 예를 들면 동일한 피사체의 사진을 찍는다 해도 동일한 사진은 재현 불가능하다. 또 동일한 문자 텍스트 메시지라 할지라도 동일한 사람이 동일한 콘텐츠를 동일 시간에 동시에 생산할 수 없다. 송신자 또는 수신자 각자가 생산하는 멀티미디어 콘텐츠 파일을 제 3자가 예측하는 것도 불가능하다. 그 위에 상기 어떤 미디어의 평문에 어떤 미디어의 파일이 암호키로 사용되었는지 예측이 불가능하고 설사 암호키를 알고 있다 해도 어떤 평문에 어떤 미디어 파일이 사용되었는가 판단이 불가능하다. 상기와 같은 본 발명의 멀티미디어 콘텐츠 파일을 난수생성기로 사용하는 것은 상기 원타임 패드에서 설명한 암호의 '정보론적 안전성'의 제일 조건, 즉 암호키의 시드인 난수가 재현 불가능해야 한다는 기본적인 요구 조건을 만족한다.
둘째, 본 발명의 암호키 생성용 난수생성기로서의 멀티미디어 콘텐츠 파일은 송신자의 암호대상인 평문과 동일한 포멧의 데이터 구조를 가지므로 다양한 평문과 다양한 키를 선택적으로 최적의 조합에 의한 사용이 가능하다. 즉 유저 평문은 표현 미디어의 종류에 따라 다르고 또 그 사이즈 또한 다양하다. 이와 같은 평문의 다양한 요구에 대하여 본 발명 방법의 암호키는 유연하게 대응할 수 있다.
상기한 대로 본 발명의 암호키 생성용 난수 생성기로서의 미디어 콘텐츠 파일은 평문의 다양한 길이에 따라 동일한 길이 이상의 키를 제공해야 한다는 암호의 정보이론적 안전성의 요구 조건을 만족한다.
예를 들면 기존의 진성 난수생성기 또는 의사난수생성기는 동일 구성의 출력 데이터에 불과하기 때문에 암호키의 길이 조정에 유연히 대응할 수 없다. 반면 본 발명의 유저가 작성하는 상기 미디어 콘텐츠 파일은 수 K 바이트에서 수십 M 바이트로 구성할 수 있다. 예를 들어 텍스트는 1 라인을 80 바이트, 1 페이지를 20 라인으로 가정할 경우 한 페이지가 1,600 바이트, 약 1.6KB 가 된다. 이미지의 경우 620 *560 해상도에 픽셀 크기와 픽셀 당 24 바이트를 가지는 프레임의 경우 1MB로 구성할 수 있다. 따라서 1 초당 30 프레임이 필요한 Full Motion 동영상의 경우 30 분에 50GB의 길이를 가진다. 오디오의 경우라면 64KB 를 CD 음질(44.1 KHz, 16- 비트로 샘플링) 한 스테레오시 1 초당 1.4MB이다. . 따라서 20 분 정도의 연설을 음성수준의 음질로 저장한다면 약 9.2MB 의 길이, 5 분 정도의 클래식 소품을 CD음질로 저장한다면 약 52MB 의 크기가 된다. . 따라서 크기가 큰 멀티미디어 데이터는 다양한 메세지의 평문의 길이에 유연하게 대응 가능한 암호키를 생성할 수 있는 장점을 가진다
셋째, 본 발명의 암호키 생성용 난수 생성기로서의 상기 멀티미디어 콘텐츠 파일은 암호키의 정보이론적 안전성의 조건인 원타임 패드, 즉 키의 재사용 없이 한번 쓰고 버릴 수 있는 키 생성 인터페이스를 유연하게 제공할 수 있다.
넷째, 본 발명의 암호키 생성을 위한 난수 생성기로서의 멀티미디어 콘텐츠 파일은 멀티미디어 데이터의 디지털화 처리에 있어 표준 규격에 따른 정보의 가공, 편집이 용이하여 키의 생성 및 알고리즘 적용에 표준화가 용이해진다.
다섯째, 본 발명의 암호키 생성을 위한 난수 생성기로서의 멀티미디어 콘텐츠 파일은 암호대상인 평문과 암호키의 상호대화(interactive) 형식의 조작이 가능하여 보다 유저 프렌드리로 쓰기 편한 암호 시스템을 제공할 수 있다.
여섯째, 본 발명의 암호키 생성용 난수 생성기로서의 멀티미디어 콘텐츠 파일은 대용량 정보의 압축/복원이 가능하여 전송이나 출력에 의한 정보의 저질화를 방지할 수 있고 패킷 통신 기술적용이 쉽고 송수신에 따른 정보 공유가 용이하다
일곱째, 본 발명에 따른 암호키 생성을 위한 난수 생성기로서의 멀티미디어 콘텐츠 파일은 송신자 또는 수신자 기기의 파일 시스템 또는 데이터베이스에 안전하게 저장되어 키 정보 검색 등에 효과적으로 대응할 수 있다.
여덟째, 본 발명의 멀티미디어 콘텐츠 파일의 키를 사용하는 암호 알고리즘은 공통키 암호방식의 원타임 패드 암호와 같이 배타적 논리합 계산으로 암호와 복호가 가능하여 처리 속도가 빠르다.
아홉째, 본 발명의 멀티미디어 콘텐츠 파일을 사용하는 암호키 생성은 기존의 멀티미디어 처리 소프트웨어, 하드웨어를 그대로 사용할 수 있어 경제적 암호 시스템 및 방법의 제공이 가능하다.
상기와 같이 본 발명은 암호화/복호화 키를 미디어 콘텐츠 파일로 실행하는 것이 기술 특징이다.
상기한 대로 공통키 암호에서 키배송 문제를 해결하는 것이 최대 난제이다. 상기 공통키 암호에서 지금까지 알려진 키배송 방식은 상기한대로 DH방식, 공개키 방식, 하이브릿 방식, 타원곡선에 의한 방식, 포스트양자암호 방식, 양자키배송방식등이 있다.
본 발명의 암호방식은 상기 암호키의 생성과 키배송 방법에서 여러가지를 제공할 수 있다.
본 발명에 있어 메시지를 주고 받는 송신자와 수신자 사이에 구비해야할 기술 구성의 전제 조건을 설명한다. 상기 송신자 및 수신자는 공개키를 항상 공개하고 있고, 상기 송신자 및 수신자의 기기가 공개하는 공개키의 방식은 RSA, 타원곡선, ElGamal , 격자 그리고 양자 등 주지의 암호 방식를 제공할 수 있는 프로그램 및 절차(protocol)를 구비하고 있다고 가정한다.
본 발명에서 상기 수신자 또는 송신자들이 제공하는 공개키 방식에 따라 상기 수신자 또는 송신자의 비밀키를 암호화할 수 있다. 즉 상기 수신자 또는 송신자가 제공하는 공개키의 암호 방식이 어떤 방식이던 상기 수신자 또는 송신자의 공개키 암호에 대응하는 방식으로 수신자 또는 송신자의 비밀키를 암호화 또는 복호화할 수 있다고 가정한다. 또 다른 방식의 공개키에 의한 수신자의 비밀키의 복호화도 기존의 암호/복호화 공식에 따라 처리 가능하다..
도 9는 본 발명의 제 1실시예를 나타낸다
상기 송신자(91)가 자신의 평문을 암호화하여 송신하고자 할 경우, 전달하고자 하는 평문의 암호문을 송신 전에 작성해야 한다. 상기 송신자의 평문은 송신자가 자신의 사용 기기, 예를 들면 스마트폰의 키패드, 마이크 그리고 카메라 등등을 이용하여 자신의 평문을 작성(90)하여 자신의 기기에 저장할 수 있다.
상기 송신자는 암호화 대상인 평문 파일을 작성(92)하여 상기 송신자 기기의 메인 메모리에 로드한다.
상기 송신자는 자신의 평문을 암호화하기 위한 상기 암호키로서 상기 송신자의 사용 기기에서 저장 관리하고 있는 암호키 생성용 미디어 콘텐츠 파일을 하나 선택 지정(93)하여야 한다. 상기 선택, 지정되는 암호키 생성용 미디어 콘텐츠 파일은 문자 텍스트 파일, 사진, 그래픽, 이미지 파일, 오디오 파일, 비디오 파일 또는 이들 미디어가 혼합된 파일 중 하나일 수 있다.
상기 송신자는 상기 평문을 암호화하기 위해 상기 송신자의 평문 암호키 파일을 메인 메모리에 로드한 후, 기기의 화면(screen)에 디스플레이한다(94). 상기 송신자의 평문 암호키 파일이란 상기 송신자의 기기에 저장되어 있는 미디어 콘텐츠 파일을 말하며 상기 저장되어 있는 상기 송신자의 미디어 콘텐츠 파일 하나를 선택하여 송신자의 기기의 스크린에 디스플레이한다(94).
이어서 상기 송신자는 상기 디스플레이된 암호키 파일 상에서 암호화 스타트 포인트를 터치 지정한다(95). 상기 송신자가 터치 지정한 포인트의 정보는 상기 송신자가 터치한 지점의 위치, 시각, 특징적 의미를 가진 문자 또는 수치 데이터이거나 상기 송신자의 미디어 콘텐츠 파일을 구성하는 바이너리 데이터 중에서 특정한 비트, 바이트 또는 워드(word) 단위의 데이터일 수 있다.
도3, 도4 및 도5 는 송신자 스마트폰에 디스플레이된 텍스트 파일 그리고 암호키 생성용 미디어 콘텐츠의 사진, 오디오 또는 비디오 파일의 예이며, 상기 송신자의 기기에 디스플레이된 사진 이미지 파일 상에서 송신자가 비밀키의 생성을 위해 '키'의 스타트 포인트를 송신자가 터치로 지정 선택하는 화면의 실시예이다.
예를 들면 도 3 및 4의 사진 이미지의 경우, 송신자가 터치한 지점의 중심점 픽셀의 바이너리 데이터, 즉 터치 포인트의 픽셀의 위치(X, Y) 값을 말한다.
도 5와 같은 문자 데이터 파일에서 터치 포인트의 정보는 상기 송신자가 상기 디스플레이된 암호키 생성용 텍스트 파일 상에 송신자가 터치로 지정한 지점의 문자의 위치 또는 유니코드를 말한다. 또 도 7과 도 8과 같이 상기 송신자의 기기에 디스플레이되는 암호키 생성용 멀티미디어 콘텐츠가 오디오 또는 비디오 파일이라면 상기 송신자가 상기 암호키 생성용 오디오 또는 비디오 파일에서 터치한 지점의 위치 좌표치, 특정 픽셀의 정보치, 디스플레이 시작점으로부터의 터치 시점까지의 시간, 예를 들면 디스플레이 개시시간으로부터 1분 30초 등 특정 시간일 수 있으며 상기 파일의 터치 지점에서 검색 가능한 특정 문자 정보 또는 특정 오디오 비디오의 콘텐츠 정보 또는 메타데이터일 수 있다.
상기 도 3 및 4와 같이 송신자의 기기에 디스플레이된(94) 사진 이미지 파일상에서 상기 송신자가 지정 선택한 스타트 포인트의 정보는 송신자 기기의 메모리에 저장된다. 예를 들면, 상기 미디어 파일상의 스타트 포인트의 좌표값 (X, Y)을 송신자 기기의 메모리에 저장한다. 상기 송신자의 저장된 스타트 포인트의 좌표값(X, Y)은 송신자의 암호을 위한 비밀키(96)로 사용한다.
도 5 은 본 발명에서 암호키의 난수로 사용가능한 문자텍스트의 파일을 나타낸다. 문자데이터는 unicode로 나타낸다.
도 7 은 유저의 스마트폰에서 제작 가능한 음성, 음악 등의 오디오로 이루어진 미디어 콘텐츠 파일의 생성 과정을 나타낸다. 오디오의 아날로그 데이터를 디지털화하여 바이너리 데이터로 변환하는 과정을 나타낸다.
오디오 데이터는 연관된 상속 시간 종속성(inherent time dependency ) 을 갖는다. 오디오는 디지털화 되고 디지털 오디오의 사이즈는 사용기술에 따라 다르다. 디지털화 된 오디오는 저장 매체의 사양을 줄이기 위해 효율적으로 압축할 수 있다.
도 10에서 상기의 본 발명의 제 1실시예에 대하여 보다 구체적인 실시예로 설명한다.
도 8 는 오디오와 비디오가 합성된 멀티미디어 동영상 파일에 대한 바이너리 데이터의 생성을 나타낸 것이다.
간단한 프로그램으로 MP3, MP4의 포멧으로 압축된 멀티미디어 콘텐츠인 비디오 파일의 데이터를 나타낸다. 상기 비디오 파일은 바이너리 데이터로 표현되나 길이가 길어 편의상 16진 데이터로 변환 표시한 것이다.
상기 동영상의 바이너리 데이터 파일로부터 특정 오디오 및 비디오 화상 데이터, 특정 시간의 콘텐츠 및 동영상의 콘텐츠를 검색하여 지정할 수 있다
그러나 평문의 비트열 위치는 (0, 0)로 하고 송신자의 암호키의 스타트 포인트을 픽셀 좌표 X, Y(123, 456)로 선택할 경우, 픽셀 위치(123, 456)의 상기 RGB 및 알파값이 0010(234, 123)…..1001.…1110과 같이 쉬프트되므로 송신자 평문의 스타트 픽셀부터의 비트열과 상기 수신자의 비밀키에 해당하는 좌표의 픽셀의 RGB 값의 비트열을 배타적 논리합으로 계산하면 1001….0101…0100이 된다. 그 이유는 송신자의 암호화 파일의 시작은 송신자 암호키 파일의 (123 456)이 초기값(0, 0)이 되어 쉬프트 계산이 되기 때문에 상기 계산 값은 1001….0101…0100이 된다. 상기 계산 값이 송신자 평문의 암호문이 된다.
또 상기 송신자는 송신자의 비밀키(96)를 암호화한다(913). 즉 상기 송신자는 자신의 평문을 암호화할 때, 사용했던 암호키 파일의 스타트 포인트의 정보를 상기 수신자가 제공하는 공개키로 암호화한다. 상기 송신자의 암호키 파일이 상기 도3의 사진 이미지라면 스타트 포인트의 픽셀 좌표값은 (123 ,456 )이므로 상기 픽셀의 상기 송신자의 작성 생성된 상기 평문암호문, 평문암호키 파일과 비밀키는 송신자의 기기에 저장되고 송신자의 전송 요구를 받아 수신자의 기기로 송신된다. 상기 수신자의 기기에는 스마트 폰, 테블릿, PC, 클라우드 서버 또는 P2P 네트워크 상의 터미널 기기를 포함한다.
상기 송신자의 비밀키의 암호방법(913)은 기존의 공개키 암호방식을 사용할 수 있다.
예를 들면 상기 송신자의 비밀키에 해당하는 미디어 콘텐츠 파일 상에서 송신자가 선택한 지점의 픽셀의 위치가 (123, 456) 값이라면 이 좌표값을 비밀키로서 암호화한다. 상기 좌표값의 암호화 방법을 RSA 와 타원곡선 암호로 설명하면 다음과 같다. 상기 수신자의 RSA암호의 공개키로 (E, N) =(5, 323)와 개인키 (D, N) =(29, 323)로 가정하면 상기 송신자의 비밀키인 좌표값(123, 456)의 암호문은 비밀키의 암호문 = 1235 mod 323 = 225, 4565 mod 323 =114 가 된다.
또 하나의 실시예로, 상기 송신자의 비밀키 좌표 (123, 345)는 평문으로 상기 수신자의 암호는 타원곡선 E : y2 = x3 + x + 6 mod 11상에서 기준점 P를 (2, 7)로 하고 개인키 x = 7와 공개키 Y =xP로 하는 타원곡선 암호 방식으로 가정한다. 또 상기 평문을 상기 타원곡선 상의 하나의 좌표로 변환한 결과를 M =(10, 9)라 가정한다. 상기 수신자의 공개키는 공식에 따라 Y =xP=7(2, 7) =(7, 2)가 된다. 또 타원곡선 암호의 공식에 따라 암호문 c1 =rP (생성된 난수를 3으로 가정) =3(2, 7) = (8, 3)와 c2= M + rY = (10, 9) +3(7, 2) = (10, 2)로 변환되며, 상기 송신자의 평문은 상기 송신자의 타원곡선으로 암호화하면 암호문 c =( c1, c2)는 (8.3), (10, 2)이 된다.
그밖의 본 발명의 비밀키에 대한 암호 방식(913)의 실시예는 주지의 기술이므로 설명을 생락한다.
상기 송신자의 평문 암호파일, 평문 암호키 파일 그리고 비밀키 암호파일을 수신한 상기 수신자는 상기 송신자의 비밀키의 암호파일을 복호화한다. 상기 송신자의 비밀키의 복호화 처리는 상기 수신자가 사전에 공개키로서 제공한 공개키 방식에 따라 수신자의 개인키를 이용하여 실행한다, 예를 들면 공개키 암호방식에 따라 상기 수신자가 사전에 상기 송신자에게 제공한 공개키 암호방식에 따라 달라진다.
예를 들면 상기 RSA, 타원곡선, 포스트 양자암호, 양자키배송(QKD)등에 따라 정해진 주지의 방법을 사용하여 복호화할 수 있다.
상기 복호화한 상기 송신자의 비밀키 정보를 이용하여 상기 송신자의 암호키 파일에서 암호화 스타트 포인트를 특정하고 상기 특정한 스타트 포인트를 암호화 시작점으로 한 상기 송신자의 암호키 파일의 비트열과 상기 송신자의 평문 암호문의 비트열을 배타적 논리합으로 계산한다.. 즉 상기 평문의 암호문(912)의 비트열과 평문 암호화 암호키 파일(914)의 비트열을 배타적 논리합으로 계산하여 평문(915)을 얻는다.
송신자 평문 = 송신자의 평문 암호파일 송신자의 평문 암호키 파일
상기 식을 구체적으로 설명한다. 상기의 도 10의 실시예처럼 송신자의 평문의 복호는 송신자의 평문 암호문 1101.....0101......0100(송신자의 평문 암호문)의 비트열과 상기 송신자의 암호키 파일의 비트열 0110........1001.......1110를 배타적 논리합으로 계산하여 이루워진다. 상기 계산 결과, 상기 송신자의 평문 1011......1100........1010(송신자의 평문 비트열)이 정확히 얻어진다
도 11은 상기 본 발명의 제 2 실시예를 설명하는 흐름도이다.
상기 도 11의 수신자는 불특정 다수의 송신자로부터 암호문을 전송 받는 통신유저이다. 상기 수신자는 상기 불특정 다수의 송신자로부터 암호문을 전송받기 위하여 상기 수신자가 스스로 송신자의 평문 '암호키 파일'을 생성하여 공개한다. 이때 수신자의 비밀키도 동시에 생성하여 상기 송신자의 공개키로 암호화한 후, 상기 수신자 비밀키의 암호문과 상기 송신자의 평문 암호키 파일을 공개적으로 상기 송신자들에게 전송한다.
상기 본 발명의 제 2실시예에 있어 상기 수신자의 암호키의 생성방법은 다음과 같다.
먼저 상기 수신자는 상기 송신자로부터 공개키를 전송받는다.
따라서 1 초당 30 프레임이 필요한 Full Motion 동영상의 경우 30 분에 50GB의 길이를 가진다. 오디오의 경우라면 64KB 를 CD 음질(44.1 KHz, 16- 비트로 샘플링) 한 스테레오시 1 초당 1.4MB 이다.
상기 수신자는 수신자의 디스플레이에 표시된 상기 미디어 콘텐츠 파일 상에서 암호키의 생성 지점을 가리키는 암호키의 스타트 포인트를 수신자가 터치로 지정한다(113). 상기 수신자가 터지 지정하는 암호키 스타트 포인트의 정보가 수신자의 비밀키(114)가 된다. 상기 터치는 시스템이 자동 또는 수신자가 수동으로 실행할 수 있다.
상기 송신자의 폄문 암호키용 미디아 콘텐츠 파일과 수신자의 비밀키의 기술적 의의는 상기 제 1실시예에서의 설명과 동일하다.
상기 수신자는 상기와 같이 생성된 상기 수신자가 생성한 상기 송신자의 평문 암호용 암호키 파일(115)은 상기 송신자(116)에게 전송한다.. 이때 상기 수신자의 비밀키는 상기 송신자가 제공한 공개키로 암호화하여 동시에 전송한다.
상기 수신자가 전송한 상기 송신자의 평문 암호용 암호키 파일을 수신한 상기 송신자는 상기 수신자가 보내온 비밀키의 암호문을 상기 송신자의 개인키로 복호화하여 상기 수신자의 비밀키의 정보에 따라 상기 수신자가 보내온 상기 송신자 평문 암호용 암호키 파일 상에서 암호 스타트 포인트를 특정한다. 그리고 상기 특정한 암호화 스타트 포인트의 픽셀위치부터의 비트열과 상기 송신자의 평문의 비트열을 배타적 논리합으로 계산한다(117). 상기 계산 결과가 상기 송신자 평문의 암호문(118)이 된다. 상기 송신자는 상기와 같이 암호화된 평문의 암호문을 상기 수신자에게 전송한다(119). 상기 암호문을 수신한 수신자는 수신자의 암호키와 비밀키 정보를 이용하여 상기 송신자의 암호문을 평문으로 복호화한다. 즉 상기 수신한 암호문 파일에서 비밀키의 정보가 가리키는 위치의 비트열과 상기 수신자의 암호키를 배타적 논리합으로 계산(1110)하여 상기 송신자의 평문(1111)을 얻을 수 있다.
송신자 평문 = 송신자 평문 암호문 파일 수신자 평문 암호키 파일
본 발명의 제 1 및 제 2실시예는 메시지 송신자 또는 수신자가 각각 평문 암호키 파일과 비밀키를 생성'하여 상기 평문 암호키 파일과 비밀키를 상기 수신자 또는 송신자에게 공개 또는 비밀리에 전송하면 상기 수신자 또는 송신자는 수신한 상기 송신자 또는 수신자의 평문 암호키 파일과 비밀키를 상기 수신자 또는 송신자가 직접 사용하여 암호문/복호 평문을 생성한다
본 발명의 제 1 및 제 2실시예의 경우, 공통키 배송은 상기 송신자 또는 수신자게 제공하는 평문 암호키로 공개적으로 공용한다.
도 12은 본 발명의 제 3실시예를 나타낸다.
본 발명의 제 3실시예는 상기 제 1 및 제 2실시예에 암호키 생성과 암호키 배송키를 따로 장치하여 보다 더 강도가 높은 암호를 제공할 수 있다. 본 발명의 제 3실시예의 암호과정은 다음과 같다
즉 본 발명의 제 3실시예는 상기 송신자가 송신자의 평문 암호키를 자신의 미디어 콘텐츠 파일로 사용한 경우 상기 송신자는 평문 암호문과 비밀키 암호파일만을 상기 수신자에게 전송한 후, 상기 송신자의 평문 암호키 파일은 상기 수신자가 제공하는 공통키 배송용 공개키 파일을 사용하여 상기 송신자의 평문 암호키 파일을 상기 수신자에게 전송한다. 그 결과 상기 송신자와 수신자 사이에 공통키 공유가 가능해진다..
도 12과 같이 상기 송신자의 평문 암호문과 비밀키 암호문을 수신한 수신자(120)는 상기 송신자의 평문 암호문을 생성한 상기 송신자의 암호키를 배송 받기 위하여 상기 수신자는 상기 수신자의 기기에 저장되어 있는 상기 미디어 콘텐츠 파일을 하나 선택하여(121) 메인 메모리에 로드한 후, 기기의 스크린 상에 디스플레이한다(122). 상기 수신자는 상기 디스플레이된 미디어 콘텐츠 파일 상에서 암호 스타트 포인트를 터치로 지정한다(123). 상기 터치 지정된 파일 상의 정보는 이미 상술한대로 상기 수신자의 비밀키(124)로서 여러가지 정보일 수 있다.
상기 수신자가 선택한 미디어 콘텐츠 파일은 상기 송신자의 평문 암호키를 배송 받기 위한 공개키(평문 암호키 배송용 공개키)이고 상기 터치 지정한 미디어 파일 상의 스타트 포인트의 정보는 수신자의 비밀키가 된다.
상기 수신자의 미디어 콘텐츠 파일은 상기 송신자의 암호키를 배송 받기 위한 공개키 파일(125)로서 상기 수신자의 비밀키 암호문(126)과 함께 송신자(127)에게 전송된다. 상기 수신자의 비밀키 암호문(126)은 상기한 대로 상기 송신자 주지의 공개키 암호 방식을 사용한다. 예를 들면 상기 수신자의 비밀키의 정보가 파일상의 픽셀 위치 정보라면 상기한대로 RSA, 타원곡선 등 알려진 공개키 암호방식을 적용하여 사용할 수 있다.
상기 수신자의 공개암호키(115)와 비밀키의 암호문(126)를 수신한 상기 송신자(127)는 상기 수신자의 비밀키의 암호문을 복호화하여 비밀키 정보를 취득한다.
상기 수신자의 비밀키의 암호문을 복호화하는 절차는 상기와 같이 주지의 암호 방식의 복호 알고리즘에 따른다.
상기 송신자는 복호화로 취득한 수신자의 비밀키와 상기 수신자가 보내온 공통키 배송용 공개키 파일(128)을 사용하여 송신자의 평문 암호키를 암호화한다. 상기 암호화 순서는 다음과 같다.
도 9 는 본 발명의 제 1실시예를 나타낸다.
상기와 같이 배타적 논리합의 계산 결과로 생성된 파일이 상기 송신자의 평문 암호키의 암호문(1210)이 된다. 즉
송신자 평문 암호키의 암호문 파일 = 송신자 평문 암호키의 파일 수신자 공통키 배송용 평문 암호키 파일
상기 생성된 송신자의 평문 암호키의 암호문은 다시 상기 수신자 기기(1211)로 전송된다. 상기의 절차가 본 발명의 공통키 배송 방법이다. 즉 상기 송신자의 평문 암호키는 상기 수신자가 송신자에게 전송한 수신자의 공개암호키와 비밀키를 사용하여 암호문으로 생성되고 상기 생성된 송신자의 평문 암호키의 암호문은 상기 수신자에게 다시 전송된다.
상기 송신자의 평문 암호키의 암호문을 전송 받은 상기 수신자는 상기 송신자의 암호키의 암호문을 복호화한다. 상기 복호화 과정은 다음과 같다.
상기 수신자는 수신한 송신자 암호키의 암호문 파일의 비트열(1212)과 상기 수신자의 공통키 배송용 공개키 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자의 암호키 암호문 파일에서 상기 송신자의 평문 암호키 파일을 복호화(1213)할 수 있다.
송신자의 암호키 = 송신자 암호키 암호문 파일 수신자 공통키 배송용 공개키 파일
상기 수신자는 상기 송신자의 암호문 파일 상에서 복호화 스타트 포인트의 위치를 이미 제공했기 때문에 용이하게 처리가 가능하다.
또 상기의 수신자는 상기와 같은 계산으로 복호화한 송신자의 평문 암호키 파일을 사용하여 송신자의 원래의 평문(1213)을 다음과 같은 계산 절차로 복호화할 수 있다. 즉 수신자는 상기 취득한 송신자의 평문 암호문 파일의 스타트 포인트부터의 비트열을 상기 송신자의 평문 암호키 파일의 스타트 포인트부터의 비트열과 동기를 취하여 배타적 논리합으로 계산한다. 즉
송신자의 평문 = 송신자 평문 암호키 파일 송신자 평문 암호문
도 3, 도 4 및 도 5 는 송신자 스마트폰에 디스플레이된 텍스트 파일 그리고 암호키 생성용 미디어 콘텐츠의 사진, 오디오 또는 비디오 파일의 예이며, 상기 송신자의 기기에 디스플레이된 사진 이미지 파일 상에서 송신자가 비밀키의 생성을 위해 '키'의 스타트 포인트를 송신자가 터치로 지정 선택하는 화면의 실시예이다.
예를 들면 도 3 및 4 의 사진 이미지의 경우, 송신자가 터치한 지점의 중심점 픽셀의 바이너리 데이터, 즉 터치 포인트의 픽셀의 위치(X, Y) 값을 말한다.
도 5 와 같은 문자 데이터 파일에서 터치 포인트의 정보는 상기 송신자가 상기 디스플레이된 암호키 생성용 텍스트 파일 상에 송신자가 터치로 지정한 지점의 문자의 위치 또는 유니코드를 말한다.
또 도 7 과 도 8 과 같이 상기 송신자의 기기에 디스플레이되는 암호키 생성용 멀티미디어 콘텐츠가 오디오 또는 비디오 파일이라면 상기 송신자가 상기 암호키 생성용 오디오 또는 비디오 파일에서 터치한 지점의 위치 좌표치, 특정 픽셀의 정보치, 디스플레이 시작점으로부터의 터치 시점까지의 시간, 예를 들면 디스플레이 개시시간으로부터 1분 30초 등 특정 시간일 수 있으며 상기 파일의 터치 지점에서 검색 가능한 특정 문자 정보 또는 특정 오디오 비디오의 콘텐츠 정보 또는 메타데이터일 수 있다.
상기 식을 구체적으로 설명한다. 상기의 실시예처럼 송신자의 평문의 복호는 송신자의 평문 암호문 0100.....1110......0011(송신자의 평문 암호문)의 비트열과 상기 송신자의 암호키 파일의 비트열 1110........0010.......1000을 배타적 논리합으로 계산한다. 상기 계산 결과, 상기 송신자의 평문 1010......1100........1011(송신자의 평문 비트열)이 정확히 얻어진다.
상기와 같이 본 발명은 상기 수신자의 공통키 배송용 공개키를 매개로 상기 송신자의 암호키를 배송 받아 송신자의 암호문을 복호화할 수 있다.
본 발명의 제 3실시예은 다음과 같이 변형될 수 있다. 본 발명의 제 4실시예라 칭한다.
즉 상기 송신자가 송신자의 평문의 암호문을 보내기 전에 먼저 상기 수신자의 상기 송신자의 평문 암호키와 비밀키 암호문을 사전에 전송한 다음에 송신자는 평문의 암호문과 암호키의 암호문을 상기 미리 전송받은 수신자의 공통키 배송용 공개키와 비밀키를 이용하여 생성한다. 그리고 상기 송신자의 평문 암호문, 송신자의 비밀키 암호문 그리고 상기 송신자 암호키의 암호문을 동시에 상기 수신자 기기로 전송하는 방식이다.
본 발명의 제 3실시예와 상기 제 4실시예의 차이는 상기 수신자의 공통키 배송용 공개키와 비밀키를 상기 송신자에게 전송하는 시점이 다를뿐, 본 발명의 암호 시스템과 방법에 부수되는 알고리즘은 동일한 것이다. 즉 제 3실시예는 상기 수신자가 상기 송신자의 평문의 암호문을 전송 받은 후에 상기 수신자가 송신자에게 수신자의 공통키 배송용 공개키와 비밀키 암호문을 전송하는 방법이고 변형의 제 4실시예는 상기 송신자가 평문의 암호문을 상기 수신자에게 전송하기 전에 상기 수신자로부터 수신자의 상기 공통키 키배송 공개키와 비밀키 암호문을 미리 전송 받는 방식이다. 이 차이는 상기 공통키의 배송을 상기 송신자의 암호문과 동시에 실행할 것인가 또는 상기 송신자의 암호문을 먼저 상기 수신자에게 송신한 후에 상기 수신자로부터 상기 수신자의 공통키 배송용 공개키와 비밀키 암호문을 전송 받는 것으로 상기 공통키의 배송 타임과 관련하는 사항일뿐이며 본 발명의 암호 기술의 의의 및 효과에는 차이가 없다
도 13은 본 발명의 제5 실시예의 처리 흐름도이다.
상기 송신자의 암호화 대상 평문이 1011.........1100.........1010(평문 비트열)과 같은 비트열로 구성되어 있다고 가정한다.
송신자의 평문 암호문 수신자의 공통키 배송용 공개키 파일 = 송신자 평문 암호문과 같은 길이의 수신자 공통키 배송용 공개키의 결합 파일
상기의 절차가 부가되는 실시예이다. 상기 절차를 부가하면 제 3 및 제 4실시예와는 달리 송신자의 평문 또는 암호문의 길이과 동일한 길이를 가진 상기 수신자의 공통키 배송용 공개키(123)를 미리 계산하여 상기 송신자에 제공할 수 있게 된다. 그 이유는 상기 본 발명의 과제에서 평문의 길이와 암호키의 길이가 동일해야 하는 조건, 즉 키의 동일 조건을 만족하게 한다. 즉 상기 송신자의 평문의 암호를 위해서는 적어도 평문의 길이와 같거나 보다 긴 암호키의 파일이 필요하다. 상기 본 발명에서의 평문 암호는 같은 길이 이상의 암호키 파일을 전제로 제공한다. 상기 수신한 송신자의 암호문에 대하여 상기 수신자의 공통키 배송용 공개키인 미디어 콘텐츠 파일을 선택하여 배타적 논리합으로 계산하여 상기 송신자의 암호키의 길이와 같거나 보다 긴 수신자의 공통키 배송용 공개키를 찾아낼 수 있다.
상기 절차에 의해 생성된 송신자 암호문과 같은 길이의 수신자 공통키 배송용 공개키의 결합 파일을 다시 상기 송신자의 암호문의 비트열을 배타적 논리합으로 계산하면 상기 송신자의 암호키의 길이와 같은 상기 수신자의 공통키 배송용 공개키를 얻을 수 있다(124). 즉 송신자 암호문과 같은 길이의 수신자 공통키 배송용 공개키의 결합 파일 송신자의 암호문 = 수신자의 공통키 배송용 공개키
상기 계산은 상기 수신자 기기 상에서 실행하거나 또는 상기 송신자 암호문과 같은 길이의 수신자 공개키의 결합 파일을 상기 송신자 기기(125)로 전송하여 상기 송신자의 기기상에서 실행할 수 있다. 왜냐하면 상기 송신자 평문의 암호문은 이미 상기 수신자의 기기 또는 상기 송신자의 기기에도 저장되어 있기 때문이다. 후자의 경우라면 상기 송신자 암호문과 같은 길이의 수신자 공통키 배송용 공개키의 결합 파일을 송신자에게 전송한다. 상기 송신자는 상기 전송받은 송신자 암호문과 같은 길이의 수신자 공통키 배송용 공개키의 결합 파일의 비트열과 상기 송신자의 평문 암호문의 비트열의 배타적 논리합 계산(126)을 상기 송신자의 기기에서 실행한다.. 계산결과 송신자 암호키의 길이와 같이 생성된 수신자의 공통키 배송용 공개키를 얻는다.
상기와 같이 생성된 상기 송신자 암호키의 길이와 같이 생성된 수신자의 공통키 배송용 공개키 파일은 상기 송신자의 기기 상에서 송신자의 평문 암호키와 배타적 논리합 계산(127)을 하여 새로운 파일을 생성한다. 상기 새롭게 생성된 파일은 상기 송신자에 의해서 상기 수신자의 기기로 전송된다.. 상기 새롭게 생성되어 상기 수신자 기기로 전송된 파일이 상기 송신자의 평문 암호키를 배송하는 암호파일(128)이 된다.
상기 송신자의 평문 암호키를 배송하는 암호파일을 수신한 상기 수신자(129)는 상기 송신자의 평문 암호키를 배송하는 파일의 비트열과 상기 수신자의 공통키 배송용 공개키 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자의 평문의 암호키를 획득할 수 있다(1210). 즉
송신자의 평문 암호키를 배송하는 파일 수신자의 공통키 배송용 공개키 파일 = 송신자의 평문 암호키 파일
또 다시 상기 수신자는 상기 수신한 송신자의 평문 암호문의 비트열과 상기 송신자의 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자의 평문을 얻는다(1211).
송신자 평문 암호문 송신자 평문 암호키 파일 = 송신자 평문
상기와 같은 본 발명의 절차로 공통키 암호를 기반으로 하면서 다양한 공통키 배송 절차를 이용하여 유연하게 암호 시스템 및 방법을 제공할 수 있다.
.다음은 본 발명의 암호 시스템 및 방법의 제 6실시예를 설명한다.
본 발명의 암호는 온라인 통화 모드에서도 사용할 수 있다. 즉 상기 송신자 또는 수신자는 스마트 폰등을 이용하여 오디오 또는 비디오 통화가 가능하다. 상기 통화 모드에서 본 발명의 암호 시스템 및 방법을 설치하여 사용할 수 있다. 즉 상기 송신자 또는 수신자는 상기 통화 모드를 선택하고 통화 개시전에 사전에 상기 송신자 또는 수신자는 통화 상대방에게 공개키를 전송하며 동시에 상기 상대방의 평문 암호키 파일 및 비밀키를 요청하여 교환한다. 상기 요청은 상기 공개키 전송 신호만으로 대행할 수도 있다. 상기 전송 또는 요청을 받은 상기 송신자 또는 수신자는 자신들의 기기에서 상기 평문 암호키 파일 및 비밀키의 암호문을 생성하여 각각의 통신 상대방의 기기로 전송하여 교환한다. 상기 송신자 또는 수신자의 평문 암호키 파일 또는 비밀키 암호문의 생성 절차는 상기 본 발명의 제 1, 2, 3 및 4실시예의 것과 동일하다. 상기 통신 상대방의 상기 공개키를 전송 받거나 상기 평문 암호키 및 비밀키을 요청받은 상기 송신자 또는 수신자는 자신들의 평문 암호키 파일과 비밀키의 암호문을 상기 송신자 또는 수신자와 상호 교환한다. 상기 평문 암호키 파일과 비밀키 암호문을 수신한 상기 송신자 또는 수신자는 상기 비밀키의 암호문을 복호화한 후, 상기 평문 암호키 파일 상의 암호화 스타트 포인트를 설정하고 상기 통신 상대의 통화 수신을 대기한다. 상기 통화 상대방의 수신 대기 상태를 확인하면 통화 당사자는 자신의 평문 암호키 파일의 암호화 스타트 포인트를 설정 터치한 후, 통화를 개시한다. 상기 통화 데이터의 비트열과 상기 평문 암호키 파일의 비트열과의 배타적 논리합 계산을 시작하고, 계산결과를 통화회선을 경유하여 통신 상대방에게 전송한다. 상기 통화회선을 통하여 전송되는 통화 암호문 파일의 비트열을 상호 수신한 상기 송신자 또는 수신자는 상대방의 통화 암호문을 자신의 기기 상에서 공개 암호문 파일과 비밀키 데이터를 사용하여 복호화한다. 상기의 평문 암호키, 비밀키, 평문 암호키파일에 의한 암호문 생성 또는 상기 복호화 처리는 상기 상술한 기술 내용과 동일하다. 따라서 구체적 설명은 생략한다.
다음은 본 발명의 제 7실시예이다.
즉 상기 송신자 또는 수신자는 상기 통화 모드를 선택하고 통화 개시전에 상기 송신자 또는 수신자는 통화 상대방에게 상기 송신자 또는 수신자의 공개키, 평문 암호키 파일 및 비밀키의 암호문를 모두 전송한다. 상기 주지의 공개키, 공개 평문 암호키 파일 및 비밀키의 암호문을 전송받은 상기 송신자 또는 수신자는 자신의 기기에서 상기 비밀키의 암호문을 복호화하여 상기 공개 평문 암호키 파일의 암호화 스타트 포인트를 설정하고 통화 수신 상태 완료를 각각의 통화 상대의 기기로 전송하여 교환한다. 상기의 절차로 상기 송신자 또는 수신자는 암호 통화가 가능하게 된다. 상기 평문 암호키 또는 비밀키 암호문의 생성 절차는 상기 본 발명의 제 1, 2, 3, 및 4실시예의 것과 동일하다. 상기 통화 상대방의 수신 대기 상태를 확인하면 통화 당사자는 자신의 공개 평문 암호키 파일의 암호화 스타트 포인트를 설정 터치한 후, 통화를 개시한다. 상기 통화 당사자의 통화 데이터의 비트열과 상기 공개 평문 암호키 파일의 비트열을 배타적 논리합으로 계산하여, 그 결과를 통화회선 경유하여 통신 상대방에게 전송한다. 상기 통화회선를 통하여 전송되는 통화 암호문 파일의 비트열을 상호 수신한 상기 송신자 또는 수신자는 상대방의 통화 암호문을 자신의 기기 상에서 평문 암호문 파일과 비밀키 데이터를 사용하여 복호화한다. 상기의 평문 암호키, 비밀키, 평문 암호키 파일에 의한 암호문 생성 또는 상기 복호화 처리는 상기 상술한 본 발명의 실시예의 기술 내용과 동일하다. 따라서 구체적 설명은 생략한다. 상기 통화회선이란 통화 기기가 유무선 네트워크로 연결된 기구를 말한다. 또 통화 데이터란 통화 상대방이 대화를 통해 생성되는 데이터를 말한다.
일반적으로 10분간의 휴대폰 통화에서 발생하는 데이터량은 120만 바이트로 알려져 있다. 본 발명의 암호키 파일로 상기 도 3 또는 도 4의 사진 데이터 파일로 상기 10분 전체의 통화데이터에 대한 암호화가 가능해진다.
상기의 본 발명의 실시예와 같이 본 발명의 공통키 암호방식과 키공유를 위한 키배송 방법이 기존의 암호방식과 다름을 알 수 있다.
상기 본 발명의 실시예는 상기 송신자 또는 수신자가 생성한 평문 암호용 암호키 파일을 이용하는 방식으로 상기 암호키 파일은 통신 상대에게 공개된다. 따라서 상기 암호키 파일은 그대로 도청자에게도 공개된다. 그럼에도 다음의 설명과 같이 본 발명의 암호는 정보이론적으로 안전하다
본 발명의 암호 시스템과 방법의 장점은 다음과 같다.
첫째, 본 발명의 암호는 정보이론적으로 안전하다
암호키의 안전성 평가에는 정보이론적 안전성 그리고 계산량적 안전성이 널리 알려져있다.
상기 정보이론적 안전성이란 무조건으로 안전(unconditionally secure)하며, 이론적으로 해독 불가능(theoretically unbreakable)을 의미하며 1949년 당시 원타임 패드 암호의 안전성을 평가하면서 샤넌(C. E Shannon)에 의해서 수학적으로 증명되었고 현재 확립된 이론이다.
상기 샤넌의 정보이론적 안전성에 관한 수학이론은 다음과 같다.
여기서 M, K, C를 각각 평문, 키, 암호문 의 확률변수라 한다. 이때, 임의의 암호문 c, 임의의 평문 m에 대하여 다음 식이 성립할 때, 암호는 정보이론적 안전성(완전 안전성, 무조건 인전성)을 만족한다고 말한다.
Pr(M = m | C =c) =Pr(M= m)
상기 계산 결과, 상기 송신자의 평문 1011......1100........1010(송신자의 평문 비트열)이 정확히 얻어진다.
상기 본 발명의 암호 방식과 상기 식을 대비하여 해석하면, 상기 본 발명의 송신자 평문m은 상기 송신자에 의해서 확률에 따라 선택된다. 또 본 발명의 키k는 송신자 또는 수신자의 임의의 미디어 콘텐츠 파일에서 임의의 암호화 스타트 포인트를 랜덤하게 선택되어 사용된다. 그위에 상기한대로 본 발명의 평문과 키를 선택하는 것은 서로가 완전히 독립적으로 아무 관계가 없다. 즉 본 발명의 암호문은 평문과 키로부터 자동적으로 정해질뿐이다.
예를 들면 본 발명의 '키'가 상기 미디어 콘텐츠 파일 중, 도 3과 같은 사진 이미지라면 상기 픽셀 정보로 구성된 사진 이미지는 일회용으로 '진성난수 생성기'이고 상기 사진 이미지 상의 하나의 픽셀 좌표는 일회용의 비밀키에 해당하므로 가령 본 발명에 의한 암호문이 도청당하였다고 해도 상기 사진 이미지는 송신자 또는 수신자가 가지고 있는 수많은 사진 중에서 하나이고 또 사진 중의 픽셀은 iphone 13의 6.1인치 디스플레이인 경우, 1170x 2532= 2,862,440 개 중의 하나일뿐이다. 따라서 비밀키의 가능성은1/ 2,862,440 이다. 또 그중에서 어느 픽셀이 선택될 것인가는 모든 픽셀이 모두 균등하게 1/ 2,862,440 의 확률을 갗는다.. 따라서 평문의 가능성도 모두 균등하게 1/ 2,862,440이다. '결론적으로 본 발명의 암호는 상기한 샤넌이 정의한 정보이론적 안전성을 가진다.
정보이론적 안전성에 대한 또 다른 해석 방법이 있다. 본 발명의 상기 키는 송신자 또는 수신자의 미디어 콘텐츠 파일에서 랜덤하게 선택될 뿐, 어떤 사전, 사후의 조건도 없다. 또 상기 미디어 콘텐츠 파일 상에서 선택되는 터치 포인트 또한 랜덤하다. 예를 들면 상기 도 의 사진 이미지 파일에서의 터치 픽셀은 2,862,440 개의 픽셀 중에서 하나이므로 상기 비밀키인 터치 포인트는 무차별 대입공격(brute-force attack)으로 전 픽셀에 대해 패턴매취를 실시하면 언젠가는 찾아낼 수 있다. 즉 상기 brute-force attack란 모든 키를 순서대로 사용하여 복호화를 실행한 후, 얻어지는 평문이 바른 것인가를 판정하는 방법이다. 그러나 그 과정에서 복호화되는 전체 평문의 수는 상기 송신자의 비밀키를 포함하여 픽셀의 수만큼이 된다. 따라서 본 발명의 키는 픽셀 전체를 키로하여 차례로 복호화한 결과 얻어지는 평문이 원래의 바른 평문인가를 판단할 수 없다. 이와 같은 암호의 특징을 가진 암호에 대하여 정보이론적 안전성이라 한다.
둘째, 본 발명의 키는 기본적으로 일회성의 원타임 패드이다. 본 발명의 키는 상기 원타임 패드와 같이 정보이론적 안전성을 가진 암호의 조건, 즉 암호키의 일회성 사용 조건을 만족한다. 본 발명에서의 '키'는 상기 송신자 또는 수신자의 미디어 콘텐츠 파일과 상기 파일상에서 암호의 스타트 포인트를 지정하는 비밀키 두가지를 사용한다.
본 발명은 공통키 암호의 범주이면서도 상기 키 생성과 관리에 있어 부담이 적다. 상기한대로 상기 공통키 암호의 또하나의 단점은 통신 상대가 많아질수록 키관리가 어렵다는 것이다.
일반적으로 상기 공통키 암호의 경우는 통신 참가자의 수를 N로 했을 때, 키수 N(N-1)/2개가 필요하다. 예를 들면 공통키 암호의 경우, 통신참가자가 10명이라면 10(10-1)/2 = 45 개의 키가 필요하다. 이와 같이 공통키 암호의 경우, 통신유저가 늘수록 키수가 증가하기 때문에 키의 생성과 관리에 어려움이 있다.
본 발명의 경우, 공통키 암호와 동일 카테고리의 암호이면서 키의 생성 및 관리에서 부담이 적다. 즉 본 발명의 키 생성은 상기 수신자 또는 송신자의 미디어 콘텐츠 파일과 상기 콘텐츠 파일 상의 터치 포인트 정보를 기반으로 하기 때문에 상기 미디어 콘텐츠 파일이 갖는 데이터의 특징을 이용하여 키 생성 수를 조정할 수 있고 키의 종합관리도 쉽다. 예를 들면, 상기 도3 과 같은 사진 이미지를 암호키로 사용할 경우, 하나의 사진 이미지 파일에서는 2,862,440 개의 비밀키를 생성할 수 있다. 즉, 본 발명에서 일회성 키란 상기 미디어 파일 하나를 또는 상기 미디어 파일 상의 터치 포인트 픽셀 하나를 의미한다. 따라서 하나의 콘텐츠 파일를 암호키로 선택하면 iphone 13의 6.1인치 디스플레이인 경우, 1170x 2532= 2,862,440 픽셀 수이므로 실제적으로 키의 안전을 위하여 1만개 정도에서 한개까지의 비밀키를 중복 없이 생성하여 사용할 수 있다. 그 위에 상기 미디어 콘텐츠 파일은 주일별, 날짜별, 시간별, 통신 상대별, 평문 미디어별 등등으로 구분하여 복수의 파일을 생성해두고 상기 파일 상에 소수의 비밀키를 지정해 번갈아 사용하면서 키를 의미있게 관리할 수있다. 결과적으로 본 발명의 암호키는 공개키의 경우와 같이 2N개 이내의 키생성으로 암호시스템 및 방법을 실시할 수 있다.
상기 본 발명의 암호 통신은 수신자 대비 송신자가 1 대 N 또는 1 대 1일 수 있다. 1대 N의 통신 환경이라면 상기 수신자는 동일한 수신자의 공개키와 비밀키를 N명의 송신자에게 동시에 공개할 수 있다. 또 1대 1의 개별 통신으로 한다면 서로 다른 상기 수신자의 공개키와 비밀키를 개별로 공개 제공할 수 있다. 상기와 같은 본 발명의 실시예의 통신환경이라면 상기 송신자 또는 수신자의 생성, 관리하는 '키수'는 달라진다. 이와 같은 기술 요구에 대비할 수 있는 암호가 본 발명의 암호이다. 이와 같은 본 발명의 기술 구성의 기술적 의의는 기존의 암호방식과는 근본적으로 기술 구성을 달리하는 특징이라 할 수 있다.
본 발명 암호의 계산량적 안전성에 대한 평가는 다음과 같다. 본 발명의 암호에 사용하는 미디어 콘텐츠 파일은 텍스트 파일, 사진 이미지 파일, 오디오 파일, 비디오 파일 또는 이들 미디어을 혼합한 파일일 수 있다. 본 발명에서 상기 도청자가 도청가능한 것은 송신자의 평문 암호문, 송수신자의 암호키 암호문 파일, 수신자의 공개 평문 암호키 파일, 송신자 또는 수신자의 공개키 파일 등이다. 상기 도청 가능한 파일에서 수신자 공개 평문 암호키 파일이외에는 도청자는 도청한 파일이 어떤 미디어 파일이 사용되었는지 알 수 없다. 파일 비트열만이 보일뿐으로 상기 비트열의 정보구조는 미디어에 따라 모두 다르다. 즉 텍스트 파일이라면 문자코드, 컬러사진 이미지라면 RGB데이터, 오디오 파일이라면 오디오 압축데이터, 비디오라면 비디오 압축 데이터로서 각각의 표준형 포멧이 다르다. 상기와 같은 이유로 상기 도청가능한 파일의 비트열만으로 상기 미디어의 파일 포멧을 알아내기는 계산적으로도 어려운 문제이다.
한편 본 발명의 상기 공통키 암호키 배송 방법의 암호 처리 시간은 다른 기존의 방법보다 약 1000배에서 10000배 빠르다는 것이 알려져 있다. 또 본 발명의 키배송 방식에 있어 공개키 방식에 의한 암호키 파일의 스타트 포인트 비밀키의 암호는 단순하여 기존의 공개키 방식에 의한 키공유 방식보다 월등히 간단하다
상기와 같이 본 발명의 미디어 컨텐츠 파일을 사용하는 '키'는 기존의 어떤 암호키의 길이보다 길다. 그럼에도 암호처리는 빠르다.
특히 본 발명의 멀티미디어 콘텐츠 파일을 암호키로 사용하는 기술적 의의는 원타임 패드 암호가 가진 정보이론적 안전성에 기반하는 암호이면서 계산량의 안전성도 겸비하는 점에 있다. 도 본 발명의 키는 한번 쓰고 버리는 원타임 암호로서 쓰기 편하고 생성이 간편한 암호이다. .
본 발명의 상기 효과와 더불어 추가로 정리하면 다음과 같다.
첫째 본 발명의 암호는 정보이론적으로 안전하다. 본 발명의 암호키 생성을 위한 시드(seed)는 기존의 난수생성기, 의사난수생성기와는 다르게 송신자, 수신자 등 유저의 멀티미디어 컨텐츠 파일을 사용하기 때문에 암호의 안전성은 보장된다. 상기 유저의 멀티미디어 컨텐츠 파일은 무작위성이 충분하고, 예측이 불가능하므로 재현이 불가능함은 정보이론적으로도 안전성을 보증한다. 본 발명의 암호에 대한 안전성은 다음의 샤년 수식으로 입증이 가능하다.
둘째, 본 발명의 암호는 스마트폰을 비롯한 소형의 기기에서 비싼 난수생성기의 도입없이 일상의 생활에서 제작 가능한 멀티미디어 컨텐츠 파일을 사용하여 암호키를 생성하고 암호처리를 행하기 때문에 경제적이며 유저 친화적인 암호 서비스를 제공할 수 있다.
셋째, 본 발명은 향후 서비스 시장이 형설될 센서 네트워크, NFT 서비스, 메타버스, 자율 지동차, 드론, 원격 의료, 등등에서 요구되고 있는 암호 기술에서 교환되는 다양한 멀티미디어 정보, 데이터에 유연하게 대응할 수 있는 암호 기술을 제공할 수 있다.
넷째. 향후, 양자컴퓨터의 등장등의 기술 혁신에도 유연하게 사용가능한 암호 시스템을 제공할 수 있다.
다섯째, 기존의 암호 방식과는 달리 유저 스스로가 자신의 기기에서 암호대상 멀티미디어 콘텐츠의 평문과 암호키 생성 멀티미디어 콘텐츠를 취사선택하여 손쉽게 이용할 수 있는 암호시스템을 제공할 수 있다.
여섯째, 본 발명은 공통키 암호방식으로 처리속도가 빠르고 관리하는 키의 수가 적고 키관리 또한 용이하다.
본 발명의 제 1 및 제 2 실시예의 경우, 공통키 배송은 상기 송신자 또는 수신자게 제공하는 평문 암호키로 공개적으로 공용한다.
예를 들면 본 발명의 실시예 들을 조합하여 보다 강도가 높은 본 발명의 암호를 생성할 수 있다.
이하에서 상기한 조합한 실시예를 설명한다
즉 본 발명의 제 3실시예는 상기 송신자가 송신자의 평문 암호키를 자신의 미디어 콘텐츠 파일로 사용한 경우 상기 송신자는 평문 암호문과 비밀키 암호파일만을 상기 수신자에게 전송한 후, 상기 송신자의 평문 암호키 파일은 상기 수신자가 제공하는 공통키 배송용 공개키 파일을 사용하여 상기 송신자의 평문 암호키 파일을 상기 수신자에게 전송한다. 그 결과 상기 송신자와 수신자 사이에 공통키 공유가 가능해진다.
도 12 과 같이 상기 송신자의 평문 암호문과 비밀키 암호문을 수신한 수신자(120)는 상기 송신자의 평문 암호문을 생성한 상기 송신자의 암호키를 배송 받기 위하여 상기 수신자는 상기 수신자의 기기에 저장되어 있는 상기 미디어 콘텐츠 파일을 하나 선택하여(121) 메인 메모리에 로드한 후, 기기의 스크린 상에 디스플레이한다(122).

Claims (21)

  1. 네트워크로 연결된 송신자 또는 수신자 기기 상의 암호시스템에 있어서
    상기 송신자 또는 수신자 기기는 스마트폰, 태블릿, 스마트워치, PC, CCTV, GPS, 및 센서 디바이스 중 하나 이상을 포함하며 상기 송신자 기기는 송신자의암호화 대상인 평문을 저장할 수 있는 메모리 수단,
    상기 송신자의 암호화 대상인 평문은 문자 텍스트 파일, 사진 이미지 파일, 오디오 파일 및 비디오 파일의 콘텐츠 파일을 하나 이상 포함하는 수단,
    상기 송신자의 암호화 대상인 평문에 대하여 상기 수신자 또는 송신자가 제공하는 콘텐츠 파일을 상기 송신자 평문의 암호화를 위한 암호키로 사용하며, 상기 암호키로 사용하는 송신자 또는 수신자의 콘텐츠 파일은 문자 데이터의 텍스트 파일, 사진, 그래픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하는  송신자 평문의 암호문을 생성하는 수단,
    상기 수신자의 기기 상에서 상기 송신자의 평문의 암호문을 복호화하는 수단을 포함하고 있으며,
    상기 송신자 평문의 암호문을 생성하는 수단은,
    (a)  상기 송신자의 평문을 암호화하기 위한 암호키는 송신자가 제공하는 상기 콘텐츠 파일과 상기 송신자가 상기 송신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 수단, 또는
    (b)  상기 송신자의 평문을 암호화하기 위한 암호키는 상기 수신자가 제공하는 상기 콘텐츠 파일과 상기 수신자가 상기 수신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 수단, 또는
    (c)상기 송신자의 평문을 암호화하기 위한 암호키는 상기 송신자가 제공하는 콘텐츠 파일과 상기 수신자가 상기 송신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 수단, 또는
    (d)상기 송신자의 평문을 암호화하기 위한 암호키는 상기 수신자가 제공하는 상기 콘텐츠 파일과 상기 송신자가 상기 수신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 수단,
    중에서 어느 하나 이상을 구비하는  암호시스템.
  2. 제 1항에 있어서,
    (a) 상기 송신자의 평문을 암호화하기 위한 암호키는 송신자가 제공하는 상기 콘텐츠 파일과 상기 송신자가 제공하는 콘텐츠 파일 상에 상기 송신자가 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 수단은,
    상기 송신자 평문의 암호문을 송신하는 상기 송신자가 상기 송신자 평문의 암호화에 사용하는 암호키로서 상기 송신자의 기기에 저장되어 있는 콘텐츠 파일을 사용하며, 상기 송신자 평문의 암호화에 사용하는 콘텐츠 파일 상에서 상기 송신자가 터치 설정한 암호화 스타트 포인트 정보를 기재한 비밀키를 상기 송신자가 수신자에게 제공하여 사용하는 수단,
    상기 송신자가 제공하는 송신자 평문을 암호화하기 위한 암호키는 문자 데이터의 텍스트 파일, 사진 파일, 그래픽 이미지 파일, 오디오 파일 그리고 비디오 파일 등 미디어 콘텐츠 파일 중에서 적어도 하나를 포함하는 수단,
    상기 송신자가 터치 지정한 암호화 스타트 포인트 정보는 송신자 기기에 저장되어 있는 상기 미디어 콘텐츠 파일을 상기 송신자 기기의 화면(screen)에 디스플레이한 후, 상기 디스플레이된 콘텐츠 파일 상에서 상기 송신자가 암호화 스타트 포인트를 터치 설정하며, 상기 송신자가 상기 콘텐츠 파일 상에서 터치 설정한 스타트 포인트의 비트열부터 상기 송신자 평문을 암호화하기 위한 암호키의 스타트 포인트 정보로 이용하는 수단,
    상기 송신자가 제공하는 콘텐츠 파일을 상기 송신자 평문을 암호화하기 위한 암호키로 사용하고 상기 콘텐츠 파일 상에서 송신자가 터치 설정한 암호키 스타트 포인트 정보를 상기 송신자 평문의 암호화를 위한 비밀키로 이용하는 수단,
    상기 송신자가 터치 설정한 암호화 스타트 포인트의 정보는 상기 송신자가 제공하는 콘텐츠 파일 상에서 상기 송신자가 터치 설정한 지점의 픽셀 좌표, 컬러값, 특정 시각, 문자코드, 수치 데이터 중 하나 이상을 포함하거나 또는 상기 송신자가 제공하는 미디어 콘텐츠 파일을 구성하는 바이너리 데이터 중에서 특정한 비트, 바이트 또는 워드(word) 단위의 데이터 중 하나 이상을 포함하는 수단,
    상기 송신자 평문의 암호문을 생성하는 수단은 상기 송신자가 상기 송신자 평문의 비트열과 상기 송신자가 제공하는 콘텐츠 파일 상에서 상기 송신자가 터치 설정한 암호화 스타트 포인트의 비트열을 순차적으로 배타적 논리합으로 계산하여 생성하는 수단,
    상기 생성된 송신자 평문의 암호문, 상기 송신자 평문의 암호화를 위한 암호키인 콘텐츠 파일, 그리고 상기 송신자 평문의 암호화를 위한 비밀키를 상기 송신자가 상기 수신자의 기기로 전송하는 수단,
    을 구비한 것을 특징으로 한 암호시스템.
  3. 제 1항에 있어서,
    (b) 상기 송신자의 평문을 암호화하기 위한 암호키는 상기 수신자가 제공하는 상기 콘텐츠 파일과 상기 수신자가 상기 수신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 수단은,
    상기 수신자가 상기 송신자 평문의 암호화에 사용하는 암호키로서 상기 수신자의 기기에 저장되어 있는 콘텐츠 파일을 상기 송신자에게 제공하며, 상기 수신자가 제공하는 상기 송신자 평문의 암호화에 사용하는 콘텐츠 파일 상에서 상기 수신자가 터치 설정한 암호화 스타트 포인트 정보를 기재한 비밀키를 상기 수신자가 송신자에게 제공하여 사용하는 수단,
    상기 수신자가 제공하는 송신자 평문을 암호화하기 위한 암호키는 문자 데이터의 텍스트 파일, 사진 파일, 그래픽 이미지 파일, 오디오 파일 그리고 비디오 파일 등 미디어 콘텐츠 파일 중에서 적어도 하나를 포함하는 수단,
    상기 수신자가 터치 설정한 상기 송신자 평문의 암호화 스타트 포인트 정보는 수신자 기기에 저장되어 있는 상기 미디어 콘텐츠 파일을 상기 수신자 기기의 화면(screen)에 디스플레이한 후, 상기 디스플레이된 콘텐츠 파일 상에서 상기 수신자가 암호화 스타트 포인트를 터치 설정하며 상기 수신자가 상기 콘텐츠 파일 상에서 터치 설정한 스타트 포인트의 비트열부터 상기 송신자 평문을 암호화하기 위한 암호키의 스타트 포인트 정보로 이용하는 수단,
    상기 수신자의 콘텐츠 파일을 상기 송신자 평문의 암호키로 사용하고 상기 수신자가 제공하는 콘텐츠 파일 상에서 수신자가 터치 설정한 암호키 스타트 포인트 정보를 상기 송신자 평문의 암호화를 위한 비밀키로 사용하는 수단,
    상기 수신자가 상기 콘텐츠 파일 상에서 터치 설정한 암호화 스타트 포인트 정보는 상기 콘텐츠 파일 상에서 송신자가 터치 설정한 지점의 픽셀 좌표, 컬러값, 특정 시각, 문자코드, 수치 데이터 중 하나 이상을 포함하거나 또는 상기 수신자가 제공하는 미디어 콘텐츠 파일을 구성하는 바이너리 데이터 중에서 특정한 비트, 바이트 또는 워드(word) 단위의 데이터 중 하나 이상을 포함하는 수단,
    상기 송신자 평문의 암호문을 생성하는 수단은 상기 송신자의 평문의 비트열과 상기 수신자가 제공하는 콘텐츠 파일 상에서 상기 수신자가 터치 설정한 암호화 스타트 포인트의 비트열을 순차적으로 배타적 논리합으로 계산하여 생성하는 수단,
    상기 수신자가 제공하는 콘텐츠 파일과 상기 수신자가 제공하는 콘텐츠 파일 상에 상기 수신자가 터치 설정한 암호화 스타트 포인트 정보가 기재된 비밀키를 상기 수신자가 상기 송신자의 기기로 전송하는 수단,
    을 구비한 것을 특징으로 한 암호시스템.
  4. 제 1항에 있어서,
    (c)상기 송신자의 평문을 암호화하기 위한 암호키는 상기 송신자가 제공하는 상기 콘텐츠 파일과 상기 수신자가 상기 송신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 송신자 평문의 암호문을 생성하는 수단 또는,
    (d) 상기 송신자의 평문을 암호화하기 위한 암호키는 상기 수신자가 제공하는 상기 콘텐츠 파일과 상기 송신자가 상기 수신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 송신자 평문의 암호문을 생성하는 수단은,
    상기 송신자 또는 수신자가 상기 송신자 평문의 암호화에 사용하는 암호키로서 상기 송신자
    또는 수신자의 기기에 저장되어 있는 콘텐츠 파일을 상기 송신자 또는 수신자에게 제공하며, 상기 송신자 또는 수신자가 제공하는 상기 송신자 평문의 암호화에 사용하는 콘텐츠 파일 상에서 상기 송신자 또는 수신자가 터치 설정한 암호화 스타트 포인트 정보를 기재한 비밀키를 상기 송신자 또는 수신자가 송신자에게 제공하여 사용하는 수단,
    상기 송신자 또는 수신자가 제공하는 송신자 평문을 암호화하기 위한 암호키는 문자 데이터의 텍스트 파일, 사진 파일, 그래픽 이미지 파일, 오디오 파일 그리고 비디오 파일 등 미디어 콘텐츠 파일 중에서 적어도 하나를 포함하는 수단,
    상기 송신자 또는 수신자가 터치 설정한 상기 송신자 평문의 암호화 스타트 포인트 정보는 상기 송신자 또는 수신자 기기에 저장되어 있는 상기 미디어 콘텐츠 파일을 상기 송신자 또는 수신자 기기의 화면(screen)에 디스플레이한 후, 상기 디스플레이된 콘텐츠 파일 상에서 상기 송신자 또는 수신자가 암호화 스타트 포인트를 터치 설정하며 상기 송신자 또는 수신자가 상기 콘텐츠 파일 상에서 터치 설정한 스타트 포인트의 비트열부터 상기 송신자 평문을 암호화하기 위한 암호키의 스타트 포인트 정보로 이용하는 수단,
    상기 송신자 또는 수신자의 콘텐츠 파일을 상기 송신자 평문의 암호키로 사용하고 상기 송신자 또는 수신자가 제공하는 콘텐츠 파일 상에서 상기 송신자 또는 수신자가 터치 설정한 암호키 스타트 포인트 정보를 상기 송신자 평문의 암호화를 위한 비밀키로 사용하는 수단,
    상기 송신자 또는 수신자가 상기 콘텐츠 파일 상에서 터치 설정한 암호화 스타트 포인트 정보는 상기 콘텐츠 파일 상에서 송신자가 터치 설정한 지점의 픽셀 좌표, 컬러값, 특정 시각, 문자코드, 수치 데이터 중 하나 이상을 포함하거나 또는 상기 송신자 또는 수신자가 제공하는 미디어 콘텐츠 파일을 구성하는 바이너리 데이터 중에서 특정한 비트, 바이트 또는 워드(word) 단위의 데이터 중 하나 이상을 포함하는 수단,
    상기 송신자 평문의 암호문을 생성하는 수단은 상기 송신자의 평문의 비트열과 상기 송신자 또는 수신자가 제공하는 콘텐츠 파일 상에서 상기 송신자 또는 수신자가 터치 설정한 암호화 스타트 포인트의 비트열을 순차적으로 배타적 논리합으로 계산하여 생성하는 수단,
    상기 송신자 또는 수신자가 제공하는 콘텐츠 파일과 상기 송신자 또는 수신자가 제공하는 콘텐츠 파일 상에 상기 송신자 또는 수신자가 터치 설정한 암호화 스타트 포인트 정보가 기재된 비밀키를 상기 송신자 또는 수신자가 상기 송신자의 기기로 전송하는 수단,
    을 구비한 것을 특징으로 한 암호시스템.
  5. 제 1항에 있어서,
    상기 송신자 평문의 암호문을 생성하는 수단에 의해 생성된 상기 송신자 평문의 암호문은 상기 수신자의 기기로 상기 송신자에 의해 전송되고, 상기 수신자는 상기 수신한 송신자의 평문 암호문에 대하여 상기 수신자의 정보기기에 저장되어 있는 콘텐츠 파일 하나를 선택하여 상기 수신한 송신자의 평문 암호문의 비트열과 상기 수신자가 선택한 콘텐츠 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자 평문의 암호문과 같은 길이의 콘텐츠 파일을 생성하는 수단을
    더 포함하는 것을 특징으로 하는 암호 시스템.
  6. 제 1항에 있어서,
    상기 송신자 평문의 암호문을 생성하는 수단은 상기 송신자 또는 수신자의 음성 또는 화상 평문의 암호문을 생성하는 수단을 더 포함하는 것을 특징으로 하는 암호 시스템.
  7. 제 6항에 있어서,
    상기 송신자 또는 수신자의 음성 또는 화상 평문의 암호문을 생성하는 수단은,
    상기 송신자 또는 수신자가 통화 개시전에 서로에게 상기 음성 또는 화상 평문의 암호화를 위한 상기 암호키와 비밀키를 교환할 수 있는 수단,
    상기 송신자 또는 수신자의 음성 또는 화상 평문을 암호화하기 위한 암호키는 상기 송신자 또는 수신자가 제공하는 콘텐츠 파일로서 문자 데이터의 텍스트 파일, 사진 파일, 그래픽 이미지 파일, 오디오 그리고 비디오 파일 중에서 적어도 하나를 포함하는 수단,
    을 포함하는 것을 특징으로 하는 암호 시스템.
  8. 제 6항에 있어서,
    상기 송신자 또는 수신자 음성 또는 화상 평문의 암호문을 생성하는 수단은,
    상기 송신자 또는 수신자의 암호키 및 비밀키를 교환한 상기 송신자 또는 수신자는 자신의 기기에서 상기 비밀키를 이용하여 상기 송신자 또는 수신자 음성 또는 화상 평문의 암호화를 위한 암호화 스타트 포인트를 확인하는 수단,
    상기 송신자와 수신자의 음성 또는 화상 평문의 비트열과 상기 송신자 또는 수신자의 암호키의 비트열을 배타적 논리합으로 계산하여 상기 송신자 또는 수신자 음성 또는 화상 평문의 암호문을 생성하고, 상기 생성되는 암호문을 상기 송신자 또는 수신자에게 전송하는 수단.
  9. 삭제
  10. 네트워크로 연결된 송신자 또는 수신자 기기 상의 암호 방법에 있어서,
    상기 송신자 또는 수신자 기기는 스마트폰, 태블릿, 스마트워치, PC, CCTV, GPS, 및 센서 디바이스 중 하나 이상을 포함하며 상기 송신자 기기는 송신자의 암호화 대상인 평문을 저장할 수 있는 메모리을 구비하고,
    상기 송신자의 암호화 대상인 평문은 문자 텍스트 파일, 사진 이미지 파일, 오디오 파일 및 비디오 파일의 콘텐츠 파일을 하나 이상 포함하며,
    상기 송신자의 암호화 대상인 평문에 대하여 상기 수신자 또는 송신자가 제공하는 콘텐츠 파일을 상기 송신자 평문의 암호화를 위한 암호키로 사용하며, 상기 암호키로 사용하는 송신자 또는 수신자의 콘텐츠 파일은 문자 데이터의 텍스트 파일, 사진, 그래픽 이미지, 오디오, 비디오 파일 중에서 적어도 하나를 포함하는  송신자 평문의 암호문을 생성하고,
    상기 수신자의 기기 상에서 상기 송신자의 평문의 암호문을 복호화하는 방법을 포함하고 있으며, 상기 송신자 평문의 암호문을 생성하는 방법은
    (a)  상기 송신자의 평문을 암호화하기 위한 암호키는 송신자가 제공하는 상기 콘텐츠 파일과 상기 송신자가 상기 송신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 방법, 또는
    (b)  상기 송신자의 평문을 암호화하기 위한 암호키는 상기 수신자가 제공하는 상기 콘텐츠 파일과 상기 수신자가 상기 수신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 방법, 또는
    (c)상기 송신자의 평문을 암호화하기 위한 암호키는 상기 송신자가 제공하는 콘텐츠 파일과 상기 수신자가 상기 송신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 방법, 또는
    (d)상기 송신자의 평문을 암호화하기 위한 암호키는 상기 수신자가 제공하는 상기 콘텐츠 파일과 상기 송신자가 상기 수신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 방법,
    중에서 어느 하나 이상을 구비하는  암호 방법.
  11. 제 10항에 있어서,
    (a) 상기 송신자의 평문을 암호화하기 위한 암호키는 송신자가 제공하는 상기 콘텐츠 파일과 상기 송신자가 제공하는 콘텐츠 파일 상에 상기 송신자가 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 방법은,
    상기 송신자 평문의 암호문을 송신하는 상기 송신자가 상기 송신자 평문의 암호화에 사용하는 암호키로서 상기 송신자의 기기에 저장되어 있는 콘텐츠 파일을 사용하며, 상기 송신자 평문의 암호화에 사용하는 콘텐츠 파일 상에서 상기 송신자가 터치 설정한 암호화 스타트 포인트 정보를 기재한 비밀키를 상기 송신자가 수신자에게 제공하여 사용하며,
    상기 송신자가 제공하는 송신자 평문을 암호화하기 위한 암호키는 문자 데이터의 텍스트 파일, 사진 파일, 그래픽 이미지 파일, 오디오 파일 그리고 비디오 파일 등 미디어 콘텐츠 파일 중에서 적어도 하나를 포함하고,
    상기 송신자가 터치 지정한 암호화 스타트 포인트 정보는 송신자 기기에 저장되어 있는 상기 미디어 콘텐츠 파일을 상기 송신자 기기의 화면(screen)에 디스플레이한 후, 상기 디스플레이된 콘텐츠 파일 상에서 상기 송신자가 암호화 스타트 포인트를 터치 설정하며, 상기 송신자가 상기 콘텐츠 파일 상에서 터치 설정한 스타트 포인트의 비트열부터 상기 송신자 평문을 암호화하기 위한 암호키의 스타트 포인트 정보로 이용하며,
    상기 송신자가 제공하는 콘텐츠 파일을 상기 송신자 평문을 암호화하기 위한 암호키로 사용하고 상기 콘텐츠 파일 상에서 송신자가 터치 설정한 암호키 스타트 포인트 정보를 상기 송신자 평문의 암호화를 위한 비밀키로 이용하고,
    상기 송신자가 터치 설정한 암호화 스타트 포인트의 정보는 상기 송신자가 제공하는 콘텐츠 파일 상에서 상기 송신자가 터치 설정한 지점의 픽셀 좌표, 컬러값, 특정 시각, 문자코드, 수치 데이터 중 하나 이상을 포함하거나 또는 상기 송신자가 제공하는 미디어 콘텐츠 파일을 구성하는 바이너리 데이터 중에서 특정한 비트, 바이트 또는 워드(word) 단위의 데이터 중 하나 이상을 포함하며,
    상기 송신자 평문의 암호문을 생성하는 수단은 상기 송신자가 상기 송신자 평문의 비트열과 상기 송신자가 제공하는 콘텐츠 파일 상에서 상기 송신자가 터치 설정한 암호화 스타트 포인트의 비트열을 순차적으로 배타적 논리합으로 계산하여 생성하고,
    상기 생성된 송신자 평문의 암호문, 상기 송신자 평문의 암호화를 위한 암호키인 콘텐츠 파일, 그리고 상기 송신자 평문의 암호화를 위한 비밀키를 상기 송신자가 상기 수신자의 기기로 전송하는 것을 특징으로 한 암호 방법.
  12. 제 10항에 있어서,
    (b)  상기 송신자의 평문을 암호화하기 위한 암호키는 상기 수신자가 제공하는 상기 콘텐츠 파일과 상기 수신자가 상기 수신자의 콘텐츠 파일 상에 설정하는 비밀키를 사용하여 상기 송신자 평문의 암호문을 생성하는 방법은
    상기 수신자가 상기 송신자 평문의 암호화에 사용하는 암호키로서 상기 수신자의 기기에 저장되어 있는 콘텐츠 파일을 상기 송신자에게 제공하며, 상기 수신자가 제공하는 상기 송신자 평문의 암호화에 사용하는 콘텐츠 파일 상에서 상기 수신자가 터치 설정한 암호화 스타트 포인트 정보를 기재한 비밀키를 상기 수신자가 송신자에게 제공하여 사용하며,
    상기 수신자가 제공하는 송신자 평문을 암호화하기 위한 암호키는 문자 데이터의 텍스트 파일, 사진 파일, 그래픽 이미지 파일, 오디오 파일 그리고 비디오 파일 등 미디어 콘텐츠 파일 중에서 적어도 하나를 포함하고,
    상기 수신자가 터치 설정한 상기 송신자 평문의 암호화 스타트 포인트 정보는 수신자 기기에 저장되어 있는 상기 미디어 콘텐츠 파일을 상기 수신자 기기의 화면(screen)에 디스플레이한 후, 상기 디스플레이된 콘텐츠 파일 상에서 상기 수신자가 암호화 스타트 포인트를 터치 설정하며 상기 수신자가 상기 콘텐츠 파일 상에서 터치 설정한 스타트 포인트의 비트열부터 상기 송신자 평문을 암호화하기 위한 암호키의 스타트 포인트 정보로 이용하며,
    상기 수신자의 콘텐츠 파일을 상기 송신자 평문의 암호키로 사용하고 상기 수신자가 제공하는 콘텐츠 파일 상에서 수신자가 터치 설정한 암호키 스타트 포인트 정보를 상기 송신자 평문의 암호화를 위한 비밀키로 사용하고,
    상기 수신자가 상기 콘텐츠 파일 상에서 터치 설정한 암호화 스타트 포인트 정보는 상기 콘텐츠 파일 상에서 송신자가 터치 설정한 지점의 픽셀 좌표, 컬러값, 특정 시각, 문자코드, 수치 데이터 중 하나 이상을 포함하거나 또는 상기 수신자가 제공하는 미디어 콘텐츠 파일을 구성하는 바이너리 데이터 중에서 특정한 비트, 바이트 또는 워드(word) 단위의 데이터 중 하나 이상을 포함하며,
    상기 송신자 평문의 암호문을 생성하는 수단은 상기 송신자의 평문의 비트열과 상기 수신자가 제공하는 콘텐츠 파일 상에서 상기 수신자가 터치 설정한 암호화 스타트 포인트의 비트열을 순차적으로 배타적 논리합으로 계산하여 생성하고,
    상기 수신자가 제공하는 콘텐츠 파일과 상기 수신자가 제공하는 콘텐츠 파일 상에 상기 수신자가 터치 설정한 암호화 스타트 포인트 정보가 기재된 비밀키를 상기 수신자가 상기 송신자의 기기로 전송하는 것
    을 구비한 것을 특징으로 한 암호 방법.
  13. 삭제
  14. 제 10항에 있어서,
    상기 송신자 평문의 암호문을 생성하는 방법에 의해 생성된 상기 송신자 평문의 암호문은 상기 수신자의 기기로 상기 송신자에 의해 전송되고, 상기 수신자는 상기 수신한 송신자의 평문 암호문에 대하여 상기 수신자의 정보기기에 저장되어 있는 콘텐츠 파일 하나를 선택하여 상기 수신한 송신자의 평문 암호문의 비트열과 상기 수신자가 선택한 콘텐츠 파일의 비트열을 배타적 논리합으로 계산하여 상기 송신자 평문의 암호문과 같은 길이의 콘텐츠 파일을 생성하는 방법을
    더 포함하는 것을 특징으로 하는 암호 방법.
  15. 제 10항에 있어서,
    상기 송신자 평문의 암호문을 생성하는 방법은 상기 송신자 또는 수신자의 음성 또는 화상 평문의 암호문을 생성하는 방법을 더 포함하는 것을 특징으로 하는 암호 방법.
  16. 삭제
  17. 삭제
  18. 제 15항에 있어서,
    상기 송신자 또는 수신자의 음성 또는 화상 평문의 암호문을 생성하는 방법은,
    상기 송신자 또는 수신자가 통화 개시전에 서로에게 상기 음성 또는 화상 평문의 암호화를 위한 상기 암호키와 비밀키를 교환할 수 있고,
    상기 송신자 또는 수신자의 음성 또는 화상 평문을 암호화하기 위한 암호키는 상기 송신자 또는 수신자가 제공하는 콘텐츠 파일로서 문자 데이터의 텍스트 파일, 사진 파일, 그래픽 이미지 파일, 오디오 그리고 비디오 파일 중에서 적어도 하나를 포함하는 것을 특징으로 하는 암호 방법.
  19. 제 15항에 있어서,
    상기 송신자 또는 수신자 음성 또는 화상 평문의 암호문을 생성하는 방법은,
    상기 송신자 또는 수신자의 암호키 및 비밀키를 교환한 상기 송신자 또는 수신자는 자신의 기기에서 상기 비밀키를 이용하여 상기 송신자 또는 수신자 음성 또는 화상 평문의 암호화를 위한 암호화 스타트 포인트를 확인하며,
    상기 송신자 또는 수신자의 음성 또는 화상 평문의 비트열과 상기 송신자 또는 수신자의 암호키의 비트열을 배타적 논리합으로 계산하여 상기 송신자 또는 수신자 음성 또는 화상 평문의 암호문을 생성하고, 상기 생성되는 암호문을 상기 송신자 또는 수신자에게 전송하는 것을 특징으로 하는 암호 방법.
  20. 삭제
  21. 삭제
KR1020220049439A 2022-04-21 2022-04-21 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법 KR102564618B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220049439A KR102564618B1 (ko) 2022-04-21 2022-04-21 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법
PCT/KR2023/005488 WO2023204678A1 (ko) 2022-04-21 2023-04-21 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220049439A KR102564618B1 (ko) 2022-04-21 2022-04-21 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102564618B1 true KR102564618B1 (ko) 2023-08-08

Family

ID=87560527

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220049439A KR102564618B1 (ko) 2022-04-21 2022-04-21 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법

Country Status (2)

Country Link
KR (1) KR102564618B1 (ko)
WO (1) WO2023204678A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060058309A (ko) * 2004-11-25 2006-05-30 삼성전자주식회사 암호키 생성방법
JP2008139742A (ja) * 2006-12-05 2008-06-19 Kddi Corp 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置、ストリーム暗号の暗号化方法、復号化方法、mac生成方法およびプログラム
JP2012203156A (ja) * 2011-03-25 2012-10-22 Kddi Corp コンテンツ配信サーバ、サンプルコンテンツ提供システム、コンテンツ配信方法、サンプルコンテンツ提供方法およびプログラム
KR102068041B1 (ko) * 2019-05-23 2020-01-20 주식회사 네오패드 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법
KR20200071394A (ko) * 2018-12-11 2020-06-19 한국전자통신연구원 다중 잡음 데이터 기반 암호키 생성 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060058309A (ko) * 2004-11-25 2006-05-30 삼성전자주식회사 암호키 생성방법
JP2008139742A (ja) * 2006-12-05 2008-06-19 Kddi Corp 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置、ストリーム暗号の暗号化方法、復号化方法、mac生成方法およびプログラム
JP2012203156A (ja) * 2011-03-25 2012-10-22 Kddi Corp コンテンツ配信サーバ、サンプルコンテンツ提供システム、コンテンツ配信方法、サンプルコンテンツ提供方法およびプログラム
KR20200071394A (ko) * 2018-12-11 2020-06-19 한국전자통신연구원 다중 잡음 데이터 기반 암호키 생성 장치 및 방법
KR102068041B1 (ko) * 2019-05-23 2020-01-20 주식회사 네오패드 유저 바이오 데이터를 이용한 유저 인증 및 서명 장치와 방법

Non-Patent Citations (20)

* Cited by examiner, † Cited by third party
Title
1. US 11,233,628 Equivocation augmentation dynamic secrecy system
10. US 9,032,208 Communication terminal, communication system, communication method and communication program
11. US 9,001,998 Data encryption and decryption method and apparatus
12. US 8,948,377 Encryption device, encryption system, encryption method, and encryption program
13. US 8,942,373 Data encryption and decryption method and apparatus
14. US 8,824,686 Cluster key synchronization
15. US 8,611,542 Peer to peer key synchronization
16. US 8,607,046 System and method for signing a message to provide one-time approval to a plurality of parties
17. US 8,401,186 Cloud storage data access method, apparatus and system based on OTP
18. US 8,249,255 System and method for securing communications between devices
19. US 7,971,234 Method and apparatus for offline cryptographic key establishment
2. US 11,177,959 Cryptography method and system for securing data via electronic transmission
20. US 7,945,075 Converting a digital image from color to gray-scale
3. US 11,176,624 Privacy-preserving smart metering
4. US 11,165,563 Symmetric key stream cipher cryptographic method and device
5. US 11,095,442 Generating unique cryptographic keys from a pool of random elements
6. US 10,873,448 Technique to generate symmetric encryption algorithms
7. US 10,348,704 Method for a dynamic perpetual encryption cryptosystem
8. US 10,263,785 Cryptography method and system for securing data via electronic transmission
9. US 10,069,805 Polymorphic one time pad matrix

Also Published As

Publication number Publication date
WO2023204678A1 (ko) 2023-10-26

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
Patel et al. Image encryption using different techniques: A review
CN104917759B (zh) 基于第三方的安全文件存储和共享系统及方法
CN106161034A (zh) 使用乘法秘密共享的rsa解密
Pansotra et al. Cloud security algorithms
WO2003021861A1 (en) A system and method for protecting the content of digital cinema products
WO2010111448A1 (en) Method and system for securing communication
CN112003696B (zh) Sm9密钥生成方法、系统、电子设备、装置及存储介质
CN111342955B (zh) 一种通信方法及其设备、计算机存储介质
JP2018523360A (ja) 安全なsms通信のための方法及びシステム
US20230208615A1 (en) Online-Streamer Image Model File Transmission in Co-Hosting During Livestreaming
Hazra et al. A hybrid cryptosystem of image and text files using blowfish and Diffie-Hellman techniques
CN109005196A (zh) 数据传输方法、数据解密方法、装置及电子设备
JP2007318699A (ja) 暗号伝送システム、送信装置、受信装置、送信方法、受信方法、ならびに、プログラム
KR102564618B1 (ko) 송신자 또는 수신자의 미디어 콘텐츠 파일을 이용한 암호 시스템 및 방법
Geethanjali et al. Enhanced data encryption in IOT using ECC cryptography and LSB steganography
Somaiya et al. Implementation and evaluation of EMAES–A hybrid encryption algorithm for sharing multimedia files with more security and speed
Ebrahim et al. Hybrid model for cloud data security using steganography
Dixit et al. Multilevel network security combining cryptography and steganography on ARM platform
US9571468B2 (en) Encoding data using a variable number of pixels and bits based on entropy
CN113193954A (zh) 一种密钥管理方法
Lotlikar et al. Image steganography and cryptography using three level password security
Chandra et al. Secure transmission of data using image steganography
CN111541652A (zh) 一种用于提高秘密信息保管及传递安全性的系统
CN112368973A (zh) 以不易破损的方式编码、传输和/或存储和解码数字信息的方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
J202 Request for trial for correction [limitation]
J202 Request for trial for correction [limitation]