1 |
1
블록체인 기반 서명 및 암호화를 위한 키 저장 및 복원 방법에 있어서,(a) 사용자 단말이, 블록체인 기반 서명 및 암호화를 위한 키 생성 요청에 응답하여, 시드를 바탕으로 블록체인 기반의 키 생성을 위한 알고리즘에 의해 상기 키를 생성하며, 상기 키를 상기 사용자 단말의 보안 영역에 저장하는 단계;(b) 상기 사용자 단말이, 상기 키 또는 상기 키의 생성 및 복원에 이용되는 상기 시드를 소정 개수로 분할하여 각 분할된 조각 키 또는 조각 시드와 상기 키 또는 시드의 분할에 사용된 정보를 포함하는 비밀정보 조각들을 생성하는 단계; 및(c) 상기 사용자 단말이, 상기 비밀정보 조각들 각각을 다수의 신뢰기관의 서버들 각각에 분산하여 전달하는 단계;를 포함하며,상기 (a) 단계에서, 상기 키 생성 요청은 상기 사용자 단말 내의 블록 체인 기반 지갑(Wallet) 애플리케이션을 통해 요청되며,상기 사용자 단말은, 상기 사용자 단말 내의 상기 블록 체인 기반 지갑 애플리케이션으로부터의 요청에 응답하여, 상기 사용자 단말 내의 클라이언트 애플리케이션으로 하여금 키 생성을 위한 알고리즘 또는 매개변수 정보를 상기 사용자 단말 내의 Applet으로 전송하도록 하고, 상기 Applet으로 하여금 상기 알고리즘 또는 상기 매개변수에 따라 상기 키를 생성하도록 하되,상기 클라이언트 애플리케이션은 상기 키 생성을 위한 알고리즘 또는 매개변수 정보를 상기 사용자 단말 내의 TSM(Trusted Service Manager) Agent로 전달하고, 상기 TSM Agent는 상기 클라이언트 애플리케이션으로부터 전달받은 상기 키 생성을 위한 알고리즘 또는 매개변수 정보를 상기 Applet으로 전송하여, 상기 Applet으로 하여금 상기 알고리즘 또는 상기 매개변수에 따라 상기 키를 생성하도록 하며,상기 (c) 단계에서,상기 TSM Agent는 상기 Applet에서 생성된 비밀정보 조각을 전달받아 외부 TSM 서버를 포함하는 상기 신뢰기관의 서버들에 분산하여 전달하는 것을 특징으로 하는 방법
|
2 |
2
삭제
|
3 |
3
삭제
|
4 |
4
삭제
|
5 |
5
제 1 항에 있어서,상기 (b) 단계에서,상기 사용자 단말은, 아래 수학식을 통해 상기 키 또는 상기 시드를 소정 개수 n 개로 분할하고,여기서, x는 1003c#x003c#n 인 x번째 분할된 키 또는 시드 조각의 인덱스이며, s는 상기 키 또는 시드이고, p는 s003c#p 인 소수이며, k는 상기 분할된 상기 키 또는 시드를 복원하기 위한 비밀정보 조각들의 임계치 개수를 나타내는 것을 특징으로 하는 방법
|
6 |
6
제 1 항에 있어서, 상기 방법은(d) 상기 사용자 단말이, 상기 신뢰기관 서버들 중 적어도 하나로부터 소정 임계치 수 이상의 상기 비밀정보 조각들을 전달받는 단계; 및(e) 상기 사용자 단말이, 상기 소정 임계치 수 이상의 상기 비밀정보 조각들을 참조로, 상기 키 또는 상기 시드를 복원하는 단계;를 더 포함하는 것을 특징으로 하는 방법
|
7 |
7
제 1 항에 있어서,상기 (b) 단계는,(b1) 상기 사용자 단말이, 상기 생성된 비밀정보 조각들을 중 소정 임계치 수 이상의 비밀정보 조각들을 결합하여 상기 키 또는 상기 시드가 복원되는지 여부를 확인하는 단계를 더 포함하는 것을 특징으로 하는 방법
|
8 |
8
제 1 항에 있어서,상기 (b) 단계는, 상기 사용자 단말이, 상기 비밀정보 조각들을 상기 사용자 단말 내부에 저장된 상기 신뢰기관의 공개키 정보를 이용하여 암호화하고,상기 (c) 단계는,상기 사용자 단말이, 상기 암호화된 비밀정보 조각들을 상기 신뢰기관의 서버들에 분산하여 전달하는 것을 특징으로 하는 방법
|
9 |
9
제 1 항에 있어서, 상기 (c) 단계에서, 상기 사용자 단말은 상기 비밀정보 조각들 중 적어도 하나를 상기 사용자 단말의 SE 영역에 저장하는 것을 특징으로 하는 방법
|
10 |
10
제 1 항에 있어서, 상기 (c) 단계에서, 상기 사용자 단말은, 개인키를 상기 사용자 단말의 SE 영역에 저장하는 것을 특징으로 하는 방법
|
11 |
11
제 10 항에 있어서, 상기 사용자 단말은 상기 개인키를 암호화하여 상기 사용자 단말의 SE 영역에 저장하는 것을 특징으로 하는 방법
|
12 |
12
제 1 항에 있어서,상기 (c) 단계는,상기 사용자 단말이, 상기 비밀정보 조각들을 사용자 정보와 함께 전달하는 것을 특징으로 하는 방법
|
13 |
13
블록체인 기반 서명 및 암호화를 위한 키를 저장 및 복원하는 기능을 포함하는 사용자 단말에 있어서,데이터를 송수신하기 위한 통신부; 및(i) 블록체인 기반 서명 및 암호화를 위한 키 생성 요청에 응답하여, 시드를 바탕으로 블록체인 기반의 키 생성을 위한 알고리즘에 의해 상기 키를 생성하며, 상기 키를 상기 사용자 단말의 보안 영역에 저장하는 프로세스, (ii) 상기 키 또는 상기 키의 생성 및 복원에 이용되는 상기 시드를 소정 개수로 분할하여 각 분할된 조각 키 또는 조각 시드와 상기 키 또는 시드의 분할에 사용된 정보를 포함하는 비밀정보 조각들을 생성하는 프로세스 및 (iii) 상기 비밀정보 조각들 각각을 다수의 신뢰기관의 서버들 각각에 분산하여 전달하는 프로세스를 수행하기 위한 프로세서;를 포함하며,상기 (i) 프로세스에서, 상기 키 생성 요청은 상기 사용자 단말 내의 블록 체인 기반 지갑(Wallet) 애플리케이션을 통해 요청되며,상기 프로세서는, 상기 (i) 프로세스에서,상기 사용자 단말 내의 상기 블록 체인 기반 지갑 애플리케이션으로부터의 요청에 응답하여, 상기 사용자 단말 내의 클라이언트 애플리케이션으로 하여금 키 생성을 위한 알고리즘 또는 매개변수 정보를 상기 사용자 단말 내의 Applet으로 전송하도록 하고, 상기 Applet으로 하여금 상기 알고리즘 또는 상기 매개변수에 따라 상기 키를 생성하도록 하되,상기 클라이언트 애플리케이션은 상기 키 생성을 위한 알고리즘 또는 매개변수 정보를 상기 사용자 단말 내의 TSM(Trusted Service Manager) Agent로 전달하고, 상기 TSM Agent로 하여금 상기 클라이언트 애플리케이션으로부터 전달받은 상기 키 생성을 위한 알고리즘 또는 매개변수 정보를 상기 Applet으로 전송하도록 하여, 상기 Applet가 상기 알고리즘 또는 상기 매개변수에 따라 상기 키를 생성하도록 하며,상기 (iii) 프로세스에서,상기 TSM Agent로 하여금 상기 Applet에서 생성된 비밀정보 조각을 전달받도록 하여 외부 TSM 서버를 포함하는 상기 신뢰기관의 서버들에 분산하여 전달하도록 지원하는 것을 특징으로 하는 사용자 단말
|
14 |
14
삭제
|
15 |
15
삭제
|
16 |
16
삭제
|
17 |
17
제 13 항에 있어서,상기 프로세서는, 상기 (ii) 프로세스에서,아래 수학식을 통해 상기 키 또는 상기 시드를 소정 개수 n 개로 분할하고,여기서, x는 1003c#x003c#n 인 x번째 분할된 키 또는 시드 조각의 인덱스이며, s는 상기 키 또는 시드이고, p는 s003c#p 인 소수이며, k는 상기 분할된 상기 키 또는 시드를 복원하기 위한 비밀정보 조각들의 임계치 개수를 나타내는 것을 특징으로 하는 사용자 단말
|
18 |
18
제 13 항에 있어서, 상기 프로세서는,(iv) 상기 신뢰기관 서버들 중 적어도 하나로부터 소정 임계치 수 이상의 상기 비밀정보 조각들을 전달받는 프로세스; 및(v) 상기 소정 임계치 수 이상의 상기 비밀정보 조각들을 참조로, 상기 키 또는 상기 시드를 복원하는 프로세스;를 더 수행하는 것을 특징으로 하는 사용자 단말
|
19 |
19
제 13 항에 있어서,상기 (ii) 프로세스는,(ii_1) 상기 프로세서가, 상기 생성된 비밀정보 조각들을 중 소정 임계치 수 이상의 비밀정보 조각들을 결합하여 상기 키 또는 상기 시드가 복원되는지 여부를 확인하는 프로세스를 더 포함하는 것을 특징으로 하는 사용자 단말
|
20 |
20
제 13 항에 있어서,상기 프로세서는, 상기 (ii) 프로세스에서, 상기 비밀정보 조각들을 상기 사용자 단말 내부에 저장된 상기 신뢰기관의 공개키 정보를 이용하여 암호화하고,상기 (iii) 프로세서에서,상기 암호화된 비밀정보 조각들을 상기 신뢰기관의 서버들에 분산하여 전달하는 것을 특징으로 하는 사용자 단말
|
21 |
21
제 13 항에 있어서, 상기 프로세서는, 상기 (iii) 프로세스에서, 상기 비밀정보 조각들 중 적어도 하나를 상기 사용자 단말의 SE 영역에 저장하는 것을 특징으로 하는 사용자 단말
|
22 |
22
제 13 항에 있어서, 상기 프로세서는, 상기 (iii) 프로세스에서, 개인키를 상기 사용자 단말의 SE 영역에 저장하는 것을 특징으로 하는 사용자 단말
|
23 |
23
제 22 항에 있어서, 상기 사용자 단말은 상기 개인키를 암호화하여 상기 사용자 단말의 SE 영역에 저장하는 것을 특징으로 하는 사용자 단말
|
24 |
24
제 13 항에 있어서,상기 프로세서는,상기 (iii) 프로세스에서,상기 비밀정보 조각들을 사용자 정보와 함께 전달하는 것을 특징으로 하는 사용자 단말
|