last day (15 days later) » 

10:33 PM
3
Q: Computar dados seguros randômicamente

Weslley C X SardinhaFunções randômicas não são totalmente aleatórias na computação.Gostaria de saber se existe uma maneira segura de gerar um salt,ou qualquer outra string aleatória de forma segura,sem usar hardware externo. A randomização pode ser obtida sem o uso de hardware externo,por exemplo usando o tempo em ...

 
Eu li essa pergunta,mas estou interessado em saber como se obter um número realmente randômico.
@GuilhermeOderdenge por motivos didáticos,qualquer uma,mas se for para escolher,prefiro em PHP ou C++
 
O @SilvioAndorinha já te deu a dica: na pergunta que ele citou tem informações muito boas pra você entender como obter algo realmente aleatório ("randômico" é um anglicismo desnecessário, na minha opinião). Aliás, lá tem também a sugestão do site random.org, que é um serviço que talvez se aproxime mais do que você deseja (embora não sei se atende ao seu requisito de "segurança" de não ter nada externo).
 
Não entendo por que a pergunta foi marcada como duplicada,pois não se refere a como a randomização funciona,mas como ela pode ser obtida.
@Kyllopardiun Ah,entendo,quis dizer sobre a marcação do "Essa pergunta já existe e foi respondida aqui"
 
Oi Weslley. Fui eu que marquei a pergunta como duplicada, porque entendo que o "como ela pode ser obtida" está incluso no "como ela funciona". De fato, por melhores que sejam as respostas que você já recebeu, elas acabam que respondendo quase a mesma coisa que já está em respostas lá da outra pergunta.
 
@LuizVieira Entendo,faz sentido.Talvez eu não tenha sido muito claro na pergunta ou ela realmente é ampla demais.Espero que com a ultima edição eu tenha esclarecido o objetivo da pergunta.
 
10:33 PM
Por exemplo, a resposta mais direta à sua pergunta é esta passagem em uma das respostas de lá: "Os computadores em geral são determinísticos, ou seja: o mesmo programa executado duas vezes com todas as entradas idênticas irão produzir duas saídas idênticas. Por essa razão, uma fonte externa é necessária para se produzir resultados realmente aleatórios. Isso não é algo que o computador consiga produzir por si só."
 
@LuizVieira Por mais que idênticas,o tempo de execução também é o mesmo?Em microssegundos,em nanossegundos......ele sempre é igual?
 
Não sei se eu entendi. Tempo de execução do que? Da obtenção do número aleatório? Imaginando que você tenha como ler de um dispositivo externo que simplesmente sorteie um número a partir de ruído do ambiente, intuitivamente dá pra perceber que isso é mais rápido do que fazer todo um algorítmo pra "calcular" um número pseudo-aleatório.
 
Tempo de execução de algum processo comum,que seja repetido várias vezes.Eu sei, hardware externo realmente é a melhor solução, a pergunta se refere a saber se é possível sem um.
 
Então, é o que a passagem que eu citei explica. Não é possível gerar algo totalmente aleatório por meio de um algoritmo, porque assim o seu resultado será determinístico. É como se ao invés de pedir pra você rolar um dado eu pedisse pra vc escolher 1 se hoje for segunda, 2 se for terça, 3 se for quarta, ..., etc. Alguém que não sabe essa "regra" pode achar que o número é aleatório na primeira vez que pedir um sorteio. Mas pode facilmente perceber o padrão depois de algumas repetições. A rolagem real do dado seria o equivalente ao "hardware ou fonte externa" em todas as respostas.
 
Por exemplo,suponha que o cálculo de 2²³¹ leve 12.231.21 segundos,o calculo é repetido nas mesmas condições computacionais(mesmos processos em execução),este valor de 12.231.21 sempre será o mesmo?Estados quânticos não seriam responsáveis por um valor diferente? Estar nas mesmas condições computacionais é diferente de estar sofrendo uma ação externa,por exemplo o processador se aquecer demais e demorar para executar,por exemplo,tendo em vista não é possível se obter uma curva sempre igual no aquecimento,por exemplo(Estou tentando não fazer confusão,desculpem se não consegui).
Ó,um bate papo,não entendo como funciona no stack então desculpem qualquer inconveniência
 
10:35 PM
Os computadores existentes não são quânticos. São computadores comuns, que representam os dados com bits. Independentemente de um computador ser mais ou menos rápido, um mesmo cálculo (quer dizer, uma mesma sequência de instruções) gera o mesmo resultado sempre.
Até onde eu sei, computadores quânticos são ainda modelos conceituais. Nem sei se existe um protótipo disso. Mas se existir, vai ser algo bem especializado, científico ou militar.
 
Mas são formados de átomos que por sua vez são quânticos,quando me refiro em relação ao quântico,quero dizer sobre as forças que atuam no processador.~~O metal utilizado
 
Será que a sua pergunta é mais no sentido de como funcionaria um algoritmo para obtenção de números aleatórios em um computador quântico?
 
Não,não
Se refere a obtenção em um computador comum mesmo.
 
Hum... acho que vc está confundido as coisas.
Computadores comuns usam sinais elétricos pra representar informação (sei lá, algo como -5 volts pra representar 0 e +5 volts pra representar 1), e não "estados quânticos".
 
Não fui claro amigo,quis dizer que forças quânticas podem influenciar diretamente o funcionamento de um processador
 
10:39 PM
Veja por esse lado: você também é formado de átomos, mas se eu pedir pra vc fazer a mesma tarefa sempre do mesmo jeito, você não vai ser arbitrariamente afetado pelos "estados quânticos".
Vc foi claro sim colega. Eu entendi, só estou tentando te convencer que isso não faz muito sentido. :)
Pelo menos não nos computadores convencionais que conhecemos.
 
Entendo..Mas vou usar ainda mais um exemplo
Um processador executa uma função,demora 12 segundos.
Este mesmo processador sobre uma temperatura mais elevada demora um pouco mais
 
Quer uma sugestão? Crie uma outra pergunta solicitando explicações sobre o que é "computação quântica" e no que ela se diferencia da computação tradicional. Eu não sou mesmo a melhor pessoa pra falar sobre o assunto, mas seguramente na comunidade haverão outros que saberão te ajudar. :)
Sim, demora um pouco mais. E dai?
 
Eu quis dizer isso com quântica~
 
Mesmo demorando mais, ele vai fazer EXATAMENTE as mesmas instruções. A não ser que ele trave por estar muito quente.
 
Nisso que eu me confundi acredito,usei termos errados
 
10:42 PM
Não se preocupe. FAz parte. :)
 
Agora,além da temperatura,pode haver outras fontes,como gravidade
Campos elétricos em volta
 
Mas sério, essa minha sugestão dá (na minha opinião) uma ótima pergunta pra comunidade!
 
Sim,irei fazer,eu tenho um questionamento do gênero também,obrigado
 
Pode, e isso tudo pode PREJUDICAR o processador, até mesmo afetar a memória (gerando corrupção nos dados). Mas isso não quer dizer que será aleatório.
 
Estas forças externas são sim aleatórias e poderiam influenciar no tempo de execução de um algoritmo,certo?
Não forças extremas,quis dizer forças fracas que atuam atualmente sobre qualquer processador no mundo.
 
10:44 PM
Você até poderia imaginar um algoritmo do seguinte tipo: le uma área de memória que não é sua (que é gravada por outros processos do usuário). Pode parecer que teoricamente lá vai sempre ter algo aleatório. Mas isso não é verdade. Aleatoriedade mesmo só existe na natureza.
Veja. Se eu pedir pra vc me dizer o primeiro número que veio na sua cabeça. Vamos supor, vc diz: 5782 (mas esse veio da minha, hahaha). Esse número foi aleatório? Não, ele foi arbitrário. A diferença de termos "arbitrário" e "aleatório" é justamente essa. Arbitrário é uma escolha qualquer, mas ainda é uma escolha. Aleatório é realmente estocástico (o contrário de determinístico), algo aquém de qualquer escolha. Caótico mesmo.
 
Uma vez li que daqui a 14 bilhões de anos,não poderá existir vida,pois as moléculas estarão tão separadas que não irá ser possível existir ligação química,pelo expancionísmo do universo
 
Hehe Esse já é um papo bom pra quando a gente se encontrar no evento do Meta e tomar um chopp juntos!
Weslley, espero ter ajudado, mas preciso sair.
 
CLARO,é algo mt mt grande de se mensurar,mas mesmo agora,números infinitamente pequenos podem calcular essa diferença,se isso puder ser medido em tempo por computadores atuais eles teoricamente poderiam gerar um número realmente aleatório
 
Boa sorte ai com as suas dúvidas.
 
ah,ok amigo,gostei da conversa.
 
10:46 PM
Gostei também.
Ms infelizmente tô sem tempo agora.
[]s
 
Natural de todos nós,obrigado mesmo.
 
Falows
Por nada
 

last day (15 days later) »