Received: by 2002:a5b:505:0:0:0:0:0 with SMTP id o5csp5164541ybp; Mon, 14 Oct 2019 16:45:11 -0700 (PDT) X-Google-Smtp-Source: APXvYqwBSf13vDsOmQKy127vr3fMLD63526P6k4eTcKH9x5Uxr/fJ31ZFpAtczVt3LHbqhWhLLGJ X-Received: by 2002:a17:906:fcac:: with SMTP id qw12mr30854693ejb.31.1571096711248; Mon, 14 Oct 2019 16:45:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1571096711; cv=none; d=google.com; s=arc-20160816; b=j4/K7bkJbcUoWZ3MmpvlSgPlO+0D5pNqMNPBbdIv7c5ydCAsVBnrRWSp25YBPlcx3v TBffnKw9ff2HWQzbGghJ3pxKqBwwH4vrONv9ymru/GB0b+lADpCpwvF43jEzDKlyM4lo wbjHl11pzrlqMLMFuXDGPHtL5ef3gOAVrQpfXxcR0Q0WKzXrj8235JerFQZqCk8lXvA+ q2/0NVMcxrhjLlQwu4+IvuEkL/A8x7s4yF2g93w8OtBpfEGNL06hE9mWLRXAiwEZbCRA tAt0f8YFy632RuB6tPC+k54Kz0MGglTx8RlWUnDrTlintHc7fvgXb6NLAXm+AUdNSUtd snyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:organization:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=CX+hItYItk6aJZ2v7K/Pa/SyBBBilHOmIOj9GJfmX3g=; b=a1KQ2ZSIHZfFDaVr1PAYi6+ksQfoj5Mj0bD53qX5o5rC+39FSp7NWdZn9Yc5TOy6VK brMTzA+EBdWrvFzh3jPtgzu7k3ye5fny1oT4S7ZGb1D18ifCHoO1aflgw8E27m4OBqx8 7eqd0zgO5gS4BO5ZKZP9D/fDHlk7mRrMIzHpJATMP3cIy7RsfIXAhF3AjieXavxeYiou rX7GS9+eogWJypqJZzEfDe+WRsf6c9AYwGx/XkDx/8/W4hFyYODvd0ZriZrijsZR2PFf ifVjXydQPBIYVYYdmy40KGZyR7IKdUIfQPp2OtStGEUqp3+fJ3qVN4AteLI/S7CF/zQn RH0g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 22si11887297ejz.218.2019.10.14.16.44.45; Mon, 14 Oct 2019 16:45:11 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730852AbfJNTAn (ORCPT + 99 others); Mon, 14 Oct 2019 15:00:43 -0400 Received: from mga05.intel.com ([192.55.52.43]:45668 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728106AbfJNTAn (ORCPT ); Mon, 14 Oct 2019 15:00:43 -0400 X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Oct 2019 12:00:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.67,296,1566889200"; d="scan'208";a="208023923" Received: from kridax-mobl1.ger.corp.intel.com (HELO localhost) ([10.252.7.178]) by fmsmga001.fm.intel.com with ESMTP; 14 Oct 2019 12:00:34 -0700 Date: Mon, 14 Oct 2019 22:00:33 +0300 From: Jarkko Sakkinen To: "Safford, David (GE Global Research, US)" Cc: Ken Goldman , Mimi Zohar , "linux-integrity@vger.kernel.org" , "stable@vger.kernel.org" , "open list:ASYMMETRIC KEYS" , "open list:CRYPTO API" , open list Subject: Re: [PATCH] KEYS: asym_tpm: Switch to get_random_bytes() Message-ID: <20191014190033.GA15552@linux.intel.com> References: <20191003175854.GB19679@linux.intel.com> <1570128827.5046.19.camel@linux.ibm.com> <20191004182711.GC6945@linux.intel.com> <20191007000520.GA17116@linux.intel.com> <59b88042-9c56-c891-f75e-7c0719eb5ff9@linux.ibm.com> <20191008234935.GA13926@linux.intel.com> <20191008235339.GB13926@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Oct 09, 2019 at 12:11:06PM +0000, Safford, David (GE Global Research, US) wrote: > > > From: Jarkko Sakkinen > > Sent: Tuesday, October 8, 2019 7:54 PM > > To: Ken Goldman > > Cc: Safford, David (GE Global Research, US) ; Mimi > > Zohar ; linux-integrity@vger.kernel.org; > > stable@vger.kernel.org; open list:ASYMMETRIC KEYS > > ; open list:CRYPTO API > crypto@vger.kernel.org>; open list > > Subject: EXT: Re: [PATCH] KEYS: asym_tpm: Switch to get_random_bytes() > > > > On Wed, Oct 09, 2019 at 02:49:35AM +0300, Jarkko Sakkinen wrote: > > > On Mon, Oct 07, 2019 at 06:13:01PM -0400, Ken Goldman wrote: > > > > The TPM library specification states that the TPM must comply with > > > > NIST > > > > SP800-90 A. > > > > > > > > https://trustedcomputinggroup.org/membership/certification/tpm-certi > > > > fied-products/ > > > > > > > > shows that the TPMs get third party certification, Common Criteria EAL 4+. > > > > > > > > While it's theoretically possible that an attacker could compromise > > > > both the TPM vendors and the evaluation agencies, we do have EAL 4+ > > > > assurance against both 1 and 2. > > > > > > Certifications do not equal to trust. > > > > And for trusted keys the least trust solution is to do generation with the kernel > > assets and sealing with TPM. With TEE the least trust solution is equivalent. > > > > Are you proposing that the kernel random number generation should be > > removed? That would be my conclusion of this discussion if I would agree any > > of this (I don't). > > > > /Jarkko > > No one is suggesting that. > > You are suggesting changing the documented behavior of trusted keys, and > that would cause problems for some of our use cases. While certification > may not in your mind be equal to trust, it is equal to compliance with > mandatory regulations. > > Perhaps rather than arguing past each other, we should look into > providing users the ability to choose, as an argument to keyctl? > > dave I'm taking my words back in the regression part as regression would need really a failing system. Definitely the fixes tag should be removed from my patch. What is anyway the role of the kernel rng? Why does it exist and when exactly it should be used? This exactly where the whole review process throughout the "chain of command" failed misserably with tpm_asym.c. The commit message for tpm_asym.c does not document the design choice in any possible way and still was merged to the mainline. Before knowning the answer to the "existential" question we are somewhat paralyzed on moving forward with trusted keys (e.g. paralyzed to merge TEE backend). Your proposal might make sense but I don't really want to say anything since I'm completely cluesless of the role of the kernel rng. Looks like everyone who participated to the review process of tpm_asym.c, is too. /Jarkko