linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jason Cooper <jason@lakedaemon.net>
To: miaoqing@codeaurora.org
Cc: "Pan, Miaoqing" <miaoqing@qti.qualcomm.com>,
	Stephan Mueller <smueller@chronox.de>,
	Herbert Xu <herbert@gondor.apana.org.au>,
	Matt Mackall <mpm@selenic.com>,
	"Valo, Kalle" <kvalo@qca.qualcomm.com>,
	linux-wireless@vger.kernel.org,
	ath9k-devel <ath9k-devel@qca.qualcomm.com>,
	linux-crypto@vger.kernel.org, "Sepehrdad,
	Pouyan" <pouyans@qti.qualcomm.com>
Subject: Re: [PATCH 2/2] ath9k: disable RNG by default
Date: Thu, 11 Aug 2016 13:14:24 +0000	[thread overview]
Message-ID: <20160811131424.GI2013@io.lakedaemon.net> (raw)
In-Reply-To: <14a3879458f3bfc36068c2e8294ca448@codeaurora.org>

On Thu, Aug 11, 2016 at 10:54:11AM +0800, miaoqing@codeaurora.org wrote:
> On 2016-08-10 21:24, Jason Cooper wrote:
> >The fact is, barring userspace expectations of /dev/hwrng, hw_random is
> >the appropriate place for it.  It's not a devicetree blob, mac address,
> >or pci config space.  Which are things we feed in once for the heck of
> >it.  This is a *continuous* source or questionable quality.
> >
> >I'm seriously considering putting this and timeriomem-rng into a
> >subdirectory under hw_random/, maybe environ/.  Anything in there gets
> >quality=0 for default, and *doesn't* contribute to /dev/hwrng.
> >
> >Regardless which path we take, I think we should include 'adc' in the
> >name.  I've heard countless times about "Atheros cards come with an rng
> >on board". :-/
> 
> If I understand correctly, you want to bind the ADC source to
> /dev/hwrng, and then change rng-tools to set the entropy to zero in
> the ioctl call ?  There are two major problems with that approach,

Nope.  I want to leverage the hwrng framework to facilitate feeding the
*kernel* entropy pools like all the other hwrngs do currently.  The
difference for *environmental* sources is that when userspace read()s
from /dev/hwrng, they will *not* contribute.

If the environmental sources are the only sources, then no /dev/hwrng
should appear.

> 1) We already tried once before to bind our solution to /dev/hwrng,
> and got so much complaints. The conclusion was that maybe we know that
> the output of /dev/hwrng does not have perfect entropy, but a normal
> user does not know and will misuse it. You mentioned in
> https://www.kernel.org/doc/Documentation/hw_random.txt we have
> 
> "This data is NOT CHECKED by any
> 	fitness tests, and could potentially be bogus (if the
> 	hardware is faulty or has been tampered with).  Data is only
> 	output if the hardware "has-data" flag is set, but nevertheless
> 	a security-conscious person would run fitness tests on the
> 	data before assuming it is truly random."
> 
> But this is not enough to convince upstream to switch to /dev/hwrng.
> I think the concern of users misusing the solution is a very valid
> concern.

Agreed.

> 2) If we set the entropy to zero in rng-tools, we cannot tolerate the
> load.  Rng-tools is not a timer-based solution. Similar to our
> solution, it is based on
> /proc/sys/kernel/random/write_wakeup_threshold. If we do not increase
> the entropy counter, rng-tools keep writing into the pool, and both
> rng-tools and WiFi chip will be overloaded.

That's why I propose a change to the hwrng framework to permit noise
sources while not wiring them up to feed /dev/hwrng.  timeriomem-rng
should have the same problem ath9k-rng does.

Basically, if it wasn't designed to be an rng, it shouldn't be wired up
to /dev/hwrng.

thx,

Jason.

  reply	other threads:[~2016-08-11 13:14 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-09  7:02 [PATCH 1/2] ath9k: change entropy formula for easier understanding miaoqing
2016-08-09  7:02 ` [PATCH 2/2] ath9k: disable RNG by default miaoqing
2016-08-09  7:14   ` Stephan Mueller
2016-08-09  7:35     ` Pan, Miaoqing
2016-08-09  8:07       ` Stephan Mueller
2016-08-09  8:58         ` Herbert Xu
2016-08-09  9:02           ` Stephan Mueller
2016-08-09  9:17             ` Herbert Xu
2016-08-09  9:37               ` Stephan Mueller
2016-08-09  9:46                 ` Herbert Xu
2016-08-09  9:56                   ` Stephan Mueller
2016-08-09  9:56                     ` Herbert Xu
2016-08-09 10:06                       ` Stephan Mueller
2016-08-09 10:24                         ` Henrique de Moraes Holschuh
2016-08-09 17:51                           ` Jason Cooper
2016-08-10  2:35                 ` Pan, Miaoqing
2016-08-10  5:29                   ` Stephan Mueller
2016-08-10  6:04                     ` Pan, Miaoqing
2016-08-10  6:25                       ` Stephan Mueller
2016-08-10  6:46                         ` Pan, Miaoqing
2016-08-10  6:51                           ` Stephan Mueller
2016-08-10  7:15                             ` Pan, Miaoqing
2016-08-10  7:27                               ` Stephan Mueller
2016-08-10  7:40                                 ` Pan, Miaoqing
2016-08-10  7:43                                   ` Pan, Miaoqing
2016-08-10 13:24                                     ` Jason Cooper
2016-08-11  2:54                                       ` miaoqing
2016-08-11 13:14                                         ` Jason Cooper [this message]
2016-08-09 17:48   ` Jason Cooper
2016-09-28 10:00   ` [2/2] " Kalle Valo
2016-09-27 14:53 ` [1/2] ath9k: change entropy formula for easier understanding Kalle Valo
2016-10-13 14:23 ` Kalle Valo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160811131424.GI2013@io.lakedaemon.net \
    --to=jason@lakedaemon.net \
    --cc=ath9k-devel@qca.qualcomm.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=kvalo@qca.qualcomm.com \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=miaoqing@codeaurora.org \
    --cc=miaoqing@qti.qualcomm.com \
    --cc=mpm@selenic.com \
    --cc=pouyans@qti.qualcomm.com \
    --cc=smueller@chronox.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).