Re: [PATCH v2 0/3] add support of hardware random generator on MediaTek MT7622
On Tue, 2017-06-20 at 16:59 +0200, Torsten Duwe wrote: > On Tue, Jun 20, 2017 at 10:21:17PM +0800, Sean Wang wrote: > > Hi Herbert, > > > > thanks for effort reviewing on those patches. > > > > By the way, also loop in Torsten > > > > Could you kindly guide me how to determine appropriate > > rng->ops.quality value used by the driver? > > > > I have tested with rngtest on mtk-cir and the result is got as > > the below log shown. If the rngtest always gives the result for > > success rate over 99.8%, can I set the rng->ops.quality 998? > > > > rngtest: starting FIPS tests... > > rngtest: bits received from input: 2032 > > rngtest: FIPS 140-2 successes: 998 > > rngtest: FIPS 140-2 failures: 2 > > No! You'd have to determine the failure threshold of the test and > apply some math to find a lower boundary of your RNG's entropy. > > What the quality is for: your RNG produces bits, but not all of them > are completely independent of each other i.e. not completely random. > So you simply lower the quality rating to express the net entropy > contained in the data stream. > > Torsten > Hi Torsten, Understood, appreciate your quick and clear explanation. For the math, is there existing any well-known or recommended open source software assisting identify the lower boundary of RNG entropy? I think the logic should be common for all RNGs. thanks again Sean Sean
Re: [PATCH v2 0/3] add support of hardware random generator on MediaTek MT7622
On Tue, Jun 20, 2017 at 10:21:17PM +0800, Sean Wang wrote: > Hi Herbert, > > thanks for effort reviewing on those patches. > > By the way, also loop in Torsten > > Could you kindly guide me how to determine appropriate > rng->ops.quality value used by the driver? > > I have tested with rngtest on mtk-cir and the result is got as > the below log shown. If the rngtest always gives the result for > success rate over 99.8%, can I set the rng->ops.quality 998? > > rngtest: starting FIPS tests... > rngtest: bits received from input: 2032 > rngtest: FIPS 140-2 successes: 998 > rngtest: FIPS 140-2 failures: 2 No! You'd have to determine the failure threshold of the test and apply some math to find a lower boundary of your RNG's entropy. What the quality is for: your RNG produces bits, but not all of them are completely independent of each other i.e. not completely random. So you simply lower the quality rating to express the net entropy contained in the data stream. Torsten
Re: [PATCH v2 0/3] add support of hardware random generator on MediaTek MT7622
Hi Herbert, thanks for effort reviewing on those patches. By the way, also loop in Torsten Could you kindly guide me how to determine appropriate rng->ops.quality value used by the driver? There is less clues since the value is not being set in most drivers. But good value decided would allow feeding fresh entropy data with the hwrng so i would like add it in the next patch. I have tested with rngtest on mtk-cir and the result is got as the below log shown. If the rngtest always gives the result for success rate over 99.8%, can I set the rng->ops.quality 998? rngtest: starting FIPS tests... rngtest: bits received from input: 2032 rngtest: FIPS 140-2 successes: 998 rngtest: FIPS 140-2 failures: 2 rngtest: FIPS 140-2(2001-10-10) Monobit: 1 rngtest: FIPS 140-2(2001-10-10) Poker: 0 rngtest: FIPS 140-2(2001-10-10) Runs: 1 rngtest: FIPS 140-2(2001-10-10) Long run: 0 rngtest: FIPS 140-2(2001-10-10) Continuous run: 0 rngtest: input channel speed: (min=715.902; avg=3846.234; max=3906250.000)Kibits/s rngtest: FIPS tests speed: (min=35.453; avg=37.862; max=38.300)Mibits/s rngtest: Program run time: 5591758 microseconds rngtest: starting FIPS tests... rngtest: bits received from input: 2032 rngtest: FIPS 140-2 successes: 1000 rngtest: FIPS 140-2 failures: 0 rngtest: FIPS 140-2(2001-10-10) Monobit: 0 rngtest: FIPS 140-2(2001-10-10) Poker: 0 rngtest: FIPS 140-2(2001-10-10) Runs: 0 rngtest: FIPS 140-2(2001-10-10) Long run: 0 rngtest: FIPS 140-2(2001-10-10) Continuous run: 0 rngtest: input channel speed: (min=715.588; avg=4424.787; max=4882812.500)Kibits/s rngtest: FIPS tests speed: (min=35.785; avg=37.859; max=38.223)Mibits/s rngtest: Program run time: 4947950 microseconds On Tue, 2017-06-20 at 11:40 +0800, Herbert Xu wrote: > On Mon, Jun 12, 2017 at 11:56:53PM +0800, sean.w...@mediatek.com wrote: > > From: Sean Wang > > > > Changes since v1: > > - update the bindings with the specific "mediatek,mt7622-rng" > > instead of the generic one as "mediatek,generic-rng" > > > > The series add support of hardware RNG on MediaTek MT7622 and > > , runtime PM support and add me as the maintainer for the existing > > and following chipset. > > > > Sean Wang (3): > > dt-bindings: rng: add MediaTek MT7622 Hardware Random Generator > > bindings > > hwrng: mtk - add runtime PM support > > MAINTAINERS: add entry for MediaTek Random Number Generator > > All applied. Thanks.
Re: [PATCH v2 0/3] add support of hardware random generator on MediaTek MT7622
On Mon, Jun 12, 2017 at 11:56:53PM +0800, sean.w...@mediatek.com wrote: > From: Sean Wang > > Changes since v1: > - update the bindings with the specific "mediatek,mt7622-rng" > instead of the generic one as "mediatek,generic-rng" > > The series add support of hardware RNG on MediaTek MT7622 and > , runtime PM support and add me as the maintainer for the existing > and following chipset. > > Sean Wang (3): > dt-bindings: rng: add MediaTek MT7622 Hardware Random Generator > bindings > hwrng: mtk - add runtime PM support > MAINTAINERS: add entry for MediaTek Random Number Generator All applied. Thanks. -- Email: Herbert Xu Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
[PATCH v2 0/3] add support of hardware random generator on MediaTek MT7622
From: Sean Wang Changes since v1: - update the bindings with the specific "mediatek,mt7622-rng" instead of the generic one as "mediatek,generic-rng" The series add support of hardware RNG on MediaTek MT7622 and , runtime PM support and add me as the maintainer for the existing and following chipset. Sean Wang (3): dt-bindings: rng: add MediaTek MT7622 Hardware Random Generator bindings hwrng: mtk - add runtime PM support MAINTAINERS: add entry for MediaTek Random Number Generator Documentation/devicetree/bindings/rng/mtk-rng.txt | 4 ++- MAINTAINERS | 5 +++ drivers/char/hw_random/mtk-rng.c | 42 +++ 3 files changed, 50 insertions(+), 1 deletion(-) -- 1.9.1