KR20190097658A - 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 dna 정보은닉 방법 - Google Patents

예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 dna 정보은닉 방법 Download PDF

Info

Publication number
KR20190097658A
KR20190097658A KR1020180017337A KR20180017337A KR20190097658A KR 20190097658 A KR20190097658 A KR 20190097658A KR 1020180017337 A KR1020180017337 A KR 1020180017337A KR 20180017337 A KR20180017337 A KR 20180017337A KR 20190097658 A KR20190097658 A KR 20190097658A
Authority
KR
South Korea
Prior art keywords
code
coefficient
histogram
bits
shifting
Prior art date
Application number
KR1020180017337A
Other languages
English (en)
Other versions
KR102082843B1 (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 KR1020180017337A priority Critical patent/KR102082843B1/ko
Priority to US15/905,121 priority patent/US20190251268A1/en
Publication of KR20190097658A publication Critical patent/KR20190097658A/ko
Application granted granted Critical
Publication of KR102082843B1 publication Critical patent/KR102082843B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B99/00Subject matter not provided for in other groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • 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/106Enforcing content protection by specific content processing
    • G06F21/1066Hiding content
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/50Compression of genetic data
    • G06F2221/0748
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/123DNA computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Medical Informatics (AREA)
  • Biotechnology (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Genetics & Genomics (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

본 발명은 예측오차 확장과 히스토그램 쉬프팅 기반으로 생물학적 변이없이 허위 시작코돈 방지, 원본 서열 길이 유지, 높은 워터마크 용량성, 블라인드 검출이 가능한 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법에 관한 것이다.

Description

예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법{Method for Reversible Data Hiding in DNA Sequence Based on Prediction and Histogram Shifting}
본 발명은 예측오차 확장과 히스토그램 쉬프팅 기반으로 생물학적 변이없이 허위 시작코돈 방지, 원본 서열 길이 유지, 높은 워터마크 용량성, 블라인드 검출이 가능한 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법에 관한 것이다.
DNA 서열은 부호 DNA(Coding DNA)와 비부호 DNA(Noncoding DNA)로 나누어지며, 워커마크는 이 두 영역에 각각 삽입되어 데이터가 은닉될 수 있다. 부호 DNA의 경우 매우 작은 중첩 코돈 범위로 인하여 가역 워터 마킹에 적합하지 않다. 비부호 DNA는 단백질 부호 보존의 조건이 없으므로 부호 DNA보다 워터마트 가용 범위가 넓어, DNA 가역 워터마킹으로 적합하다.
T. Chen 등(참조문헌 [1])은 기존 가역성 영상 워터마킹 방법에서 많이 사용되는 무손실 압축과 DE(Difference expansion) 기반 방법들을 각각 제안하였다.Huang 등(참조문헌 [2])은 낮은 염기 변화율을 가지는 히스토그램 기반 가역성 DNA 워터마킹 방법을 제안하였다. 이 방법은 염기 변경율은 낮으나, bpn이 매우 낮고, Chen의 방법과 같이 허위 시작 코돈의 발생된다.
이 외에도 Liu (참조문헌 [3]) 등은 Piecewise linear chaotic map (PWLCM) 기반 정보 은닉 방법을 제안하였고, J. Fu (참조문헌 [4]), Ma (참조문헌 [5])은 DNA 서열의 조작 위치 탐지 (tamper location) 및 복원 (tamper restoration)을 위한 정보 은닉 방법을 제안하였다. 이 방법들은 Complementary rule에 의한 치환 방법에 의하여 데이터를 은닉하는 것으로, 추출 및 복원을 위하여 참조(또는 원본) DNA 서열이 필요한 non-blind 방법이다.
본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위한 것으로서, 예측오차 확장 (Predictation Error Expansion)과 히스토그램 쉬프팅 기반으로 생물학적 변이없이 허위 시작코돈 방지, 원본 서열 길이 유지, 높은 워터마크 용량성, 블라인드 검출이 가능한 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법을 제공하는 것을 목적으로 한다.
예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법에 있어서, 비부호 영역 DNA의 4-문자 염기서열을 n차 부호계수로 변환하는 제 1단계; LS(Least Square) 예측오차에 의하여 상기 부호계수별 다중비트를 은닉하는 제 2단계; 비순환형 히스토그램, 순환형 히스토그램 다중레벨 쉬프팅 방법에 의하여 n차 워터마크비트를 은닉하는 제 3단계; 워터마크된 부호계수 내, 부호계수 간의 개시코돈 발생 검증하는 제 5단계;를 포함하는 것을 특징으로 한다.
제 1단계는, b는 4-문자 염기 b={'A','T','C','G'}이고, b는 b의 염기계수, x는 n개 염기들로 구성된 염기블록, x는 염기블록 x에 대한 부호계수, n은 부호차수 이고, n개 염기들로 구성된 염기블록 x 단위로 2n 비트의 부호 계수 x로
Figure pat00001
where
Figure pat00002
,
Figure pat00003
와 같이 부호화 하고, 부호계수 x로부터 염기 블록의 염기들은
Figure pat00004
where
Figure pat00005
for
Figure pat00006
와 같이 복원되는 것을 특징으로 한다.
상기 제 5단계에서 워터마크된 부호계수 내에 허위시작코돈을 방지하는 방법은, 허위시작코돈을 포함하는 부호 계수 테이블을 미리 생성하는 단계; 워터마크된 부호계수가 상기 부호 계수 테이블에 포함되지 않도록 은닉하는 단계; 를 포함하는 것을 특징으로 한다.
상기 제 5단계에서 워터마크된 부호계수 간 허위시작코돈을 방지하는 방법은, 이전 워터마크된 부호계수를
Figure pat00007
가 주어질 때, 현재 처리되는 부호계수를
Figure pat00008
Figure pat00009
if (
Figure pat00010
=
Figure pat00011
(‘AT‘)=1) and
Figure pat00012
=
Figure pat00013
(‘G‘)=3
if (
Figure pat00014
=
Figure pat00015
(‘A‘)=0) and
Figure pat00016
=
Figure pat00017
(‘TG‘)=7
을 만족하지 않도록 상기
Figure pat00018
에 대한 은닉 비트수를 조절하는 단계;를 포함하는 것을 특징으로 한다.
제 2단계는 은닉 영역별 지역 예측을 통하여 부호계수를 예측하는 단계를 포함하는 것을 특징으로 한다.
이하 본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위한 것으로서, 예측오차 확장 (Predictation Error Expansion)과 히스토그램 쉬프팅 기반으로 생물학적 변이없이 허위 시작코돈 방지, 원본 서열 길이 유지, 높은 워터마크 용량성, 블라인드 검출이 가능한 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법을 제공하는 효과가 있다.
도 1 (a)는 일반적인 2비트의 염기 계수 표현한 도면이고, (b)는 n차 염기 블록에 대한 2n 비트의 계수 표현한 도면이다.
도 2 (a)는 부호계수 내 허위 시작 코돈 발생 가능성을 나타낸 도면이고, (b)는 부호계수 간에 허위 시작 코돈 발생 가능성을 나타낸 도면이다.
도 3은
Figure pat00019
=1일 때, 부호차수
Figure pat00020
에 대한 (a) 은닉 영역 개수 비율
Figure pat00021
및 염기 개수 비율
Figure pat00022
과 (b) 부호계수 레벨과 염기 개수가 100일 때 부호계수의 개수를 나타낸 도면이다.
도 4는 워터마크 비트가 전부 1일 때
Figure pat00023
, (a) 예측계수
Figure pat00024
에 대한
Figure pat00025
의 확장 가능 영역과 (b) 예측계수
Figure pat00026
=0, 128, 255 상에서
Figure pat00027
의 확장 가능 비트수 (
Figure pat00028
)를 나타낸 도면이다.
도 5는 부호차수 (a)
Figure pat00029
, (b)
Figure pat00030
일 때, ‘AE017199’, ‘CP000473.1’ 서열의 부호 계수, 부호 계수의 히스토그램, 인접 계수 차이 히스토그램을 나타낸 도면이다.
도 6은 부호차수 (a)
Figure pat00031
, (b)
Figure pat00032
일 때, ‘AE017199’, ‘CP000473.1’ 서열의 LS 예측, 평균 예측, 및 인접계수와의 평균 오차 히스토그램을 나타낸 도면이다.
도 7은
Figure pat00033
차 부호계수 히스토그램 정의역
Figure pat00034
중 임의의 구간
Figure pat00035
상에 중간값
Figure pat00036
와의 차이가
Figure pat00037
Figure pat00038
인 계수들의 이동을 나타낸 도면이다.
도 8 (a) 현재 구간
Figure pat00039
과 좌우 인접 구간
Figure pat00040
,
Figure pat00041
상에 부호계수 쉬프팅을 나타낸 도면이고, (b) 전체 구간 상에서 각 구간과 좌우 인접 구간 간의 부호계수 쉬프팅을 나타낸 도면이다.
도 9는 순환형 히스토그램 쉬프팅 기반 데이터 은닉을 나타낸 도면이다.
본 발명의 바람직한 실시 예에 따른 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법은 다중비트 염기 부호계수의 DE(Difference expansion), 히스토그램 쉬프팅을 이용하는 방법으로, 본 발명의 주요 특징은 하기와 같다.
1. Blind Reversibility : DNA 서열의 길이 변경 및 아미노산 변경없이 가역 워터마크가 은닉되며, 원본 DNA 서열없이 추출 및 복원이 가능하도록 한다.
2.Watermarking Usability : bit 염기 서열을
Figure pat00042
비트의 부호계수 서열로 부호화하여 가역 워터마크 은닉, 추출 및 복원 과정이 용이하도록 한다.
3. Watermark Capacity : 부호계수 서열의 DE 및 히스토그램 쉬프팅 기반으로 대상 부호계수별 다중 비트 은닉(multi-bit embedding)이 가능하도록 하여 워터마크 용량성을 높인다.
4. No false start codon : 허위시작코돈 부호계수 테이블(false start codon - code value table)과 인접 부호계수 간 비교탐색을 통하여 부호계수 내 및 부호계수 간 허위시작코돈 생성을 방지한다.
본 발명에 대해 설명하기에 앞서, 본 발명에서 사용되는 부호에 대한 정의는 하기와 같다.
- DNA 서열은 비부호 영역
Figure pat00043
과 부호 영역
Figure pat00044
로 구성된다.
- 비부호 영역
Figure pat00045
은 은닉 영역
Figure pat00046
과 비은닉 영역
Figure pat00047
로 구분된다.
- 은닉 대상 영역
Figure pat00048
에는
Figure pat00049
개의 영역
Figure pat00050
을 가지며, 각 영역
Figure pat00051
내에는
Figure pat00052
개의 염기들 구성된다;
Figure pat00053
,
Figure pat00054
.
-
Figure pat00055
는 4-문자심볼 염기
Figure pat00056
={‘A’, 'T', ‘C’, ‘G’}이고,
Figure pat00057
Figure pat00058
의 염기 계수이다.
-
Figure pat00059
Figure pat00060
개 염기들로 구성된 염기 블록이고,
Figure pat00061
는 염기 블록
Figure pat00062
에 대한 부호계수이다. 이 때
Figure pat00063
를 부호차수라 한다.
-
Figure pat00064
는 워터마크된 부호계수이고,
Figure pat00065
Figure pat00066
의 염기블록이다.
-
Figure pat00067
는 은닉될 워터마크 비트열이다.
행렬
Figure pat00068
의 Cardinality
Figure pat00069
Figure pat00070
의 원소 개수 또는 길이를 나타낸다.
1. 4-문자 염기 부호화 (Numerical coding for 4-character bases)
4-문자 염기 서열에 대한 워터마킹 신호 처리 용이성을 위하여 다중비트 부호 과정이 필수적이다. 본 절에서는 워터마킹 신호 처리 용이성 및 허위시작코돈 방지를 위한 다중비트 부호 과정에 살펴보기로 한다.
1-1. 부호차수에 따른 부호화
일반적으로 뉴클레오티드 염기는 도 1(a)에서와 같이 b=(A, T, C, G) 4-문자로 표현되며, 이를 4개의 십진수 또는 2비트의 이진수로 표현된다.
Figure pat00071
(1)
신호 처리 용이성을 위하여 2비트 계수보다 그림 3(b)에서와 같이 2비트 이상의 다중비트로 표현된 계수로 확장하여야 한다. 본 발명은
Figure pat00072
개 염기들로 구성된 염기 블록
Figure pat00073
단위로
Figure pat00074
비트의 부호계수
Figure pat00075
Figure pat00076
where
Figure pat00077
,
Figure pat00078
(2)
와 같이 부호한다. 부호계수
Figure pat00079
로부터 염기 블록의 염기들은
Figure pat00080
where
Figure pat00081
for
Figure pat00082
(3)
와 같이 쉽게 복원되어진다.
본 발명에서는 염기 블록의 염기 개수
Figure pat00083
를 부호차수로 부르기로 한다. 은닉 영역
Figure pat00084
내 염기들은 부호차수
Figure pat00085
에 의하여 부호계수
Figure pat00086
로 부호된다;
Figure pat00087
.
Figure pat00088
. 이 때 부호계수 개수
Figure pat00089
은 부호차수
Figure pat00090
에 의하여 결정된다.
1-2. 허위시작코돈(False start codon) 방지
허위시작코돈은 다음과 같이 부호계수 내 또는 부호계수 간에 발생될 수 있다.
1) 부호계수 내 (Intra code)
부호차수
Figure pat00091
에 의한 부호계수 정의역(code value domain)를
Figure pat00092
라 한다.
Figure pat00093
일 경우, 도 2(a)에서와 같이 부호계수 정의역 내에
Figure pat00094
개의 허위시작코돈들이 발생될 수 있다. 염기 블록 내에 임의의 위치
Figure pat00095
에서 발생된 허위시작코돈을 포함하는 부호계수는
Figure pat00096
개이므로
Figure pat00097
개의 위치에서 발생된 허위시작코돈을 포함하는 부호계수는 총
Figure pat00098
개이다. 허위시작코돈을 포함하는 부호계수
Figure pat00099
Figure pat00100
(4)
for
Figure pat00101
and
Figure pat00102
와 같이 정의된다. 이 때 ‘A’,‘T’,‘G’의 심볼은 수식 (3)에서와 같이 0, 1, 3에 해당되며, 임의의 위치 상에 연속된 염기 {
Figure pat00103
}를 제외한 나머지 위치에서의 염기들은 모두 {A,T,C,G}를 가진다. 본 발명에서는 염기 부호화에서 허위시작코돈을 포함하는 부호계수 테이블
Figure pat00104
을 미리 생성한 다음, 워터마크된 부호계수
Figure pat00105
Figure pat00106
에 포함되지 않도록 은닉 과정을 수행한다.
2) 부호계수 간 (Inter codes)
이전 워터마크된 부호계수
Figure pat00107
의 염기 블록
Figure pat00108
과 현재 처리된 부호계수
Figure pat00109
의 염기 블록
Figure pat00110
간에 허위시작코돈이 발생될 수 있다. 도 2(b)에서와 같이
Figure pat00111
일 때
Figure pat00112
또는
Figure pat00113
때 중간 부분에 허위시작코돈이 발생된다. 따라서 부호계수 간의 허위시작코돈을 가지는 두 부호계수들은 다음과 같이 정의되어진다.
Figure pat00114
(5)
if (
Figure pat00115
=
Figure pat00116
(‘AT‘) = 1) and
Figure pat00117
=
Figure pat00118
(‘G‘) = 3
if (
Figure pat00119
=
Figure pat00120
(‘A‘) = 0) and
Figure pat00121
=
Figure pat00122
(‘TG‘) = 7
Figure pat00123
는 부호계수
Figure pat00124
Figure pat00125
,
Figure pat00126
번째 염기를 나타내고,
Figure pat00127
는 concatenation 연산자이다.
Figure pat00128
Figure pat00129
Figure pat00130
,
Figure pat00131
번째 염기와
Figure pat00132
의 1,2번째 염기들을 접합한 부호계수를 나타낸다. 본 발명에서는 이전 워터마크된 부호계수
Figure pat00133
가 주어질 때, 현재 워터마크된 부호계수
Figure pat00134
가 위의 조건을 만족하지 않도록 부호계수
Figure pat00135
에 대한 은닉 비트수를 조절한다.
2. 은닉 영역 선택(Target region)
본 발명에서는 염기블록 단위로 생성되는 부호계수 열에 워터마크를 은닉한다. 이 때 서열 길이가 짧은 영역은 부호계수 열이 매우 짧아지므로, 워터마크 은닉 대상에 적합하지 않다. 따라서 은닉 영역은
Figure pat00136
개 이상의 부호계수들을 가지는 영역으로, 부호차수
Figure pat00137
에 대한 은닉 영역들의 집합
Figure pat00138
Figure pat00139
,
Figure pat00140
(6)
와 같이 정의된다. 이 때
Figure pat00141
Figure pat00142
번째 은닉 영역이며,
Figure pat00143
Figure pat00144
영역의
Figure pat00145
번째 4-문자 염기이고,
Figure pat00146
Figure pat00147
의 염기 개수를 나타낸다.
Figure pat00148
는 은닉 영역의 최소 부호계수의 개수이고,
Figure pat00149
는 예측 차수로 이후 3절에 자세히 설명된다. 본 발명의 일실시 예에서 최소 부호계수의 개수
Figure pat00150
를 10이상으로 설정하고, 예측 차수
Figure pat00151
에 따라 은닉 영역을 선택한다.
주어진 DNA 서열 상에 전체 비부호 영역 개수에 대한 은닉 영역 개수의 비율이
Figure pat00152
라 하고, 전체 비부호 영역의 염기 개수에 대한 은닉 영역의 염기 개수 비율이
Figure pat00153
라 한다. 도 5(a)는 DNA 서열 상에 부호차수
Figure pat00154
이 2에서 10일 때 은닉 영역 개수 비율
Figure pat00155
와 염기 개수 비율
Figure pat00156
을 보여준다. 도 5(b)는 부호차수
Figure pat00157
에 대한 부호계수의 레벨과 염기 개수가 100일 때, 부호계수의 개수를 보여준다. 이 그림들을 살펴보면,
Figure pat00158
이 증가할수록
Figure pat00159
은 비례적으로 줄어드나,
Figure pat00160
은 92% 이상을 유지한다. 염기 개수가 주어질 때
Figure pat00161
이 증가할수록 부호계수의 개수가 기하급수적으로 줄어드나, 부호계수 레벨은 증가된다. 즉, 부호계수 레벨이 증가할수록 워터마킹 신호 처리 범위가 넓어지고, 염기 개수가 유지되나 대상 부호계수의 개수가 줄어지므로, 워터마크 용량에 제한을 받는다. 본 발명에서는 부호계수 당 다중비트를 은닉하므로, 부호계수 레벨이 높을수록 부호계수 당 은닉 비트수 증가되나, 부호계수의 개수는 줄어든다. 따라서 주어진 비부호 영역 상에서 워터마크 용량에 최적인 부호차수
Figure pat00162
이 구하여야 한다.
3. 부호계수 예측오차 확장 기반 가역 워터마킹 (Prediction Error Expansion, PE)
비부호 영역의 부호계수가 주어졌을 때, 기존 영상 데이터에 사용되는 예측오차 확장 (Prediction Error Expansion) 방법을 이용하여 부호계수 쌍에 1비트 은닉이 가능하다. 예를 들어, 임의의 부호계수
Figure pat00163
에 대한 예측계수
Figure pat00164
와 워터마크 비트
Figure pat00165
일 때, 은닉된 부호계수
Figure pat00166
Figure pat00167
(7)
이다.
Figure pat00168
Figure pat00169
로부터 워터마크 추출 및 부호계수 복원이
Figure pat00170
,
Figure pat00171
와 같이 쉽게 구하여진다. 위의 방법은 인접한 화소 간의 상관도가 큰 영상 데이터에 적합한 것으로, 라플라시안 분포로 모델링 되는 예측오차로 많은 화소 쌍에 1비트씩 은닉이 가능하다.
그러나 DNA 서열의 부호계수들은 인접 계수들 간의 상관관계가 적으므로, 적응적인 예측기가 필요하다. 또한 허위시작코돈 제한 조건 내에 부호계수 간의 이동이 자유로우므로, 부호계수 쌍 내에 다중비트 은닉이 가능하다. 따라서 본 절에서는 부호계수 예측오차 확장 기반 다중비트 은닉 방법에 대하여 살펴보기로 한다.
3-1. 다중비트 은닉을 위한 부호계수 오차 확장 조건
화질에 대한 조건이 없는 DNA 부호계수는 허위시작코돈 계수를 제외한 유효 범위 내에 이동이 자유롭다. 따라서 부호계수 쌍에 대한 예측오차 (
Figure pat00172
)는 확장 조건에 따라
Figure pat00173
비트 은닉을 위하여
Figure pat00174
배 확장이 가능하며, 최대
Figure pat00175
비트 은닉이 가능하다;
Figure pat00176
.
워터마크의
Figure pat00177
비트
Figure pat00178
와 예측계수
Figure pat00179
가 주어졌을 때,
Figure pat00180
비트 은닉된 부호계수
Figure pat00181
Figure pat00182
where
Figure pat00183
(8)
와 같이
Figure pat00184
배 확장된 예측오차
Figure pat00185
에 의하여 구하여진다.
은닉된 부호계수
Figure pat00186
와 비트 수
Figure pat00187
가 주어졌을 때, 워터마크 추출 및 복원은
Figure pat00188
for
Figure pat00189
(9)
Figure pat00190
(10)
와 같이 쉽게 구하여진다.
은닉된 부호계수
Figure pat00191
Figure pat00192
이어야 하므로,
Figure pat00193
배 확장위한 예측오차
Figure pat00194
의 확장 조건은
Figure pat00195
(11)
와 같으며, 부호계수
Figure pat00196
Figure pat00197
, (12)
where
Figure pat00198
와 같은 조건을 만족하여야 한다. 이와 같은 확장 조건은 워터마크
Figure pat00199
비트
Figure pat00200
와 예측계수
Figure pat00201
에 의하여 결정되며, 확장 조건에 따라 부호계수
Figure pat00202
에 은닉될 비트수가 결정된다.
도 5(a)는 부호차수
Figure pat00203
=4 (
Figure pat00204
)이고 워터마크 비트가 전부 1일 때
Figure pat00205
, 예측계수
Figure pat00206
별 부호계수
Figure pat00207
내에 은닉될 비트수를 보여준다. 최대 은닉 비트수
Figure pat00208
Figure pat00209
이다. 도 5(b)는 예측계수
Figure pat00210
가 0, 128, 255일 때, 은닉 비트수에 따른 부호계수
Figure pat00211
의 범위를 나타낸다. 은닉 비트수가 증가할수록 확장 가능영역은 기하급수적으로 좁아지며,
Figure pat00212
가 0 또는 255에 가까울수록 은닉될 비트수가 작아진다.
3.2 부호계수 예측
도 5는 부호차수
Figure pat00213
이 3, 4일 때, ‘AE017199’, ‘CP000473.1’ 서열의 부호계수 및 부호계수 히스토그램을 보여준다. 부호계수 히스토그램은 부호차수에 따라 확장 및 축소가 되나, 서열에 따라 정형화된 분포를 가지지 않는다. 즉, ‘AE017199’ 서열은 네 영역을 제외한 나머지 영역에 골고루 분포되며, ‘CP000473.1’ 서열은 백색잡음과 같이 전체적인 영역에 골고루 분포된다. 또한 부호계수 서열은 랜덤 형태로 나타나며, 인접한 계수 간의 상관도가 매우 낮다. 따라서 본 발명에서는 부호계수 예측 오차를 줄이기 위하여 Dragoi 등의 지역 LS 예측 기반으로 부호계수를 예측한다.
현재 부호계수
Figure pat00214
예측을 위한
Figure pat00215
개 부호계수 열벡터가
Figure pat00216
이고,
Figure pat00217
개 변수 열벡터
Figure pat00218
라 한다. 이 때
Figure pat00219
를 예측 차수라 한다.
Figure pat00220
가 관측되었을 때,
Figure pat00221
의 예측계수
Figure pat00222
는 선형 회귀 (linear regression) 함수
Figure pat00223
에 의하여
Figure pat00224
(13)
와 같이 정의된다. 임의의 은닉 영역 내 전체 부호계수 열벡터
Figure pat00225
이고,
Figure pat00226
관측된 이전 부호계수들의
Figure pat00227
행렬
Figure pat00228
라 할 때, LS 예측은
Figure pat00229
Figure pat00230
와의 제곱 거리
Figure pat00231
=
Figure pat00232
가 최소가 되는 변수
Figure pat00233
Figure pat00234
(14)
와 같이 얻는다.
본 발명에서는 전체 은닉 영역에 대한 전역 예측보다 은닉 영역별 지역 예측을 통하여 부호계수를 예측한다. 따라서 복호 과정에서는 DNA 서열의 은닉 영역 개수
Figure pat00235
별 변수
Figure pat00236
Figure pat00237
의 부가정보가 필요하다.
부호계수 예측으로 인접계수(successive predictor)
Figure pat00238
또는 평균 예측
Figure pat00239
이 가능하다. 도 6은 ‘AE017199’, ‘CP000473.1’ 서열에 대하여 부호차수가
Figure pat00240
,
Figure pat00241
일 때 인접계수, 평균 예측, 및 LS 예측에 대한 예측오차 히스토그램을 보여준다. (p : 예측 차수(예측에 사용되는 인접 계수 개수), ER(expandible region)는 확장영역 발생확률)
도 8에서
Figure pat00242
는 확장영역 발생확률을 나타낸다. 인접계수 오차는 부호차수에 상관없이 74.8% 정도의 확장영역을 가진다. 평균 예측과 LS 예측은 부호차수
Figure pat00243
=3일 때 다소 높은 ER을 가지며, 예측차수
Figure pat00244
가 높을수록 ER이 높아진다. 특히
Figure pat00245
=3이고,
Figure pat00246
=20일 때, LS 예측이 가장 높은 91.6% 정도의 확장영역을 가진다. 즉,
Figure pat00247
=3일 때, LS의 예측차수
Figure pat00248
가 높을수록 삽입 용량이 커짐을 알 수 있다.
영상의 예측 오차 히스토그램은 라플라시안 분포로 모델링되나, 부호계수의 LS 예측 오차 히스토그램은 결과에서와 같이 정규 분포로 모델링된다.
Figure pat00249
=3,
Figure pat00250
=10일 때,
Figure pat00251
=(0,20),
Figure pat00252
=3,
Figure pat00253
=20일 때
Figure pat00254
=(0,19) 분포로 근사화된다.
Figure pat00255
=4,
Figure pat00256
=10일 때,
Figure pat00257
=(0,80),
Figure pat00258
=4,
Figure pat00259
=20일 때
Figure pat00260
=(0,76) 분포로 근사화된다.
3.3 부호 과정
본 발명의 부호 과정에서는 부호차수
Figure pat00261
과 예측차수
Figure pat00262
가 주어졌을 때, 은닉 영역별로 LS 예측 변수
Figure pat00263
를 구한 다음,
Figure pat00264
인 부호계수
Figure pat00265
Figure pat00266
에 의한 LS 예측,
Figure pat00267
인 부호계수는 평균 예측에 의하여
Figure pat00268
가 구하여진다.
Figure pat00269
(15)
예측오차
Figure pat00270
의 확장 조건에 따라 은닉 비트수
Figure pat00271
(
Figure pat00272
가 결정된 후, 부호계수
Figure pat00273
Figure pat00274
비트
Figure pat00275
Figure pat00276
where
Figure pat00277
(16)
Figure pat00278
and
Figure pat00279
와 같이 은닉한다.
은닉된 부호계수
Figure pat00280
가 허위시작코돈 테이블
Figure pat00281
에 포함되거나, 이전 부호계수
Figure pat00282
간 허위시작코돈을 포함할 경우 은닉 비트수
Figure pat00283
를 하나 감소한 다음,
Figure pat00284
가 0일 때까지 위의 과정을 반복한다. 이와 같은 방법에 의하여 모든 은닉 영역의 부호계수에 다중비트를 은닉한 후, 워터마크된 영역
Figure pat00285
을 얻는다.
Figure pat00286
가 0인 것은, 예측오차의 비은닉 영역에 해당되거나, 허위시작코돈 발생되는 경우를 나타낸다.
부호계수별 은닉 비트수
Figure pat00287
와 은닉 영역별 예측변수
Figure pat00288
는 워터마크 추출 및 원본 서열 복원에 필요한 부가정보이다. 부가정보는 허위개시코돈 발생되지 않고, 또 다른 부가정보 생성없이 워터마크된 영역
Figure pat00289
에 포함되어 전송되어야 한다. 본 발명에서는 은닉 비트수
Figure pat00290
와 예측변수
Figure pat00291
Figure pat00292
내 2bit 염기 이진수의 LSB 비트
Figure pat00293
를 산술 부호화(arithmetic coding)에 의하여 무손실 압축하여, 압축 비트열
Figure pat00294
을 생성한다. 압축 비트
Figure pat00295
는 4-문자 염기의 이진수
Figure pat00296
의 LSB에
Figure pat00297
if
Figure pat00298
≠’A’ and
Figure pat00299
≠’T’ (17)
와 같이 차례로 치환된다. 이 때, 이전 은닉된 두 개의 염기
Figure pat00300
가 “AT”인 경우, 현재 염기가
Figure pat00301
=‘G’이면
Figure pat00302
를 ‘A’,‘T’,‘C’ 중에 하나로 치환하고,
Figure pat00303
≠‘G’이면 은닉 과정을 생략한다. 최종적으로 압축열
Figure pat00304
을 포함하는 은닉 영역
Figure pat00305
내에 “AT” 염기열은 다음 염기에 압축 비트가 포함되지 않음을 직접적으로 나타내는 마커로 수행된다. 압축열
Figure pat00306
길이는 압축 알고리즘에 의하여 결정되나, 본 논문에서는 일반적인 무손실 압축 알고리즘인 산술 부호화를 사용하기로 한다. 최종 부가정보 및 워터마크가 은닉된 비부호 영역
Figure pat00307
을 가지는 DNA 서열
Figure pat00308
, ,
Figure pat00309
이 전송된다.
3.4 복호 및 복원과정
복호 과정에서는 먼저 전송된 DNA 서열
Figure pat00310
의 비부호 영역
Figure pat00311
상에서 “AT” 다음에 오는 염기를 제외한 모든 염기들의 LSB로부터 부가정보 압축열
Figure pat00312
의 은닉 비트수
Figure pat00313
, 예측변수
Figure pat00314
와 염기 LSB 비트
Figure pat00315
를 얻는다.
Figure pat00316
의 염기 LSB 비트에
Figure pat00317
가 치환된
Figure pat00318
을 부호차수
Figure pat00319
에 의하여 부호서열
Figure pat00320
를 얻는다.
Figure pat00321
내 모든 부호계수로부터 은닉 비트수
Figure pat00322
와 예측변수
Figure pat00323
에 의하여 워터마크를 추출하고, 원본 부호계수를 복원한다.
예를 들어, 은닉 비트수
Figure pat00324
인 임의의 부호계수
Figure pat00325
가 주어졌을 때, 이전 복원된 부호계수
Figure pat00326
로부터 예측계수
Figure pat00327
가 구한 다음, 예측오차
Figure pat00328
로부터 워터마크
Figure pat00329
비트가
Figure pat00330
, for
Figure pat00331
에 의하여 추출된다. 그리고 원본 부호계수
Figure pat00332
는 예측오차
Figure pat00333
Figure pat00334
비트 쉬프팅에 의하여
Figure pat00335
와 같이 복원된다.
3.5 워터마크 용량과 부가정보량
워터마크 용량은 부호차수
Figure pat00336
, 예측차수
Figure pat00337
에 의하여 영향을 받는다.
Figure pat00338
Figure pat00339
가 주어졌을 때, 은닉 영역
Figure pat00340
내에 은닉되는 워터마크 비트수는 각 영역 내 부호계수 은닉 비트수
Figure pat00341
의 합에 해당된다. 따라서 염기 당 비트수 bpn(bit per base)
Figure pat00342
Figure pat00343
[bit/base] (18)
where
Figure pat00344
and
Figure pat00345
와 같다.
Figure pat00346
는 은닉 영역의 개수이고,
Figure pat00347
는 영역
Figure pat00348
내 부호계수의 개수를 나타낸다.
부가정보 압축열
Figure pat00349
을 은닉하기 위한 LSB 치환 가능 비트량을
Figure pat00350
라 할 때,
Figure pat00351
는 치환 과정에서 허위시작코돈에 의하여 생략되는 염기의 개수에 의하여 결정된다. 최대
Figure pat00352
Figure pat00353
내의 총 염기 개수
Figure pat00354
와 동일하다. 부가정보 압축열
Figure pat00355
길이는 치환 가능 비트량
Figure pat00356
보다 작아야 하므로, 은닉 비트수
Figure pat00357
, 예측변수
Figure pat00358
및 2bit 염기의 LSB
Figure pat00359
의 부가 정보량이 작거나, 압축효율이 높은 알고리즘이 필요하다. 임의의 워터마크된 영역
Figure pat00360
(
Figure pat00361
)이 주어졌을 때,
Figure pat00362
Figure pat00363
비트로 구성되며, 은닉 비트수
Figure pat00364
Figure pat00365
비트로 표현되고, 은닉영역별 예측변수
Figure pat00366
는 예측차수
Figure pat00367
개의 32비트 부동소수점로 표현된다. 따라서
Figure pat00368
을 위한 부가정보
Figure pat00369
Figure pat00370
[bit] (19)
이다. 부가정보 압축열
Figure pat00371
Figure pat00372
라 할 때,
Figure pat00373
이 되도록 압축이 수행된다.
4. 부호계수 히스토그램 쉬프팅 기반 방법
비부호 영역의 부호계수는 허위시작코돈을 가지는 부호계수 테이블을 제외한 나머지 영역으로 쉬프팅이 가능하다. 본 절에서는 데이터 용량을 높이기 위한 비순환형 및 순환형 부호계수 히스토그램 쉬프팅 기반 방법에 대하여 살펴보겠다.
4.1 비순환형 히스토그램 쉬프팅(Noncircular Histogram Shifting ; HS)
(1) 부호 과정
본 발명에서는
Figure pat00374
차 부호계수 히스토그램 정의역(domain)
Figure pat00375
=
Figure pat00376
Figure pat00377
개 구간
Figure pat00378
(section)으로 분할한다. 이 때 각 구간에서는 중간값
Figure pat00379
을 기준으로 좌우 대칭이 되도록 구성되며,
Figure pat00380
은 쉬프팅의 기준값으로 사용된다. 따라서 구간의 길이는 홀수이며, 은닉 비트수
Figure pat00381
에 의하여 결정된다.
구간 내 최대 쉬프팅 비트수가
Figure pat00382
이고, 중간값이
Figure pat00383
일 때,
Figure pat00384
Figure pat00385
, for
Figure pat00386
(20)
Figure pat00387
(21)
와 같이
Figure pat00388
개의 계수들로 구성되며, 구간 개수
Figure pat00389
Figure pat00390
where
Figure pat00391
(22)
와 같다. 이 때 잔여 구간은
Figure pat00392
으로
Figure pat00393
개 계수에 해당되며, 워터마크 은닉에 참여하지 않는다.
임의의 부호계수
Figure pat00394
가 구간
Figure pat00395
에 속할 경우, 구간 중간값
Figure pat00396
과의 차이가
Figure pat00397
,
Figure pat00398
이다. 여기서
Figure pat00399
의 범위에 따라
Figure pat00400
내에 은닉될 비트수
Figure pat00401
Figure pat00402
,
Figure pat00403
, if
Figure pat00404
(23)
Figure pat00405
, if
Figure pat00406
와 같이 결정된 다음
Figure pat00407
내에
Figure pat00408
비트
Figure pat00409
Figure pat00410
where
Figure pat00411
, (24)
Figure pat00412
and
Figure pat00413
와 같이 은닉된다. 구간 중간값
Figure pat00414
에 해당되는 계수
Figure pat00415
는 은닉 비트수
Figure pat00416
으로 비트 은닉에서 제외된다. 여기서 쉬프팅된 부호계수
Figure pat00417
가 허위시작코돈 테이블
Figure pat00418
에 속하거나,
Figure pat00419
와 이전 쉬프팅된 부호계수
Figure pat00420
간의 허위시작코돈이 발생될 경우, 은닉 비트수
Figure pat00421
가 0이 될 때까지 하나씩 감소하여 위의 과정을 반복한다. 이는 연속 부호계수 쌍 DE 방법과 동일하게 허위시작코돈을 방지한다. 이와 같은 방법으로 은닉 대상 영역의 모든 부호계수들에 대하여 부호계수별 은닉 비트수에 따라 다중비트가 은닉된 후, 워터마크된 비부호 영역
Figure pat00422
가 얻어진다.
워터마크 추출 및 원본 서열 복원을 위한 부가정보로 부호계수별 은닉 비트수
Figure pat00423
와 구간 기준값으로 쉬프팅된 구간 마커
Figure pat00424
와 워터마크된 비부호 영역
Figure pat00425
의 2비트 염기 이진수의 LSB 비트
Figure pat00426
가 필요하다. 연속 부호계수 쌍 DE 방법과 동일하게 부가정보 (
Figure pat00427
)의 무손실 압축된 비트열
Figure pat00428
을 생성한 다음,
Figure pat00429
내 염기 이진수의 LSB 비트에 치환된다. 최종 부가정보 및 워터마크가 은닉된 비부호 영역
Figure pat00430
을 가지는 DNA 서열
Figure pat00431
, ,
Figure pat00432
이 전송된다.
도 7은
Figure pat00433
상에 최대 쉬프팅 비트수
Figure pat00434
일 때, 중간값
Figure pat00435
과의 차이값
Figure pat00436
과 워터마크 비트에 따른 부호계수 쉬프팅을 보여준다. 임의의 히스토그램 정의역 구간
Figure pat00437
(a section of histogram domain)는 중간값
Figure pat00438
기준으로 왼쪽 서브구간
Figure pat00439
과 오른쪽 서브구간
Figure pat00440
으로 나뉘어진다.
Figure pat00441
일 경우에는 3비트(
Figure pat00442
) 은닉이 가능하다. 그리고
Figure pat00443
일 경우에는 2비트(
Figure pat00444
),
Figure pat00445
, 일 경우에는 1비트(
Figure pat00446
) 은닉이 가능하다.
Figure pat00447
Figure pat00448
일 때에는 비트가 은닉되지 않는다(
Figure pat00449
).
구간
Figure pat00450
의 오른쪽 서브구간
Figure pat00451
(
Figure pat00452
)(right subsection)에 해당되는 부호계수
Figure pat00453
는 워터마크 비트에 의하여 오른쪽 구간
Figure pat00454
(right section)의 왼쪽 서브구간
Figure pat00455
(
Figure pat00456
)(left subsection)으로 이동된다. 이와 반대로 구간
Figure pat00457
의 왼쪽 서브구간
Figure pat00458
(
Figure pat00459
)에 해당되는
Figure pat00460
는 워터마크 비트에 의하여 왼쪽 구간
Figure pat00461
의 오른쪽 서브구간
Figure pat00462
(
Figure pat00463
)으로 이동된다. 이를 정리하면, 그림 8(a)에서와 같이 구간
Figure pat00464
의 오른쪽 서브구간의 부호계수와 오른쪽 인접
Figure pat00465
의 왼쪽 서브구간의 부호계수과 서로 쉬프팅되며, 이와 반대로 구간
Figure pat00466
의 왼쪽 서브구간의 부호계수와 왼쪽 인접
Figure pat00467
의 오른쪽 서브구간의 부호계수가 서로 쉬프팅된다.
워터마크된 부호계수들 중에서 중간값
Figure pat00468
인 부호계수는 세 가지의 경우에 의하여 발생된다. 먼저 이전 부호계수가 중간값
Figure pat00469
(
Figure pat00470
)일 경우 쉬프팅에서 제외된다. 따라서 쉬프팅되지 않는 원래 부호계수
Figure pat00471
이다. 그리고 도 8(a)에서와 같이 왼쪽 구간의 오른쪽 서브구간
Figure pat00472
과 오른쪽 구간의 왼쪽 서브구간
Figure pat00473
내 계수들이 쉬프팅된 경우이다. 부호계수별 은닉 비트수에 의하여 쉬프팅되지 않은 경우와 쉬프팅된 경우를 구별할 수 있다. 따라서 추출 및 복원을 위하여 쉬프팅된 이전 구간 정보
Figure pat00474
Figure pat00475
(25)
와 같이 필요하다.
도 8 (b)에서와 같이
Figure pat00476
개 구간 중에서
Figure pat00477
의 오른쪽 서브구간
Figure pat00478
에서부터
Figure pat00479
의 왼쪽 서브구간
Figure pat00480
내의 부호계수들이 쉬프팅이 된다. 나머지 경계 구간인
Figure pat00481
Figure pat00482
에 해당되는 부호계수들은 쉬프팅 비트수
Figure pat00483
으로 할당된다.
(2) 복호 및 복원 과정
본 발명의 호 과정에서는 먼저 전송된 DNA 서열
Figure pat00484
의 비부호 영역
Figure pat00485
로부터 압축 비트열의 부가정보 (
Figure pat00486
)를 얻는 다음,
Figure pat00487
의 염기 이진수 치환에 의하여 워터마크된 비부호 영역
Figure pat00488
를 얻는다. 그리고
Figure pat00489
의 부호서열
Figure pat00490
로부터 부호계수별 쉬프팅 비트수
Figure pat00491
와 쉬프팅 구간 마커
Figure pat00492
에 의하여 워터마크와 원복 계수 복원이 수행된다.
부호서열
Figure pat00493
의 부호계수
Figure pat00494
가 주어졌을 때, 먼저
Figure pat00495
의 원래 구간의 중간값
Figure pat00496
이 먼저 구하여야 한다. 즉,
Figure pat00497
의 쉬프팅된 구간
Figure pat00498
이 경계구간이 아니고 (
Figure pat00499
), 쉬프팅 비트수
Figure pat00500
Figure pat00501
일 경우,
Figure pat00502
의 이전 구간에 대한 중간값
Figure pat00503
Figure pat00504
, if
Figure pat00505
(26)
와 같이 구하여진다. 이 때
Figure pat00506
의 쉬프팅된 구간
Figure pat00507
에 따라 은닉 전 구간의 중간값
Figure pat00508
이 쉽게 구하여지나,
Figure pat00509
가 쉬프팅된 영역
Figure pat00510
의 중간값
Figure pat00511
일 경우 (
Figure pat00512
), 이전 구간 마커
Figure pat00513
에 의하여
Figure pat00514
이 구하여진다.
Figure pat00515
상에 워터마크
Figure pat00516
비트
Figure pat00517
와 원본 부호계수
Figure pat00518
는 이전 구간의 중간값
Figure pat00519
에 의하여
Figure pat00520
for
Figure pat00521
(27)
Figure pat00522
(28)
와 같이 구하여진다.
(3) 워터마크 용량과 부가정보
부호차수
Figure pat00523
과 구간 최대 쉬프팅 비트수
Figure pat00524
가 주어졌을 때, 은닉 영역
Figure pat00525
내에 은닉되는 워터마크 비트수는 히스토그램 정의역 구간
Figure pat00526
내에 중간값과의 차이 범위에 의하여 정의된 비트수와 각 구간에 부호계수가 속할 빈도수에 따라 결정되어진다.
부호계수 히스토그램 상에
Figure pat00527
값을 가지는 빈도수를
Figure pat00528
이라 한다. 이 때 임의의 구간
Figure pat00529
상에 쉬프팅되는 비트수는 왼쪽 서브구간
Figure pat00530
과 오른쪽 서브구간
Figure pat00531
에 쉬프팅 비트수
Figure pat00532
Figure pat00533
의 합에 의하여 계산되어진다.
Figure pat00534
, for
Figure pat00535
(29)
Figure pat00536
, for
Figure pat00537
(30)
Figure pat00538
에 은닉된 총 워터마크 비트수는 전체
Figure pat00539
개 구간 상에 경계구간
Figure pat00540
Figure pat00541
을 제외한 나머지 구간 상에 쉬프팅 비트수의 합이며, 염기 당 비트수 bpn
Figure pat00542
Figure pat00543
[bit/base] (31)
와 같이 정의된다.
Figure pat00544
는 은닉 영역의 개수이고,
Figure pat00545
는 영역
Figure pat00546
내 부호계수의 개수로,
Figure pat00547
는 은닉 대상 영역의 총 염기의 개수이다.
워터마크 추출 및 복원을 위한 부가정보
Figure pat00548
로 부호계수별 쉬프팅 비트수
Figure pat00549
와 구간 기준값으로 쉬프팅된 구간 마커
Figure pat00550
와 워터마크된 비부호 영역
Figure pat00551
의 2비트 염기 이진수의 LSB 비트
Figure pat00552
이다. 히스토그램 정의역 구간 내의 최대 쉬프팅 비트수가
Figure pat00553
일 때, 은닉 비트수는
Figure pat00554
비트로 표현되므로, 전체 부호계수에 대한 쉬프팅 비트수
Figure pat00555
는 총
Figure pat00556
비트로 표현된다. 쉬프팅 구간 마커
Figure pat00557
는 인접 구간의 중간값으로 쉬프팅된 부호계수
Figure pat00558
가 왼쪽 또는 오른쪽 구간에서 쉬프팅된 것인지 판별하는 이진 정보로
Figure pat00559
비트로 표현된다. 그리고
Figure pat00560
Figure pat00561
내 모든 영역의 염기 개수와 동일한
Figure pat00562
비트이다. 따라서 부가정보
Figure pat00563
Figure pat00564
[bit] (32)
와 같다. 압축율이
Figure pat00565
일 때, 부가정보
Figure pat00566
Figure pat00567
이 되도록 무손실 압축이 수행된다.
워터마크 비트가 은닉되지 않는
Figure pat00568
인 경우는 히스토그램 정의역 구간의 경계 구간과 구간에 속하지 않는 잔여 구간, 및 구간의 중간값에 해당되는 부호계수에 해당된다. 즉,
Figure pat00569
일 확률
Figure pat00570
Figure pat00571
이다.
Figure pat00572
Figure pat00573
구간 내의 부호계수 확률이고,
Figure pat00574
Figure pat00575
구간 내의 부호계수 확률이며,
Figure pat00576
Figure pat00577
에 속하지 않는 잔여 구간의 계수 확률이다. 마지막으로
Figure pat00578
는 모든 구간의 중간값에 해당되는 부호계수 확률이다.
Figure pat00579
,
Figure pat00580
, ---
Figure pat00581
Figure pat00582
4.2 순환형 히스토그램 쉬프팅 (Circular Histogram Shifting ; CHS)
비부호 영역의 부호계수들은 영상의 화소값과는 달리 화질에 대한 조건이 없으므로, 최대치와 최소치 간의 쉬프팅이 가능하다. 순환형 히스토그램 쉬프팅 방법에서는 히스토그램 구간 쉬프팅을 순환형으로 변경하여 경계 구간에 해당되는
Figure pat00583
의 왼쪽 서브구간
Figure pat00584
(
Figure pat00585
)과
Figure pat00586
의 오른쪽 서브구간
Figure pat00587
(
Figure pat00588
)에서도 은닉이 가능하도록 하여 비순환형 히스토그램 쉬프팅 방법의 워터마크 용량을 높인다.
(1) 부호 과정
경계 구간과 잔여 구간을 제외한 나머지 구간에서는 비순환형 히스토그램 쉬프팅 방법의 은닉 과정과 동일하게 워터마크가 은닉된다. 히스토그램 정의역 구간을 순환으로 할 경우, 도 9에서와 같이 두 경계 구간인
Figure pat00589
Figure pat00590
서브구간은 잔여 구간에 의하여 쉬프팅이 되지 않는다. 따라서 본 발명에서는
Figure pat00591
을 잔여 구간으로 쉬프팅하여
Figure pat00592
의 두 서브구간을 분리한다. 즉, 잔여 구간의 부호계수 개수가
Figure pat00593
일 때,
Figure pat00594
영역은
Figure pat00595
(33)
where
Figure pat00596
, ,
Figure pat00597
Figure pat00598
,
Figure pat00599
와 같이
Figure pat00600
보다 작은 서브구간
Figure pat00601
Figure pat00602
보다 큰 서브구간
Figure pat00603
으로 분리된다.
Figure pat00604
구간은 두 개의 중간 기준값이 발생된다.
임의의 부호계수
Figure pat00605
상에서
Figure pat00606
가 속한 구간
Figure pat00607
의 중간값
Figure pat00608
Figure pat00609
(34)
에 의하여
Figure pat00610
비트
Figure pat00611
Figure pat00612
(16)
where
Figure pat00613
and
Figure pat00614
와 같이 은닉된다. 이때
Figure pat00615
Figure pat00616
사이의 잔여 계수
Figure pat00617
와 각 구간의 중간값에 해당되는 부호계수들은 쉬프팅 비트수가 0이다.
인접 구간의 중간값으로 쉬프팅된 계수
Figure pat00618
에 대한 이전 구간에 대한 정보
Figure pat00619
Figure pat00620
(36)
와 같이 결정된다.
이와 같은 방법으로 부호서열
Figure pat00621
의 모든 부호계수에 부호 내 및 부호 간 허위시작코돈 생성없이 워터마크가 은닉되며, 워터마크된 비부호 영역
Figure pat00622
가 얻어진다. 워터마크 복호 및 원본 부호계수의 복원에 필요한 부가정보는 비순환형 방법과 동일한 부호계수별 쉬프팅 비트수
Figure pat00623
와 쉬프팅 구간 마커
Figure pat00624
와 2비트 염기 이진수의 LSB 비트
Figure pat00625
이다. 압축된 부가정보의 LSB 치환은 위의 두 방법과 동일하게 적용되며, 치환된 영역
Figure pat00626
에 의하여 최종 워터마크된 DNA 서열
Figure pat00627
을 전송한다.
(2)복호 및 복원 과정
전송된 DNA 서열의 치환 영역
Figure pat00628
으로부터 역치환에 의하여 워터마크된 영역
Figure pat00629
이 얻어진 다음,
Figure pat00630
내의 부호서열
Figure pat00631
로부터 (
Figure pat00632
,
Figure pat00633
)에 의하여 워터마크가 복호되며, 원본 부호서열이 복원된다.
부호서열
Figure pat00634
내에
Figure pat00635
인 부호계수
Figure pat00636
가 주어졌을 때, 경계구간과 비경계구간에 따라
Figure pat00637
의 이전 구간의 중간값
Figure pat00638
Figure pat00639
for non-boundary region (37)
Figure pat00640
for boundary region (38)
와 같이 구한다. 그리고 R에 의하여
Figure pat00641
비트
Figure pat00642
와 원본 부호계수
Figure pat00643
Figure pat00644
for
Figure pat00645
(39)
Figure pat00646
(40) 와 같이 구한다.
(3) 워터마크 용량 및 부가정보
순환형 히스토그램 쉬프팅 방법에서는 부호계수 히스토그램 정의역 범위에 잔여 구간을 제외한 모든 구간에서 워터마크가 은닉된다. 따라서 부호차수
Figure pat00647
과 구간 최대 쉬프팅 비트수
Figure pat00648
가 주어졌을 때, 은닉 영역
Figure pat00649
내에 워터마크 비트수는 각 구간의 왼쪽 서브구간
Figure pat00650
(
Figure pat00651
)과 오른쪽 서브구간
Figure pat00652
(
Figure pat00653
)상에 쉬프팅 비트수의 합으로 이에 대한 bpn
Figure pat00654
Figure pat00655
[bit] (41)
와 같다. 워터마크 추출 및 복원을 위한 부가정보
Figure pat00656
는 비순환형 히스토그램 쉬프팅 방법과 동일한 정보를 가진다;
Figure pat00657
.위의 방법들과 동일하게 부가정보
Figure pat00658
Figure pat00659
이 되도록 무손실 압축이 수행된다. 순환형 히스토그램 쉬프팅 방법은 비순환형 히스토그램 쉬프팅 방법에 비하여 동일한 부가정보를 가지나, 보다 높은 워터마크 용량을 가진다.
중간값으로 쉬프팅된 부호계수의 이전 영역 정보와 잔여 계수 영역 이외의 모든 영역에 속한 부호계수의 은닉 비트수 정보이다.
Figure pat00660
[bit] (42)
여기서
Figure pat00661
는 잔여 계수에 속할 확률이고,
Figure pat00662
은 영역의 기준값
Figure pat00663
을 나타낸다. 따라서 부가 데이터의 bpn은
Figure pat00664
[bit/base]이다. 은닉 데이터에 대한 부가 데이터 비율인 용량 효율
Figure pat00665
Figure pat00666
와 같다.
참고문헌
[1] T. Chen, “A Novel Biology-Based Reversible Data Hiding Fusion Scheme,” Frontiers in Algorithmics, Lecture Notes in Computer Science, Vol. 4613, pp 84-95, 2007.
[2] Y.-H. Huang, C.-C. Chang, and C.-Y. Wu, “A DNA-based data hiding technique with low modification rates,” Multimedia Tools and Applications, Volume 70, Issue 3, pp 1439-1451, June 2014.
[3] G. Liu, H. Liu, and A. Kadir, “Hiding message into DNA sequence through DNA coding and chaotic map,” Medical & Biological Engineering & Computing, vol. 52, issue 9, pp. 741-747, Sep. 2014.
[4] J. Fu, W. Zhang, N. Yu, G. Ma, and Q. Tang, “Fast tamper location of batch DNA sequences based on reversible data hiding,” 2014 7th International Conference on Biomedical Engineering and Informatics (BMEI), pp. 868-872, Oct. 14-16, 2014.
[5] G. Ma, Q. Tang, W. Zhang, and N. Yu, “Tamper restoration on DNA sequences based on reversible data hiding,” 2013 6th International Conference on Biomedical Engineering and Informatics (BMEI), pp. 484-489, Dec. 16-18, 2013.

Claims (5)

  1. 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법에 있어서,
    비부호 영역 DNA의 4-문자 염기서열을 n차 부호계수로 변환하는 제 1단계;
    LS(Least Square) 예측오차에 의하여 상기 부호계수별 다중비트를 은닉하는 제 2단계;
    비순환형 히스토그램, 순환형 히스토그램 다중레벨 쉬프팅 방법에 의하여 n차 워터마크비트를 은닉하는 제 3단계;
    워터마크된 부호계수 내, 부호계수 간의 개시코돈 발생 검증하는 제 5단계;를 포함하는 것을 특징으로 하는 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법.
  2. 제 1항에 있어서,
    제 1단계는
    b는 4-문자 염기 b={'A','T','C','G'}이고, b는 b의 염기계수, x는 n개 염기들로 구성된 염기블록, x는 염기블록 x에 대한 부호계수, n은 부호차수 이고,
    n개 염기들로 구성된 염기블록 x 단위로 2n 비트의 부호 계수 x로
    Figure pat00667
    where
    Figure pat00668
    ,
    Figure pat00669
    와 같이 부호화 하고
    부호계수 x로부터 염기 블록의 염기들은
    Figure pat00670
    where
    Figure pat00671
    for
    Figure pat00672
    와 같이 복원되는 것을 특징으로 하는 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법.
  3. 제 1항에 있어서,
    상기 제 5단계에서 워터마크된 부호계수 내에 허위시작코돈을 방지하는 방법은,
    허위시작코돈을 포함하는 부호 계수 테이블을 미리 생성하는 단계;
    워터마크된 부호계수가 상기 부호 계수 테이블에 포함되지 않도록 은닉하는 단계; 를 포함하는 것을 특징으로 하는 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법.
  4. 제 1항에 있어서,
    상기 제 5단계에서 워터마크된 부호계수 간 허위시작코돈을 방지하는 방법은,
    이전 워터마크된 부호계수를
    Figure pat00673
    가 주어질 때,
    현재 처리되는 부호계수를
    Figure pat00674

    Figure pat00675

    if (
    Figure pat00676
    =
    Figure pat00677
    (‘AT‘)=1) and
    Figure pat00678
    =
    Figure pat00679
    (‘G‘)=3
    if (
    Figure pat00680
    =
    Figure pat00681
    (‘A‘)=0) and
    Figure pat00682
    =
    Figure pat00683
    (‘TG‘)=7
    을 만족하지 않도록 상기
    Figure pat00684
    에 대한 은닉 비트수를 조절하는 단계;를 포함하는 것을 특징으로 하는 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법.
  5. 제 1항에 있어서,
    제 2단계는 은닉 영역별 지역 예측을 통하여 부호계수를 예측하는 단계를 포함하는 것을 특징으로 하는 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 DNA 정보은닉 방법.
KR1020180017337A 2018-02-13 2018-02-13 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 dna 정보은닉 방법 KR102082843B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180017337A KR102082843B1 (ko) 2018-02-13 2018-02-13 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 dna 정보은닉 방법
US15/905,121 US20190251268A1 (en) 2018-02-13 2018-02-26 Reversible dna information hiding method based on prediction-error expansion and histrogram shifting

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180017337A KR102082843B1 (ko) 2018-02-13 2018-02-13 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 dna 정보은닉 방법

Publications (2)

Publication Number Publication Date
KR20190097658A true KR20190097658A (ko) 2019-08-21
KR102082843B1 KR102082843B1 (ko) 2020-02-28

Family

ID=67541708

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180017337A KR102082843B1 (ko) 2018-02-13 2018-02-13 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 dna 정보은닉 방법

Country Status (2)

Country Link
US (1) US20190251268A1 (ko)
KR (1) KR102082843B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019191083A1 (en) * 2018-03-26 2019-10-03 Colorado State University Research Foundation Apparatuses, systems and methods for generating and tracking molecular digital signatures to ensure authenticity and integrity of synthetic dna molecules
KR102418617B1 (ko) * 2020-10-13 2022-07-07 서울대학교산학협력단 염기 비율과 연속적 발생을 제한하는 dna 저장 부호화 방법, 프로그램 및 장치

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
이석환 외, "바이오 정보보호 위한 히스토그램 쉬프팅 기반 가역성 DNA 워터마킹 기법", 멀티미디어학회 논문지, 20권, 2호, pp.244-253, 2017.02.* *
이석환 외, "최소자승 예측오차 확장 기반 가역성 DNA 워터마킹", 전자공학회 논문지, 52권, 11호, pp.66-78, 2015.11.* *

Also Published As

Publication number Publication date
KR102082843B1 (ko) 2020-02-28
US20190251268A1 (en) 2019-08-15

Similar Documents

Publication Publication Date Title
He et al. Reversible data hiding using multi-pass pixel-value-ordering and pairwise prediction-error expansion
Weng et al. Reversible data hiding based on an adaptive pixel-embedding strategy and two-layer embedding
EP0901102B1 (en) Watermark embedding method and system
Chang et al. A reversible compression code hiding using SOC and SMVQ indices
KR102082843B1 (ko) 예측오차 확장과 히스토그램 쉬프팅 기반의 가역성 dna 정보은닉 방법
Nguyen et al. A reversible data hiding scheme based on the Sudoku technique
CN110445949B (zh) 基于直方图移位的ambtc域可逆信息隐藏方法
JP2007089078A (ja) エンコード可否判定装置、エンコード可否判定方法およびエンコード可否判定プログラム
JP2007088687A (ja) 画像処理装置、画像処理方法及びそのプログラム
Kouhi et al. Prediction error distribution with dynamic asymmetry for reversible data hiding
US6263115B1 (en) Method and apparatus for encoding a binary shape signal
KR101073938B1 (ko) 색차공간 예측을 이용한 영상부호화방법
Jan et al. An improved data hiding method using image interpolation
KR101924816B1 (ko) 바이오 정보 보호를 위한 히스토그램 다중 쉬프팅 기반 가역성 ncDNA 서열 워터마킹 방법
JP4995171B2 (ja) 視感特性を利用した映像符号化装置及び方法
Lu et al. Lossless nibbled data embedding scheme based on difference expansion
Liu et al. A revisit to LSB substitution based data hiding for embedding more information
Naskar et al. Reversible image watermarking through coordinate logic operation based prediction
Jothibasu et al. Improved Reversible Data Hiding Through Image Using Different Hiding andCompression Techniques
CN112073732A (zh) 一种水下机器人图像隐秘字符嵌入与解码的方法
JP3464397B2 (ja) 画像情報コーディング時符号化表示方法
Lee et al. A reversible watermarking for DNA sequence using an adaptive least square prediction error expansion
JeHwang Digital image watermarking employing codebook in vector quantisation
JP2003244696A (ja) 符号化処理装置、復号処理装置、および方法、並びにコンピュータ・プログラム
Bradley Improvement to CDF grounded lattice codes

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