2009-03-18 5 views
9

저는 진정한 난수를 생성하는 저렴한 솔루션을 찾고 있습니다.난수 생성기가 아닌 실제 (의사가 아님). 밖에 뭐가있어?

나는 암호 학적으로 난수 생성기 인 LavaRnd을 발견했습니다. 아무도이 분야에서 경험이 있거나 다른 솔루션에 대해 알고 있습니까?

PS :

나의 호기심은 학문적 성격의 더 : 이럴 SO True random number generator 질문은 정말이


편집 포함되지 않았다. I 실제 응용 프로그램에 대해 충분히 좋은 PRNG에 대해 알고 싶지 않습니다. 나는 그들이 존재하고 그들이 할 것이라는 것을 안다.

물론 진정한 난수를 생성하려면 하드웨어 장치가 필요합니다. 그래서 하드웨어으로 태그를 지정했습니다.

+0

컴퓨터에서이 숫자를 생성하는 데만 관심이 있습니까? 아니면 클라이언트 컴퓨터처럼 다른 곳에서 생성해야 할 필요가 있습니까? 비트 맵에서 픽셀을 기반으로 임의의 숫자를 생성하는 방법을 기억합니다. – WakeUpScreaming

+0

관련 정보 : [일회용 패드 사용을위한 눈사태 소음 RNG] (http://crypto.stackexchange.com/questions/4005/avalanche-noise-rng-for-one-time-pad-use) at Cryptography 스택 교환. –

+0

[멋진 차 한 잔] (http://www.bbc.co.uk/cult/hitchhikers/guide/tea.shtml)을 시도해 볼 수 있습니다. –

답변

0

사실 컴퓨팅의 난수는 존재하지 않으며 결코 존재하지 않습니다. 컴퓨터는 동일한 환경에서 동일한 경험을 반복하면 동일한 결과가 달성된다는 점에서 결정적입니다. 등 예를 들어

, 일부 온라인 포커 메모리와 같은 다른 변수가 사용되는 날짜, 시간, 순간에 네트워크 트래픽 : 당신이 컴퓨터로 무엇을 얻을

은 대부분 현재의 상황에 따라, 의사 난수입니다 사이트는 어느 정도 난수를 보장하기 위해 주변 소음을 제거하고이를 기반으로 난수를 생성하는 특정 하드웨어를 설치해야했습니다 (그뿐만 아니라 주요 요인 임).

따라서 실제 임의성과 비슷한 의사 난수를 얻으려면 외부 요인을 고려해야합니다.

+1

첫 번째 진술은 양자 역학에서 많은 논란이 있습니다. –

+1

임의성은 어떻게되는지 모르기 때문에 존재한다고 생각하는 것입니다. 풍경 뒤에있는 메 커닉을 발견하자마자 무작위 적으로 멈 춥니 다. 예를 들어 비오는 날을 예측하는 것에 대해 이야기하십시오. 그것은 1000 년 전에 끝날 수 없었고 무작위적인 사건처럼 보였습니다. 더 이상. – Seb

+0

@Seb : 운좋게도 컴퓨터는 I/O를 수행 할 수 있습니다. 즉, 외부 세계의 임의성에 액세스 할 수 있음을 의미합니다. 슬림 응답을 참조하십시오. –

6

환경을 지정하지 않았습니다. 임의 리눅스는/dev에 대한 문서에서

/

난수 생성기는 엔트로피 풀에 장치 드라이버 및 기타 소스에서 환경 소음을 수집합니다. 생성기는 또한 을 비트의 수로 추정하여 엔트로피 풀의 잡음을 유지합니다. 에서이 엔트로피 풀 난수는 입니다.

그래서이 등 이더넷 패킷, 키보드 및 마우스 입력의 임의의 타이밍,

또한 브루스 슈나이어의 Yarrow PRNG 서버있다 같은 것들에서 예측할 수없는 입력을 기반으로, 암호 학적으로 안전한 임의의 소스입니다. 진정으로 무작위는 아니지만 암호로 안전한 것으로 간주됩니다.

... 그리고 또한 EGD, 엔트로피 수집 데몬. Perl로 작성되었으므로 많은 플랫폼에서 이식 가능합니다.

+0

나는 LavaRnd 프로그램이 OP에서 언급 한 LavaRnd 프로그램과 근본적으로 동일하다고 생각한다. LavaRnd가 아마도 크로스 플랫폼 이식성을 제외하고는 대부분의 OS에서 사용할 수없는 것을 추가한다고 생각하지 않는다. – rmeador

+1

LavaRnd의 용암은 실제 용암 램프입니다. 난수는 웹캠으로 찍은 이미지로 계산됩니다. 마지막으로 나는 이것이 대부분의 OS의 특징이 아니었다 고 들었다. – starblue

+2

LavaRnd 웹 사이트에 용암 램프에 대한 언급이 없습니다. 그들의 혼돈 된 소스는 어두운 상자 안에있는 CCD라고합니다. – slim

1

사실 및 유사 난수에 관한 기사는 2009 년 2 월 2 일입니다.LavaRnd 외에 RandCam과 VIA의 PadLock도 논의됩니다.

5

나는 항상 PCI or USB Quantum Random Number Generator 중 하나를 사고 싶었지만, 비용이 얼마인지 전혀 알지 못했고, 솔직히 말해서 많이 들릴 수도있었습니다. 이들은 각각 16 Mbit/s와 4 Mbit/s의 난수를 제공하지만, NIX 박스와 Windows 모두에서 사용할 수 있습니다. 그게 내가 필요로하는 것보다 더!

그 외에도 'emout으로 가득 찬 책은 어때? A Million Random Digits with 100,000 Normal Deviates은 아마존에서 판매하는 가장 멋진 책일 것입니다. 아직 구입하지 않았지만 시간 문제 일뿐입니다. 책꽂이에 진정한 난수를 저장하는 것이 매우 편리해야합니다!

+0

고정적이고 신뢰할 수없는 임의의 숫자가 필요한 경우 random.org를 사용할 수 있습니다. 무작위적인 물리적 현상에 의해 생성되는 한 임의적이지만 보안 목적으로 사용하면 안됩니다. Monte Carlo에 완벽하지만 보안에는 적합하지 않습니다. – nomen

+0

가격이 꽤 높다. USB는 1,000 파운드, 가장 느린 PCI는 1,600 파운드 정도이다. 한가지 좋은 사용법은이'cat/dev/random>/dev/hdb1'과 같은 것으로 하드 드라이브를 지우는 것입니다. (그들의 드라이버가 디폴트'/ dev/random'을 대체하고 무작위 데이터를 추가한다고 가정). –

2

문제를 완전히 해결하는 것은 광범위한 주제입니다.

하드웨어 난수 생성기가 존재합니다. 열 잡음이나 양자 효과 (가장 빠른 모델에서)를 사용하여 고품질의 난수를 생성합니다.

열 잡음 난수 생성에 "편향"이있을 수 있다는 의혹이 있습니다. 말하자면, 극단적 인 장기간에 몇몇 숫자는 다른 것보다 더 자주 생성됩니다. 생성 된 숫자는 여전히 무작위입니다.

이 방법을 보려면 시간의 60 %를 제공하는 불공정 동전을 고려하십시오. 동전을 뒤집는 것은 여전히 ​​무작위적인 과정입니다. 장기적으로 볼 때 60 %가 머리가 될 것으로 예상해야합니다. 임의의 결과가 많은 가능한 결과 중 하나 일 뿐이므로 임의의 프로세스를 실행하면 정보 또는 "엔트로피"가 인코딩됩니다. 다른 한편, 불공정 동전으로 생성 된 머리와 꼬리의 순서는 공정한 동전으로 생성 된 동일한 순서보다 적은 정보를 포함합니다!

입증할만한 편집 성 보안을 위해 하드웨어 난수 생성기의 번호를 직접 사용하고 싶지 않습니다. 당신은 무작위 (그러나 편향된) 숫자가 휘젓는 엔트로피 풀에 그들을 공급하기를 원합니다.

사실, 대부분의 하드웨어 난수 생성기는이 편향/엔트로피 문제를 처리하기 위해 커널 (또는 Windows 해당 프로그램)을 통해/dev/random을 제공하도록 설계되었습니다.

한편, 적절한 임의의 난수 생성기는 몬테카를로 시뮬레이션을 신속하게 수행 할 수 있도록 충분히 균일합니다.