From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932379AbbJ0NzM (ORCPT ); Tue, 27 Oct 2015 09:55:12 -0400 Received: from e23smtp03.au.ibm.com ([202.81.31.145]:57555 "EHLO e23smtp03.au.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932273AbbJ0NzK (ORCPT ); Tue, 27 Oct 2015 09:55:10 -0400 X-IBM-Helo: d23dlp03.au.ibm.com X-IBM-MailFrom: zohar@linux.vnet.ibm.com X-IBM-RcptTo: keyrings@vger.kernel.org;linux-kernel@vger.kernel.org;linux-security-module@vger.kernel.org Message-ID: <1445954047.5237.28.camel@linux.vnet.ibm.com> Subject: Re: [PATCH] keys, trusted: select TPM2 hash algorithm From: Mimi Zohar To: Jarkko Sakkinen Cc: Peter Huewe , Marcel Selhorst , David Howells , tpmdd-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org, linux-security-module@vger.kernel.org, keyrings@vger.kernel.org, chris.j.arges@canonical.com, seth.forshee@canonical.com, colin.king@canonical.com, josh@joshtriplett.org, Jason Gunthorpe , David Safford , James Morris , "Serge E. Hallyn" Date: Tue, 27 Oct 2015 09:54:07 -0400 In-Reply-To: <20151027104255.GA9798@intel.com> References: <1445690562-11405-1-git-send-email-jarkko.sakkinen@linux.intel.com> <1445800891.3072.36.camel@linux.vnet.ibm.com> <20151026054439.GA22427@intel.com> <20151027104255.GA9798@intel.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.12.11 (3.12.11-1.fc21) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15102713-0009-0000-0000-00000249087F Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 2015-10-27 at 12:42 +0200, Jarkko Sakkinen wrote: > n Mon, Oct 26, 2015 at 07:44:39AM +0200, Jarkko Sakkinen wrote: > > On Sun, Oct 25, 2015 at 03:21:31PM -0400, Mimi Zohar wrote: > > > On Sat, 2015-10-24 at 15:42 +0300, Jarkko Sakkinen wrote: > > > > Added 'hashalg=' option for selecting the hash algorithm. > > > > > > > > Currently available options are: > > > > > > > > * sha1 > > > > * sha256 > > > > * sha384 > > > > * sha512 > > > > * sm3_256 > > > > > > Please consider using crypto/hash_info.c: hash_algo_name[], which > > > already define the algorithm string names. Use > > > include/crypto/hash_info.c to include a reference to this array. > > > > It wold work for me. I did ad-hoc because first example that I looked > > at was EcryptFS. After EVM, EcryptFS was the first subsystem to use trusted keys. Support for larger digests was later added to IMA. > > I need to add sm3_256 to that array. Unless there is kernel crypto support for this algorithm, I would conditionally include the algorithm, probably based on a Kconfig option. > > I've found three different ways to write it: > > > > * sm3256 (various google hits) > > * sm3-256 (various google hits) > > * sm3_256 (TPM 2.0 Structures specification) > > > > Maybe the second option would be the most appropriate? Right, If there aren't any standards, use the second option for the string and an underscore for the variable name. > > > Boot command line options should be prefixed with the subsystem name. > > > So instead of hashalg, please use tpm_hashalg. The boot command line > > > option needs to be documented in Documentation/kernel-parameters.txt. > > > > I see. My commit message is clearly inadequate. It's an option for the > > keyring syscalls. Sorry for the misunderstanding. > BTW, in IMA I see you have the hash algorithm as a boot parameter. I > guess it makes sense there because it works implicitly in the > background? The default hash algorithm is defined using the Kconfig IMA_DEFAULT_HASH option, but can be specified on the boot command line using "ima_hash=". > Sealing a trusted key is an explicit operation. That's why I thought > it'd be better to have it as an option for the syscall. Does this logic > make sense to your or not? It does. > > PS. Hey one more thing: this was supposed to be RFC, forgot to add > --subject-prefix="PATCH RFC". Sorry about that. :) Mimi