UNIX 시스템의 엔트로피와 관련된 세 가지 질문이 있습니다.
- 다음 명령을 사용하여 Linux에서 엔트로피를 확인했습니다
cat /proc/sys/kernel/random/entropy_avail
. POSIX에 정의된 사용 가능한 엔트로피 정보의 표준 위치입니까? - 내가 기대해야 하는 올바른 이용 가능한 정보는 무엇입니까? 엔트로피는 100 이상이어야 하며, 엔트로피가 지속적으로 100 미만이면 문제가 발생할 수 있다는 이야기를 들었습니다.
- 이 엔트로피는 사용된 것에 따라 결정됩니까
/dev/random
, 아니면 와도 관련되어 있습니까/dev/urandom
?
답변1
/dev/random
표준화가 없습니다. POSIX는 암호화된 보안 무작위 데이터를 생성하는 방법을 제공하지 않으며 엔트로피 개념도 없습니다.
리눅스 커널의 엔트로피 계산은 정보이론적 엔트로피 모델에 해당하며 실제 사용과는 아무런 관련이 없습니다. 이것이 관련된 유일한 경우는 엔트로피를 축적할 시간이 전혀 없는 새 장치입니다(여기에는 라이브 배포가 포함됩니다. 설치된 시스템은 한 부팅에서 다음 부팅까지 엔트로피를 저장합니다). 이 경우를 제외하면 엔트로피는 소진될 수 없기 때문에 항상 엔트로피가 충분합니다. Linux는 /dev/random
엔트로피가 충분하지 않다고 생각하면 차단하므로 를 사용하면 /dev/urandom
차단되지 않습니다. 사용/dev/urandom
암호화 키 생성을 포함한 모든 것에 적합(위에서 언급한 새 장치는 제외)
간단히 말해서:
- 아니요, 이는 표준이 아닙니다.
- 당신은 상관하지 않습니다.
- 사용
/dev/urandom
.
전부는 아니지만 많은 Unix 시스템에는 /dev/urandom
및 가 있습니다 /dev/random
. 보다위키피디아 페이지더 자세한 논의를 위해.