KR100837256B1 - (n˘a, n˘(2a-2),n˘(a-1),n,0,1) GD-PBIBD를이용한 공모 방지 핑거프린트 코드 생성 방법 - Google Patents

(n˘a, n˘(2a-2),n˘(a-1),n,0,1) GD-PBIBD를이용한 공모 방지 핑거프린트 코드 생성 방법 Download PDF

Info

Publication number
KR100837256B1
KR100837256B1 KR1020060085421A KR20060085421A KR100837256B1 KR 100837256 B1 KR100837256 B1 KR 100837256B1 KR 1020060085421 A KR1020060085421 A KR 1020060085421A KR 20060085421 A KR20060085421 A KR 20060085421A KR 100837256 B1 KR100837256 B1 KR 100837256B1
Authority
KR
South Korea
Prior art keywords
matrix
generating
generated
type
pbibd
Prior art date
Application number
KR1020060085421A
Other languages
English (en)
Other versions
KR20080022247A (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 KR1020060085421A priority Critical patent/KR100837256B1/ko
Priority to US11/850,068 priority patent/US7953975B2/en
Publication of KR20080022247A publication Critical patent/KR20080022247A/ko
Application granted granted Critical
Publication of KR100837256B1 publication Critical patent/KR100837256B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • 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]
    • 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]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0028Adaptive watermarking, e.g. Human Visual System [HVS]-based watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0063Image watermarking in relation to collusion attacks, e.g. collusion attack resistant

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법에 관한 것이다. 다시 말하면 컴퓨터를 이용하여 평균화 공격에 강인하고 코드 생성 크기에 제한을 받지 않는 핑커프린터 코드를 생성하는 방법에 관한 것이다.
본 발명에서는 임의의 소수 n과 3 이상의 임의의 정수 a를 입력받는 1단계와; n×n 인덱스 매트릭스(index matrix)를 생성하는 2 단계와; n개의 n×n 타입_i 매트릭스(type_i matrax)를 생성하는 3 단계와; 상기 n×n 인덱스 매트릭스와 상기 n×n 타입_i 매트릭스를 이용하여 하나의 n2 × n2 매트릭스를 생성하는 4 단계와; na × n2a -2 매트릭스를 생성하는 5 단계; 및 상기 na × n2a -2 매트릭스에서 임의의 하나의 열을 추출하는 6 단계를 포함하는 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법이 제시된다.
핑거프린트, 코드

Description

(n^a, n^(2a-2),n^(a-1),n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법 {Method for making anti-collusion fingerprint codes from the semi regular GD-PBIBD with parameters (n^a, n^(2a-2),n^(a-1),n,0,1)}
도1의 a는 n=3인 경우의 (n2,n2,n,n,0,1)-디자인의 실제 예이고, 도 1의 b는 생성된 순서쌍을 3×3 매트릭스로 단순화하여 나타낸 것이다.
도2의 a는 n=3인 경우의 본 알고리즘을 n3까지 구현한 모습이다. 도 2의 b는 n2개 그룹 중 행 방향으로 n개를 선택하는 n가지의 서로 다른 열 방향의 배열을 나타낸 것이다. 도 2의 c는 이렇게 선택한 n개의 서로 다른 인덱스 매트릭스(index matrix) 그룹을 의미한다.
도3은 (n2,n2,n,n,0,1) 디자인 설계시 필요한 인덱스 매트릭스(index matrix)의 일반적인 형태를 나타낸다.
도4는 (n2,n2,n,n,0,1) 디자인을 제외한 (na,n2a -2,na -1,n,0,1) 디자인 설계 시 필요한 인덱스 매트릭스(index matrix)의 일반적인 형태를 나타낸다.
도5는 디자인 설계 시, 전 단계의 (na,n2a -4,na -2,n,0,1)를 나타낸 매트릭스(matrix)를 P로부터 서브매트릭스(submatrix)를 생성하는 과정을 나타낸다.
도6은 n2×n2 기본 행렬 만드는 단계에서, n=3인 경우의 3×3 인덱스 매트릭스(index matrix)와 타입 매트릭스(type matrix)의 실시예를 나타낸다.
도7은 n=3인 경우의 (n2,n2,n,n,0,1) 디자인이 완성된 경우를 나타낸다.
도8은 n=3인 경우의 (n2,n2,n,n,0,1) 디자인을 제외한 (na,n2a -2,na -1,n,0,1) 디자인 설계시 필요한 인덱스 매트릭스의 실시예를 나타낸다.
도9는 n=3,k=3인 경우의 nk -2×n2k -4 서브 매트릭스_j(sub-matrix_j)의 실시예를 나타낸다.
도10은 n=3인 경우의 서브 매트릭스_j(sub-matrix_j)를 이용하여 타입 매트릭스(type matrix)를 생성한 실시예를 나타낸다.
도11은 n=3인 경우의 n3×n4 매트릭스가 완성된 실시예를 나타낸다.
도 12는 본 발명의 실시예에 따른 핑거프린트 코드를 생성하는 방법을 설명하는 흐름도이다.
본 발명은 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드를 생성하는 방법에 관한 것이다. 즉, 본 발명은 디지털 콘텐츠의 저작권 보호 혹은 디지털 콘텐츠의 불법적인 유통이나 사용을 방지하기 위한 디지털 핑거프린팅 방법에 관한 것으로서, 특히, 디지털 핑거프린팅에 있어서 핵심 기술인 핑거프린트 코드를 생성하는 방법에 관한 것이다. 본 발명에 의해 생성된 핑거프린트 코드를 디지털 매체인 이미지, 비디오, 오디오 등에 삽입함으로써, 그러한 디지털 콘텐츠의 불법적인 사용으로부터 저작권을 보호할 수 있으며, 적법한 콘텐츠의 불법 유통시에 불법 유통에 관련된 사용자를 찾아내기 위한 것이다.
디지털 핑거프린팅(Digital fingerprinting)이란 텍스트, 이미지, 비디오, 오디오 등의 디지털 콘텐츠에 콘텐츠를 구입하는 구매자 고유의 정보인 핑거프린트를 삽입하여 추후에 일어날 수 있는 불법 유통이나 불법적인 사용을 막기 위한 기술이다. 구매자에게 판매되는 콘텐츠 내에 구매자 고유의 핑거프린트를 삽입하고, 콘텐츠의 불법 유통이나 불법적인 사용 적발 시 콘텐츠 내에 있는 핑거프린트를 추출하여 불법 배포자나 불법 사용자를 찾아내어 적법한 대응이나 조치를 취하는 기술이다.
디지털 핑거프린팅은 원본의 콘텐츠에 잡음 형식으로 변조된 핑거프린트 정보를 넣기 때문에, 삽입된 핑거프린트를 없애려는 여러 가지 공격에 취약할 수 있다. 특히 디지털 핑거프린팅에서는 동일한 원본에 서로 다른 사용자의 핑거프린트를 넣기 때문에 각각의 사용자들은 약간씩 서로 다른 콘텐츠를 가지게 된다. 따 라서 두 명 이상의 사용자들이 서로의 콘텐츠를 비교하면 그 차이를 쉽게 알아낼 수 있고, 서로의 차이점을 이용하여 삽입된 핑거프린트를 쉽게 없앨 수 있다.
이 중 평균화 공격은 콘텐츠 내에 잡음 형식으로 삽입된 핑거프린트를 약화시키는 가장 좋은 방법 중의 하나이다. 평균화 공격(Averaging attack)은 핑거프린팅 기법이 적용된 이미지나 비디오에 가장 쉽게 적용 가능한 공모 공격으로, 서로 다른 핑거프린트가 삽입된 2장 이상의 이미지나 비디오의 프레임을 서로 평균하여 새로운 이미지나 프레임을 생성하는 공격 방법이다. 평균화 공격은 공격에 이용되는 콘텐츠의 수에 비례하여 핑거프린트를 감소시키는 효과를 낸다. 일반적으로 평균화 공격을 거치면 그 안에 삽입된 핑거프린트 신호의 세기가 감소되기 때문에 핑거프린트 추출 시에 구매자의 정보가 추출 안 되거나 틀린 정보가 나온다. 평균화 공격에 강인한 핑거프린팅 시스템은 평균화 공격이 일어난 콘텐츠에 대해서도 그 공격에 가담한 구매자들을 판별하여 알려줄 수 있어야 한다. 그러기 위해서 삽입되는 핑거프린트 정보는 평균화 공격에 강인한 코드이어야 한다.
기존의 평균화 공격에 강인한 핑거프린트 코드를 작성하기 위해서 조합 설계 이론의 한 분야인 GD-PBIBD(Group Divisible Partially Balanced Incomplete Block Design)를 이용하였다. 이 설계 이론에 의하여 생성된 코드는 설계 이론의 특성 상 평균화 공격에 강인한 특성을 지니고 있다. 그러나 지금까지는 코드를 생성함에 있어서, 문헌에 나와 있는 코드만을 이용함으로써, 문헌 자료의 특성 상 제한된 수의 코드만 이용할 수 있었고 또한 수용할 수 있는 사용자의 수가 뚜렷한 한계를 보였다.
따라서 본 발명에서는 평균화 공격에 강인한 핑거프린트 코드를 생성하는 알고리즘과 그 알고리즘을 이용하여 핑거프린트 코드를 생성하는 방법을 개발하는 것을 목표로 한다. 본 발명에서는 GD-PBIBD에 의하여 생성된 코드와 동일한 코드를 생성하는 본 발명만의 고유한 알고리즘을 개발한다. GD-PBIBD 코드의 생성 알고리즘을 분석하여 고유한 방식으로 코드를 컴퓨터를 이용하여 생성한다. 그러므로 본 발명에 의하여 생성된 코드는 평균화 공격에 강인한 핑거프린트일 뿐만 아니라, 생성 알고리즘의 특성에 의해서 코드 생성 크기에 제한을 받지 않는 특징이 있다.
본 발명은 기존에 존재하지 않은 코드 생성 알고리즘의 개발 및 그 알고리즘을 이용한 핑거프린트 코드 생성 방법을 목표로 한다. 문헌에는 코드의 실 예가 나타나 있기 때문에 그것을 이용하면 핑거프린트 코드로 사용할 수 있지만, 앞서 지적했듯이 그 한계를 뚜렷이 보이고 있기 때문에 컴퓨터를 이용한 코드 생성 알고리즘 및 방법을 개발한다. 이와 같은 컴퓨터를 이용하여 생성할 수 있는 고유한 알고리즘은 기존에 존재하지 않은 방식이다. GD-PBIBD 설계 이론의 특성을 수학적으로 분석하고, 이를 바탕으로 하여 퍼즐 블록 맞추기와 유사한 방식의 고유한 알고리즘 및 방법을 개발한다.
상기한 목적을 달성하기 위한 기술적 사상으로서, 본 발명에서는 핑거프린트 코드를 생성하기 위한 프로그램을 실행하는 컴퓨터 기기를 이용하여 핑거프린트 코드를 생성하는 방법에 있어서,
임의의 소수 n과 3 이상의 임의의 정수 a를 입력받는 1단계와;
n×n 인덱스 매트릭스(index matrix)를 생성하는 2 단계와;
n개의 n×n 타입_i 매트릭스(type_i matrax)를 생성하는 3 단계와;
상기 n×n 인덱스 매트릭스와 상기 n×n 타입_i 매트릭스를 이용하여 하나의 n2 × n2 매트릭스를 생성하는 4 단계와;
na × n2a -2 매트릭스를 생성하는 5 단계; 및
상기 na × n2a -2 매트릭스에서 임의의 하나의 열을 추출하는 6 단계를 포함하는 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법이 제시된다.
이하에서는 본 발명의 실시예에 대하여 첨부한 도면을 참조하면서 상세히 설명하기로 한다. 먼저, 그 이론적 배경을 살펴보도록 한다.
Ⅰ. 코드 생성 알고리즘에 사용된 기본적인 수학 이론
1. 소수(prime number)의 성질
1.1 나머지 함수, module 을 사용하기로 하고 그 서술방법은 아래와 같다.
예) 7을 3으로 나눈 나머지는 1이다. 7≡1 mod(3)
1.2 Zn = { 0, 1, 2, 3,...., n-1 } 즉, 0에서 n-1까지의 정수의 집합을 Zn으로 표시한다.
1.3 임의의 자연수 n을 m으로 나눈 나머지(mod)는 Zm 의 원소와 일대일 대응 이 된다. 즉 모든 자연수를 m개의 분할(partition)로 생각할 수 있다.
1.4 Zm 의 서로 다른 수 p, q를 이 pk≡qk ( mod m )이 되게 하는 k는 m이 유일하다.
증명> 만약 pk≡qk ( mod m ) 이라면 pk-qk≡(p-q)k≡0 (mod m), 즉 (p-q)│m 이고 k│m 인데 m의 약수는 1과 m 밖에 없다. p와 q는 Zm 의 서로 다른 수 이므로 p-q는 m의 배수가 될 수 없고 k가 m의 배수여야 한다.
2. n2×n2 매트릭스를 생성하는 아이디어
2.1 인덱스 매트릭스 생성
도 1의 (a)는 n=3일 때 (n2,n2,n,n,0,1)-디자인의 실시예이다.
각 행의 인덱스(index)인 n1,n2,...,n9는 n2 개의 성분(element)을 나타내고 각 열의 인덱스(index)인 1,2,...,9는 n2개의 생성한 n개의 성분(element)을 가진 순서쌍을 나타낸다.
도 1의 (b)는 이렇게 생성된 순서쌍을 3×3(n×n) 매트릭스로 단순화하여 나타낸 것이다. 각 행의 인덱스 N1,N2,N3는 각각 n1-n3, n4-n6, n7-n9까지의 각각 한 그룹의 성분(element)들을 대표하고 각 열의 인덱스 1,2,3은 각각 3개씩의 순서쌍을 나타내며 도 1의 a의 3×3의 서브 매트릭스(submatrix)가 같은 모양을 나타내는 것을 Ⅰ,Ⅱ, 또는 Ⅲ으로 표현하였다.
위에 보여준 표와 같이 알고리즘을 단순화하기 위해 비슷한 패턴을 가진 매트릭스를 이용한다.
2.2. n2×n2 매트릭스 생성
우리가 생성할 모델은 λ0=0 and λ1=1 에 대한 것이다. 즉, 한 그룹에서 임의의 성분(element)은 다른 그룹에서의 한 성분(element)과 정확히 한 번 같은 열에 있게 된다. 보기로 주어진 표와 같이 n개씩 n그룹의 성분(element)을 생각해본다.(도 1의 (a))
① 각 그룹(N1, N2, N3)의 1번째, 2번째, 3번째 성분(element)을 뽑아 3개의 순서쌍을 만들 수 있다.
② 다음으로 N1그룹에서 1번째, N2그룹에서 2번째, N3그룹에서 3번째 성분(element)으로 한 개의 순서쌍을 만든다. 또 N1그룹에서 2번째, N2그룹에서 3번째, N3그룹에서 1번째 성분(element)으로 한 개의 순서쌍을 만든다. N1에서 3번째, N2에서 1번째, N3에서 2번째 성분(element)으로 한 개의 순서쌍을 만든다.
③ N1 그룹에서 1번째, N2 그룹에서 3번째, N3 그룹에서 2번째 성분(element)으로, 또 N1 그룹에서 2번째, N2 그룹에서 1번째, N3 그룹에서 3번째 성분(element)으로, 또 N1 그룹에서 3번째, N2 그룹에서 2번째, N3 그룹에서 1번째 성분(element)으로 순서쌍을 세 개 만들 수 있다.
위의 ①②③의 과정을 n개씩 n그룹, n2개의 성분(element)으로 일반화하면 다음과 같다.
① 각 m번째 그룹(group)에서 k+(m-1)*0 번째 성분(element)을 뽑는다. (k를 1,2,...,n까지 변환한다.)
② 각 m번째 그룹(group)에서 k+(m-1)*1 번째 성분(element)을 뽑는다. (k를 1,2,...,n까지 변환한다)
③ 각 m번째 그룹(group)에서 k+(m-1)*2 번째 성분(element)을 뽑는다. (k를 1,2,...,n까지 변환한다)
...
ⓝ 각 m번째 그룹(group)에서 k+(m-1)*(n-1) 번째 성분(element)을 뽑는다. (k를 1,2,...,n까지 변환한다)
위의 ①~ⓝ의 과정에서 총 n2개의 순서쌍이 생성되었다.
‘Ⅰ. 1. 소수의 성질' 을 이용하여 n이 소수일 때, 서로 다른 그룹의 임의의 두 성분이 n2 개의 순서쌍에 정확히 한 번씩 나타난다는 것을 다음과 같이 증명할 수 있다.
우선 각 그룹 안에 있는 성분(element)끼리는 같은 순서쌍에 포함되지 않는다. 다음으로 m1번째 그룹의 k1번째 성분(element)과 m2번째 그룹의 k2번째 성분(element)이 같은 순서쌍에 존재한다고 가정하자. ( m1≠m2 이고 k1≠k2 이고 m1, m2, k1, k2는 1~n 중 임의의 숫자이다.) 위의 ①~ⓝ과정 중 j 번째에서 생성된다면 (m2-m1)×(j-1)≡k2-k1 ( mod n )이 성립한다. 고정된 m1, m2, k1에 대해 이 를 만족하는 k2는 유일하게 존재하므로, 모든 성분(element)에 대해 임의의 다른 그룹에 포함된 성분(element)과 정확히 한 번 같은 순서쌍 안에 있게 된다.
3. 상위 (na,n2a -2,na -1,n,0,1)-디자인으로 확장하는 아이디어
3.1 (n3,n4,n2,n,0,1)-디자인을 위한 착상
2.2에서 증명한 n2×n2 알고리즘을 이용한다.
n3=n2×n 이므로 n3×n3 에서 PBIBD 순서쌍의 개수는 (n2개의 그룹 중 n개의 그룹을 중복 없이 골라낼 수 있는 경우의 수 = n2) × (선택한 n개의 그룹, 즉 n2개의 성분(element)으로 만들 수 있는 n-터플(n-tuple) 순서쌍의 개수 = n2) 으로 생각할 수 있다.
n=3일 때의 경우를 간단히 도2에 나타냈다.
도 2에서 (a)표는 우리의 알고리즘을 n3 식까지 완전히 구현한 모습이다. 이해를 돕기 위해 n=3으로 설정하였다. (b)표는 (n2×n2 기본 매트릭스(basic matrix)가 아니다.) n2개 그룹 중 행 방향으로 n개를 선택하는 n가지의 서로 다른 열 방향의 배열을 나타낸 것이다. (c)표는 이렇게 선택한 n개의 서로 다른 인덱스 매트릭스(index matrix) 그룹을 의미하며, 전체 n2개의 성분(element)은 바로 전단계인 n2 ×n2 매트릭스에서 생성한 타입 매트릭스_i_j(type matrix_i_j)와 연결되어야 하는 번호를 의미한다.
3.2 귀납법에 의한 확장 모델 (na, n2a -2, na -1, n, 0, 1)을 위한 알고리즘
n4, n5 와 같이 차수가 늘어날 때 인덱스 매트릭스(index matrix)와 기존 차수 모델 매트릭스의 서브 매트릭스(submatrix)를 이용한다. 어떤 규칙(알고리즘)을 이용하는지 살펴본다.
3.2.1 귀납법의 기초
'2. n2×n2 매트릭스를 생성하는 아이디어'에서 사용한 알고리즘을 그대로 사용한다. 이때 필요한 매트릭스(행렬)는 n×n 크기의 인덱스 매트릭스(index matrix) Aindex와, 역시 n×n 크기인 n개의 타입 매트릭스(type matrix) M1~Mn이다. 결과로 만들어지는 매트릭스의 크기는 n2×n2이다. 도 3에 인덱스 매트릭스(index matrix)의 일반적인 형식을 나타내었다. 각 1,2,..,n은 M1, M2, ... Mn으로 대체(replace)된다. Mi의 크기는 n×n이므로 총 n2의 경우의 수가 나온다.
(M1)ij을 M1의 i번째 행 j번째 열의 원소라고 하면,
(Mk)ij = 1 ( j=i+(k-1) 이면)
= 0 (그 밖의 경우)
로 정의하면 M1은 대각방향만 1, 나머지는 0인 모양이 M2는 M1이 한 행씩 밑으로 옮겨진 모양이다.
3.2.2. 귀납법
(n2,n2,n,n,0,1)-디자인을 제외한 (na,n2a -2,na -1,n,0,1)-디자인에서는 a와 상관없는 n×n2 크기의 인덱스 매트릭스(index matrix) Bindex와 하나 낮은 차수에서 얻어지는 n개의 크기 na -2×n2a -4의 서브매트릭스(submatrix) M1~Mn가 필요하다. 도4에 인덱스 매트릭스(index matrix) Bindex의 일반적인 형태를 나타내었다.
전 단계의 (na,n2a -4,na -2,n,0,1)를 나타낸 매트릭스를 P라고 한다면 도5와 같다.
P를 행을 기준으로 n등분한 서브매트릭스(submatrix)를 M1...Mn이라 한다. Mk 의 크기는 na -2×n2a -4이다.
Bindex의 각각의 한 칸은 na -1×n2a -4이고 (Bindex)ij 의 숫자가 k라면 이것은 Bindex의 한 칸 중 (na -2)×k+1에서 (na -2)×(k+1)의 행에 (즉 na -2×n2a -4 크기의 서브매트릭스)에 Mi가 대입된다는 것을 뜻한다. 나머지는 모두 0이다. 부연하면, Bindex의 각각의 한 칸은 " Ⅱ. 알고리즘 " ② 단계에서 생성될 타입_i_j 매트릭스로 대체되는데, 그 타입_i_j 매트릭스의 크기가 na -1×n2a -4 라는 것이다. 타입_i_j 매트릭스의 na-1 개의 행 중에서 (Bindex)ij 의 element인 k 에 따라서 (na -2)×(k-1)+1 번째의 행부터 (na -2)×(k) 번째의 행까지에 na -2×n2a -4 크기의 서브매트릭스 Mi를 대입한다는 의미이다. na -1 개의 행 중에서 서브매트릭스의 element에 의해서 대체되는 부분이 na-2×n2a- 4 이고, 그 나머지 element는 0으로 채워진다.
즉 차수가 올라가는 매 단계마다 공통된 n×n2크기의 인덱스 매트릭스(index matrix) Bindex와 그 전단계의 모델을 나타낸 매트릭스를 행으로 n개로 나눈 서브매트릭스(submatrix) n개가 필요하다.
Ⅱ. 알고리즘
GD PBIBD를 이용하여 공모 방지 코드를 생성하는 우리의 알고리즘은 다음의 2 단계로 이루어진다.
① 기본 n2×n2 행렬 만들기
n을 소수라고 하자. 그러면 우리는 항상 서로 다른 n개의 수열 { Sij } with Si=[1+(i-1)*(j-1)] mod n (for i,j=1,2,…,n) 를 얻을 수 있다. 또한 모든 i, j 에 대해서 Sij 와 Sij +1 의 차이는 i-1 이다. 이러한 사실을 이용하여 도3과 같은 숫자 배열의 n×n 인덱스 매트릭스(index matrix) 가 얻어진다.
도 3에서 인덱스 매트릭스(index matrix)상의 각 숫자 i 의 자리에 타입_i 매트릭스(type_i matrix) 가 연결되는데, 이 n 가지 타입_i 매트릭스(type_i matrix) 에 대한 설명은 다음과 같다.
- type_i 매트릭스는 n×n 매트릭스이다. (i=1,2,…,n)
- type_1 매트릭스: 대각 엔트리가 0 이면,
그 밖의 경우는 1
- type_i 매트릭스: type_(i-1) 매트릭스의 모든 열을 왼쪽으로 한 번 이동한 것.
- type_i 매트릭스에 대한 생성 알고리즘은 아래와 같이 간단히 얻어진다.
for k from 0 to n-1
for j from 0 to n-1
if k≡(j+i-1) (mod n)
t_2[k][j] = 0
도 3과 같은 인덱스 매트릭스(index matrix)의 각 성분(element)들과 동일한 i 값을 갖는 type_i 매트릭스를 각 위치에 붙여주면 n2×n2 기본 매트릭스(basic matrix)가 얻어진다.
예를 들어, n=3 에 대해서 n×n 인덱스 매트릭스(index matrix)와 n=3일 경우의 타입 매트릭스(type matrix)를 만들어보면 도 6과 같다. (n개의 type_i 매트릭스들 간의 차이를 잘 설명하기 위해서 빈칸에 들어가야 할, '1'을 생략하였다.) 도 7은 인덱스 매트릭스(index matrix)와 해당하는 타입_i 매트릭스(type_i matrix)를 연결하여 n2×n2 기본 매트릭스(basic matrix)가 완성된 단계를 나타낸다.
② nk×n2k -2 매트릭스 (k=3,4,…,a) 로 확장하기
이 단계에서는, 도 8과 같은 n 개의 인덱스 매트릭스(index matrix) 들이 필요하다.
그리고 생성 알고리즘은 다음과 같다.
for h from 1 to n
for i from 0 to n-1
for j from 0 to n-1
index[i][j] = (h + ij) % n;
다만, 결과치가 0인 경우에는 n을 갖는다.
도 8과 같은 n 종류의 인덱스 매트릭스(index matrix)의 각 성분에 연결될 타입 매트릭스(type matrix)들은 단계 ① 에서와 조금 다르다. 지금부터는 n2 개의 타입_i_j 매트릭스(type_i_j matrix) 들이 필요하게 된다. 인덱스는 i와 j 두 개를 사용한다. 타입_i_j 매트릭스(type_i_j matrix) 들에 대한 설명은 다음과 같다.
- 타입_i_j 매트릭스(type_i_j matrix)는 nk -1×n2k -4 매트릭스이다. (i,j=1,2,…,n)
- 인덱스 i 는 nk -1×n2k -4 매트릭스에서 nk -2×n2k -4 서브매트릭스_j(sub-matrix_j) 가 몇 번째에 위치하는 것인지를 나타낸다. 즉 매트릭스 각 성분 값이 모두 1인 nk -1×n2k -4 매트릭스를 n 개로 행을 기준으로 나누어 첫 번째 nk -2×n2k -4 매트릭스 영역부터 맨 마지막 n 번째 nk-2×n2k-4 매트릭스 영역 중에서 몇 번째 매트릭스 영역으로 와야 하는지 그 위치를 의미한다.
- 인덱스 j 는 총 n 개로 생성된 nk -2×n2k -4 서브매트릭스-j(sub-matrix_j) 가운데 어떤 것이 와야 하는지를 나타낸다.
총 n 개의 nk -2×n2k -4 서브매트릭스_j(sub-matrix_j) 에 대한 설명은 다음과 같다.
- 서브매트릭스_j(sub-matrix_j)는 바로 전 차수의 전체 매트릭스 생성 단계에서 생성한 전체 매트릭스의 위에서부터 j번째 nk -2×n2k -4 매트릭스 부분만 잘라낸 것이 된다.
예를 들어, n=3 에 대해서 3 가지 서브매트릭스_j(sub-matrix_j) 가 있는데, 이들은 현재 n3×n4 matrix로 확장하기 위해 바로 전 차수 단계인 32×32 매트릭스에서 도 7 및 도 9와 같이 j 번째 n×n2 매트릭스 부분만을 잘라내어 번호 붙여준 것이다.
n=3에 대한 앞의 예를 이어서, 도 9와 같은 n 가지의 서브매트릭스_j(sub-matrix_j)를 i 번째 위치에 붙여준 n2 개의 타입_i_j(type_i_j matrix )들을 생성한다. 비어있는 부분은 ‘1’이 와야 하지만 편의상 생략하였다.
이제 도 10처럼 생성한 n2 개의 타입_i_j 매트릭스(type_i_j matrix) 들을 원래 목표였던 nk×n2k -2 매트릭스 상에 어떻게 연결하여 붙이는 것인지 설명하도록 하겠다. 우리가 이미 만들어 놓은 도 8에서의 n가지 인덱스 매트릭스(index matrix) 상에 인덱스를 맞추어 타입_i_j 매트릭스(type_i_j matrix)를 붙여주는 방법이다.
맨 먼저 n 가지 인덱스 매트릭스(index matrix)들을 옆으로 나란히 이어주어 하나의 커다란 n×n2 인덱스 매트릭스(index matrix)를 만든다. 이 커다란 인덱스 매트릭스(index matrix)에서 임의의 한 성분(element)이 위치하고 있는 행을 q라는 변수를 사용하여 인덱스를 지정하고, p 라는 변수는 큰 인덱스 매트릭스(index matrix) 상의 성분(element) 값과 동일한 숫자를 지정한다. 그리고 타입_i_j 매트릭스(type_i_j matrix)를 큰 인덱스 매트릭스(index matrix) 상에 p=i and q=j를 만족시키는 성분 자리에 연결시킨다. 정확하게 말하면 그 자리에 붙여준다. 이것으로 nk -1×n2k -4 타입_i_j 매트릭스(type_i_j matrix)가 큰 인덱스 매트릭스(index matrix) 구조에 맞게 n 번 열 쪽으로 채워지고, n2 번 행 쪽으로 채워져서 매 차수 단계마다 nk×n2k -2 매트릭스가 만들어진다. (k=3,4,…,a) 예를 들어 n=3에 대해서 n3×n4 매트릭스가 만들어진 결과는 도 11과 같다. 마찬가지로 편의상 빈칸으로 처리한 다른 성분들은 모두 '1'이 오는 자리이다. a가 4 이상인 경우에는, k=a가 될 때 까지 ② 단계를 반복한다.
도 11과 같이 생성된 매트릭스에서 하나의 열이 한 명의 사용자에게 배포되어 공모 방지용 핑거프린트 코드로 사용된다.
도 12는 본 발명의 실시예에 따른 핑거프린트 코드를 생성하는 방법을 설명하는 흐름도이다.
먼저, 임의의 소수 n과 3 이상의 임의의 정수 a를 입력받는다(S1201).
다음으로, n×n 인덱스 매트릭스(index matrix)를 생성한다(S1202).
다음으로, n개의 n×n 타입_i 매트릭스(type_i matrax)를 생성한다(S1203).
다음으로, 상기 n×n 인덱스 매트릭스와 상기 n×n 타입_i 매트릭스를 이용하여 n2 × n2 매트릭스를 생성한다(S1204).
다음으로, n × n2 인덱스 매트릭스를 생성한다(S1205).
다음으로, 원하는 최종 매트릭스인 na × n2a -2 매트릭스를 구하기 위하여 반복적으로 행해지는 단계이다. 즉, 상기 n2 × n2 매트릭스를 기초로 n3 × n4 매트릭스를 생성하고, n3 × n4 매트릭스를 기초로 n4 × n6 매트릭스를 생성하는 단계적이고 귀납적인 방법을 이용함으로써 nk -1 × n2k -4 매트릭스를 기초로 nk × n2k -2 매트릭 스를 생성하는 과정을 k가 a가 될 때까지 반복하여, na -1 × n2a -4 매트릭스를 기초로 na × n2a -2 매트릭스를 생성하며, 이를 위한 반복절차는 아래와 같다. 여기서 k는 3부터 a까지의 정수이며, 3부터 시작하여 아래의 세번째 단계를 마친 후 1씩 증가한 k값으로 반복절차를 수행한다.
그 반복되는 단계의 첫번째는 전 단계에서 생성된 nk -1 × n2k -4 매트릭스에서 n 개의 nk -2 × n2k-4 서브매트릭스_j(sub matrix_j)를 생성한다(S1206).
두번째는, 상기 서브매트릭스_j를 이용하여 n2 개의 nk -1 × n2k -4 타입_i_j 매트릭스(type_i_j matrix)를 생성한다(S1207).
세번째는, 상기 n × n2 인덱스 매트릭스와 상기 nk -1 × n2k -4 타입_i_j 매트릭스를 이용하여 nk × n2k -2 매트릭스를 생성하고(S1208), k는 a가 될 때까지 상기 반복과정을 수행하여 원하는 최종 매트릭스인 na × n2a -2 매트릭스를 얻게 된다.
마지막으로, na × n2a -2 매트릭스에서 임의의 하나의 열을 추출한다(S1209).
본 발명에 의하면, 기존에 이론으로만 존재하던 PBIBD 모델을 바탕으로 컴퓨터 알고리즘으로 구현하여 원하는 만큼 핑거프린트 코드를 쉽고 빠르게 생성할 수 있고, (nk, n2k -2, nk -1, n, 0, 1) GD-PBIBD의 k값에 대해서 무한히 확장된 모델을 따르는 핑거프린트 코드를 얻을 수 있다.

Claims (12)

  1. 핑거프린트 코드를 생성하기 위한 프로그램을 실행하는 컴퓨터 기기를 이용하여 핑거프린트 코드를 생성하는 방법에 있어서,
    임의의 소수 n과 3 이상의 임의의 정수 a를 입력받는 1단계와;
    n×n 인덱스 매트릭스(index matrix)를 생성하는 2 단계와;
    n개의 n×n 타입_i 매트릭스(type_i matrax)를 생성하는 3 단계와;
    상기 n×n 인덱스 매트릭스와 상기 n×n 타입_i 매트릭스를 이용하여 n2 × n2 매트릭스를 생성하는 4 단계와;
    na × n2a-2 매트릭스를 생성하는 5 단계; 및
    상기 na × n2a-2 매트릭스에서 임의의 하나의 열을 추출하는 6 단계를 포함하고,
    상기 5 단계는,
    n × n2 인덱스 매트릭스를 생성하는 5-1 단계; 및
    상기 n2 × n2 매트릭스를 기초로 n3 × n4 매트릭스를 생성하고, n3 × n4 매트릭스를 기초로 n4 × n6 매트릭스를 생성하는 단계적 방법으로써 nk-1 × n2k-4 매트릭스를 기초로 nk × n2k-2 매트릭스를 생성하는 과정을 k가 a가 될 때까지 반복하여, na-1 × n2a-4 매트릭스를 기초로 na × n2a-2 매트릭스를 생성하는 5-2 단계로 이루어지는 (na,n2a-2,na-1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
    여기서, k는 3부터 a까지의 정수이다.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 5-2 단계에서 각 차수 단계의 nk × n2k-2 매트릭스는,
    전 단계에서 생성된 nk-1 × n2k-4 매트릭스에서 n 개의 nk-2 × n2k-4 서브매트릭스_j(sub matrix_j)를 생성하는 a 단계와;
    상기 서브매트릭스_j를 이용하여 n2 개의 nk-1 × n2k-4 타입_i_j 매트릭스(type_i_j matrix)를 생성하는 b 단계; 및
    상기 5-1 단계의 n × n2 인덱스 매트릭스와 상기 nk-1 × n2k-4 타입_i_j 매트릭스를 이용하여 nk × n2k-2 매트릭스를 생성하는 c 단계를 거쳐 생성되는 것을 특징으로 하는 (na,n2a-2,na-1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
  4. 청구항 1에 있어서,
    상기 제2 단계에서 생성되는 인덱스 매트릭스는,
    모든 제1열의 성분 값은 1이고, 다른 각 성분 값인 Si (j+1)는 Sij + (i-1) 인 것을 특징으로 하는 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
    여기서, i는 행을, j는 열을 나타내고, i,j는 1부터 n까지의 정수이다. 또한 각 성분 값은 1부터 n까지의 정수 순환 숫자 배열을 따른다. 즉, n보다 1만큼 큰 값은 1이며, n-1 보다 2만큼 큰 값은 1이다.
  5. 청구항 1에 있어서,
    상기 제3 단계에서 생성되는 타입_i 매트릭스는,
    i값이 1부터 n까지의 정수를 갖는 n개의 매트릭스로 생성되고(타입_1, 타입_2,…, 타입_n), 각 타입_i 매트릭스는 아래와 같은 알고리즘 1에 의해 생성되고, 나머지 성분은 1인 것을 특징으로 하는 (na,n2a-2,na-1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
    [ 알고리즘 1 ]
    for k from 0 to n-1
    for j from 0 to n-1
    if k≡(j+i-1) (mod n)
    t_2[k][j] = 0
  6. 청구항 1에 있어서,
    상기 제4 단계에서 생성되는 n2 × n2 매트릭스는,
    상기 2단계에서 생성된 인덱스 매트릭스의 각 성분 자리에 그 성분 값과 동일한 i값을 갖는 상기 3단계에서 생성한 타입_i 매트릭스를 붙여주어 생성되는 것을 특징으로 하는 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 생성 방법.
  7. 청구항 1에 있어서,
    상기 5-1 단계에서 생성되는 n × n2 인덱스 매트릭스는,
    아래와 같은 알고리즘 2에 의해 생성되는 것을 특징으로 하는 (na,n2a-2,na-1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 생성 방법.
    [ 알고리즘 2 ]
    for h from 1 to n
    for i from 0 to n-1
    for j from 0 to n-1
    index[i][j] = (h + ij) % n;
    다만, 결과치가 0인 경우에는 n을 갖는다.
  8. 청구항 3에 있어서,
    상기 a 단계에서 생성되는 nk -2 × n2k -4 서브매트릭스_j는,
    nk -1 × n2k -4 매트릭스에서 nk -2 개의 행을 하나의 묶음 단위로 하여 1행부터 nk-1행까지 nk -2 개의 행씩 n개로 나뉜 nk -2 × n2k -4 서브매트릭스 중 어느 하나인 것을 특징으로 하는 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
  9. 청구항 8에 있어서,
    상기 서브매트릭스_j에서 j 값은 1에서부터 n까지의 정수를 갖고, 그 j값은 상기 n개로 나뉜 nk -2 × n2k -4 서브매트릭스 중 1행을 기준으로 위에서 j번째 매트릭스임을 나타내는 것을 특징으로 하는 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
  10. 청구항 3에 있어서,
    상기 b 단계에서 생성되는 nk -1 × n2k -4 타입_i_j 매트릭스는,
    모든 성분 값이 1을 갖는 nk -1 × n2k -4 매트릭스에서 nk -2개의 행을 하나의 묶음 단위로 하여 1행부터 nk -1행까지 nk -2개의 행씩 n개로 나뉜 매트릭스 중 위에서 i번째 매트릭스에 상기 n개의 서브매트릭스 중 타입_i_j 매트릭스의 j 값과 동일한 j 값을 가진 서브매트릭스_j를 갖다 붙여서 생성되는 것을 특징으로 하는 (na,n2a -2,na-1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
    여기서, i 및 j는 1부터 n까지의 정수를 갖는다.
  11. 청구항 3에 있어서,
    상기 c 단계에서 생성되는 nk × n2k -2 매트릭스는,
    상기 n×n2 인덱스 매트릭스 상의 모든 임의의 한 성분에서, 그 성분 값을 변수 p, 그 성분의 행을 변수 q라고 할 때, p=i 및 q=j를 만족하는 nk -1 × n2k -4 타입_i_j 매트릭스를 그 성분 자리에 갖다 붙여서 생성되는 것을 특징으로 하는 (na,n2a-2,na-1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
    여기서, p,q,i,j는 1부터 n까지의 정수를 갖는다.
  12. 청구항 1에 있어서,
    상기 6 단계에서 추출한 임의의 하나의 열을 하나의 핑거프린트 코드로 하는 것을 특징으로 하는 (na,n2a -2,na -1,n,0,1) GD-PBIBD를 이용한 공모 방지 핑거프린트 코드 생성 방법.
KR1020060085421A 2006-09-06 2006-09-06 (n˘a, n˘(2a-2),n˘(a-1),n,0,1) GD-PBIBD를이용한 공모 방지 핑거프린트 코드 생성 방법 KR100837256B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020060085421A KR100837256B1 (ko) 2006-09-06 2006-09-06 (n˘a, n˘(2a-2),n˘(a-1),n,0,1) GD-PBIBD를이용한 공모 방지 핑거프린트 코드 생성 방법
US11/850,068 US7953975B2 (en) 2006-09-06 2007-09-05 Method of generating anti-collusion fingerprint codes using (na,n2a−2,na−1,n,0,1) GD-PBIBD

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060085421A KR100837256B1 (ko) 2006-09-06 2006-09-06 (n˘a, n˘(2a-2),n˘(a-1),n,0,1) GD-PBIBD를이용한 공모 방지 핑거프린트 코드 생성 방법

Publications (2)

Publication Number Publication Date
KR20080022247A KR20080022247A (ko) 2008-03-11
KR100837256B1 true KR100837256B1 (ko) 2008-06-12

Family

ID=39151554

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060085421A KR100837256B1 (ko) 2006-09-06 2006-09-06 (n˘a, n˘(2a-2),n˘(a-1),n,0,1) GD-PBIBD를이용한 공모 방지 핑거프린트 코드 생성 방법

Country Status (2)

Country Link
US (1) US7953975B2 (ko)
KR (1) KR100837256B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120072593A1 (en) * 2008-09-26 2012-03-22 Ju-Yeob Kim Multimedia content file management system for and method of using genetic information
KR101537997B1 (ko) * 2014-01-03 2015-07-22 고려대학교 산학협력단 공모 공격으로부터 안전한 클라이언트 인증 방법 및 클라이언트 인증 서버, 클라우드 서버, 클라이언트 인증 시스템
US10623828B2 (en) * 2015-08-26 2020-04-14 Pcms Holdings, Inc. Method and systems for generating and utilizing contextual watermarking
CN105225198A (zh) * 2015-11-15 2016-01-06 李启南 基于i码和cff码的抗合谋指纹编码方法
CN109426795A (zh) * 2017-09-05 2019-03-05 比亚迪股份有限公司 指纹识别方法和装置
US11650914B2 (en) * 2021-08-05 2023-05-16 SK Hynix Inc. System and method for identification of memory device based on physical unclonable function

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060013099A (ko) * 2004-08-06 2006-02-09 한국전자통신연구원 디지털 콘텐츠의 배포 시스템 및 그 방법
KR20060020281A (ko) * 2004-08-31 2006-03-06 삼성전자주식회사 핑거프린트 코드 생성 방법 및 장치
KR20060021121A (ko) * 2004-09-02 2006-03-07 한국과학기술원 지디-피비아이비디를 이용한 평균화 공격에 강인한 디지털핑거프린팅 방법
KR20060057920A (ko) * 2004-11-24 2006-05-29 한국전자통신연구원 핑거 프린팅 코드 구조 및 이를 이용한 공모 구매자 식별방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7814564B2 (en) * 2005-01-07 2010-10-12 University Of Maryland Method for fingerprinting multimedia content

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060013099A (ko) * 2004-08-06 2006-02-09 한국전자통신연구원 디지털 콘텐츠의 배포 시스템 및 그 방법
KR20060020281A (ko) * 2004-08-31 2006-03-06 삼성전자주식회사 핑거프린트 코드 생성 방법 및 장치
KR20060021121A (ko) * 2004-09-02 2006-03-07 한국과학기술원 지디-피비아이비디를 이용한 평균화 공격에 강인한 디지털핑거프린팅 방법
KR20060057920A (ko) * 2004-11-24 2006-05-29 한국전자통신연구원 핑거 프린팅 코드 구조 및 이를 이용한 공모 구매자 식별방법

Also Published As

Publication number Publication date
KR20080022247A (ko) 2008-03-11
US7953975B2 (en) 2011-05-31
US20080056497A1 (en) 2008-03-06

Similar Documents

Publication Publication Date Title
KR100837256B1 (ko) (n˘a, n˘(2a-2),n˘(a-1),n,0,1) GD-PBIBD를이용한 공모 방지 핑거프린트 코드 생성 방법
US10778441B2 (en) Redactable document signatures
Hall Combinatorial theory
Stanton et al. Constructive combinatorics
CN111105339B (zh) 一种基于多维混沌系统和约瑟夫置乱的图像加密方法
CN108537049B (zh) 一种基于二值图像的自适应隐写算法
CN100431293C (zh) 对称-密钥加密的线性变换方法和系统
CN101843087B (zh) 通过像素属性分离进行的加密
CN110770725B (zh) 数据处理方法及装置
Rajagopalan et al. YRBS coding with logistic map–a novel Sanskrit aphorism and chaos for image encryption
US20210097175A1 (en) Side-channel attack protected gates having low-latency and reduced complexity
KR101282653B1 (ko) 데이터 치환 암호화 장치 및 방법
Stinson et al. Some improved bounds for secure frameproof codes and related separating hash families
Tonien et al. Breaking and repairing an approximate message authentication scheme
CN113726975A (zh) 基于混沌系统的图像加密方法、装置、介质及电子设备
Zyuzin et al. Attack on hash functions
CN111614864A (zh) 基于svd及cbc模式结合的图像压缩加密传输方法
KR101899901B1 (ko) 데이터베이스 보안 방법
Encheva et al. Some new p-ary two-secure frameproof codes
Lee et al. Method of generating anti-collusion fingerprint codes using (n a, n 2a− 2, n a− 1, n, 0, 1) GD-PBIBD
Khanas et al. Research on the use of algorithms for matrix transformations for encrypting text information
CN114254719B (zh) 一种防伪二维码的生成方法及装置
CN115277976B (zh) 图像加密方法、装置、电子设备以及存储介质
Pinto et al. Exact and approximation algorithms for error-detecting even codes
JP2002091297A (ja) F関数内部にspn構造を用いた演算装置および演算方法

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
FPAY Annual fee payment

Payment date: 20120531

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee