블레이크 (해시 함수)
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
블레이크는 NIST 해시 함수 경연대회에 제출된 해시 함수로, 장 필립 오마송, 루카 헨젠, 윌리 마이어, 라파엘 C.-W. 판이 개발했다. 최종 라운드에 진출했으나 SHA-3 알고리즘으로 케캑에 패했다. BLAKE를 개선한 BLAKE2는 MD5, SHA-1, SHA-2보다 빠르며 SHA-3와 유사한 보안을 제공하며, BLAKE3은 BLAKE2를 기반으로 병렬 처리, 확장 가능한 출력 함수 등 다양한 기능을 제공한다. 블레이크는 아르곤2, 셰프, FreeBSD 포트 등 다양한 분야에서 활용되며, 한국의 아이콘(ICON)과 클레이튼(Klaytn)에서도 사용되었다.
더 읽어볼만한 페이지
- 체크섬 알고리즘 - MD5
MD5는 로널드 리베스트 교수가 개발한 128비트 해시 값 생성 암호화 해시 함수이나, 보안 취약점으로 인해 현재는 보안이 중요한 분야에서는 사용이 중단되었다. - 체크섬 알고리즘 - 범용 상품 부호
범용 상품 부호(UPC)는 소매점에서 상품을 식별하기 위해 상품 포장에 인쇄되는 널리 사용되는 바코드의 일종으로, 12자리 숫자로 구성된 UPC-A를 포함한 다양한 변형이 존재한다. - 암호화 해시 함수 - RIPEMD
RIPEMD는 MD4를 기반으로 1992년 설계된 암호화 해시 함수로, 보안 취약점 보완을 위해 RIPEMD-128, RIPEMD-160, RIPEMD-256, RIPEMD-320 등의 변형이 개발되었으며, 특히 RIPEMD-160은 160비트 해시 값을 생성하고 다양한 라이브러리에서 지원되지만 보안성 우려가 제기되고 있다. - 암호화 해시 함수 - MD5
MD5는 로널드 리베스트 교수가 개발한 128비트 해시 값 생성 암호화 해시 함수이나, 보안 취약점으로 인해 현재는 보안이 중요한 분야에서는 사용이 중단되었다.
블레이크 (해시 함수) | |
---|---|
일반 정보 | |
이름 | BLAKE |
유형 | 암호화 해시 함수 |
디자이너 | 장필리프 오마송, 루카 헨첸, 빌리 마이어, 라파엘 C.-W. 팬 |
파생 | BLAKE2 |
인증 | SHA-3 최종 후보 |
다이제스트 크기 | 224, 256, 384 또는 512 비트 |
구조 | HAIFA 구성 |
라운드 수 | 14 또는 16 |
속도 | 코어 2에서 BLAKE-256의 경우 8.4 cpb, BLAKE-512의 경우 7.8 cpb |
2. 역사
블레이크(BLAKE)는 장 필립 오마송, 루카 헨젠, 윌리 마이어, 라파엘 C.-W. 판이 NIST 해시 함수 경연대회에 제출한 해시 함수이다.[30] 2008년 NIST 해시 함수 경연 대회에는 51개의 후보가 있었으며, 블레이크는 최종 라운드에 진출한 5개 후보 중 하나였다. 하지만 2012년에 케캑이 SHA-3 알고리즘으로 선정되면서 블레이크는 탈락했다.[30]
2. 1. BLAKE
장 필립 오마송, 루카 헨젠, 윌리 마이어, 라파엘 C.-W. 판이 NIST 해시 함수 경연대회에 제출했다.[30] 2008년 NIST 해시 함수 경연 대회에 51개 후보 중 하나로 선정되었으며, 최종 라운드에 진출했지만 2012년 케캑에 패배하여 SHA-3로 선정되지 못했다.[30]2. 2. BLAKE2
2012년 12월 21일, BLAKE의 개선판인 BLAKE2가 발표되었다. 장-필립 오마송, 사무엘 네베스, 주코 윌콕스-오헤른, 크리스찬 위너레인이 설계하였으며, 실제로 깨졌거나 이론적으로 취약점이 발견된 해시 함수인 MD5, SHA-1을 대체하기 위해 개발되었다.[30] 64비트 아키텍처에 최적화된 '''BLAKE2b'''는 1에서 64바이트(512비트) 사이, 32비트 아키텍처에 최적화된 '''BLAKE2s'''는 1에서 32바이트(256비트) 사이의 임의 길이 해시를 출력할 수 있다.멀티 코어 프로세서에서의 병렬 처리를 통한 고속화를 위해 '''BLAKE2bp''' 및 '''BLAKE2sp''' 버전도 존재한다.
BLAKE2는 BLAKE에서 다음과 같이 개선되었다.
- BLAKE 라운드 함수의 고정 워드의 메시지 워드 추가 제거.
- 두 개의 로테이트량 변경.
- 패딩 단순화.
- 초기화 벡터와의 배타적 논리합을 취한 매개 변수 블록 추가.
- 라운드 수 감소 (BLAKE-256/512의 14/16에서 BLAKE2s/BLAKE2b는 10/12).
2. 3. BLAKE3
'''블레이크3'''(BLAKE3)은 잭 오코너, 장-필리프 오마송, 사무엘 네베스, 주코 윌콕스-오헌이 BLAKE2와 바오를 기반으로 만든 암호화 해시 함수이다.[32] 2020년 1월 9일 리얼 월드 크립토(Real World Crypto)에서 발표되었다.[33]블레이크3은 블레이크 및 BLAKE2와 달리 단일 알고리즘으로 병렬성, XOF, KDF, PRF, MAC 등 다양한 기능을 제공한다. 이진 트리 구조를 채택하여 입력 데이터가 충분히 길면 사실상 무제한의 병렬 처리(SIMD 및 멀티스레딩)가 가능하다. 공식 러스트 (프로그래밍 언어) 및 C (프로그래밍 언어) 구현[34]은 공개 도메인(CC0)과 아파치 라이선스로 이중 라이선스가 부여된다.[35]
블레이크3는 빠른 속도를 목표로 설계되어 BLAKE2보다 몇 배 더 빠르다. 블레이크3 압축 기능은 BLAKE2s의 압축 기능과 유사하며, 라운드 수를 10에서 7로 줄여 속도를 높였다. 이는 현재 암호화 방식이 지나치게 보수적이라는 가정에 기반한다.[36] 머클 트리 형식은 병렬 처리 외에도 검증된 스트리밍(즉석 검증) 및 증분 업데이트를 지원한다.[34]
3. 알고리즘
BLAKE는 SHA-2와 유사하게 32비트 워드를 사용하는 버전과 64비트 워드를 사용하는 버전으로 나뉜다. 핵심 블록 변환은 16개의 입력 워드를 16개의 작업 변수와 결합하지만, 블록 간에는 8개의 워드(256 또는 512비트)만 유지된다.
BLAKE는 16개의 상수 워드(π의 소수 부분의 선행 512 또는 1024비트)와 다음과 같은 10개의 16엘리먼트 순열 테이블을 사용한다.
σ[0] | σ[1] | σ[2] | σ[3] | σ[4] | σ[5] | σ[6] | σ[7] | σ[8] | σ[9] |
---|---|---|---|---|---|---|---|---|---|
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 14 10 4 8 9 15 13 6 1 12 0 2 11 7 5 3 | 11 8 12 0 5 2 15 13 10 14 3 6 7 1 9 4 | 7 9 3 1 13 12 11 14 2 6 5 10 4 0 15 8 | ||||||
9 0 5 7 2 4 10 15 14 1 11 12 6 8 3 13 | 2 12 6 10 0 11 8 3 4 13 7 5 15 14 1 9 | 12 5 1 15 14 13 4 10 0 7 6 3 9 2 8 11 | 13 11 7 14 12 1 3 9 5 0 15 4 8 6 2 10 | ||||||
6 15 14 9 11 3 0 8 12 2 13 7 1 4 10 5 | 10 2 8 4 7 6 1 5 15 11 9 14 3 12 13 0 |
핵심 연산은 ChaCha의 쿼터 라운드와 동일하며, 4-워드 열 또는 대각선 `a b c d`에 적용되며, 2개의 메시지 워드 `m[]` 및 2개의 상수 워드 `n[]`와 결합된다. 전체 라운드당 8번 수행되는 과정은 다음과 같다.
```
j ← σ[r%10][2×i]
k ← σ[r%10][2×i+1]
a ← a + b + (m[j] ⊕ n[k])
d ← (d ⊕ a) >>> 16
c ← c + d
b ← (b ⊕ c) >>> 12
a ← a + b + (m[k] ⊕ n[j])
d ← (d ⊕ a) >>> 8
c ← c + d
b ← (b ⊕ c) >>> 7
```
위에서 `r`은 라운드 번호(0–13)이고 `i`는 0에서 7까지 변동한다.
ChaCha 쿼터 라운드 함수와 비교하면, 메시지 워드의 추가가 이루어지고 회전 방향이 반전되었다는 차이점이 있다. "BLAKE는 반대 방향으로 회전이 이루어진 ChaCha 스트림 암호의 순열을 재사용합니다. 일부에서는 고급 최적화를 의심했지만, 실제로는 원래 BLAKE 사양의 오타에서 비롯되었습니다."[1]
64비트 버전(ChaCha에는 존재하지 않음)은 회전량이 각각 32, 25, 16 및 11이고 라운드 수는 16으로 증가한다.
3. 1. BLAKE
BLAKE는 NIST 해시 함수 경연대회에 출품된 해시 함수 중 하나이다. ChaCha의 쿼터 라운드 함수를 기반으로 하며, 32비트 버전(BLAKE-224, BLAKE-256)과 64비트 버전(BLAKE-384, BLAKE-512) 두 가지 변형이 있다. SHA-2와 유사하게, BLAKE는 32비트 워드를 사용하는 버전과 64비트 워드를 사용하는 버전으로 나뉜다.BLAKE는 16개의 상수 워드(π의 소수 부분)와 10개의 16엘리먼트 순열 테이블을 사용한다. 핵심 연산은 4-워드 열 또는 대각선에 적용되며, 메시지 워드와 상수 워드를 결합한다.
핵심 연산 (32비트 버전, BLAKE-256/224):ChaCha 쿼터 라운드와 유사하지만, 다음과 같은 차이점이 있다.
- 메시지 워드의 덧셈이 추가되었다.
- 회전 방향이 반대이다.
각 라운드는 다음 단계를 8번 반복한다 (`r`은 라운드 번호 0-13, `i`는 반복 횟수 0-7):
1. `j ← σ[r%10][2×i]`
2. `k ← σ[r%10][2×i+1]`
3. `a ← a + b + (m[j] ⊕ n[k])`
4. `d ← (d ⊕ a) >>> 16`
5. `c ← c + d`
6. `b ← (b ⊕ c) >>> 12`
7. `a ← a + b + (m[k] ⊕ n[j])`
8. `d ← (d ⊕ a) >>> 8`
9. `c ← c + d`
10. `b ← (b ⊕ c) >>> 7`
여기서 사용되는 상수 `n`은 다음과 같다.
```
n = 0x243f6a88 0x85a308d3 0x13198a2e 0x03707344
0xa4093822 0x299f31d0 0x082efa98 0xec4e6c89
0x452821e6 0x38d01377 0xbe5466cf 0x34e90c6c
0xc0ac29b7 0xc97c50dd 0x3f84d5b5 0xb5470917
```
64비트 버전 (BLAKE-512/384):32비트 버전과 본질적으로 같지만, 다음 사항이 다르다.
- 회전량이 32, 25, 16, 11로 변경되었다.
- 라운드 수가 14에서 16으로 증가되었다.
- 상수 `n`이 다음과 같이 변경되었다.
```
n = 0x243f6a8885a308d3 0x13198a2e03707344 0xa4093822299f31d0 0x082efa98ec4e6c89
0x452821e638d01377 0xbe5466cf34e90c6c 0xc0ac29b7c97c50dd 0x3f84d5b5b5470917
0x9216d5d98979fb1b 0xd1310ba698dfb5ac 0x2ffd72dbd01adfb7 0xb8e1afed6a267e96
0xba7c9045f12c7f99 0x24a19947b3916cf7 0x0801f2e2858efc16 0x636920d871574e69
```
순열 테이블 (σ):BLAKE는 다음과 같은 10개의 16-엘리먼트 순열 테이블을 사용한다.
σ[0] | σ[1] | σ[2] | σ[3] | σ[4] | σ[5] | σ[6] | σ[7] | σ[8] | σ[9] |
---|---|---|---|---|---|---|---|---|---|
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 14 10 4 8 9 15 13 6 1 12 0 2 11 7 5 3 | 11 8 12 0 5 2 15 13 10 14 3 6 7 1 9 4 | 7 9 3 1 13 12 11 14 2 6 5 10 4 0 15 8 | ||||||
9 0 5 7 2 4 10 15 14 1 11 12 6 8 3 13 | 2 12 6 10 0 11 8 3 4 13 7 5 15 14 1 9 | 12 5 1 15 14 13 4 10 0 7 6 3 9 2 8 11 | 13 11 7 14 12 1 3 9 5 0 15 4 8 6 2 10 | ||||||
6 15 14 9 11 3 0 8 12 2 13 7 1 4 10 5 | 10 2 8 4 7 6 1 5 15 11 9 14 3 12 13 0 |
BLAKE는 2008년 NIST 해시 함수 경연대회에 제출되었으며, 최종 라운드에 진출한 5개 후보 중 하나였으나, 2012년에 케캑에 패배하여 SHA-3 알고리즘으로 선정되지 못했다.[1]
3. 2. BLAKE2
장-필립 오마송, 사무엘 네베스, 주코 윌콕스-오헤른, 크리스찬 위너레인은 2012년 12월 21일에 BLAKE의 개선판인 BLAKE2를 발표했다[30]. BLAKE2는 MD5, SHA-1과 같이 실제로 깨졌거나 이론적으로 취약한 해시 함수를 대체하기 위해 설계되었다.BLAKE2는 크게 두 가지 변형으로 나뉜다.
- '''BLAKE2b''': 64비트 버전으로, 1바이트에서 64바이트(512비트) 사이의 임의 길이 해시를 출력할 수 있다.
- '''BLAKE2s''': 32비트 버전으로, 1바이트에서 32바이트(256비트) 사이의 임의 길이 해시를 출력할 수 있다.
멀티 코어 프로세서에서 병렬 처리를 통해 속도를 높인 '''BLAKE2bp'''와 '''BLAKE2sp''' 버전도 존재한다.
BLAKE2는 BLAKE에서 다음과 같은 점이 개선되었다.
- BLAKE 라운드 함수에서 메시지 단어에 상수를 추가하는 부분이 제거되었다.
- 두 개의 회전량이 변경되었다.
- 패딩 방식이 단순화되었다.
- 초기화 벡터와 배타적 논리합 연산을 하는 매개변수 블록이 추가되었다.
- 라운드 수가 BLAKE-256 (14라운드) 및 BLAKE-512 (16라운드)에서 BLAKE2s (10라운드) 및 BLAKE2b (12라운드)로 감소되었다.
BLAKE2b의 초기화 벡터(IV)는 SHA-512와 동일하며, 처음 8개 소수의 제곱근의 소수 부분에서 얻어진 투명한 값이다.
BLAKE2b는 12 라운드를, BLAKE2s는 10 라운드를 사용한다.
3. 2. 1. BLAKE2b 알고리즘 (의사 코드)
BLAKE2b는 SHA-2와 유사하게 64비트 워드를 사용하여 최대 512비트 길이의 해시를 계산하는 알고리즘이다. 핵심 블록 변환은 16개의 입력 워드를 16개의 작업 변수와 결합하지만, 블록 간에는 8개의 워드(512비트)만 유지된다. 16개의 상수 워드(π의 소수 부분의 선행 1024비트) 테이블과 10개의 16엘리먼트 순열 테이블을 사용한다.BLAKE2b는 ChaCha 암호화 알고리즘의 쿼터 라운드 함수와 유사한 핵심 연산을 사용한다. 이 연산은 4개의 워드 `a`, `b`, `c`, `d`에 적용되며, 2개의 메시지 워드 `m[]`, 2개의 상수 워드 `n[]`와 결합된다. 전체 라운드당 8번 수행된다.
```
j ← σ[r%10][2×i] // 인덱스 계산
k ← σ[r%10][2×i+1]
a ← a + b + (m[j] ⊕ n[k]) // 단계 1 (입력 포함)
d ← (d ⊕ a) >>> 16
c ← c + d // 단계 2 (입력 없음)
b ← (b ⊕ c) >>> 12
a ← a + b + (m[k] ⊕ n[j]) // 단계 3 (입력 포함)
d ← (d ⊕ a) >>> 8
c ← c + d // 단계 4 (입력 없음)
b ← (b ⊕ c) >>> 7
```
여기서 `r`은 라운드 번호(0–15)이고, `i`는 0에서 7까지 변동한다. ChaCha 쿼터 라운드 함수와 비교했을 때, 메시지 워드 추가 및 회전 방향이 반전되었다는 차이점이 있다.[1]
64비트 버전은 회전량이 각각 32, 25, 16, 11이고 라운드 수가 16으로 증가한다는 점을 제외하면 ChaCha와 동일하다.
Mix 함수는 Compress 함수에 의해 호출되며, 메시지에서 가져온 두 개의 8바이트 단어를 해시 상태에 혼합한다.
함수 Mix
입력:
- Va, Vb, Vc, Vd: 작업 벡터 V에서 가져온 8바이트 단어 4개
- x, y: 패딩된 메시지 m에서 가져온 8바이트 단어 2개
출력:
- Va, Vb, Vc, Vd: Va, Vb, Vc, Vd의 수정된 버전
```
Va ← Va + Vb + x // 입력 포함
Vd ← (Vd xor Va) 오른쪽 회전 32
Vc ← Vc + Vd // 입력 없음
Vb ← (Vb xor Vc) 오른쪽 회전 24
Va ← Va + Vb + y // 입력 포함
Vd ← (Vd xor Va) 오른쪽 회전 16
Vc ← Vc + Vd // 입력 없음
Vb ← (Vb xor Vc) 오른쪽 회전 63
```
결과 ← Va, Vb, Vc, Vd
3. 3. BLAKE3
'''블레이크3'''(BLAKE3)은 잭 오코너, 장 필립 오마송, 사무엘 네베스, 주코 윌콕스-오헌이 만든 바오 및 BLAKE2를 기반으로 하는 암호화 해시 함수이다.[32] 2020년 1월 9일 리얼 월드 크립토(Real World Crypto)에서 발표되었다.[33]BLAKE3은 여러 변형이 있는 알고리즘 제품군인 BLAKE 및 BLAKE2와 달리 병렬성, XOF, KDF, PRF, MAC 등 많은 바람직한 기능을 갖춘 단일 알고리즘이다. BLAKE3은 이진 트리 구조를 가지므로 입력 시간이 충분히 길면 사실상 무제한의 병렬 처리(SIMD 및 멀티스레딩 모두)를 지원한다. 공식 러스트 (프로그래밍 언어) 및 C (프로그래밍 언어) 구현[34]은 공개 도메인(CC0)과 아파치 라이선스로 이중 라이선스가 부여된다.[35]
BLAKE3는 최대한 빠른 속도로 설계되었다. BLAKE2보다 지속적으로 몇 배 더 빠르다. BLAKE3 압축 기능은 BLAKE2s의 압축 기능을 기반으로 하며, 가장 큰 차이점은 라운드 수가 10에서 7로 줄어든다는 점이다. 이는 현재 암호화 방식이 너무 보수적이라는 가정에 따른 변경이다.[36] 머클 트리 형식을 사용하므로 병렬 처리를 제공하는 것 외에도 검증된 스트리밍(즉석 검증) 및 증분 업데이트도 허용한다.[34]
4. 수정
NIST 해시 함수 경연대회를 통해 출품자들은 발견된 문제들을 해결하기 위해 알고리즘을 "조정"할 수 있었다. BLAKE에 가해진 변경 사항은 라운드 수를 10/14에서 14/16으로 늘린 것이다. 이는 속도를 유지하면서 보안에 대해 더 보수적으로 대처하기 위함이었다.[30]
2012년 12월 21일, BLAKE의 개선판인 BLAKE2가 발표되었다.[30] BLAKE2에서는 BLAKE로부터 다음의 수정이 이루어졌다.
- BLAKE의 라운드 함수에 있던 고정 워드의 메시지 워드에 대한 추가가 제거되었다.
- 두 개의 로테이트량이 변경되었다.
- 패딩이 단순화되었다.
- 초기화 벡터와의 배타적 논리합을 취한 매개 변수 블록이 추가되었다.
- 라운드 수가 14 (BLAKE-256) 또는 16 (BLAKE-512)에서 10 (BLAKE2s) 또는 12 (BLAKE2b)로 감소했다.
5. 해시 값 예시
해시 함수 | 해시 값 |
---|---|
BLAKE-224("") | 7dc5313b1c04512a174bd6503b89607aecbee0903d40a8a569c94eed |
BLAKE-256("") | 716f6e863f744b9ac22c97ec7b76ea5f5908bc5b2f67c61510bfc4751384ea7a |
BLAKE-384("") | c6cbd89c926ab525c242e6621f2f5fa73aa4afe3d9e24aed727faaadd6af38b620bdb623dd2b4788b1c8086984af8706 |
BLAKE-512("") | a8cfbbd73726062df0c6864dda65defe58ef0cc52a5625090fa17601e1eecd1b628e94f396ae402a00acc9eab77b4d4c2e852aaaa25a636d80af3fc7913ef5b8 |
BLAKE2s-224("") | 1fa1291e65248b37b3433475b2a0dd63d54a11ecc4e3e034e7bc1ef4 |
BLAKE2s-256("") | 69217a3079908094e11121d042354a7c1f55b6482ca1a51e1b250dfd1ed0eef9 |
BLAKE2b-384("") | b32811423377f52d7862286ee1a72ee540524380fda1724a6f25d7978c6fd3244a6caf0498812673c5e05ef583825100 |
BLAKE2b-512("") | 786a02f742015903c6c6fd852552d272912f4740e15847618a86e217f71f5419d25e1031afee585313896444934eb04b903a685b1448b755d56f701afe9be2ce |
"The quick brown fox jumps over the lazy dog" 문장에서 단일 비트를 변경하면 출력되는 각 비트가 50% 확률로 변경되어 눈사태 효과를 보인다.
해시 함수 | 해시 값 |
---|---|
BLAKE-512("The quick brown fox jumps over the lazy dog") | 1f7e26f63b6ad25a0896fd978fd050a1766391d2fd0471a77afb975e5034b7ad2d9ccf8dfb47abbbe656e1b82fbc634ba42ce186e8dc5e1ce09a885d41f43451 |
BLAKE-512("The quick brown fox jumps over the lazy dof") | a701c2a1f9baabd8b1db6b75aee096900276f0b86dc15d247ecc03937b370324a16a4ffc0c3a85cd63229cfa15c15f4ba6d46ae2e849ed6335e9ff43b764198a |
BLAKE2b-512("The quick brown fox jumps over the lazy dog") | a8add4bdddfd93e4877d2746e62817b116364a1fa7bc148d95090bc7333b3673f82401cf7aa2e4cb1ecd90296e3f14cb5413f8ed77be73045b13914cdcd6a918 |
BLAKE2b-512("The quick brown fox jumps over the lazy dof") | ab6b007747d8068c02e25a6008db8a77c218d94f3b40d2291a7dc8a62090a744c082ea27af01521a102e42f480a31e9844053f456b4b41e8aa78bbe5c12957bb |
6. 활용 사례
- 아르곤2(Argon2)는 패스워드 해싱 경연대회 우승작으로, BLAKE2b를 사용한다.[34]
- 셰프(Chef)의 Habitat 배포 시스템은 패키지 서명에 BLAKE2b를 사용한다.[34]
- FreeBSD 포트 패키지 관리 도구는 BLAKE2b를 사용한다.[34]
- GNU 코어 유틸리티는 b2sum 명령에 BLAKE2b를 구현한다.[34]
- IPFS는 트리 해싱에 BLAKE2b 사용을 허용한다.[34]
- librsync는 BLAKE2b를 사용한다.[34]
- 노이즈 (암호 프로토콜)(Noise (cryptographic protocol))는 왓츠앱(WhatsApp)에서 사용되며, BLAKE2를 옵션으로 포함한다.[34]
- RAR 아카이브 형식 버전 5는 기본 32비트 CRC32 대신 선택적으로 256비트 BLAKE2sp 파일 체크섬을 지원하며, WinRAR v5+에서 구현되었다.[34]
- 7-Zip은 (RAR 아카이브 형식 버전 5를 지원하기 위해) "CRC SHA" 컨텍스트 메뉴를 통해 탐색기 셸에서 각 파일에 대한 BLAKE2sp 서명을 생성할 수 있으며, '*'를 선택한다.[34]
- rmlint는 중복 파일 감지에 BLAKE2b를 사용한다.[34]
- 와이어가드(WireGuard)는 해싱에 BLAKE2s를 사용한다.[34]
- 지캐시(Zcash)는 암호화폐이며, 이퀴해시(Equihash) 작업 증명과 키 유도 함수로 BLAKE2b를 사용한다.[34]
- 나노(NANO)는 암호화폐이며, 작업 증명, 디지털 서명 해싱, 그리고 키 유도 함수로 BLAKE2b를 사용한다.[34]
- 폴카닷(Polkadot)은 멀티 체인 블록체인으로, BLAKE2b를 해싱 알고리즘으로 사용한다.[34]
- 카데나 (암호화폐)(Kadena)는 확장 가능한 작업 증명 블록체인으로, Blake2s_256을 해싱 알고리즘으로 사용한다.[34]
- PCI 볼트(PCI Vault)는 PCI 준수 PCD 토큰화를 목적으로 BLAKE2b를 해싱 알고리즘으로 사용한다.[34]
- 에르고(Ergo)는 암호화폐이며, Autolykos라고 하는 해싱 알고리즘의 서브루틴으로 BLAKE2b256을 사용한다.[34]
- 리눅스 커널 버전 5.17은 난수 생성기의 엔트로피 풀 해싱에 SHA-1을 BLAKE2s로 대체했다.[34]
- 디지털 상거래를 위한 개방형 네트워크(Open Network for Digital Commerce)는 인도 정부의 이니셔티브로, API 요청 서명에 BLAKE-512를 사용한다.[34]
- 체크섬(checksum)은 윈도우 파일 해싱 프로그램으로, BLAKE2s를 알고리즘 중 하나로 가지고 있다.[34]
7. 구현 라이브러리
Botan, Bouncy Castle, Crypto++, Libgcrypt, libsodium, OpenSSL, wolfSSL 등에서 BLAKE2 구현을 제공한다.[4] BLAKE는 Botan, Bouncy Castle, Crypto++, Libgcrypt, libsodium, OpenSSL, LibreSSL, wolfSSL 등에서 지원한다.
참조
[1]
서적
Crypto Dictionary: 500 Tasty Tidbits for the Curious Cryptographer
No Starch Press
[2]
웹사이트
BLAKE2 – an alternative to MD5/SHA-1
https://blake2.net/a[...]
[3]
웹사이트
introducing BLAKE2 – an alternative to SHA-3, SHA-2 and MD5
http://lists.randomb[...]
2012-12-21
[4]
웹사이트
BLAKE2 official implementations
https://github.com/B[...]
2019-07-07
[5]
웹사이트
BLAKE2
https://blake2.net/
[6]
간행물
BLAKE2: simpler, smaller, fast as MD5
https://eprint.iacr.[...]
IACR
[7]
웹사이트
BLAKE2X
https://blake2.net/b[...]
[8]
IETF
The BLAKE2 Cryptographic Hash and Message Authentication Code (MAC)
IETF
2015-12-04
[9]
웹사이트
About Chef Habitat
https://docs.chef.io[...]
[10]
웹사이트
coreutils/src/blake2/
https://github.com/c[...]
[11]
웹사이트
librsync/src/blake2/
https://github.com/l[...]
[12]
웹사이트
WhatsApp Security Whitepaper
https://www.whatsapp[...]
[13]
웹사이트
WinRAR archiver, a powerful tool to process RAR and ZIP files
http://rarsoft.com/r[...]
[14]
웹사이트
Igor Pavlov's response to a user request for BLAKE3 support in 7-Zip
https://sourceforge.[...]
[15]
웹사이트
rmlint — rmlint (2.8.0 Maidenly Moose) documentation
https://rmlint.readt[...]
[16]
웹사이트
WireGuard: Next Generation Kernel Network Tunnel
https://www.wireguar[...]
[17]
웹사이트
work
https://docs.nano.or[...]
[18]
웹사이트
signatures
https://docs.nano.or[...]
[19]
웹사이트
key derivation
https://docs.nano.or[...]
[20]
웹사이트
Autolykos: The Ergo Platform PoW Puzzle
https://ergoplatform[...]
[21]
웹사이트
Linux 5.17 Random Number Generator Seeing Speed-Ups, Switching From SHA1 To BLAKE2s
https://www.phoronix[...]
[22]
웹사이트
Subscriber Signing - Beckn
https://developers.b[...]
[23]
웹사이트
checksum for Windows
https://corz.org/win[...]
[24]
웹사이트
BLAKE3 – one function, fast everywhere
https://github.com/B[...]
[25]
웹사이트
An earlier version of Bao specified its own custom tree mode, which eventually grew into BLAKE3.
https://github.com/o[...]
[26]
웹사이트
JPA and I announced BLAKE3 at the RWC lightning talks....
https://news.ycombin[...]
[27]
웹사이트
BLAKE3 official implementations
https://github.com/B[...]
2020-01-12
[28]
웹사이트
This work is released into the public domain with CC0 1.0. Alternatively, it is licensed under the Apache License 2.0.
https://github.com/B[...]
[29]
conference
Too Much Crypto
https://eprint.iacr.[...]
2020
[30]
뉴스
blake2-an-alternative-to-sha-3-sha-2-and-md5-announced
http://www.paritynew[...]
paritynews.com
[31]
웹사이트
暗号学的ハッシュ関数「BLAKE3 1.0」が公開 | OSDN Magazine
https://mag.osdn.jp/[...]
2022-04-28
[32]
웹인용
An earlier version of Bao specified its own custom tree mode, which eventually grew into BLAKE3.
https://github.com/o[...]
[33]
웹인용
JPA and I announced BLAKE3 at the RWC lightning talks....
https://news.ycombin[...]
[34]
웹인용
BLAKE3 official implementations
https://github.com/B[...]
2020-01-12
[35]
웹인용
This work is released into the public domain with CC0 1.0. Alternatively, it is licensed under the Apache License 2.0.
https://github.com/B[...]
[36]
간행물
Too Much Crypto
https://eprint.iacr.[...]
2020
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com