Questions tagged [random]

The generation of random or pseudorandom data, and the use of randomness in security protocols

Filter by
Sorted by
Tagged with
1
vote
1answer
53 views

How can I validate that a PRNG's output is insecure and predictable?

Say I talk to a developer who is using some output of a Pseudo-random number generator in order to do some security task. I know based upon common knowledge that only Cryptographically Secure Pseudo ...
2
votes
3answers
157 views

How can one test if a password generator is cryptographically secured?

Given the plethora of random password generators (RPG) available, I'd like to do some black box testing on some. Let's take https://passwordsgenerator.net/ for example. Assuming the whole generator ...
2
votes
0answers
61 views

Is it safe to generate a temporary API key from a random generator seeded by a secure random generator?

I have a need to generate a key consisting of a given number of random characters that will be used to access resources via a public API. It should not be possible to predict the key. This is done in ...
9
votes
1answer
291 views

Is reading from /dev/urandom on macOS Catalina a safe way to produce cryptographically secure data?

I'm reading a lot about entropy on macOS... I know it doesn't use Yarrow anymore as per this FIPS 140-02 doc a NIST compliant DRBG. I read a lot: https://github.com/briansmith/ring/pull/398 How ...
2
votes
1answer
108 views

entropy change when reading from /dev/urandom vs /dev/random

I noticed that when reading from /dev/random, I have a very real impact on the entropy available on my linux box. (reading from /proc/system/kernel/random/entropy_avail), Yet when reading from /dev/...
0
votes
0answers
48 views

Is it possible to get the original UUID1 from a timestamp?

Say, for example, I generate a time based UUID with the following program. import uuid uuid = uuid.uuid1() print uuid print uuid.time I get the following: 47702997-155d-11ea-92d3-6030d48747ec ...
3
votes
1answer
164 views

using HW random number generator as source of entropy

Currently I am using haveged on my server as source of entropy. My Server is used as KVM hypervisor, to run virtual machines. I did not use haveged at the beginning, and I noticed the VMs were ...
1
vote
1answer
67 views

TLS handshake random bytes reused

What would happen if the random bytes provided by the client and the server in the first two messages would be reused by one peer/by both peers? I think it would highly reduce the provided security, ...
2
votes
1answer
101 views

Is this schema between a Desktop App and an API secure?

From my previous question: How secure is this schema between a Desktop App (c++) and an API (php). Introduction I made a paid Desktop-app that required constant internet connection (because of its ...
2
votes
3answers
80 views

Benefits of signing a random number?

Is there any benefit to signing a random number? E.g. a link for password reset, sent to email, often includes a base64 encoded random number to prevent someone guessing what the password reset link ...
0
votes
0answers
34 views

What is the difference between /dev/random and /dev/urandom? [duplicate]

Simply put, what are the differences between /dev/random and /dev/urandom from a developer's standpoint? Which one should I use for cryptographic purposes?
1
vote
2answers
96 views

If I seed a CSPRNG with a truly random number and call the output, does this make the number more, less or equally “random”?

If I have a JavaScript CSPRNG such as isaac.random(), and I seed it using a truly random number T as such: isaac.seed(T), does this make the result of the CSPRNG more, less, or equally random? I ...
1
vote
1answer
84 views

What are some viable, secure sources of entropy for a CSPRNG?

I need some viable sources for entropy to seed a CSPRNG. So far, I have: JS Events Web Crypto API performance.now() Timing for xmlHTTPRequests etc. Are there any other viable/secure entropy sources ...
2
votes
1answer
81 views

Is getting 1-2 outputs from a CSPRNG to seed another CSPRNG less entropy than getting say 5000 outputs from a CSPRNG and using that to seed?

This question builds off of this question. I want to create more entropy from a viable entropy source to seed another CSPRNG. If I use window.crypto.getRandomValues(newUint8Array(1)) To seed a ...
1
vote
3answers
98 views

Is using multiple instances of a browser-PRNG to seed another PRNG more secure?

Say I have Math.random() (which supposedly generates ~32 bits of entropy.) If I use Math.random() + Math.random(), both of them generate ~32 bits of entropy. I will use the solution of Math.random() +...
0
votes
1answer
121 views

Find seed used in Math.random LCG given a list of outputs [duplicate]

Given one or two sequential Math.random outputs generated with Internet Explorer's linear congruential generator, is it possible to find the seed used in the LCG and find subsequent outputs? Here is ...
0
votes
1answer
197 views

Predicting Math.random() sequence using V8's MWC1616 algorithm

If you have the seeds for Math.random() using mwc1616, are the random numbers generated in the same order every time / are they repeating? Basically wondering if, given a seed, can I predict past ...
0
votes
0answers
80 views

How long will it take to crack a hashed random string

If I generate 128 bit, 512 bit and 1024 bit random strings using either: A native rand() function (C, PHP, Python, etc) OpenSSL random bytes Hardware generated random number And hash the random ...
0
votes
0answers
50 views

Generating a secret token: security concerns other than min-entropy?

I'm trying to compare two techniques for generating an OAuth 2 PKCE code_verifier. For each character, get a random byte and "mod 66" to map to one of the 66 valid characters. For each character, get ...
3
votes
3answers
209 views

Determining the entropy of a string if each character has a slight bias

Let's say I need to generate a 32-character secret comprised of ASCII characters from the set '0'..'9'. Here's one way of doing it: VALID_CHARS = '0123456789' generate_secret_string() { random =...
0
votes
1answer
112 views

Am I making my One-Time Passcode less secure?

I am using some "magic link" one-time passcodes for automatically logging users in for a specific purpose on our website. My plan is to generate a hash based on the datetime, users specific "ID" and ...
0
votes
0answers
57 views

When should I use CryptoPP::AutoSeededRandomPool (not CryptoPP::NonblockingRng)?

I found CryptoPP provides several random generators: CryptoPP::AutoSeededRandomPool, CryptoPP::AutoSeededX917RNG and so on. I know some details about these generators and the usage of them, I just ...
1
vote
3answers
357 views

Exactly how is a pseudorandom number generator a security risk?

I was recently reading about Diceware, which is essentially a list of words from which several can be picked to form a long passphrase. The website stresses that these words should be picked randomly ...
0
votes
1answer
80 views

What does “probabilistic algorithm with random tape” mean?

I am new to the study of cryptography, and when reading papers they often mention that "probabilistic algorithm G with random tape w ...". What does it mean by "random tape w"? I mean why it does is ...
2
votes
1answer
302 views

Is it safe to use a passphrase to seed fernet key generation?

I have a cluster deployment that depends on a Fernet Key to secure some data. The deployment script generates the key with: FERNET_KEY=$(python -c "from cryptography.fernet import Fernet; k = Fernet....
1
vote
0answers
43 views

Can Lava Lamps enhance modern native entropy sourced from hardware and the Linux Kernel? [duplicate]

In this 2017 video by Computerphile's Tom Scott, "The Lava Lamps That Help Keep The Internet Secure", Scott tours Cloud Flare's facility and checks out their Wall of Entropy. This is essentially a ...
2
votes
1answer
968 views

How can I increase /proc/sys/kernel/random/entropy_avail

I have access to genuine random numbers - random.org, for example. I have a number of processes using /dev/random and my value for /proc/sys/kernel/random/entropy_avail is 143, which is pretty low. ...
4
votes
1answer
134 views

Is pressing random keys a secure way to seed a key generator?

There's a couple of programs that I've been using recently that ask you to type random keys as a source of randomness to seed an RNG for key generation. Is this considered a good practice still, or ...
15
votes
2answers
503 views

What research suggests that user's mouse movements are (not) sufficiently unpredictable for secret key generation?

I have not been able to find any credible source which tried to prove or disprove the randomness of mouse movements. A Google Scholar search for "mouse movement entropy" gives surprisingly few ...
7
votes
3answers
477 views

Is PuttyGen secure?

I'm using PuttyGen to generate ssh keys for various windows computers. It requires a lot of manual user input, specifically in the form of swirling the mouse around in the window pane. I understand ...
0
votes
2answers
97 views

How to solve the problem of secure randomly generated GUIDs when the size of the data outgrows the GUIDs

I've been struggling with this problem for a little while... How to hide the order that records were created in, basically. You typically do this by generating a "GUID". But this GUID is arbitrarily ...
1
vote
1answer
77 views

Size of a secure random number taking into account quantum computing and size of universe

Most random secure numbers are 256 to 512 bits. But given the size of the universe and eventually quantum computing, I am wondering what is a better sized randomly generated number, taking into ...
1
vote
0answers
98 views

Does using both a counter and a random nonce make sense for the purpose of reducing the likelihood of replay attacks?

I am aware that using a counter or a random value are both acceptable ways of generating nonces, depending on the circumstances. The tradeoff with using a counter is the necessity to keep state and ...
10
votes
2answers
1k views

Is there a loss of entropy by hashing an N-bit random key to produce an N-bit hash?

I read the following piece of code: dd if=/dev/urandom bs=16 count=1 2>/dev/null | md5sum Apparently, this code was used as a trick to produce a hex string key from a 128-bit binary pseudo-random ...
0
votes
1answer
118 views

What is the entropy of a call to java.lang.Math.random()?

Math.random() produces a double value (IEEE 754 binary64) in the range [0.0, 1.0). How many digits (or bits) of entropy does the return value of random() contain? If it simplifies things, I'm okay ...
1
vote
3answers
612 views

What should a secure passphrase look like?

We all know that passwords should not only be randomly generated, but also look random. The reason is that attackers can use patterns or existing words to be able to bruteforce the passwords faster, ...
4
votes
1answer
153 views

How do GnuPG smartcard generate reliable random data?

I'm generating a private key on my new GPG smartcard at this very moment. On linux, the random would be fed by the keystrokes on my keyboard, the network packets, the mouse movements etc. How does ...
6
votes
4answers
501 views

Are there any practical attacks on random number generators?

I'm creating an internal security course for developers. To make it more interesting, I'm trying to reinforce each chapter with some real-world attacks but stumbled upon insecure random usage section. ...
2
votes
3answers
274 views

Password-hash proofing SHA-3

I am in a situation where I need to harden a password hash, but not allowed to bring in any extra dependencies, so I am pretty much forced to do the one thing everyone seems to advise against - roll ...
0
votes
1answer
43 views

Is it necessary to verify that my order confirmation IDs are unique?

I'm generating 9-character order confirmations such as K1YBFRG17, O1D15ZCOM, etc and using them as order confirmation numbers. It's basically just picking at random from the string '...
1
vote
1answer
136 views

The NIST randomness tests for a generated key

Does different tests for key randomness provided by NIST are available online? where one can test that which test for key generated are passed and which are failed?
3
votes
1answer
430 views

Is RDRAND used in a safe way by Windows 10?

This question was already answered by Linus Torvalds for Linux, and is also cited in this Q/A on this stack: We use rdrand as _one_ of many inputs into the random pool, and we use it as a way to ...
2
votes
2answers
477 views

When you XOR a random number with non-random number, does that give you a new random number?

XOR has the following truth table: 0, 0 : 0 0, 1 : 1 1, 0 : 1 1, 1 : 0 So per bit in an XOR operation, there is a 50% chance of that result being 1 and 50% chance of it being 0. If you XOR a random ...
2
votes
2answers
110 views

Should you use SecureRandom.getInstance() with or without a provider?

So, I am new to cryptography and I was learning about SecureRandom and all of the ways it calls implementations with or without providers. When I looked up some sites for information, it says not to ...
0
votes
2answers
598 views

/dev/random generate session key

if a server uses /dev/random to generate the random session key with a client. How you can launch a Denial-Of-Service (DOS) attack on such a server?
1
vote
1answer
282 views

Mobile application authentication using UUID

I write back-end code for mobile applications. I am needing to write the code for authentication and the simplest yet secure solution I can think of is: When user signs in, device sends username and ...
2
votes
1answer
124 views

For a “normal” computer user, does it make a difference to have a good entropy source?

Let's take, for example, Linux. From my understanding, there are different sources and different ways that can be used to gather entropy (RNG daemon, Intel rrandr, TPM, etc). Some produce entropy that ...
71
votes
5answers
14k views

What makes Random Number Generators so fragile?

It seems to me that a hardware component which generates random numbers is extremely simple - just measure tiny vibrations in the hardware with a sensor, right? Maybe I'm wrong but it seems like if ...
1
vote
1answer
174 views

What function is used to generate client random in TLS

I've been learning TLS. During the Client-Server Hello their random values are shared. The client generates a 28 byte random and combine it with 4 bytes of epoch time to generate a 32 byte random ...
1
vote
1answer
337 views

How to reverse engineer str_shuffle (PHP) to get its mt_rand outputs

$output = str_shuffle("12345"); E.g. $output is now 25134 How do I find out what numbers came out of mt_rand() to allow for the shuffle I want to know this because I want the seed of mt_rand() and ...

1 2 3 4 5 7