DOI QR코드

DOI QR Code

Fast Algorithm for Polynomial Reconstruction of Fuzzy Fingerprint Vault

지문 퍼지볼트의 빠른 다항식 복원 방법

  • 최우용 (한국전자통신연구원) ;
  • 이성주 (고려대학교 전산학과) ;
  • 정용화 (고려대학교 컴퓨터정보학과) ;
  • 문기영 (한국전자통신연구원 바이오인식기술연구팀)
  • Published : 2008.04.30

Abstract

Biometric based authentication can provide strong security guarantee about the identity of users. However, security of biometric data is particularly important as compromise of the data will be permanent. Cancelable biometrics stores a non - invertible transformed version of the biometric data. Thus, even if the storage is compromised, the biometric data remains safe. Cancelable biometrics also provide a higher level of privacy by allowing many templates for the same biometric data and hence non-linkability of user's data stored in different databases. In this paper, we proposed the fast polynomial reconstruction algorithm for fuzzy fingerprint vault. The proposed method needs (k+1) real points to reconstruct the polynomial of degree (k-1). It enhances the speed, however, by $300{\sim}1500$ times according to the degree of polynomial compared with the exhaust search.

바이오정보를 이용한 사용자 인증시스템은 편리함과 동시에 강력한 보안을 제공할 수 있다. 그러나 사용자 인증을 위해 저장된 중요한 바이오정보가 타인에게 도용된다면 심각한 문제를 일으킨다. 따라서 타인에게 유출되더라도 재사용이 불가능하도록 하기 위하여 사용자의 바이오정보에 역변환이 불가능한 함수를 적용하여 저장하고 변환된 상태에서 인증과정을 수행할 수 있는 방법이 필요하다. 본 논문에서는 최근 지문 템플릿 보호를 위해 활발히 연구되고 있는 지문 퍼지볼트의 빠른 다항식 복원 방법을 제안한다. 제안된 방법은 (k-1)차 다항식을 복원하기 위해 (k+1)개의 real point를 필요로 하며, 전수조사에 비해서 수행속도가 다항식의 차수에 따라 약 $300{\sim}1500$배 향상되는 효과를 가져왔다.

Keywords

Ⅰ. 서론

정보화 시대에는 인터넷을 이용하여 글로벌 네트워크가 형성되어 편리하게 수집, 분석 및 가공한 개인의 중요한 정보가 타인에 의해 도용되거나 파괴되는 심각한 문제가 제기되고 있다. 현재까지 사용되고 있는 사용자 패스워드 또는 PIN (Personal Identification Number)을 이용한 사용자 인증 방법으로는 중요 정보를 안전하게 보관할 수 없는 실정이다. 이러한 문제를 해결하기 위해 최근 지문, 음성, 얼굴, 홍채 등의 개인의 고유한 바이오 정보를 이용하여 사용자의 신원을 확인하는 바이오인식 기술이 대두되고 있다. 바이오인식 기술은 패스워드 또는 PIN 방식에 비해서 타인에 의해 도용될 우려가 적고 사용자가 암기하지 않아도 되는 장점이 있다.

그러나 사용자 인증을 위해 저장된 바이오정보가 타인에게 도용된다면 패스워드나 PIN과 달리 변경이 불가능하거나 제한적이기 때문에 심각한 문제를 일으킬 수 있다. 따라서 바이오정보를 안전하게 전송/저장하는 방법이 필요하다.

2002년 Juels[l]가 퍼지볼트 이론을 제안하면 서부터 퍼지 볼트를 지문인식에 적용하는 연구가 활발히 진행되고 있다. 퍼지볼트에서 사용자를 인증하기 위해서는 주출된 특징점으로 다항식을 복원하는 과정이 필요한데, 이 과정에서 Juels가 real point를 선택하는 방법으로 언급한 Reed-Solomon (RS) 코드는 퍼지볼트에 적용하는데 어려움이 있을 뿐 아니라 많은 수의 real point를 필요로 한다. 따라서 대부분의 지문 퍼지볼트 연구들에서는 매칭된 특징점으로부터 다항식을 복원하는 과정을 생략하거나 모든 가능한 point 조합에 대해서 Lagrange interp이ation을 수행하는 전수조사에 의존하고 있다. [2・5] 그러나 전수조사는 너무 많은 계산량으로 실시간으로 구현하는 것이 불가능하다. 이를 해결하기 위하여 Li[6]는 매칭된 point 중 real point만 선택하는 방법을 제안하였으나, 사용자가 별도의 키를 가지고 다녀야 하는 문제점이 있다. 본 논문에서는 별도의 키 없이 사point가 포함된 point set을 제거함으로써 빠른 다항식 복원이 가능한 방법을 제안한다.

본 논문의 구성은 다음과 같다. II장에서 지문 퍼지 볼트 알고리즘을 간략히 설명하고, Ⅲ장에서 제안된 다항식 복원 방법을 설명한다. IV장에서는 실제 지문 데이터에서의 인식률 및 인식속도를 평가하고, 마지막으로 V 장에서 결론을 맺는다.

Ⅱ. 지문 퍼지볼트

지문 퍼지볼트는 지문 템플릿을 보호하기 위한 암호학적 방법으로 Juels[l]가 제안한 퍼지볼트 이론을 지문인식에 적용한 것이다. [그림 1]은 지문 퍼지볼트의 블록 다이어그램을 나타낸 그림이다. 그림에 나타난 바와 [그림 1) 지문 퍼지볼트의 블록 다이어그램 같이 지문 퍼지볼트는 암호화 및 복호화 과정으로 구성되며, 각 단계에 대한 자세한 설명은 다음과 같다.

[그림 1] 지문 퍼지볼트의 블록 다이어그램

2.1. 암호화 과정

지문 퍼지볼트의 암호화 과정은 다음과 같다. ① 등록지문으로부터 특징점을 추출한다.

#(1)

② 가짜 특징점을 생성한다.

#(2)

③ S와 4를 더하여 특징점 집합 R을 구성한다.

#(3)

④ Geometric hashing[7] 기법을 이용하여 등록 테이블을 만든다. [2]

#(4)

여기서 %疝) = (灼(1), 务(1), 編, 项))는 (物, 务) 를 (%, 幼)를 기준으로 변환한 특징점이다.

⑤ 특징점의 %, y 좌표를 변환하여 새로운 좌표평면 (U-V 평면)의 以■좌표를 생성한다. 생성된 좌표는 GF(2】6) 의 원소가 된다.

⑥ u-v 평면에서 임의의 계수를 가지는 (农1)차 다항식을 생성하고, 해쉬함수 九를 이용하여 비밀값 K 를 생성한다.

#(5)

#(6)

⑦ 집합 力에 해당하는 point는 다항식 위로, 집합 4 에 해당하는 point는 다항식 밖으로 projection한다.

#(7)

여기서, %.는 0이 아닌 임의의 수이다.

⑧ ⑦에서 생성된 point와 해쉬함수, 비밀값 및 다항식의 차수로 볼트를 구성한다.

#(8)

2.2. 복호화 과정

지문 퍼지볼트의 복호화 과정은 입력 지문의 특징점으로부터 다항식을 복원하는 과정이다. 지문 퍼지 볼트의 복호화 과정은 다음과 같다.

① 입력지문으로부터 특징점을 추출한다.

#(9)

② 집합 B와 등록데이블 T를 이용해 정합을 수행하여 매칭된 특징점 집합 U를 구한다.[2]

#(10)

③ U에 해당하는 점을 볼트에서 가져온다.

#(11)

④ 집합 AZ을 이용하여 다항식을 복원하여 비밀값 R 를 구한다.

#(12)

#(13)

⑤ "와 以卜 일치하면 수락하고, 그렇지 않으면 거절한다.

#(14)

Juels[l]가 제안한 퍼지볼트 이론에 따르면 UnM 가 충분히 크면 다항식을 복원할 수 있다. 이론적으로는 이면 전수조사를 통하여 (奴1) 차 다항식을 복원할 수 있다. 즉, 집합 u에 次개 이상의 진짜 특징점이 포함되어 있다면 개의 모든 가능한 조합에 대해 Lagrange interpolatioii을 적용해 봄으로써 다항식을 복원할 수 있다. 그러나 이러한 방법은 f와 &가 커지면 시도해야 할 조합의 수가 기하급수적으로 증가하므로 실시간 처리가 불가능하다. Uludag[3]은 f가 커지는 것을 막기 위하여 추출된 특징점 중 18개만 사용하였다. Juels는 집합 M에서 real point만 선택하는 방법으로 RS 코드를 이용할 수 있다고 하였으나 기존의 RS 코드를 퍼지볼트에 그대로 적용하기에는 어려움이 있다.[8] 또한 집합 M에 포함된 real point가 A개 이상이면 전수조사를 통해서 다항식을 복원할 수 있는데 반해, RS 코드는 (k+£)/2개 이상의 real point를 필요로 한다.[1]

본 논문에서는 집합 M에 (奸1)개 이상의 real point가 존재하면 다항식을 복원할 수 있으며, 계산량도 적어서 t와 次가 큰 경우에도 실시간 처리가 가능한 다항식 복원 방법을 제안한다. 자세한 내용은 다음 장에서 설명한다.

Ⅲ. 제안한 다항식 복원 방법

(정리 1)은 선형시스템이 근을 가지기 위한 조건을 나타낸다.

(정리 1) Ax=b가 선형시스템이면 다음 명제는 모두 동치이다

(a) 如나}의 근이 존재한다.

(b) b는 A의 column space의 원소이다.

(c) 계수행렬 4와 augmented matrix 의 rank는 서로 같다

(정리 1)로부터 다음과 같은 (따름정리 1・1)을 유도할 수 있다.

(따름정리 1-1) Ax=b가 S+1) 개의 방정식과 h 개의 미지수로 구성된 선형시스템일 때,

Augmented matrix [A\b]의 row-echelon formal

마지막 행이 0 벡터가 아니면 선형시스템 Ax나) 는근이 존재하지 않는다

퍼지볼트의 다항식 복원 문제는 f개의 방정식과 *개의 미지수로 구성된 선형시스템의 근을 구하는 문제로 생각할 수 있다. 다음과 같은 선형시스템을 생각하자.

#(15)

% 乂处了 勺. 수식 (15)에서 0더~1)개의 행을 선택하여 다음과 같은 augmented matrix를 구성하고,

#(16)

이 행렬을 row-echelon form으로 변환하면 다음과 같이 표현할 수 있다.

#(17)

여기서 可(1)과 设은 각각丿번째 행이 7번째 원소에서 leading 1을 가질 때의 芯와 %값이다. 단, 두 행을 바꾸는 연산은 수행하지 않는다. 만약 成匕?)尹0이면, (따름정리 1・1)에 의해서 수식 (16)으로 표현되는 선형시스템은 근을 가지지 않는다. 즉, (써* 잉+1)은 적어도 하나의 chaff point를 포함하고 있고, 따라서 다항식을 복원할 수 없다. 반대로 试V?)=。이면, 선택된 (서T)개의 point는 모두 real point일 가능성이 있으므로 A개의 point (*臨, ...血 “%)로 다항식을 복원하여 수식 (5)의 p(“)와 비교한다.

이제 f개의 방정식을 가진 수식 (15)의 선형시스템을 생각해 보면, augmented matrix는

#(18)

가되고, 이 행렬의 row-echelon fbnn 은 다음과 같다.

#(19)

만약 就rWB’-wF+D이 모두 0이 아니면 (써/%), …, (?如%)는 적어도 하나의 chaff point를 포함하고 있으므로, 이 경우에는 다항식 복원을 수행하지 않는다. 만약 监投成서2叫…云"°에。이 하나 이상 존재하면 (써, 叫), …, (“就%)는 모두 real point일 가능성이 있 U로(I如叫), …, (%%)를 사용하여 다항식을 복원하고 수식 (5)의 >(")와 비교해 본다.

주어진 f개의 point에 대해서 다항식을 복원하기 위해서는 이러한 계산을 개의 모든 가능한 조합에 대해서 수행하여야 하므로 f와 左가 커지면 시도해야 할 경우의 수가 기하급수적으로 증가하게 된다. 그러나 수식 (15)의 A 행렬은 첫 번째 열에 1, 두 번째 열에 u, 세 번째 열에 u 등과 같이 일정한 패턴을 가지고 있으므로 4"。은 다음과 같은 recursive 방법에 의해서 구할 수 있다.

#(20)

..權. 따라서 전수조사 방법에 비해 연산시간을 크게 줄일 수 있으며, 실시간 처리가 가능하게 된다.

Ⅳ. 실험 결과

본 논문에서 제안한 다항식 복원 방법의 성능을 측정하기 위하여 FVC2002[9]의 DB1 Set A를 사용하였다. 본인정합은 8장의 이미지 각각에 대해서 나머지 이미지와 정합을 수행하였으며, 한번 등록된 것은 이후의 정합에는 사용하지 않았다. 타인정합은 각 손가락의 첫 번째 이미지만 사용하였는데, 본인정합과 마찬가지로 100장의 이미지 각각에 대해서 나머지 이미지와 정합을 수행하였으며, 한번 등록된 것은 이후의 정합에는 사용하지 않았다. 따라서 본인정합은 총 2, 800회, 타인정합은 총 4, 950회를 수행하였다. 모든 실험은 2.66GHz CPU에 3GB RAM이 탑재된 PC에서 수행하였다.

[표 1]은 본인정합 및 타인정합을 수행하여 구한 매칭된 특징점의 평균개수이다. 다항식 복원 성능을 시험하기 위해서 전수조사 방법과 제안된 방법을 비교하였다. [표 2]는 전수조사와 제안된 방법의 에러율을 비교한 표이다. (农1)차 다항식을 복원하기 위해서 전수조사는 A개, 제안된 방법은 (서4)개의 real point가 필요하므로 (好1)차 다항식을 사용한 전수조사 에러율과 k차 다항식을 사용한 제안된 방법 에러율이 같음을 확인할 수 있다. 또한 다항식의 차수가 커짐에 따라 FRRe 증가하고 FARe 감소하는 것도 확인할 수 있다.

[표 1] 매칭된 특징점의 개수 (단위: 개)

[표 2] 에러율 비교 (단위: %)

[표 3]은 전수조사와 제안된 방법의 평균 다항식 복원 시간을 비교한 표이다. 본인정합이 타인정합보다 매칭된 특징점의 수가 많으므로 다항식 복원에 많은 시간이 걸리고, 다항식의 차수가 증가할수록 복원 시간도 증가함을 알 수 있다. 또한 다항식의 차수가 증가할수록 제안된 방법의 시간 감소율이 커지는데, 7차 다항식의 경우 316배, 8차 다항식은 698배, 9차 다항식은 1527배의 시간이 감소하였다. 따라서 제안된 방법은 전수조사보다 real point를 1개 더 필요로 하지만, PC 뿐만 아니라 임베디드 시스템 등에서도 실시간 처리가 가능함을 확인하였다.

[표 3] 다항식 복원 시간 비교 (단위: 초)

Ⅴ. 결론

본 논문에서는 지문 퍼지볼트의 다항식 복원 방법을 제안하였다. 제안된 방법은 chaff point가 포함된 point set을 다항식 복원에서 제외함과 동시에 recursive 방법을 통하여 제외할 point set 검출 속도를 높였다. FVC2002 DB1 Set A의 지문 이미지를 사용하여 실험한 결과 316~1527배의 시간 감소 효과를 나타냈다. 따라서 제안된 방법은 전수조사보다 real point를 1개 더 필요로 하지만 실시간 처리가 가능함을 확인하였다.

* 본 연구는 지식경제부 및 정보통신연구진흥원의 IT성장동 력기술개발사업 [2007-S-020-02, 프라이버시 보호형 바이오 인식 시스템 개발]과 대학IT연구센터(홈네트워크연구센터) 육성, 지원사업의 연구결과로 수행되었음.

References

  1. A Juels, M. Sudan, "A Fuzzy Vault Scheme," Proc. IEEE International Symposium on Information Theory, pp. 408-409, 2002
  2. Y. Chung, D. Moon, S. Lee, S. Jung, T. Kim, D. Ahn, "Automatic Alignment of Fingerprint Features for Fuzzy Fingerprint Vault," Proc. Conference on Information Security and Cryptology, vol. 1, pp. 358-369, 2005
  3. U. Uludag, S. Pankanti, A.K. Jain, "Fuzzy Vault for Fingerprints," Proc. Audio-and Video-based Biometric Person Authentication, vol. 5, pp. 310-319, Jul. 2005
  4. E. Chang, R. Shen, F. Teo, "Finding the Original Point Set Hidden Among Chaff," Proc. ACM Symposium on Information, Computer and Communications Security, pp. 182-188, Mar. 2006
  5. K. Nandakumar, A Jain, S. Pankanti, "Fingerprint- based Fuzzy Vault: Implementation and Performance," IEEE Trans. Information Forensics and Security, 2(4), pp. 744-757, Dec. 2007 https://doi.org/10.1109/TIFS.2007.908165
  6. Q. Li, X. Niu, Z. Wang, Y. Jiao, S. Sun, "A Verifiable Fingerprint Vault Scheme," Proc. International Conference on Knowledge-Based & Intelligent Information & Engineering Systems, vol. 9, pp. 1072-1078, Sep. 2005
  7. H. Wolfson, I. Rigoutsos, "Geometric Hashing: an Overview," IEEE Computational Science and Engineering, 4(4), pp. 10-21, Oct.-Dec. 1997
  8. Q. Li, Z. Liu, and X. Niu, "Analysis and Problems on Fuzzy Vault Scheme," Proc. International Conference on Intelligent Information Hiding and Multimedia Signal Processing, pp. 244-250, Dec. 2006
  9. http://bias.csr.unibo.it/fvc2002/databases.asp