Digital Signature Algorithm Der-Chyuan Lou, Jiang Lung Liu, Chang-Tsun Li
-
Upload
information-security-awareness-group -
Category
Technology
-
view
351 -
download
2
description
Transcript of Digital Signature Algorithm Der-Chyuan Lou, Jiang Lung Liu, Chang-Tsun Li
Digital Signature-Based Image Digital Signature-Based Image AuthenticationAuthentication
Der-Chyuan Lou, Jiang Lung Liu, Chang-Tsun Li
2004. 12. 9
김준형
OutlineOutline
• Generic Models– Strict Authentication
– Non-Strict Authentication
• State of the Art– Strict Authentication
– Non-Strict Authentication
• Design Issues– Error Detection
– Error Correction
– Security
• Conclusions
Generic ModelsGeneric Models
• public key cryptosystem → digital signature → digital signature-based image authentication
• digital signature– sender 가 hash function 을 이용 , original data 를 digest 로 만듬– digest 를 sender 의 private key 로 encrypt 하여 signature 로
사용– signature 와 original information 을 같이 receiver 에게 보냄– receiver 는 sender 의 public key 로 signature 를 decrypt
– decrypt 된 digest 와 받은 information 를 hash function 을 이용하여 만든 digest 와 비교
– 일치하면 합법성과 무결성이 증명
Process of digital signature
• The plaintext is not limited to text file– Original data → digital image
– Image 의 legitimacy 와 integrity 를 검증 가능– 즉 , digital signature-based image authentication 을
뜻함• The hash function is a mathematical digest
function– Image 의 1bit 만 바뀌어도 결과가 달라짐– 즉 , image 의 무결성 검증이 가능
Strict AuthenticationStrict Authentication
• digital signature-based strict authentication– h=H(I)
– S=EKr(h)
– M=I||S
– h’=H(I’)
– h^=DKp(S^)
– If (h^ =h’) then (legitimacy 와 integrity 검증 )
– 일방성을 지님 (one-way property)
• encryption function-based strict authentication– sender 와 receiver 가 같은 key 를 공유– 정직한 형태의 image authentication
– cutting and pasting 과 같은 위조에 약함– message authentication code(MAC) 로 해결
• MAC-based strict authentication– sender 와 receiver 가 같은 key 를 공유– sender 가 image I 를 보낼 때 I 를 key 로 암호화한
MAC 와 함께 보냄– receiver 는 받은 image I’ 을 sender 의 key 와 같은
key 로 암호화하여 MAC 와 비교– “legitimate” forgery 는 피할 수 없음
Non Strict AuthenticationNon Strict Authentication
• Non-strict authentication– C=fc(I)
– S=EKr(C)
– M=I||S
– C’= fc(I’)
– C^=DKu(S^)
– d(C^, C’) → C^ 과 C’ 의 유사도– T → tolerable threshold
– d(C^, C’) < T → legitimacy 와 integrity 검증
State of the ArtState of the Art
• Strict Authentication– trustworthy digital camera
• Non-Strict Authentication– Feature-Based Methods
– Edge-Based Methods
– Mean-Based Methods
– Relation-Based Methods
– Structure-Based Methods
Strict AuthenticationStrict Authentication
• 1993 년 Friedman 이 digital signature 와 digital camera 를 연관시켜 “ trustworthy digital camera”를 제안
• Original image 를 MD5 와 같은 cryptographic algorithm 을 이용하여 해싱– 원 영상의 1bit 만 틀어져도 인증이 안됨– lossy compression 에 부적합
• Non strict-based authentication 으로 해결
• Trustworthy digital camera 의 동작– Digital camera 로 영상 캡춰– 캡춰한 image 를 해싱하여 private key 로 암호화 , d
igital signature 생성– image 와 digital signature 를 함께 디스크에 저장
※ public key 는 camera 의 겉 표면과 image 의 테두리에 표시되어 있음
• Verification process of Friedman’s idea– Verification software 를 이용 ( 공개 software)
– Verification software 의 동작• Image 를 해싱• Digital signature 를 camera 겉 표면에 나와있는 public key
로 복호화• 두 개의 hash value 를 비교• 일치하면 인증 완료
Non Strict AuthenticationNon Strict Authentication
• Schneider and Chang(1996) used content-based data as the authentication code
• Image feature 를 authentication 에 이용• Image feature is invariant
– Edge information, DCT coefficients, color, and intensity histogram
• Schneider and Chang’s method 에서는 image 를 일정 블록으로 나누고 , 각 블록의 intensity histogram 을 이용하여 authentication 을 구현
Feature-Based MethodsFeature-Based Methods
• large-size image 의 경우에는 signing procedure가 오래 걸림 → Bhattacharjee and Kutter 가 scale interaction model 을 제안
• 보다 작은 크기의 feature 를 image 에서 추출• Mexican-Hat wavelets 를 사용• Algorithm
• Pij(·) 가 최대인 point 들을 feature point 로 이용– 단 , 인접 픽셀과의 변화가 threshold 보다 크면 이용– featureless 한 region 의 최대값을 제거하기 위함
• feature point 들의 가로 좌표와 세로 좌표를 string 의 형태로 바꿈
• 좌표 값의 string 을 암호화하여 signature 를 생성
• Authentication– Image A 의 feature set 와 image B 의 signature 를
복호화 한 것과 비교하여 검증함
Edge-Based MethodsEdge-Based Methods
• Edge 는 image 에 대한 강력한 content feature임
• 일반적인 image 에서는 edge 의 위치 계산에서 큰 overhead 를 초래
• Li, Lou and Liu(2003) 가 binary map 을 이용하여 overhead 를 해결
• 그러나 high compression 에 의해 edge 가 변화하는 문제가 존재
• Queluz(2001) 가 해결 방안을 제시
Process of edge extraction proposed by Queluz(2001)
Feature extraction : CI=E(I)
Binary edge pattern : EPCI=f(CI)
Feature code : VLC(EPCI)
Process of edge integrity evaluation proposed by Queluz(2001)
Extract feature : CT=E(T), EPCT=f(CT)
Extract Binary pattern : EPCI=Decompress(VLC(EPCI))Check EPCI = EPCT
Mean-Based MethodsMean-Based Methods
• Mean 을 이용하는 것은 단순하고 실용적임• Lou and Liu(2000) 가 mean-based feature code
생성 algorithm 을 제안– Image 를 non-overlapping 한 block 으로 나눔– 각 block 에 대한 mean 을 계산하고 양자화 함– Entropy encoding 으로 compress
(a) : 256 × 256 의 original image
(b) : block 에 대한 mean 을 계산한 이미지 맵(c) : 16 단계로 양자화 한 결과
• Verification process– 받은 image 의 mean 테이블을 구하여 양자화– 양자화 된 code 와 original quantized code 를
이용하여 comparison algorithm 수행 → binary error map 생성
– binary error map 으로 검증• 1 이면 match
• 0 이면 mismatch
Relation-Based MethodsRelation-Based Methods
• Lin and Chang(1998, 2001) 이 SARI 를 제안• SARI
– Image 를 8×8 의 겹치지 않는 N 개의 block 들로 나눔
– 각 block 들을 DCT 변환– 변환된 DCT block 들을 두 개의 그룹으로 나눔– Secret key 로써 mapping 하여 N/2 개의의 DCT
블록들을 비교– 비교 값에 따라 0 또는 1 의 결과를 추출– 추출된 값을 feature code 로 사용
Feature code generated with SARI authentication scheme
• SARI 의 verification process– 받은 image 로 feature code 를 구함– 단 , 송신자의 secret key 와 같은 키를 적용함– 추출된 feature code 와 original feature code 를 비교– Authentication 완료
Structure-Based MethodsStructure-Based Methods
• Proposed by Lu and Liao(2000, 2003)
• Image content 의 structure 로써 feature code 계산• Content structure 는 wavelet domain 에서의 parent node
와 children node 의 pair
• Inter-scale relationship– |ws+1,o(x,y)| ≥ |ws,o(2x+i, 2y+j)|
– |ws+1,o(x,y)| ≤ |ws,o(2x+i, 2y+j)| 0≤i, 0≤1
• 다음 조건을 만족하는 pair 로 authentication code 생성– | |ws+1,o(x,y)| - |ws,o(2x+i, 2y+j)| | > ρ ρ > 0
Design IssuesDesign Issues
• Digital signature-based image authentication– blind authentication(or obliviousness)
– Based on strict authentication or non-strict authentication
• Error Detection
• Error Correction
Error DetectionError Detection
• image 의 modification 을 찾아내는 기능이 있으면 , 좋은 application 이라 할 수 있음
• 단 , error 를 찾아낼 뿐만 아니라 , distortion 을 복구 할 수도 있어야만 가치가 있음
Error TypeError Type
• Strict authentication 은 error 의 type 을 구분 못함
• Non-strict authentication 에서 error type 을 구분– Authenticity 對 modification curve
• Yes or No 의 결과가 아닌 수치형 결과• Authenticity 의 값이 1.0 이면 completely authentic
• Authenticity 의 값이 0.0 이면 unauthentic
• Authenticity 의 값의 범위는 (0.0, 1.0)
Error LocationError Location
• Error 의 위치 측정– Block-oriented approach 로 해결– Image 를 전송하기 전에 block 단위로 나눔– 각 block 에 대하여 authentication code 를 생성– authentication code 들을 분산된 파일로 전송– 각 block 별로 authenticating process 수행– Block 의 크기가 작으면 error localization 이
정교해지지만 , signing 과 decoding 에 걸리는 시간이 많아짐
Error CorrectionError Correction
• Error Correction 의 요점은 manipulated image를 original image 로 복구하는 것
• Non-strict authentication 에 주로 사용• Example
– Xie, Arce and Graveman(2001)
SecuritySecurity
• strict authentication 의 hash function 상의 attack– Brute-force attack
– Cryptanalysis attack
Brute-force AttacksBrute-force Attacks
• Hash function 에 가능한 모든 값을 다 입력해보는 방법
• MD5 의 hash code 의 길이가 N bit 라면 , 입력 가능한 sample 의 수는 2N/2
• Example– Hash code 길이 = 128bit
– Sample 수 = 264 개 – 24days, $10 million 의 비용
Cryptanalysis AttacksCryptanalysis Attacks
• Cryptanalysis( 암호해독학 ) 를 이용한 attack– Hash function 의 내부 구조를 이용하여 분석
→ Cryptanalysis 에 강한 hash function 이 필요– Cryptanalysis 는 non-strict scheme 에 적용 안됨– 이런 경우 attacker 는 다양한 key 를 feature code
에서 추출해내려고 시도함
ConclusionsConclusions
• Digital signature-based authentication– Strict authentication
– Non-strict authentication
• New requirements– Large-size 의 image 도 적은 overhead 로 처리– Watermark 와 digital signature 의 결합– Watermark 에 의한 새로운 authentication scheme