Reputation
311
Top tag
Next privilege 500 Rep.
Access review queues
Badges
1 8
Impact
~3k people reached

  • 0 posts edited
  • 0 helpful flags
  • 0 votes cast
Dec
20
accepted How to tell if a hardware RNG is rigged?
Dec
19
awarded  Nice Question
Dec
15
comment Execution time for HMAC-MD5 on a 160 bit data using 128 bit key on a 3GHz CPU
@CodesInChaos 800 logic CPU cycles. When special optimization tricks are involved the real CPU cycles can vary (pipelining, instruction fusioning, etc). So the only sure way to find out is to test it. Similar tests are part of standard benchmark kits, and one of my own benchmark kits is not too dissimilar with this - encrypt 1GiB of data with SHA512-HMAC in OFB mode.
Dec
15
comment Execution time for HMAC-MD5 on a 160 bit data using 128 bit key on a 3GHz CPU
@SARA You will have to code and run it yourself on actual target hardware to find out - there are too many variables to control. This execution time is actually a pretty good benchmark of the available target platforms, run them and report back with exact platform configurations and execution times. One of my benchmark kits include encrypting 1GiB of data using SHA512-HMAC in OFB mode, which is a similar scenario as this one.
Dec
15
comment How to tell if a hardware RNG is rigged?
@otus I am okay with a good CSPRNG with a good entropy feed. The problem is about subverted RNGs like the ECDRBG NSA backdoor. How can I tell if my commercial RNG chip is rigged in that way?
Dec
14
asked How to tell if a hardware RNG is rigged?
Dec
14
answered Execution time for HMAC-MD5 on a 160 bit data using 128 bit key on a 3GHz CPU
Dec
14
accepted Diffie-Hellman over several non-secured HTTP requests - will it work?
Dec
11
comment Diffie-Hellman over several non-secured HTTP requests - will it work?
Does this mean setting up a TLS-capable server inside the smartphone app that is used to configure the gadget? Also no the gadget do not have a good entropy source on-chip (adding an off-chip HWRNG is always an option, but if so what is a good one that can be implemented using either exactly one digital GPIO pin or one I2C device and as little external parts as possible) By the way, a reliable HWRNG renders the entire point of key injecting moot as I can generate a self-signed certificate (and later sign it using a server) easily.
Dec
10
comment Diffie-Hellman over several non-secured HTTP requests - will it work?
@SEJPM Now how can I generate this 2048-bit or 4096-bit RSA key on something like an ESP8266 or ARM Cortex-M3 core, with the limited entropy?
Dec
10
comment Diffie-Hellman over several non-secured HTTP requests - will it work?
@SEJPM 128 or so bits of entropy is way way less than 2500 that is required to generate an RSA key pair.
Dec
9
comment Diffie-Hellman over several non-secured HTTP requests - will it work?
@SEJPM This is going against my proposal of not having keys baked in. The device have no onboard quality RNG that can generate good long-term keys with adequate entropy, so no private key generation allowed (but session keys for TLS, being short terms keys, are generally okay as each session lasts a few hundreds of milliseconds)
Dec
9
asked Diffie-Hellman over several non-secured HTTP requests - will it work?
Jan
15
comment How to roll my own hardware RNG?
I do wish to know about your product. However I do have a US$5/each price point to beat for you guys. ATmega328P isn't too expensive as well, and for a flash drive form factor design I may even go with ATmega32U4 which have built-in USB interface, eliminating one chip further.
Jan
14
comment How to roll my own hardware RNG?
I have quite a stock of ATmega328P's. And I have the 16MHz crystals to go with them, making them really fast.
Jan
14
comment How to roll my own hardware RNG?
I have a price point and try beat this: US\$5 per device at most. Try beat this with pre-made solution. ATtiny85 cost me \$1, CH340G is another \$1, and other parts are less than \$0.1 (maybe less than $0.01) each.
Jan
14
comment How to roll my own hardware RNG?
ATtiny85 have quite a bit of memory on its own, and I do have the option to go to a bigger chip like ATmega328P which have even more memory on chip, as well as more IO, speed and external memory options. Both ATtiny85 and ATmega328P is dirt cheap here if ordered from Shenzhen.
Jan
8
comment How to roll my own hardware RNG?
ATTiny85 have enough computational power for mixing the streams, and the microcontroller plus the entropy sources consumes very little power and can be powered by a small Li-Po directly for years. CH340G is turned on only when USB is plugged in. ARM is just too big for this. Also try beat the US$1/each price for ATtiny85
Jan
7
comment How to roll my own hardware RNG?
In my plan (part of the question) I do have two random sources: Zener noise and electron tunnelling; I also have planned the microcontroller and USB: ATtiny85 microcontroller and CH340G USB UART interface.
Jan
7
comment How to roll my own hardware RNG?
Existing wheels can be sabotaged. Remember the ECDRBG NSA Backdoor? I need to make sure my HWRNG is not rigged in a way against me.