Come progettare un meccanismo di digital coin flip? [chiuso]

-3

Voglio implementare il meccanismo di coin flip in cui il risultato sarà indipendente da qualsiasi cosa, proprio come il vero coin flip. Sono confuso su come renderlo totalmente indipendente ...

    
posta Soumen Dofadar 03.02.2017 - 13:20
fonte

3 risposte

2

A seconda della lingua che stai usando, alcuni di loro possono generare interi pseudo-casuali crittograficamente sicuri, che è probabilmente abbastanza buono per un meccanismo di coin flip, come PHP 7 random_int funzione.

Tuttavia, ci sono anche veri servizi di generazione di numeri casuali, come api.random.org . La casualità deriva dal rumore atmosferico, piuttosto che da un algoritmo pseudo-casuale.

    
risposta data 03.02.2017 - 13:56
fonte
1

Non puoi. Ecco perché i metodi per ciò che vuoi veramente sono chiamati CSPRNGs - Generatori di numeri casuali crittografati sicuri Pseudo .

Tuttavia, ciò che è vero per la maggior parte dei cripto è vero anche qui: se non sai di cosa stai parlando, cerca di non implementarlo tu stesso. Invece, usa librerie consolidate che offrono ciò che ti serve.

    
risposta data 03.02.2017 - 13:48
fonte
1

Certo che puoi. La moneta dipende ancora dal suo stato fisico e dalla sua velocità, ma non è discretamente prevedibile.

Il link ha un generatore di numeri casuali basato sul rumore atmosferico. È molto più casuale di un dado o una moneta. è quantico.

Se non si desidera un servizio online, è possibile acquistare un dongle USB TRNG hardware o ottenere il rumore da un economico RTL-SDR.

Ma la differenza è principalmente teorica. Per quello che vuoi, un CSPRNG sarà sufficiente. / dev / urandom farà su unix (e no, non è inferiore a / dev / random).

    
risposta data 03.02.2017 - 14:00
fonte

Leggi altre domande sui tag