암호화 난스
Cryptographic nonce암호학에서 난스(nonce)는 암호 통신에서 한 [1]번만 사용할 수 있는 임의의 번호입니다.오래된 통신을 재생 공격에 재사용할 수 없도록 하기 위해 인증 프로토콜에서 발행되는 랜덤 또는 의사 랜덤 번호인 경우가 많습니다.초기화 벡터 및 암호화 해시 함수로도 유용합니다.
정의.
난스는 암호화 통신에서 난스 워드의 정신으로 한 번만 사용되는 임의의 번호입니다.대부분의 경우 랜덤 또는 의사 난수입니다.많은 난스에는 정확한 타이밍을 확보하기 위한 타임스탬프도 포함되어 있습니다.다만, 이 타임스탬프에는 조직간의 클럭 동기화가 필요합니다.클라이언트 난스('cnonce')를 추가하면 다이제스트액세스 인증에 실장되어 있는 몇 가지 방법으로 보안이 향상됩니다.난스가 1회만 사용되도록 하려면 시간 변수(값의 적절한 세분화된 타임스탬프 포함)이거나 이전에 생성된 값을 반복할 가능성이 거의 없는 빈도로 충분한 랜덤비트를 사용하여 생성해야 합니다.일부 저자는 의사 난수성(또는 예측 불가능성)을 [2]난수에 대한 요구사항으로 정의한다.
사용.
인증
인증 프로토콜은 재생 공격에서 이전 통신을 재사용할 수 없도록 하기 위해 난스를 사용할 수 있습니다.예를 들어 난스는 HTTP 다이제스트액세스 인증에서 패스워드의 MD5 다이제스트를 계산하기 위해 사용됩니다.401 인증 챌린지 응답 코드가 표시될 때마다 난스가 다르기 때문에 리플레이 공격이 사실상 불가능합니다.인터넷을 통해 제품을 주문하는 시나리오는 재생 공격에서 난스가 유용한 예를 제공할 수 있습니다.공격자는 암호화된 정보를 탈취하여 복호화할 필요 없이 특정 주문을 공급업체에 계속 전송하여 동일한 이름과 구매 정보로 제품을 여러 번 주문할 수 있습니다.난스는 동일한 난스를 가진 동일한 사람으로부터 다른 주문을 받은 경우 무효 주문으로 폐기되도록 특정 메시지에 '오리지널리티'를 부여하기 위해 사용됩니다.
난스를 사용하여 스트림 암호의 보안을 확보할 수 있습니다.여러 메시지에 동일한 키를 사용하고, 다음으로 다른 난스를 사용하여 해당 키로 암호화된 다른 메시지에 대해 키 스트림이 다른지 확인합니다.많은 경우 메시지 번호가 사용됩니다.
시크릿 난스 값은 시그니처 작성 및 확인을 위한 퍼블릭해시와 비교하기 위해 선택적으로 드러날 수 있는 시그니처 측 시크릿으로 Lamport 시그니처 스킴에 의해 사용됩니다.
초기화 벡터
초기화 벡터는 일반적으로 랜덤 또는 의사 랜덤이기 때문에 난스라고 불립니다.
해싱
난스는 작업 증명 시스템에서 암호화 해시 함수에 대한 입력을 변화시켜 특정 임의의 조건을 충족하는 특정 입력에 대한 해시를 얻기 위해 사용됩니다.이를 통해 "바람직한" 해시를 만드는 것이 검증하는 것보다 훨씬 더 어려워지고, 트랜잭션 또는 시스템의 한쪽으로 작업 부담을 전가합니다.예를 들어, 해시 함수를 사용한 작업 증명은 이메일 송신자가 다수의 값으로 동일한 입력을 해시함으로써 임의의 수의 선행 0을 가진 이메일(나중에 사용하기 위한 유용한 해시 사전 계산을 방지하기 위한 타임스탬프 포함)의 해시 값을 찾도록 함으로써 이메일 스팸과 싸우는 수단으로 간주되었습니다.n'til "sublic" 해시가 취득될 때까지.
마찬가지로, 새로운 블록에 대해 부여되는 비트코인 수가 새로운 사용자가 가입함에 따라 네트워크 연산 능력의 증가에 따라 선형적으로 증가하지 않도록 해시의 필요한 최소/최대값을 변경함으로써 Bitcoin Hashing 알고리즘을 임의의 난이도에 맞출 수 있다.이는 마찬가지로 해시되는 값에 난스 값을 추가하여 해시 알고리즘 출력을 변경함으로써 실현됩니다.암호화 해시 알고리즘은 입력에 따라 쉽게 예측할 수 없기 때문에 블록체인 해시의 행위와 비트코인의 부여 가능성을 추첨과 같이 만들어 바람직한 해시를 전달하는 난스를 최초로 찾는 '마이너'가 비트코인이 부여된다.
「 」를 참조해 주세요.
레퍼런스
- ^ "nonce - Glossary CSRC". csrc.nist.gov. National Institute of Standards and Technology. Retrieved 2021-10-24.
- ^ Rogaway, P. (2004). "Nonce-Based Symmetric Encryption" (PDF). In Bimal Roy; Willi Meier (eds.). Fast Software Encryption. Lecture Notes in Computer Science. Vol. 3017. pp. 348–358. doi:10.1007/978-3-540-25937-4_22. ISBN 978-3-540-25937-4.