1 |
1
블록체인 트랜잭션 데이터 저장 장치에 의하여 수행되는 블록체인 트랜잭션 데이터 저장 방법에 있어서,블록체인 트랜잭션들을 저장하는 적어도 하나의 블록 파일(block file)을 인코딩 블록 파일 대상(encoding block file target)으로 선택하는 단계;상기 인코딩 블록 파일 대상을 이용하여 패리티 청크들을 포함하는 인코딩된 청크들을 생성하는 단계; 및상기 인코딩된 청크들 중 적어도 하나와, 상기 인코딩된 청크들 중 적어도 하나를 저장할 블록체인 노드들 중 적어도 하나를 대응시키는 단계를 포함하는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
2 |
2
청구항 1에 있어서,상기 패리티 청크들은 M(M은 자연수)개이고, 상기 블록체인 노드들은 3M+1개이고, 상기 인코딩된 청크들은 3M+1개이고, 상기 인코딩된 청크들과 상기 블록체인 노드들은 1:1 대응되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
3 |
3
청구항 2에 있어서,상기 블록체인 노드들 각각은상기 인코딩된 청크들 중 상응하는 한 개를 위해서는 인코딩된 청크를 그대로 저장하고, 상기 한 개를 제외한 나머지 청크들 중 적어도 일부를 위해서는 해쉬값만 저장하는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
4 |
4
청구항 3에 있어서,상기 인코딩 블록 파일 대상에 포함된 블록들의 개수가 2M+1에 상응하는지 여부를 판단하는 단계; 및상기 인코딩 블록 파일 대상에 포함된 블록들의 개수가 2M+1에 상응하지 않는 경우, 상기 인코딩 블록 파일 대상에 포함된 블록들 및 상기 인코딩 블록 파일 대상에 포함된 블록들 중 일부인 복제 블록을 이용하여 2M+1개의 인코딩 대상 블록들을 생성하는 단계를 더 포함하고,상기 인코딩된 청크들은 상기 인코딩 대상 블록들을 이용한 인코딩을 수행하여 생성되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
5 |
5
청구항 4에 있어서,상기 복제 블록은접근 빈도에 기반하여 상기 인코딩 블록 파일 대상에 포함된 블록들 중에서 선택되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
6 |
6
청구항 2에 있어서,상기 인코딩 블록 파일 대상은2M+1개를 초과하지 않는 개수의 블록들을 포함하는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
7 |
7
청구항 6에 있어서,2M+1개를 초과하지 않는 개수의 블록들은,사이즈가 모두 동일하지 않고, 상기 인코딩된 청크들을 생성하기 전에 최대 블록 사이즈를 기준으로 패딩되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
8 |
8
청구항 1에 있어서,상기 인코딩 블록 파일 대상은상기 블록체인 트랜잭션들을 저장하는 블록 파일들 중에서, 상기 블록 파일들 또는 상기 블록 파일들이 포함하는 블록들에 대한 접근 빈도들을 고려하여 선택되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
9 |
9
청구항 3에 있어서,상기 해쉬값은다른 노드에서 읽어온 블록을 검증하는데 사용되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
10 |
10
청구항 4에 있어서,상기 인코딩된 청크들 중 2M+1개 이상은상기 인코딩 대상 블록들을 복원하는 디코딩에 사용되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 방법
|
11 |
11
하나 이상의 프로세서; 및상기 하나 이상의 프로세서에 의해 실행되는 적어도 하나 이상의 프로그램을 저장하는 실행메모리를 포함하고,상기 적어도 하나 이상의 프로그램은블록체인 트랜잭션들을 저장하는 적어도 하나의 블록 파일(block file)을 인코딩 블록 파일 대상(encoding block file target)으로 선택하고,상기 인코딩 블록 파일 대상을 이용하여 패리티 청크들을 포함하는 인코딩된 청크들을 생성하고,상기 인코딩된 청크들 중 적어도 하나와, 상기 인코딩된 청크들 중 적어도 하나를 저장할 블록체인 노드들 중 적어도 하나를 대응시키는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
12 |
12
청구항 11에 있어서,상기 패리티 청크들은 M(M은 자연수)개이고, 상기 블록체인 노드들은 3M+1개이고, 상기 인코딩된 청크들은 3M+1개이고, 상기 인코딩된 청크들과 상기 블록체인 노드들은 1:1 대응되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
13 |
13
청구항 12에 있어서,상기 블록체인 노드들 각각은상기 인코딩된 청크들 중 상응하는 한 개를 위해서는 인코딩된 청크를 그대로 저장하고, 상기 한 개를 제외한 나머지 청크들 중 적어도 일부를 위해서는 해쉬값만 저장하는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
14 |
14
청구항 13에 있어서,상기 적어도 하나 이상의 프로그램은상기 인코딩 블록 파일 대상에 포함된 블록들의 개수가 2M+1에 상응하는지 여부를 판단하고,상기 인코딩 블록 파일 대상에 포함된 블록들의 개수가 2M+1에 상응하지 않는 경우, 상기 인코딩 블록 파일 대상에 포함된 블록들 및 상기 인코딩 블록 파일 대상에 포함된 블록들 중 일부인 복제 블록을 이용하여 2M+1개의 인코딩 대상 블록들을 생성하고,상기 인코딩된 청크들은 상기 인코딩 대상 블록들을 이용한 인코딩을 수행하여 생성되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
15 |
15
청구항 14에 있어서,상기 복제 블록은접근 빈도에 기반하여 상기 인코딩 블록 파일 대상에 포함된 블록들 중에서 선택되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
16 |
16
청구항 12에 있어서,상기 인코딩 블록 파일 대상은사이즈가 모두 동일하지 않은 블록들을 포함하고, 상기 사이즈가 모두 동일하지 않은 블록들은 상기 인코딩된 청크들을 생성하기 전에 최대 블록 사이즈를 기준으로 패딩되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
17 |
17
청구항 11에 있어서,상기 인코딩 블록 파일 대상은상기 블록체인 트랜잭션들을 저장하는 블록 파일들 중에서, 상기 블록 파일들 또는 상기 블록 파일들이 포함하는 블록들에 대한 접근 빈도들을 고려하여 선택되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
18 |
18
청구항 13에 있어서,상기 해쉬값은다른 노드에서 읽어온 블록을 검증하는데 사용되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
19 |
19
청구항 14에 있어서,상기 인코딩된 청크들 중 2M+1개 이상은상기 인코딩 대상 블록들을 복원하는 디코딩에 사용되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 저장 장치
|
20 |
20
인코딩된 청크들 중 제1 청크를 그대로 저장하고, 상기 제1 청크를 제외한 나머지 청크들에 상응하는 해쉬값들을 저장하는 제1 블록체인 노드; 및상기 제1 청크와 상이한 제2 청크를 그대로 저장하고, 상기 제2 청크를 제외한 나머지 청크들에 상응하는 해쉬값들을 저장하는 제2 블록체인 노드를 포함하고,상기 인코딩된 청크들은, 각각 블록체인 트랜잭션들을 저장하는 블록 파일들(block files) 중에서 선택된 인코딩 블록 파일 대상(encoding block file target)을 이용하여 수행된 인코딩에 기반하여 생성되는 것을 특징으로 하는 블록체인 트랜잭션 데이터 분산 저장 시스템
|