사용 가능한 엔트로피를 어떻게 확인할 수 있습니까? 확인할 수 있습니다 (

리눅스 시스템에서 사용 가능한 엔트로피를 확인할 수 있습니다 ( /dev/randomPRNG 목적으로 활용 하는 경우 유용 합니다).

cat /proc/sys/kernel/random/entropy_avail

그러나 /procMac (AFAIK) 에는 해당되지 않습니다 . Mac에서 사용 가능한 시스템 엔트로피를 어떻게 확인할 수 있습니까? OS X 10.7.3 (Lion)을 실행하고 있습니다


Kyle ‘s answer 아래 내 의견 중 일부를 업데이트하려면 — Mac이이 정보를 표시하지 않는 이유 중 하나는 필요하지 않기 때문입니다 (대부분의 경우). /dev/random풀에 엔트로피가 충분하지 않으면 Linux 시스템에서 호출을 차단합니다 . Mac에서는 데몬을 사용하여 주기적으로 엔트로피 풀에 추가 합니다 SecurityServer.

그러나 어떤 이유로 데몬이 실패하면 실패를 표시하지 않고 출력 품질이 떨어집니다 .

그러나 출력 품질은 적절한 엔트로피를 정기적으로 추가하는 데 달려 있습니다. 는 IF SecurityServer시스템 데몬이 어떤 이유로 실패, 출력 품질은 임의 장치 자체에서 명시 적 표시하지 않고 시간이 지남에 겪게 될 것이다.

따라서 엔트로피의 양을 쉽게 사용할 수는 없지만 그것이 존재하지 않으며 지식이 도움이 될 수있는 경우가 있다는 것을 의미하지는 않습니다.



답변

이것은 해결책이 아니라 리눅스에서 엔트로피가 어떻게 수집되고 사용되는지에 대한 설명입니다.

리눅스에는 실제로 두 가지 엔트로피 풀이 있습니다.

/dev/random그리고 /dev/urandom.

전자는 시스템 엔트로피 소스에 의해 공급되는 진정한 무작위 풀입니다.
후자는 BSD 및 OS X에서 발견되는 것과 같은 PRNG에 가깝습니다.

그러나 우라늄조차도 양질의 의사 랜덤 데이터를 생성하기 위해서는 ‘실제’랜덤 엔트로피의 씨앗이 필요합니다. 최근 커널에서 / dev / random에 엔트로피가 완전히 부족해도 여전히 urandom을 차단하지는 않지만 urandom은 더 많은 엔트로피를 사용할 수있을 때까지 마지막 유효한 시드를 재사용합니다. urandom은 차단되지 않기 때문에 꾸준한 엔트로피 스트림이 필요한 대부분의 서비스는 / dev / random에 의존하지 않고이를 사용합니다.

그러나 의사 난수 엔트로피로는 수행 할 수 없지만 실제로 예측할 수없는 엔트로피 소스가 필요한 다양한 SSL 제품군과 같은 일부 서비스가 여전히 있습니다. 이 경우 urandom (또는 다른 PRNG)을 사용할 수 없으며 / dev / random이 작동합니다.


답변

Mac OS X은 단순히 Yarrow 를 사용합니다 . 심지어 FreeBSD조차도 “Fortuna”라는 개선 된 버전으로 전환했습니다.

톱풀의 강도는 키의 크기에 의해 제한됩니다. 예를 들어, Yarrow-160의 유효 키 크기는 160 비트입니다. 보안에 256 비트가 필요한 경우 Yarrow-160은 작업을 수행 할 수 없습니다.

전체적으로 이것은 Apple의 우선 순위에 보안 / 견고성 또는 이와 유사한 것이 포함되지 않음을 다시 한 번 상기시킵니다.


답변

FreeBSD와 마찬가지로 Mac OS X은 외부 엔트로피 소스에 의존하지 않습니다. 대신 Yarrow 알고리즘 기반의 의사 난수 생성기를 사용합니다 . 엔트로피 풀이 아닌 알고리즘을 사용하기 때문에 “충분한”엔트로피가 있는지 확인할 필요가 없습니다 . 블로킹없이 항상 / dev / random에서 읽을 수 있습니다 .

따라서, “편집증”이 아니고 외부 소스 (키 스트로크 / 마우스 움직임 등)를 기반으로 엔트로피를 기반으로 할 필요가없는 한, 질문에 대답하려면, / dev /에 사용할 수있는 엔트로피의 양 무작위 사용은 항상 무한합니다.


답변