1 |
1
적어도 프로세서를 포함하는 컴퓨팅 장치에 의해 수행되는, 사용자의 퍼지 데이터로부터 키를 복구하는 과정에서 이용되는 헬퍼 데이터를 생성하는 방법에 있어서,상기 사용자의 제1 퍼지 데이터들()을 수신하는 단계;랜덤 비트열()을 선택하는 단계;모든 ()에 대하여, 랜덤 행렬()을 선택하는 단계; 에러를 선택하는 단계; 제1 랜덤 비트열()을 선택하고 상기 제1 랜덤 비트열을 입력으로 하는 오류 정정 코드(Error Correcting Code, ECC)의 인코딩 알고리즘을 수행하는 단계; 및 상기 랜덤 행렬을 포함하는 제1 헬퍼 데이터를 생성하는 단계를 수행하는 단계; 및모든 에 대한 상기 제1 헬퍼 데이터를 포함하는 헬퍼 데이터를 생성하는 단계를 포함하고,상기 는 보안 상수이고,상기 , 상기 , 상기 , 및 상기 는 임의의 자연수인,헬퍼 데이터를 생성하는 방법
|
2 |
2
제1항에 있어서,상기 에러를 선택하는 단계는 가우시안 분포()에 대하여 에서 랜덤하게 벡터 를 선택하는(),헬퍼 데이터를 생성하는 방법
|
3 |
3
제2항에 있어서,상기 제1 헬퍼 데이터()를 생성하는 단계는,제1 수학식을 연산하는 단계;의사 난수 생성기(PRG)를 이용하여 상기 제1 랜덤 비트열로부터 난수()를 생성하는 단계;대칭키 암호의 암호화 알고리즘()을 수행하는 단계; 및메시지 인증 코드()를 생성하는 단계를 포함하고,상기 제1 수학식은 이고,상기 는 엠블럼 인코딩(EMBLEM encoding) 기법의 인코딩 함수이고,에러의 크기를 의미하는 상기 와 모듈러스를 의미하는 상기 는 시스템 파라미터로 미리 주어진,헬퍼 데이터를 생성하는 방법
|
4 |
4
제3항에 있어서,상기 는 보다 작은 자연수이고,상기 제1 퍼지 데이터들은 상기 사용자의 지문 데이터 또는 상기 사용자의 홍채 데이터인,헬퍼 데이터를 생성하는 방법
|
5 |
5
제3항에 있어서,상기 헬퍼 데이터는 인,헬퍼 데이터를 생성하는 방법
|
6 |
6
적어도 프로세서를 포함하는 컴퓨팅 장치에 의해 수행되는, 키를 복구하는 방법에 있어서,사용자의 제2 퍼지 데이터()와 헬퍼 데이터()를 수신하는 단계;상기 헬퍼 데이터에서 을 만족하는 첫 번째 인덱스 를 선택하는 단계;제1 수학식을 연산하는 단계;상기 제1 수학식의 연산 결과를 입력으로 하는 오류 정정 코드의 디코딩 알고리즘을 수행하여 제2 비트열()을 생성하는 단계;의사 난수 생성기를 이용하여 상기 제2 비트열로부터 난수()를 생성하는 단계;메시지 인증 코드()를 생성하는 단계; 및상기 메시지 인증 코드와 상기 헬퍼 데이터를 비교한 후 대칭키 암호의 복호화 알고리즘을 이용하여 제1 비트열()을 생성하는 단계를 포함하고,상기 제1 수학식은 이고, 상기 는 엠블럼 인코딩 기법의 디코딩 함수이고,모듈러스를 의미하는 상기 는 임의의 자연수인,키를 복구하는 방법
|
7 |
7
제6항에 있어서,상기 첫 번째 인덱스 를 선택하는 단계에서 가 존재하지 않는 경우, 상기 사용자의 제3 퍼지 데이터를 수신하고 상기 헬퍼 데이터에서 을 만족하는 첫 번째 인덱스 를 선택하는,키를 복구하는 방법
|
8 |
8
제6항에 있어서,상기 제1 비트열을 생성하는 단계는, 상기 메시지 인증 코드()와 상기 헬퍼 데이터에 포함된 가 동일한 경우에만 상기 제1 비트열을 생성하는,키를 복구하는 방법
|
9 |
9
제6항에 있어서,상기 헬퍼 데이터를 생성하는 과정 중에 사용된 상기 사용자의 제1 퍼지 데이터들 중 번째 퍼지 데이터와 상기 제2 퍼지 데이터의 거리가 임계치보다 작은 경우, 상기 헬퍼 데이터를 생성하는 과정 중에 생성된 랜덤 비트열과 상기 제1 비트열은 동일한 값을 갖는,키를 복구하는 방법
|
10 |
10
적어도 프로세서를 포함하는 컴퓨팅 장치에 의해 수행되는, 사용자의 퍼지 데이터로부터 키를 복구하는 과정에서 이용되는 헬퍼 데이터를 생성하는 방법에 있어서,상기 사용자의 제1 퍼지 데이터들()을 수신하는 단계;랜덤 비트열()을 선택하는 단계;모든 ()에 대하여, 랜덤 행렬()을 선택하는 단계; 제1 랜덤 비트열()을 선택하고 상기 제1 랜덤 비트열을 입력으로 하는 오류 정정 코드(Error Correcting Code, ECC)의 인코딩 알고리즘()을 수행하는 단계; 및 상기 랜덤 행렬을 포함하는 제1 헬퍼 데이터를 생성하는 단계를 수행하는 단계; 및모든 에 대한 상기 제1 헬퍼 데이터를 포함하는 헬퍼 데이터를 생성하는 단계를 포함하고,상기 는 보안 상수이고,상기 , 상기 , 상기 , 및 상기 는 임의의 자연수인,헬퍼 데이터를 생성하는 방법
|
11 |
11
제10항에 있어서,상기 제1 헬퍼 데이터()를 생성하는 단계는,제1 수학식을 연산하는 단계;의사 난수 생성기(PRG)를 이용하여 상기 제1 랜덤 비트열로부터 난수()를 생성하는 단계;대칭키 암호의 암호화 알고리즘()을 수행하는 단계; 및메시지 인증 코드()를 생성하는 단계를 포함하고,상기 제1 수학식은 이고,상기 는 엠블럼 인코딩(EMBLEM encoding) 기법의 인코딩 함수이고,에러의 크기를 의미하는 상기 와 모듈러스를 의미하는 상기 는 시스템 파라미터로 미리 주어진,헬퍼 데이터를 생성하는 방법
|
12 |
12
제11항에 있어서,상기 는 보다 작은 자연수이고,상기 제1 퍼지 데이터들은 상기 사용자의 지문 데이터 또는 상기 사용자의 홍채 데이터인,헬퍼 데이터를 생성하는 방법
|
13 |
13
제11항에 있어서,상기 헬퍼 데이터는 인,헬퍼 데이터를 생성하는 방법
|
14 |
14
적어도 프로세서를 포함하는 컴퓨팅 장치에 의해 수행되는, 키를 복구하는 방법에 있어서,사용자의 제2 퍼지 데이터()와 헬퍼 데이터()를 수신하는 단계;상기 헬퍼 데이터에서 을 만족하는 첫 번째 인덱스 를 선택하는 단계;제1 수학식을 연산하는 단계;상기 제1 수학식의 연산 결과를 입력으로 하는 오류 정정 코드의 디코딩 알고리즘을 수행하여 제2 비트열()을 생성하는 단계;의사 난수 생성기를 이용하여 상기 제2 비트열로부터 난수()를 생성하는 단계;메시지 인증 코드()를 생성하는 단계; 및상기 메시지 인증 코드와 상기 헬퍼 데이터를 비교한 후 대칭키 암호의 복호화 알고리즘을 이용하여 제1 비트열()을 생성하는 단계를 포함하고,상기 제1 수학식은 이고, 상기 는 엠블럼 인코딩 기법의 디코딩 함수이고,모듈러스를 의미하는 상기 는 임의의 자연수인,키를 복구하는 방법
|
15 |
15
제14항에 있어서,상기 첫 번째 인덱스 를 선택하는 단계에서 가 존재하지 않는 경우, 상기 사용자의 제3 퍼지 데이터를 수신하고 상기 헬퍼 데이터에서 을 만족하는 첫 번째 인덱스 를 선택하는,키를 복구하는 방법
|
16 |
16
제14항에 있어서,상기 제1 비트열을 생성하는 단계는, 상기 메시지 인증 코드()와 상기 헬퍼 데이터에 포함된 가 동일한 경우에만 상기 제1 비트열을 생성하는,키를 복구하는 방법
|
17 |
17
제14항에 있어서,상기 헬퍼 데이터를 생성하는 과정 중에 사용된 상기 사용자의 제1 퍼지 데이터들 중 번째 퍼지 데이터와 상기 제2 퍼지 데이터의 거리가 임계치보다 작은 경우, 상기 헬퍼 데이터를 생성하는 과정 중에 생성된 랜덤 비트열과 상기 제1 비트열은 동일한 값을 갖는,키를 복구하는 방법
|