KR20120079639A - 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치 - Google Patents

화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치 Download PDF

Info

Publication number
KR20120079639A
KR20120079639A KR1020110000935A KR20110000935A KR20120079639A KR 20120079639 A KR20120079639 A KR 20120079639A KR 1020110000935 A KR1020110000935 A KR 1020110000935A KR 20110000935 A KR20110000935 A KR 20110000935A KR 20120079639 A KR20120079639 A KR 20120079639A
Authority
KR
South Korea
Prior art keywords
content
white box
encryption
user
random number
Prior art date
Application number
KR1020110000935A
Other languages
English (en)
Other versions
KR101744748B1 (ko
Inventor
이윤경
김신효
정병호
문혜란
이상우
이석준
황정연
배근태
조현숙
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020110000935A priority Critical patent/KR101744748B1/ko
Priority to US13/284,801 priority patent/US8712041B2/en
Publication of KR20120079639A publication Critical patent/KR20120079639A/ko
Application granted granted Critical
Publication of KR101744748B1 publication Critical patent/KR101744748B1/ko

Links

Images

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • 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
    • 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
    • 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
    • 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/16Obfuscation or hiding, e.g. involving white box

Abstract

본 발명은 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치에 관한 것이다.
이러한 장치들에 적용되는 본 발명의 실시 예에 따른 콘텐츠 보호 장치는 랜덤 넘버를 발생시키는 랜덤 넘버 발생부와, 랜덤 넘버와 사용자로부터 제공받은 사용자 정보를 암호화하여 암호화된 출력 값을 출력하는 화이트박스 암호 테이블과, 암호화된 출력 값과 외부로부터 입력되는 데이터를 연산하여 데이터를 암호화하거나 복호화하여 출력하는 연산부를 포함한다.

Description

화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치{CONTENTS PROTECTION, ENCRYPTION AND DECRYPTION APPARATUS USING WHITE-BOX CRYPTOGRAPHY}
본 발명은 화이트박스 암호 테이블을 이용한 장치에 관한 것으로, 더욱 상세하게는 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치에 관한 것이다.
화이트박스 암호 기술은 공격자에게 암호화 키가 노출되는 것을 막기 위해서 암호 알고리즘의 구현 모듈 속에 암호화 키를 숨김으로써 화이트박스로 구현된 암호 모듈이 노출되더라도 암호화 키를 추출해 낼 수 없도록 하는 기술로써 콘텐츠 보호를 위한 기술로 관심이 집중되고 있다. 그러나, 암호 알고리즘의 화이트박스 구현 방법에 관한 연구와 이들 연구에 대한 안전성 분석에 관한 연구는 많지만, 화이트박스 암호를 이용하여 콘텐츠를 보호하는 방법에 대한 연구는 거의 없다.
현재 연구된 화이트박스 암호 기술은 AES, DES 등의 블록암호 알고리즘을 여러 개의 룩업 테이블로 나누어 구현하되, 룩업 테이블 내에 암호화 키를 숨겨서 공격자가 화이트박스 암호 룩업 테이블로부터 암호화 키를 추출하지 못하도록 하는 것이다. 그러나, 화이트박스 암호는 기존의 S/W로 구현된 암호 알고리즘에 비해서 암/복호화 속도도 느리고, 실행파일의 크기가 아주 크다는 단점이 있다. 따라서 화이트박스 암호 테이블을 콘텐츠 암호화 키 처럼 매번 클라이언트 단말에 전송하는 데에는 한계가 있고, 화이트박스 암호 테이블 전체를 공격자가 가지고 가서 재사용 할 수 없도록 막을 방법이 없다는 단점이 있다.
상기와 같은 문제점을 해결하기 위해 안출된 것으로서, 본 발명의 목적은 랜덤 넘버와 사용자 정보를 입력으로 하여 콘텐츠를 암호화하고 복호화할 수 있는 암호화 출력 값을 출력할 수 있는 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치를 제공하는데 있다.
또한, 본 발명은 사용자 정보를 기반으로 생성되는 테이블 파트1과 콘텐츠를 암호화하기 위한 암호화 키를 기반으로 생성되는 테이블 파트2로 구성되는 화이트박스 암호 테이블을 이용하여 콘텐츠를 암호화할 수 있는 화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치를 제공하는데 있다.
본 발명은 사용자 정보를 기반으로 생성된 테이블 파트1을 제공받아 저장한 후 콘텐츠에 따라 서로 다른 테이블 파트2를 제공받으며, 제공받은 테이블 파트1과 파트2로 구성된 화이트박스 암호 테이블을 이용하여 콘텐츠를 복호화할 수 있는 복호화 장치를 제공하는데 있다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 측면에 따르면, 본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치는, 랜덤 넘버를 발생시키는 랜덤 넘버 발생부와, 상기 랜덤 넘버와 사용자로부터 제공받은 사용자 정보를 암호화하여 암호화된 출력 값을 출력하는 화이트박스 암호 테이블과, 상기 암호화된 출력 값과 외부로부터 입력되는 데이터를 연산하여 상기 데이터를 암호화하거나 복호화하여 출력하는 연산부를 포함한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치에서 상기 랜덤 넘버 발생부는, 상기 사용자 정보가 입력될 때마다 소정의 카운터 값을 제공하는 카운터인 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치에서 상기 사용자 정보는, 사용자의 단말 정보 또는 사용자의 고유 정보인 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치에서 상기 화이트박스 암호 테이블은, 상기 랜덤 넘버를 기반으로 생성된 테이블 파트1과 콘텐츠를 암호화하기 위해 생성된 암호화 키로 이루어진 테이블 파트2로 이루어진 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치에서 상기 연산부는, 상기 암호화된 출력 값과 외부로부터 입력되는 콘텐츠를 XOR 연산하여 상기 콘텐츠를 암호화하거나 복호화하는 것을 특징으로 한다.
본 발명의 다른 측면에 따르면, 본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치는, 회원 가입한 사용자의 정보를 수집하여 사용자 정보 데이터베이스에 저장하는 사용자 등록부와, 상기 사용자 정보 데이터베이스에 저장된 사용자 정보를 기반으로 랜덤 넘버를 생성하는 랜덤 넘버 생성부와, 콘텐츠 각각에 대한 암호화 키를 생성하는 키 생성부와, 상기 랜덤 넘버를 기반으로 테이블 파트1을 생성하고, 상기 암호화 키를 기반으로 테이블 파트2를 생성하여 상기 테이블 파트1 및 파트2로 구성되는 화이트박스 암호 테이블을 생성하는 테이블 생성부와, 상기 화이트박스 암호 테이블을 이용하여 임의의 사용자가 요청한 콘텐츠를 암호화하여 제공하는 콘텐츠 암호화부를 포함한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치에서 상기 테이블 생성부는, 상기 임의의 사용자가 회원 가입 시 상기 임의의 사용자가 등록한 사용자 정보에 대응되는 랜덤 넘버를 기반으로 테이블 파트1을 생성하여 상기 임의의 사용자의 클라이언트 장치에 제공한 후 상기 클라이언트 장치로부터 콘텐츠 요청이 있는 경우 상기 테이블 파트2를 생성하여 상기 클라이언트 장치에 제공하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치에서 상기 테이블 생성부는, 상기 임의의 사용자로부터 최초 콘텐츠의 요청이 있을 때 상기 테이블 파트1과 상기 테이블 파트2를 생성한 후 상기 테이블 파트1 및 파트2로 이루어진 화이트박스 암호 테이블을 상기 임의의 사용자의 클라이언트 장치에 제공하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치에서 상기 테이블 생성부는 상기 임의의 사용자의 클라이언트 장치에 제공된 테이블 파트1을 업데이트하기 위해 기 설정된 주기로 시드 값을 전송하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치에서 상기 테이블 생성부는, 기 설정된 주기로 테이블 파트1을 생성한 후 상기 클라이언트 장치에 제공하여 상기 클라이언트 장치 내의 화이트박스 암호 테이블을 업데이트시키는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치에서 상기 콘텐츠 암호화부는, 상기 화이트박스 암호 테이블을 이용하여 상기 랜덤 넘버와 사용자 정보를 암호화하여 암호화된 출력 값을 출력하며, 상기 암호화된 출력 값과 상기 임의의 사용자가 요청한 콘텐츠를 연산하여 암호화된 콘텐츠를 생성하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치에서 상기 콘텐츠 암호화부는, 상기 암호화된 출력 값과 상기 임의의 사용자가 요청한 콘텐츠를 XOR 연산하여 상기 콘텐츠를 암호화하는 것을 특징으로 한다.
본 발명의 또 다른 측면에 따르면, 본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치는 사용자의 정보 기반으로 생성된 테이블 파트1과 콘텐츠 암호화 키를 이용하여 생성된 테이블 파트2로 이루어진 화이트박스 암호 테이블을 이용하여 콘텐츠를 암호화하여 전송하는 서버 장치로부터 콘텐츠를 수신하는 장치로서, 상기 서버 장치에 접속하여 회원 가입 시 상기 서버 장치로부터 제공받은 상기 테이블 파트1을 저장하는 제 1 저장부와, 상기 서버 장치에 콘텐츠를 요청할 때마다 상기 서버 장치로부터 제공받은 테이블 파트2를 저장하는 제 2 저장부와, 임의의 콘텐츠 재생 요청이 있는 경우 상기 제 1 및 제 2 저장부의 검색을 통해 상기 임의의 콘텐츠에 맞는 테이블 파트1과 테이블 파트2를 추출하는 제어부와, 상기 제어부에서 추출된 테이블 파트1과 테이블 파트2를 이용하여 상기 임의의 콘텐츠를 복호화시키는 콘텐츠 복호화부를 포함한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치는 상기 서버 장치로부터 수신되는 정보를 기반으로 상기 제 1 저장부를 업데이트시키는 업데이트부를 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치에서 상기 업데이트부는, 상기 서버 장치로부터 수신되는 정보가 임의의 테이블 파트1인 경우 상기 임의의 테이블 파트1을 이용하여 상기 제 1 저장부를 업데이트시키는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치에서 상기 업데이트부는, 상기 서버 장치로부터 수신되는 정보가 시드 값인 경우 상기 제 1 저장부에 저장된 테이블 파트1에 기 설정된 연산을 수행한 결과 값을 이용하여 상기 제 1 저장부를 업데이트시키는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치에서 상기 기 설정된 연산은 행렬 곱셈/나눗셈, XOR 또는 치환 연산 중 어느 하나 또는 둘 이상의 조합인 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치에서 상기 콘텐츠 복호화부는, 상기 콘텐츠 복호화 장치의 사용자 정보를 제공하는 사용자 정보 입력부와, 상기 사용자 정보가 입력될 때마다 각기 다른 랜덤 넘버를 생성하는 랜덤 넘버 생성부와, 상기 사용자 정보 및 상기 랜덤 넘버를 상기 화이트박스 암호 테이블을 이용하여 암호화하여 암호화된 출력 값을 출력하며, 상기 암호화된 출력 값과 상기 임의의 콘텐츠를 연산하여 상기 임의의 콘텐츠를 복호화시키는 연산부를 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치에서 상기 연산부는, 상기 암호화된 출력 값과 상기 임의의 콘텐츠를 XOR 연산하여 상기 콘텐츠를 복호화시키는 것을 특징으로 한다.
본 발명의 실시 예에 따른 장치들에 따르면, 화이트박스 암호 테이블을 매번 클라이언트에 전송할 필요가 없고, 화이트박스 암호 테이블의 일부 모듈, 혹은 특정 값 만을 클라이언트에 전송함으로써 화이트박스 암호 테이블의 업데이트가 가능하므로, 암호화 강도를 높일 수 있을 수 있을 뿐만 아니라 화이트박스 암호 테이블 전부를 가져가는 공격에 대해서 안전하다는 장점이 있다.
또한, 본 발명은 화이트박스 암호를 이용함으로써 올 수 있는 콘텐츠 복호화 속도 저하도 해결할 수 있고, 사용자 혹은 단말별 화이트박스 테이블이 달라지기 때문에 테이블의 불법 유출 시, 불법 유출원 추적이 가능하다는 장점이 있다.
도 1은 본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치를 도시한 블록도,
도 2는 본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 저작권 보호 시스템을 도시한 블록도,
도 3은 본 발명의 실시 예에 따른 사용자 정보 데이터베이스에 저장된 필드 구조를 도시한 도면,
도 4는 본 발명의 실시 예에 따라 콘텐츠를 암호화하여 제공하는 과정을 도시한 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시 예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치를 도시한 블록도로서, 사용자 정보 입력부(100), 카운터(110), 화이트박스 암호 테이블(120) 및 연산부 등을 포함할 수 있다. 이러한 콘텐츠 보호 장치는 콘텐츠를 제공하는 서버 또는 콘텐츠를 제공받는 클라이언트 장치에 설치되어 콘텐츠를 암호화하거나 복호화하는 장치로 이용될 수 있다.
사용자 정보 입력부(100)는 사용자 정보를 기 저장된 데이터베이스(미도시됨)에서 추출하거나 사용자 정보를 입력할 수 있는 인터페이스를 제공하며, 추출 또는 인터페이스를 통해 입력된 사용자 정보를 화이트박스 암호 테이블(120)에 제공할 수 있다. 예를 들어, 서버에 콘텐츠 보호 장치가 설치된 경우에는 서버의 데이터베이스에 등록된 사용자 정보를 추출하고, 클라이언트 장치에 콘텐츠 보호 장치가 설치된 경우에는 클라이언트 장치의 고유 정보를 사용자 정보로 추출하여 제공하고, 사용자 정보를 입력할 수 있는 인터페이스를 제공할 수 있다. 여기에서, 사용자 정보는 사용자의 아이디 및 비밀번호, 장치의 고유 정보, 사용자 입력한 개인 신상 정보 등이 될 수 있다.
카운터(110)는 사용자 정보 입력부(100)를 통해 사용자 정보가 입력됨에 따라 소정의 카운터 값을 생성하여 화이트박스 암호 테이블(120)에 제공한다. 여기에서, 카운터 값은 랜덤 넘버 발생기와 같은 장치에서 발생되는 랜덤 넘버일 수 있다. 즉, 카운터(110)는 사용자 정보가 입력될 때마다 소정의 랜덤 넘버를 발생시켜 화이트박스 암호 테이블(120)에 제공한다.
화이트박스 암호 테이블(120)은 카운터(110)에서 발생되는 카운터 값과 사용자 정보를 암호화하여 암호화된 출력 값을 연산부(130)에 제공할 수 있는데, 이를 위하여 랜덤 넘버를 기반으로 생성된 테이블 파트1과 콘텐츠를 암호화하기 위해 생성된 암호화 키로 이루어진 테이블 파트2로 구성될 수 있다. 여기에서, 테이블 파트2는 제공되는 콘텐츠마다 서로 다른 값을 갖을 수 있으며, 테이블 파트1은 기 설정된 시간 간격으로 변경될 수 있다.
연산부(130)는 암호화된 출력 값을 이용하여 외부로부터 입력되는 데이터, 예컨대 콘텐츠를 암호화하거나 암호화된 콘텐츠를 복호화하여 출력하는데, 즉 암호화된 출력 값과 데이터를 XOR 연산하여 암호화하거나 복호화시킬 수 있다.
본 발명의 실시 예에 따른 콘텐츠 보호 장치가 저작권 보호가 필요한 콘텐츠에 적용되는 것을 예로 들어 설명하였지만, 불법 사용을 막고자 하는 각 종 디지털 정보, 예컨대 소프트웨어 프로그램에 대해 적용 가능하다는 것은 당업자에게 자명한 사실이다.
본 발명의 실시 예에 따르면, 사용자 정보와 랜덤 넘버를 제공받아 소정 데이터를 복호화하거나 암호화하기 위한 출력 값을 제공하는 화이트박스 암호 테이블을 제공함으로써, 화이트박스 암호 테이블 전체가 해킹당하더라도 사용자 정보가 없을 경우 사용이 불가능하기 때문에 화이트박스 암호 테이블의 보안성을 높일 수 있다.
상기와 같은 구성을 갖는 콘텐츠 보호 장치가 저작권한 보호 시스템에 적용되는 예에 대해 도 2를 참조하여 설명한다.
도 2는 본 발명의 실시 예에 따른 화이트박스 암호 테이블을 이용한 콘텐츠 저작권 보호 시스템을 도시한 블록도이다.
도 2에 도시된 바와 같이, 본 발명의 실시 예에 따른 콘텐츠 저작권 보호 시스템은 화이트박스 암호를 이용하여 콘텐츠를 암호화하여 전송하는 서버 장치(200)와 암호화된 콘텐츠를 제공받아 복호화하는 클라이언트 장치(250)로 구성되며, 서버 장치(200)와 클라이언트 장치(250)는 유무선 통신망(미도시됨)을 통해 연결될 수 있다.
서버 장치(200)는 사용자 등록부(202), 랜덤 넘버 생성부(204), 테이블 생성부(206), 콘텐츰 암호화부(208), 키 생성부(210), 사용자 정보 데이터베이스(212), 콘텐츠 데이터베이스(214) 및 클라이언트 인터페이스(214) 등을 포함할 수 있다.
사용자 등록부(202)는 클라이언트 장치(250)로부터 사용자 정보를 수집하여 사용자 정보 데이터베이스(212)에 저장한다.
랜덤 넘버 생성부(204)는 사용자별로 랜덤 넘버를 생성한 후 이를 사용자 정보 데이터베이스(212)에 저장함과 더불어 테이블 생성부(206)에 제공한다.
키 생성부(210)는 콘텐츠를 암호화하기 위한 암호화키를 생성한 후 이를 콘텐츠 ID와 함께 사용자 정보 데이터베이스(212)에 저장되며, 이를 통해 추후 콘텐츠 불법 유출원 추적 및 서버 장치(200)에서의 암호화된 콘텐츠 관리 등에 사용할 수 있다.
테이블 생성부(206)는 랜덤 넘버 생성부(204)로부터 제공받은 랜덤 넘버와 키 생성부(210)에서 생성된 암호화 키를 기반으로 화이트박스 암호 테이블을 생성하는데, 이때 암호화키와 관계없는 테이블 파트1을 먼저 생성한 후 콘텐츠 암호화키와 관련된 부분인 테이블 파트2를 생성한다. 여기에서, 테이블 파트2는 사용자의 클라이언트 장치(250)로부터 콘텐츠 요청, 예컨대 구매 요청이 있을 경우 생성될 수 있다.
다시말해서, 테이블 생성부(206)는 테이블 파트1과 테이블 파트2를 동시에 생성하거나 테이블 파트1을 생성한 후 콘텐츠 요청이 있을 경우 테이블 파트2를 생성할 수 있다. 여기에서, 테이블 파트2는 키 생성부(210)에 의해 생성된 암호화키를 기반으로 생성되기 때문에 키 생성부(210)가 콘텐츠 마다 암호화키를 생성할 경우 콘텐츠 마다 변경될 수 있으며, 이에 따라 화이트박스 암호 테이블은 하나의 테이블 파트1에 다수개의 테이블 파트2로 이루어질 수 있다.
한편, 테이블 생성부(206)는 생성한 화이트박스 암호 테이블 중 테이블 파트1을 클라이언트 장치(250)에 제공할 수 있으며, 콘텐츠 요청 시 테이블 파트1과 테이블 파트2 모두를 클라이언트 장치(250)에 제공할 수 있다.
콘텐츠 암호화부(208)는 화이트박스 암호 테이블을 이용하여 해당 콘텐츠, 예컨대 사용자의 클라이언트 장치(250)가 요청한 콘텐츠를 암호화한 후 클라이언트 인터페이스(214)를 통해 클라이언트 장치(250)에 전송한다.
한편, 콘텐츰 암호화부(208) 내에는 도 1에 도시된 바와 같은 콘텐츠 보호 장치가 적용될 수 있는데, 즉 랜덤 넘버 생성부(204)에서 생성된 랜덤 넘버와 사용자 정보 데이터베이스(212)에 저장된 사용자 정보를 입력받은 후 테이블 생성부(206)에서 생성한 화이트박스 암호 테이블을 이용하여 암호화된 출력 값을 생성할 수 있으며, 암호화된 출력 값을 이용하여 콘텐츠를 암호화하여 클라이언트 장치(250)에 제공할 수 있다.
사용자 정보 데이터베이스(212)에는, 도 3에 도시된 바와 같이, 사용자 정보, 랜덤 넘버, 콘텐츠 아이디, 콘텐츠 암호화 키 및 암호화된 콘텐츠 정보로 구성된 필드가 저장될 수 있다.
본 발명의 실시 예에 따른 화이트박스 암호를 이용한 서버 장치에 따르면, 화이트박스 암호 테이블의 전체를 클라이언트 장치에 전송하지 않고, 화이트박스 암호 테이블의 일부인 테이블 파트1만을 클라이언트 장치(250)에 전송한 후 콘텐츠 요청 시 콘텐츠를 암호화하기 위한 암호화키를 기반으로 생성된 테이블 파트2를 전송함으로써, 공격자가 화이트박스 암호 테이블 전체를 가져가더라도 화이트박스 암호 테이블의 재사용을 막을 수 있다.
클라이언트 장치(250)는 유무선 통신망을 통해 서버 장치(200)에 연결되어 콘텐츠를 제공받기 위한 것으로써, 그 예로서 스마트폰, 이동 통신 단말기, PDA, 개인용 컴퓨터 등을 들 수 있다.
이러한 클라이언트 장치(250)는 서버 인터페이스(252), 제 1, 2 저장부(254, 256), 업데이트부(258), 제어부(260), 콘텐츠 복호화부(262) 및 콘텐츠 재생부(264) 등을 포함할 수 있으며, 서버 인터페이스(252)를 통해 서버 장치(200)에 접속하여 서버 장치(200)에서 제공하는 회원 가입 절차를 통해 회원에 가입한 후 서버 장치(200)로부터 화이트박스 암호 테이블 중 테이블 파트1을 다운로드받아 제 1 저장부(254)에 저장하거나 최초 콘텐츠를 서버 장치(200)에 요청하여 제공받을 때 화이트박스 암호 테이블의 테이블 파트1 및 테이블 파트2를 제공받아 제 1, 2 저장부(254, 256)에 저장할 수 있다.
제어부(260)는 제 1, 2 저장부(254, 256)에 저장된 화이트박스 암호 테이블을 추출하여 콘텐츠 복호화부(262)에 제공하는데, 즉 클라이언트 장치(250)가 요청한 콘텐츠에 맞는 테이블 파트2와 테이블 파트1으로 이루어진 화이트박스 암호 테이블을 제 1, 2 저장부(254, 256)에서 추출한 후 이를 콘텐츠 복호화부(262)에 제공한다.
콘텐츠 복호화부(262)는 서버 장치(200)로부터 제공받은 콘텐츠를 제어부(260)로부터 제공받은 화이트박스 암호 테이블을 이용하여 복호화한 후 콘텐츠 재생부(264)를 통해 재생시킨다.
한편, 콘텐츠 복호화부(262) 내에는 도 1에 도시된 바와 같은 콘텐츠 보호 장치가 적용될 수 있는데, 즉 카운터(110)에서 생성된 랜덤 넘버와 사용자 정보 입력부(100)를 통해 입력받은 사용자 정보를 제 1, 2 저장부(254, 256)에서 추출한 화이트박스 암호 테이블을 이용하여 암호화된 출력 값을 생성할 수 있으며, 암호화된 출력 값을 이용하여 암호화된 콘텐츠를 복호화하여 콘텐츠 재생부(264)에 제공할 수 있다.
업데이트부(258)는 제 1, 2 저장부(254, 256)에 저장된 화이트박스 암호 테이블을 업데이트하기 위한 것으로서, 더욱 상세하게 서버 장치(200)로부터 주기적으로 전송되는 테이블 파트1을 이용하여 화이트박스 암호 테이블을 업데이트하거나 서버 장치(200)로부터 시드(seed) 값이 수신되는 경우 시드 값에 대한 단순한 연산을 통해 테이블 파트1을 생성한 후 이를 이용하여 화이트박스 암호 테이블을 업데이트할 수 있다. 여기에서, 단순한 연산으로는 행렬 곱셈, XOR, 치환 연산 등을 들 수 있다.
상기와 같은 구성을 갖는 콘텐츠 저작권 보호 시스템이 동작하는 과정에 대해 도 4를 참조하여 설명한다.
도 4는 본 발명의 실시 예에 따른 콘텐츠 저작권 보호를 위한 동작 과정을 도시한 흐름도이다.
도 4에 도시된 바와 같이, 먼저 클라이언트 장치(250)는 클라이언트 인터페이스(214)를 통해 서버 장치(200)에 접속한 후 소정의 회원 가입 절차를 통해 사용자 정보를 입력하게 됨에 따라, 서버 장치(200)의 사용자 등록부(202)는 클라이언트 장치(250)로부터 사용자 정보를 제공받아 사용자 정보 데이터베이스(212)에 저장한다(S400).
이후, 서버 장치(200)의 랜덤 넘버 생성부(204)는 사용자 정보 데이터베이스(212)의 검색을 통해 사용자 정보를 추출한 후 이에 대응되는 랜덤 넘버를 생성(S402)한 후 이를 테이블 생성부(206)에 제공한다.
테이블 생성부(206)는 화이트박스 암호 테이블 중 하나인 테이블 파트1을 생성하는데, 즉 랜덤 넘버를 이용하여 테이블 파트1을 생성한 후 이를 클라이언트 인터페이스(214)를 통해 클라이언트 장치(250)에 전송한다(S404). 이에 따라, 클라이언트 장치(250)는 테이블 파트1을 제 1 저장부(254)에 저장한다.
그런 다음, 서버 장치(200)는 클라이언트 장치(250)로부터 콘텐츠 요청이 있는지를 판단한다(S406).
S406의 판단 결과, 콘텐츠 요청이 있는 경우 서버 장치(200)의 키 생성부(210)는 요청한 콘텐츠(이하, '요청 콘텐츠'라고 함)를 암호화하기 위한 암호화 키를 생성(S408)한 후 이를 테이블 생성부(206)에 제공한다.
테이블 생성부(206)는 암호화 키를 이용하여 테이블 파트2를 생성한 후 이를 클라이언트 인터페이스(214)를 통해 클라이언트 장치(250)에 전송(S410)하며, 클라이언트 장치(250)는 제 2 저장부(256)에 전송받은 테이블 파트2를 저장한다. 이때, 테이블 생성부(206)에서 생성된 테이블 파트1과 테이블 파트2로 이루어진 화이트박스 암호 테이블은 콘텐츰 암호화부(208)에 제공된다.
콘텐츰 암호화부(208)는 콘텐츠 데이터베이스(214)에서 요청 콘텐츠를 검색한 후 테이블 생성부(206)에서 제공받은 화이트박스 암호 테이블을 이용하여 암호화(S412)한 후 이를 클라이언트 인터페이스(214)를 통해 클라이언트 장치(250)에 제공한다.
본 발명의 실시 예에서는 사용자 정보가 사용자 정보 데이터베이스(212)에 등록될 때 랜덤 넘버를 기반으로 테이블 파트1을 생성하는 것으로 예를 들어 설명하였지만, 클라이언트 장치(250)가 콘텐츠를 요청할 때 생성할 수 있다. 다시 말해서, 콘텐츠 요청이 있을 경우 사용자 등록부(202)에 의해 등록된 사용자 정보를 기반으로 랜덤 넘버를 생성한 후 생성된 랜덤 넘버를 이용하여 테이블 파트1을 생성하고, 콘텐츠를 암호화하기 위해 키 생성부(210)에서 생성된 암호화 키를 이용하여 테이블 파트2를 생성할 수 있다.
한편, 클라이언트 장치(250)의 제어부(260)는 제 1, 2 저장부(254, 256)에서 테이블 파트1과 사용자가 요청한 콘텐츠에 대응되는 테이블 파트2를 추출한 후 이를 콘텐츠 복호화부(262)에 제공하며, 콘텐츠 복호화부(262)는 테이블 파트1과 테이블 파트2로 이루어진 화이트박스 암호 테이블을 이용하여 콘텐츠를 복호화한 후 이를 콘텐츠 재생부(264)를 통해 재생시킬 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 예를 들어 당업자는 각 구성요소의 재질, 크기 등을 적용 분야에 따라 변경하거나, 개시된 실시형태들을 조합 또는 치환하여 본 발명의 실시예에 명확하게 개시되지 않은 형태로 실시할 수 있으나, 이 역시 본 발명의 범위를 벗어나지 않는 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것으로 한정적인 것으로 이해해서는 안 되며, 이러한 변형된 실시예들은 본 발명의 특허청구범위에 기재된 기술사상에 포함된다고 하여야 할 것이다.
100 : 사용자 정보 입력부
110 : 카운터
120 : 화이트박스 암호 테이블
130 : 연산부

Claims (19)

  1. 랜덤 넘버를 발생시키는 랜덤 넘버 발생부와,
    상기 랜덤 넘버와 사용자로부터 제공받은 사용자 정보를 암호화하여 암호화된 출력 값을 출력하는 화이트박스 암호 테이블과,
    상기 암호화된 출력 값과 외부로부터 입력되는 데이터를 연산하여 상기 데이터를 암호화하거나 복호화하여 출력하는 연산부를 포함하는
    화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치.
  2. 제 1 항에 있어서,
    상기 랜덤 넘버 발생부는, 상기 사용자 정보가 입력될 때마다 소정의 카운터 값을 제공하는 카운터인 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치.
  3. 제 1 항에 있어서,
    상기 사용자 정보는, 사용자의 단말 정보 또는 사용자의 고유 정보인 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치.
  4. 제 1 항에 있어서,
    상기 화이트박스 암호 테이블은,
    상기 랜덤 넘버를 기반으로 생성된 테이블 파트1과 콘텐츠를 암호화하기 위해 생성된 암호화 키로 이루어진 테이블 파트2로 이루어진 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치.
  5. 제 1 항에 있어서,
    상기 연산부는, 상기 암호화된 출력 값과 외부로부터 입력되는 콘텐츠를 XOR 연산하여 상기 콘텐츠를 암호화하거나 복호화하는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치.
  6. 회원 가입한 사용자의 정보를 수집하여 사용자 정보 데이터베이스에 저장하는 사용자 등록부와,
    상기 사용자 정보 데이터베이스에 저장된 사용자 정보를 기반으로 랜덤 넘버를 생성하는 랜덤 넘버 생성부와,
    콘텐츠 각각에 대한 암호화 키를 생성하는 키 생성부와,
    상기 랜덤 넘버를 기반으로 테이블 파트1을 생성하고, 상기 암호화 키를 기반으로 테이블 파트2를 생성하여 상기 테이블 파트1 및 파트2로 구성되는 화이트박스 암호 테이블을 생성하는 테이블 생성부와,
    상기 화이트박스 암호 테이블을 이용하여 임의의 사용자가 요청한 콘텐츠를 암호화하여 제공하는 콘텐츠 암호화부를 포함하는
    화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치.
  7. 제 6 항에 있어서,
    상기 테이블 생성부는,
    상기 임의의 사용자가 회원 가입 시 상기 임의의 사용자가 등록한 사용자 정보에 대응되는 랜덤 넘버를 기반으로 테이블 파트1을 생성하여 상기 임의의 사용자의 클라이언트 장치에 제공한 후 상기 클라이언트 장치로부터 콘텐츠 요청이 있는 경우 상기 테이블 파트2를 생성하여 상기 클라이언트 장치에 제공하는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치.
  8. 제 6 항에 있어서,
    상기 테이블 생성부는,
    상기 임의의 사용자로부터 최초 콘텐츠의 요청이 있을 때 상기 테이블 파트1과 상기 테이블 파트2를 생성한 후 상기 테이블 파트1 및 파트2로 이루어진 화이트박스 암호 테이블을 상기 임의의 사용자의 클라이언트 장치에 제공하는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치.
  9. 제 6 항에 있어서,
    상기 테이블 생성부는,
    상기 임의의 사용자의 클라이언트 장치에 제공된 테이블 파트1을 업데이트하기 위해 기 설정된 주기로 시드 값을 전송하는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치.
  10. 제 6 항에 있어서,
    상기 테이블 생성부는,
    기 설정된 주기로 테이블 파트1을 생성한 후 상기 클라이언트 장치에 제공하여 상기 클라이언트 장치 내의 화이트박스 암호 테이블을 업데이트시키는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치.
  11. 제 6 항에 있어서,
    상기 콘텐츠 암호화부는,
    상기 화이트박스 암호 테이블을 이용하여 상기 랜덤 넘버와 사용자 정보를 암호화하여 암호화된 출력 값을 출력하며, 상기 암호화된 출력 값과 상기 임의의 사용자가 요청한 콘텐츠를 연산하여 암호화된 콘텐츠를 생성하는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치.
  12. 제 11 항에 있어서,
    상기 콘텐츠 암호화부는, 상기 암호화된 출력 값과 상기 임의의 사용자가 요청한 콘텐츠를 XOR 연산하여 상기 콘텐츠를 암호화하는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 암호화 장치.
  13. 사용자의 정보 기반으로 생성된 테이블 파트1과 콘텐츠 암호화 키를 이용하여 생성된 테이블 파트2로 이루어진 화이트박스 암호 테이블을 이용하여 콘텐츠를 암호화하여 전송하는 서버 장치로부터 콘텐츠를 수신하는 장치로서,
    상기 서버 장치에 접속하여 회원 가입 시 상기 서버 장치로부터 제공받은 상기 테이블 파트1을 저장하는 제 1 저장부와,
    상기 서버 장치에 콘텐츠를 요청할 때마다 상기 서버 장치로부터 제공받은 테이블 파트2를 저장하는 제 2 저장부와,
    임의의 콘텐츠 재생 요청이 있는 경우 상기 제 1 및 제 2 저장부의 검색을 통해 상기 임의의 콘텐츠에 맞는 테이블 파트1과 테이블 파트2를 추출하는 제어부와,
    상기 제어부에서 추출된 테이블 파트1과 테이블 파트2를 이용하여 상기 임의의 콘텐츠를 복호화시키는 콘텐츠 복호화부를 포함하는
    화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치.
  14. 제 13 항에 있어서,
    상기 서버 장치로부터 수신되는 정보를 기반으로 상기 제 1 저장부를 업데이트시키는 업데이트부를 포함하는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치.
  15. 제 14 항에 있어서,
    상기 업데이트부는,
    상기 서버 장치로부터 수신되는 정보가 임의의 테이블 파트1인 경우 상기 임의의 테이블 파트1을 이용하여 상기 제 1 저장부를 업데이트시키는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치.
  16. 제 14 항에 있어서,
    상기 업데이트부는,
    상기 서버 장치로부터 수신되는 정보가 시드 값인 경우 상기 제 1 저장부에 저장된 테이블 파트1에 기 설정된 연산을 수행한 결과 값을 이용하여 상기 제 1 저장부를 업데이트시키는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치.
  17. 제 16 항에 있어서,
    상기 기 설정된 연산은 행렬 곱셈/나눗셈, XOR 또는 치환 연산 중 어느 하나 또는 둘 이상의 조합인 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치.
  18. 제 13 항에 있어서,
    상기 콘텐츠 복호화부는,
    상기 콘텐츠 복호화 장치의 사용자 정보를 제공하는 사용자 정보 입력부와,
    상기 사용자 정보가 입력될 때마다 각기 다른 랜덤 넘버를 생성하는 랜덤 넘버 생성부와,
    상기 사용자 정보 및 상기 랜덤 넘버를 상기 화이트박스 암호 테이블을 이용하여 암호화하여 암호화된 출력 값을 출력하며, 상기 암호화된 출력 값과 상기 임의의 콘텐츠를 연산하여 상기 임의의 콘텐츠를 복호화시키는 연산부를 포함하는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치.
  19. 제 18 항에 있어서,
    상기 연산부는, 상기 암호화된 출력 값과 상기 임의의 콘텐츠를 XOR 연산하여 상기 콘텐츠를 복호화시키는 것을 특징으로 하는
    화이트박스 암호 테이블을 이용한 콘텐츠 복호화 장치.
KR1020110000935A 2011-01-05 2011-01-05 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치 KR101744748B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110000935A KR101744748B1 (ko) 2011-01-05 2011-01-05 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치
US13/284,801 US8712041B2 (en) 2011-01-05 2011-10-28 Content protection apparatus and content encryption and decryption apparatus using white-box encryption table

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110000935A KR101744748B1 (ko) 2011-01-05 2011-01-05 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치

Publications (2)

Publication Number Publication Date
KR20120079639A true KR20120079639A (ko) 2012-07-13
KR101744748B1 KR101744748B1 (ko) 2017-06-09

Family

ID=46380799

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110000935A KR101744748B1 (ko) 2011-01-05 2011-01-05 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치

Country Status (2)

Country Link
US (1) US8712041B2 (ko)
KR (1) KR101744748B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9853952B2 (en) 2015-01-15 2017-12-26 Electronics And Telecommunications Research Institute Apparatus and method for encryption
KR20180046785A (ko) * 2016-10-28 2018-05-09 삼성에스디에스 주식회사 암호화 장치 및 방법
US10341104B2 (en) 2015-10-23 2019-07-02 Samsung Sds Co., Ltd. Encrytion apparatus and method
KR20220054148A (ko) * 2020-10-23 2022-05-02 고려대학교 산학협력단 화이트박스 암호를 이용한 차량 소프트웨어 업데이트 기법

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9930037B2 (en) * 2012-05-22 2018-03-27 Verizon Patent And Licensing Inc. Encrypting a unique identification header to create different transactional identifiers
US9213841B2 (en) * 2012-07-24 2015-12-15 Google Inc. Method, manufacture, and apparatus for secure debug and crash logging of obfuscated libraries
US9264222B2 (en) * 2013-02-28 2016-02-16 Apple Inc. Precomputing internal AES states in counter mode to protect keys used in AES computations
US8745394B1 (en) 2013-08-22 2014-06-03 Citibank, N.A. Methods and systems for secure electronic communication
US20150172050A1 (en) * 2013-12-12 2015-06-18 Nxp B.V. Random data from gnss signals and secure random value provisioning for secure software component implementations
US9576116B2 (en) * 2013-12-26 2017-02-21 Nxp B.V. Secure software components anti-reverse-engineering by table interleaving
US9432186B2 (en) 2014-01-13 2016-08-30 Mxtran Inc. Password-based key derivation without changing key
US9654279B2 (en) * 2014-03-20 2017-05-16 Nxp B.V. Security module for secure function execution on untrusted platform
US9338145B2 (en) * 2014-04-28 2016-05-10 Nxp B.V. Security patch without changing the key
EP2950229B1 (en) * 2014-05-28 2018-09-12 Nxp B.V. Method for facilitating transactions, computer program product and mobile device
SG10201405852QA (en) * 2014-09-18 2016-04-28 Huawei Internat Pte Ltd Encryption function and decryption function generating method, encryption and decryption method and related apparatuses
KR101790948B1 (ko) * 2015-10-26 2017-10-27 삼성에스디에스 주식회사 Drm 서비스 제공 장치 및 방법, drm 서비스를 이용한 콘텐츠 재생 장치 및 방법
US10015009B2 (en) * 2015-11-25 2018-07-03 Nxp B.V. Protecting white-box feistel network implementation against fault attack
EP3179690A1 (en) * 2015-12-11 2017-06-14 Gemalto Sa Mobile device having trusted execution environment
EP3665566A4 (en) * 2017-08-08 2021-04-21 Crypto4A Technologies Inc. SECURE MACHINE-EXECUTED CODE DEPLOYMENT AND EXECUTION PROCESS AND SYSTEM
JP7078630B2 (ja) * 2017-08-10 2022-05-31 ソニーグループ株式会社 暗号化装置、暗号化方法、復号化装置、及び復号化方法
CN107809313A (zh) * 2017-10-31 2018-03-16 北京三未信安科技发展有限公司 一种白盒密码运算方法及系统
CN108111622B (zh) * 2017-12-29 2021-10-29 北京梆梆安全科技有限公司 一种下载白盒库文件的方法、装置及系统
CN110505054B (zh) * 2019-03-28 2021-03-26 杭州海康威视数字技术股份有限公司 一种基于动态白盒的数据处理方法、装置及设备
US20220329439A1 (en) * 2019-08-05 2022-10-13 Securify Bilisim Teknolojileri Ve Guvenligi Egt. Dan. San. Ve Tic. Ltd. Sti. Method for generating digital signatures
CN111741374B (zh) * 2020-06-10 2022-10-21 北京奇艺世纪科技有限公司 获取白盒查找表的方法、装置、电子设备、存储介质及服务端
CN111988330B (zh) * 2020-08-28 2023-05-26 苏州中科安源信息技术有限公司 分布式系统中基于白盒加密的信息安全保护系统和方法
CN114793483A (zh) * 2020-11-24 2022-07-26 京东方科技集团股份有限公司 会议系统、会议信息推送方法和装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7770016B2 (en) * 1999-07-29 2010-08-03 Intertrust Technologies Corporation Systems and methods for watermarking software and other media
CA2354470A1 (en) * 2001-07-30 2003-01-30 Cloakware Corporation Active content for secure digital media
US8064508B1 (en) * 2002-09-19 2011-11-22 Silicon Image, Inc. Equalizer with controllably weighted parallel high pass and low pass filters and receiver including such an equalizer
JP4525350B2 (ja) * 2003-01-15 2010-08-18 ソニー株式会社 信号処理システム
JP4379031B2 (ja) * 2003-07-17 2009-12-09 日本ビクター株式会社 情報伝送方式及びそれに用いる情報送信装置及び情報受信装置
US7769165B2 (en) 2005-10-14 2010-08-03 Microsoft Corporation Semi-public white-box cipher
US20100080395A1 (en) 2006-11-17 2010-04-01 Koninklijke Philips Electronics N.V. Cryptographic method for a white-box implementation
WO2009034504A2 (en) 2007-09-13 2009-03-19 Koninklijke Philips Electronics N.V. Cryptographic processing of content
US8560587B2 (en) * 2008-05-22 2013-10-15 Red Hat, Inc. Non-linear mixing of pseudo-random number generator output
WO2011080487A1 (fr) * 2009-12-30 2011-07-07 France Telecom Procede de generation de table de correspondance pour une boite blanche cryptographique
KR20120042469A (ko) * 2010-10-25 2012-05-03 한국전자통신연구원 부가 정보와 암호키 결합을 이용한 콘텐츠 보호 장치 및 그 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9853952B2 (en) 2015-01-15 2017-12-26 Electronics And Telecommunications Research Institute Apparatus and method for encryption
US10341104B2 (en) 2015-10-23 2019-07-02 Samsung Sds Co., Ltd. Encrytion apparatus and method
KR20180046785A (ko) * 2016-10-28 2018-05-09 삼성에스디에스 주식회사 암호화 장치 및 방법
US10469258B2 (en) 2016-10-28 2019-11-05 Samsung Sds Co., Ltd. Apparatus and method for encryption
KR20220054148A (ko) * 2020-10-23 2022-05-02 고려대학교 산학협력단 화이트박스 암호를 이용한 차량 소프트웨어 업데이트 기법

Also Published As

Publication number Publication date
US20120170740A1 (en) 2012-07-05
US8712041B2 (en) 2014-04-29
KR101744748B1 (ko) 2017-06-09

Similar Documents

Publication Publication Date Title
KR101744748B1 (ko) 화이트박스 암호 테이블을 이용한 콘텐츠 보호 장치, 콘텐츠 암호화 및 복호화 장치
KR102265652B1 (ko) 블록체인 기반의 디지털 권리 관리
CN104486315B (zh) 一种基于内容属性的可撤销密钥外包解密方法
CN113259329B (zh) 一种数据不经意传输方法、装置、电子设备及存储介质
CN107453880B (zh) 一种云数据安全存储方法和系统
KR20120072011A (ko) 무결성 검증이 가능한 데이터 암호장치, 복호장치 및 방법
CN104994068A (zh) 一种云环境下多媒体内容保护和安全分发方法
KR20130093557A (ko) 적어도 하나의 암호화 명령어를 포함하는 소프트웨어 애플리케이션의 협력 실행을 위한 시스템, 장치, 및 방법
CN105468940A (zh) 软件保护方法及装置
JP5602955B2 (ja) デジタルコンテンツの限定受信のための方法およびシステム、ならびに関連の端末および契約者デバイス
CN105095695A (zh) 经由白箱实现的不正确功能行为实现授权
KR20170097509A (ko) 화이트 박스 암호화 기반의 연산 방법 및 그 방법을 수행하는 보안 단말
JP6930053B2 (ja) 装置認証キーを利用したデータ暗号化方法およびシステム
US8804953B2 (en) Extensive ciphertext feedback
JP2014224879A (ja) 乱数生成装置、暗号処理装置、記憶装置及び情報処理システム
CN113326518A (zh) 一种数据处理方法及装置
CN113572604B (zh) 一种发送密钥的方法、装置、系统及电子设备
JP5945525B2 (ja) 鍵交換システム、鍵交換装置、その方法、及びプログラム
KR101808313B1 (ko) 데이터 암호화 방법
JPWO2021009860A5 (ko)
JP2006279488A (ja) 暗号文生成装置、暗号文復号装置、暗号文生成プログラム及び暗号文復号プログラム
KR20150139304A (ko) 마스터 키를 보호하기 위한 암호화 장치 및 그 방법
JP2015050708A (ja) 動的暗号化鍵生成システム
CN116094845B (zh) 一种可高效撤销的条件代理重加密方法及系统
JP6001422B2 (ja) 暗号化ライブラリ生成装置及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant