Re: [Rats] [CoRIM] The use case for TDX- and SEV-SNP-measured virtual firmware

Henk Birkholz <henk.birkholz@sit.fraunhofer.de> Tue, 09 January 2024 21:06 UTC

Return-Path: <henk.birkholz@sit.fraunhofer.de>
X-Original-To: rats@ietfa.amsl.com
Delivered-To: rats@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EB68DC1519B3 for <rats@ietfa.amsl.com>; Tue, 9 Jan 2024 13:06:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.096
X-Spam-Level:
X-Spam-Status: No, score=-2.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, NICE_REPLY_A=-0.091, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=sit.fraunhofer.de header.b="zBmDIcpI"; dkim=pass (1024-bit key) header.d=fraunhofer.onmicrosoft.com header.b="kaCppsl1"
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gZG2DjOQoKXw for <rats@ietfa.amsl.com>; Tue, 9 Jan 2024 13:06:51 -0800 (PST)
Received: from mail-edgeF24.fraunhofer.de (mail-edgef24.fraunhofer.de [IPv6:2a03:db80:3004:d210::25:24]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 13162C1519AF for <rats@ietf.org>; Tue, 9 Jan 2024 13:06:48 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=sit.fraunhofer.de; i=@sit.fraunhofer.de; q=dns/txt; s=emailbd1; t=1704834411; x=1736370411; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=KJzq+FWhmwPsssKYcvwslHsl2UX3GeQreUP5Z7pzKxw=; b=zBmDIcpIY7Z5rtCoKhv+K4AwRbkMBvoNO47UgtENeoRFiUPtPXpZd96/ RKh0YPgsAweRh6e1LeLJIhc4RoL9wpCKZdo1VK+CB08yiqdQckz9kxtGh ptU43deowS3lzbGBZ5VlARQH76iQge3e3yo4+ci66sdFMdY5DE9bhu361 pZxPO0Q6dlPUJyHA9tVkFLEz8rc00JzEEslGRPuiqCphlVA6dF29UYMGJ XLubd5DqZlKbZ39l/+nI3uOL6Cl2FJ69dQBPINWUda+IxJeymNZpjGPvS TqsCNhFj/QXnwTx06fhUIYwiAxnOylHSmxx1xVuIS/gNRILB5kzJ7qF5E w==;
X-CSE-ConnectionGUID: N/e1OGWQSE6H8cAanOrZVg==
X-CSE-MsgGUID: OaHIRMSaQm6nFP7m11kp/g==
Authentication-Results: mail-edgeF24.fraunhofer.de; dkim=pass (signature verified) header.i=@fraunhofer.onmicrosoft.com
X-IPAS-Result: A2EEAAD8tJ1l/xmnZsBRCRoBAQEBAQEBAQEBAwEBAQESAQEBAQICAQEBAUCBOwUBAQEBCwGCECh8gV8DhFCDT4ROiRktA4ETikqQeIEsFIERAxgWGw0PAQEBAQEBAQEBCAEuCwsEAQEDAQOCC4J0Aoc+JzQJDgECAQMBAQEBAwIDAQEBAQEBAQEGAQEGAQEBAQEBBgcCgRmFLz0Ngm0iaoEdAQEBAQEBAQEBAQEBAQEBAQEBARcCDQImDCgBAR0BAQEBAgEBASEPAQUIAQElBwsBBAsJAhIGAgImAgIgBgsXDgYBCQMBBQIBAYIkWAGCKwMOIxQGmmuaaBo3eoEygQGCCgEBBoEHrxwNC2CBYAMGCQGBEC4Bg2aEFh4BhWeEOxcfgVVEgRUnDoFzSgcxPoIfQgEBAoEgCQEICgGDfIJogRx/VYJtgwOGEzh2hV9Sfx0DgQUEXA8bDx43ERATDQMIbh0CMTwDBQMEMgoSDAshBVUDQAZJCwMCGgUDAwSBMAUNGgIQGgYMJgMDEkkCEBQDOwMDBgMKMQMwVUIMUANlHzIJPAsEDBoCGx4NJyMCLEADEQUQAhYDJBYENBEJCygDLAY4AhIMBgYJXSYHDwkEJQMIBAMrKQMjdBEDBAoDFAcLB3gFgRQDGSsdQAIBC209NQkLG0MClSYBgUIFESwvBQEICR02AQMNJQYVBiACDSELIAoMCgQuAwUFBAEBCwEWJQUzBxGSMR0SEiGPAKIFPDQHgjSBYIFbBgyKGI8bhXgGEy+EAYx1hj43kT9kh26OBIJbII1Kg3uRWYR/AgQCBAUCDgiBY3YwcE0kT4JnUhkPjiAMFoEKAQmCQoJkgjCKZnUCAQouAgcBCgEBAwmGS4QdAQE
IronPort-PHdr: A9a23:Xcrjnh9tMaezCv9uWWy9ngc9DxPPxp3qa1dGopNykalHN7+j9s6/Y h+X7qB3gVvATYjXrOhJj+PGvqyzPA5I7cOPqnkfdpxLWRIfz8IQmg0rGsmeDkPnavXtan9yB 5FZWVto9G28KxIQFtz3elvSpXO/93sVHBD+PhByPeP7BsvZiMHksoL6+8j9eQJN1ha0fb4gF wi8rwjaqpszjJB5I6k8jzrl8FBPffhbw38tGUOLkkTZx+KduaBu6T9RvPRzx4tlauDXb684R LpXAXEdPmY56dfCmTLDQACMtR5+Gm8WxxRhJ1bFsBenVaXPoyLB5+xG1Q+FMNPsZ7sJezuc6 o1sdEHCtAlAHGYI4H6C2akSxKgOoxuKvwRkx9feP7GoMPV8UKqNJY4ZHXFNRMBjciZEA4aGb qUCSMMmOt0BpNncgXkchlyUAS2CAuGo62Jai3v1wYofj8oQIw3J5h0rM9UAqHHd6/r3EvkyV 6O2z7Ht6yfhbfF51C7564fhXg0MhPilDJVKTeOJ6hVsGl/Uk3+9kZDlBh/F7fYjgVq5we99U cPy22sLijtvoxLz+Pcu0NHSpY8Zm2n51wt36pkQcI7wWAt6e9miCJxKq2SAOpBrRt93W2hzo 3VSItwuvJe6eG0HxJsq6USDLfKdepWO4hXtWfzXLTorzH5mebfqnx+p6gDg0ezzUMCozUxH5 jRIiNjCt30BllTT58GLR+E7/xKJ1yyGygbT7e9JOwYzk6/aIIQm2bk+itwYtkGrIw==
X-Talos-CUID: 9a23:ljAvQWlg3ZJN6bnlmpfd/uQR/YLXOVuawS73DHCBMks3aO2eYFaW37lWrcU7zg==
X-Talos-MUID: 9a23:1itSogqNS3t8eoaNrvEezxZrFOZSxp+nMUVTl7s+5MzdbC9ofDjI2Q==
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="6.04,183,1695679200"; d="scan'208";a="67511193"
Received: from mail-mtadd25.fraunhofer.de ([192.102.167.25]) by mail-edgeF24.fraunhofer.de with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jan 2024 22:06:44 +0100
X-CSE-ConnectionGUID: 15F1M6QzRMuGNsHznepE3A==
X-CSE-MsgGUID: yoo5Ru0WR5ST8xSDwm00EA==
IronPort-SDR: 659db562_koorh1glzWsiV6R3q1R8PUJGRoVHiyr+efq8LfjYMsJ3A8L RvztAFt36GzL6b8fGAWoiaGOluNZXCM/6r3iUJw==
X-IPAS-Result: A0APAAD8tJ1l/3+zYZlRCRkBAQEBAQEBAQEBAQEBAQEBAQESAQEBAQEBAQEBAQEBQAkcgRYEAQEBAQELAYFmKigHPjdYgQcDhE+DTQEBhE5fhkUBgXQtAzgBWopKkHiBLBSBEQNWDwEDAQEBAQEIAS4LCwQBAYISgnQChzsCJzQJDgECAQECAQEBAQMCAwEBAQEBAQEBBgEBBQEBAQIBAQYFgQoThWwNhkUBAQEBAgEBARARDwEFCAEBFBEHCwEECwkCEgYCAiYCAiAGCwcQDgYBCQMBBQIBAR6CBlgBgisDDiMCAQEQBpprj04BgUACiVcaN3qBMoEBggoBAQYEBLAbDQtggWADBgkBgRAuAYNmhBYeAYVnhDsXH4FVRIEVJw6Bc0oHMT6CH0IBAQKBIAkBCAoBg3yCaIEcf1WCbYMDhhM4doVfUn8dA4EFBFwPGw8eNxEQEw0DCG4dAjE8AwUDBDIKEgwLIQVVA0AGSQsDAhoFAwMEgTAFDRoCEBoGDCYDAxJJAhAUAzsDAwYDCjEDMFVCDFADZR8WHAk8CwQMGgIbHg0nIwIsQAMRBRACFgMkFgQ0EQkLKAMsBjgCEgwGBgldJgcPCQQlAwgEAyspAyN0EQMECgMUBwsHeAWBFAMZKx1AAgELbT01CQsbQwKVJgGBQgURLC8FAQgJHTYBAw0lBhUGIAINIQsgCgwKBC4DBQUEAQELARYlBTMHEZIxHRISIY8AogU8NAeCNIFggVsGDIoYjxuFeAYTL4QBjHWGPjeRP2SHbo4EglsgjUqDe5FZhH8CBAIEBQIOAQEGgWM8OTBwTSRPgmdPAxkPjiAMFoEKAQmCQoJkgjCKZkIzAgEKLgIHAQoBAQMJhkuEHAEB
IronPort-PHdr: A9a23:mcNh8BZMGHhVzxltLHbGDir/LTFg0YqcDmcuAucPlecXIeyqqo75N QnE5fw30QGaFY6O8f9Agvrbv+f6VGgJ8ZuN4xVgOJAZWQUMlMMWmAItGoiCD0j6J+TtdCs0A IJJU1o2t2ruKkVRFc3iYEeI53Oo5CMUGhLxOBAwIeLwG4XIiN+w2fz38JrWMGAqzDroT6l1K UeapBnc5PILi4lvIbpj7xbSuXJHdqF36TFDIlSPkhDgo/uh5JMx1gV1lrcf+tRbUKL8LZR9a IcdISQtM2kz68CujhTFQQaVz1c3UmgdkUktYUDP7ET0d7Ovsnf86+FP5jiTBpzwdr0SRjm89 Y1gdT3ntiItMAJn2l35zecovbJE9UHExVR1lo3dS5mNL/4ndPztQNcVR0RIDp4MVHRaDpm6X a4FCusEB+d2os7UgFw19BDuJC+OFsio4DtsqHn0moxnweklEh3h+VAOLuACv07Fp/nyOr8XW Keazo+W7TOAbPBO/BHvyorKXR04pfKDdJ5tXO/Y4BgILT/s1nbM6oG5Li6/+9wRs1G3v9Fye 9CdqUAitgVQ/2iq6uYWlIjj2rwlyAqc7gZ0zNcMGP+WRmRkRIv3WIsVtjudMZNxWN9nWWxzp SImn6UPooXoFMBr4JEuxhqabuCOX6TSv1TtTu+MJzd/in9/Pr6y1F6+8kmln/X1TdL8kE1Lo SxMjsTWuzgT2gbS5MmKRro1/kqo1TuVkQGGwu9eKF0yla3VJoRnxbg1l5EJtl/EEDOwk0Lz5 JI=
IronPort-Data: A9a23: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
IronPort-HdrOrdr: A9a23:Uux/UKqmrjup7zSnQh6Gk0saV5vKL9V00zEX/kB9WHVpm5Oj+P xGzc526farslsssREb+OxpOMG7MAvhHO1OkO8s1NCZLXbbUQqTXf1fBO7ZrQEIdBeOk9K1uZ 0QCZSWTeeAcGSS7vyKkDVQcexQouVvmZrA7Yy1rwYPcegpUdAa0+4QMHfrLqQcfnggOXNWLu vk2iMKnUvFRZxBBf7LeEXtEtKz7+HjpdbDW1orFhQn4A6BgXeB76P7KQGR2lM7XylUybkv3G DZm0ihj5/T+c2T+1v57Sv+/p5WkNzuxp9qA9GNsNEcLnHJhhyzbIpsdrWetHQeof2p6nwtjN 7Qyi1QdPhb2jf0RCWYsBHt0w7v3HIH7GLj80aRhT/ZrcnwVFsBer18rLMcViGcx1srvdl63q 4O9XmerYBrARTJmzm4z8TUVjlx/3DE7kYKoKo2tThyQIEeYLheocg050VOCqoNGyr89cQODP RuNsfB//xbGGnqI0wxhlMfgeBEY05DXitvGiM5y4+oOnlt7T1EJnIjtYIidixqzuN+d3FGj9 60RpiA2os+C/P+VpgNcdvpcfHHeVAlfii8Ql56AW6XYp3vaEi94qIfpo9FoN2XRA==
X-Talos-CUID: 9a23:2/x1mGGW7yx6VwWsqmI+qWBNP54cYEf40Vj2OG+qD2txZea8HAo=
X-Talos-MUID: 9a23:ivG9ow/mHnzncFHGJPLjEbGQf9Zv5PmUFRgyq8g9h5mUDgBvPm/FoR3iFw==
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="6.04,183,1695679200"; d="scan'208";a="195436436"
Received: from 153-97-179-127.vm.c.fraunhofer.de (HELO smtp.exch.fraunhofer.de) ([153.97.179.127]) by mail-mtaDD25.fraunhofer.de with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jan 2024 22:06:42 +0100
Received: from XCH-HYBRID-04.ads.fraunhofer.de (10.225.9.46) by XCH-HYBRID-04.ads.fraunhofer.de (10.225.9.46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1258.28; Tue, 9 Jan 2024 22:06:42 +0100
Received: from DEU01-BE0-obe.outbound.protection.outlook.com (104.47.7.168) by XCH-HYBRID-04.ads.fraunhofer.de (10.225.9.46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1258.28 via Frontend Transport; Tue, 9 Jan 2024 22:06:42 +0100
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CF8X/ZMar3qGEhRT/EI3ihJ4Zc5SL6bkB+8r/GCPLP39gQqsaMRYXnUzq768LdqYroEILwXldq8pxy8J94M8B3CMVJyVL32KfgUR1q4lv7ZyU5JFkB2qVG+8H4amkANwx+7IZ0fe5FQRvoNBJ/jqLTJWloqS64iXMAMmSV2qHgO5TK9J6E+sma4rWGs9VnFNHDrv/rTMNX8NtLOaaP9z1IAnZg8S1eI9hy+SsQS+FN9LeaJFV0Z8muIRV7ot4QpJ3pwf+nCrU/IU66A7f0+7DWpL41SHYPQU4SVGaeK9EAfE6Ilca3pwcUFT4jo489TCVHPBhRCt0j6NBD4DHUXq8w==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fAL6h4n5cZVyaS9nSeNwevrBcUJgVmBoT6BTF/C0Yxw=; b=aWc8jMZMDBLjVvTBThFPD30oKGOtUPlOgVCqAJkzkwQ76lYHtbKWegrwXmDZCtd67gE3QAlA+SKOEMSa6x9p9cdjHvr7oSlaXYUBrrp7aYjZSbkM6E1SRQdGzkxCcrGI82eWW4fu8ptJu+zbHqyFdylGENVmb7GTd5vFgXk1vLgn7GhTYHcH96rLccpSnTAGKLETJ2TrU2XYc7q4+CJqS1AjTY/afZQkyGZ9Vnh1f4389ZM1to9/x79MFE81oAU9WZnpuBQZNW6vCwYUjECf4yUhEUcX6F4FyOqhXlql+opsFien7cQ98r8i6LwuR3CZkxQLH5xQzfr9P7SW8kOx1w==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sit.fraunhofer.de; dmarc=pass action=none header.from=sit.fraunhofer.de; dkim=pass header.d=sit.fraunhofer.de; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fraunhofer.onmicrosoft.com; s=selector2-fraunhofer-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fAL6h4n5cZVyaS9nSeNwevrBcUJgVmBoT6BTF/C0Yxw=; b=kaCppsl1b7XUlgjFa805k0sdrnZMbmimRiFe/AOoS1c8INJzC/BlLFnj/I5zelktOM4FYZdgRycDofpma/GjN6Hn+kkpMNzJjjGeqlkgADuEMaA9ORTA0K4+e4yuBEPthQD8SzFZZJFmulI58mDIRviB4VXj20sKed9QUJFfBwM=
Received: from FR0P281MB2879.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4c::8) by BEZP281MB2230.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:59::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.23; Tue, 9 Jan 2024 21:06:39 +0000
Received: from FR0P281MB2879.DEUP281.PROD.OUTLOOK.COM ([fe80::a3df:349f:8d92:1d7f]) by FR0P281MB2879.DEUP281.PROD.OUTLOOK.COM ([fe80::a3df:349f:8d92:1d7f%4]) with mapi id 15.20.7159.020; Tue, 9 Jan 2024 21:06:39 +0000
Message-ID: <4efe6901-ea7a-e24c-98f9-957289b6d1dc@sit.fraunhofer.de>
Date: Tue, 09 Jan 2024 22:06:37 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0
Content-Language: en-US
To: Dionna Amalie Glaze <dionnaglaze=40google.com@dmarc.ietf.org>, Tom Jones <thomasclinganjones@gmail.com>
CC: rats@ietf.org
References: <CAAH4kHak38yodUYUJGGPjor42PB5cNgHnC_h-c0F3T6KJapTjw@mail.gmail.com> <CAK2Cwb4zHtRTjb82njC1eUc-R83Fjpw39JNBfCT+tFNaLoTcRw@mail.gmail.com> <CAAH4kHYqYONbs4mODjJ_hRmhxrbzHup1pbUbVGWuijFf0tGyZA@mail.gmail.com>
From: Henk Birkholz <henk.birkholz@sit.fraunhofer.de>
In-Reply-To: <CAAH4kHYqYONbs4mODjJ_hRmhxrbzHup1pbUbVGWuijFf0tGyZA@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: FR4P281CA0209.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:e5::8) To FR0P281MB2879.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4c::8)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: FR0P281MB2879:EE_|BEZP281MB2230:EE_
X-MS-Office365-Filtering-Correlation-Id: 69e11b98-ae9f-4bb2-bda0-08dc1156df78
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;
X-Microsoft-Antispam-Message-Info: hNFr8XHGyOoMrr4sPRR6zsQDnwPOQcf/g6keT5Bkf4TNRhbWB6CgvwhN4O1aO3uvBl4GXS3/YqT+uzORTg0vnyj1uQvJjh9tO/2EAIF/QeSV24iTegcF0sRY98wpJKlJPPU4q1bVZuqi99z2/nSQuTJRdcInvamMZGfeZYlbMhaHXqIi0iyuLdTi4Xknq4DiaUDLXz0+963SnyRzGyCgfLO9u1IU49EgFBpZg1YgPrw7O84QP4lAxwSay5D2ILnk1+KZxNqc/NY9JuRxeipZARmlXjxkb99IXBCO+TFSU2/YAN5QV4g+VDqEN4ZJQ2/dmQGrepVlR8Kgh+jdrq7f9xP51ldKL8ywewGmB+6vd5LNKpQQpSDWwxrwULmGLpDsjYi8XYWSS/vHqj3DRO9oOaJcslzDzNkxXiwRa17k1Jvi4TijxQHpa5dieC6K4YbBQ7fVXFffoUbHuk1mv8MQt62AtLvJgVnNjp3Q+pZCZ4zYeZrmu57dDmdWtHylWI9BohOxSzhURWnj+EewIGa2kd09+zEDCO1LdrjznEBxeKh45UkCidlnKZvx09Lx+VwtnShazvqC5R26jtSJhXtiyYYl0Akj+C2JTNUo2d9Lc9iJqMxz30qcycXck7KjaiN715kAjlg6L4Ju2560P8myZ0FdGnrxaeUmQzgJ/vgrbwQujBtmglzKJDErYWOZz6fE
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:FR0P281MB2879.DEUP281.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230031)(376002)(346002)(396003)(39860400002)(136003)(366004)(230922051799003)(451199024)(64100799003)(1800799012)(186009)(66899024)(38100700002)(82960400001)(53546011)(6506007)(2906002)(478600001)(966005)(44832011)(6512007)(66946007)(8676002)(66556008)(110136005)(8936002)(316002)(4326008)(66476007)(5660300002)(30864003)(6486002)(41300700001)(2616005)(26005)(83380400001)(31686004)(86362001)(31696002)(45980500001)(43740500002); DIR:OUT; SFP:1102;
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: uZiU76BwwhXzIo/1pzUYbyCe9dXCUt/NumA9v6vI3Q9I00fl1bo+HaQGpd/8O61d8VyufLOjb5MKaTEwNwXDbVtVVWwsXUXWn5up2EThIvzV/j3i/Y19ttkXAzGs+BxoMCeWsAFl8xQKRApZnMIiTQjJiP9fcbS0tmB6NckzT2WOGV68zxuY9AEnt4qeMFhBlfa8Xu//XRnWmUQqpeiB36yWLhCeIbd/BjyGo82OCzzISqqojl4VBU6GNLufbyNeTp1JJePwOXiES91dzHII9EblpTFfnyJhyQiiCJ/zAmDvFItDqOzrdVS0OiKMaIy+sHXx3TO41+MrpNKnXIoVaxSeoi6fZAeo1ouTcgW9f+y6oOol1W5zs1pzb1SJv8OT8jJCGWu8MwUo6xcc2rxOc8ImjP+f0PKWY/pLCS7BxfK9HeYcewnGcjy8Imlmsea+Y12ey0MRqzpsnTOfjVmADgSsj4Ik/L3uhYhIsMyxG4nCce7E/MeI8rUQSiv7lWMMni5vcMuLGhI0b0lJy99zKcx9eXuSLk9mYSKXBWezmmDFu9TIXXDZRCZA3d7ArKSEs0yXdnYUYrLHCWP90LyLYnDN0ZvIU3kOr5tVpyOPI0z4vowtqCbxblzz62RjQ3p6CjdrS30/1nBUTCkms80IPQrWfClhyEdaLI6I4cjHF/uHRdhqM8yqtF0PYuddI4KUhBw1oGsDSuHPxINlnp7j9rskDA+jX/8PYgCmWzwA9RyxV9B19Gdzbu7NFSrOnz143yg0mCl81nrlTo7+Js/2ievgbfSp70LSZPFRI3kacWNh3TUUz2IxcFtgRF7CDuTx28ELVGM7QOMswqETrrSTZlLFC/I0+pweA1tIRWBKTBUFB/Zm3gWAafjxm+ytQ+WO6gVexKQ1DupW61rgYr2Q6BdLljoJ1xevIndUjeIbSSbXqdobdPFuQz7thwXuBv1YmO1RuDLmDG7bAxUN+kd4j/WZ5geCgYZuHOwwhBuRgiJHe53RSu+nnzvoTzsO4MGnP/7DePAVxlYLZ55EEFdhMTGTtodqHmSTcGblnBcQ6oGB2pe+sAqWKMXcD77BYvarR/1lgXGkv+pbcpsTpHSkvtDVs9VFPo+rVAy6XaGxVaraJhgvEMLMrYWZHeHwFcSdB+7X3kMx40tIZvj2WY+2K/5hV3V9LhGMV9QH4YGkHGzU4R5kor5uuoChmwiNY+gslCTxA0JY8FoZMFZF/OB2viEkQnjTaYSVPmSIBQlKY5xB0H7EGlwxCAebmzSBkOggcADMAFALdmoSKsLe7KYKwU7SdtTZxZDuNb3UKUrksgCJcmlP7k5K5akyksGT5PdWHEDXZgTHwAY82j6scPKVMQhTC4bsfF6GWyCgzyKdDrEFUlDdVmKObZ9jB02XoC+ehb+xSCjbGhN1F1JJjU0qpikNsrCDGbkNysIYslarj7yfdMRu+YX2l2febDj0vlZ/RPoIY61fYfIKsWSvOLBYR86ME86fgfkmtKJXesKdm8lwFIfq8G4IyqhTnp8bAO8Cu4B8t875IVKrXgE0U7ByWkhOitsHs4acPJlPGt/6YhH0xSGtbZrMu9kPx37ByjsyvrTXWYHkIJ3fr8kVjXbaDqtb57BsG7APlwwptOIbqzI=
X-MS-Exchange-CrossTenant-Network-Message-Id: 69e11b98-ae9f-4bb2-bda0-08dc1156df78
X-MS-Exchange-CrossTenant-AuthSource: FR0P281MB2879.DEUP281.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2024 21:06:39.5035 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: f930300c-c97d-4019-be03-add650a171c4
X-MS-Exchange-CrossTenant-MailboxType: HOSTED
X-MS-Exchange-CrossTenant-UserPrincipalName: 9kpySQ5rR8R/hwtaIGe4sSBxExOudS8t6Waj4+cP0KleUj0yMT2yXHcP6J3ouNjETrL+6jH39YgGoiM47l8wmqh04iZlivKtZLPVOjxCFBk=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEZP281MB2230
X-OriginatorOrg: sit.fraunhofer.de
Archived-At: <https://mailarchive.ietf.org/arch/msg/rats/bMnBYtQZ4LdnEOqpxfJmdNu6PGM>
Subject: Re: [Rats] [CoRIM] The use case for TDX- and SEV-SNP-measured virtual firmware
X-BeenThere: rats@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Remote ATtestation procedureS <rats.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rats>, <mailto:rats-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rats/>
List-Post: <mailto:rats@ietf.org>
List-Help: <mailto:rats-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rats>, <mailto:rats-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 09 Jan 2024 21:06:57 -0000

Hi Dionna,

thank you for bringing the CVM goals here! I think they are a great 
addition to the mix. Let's try to figure out some answers to your 
questions step by step.

You are touching on a lot of topics, so I am focusing on adding context 
to the RATS side of things first and in the interest of the list's 
subscribers only point quickly to one recent SCITT activity up front:

> https://github.com/ietf-wg-scitt/draft-ietf-scitt-architecture/pull/156

Pending the approval of that PR, the initial attempt to facilitate DIDs 
as a first citizen identifier is a thing of the past.


So, RATS: please let me try to add some additional context about in-toto 
attestations in the context of RATS & CoRIM to start with, in the way 
how I currently understand it.

The attestations you refer to are described here, I think:

> https://github.com/in-toto/attestation/tree/main/spec/v1

In remote attestation land, the concept that can be found at that 
pointer is potentially best compared with a RATS Endorsement or NIST's 
3rd-Party Attestation and maybe also NIST's 1st-Party Attestation (a 
"self-attestation"), I think. It seems not to be RATS Evidence, I think, 
which is the input to a RATS Verifier, and I am happy to exchange more 
thoughts about that.

in-toto attestations' outer layer are in-toto Envelopes with a JSON 
encoding, which are signed using DSSE:

> https://github.com/secure-systems-lab/dsse/blob/v1.0.0/envelope.md

DSSE - Dead Simple Signing Envelope - is an alternative approach to 
JOSE's JWS. Some reasoning about why it is defined as it is can be found 
here:

> https://github.com/secure-systems-lab/dsse/#why-not

In CoRIM work, we are also defining semantics that could be viewed as a 
type of pre-defined set of predicates as defined by in-toto:

> https://github.com/in-toto/attestation/tree/main/spec/predicates

I am an under the impression (maybe wrongfully so!) that the 
similarities seem to end there.

Two of CoRIM's goals - in a simplified nutshell - are compactness 
combined with standardized signing. The JSON encoding prescribed by 
in-toto seems to be going down a different path, but hypothetically it 
might be possible to transfer all semantics covered in CoRIM into 
in-toto predicates. The DSSE uses a signing scheme that seems to make 
some unique choices on flexibility and extensibility, of which I would 
be careful to assume that they can be simply adopted as is. I am happy 
to exchange more thoughts on these topics, too.

We definitely agree on the goal to not overly burden Verifiers with 
respect to their duty of appraisal of Evidence. There is a lot more in 
your email, but I am stopping here for now so that we can work through 
your illustrated goals and corresponding questions iteratively, if that 
is okay for you.


Viele Grüße,

Henk

p.s. I started the email off with your reply to Tom instead of your 
initial email. Sorry!


On 09.01.24 20:34, Dionna Amalie Glaze wrote:
> On Mon, Jan 8, 2024 at 5:15 PM Tom Jones <thomasclinganjones@gmail.com> wrote:
>>
>> I don't understand the process that would allow a 3rd party attestor to make any assertion about what happened in the Google cloud (or any other cloud for that matter.)  Does anyone else understand the basis for virtual instances being attested as secure?
> 
> The process is by transferring trust to a third party attester that
> you do trust, and ensuring that the attested environment is heavily
> protected from host tampering. This is the idea behind Trusted
> Execution Environments, and is a very different threat model than
> folks typically work with.
> For AMD SEV-SNP or Intel TDX, you have to trust that the chip is doing
> its job right, such that you can take the chip's signature of a
> virtual instance's boot state at face value, so long as the key
> certificate roots back to the manufacturer's published root of trust.
> What Google then certifies is what the measurement of the boot means,
> since we're providing the firmware. At first this will just be "we
> signed the measurement", but then we'll add claims like, "this
> measurement is producible through documented means on a binary that
> was built from sources X and toolchain container Y"
>   and then you can go further down the rabbit hole of if you trust the
> builder, or if X + Y have the difficult-to-attain property that a
> clean rebuild yields exactly the same bits. You can audit the sources
> to establish trust in the firmware, and you can continue the "who
> built the toolchain container and do I trust them?" unfathomably long
> chain of builders building builders.
> 
>> ..tom
>>
>>
>> On Mon, Jan 8, 2024 at 4:33 PM Dionna Amalie Glaze <dionnaglaze=40google.com@dmarc.ietf.org> wrote:
>>>
>>> Hi y'all, I've touched on the issue of confidential VMs (CVMs) a few times in my issues and emails to this list, but I'd like to lay out exactly what we'd like to be able to enable with RATS.
>>>
>>> # Goals
>>>
>>> Our goal is for CVM hardware attestations of Google-provided TCB to be linked to
>>> 1. verifiable authenticity: signed corim measurements
>>> 2. auditable measurements: the signed measurement also points to a supply chain transparency report for the measured binary. A document or software package we publish shows how to calculate the measurement from the binary, and the transparency report binds the binary to an auditable source tree at commit X built with toolchain container Y, signed by an organizationally endorsed builder key that the build follows SLSA L3 operational security requirements.
>>>
>>> and ephemeral claims, e.g.,
>>> 3. vulnerability reporting: short-lived certificates of firmware status, like "has the most up to date security version number" or "is subject to CVE xyz. Restart your instance to get on the latest version". This could be modeled as a CoRIM endorsement of a claim like "uptodate as of TIMESTAMP".
>>> 4. Platform security reporting: short-lived certificates of platform firmware status, like "you can be sure that an attestation's TCB is >= x anywhere in the fleet"
>>>
>>> # Supply chain standards
>>>
>>> There are further things you can do with the transparency report like non-repudiation through hosting the build attestation with a transparency service that has append-only logs after identity-proofing, but there seems to be a fundamental disagreement between the IETF SCITT workstream and the sigstore.dev project on how to achieve that, since SCITT wants W3C DID identities, and sigstore.dev is already built to use OIDC. I don't know how that all is supposed to be consonant with RATS, since there's nothing in the corim or eat documents about using DID for identities. There is EAT binding to OIDC tokens though. Is there anyone in the RATS group that is participating in the SCITT effort that can explain this to me?
>>>
>>> The SLSA provenance schema itself is defined in terms of a completely different attestation format called in-toto (https://in-toto.io), and communication I've had with them is that in-toto should be considered an alternative carrier format to CoRIM to fit into the RATS framework. If we want to link the reference measurement to an in-toto attestation, that seems like something verifier-specific that we'd need to say, "hey if you want to ensure the firmware measurement is not only signed, but built transparently, then download the SLSA attestation in dependent-rims. By the way if there's more than one thing in dependent-rims, you can understand any url with prefix X to be a firmware build attestation from Google" which is an unfortunate complexity.
>>>
>>> # Modeling CVM attestation
>>>
>>> I'm trying to understand how to fit all these goals into the RATS framework such that we can propose extensions to open source verifiers that aren't overly burdensome or highly specific to each particular package we want to provide reference values (and provenances) for.
>>>
>>> In terms of the firmware measurement, we can deliver a CoRIM through a UEFI variable pointed to by the NIST SP 800-155 unmeasured event, and we can give the AMD SEV-SNP VCEK certificate through extended guest request, but everything else seems to be up to the verifier to collect independently of the VM.
>>>
>>> ## Evidence collection
>>>
>>> The way we're collecting attestations at the moment is through a recommended software package https://github.com/google/go-tpms-tools that wraps up a vTPM quote with a TEE quote and supporting certificates as a protocol buffer. I'm not clear if this unsigned bundling process should be modeled as any particular thing in the RATS framework. I think we're working with the "passport model" of attestation.
>>>
>>> I don't have a sense of how the WG foresees how evidence should be bundled to give to a verifier. I'm working from a vendor-specific understanding at the moment that whatever verifier service you use, you need to use their format and API, but of course ideally I'd like this to be more of a federated arena where you can have n-of-k verifiers say some evidence matches policy, and the evidence is not too vendor-specific for that to be out of the question.
>>>
>>> ## CVM Profiles
>>>
>>> Whereas Google has an attestation verifier service that generates an EAT with its own claims bound to an OIDC token (for the Confidential Space product), we'd like to use more standard claims, like AMD SEV-SNP measurement, Intel TDX MRTD, etc. Azure's attestation service has their own x-ms-* extensions for this that will hopefully help AMD and Intel align on how claims should be proposed for the CoRIM format.
>>>
>>> Supposing we do get profiles from Intel and AMD for their CVM attesting environments (more below), those environments sign quotes / attestation reports that serve as evidence for the claims defined in those profiles.
>>>
>>> I as a Reference Value Provider want to be able to provide a document that says something that covers 1 and 2 up front like, "if your AMD measurement is contained in {x, ...} or your TDX measurement is contained in {y, ...}, then you're running Google-authentic virtual firmware with security version n. The firmware this measures can be found at z".
>>>
>>> My understanding of how to do this is for the firmware CoRIM to have a single CoMID tag and the SLSA provenance linked from dependent RIMs.
>>> The CoMID tag will have lang: en-us, tag-identity: some-uuid we generate before signing, and triples-map containing some reference triples.
>>> We have reference triples for both AMD and TDX by using different environment-maps with different class fields.
>>> AMD SEV-SNP's class is up to AMD to profile, but let's just say it's a class-id for the VCEK extension oid prefix 1.3.6.1.4.1.3704.1.1. The measurement-map for this can have an mkey or not. If we had one, I'm unsure if it's something that Google would define or if it's still up to AMD. If Google, we could use a uuid that stands for Google Compute Engine?
>>> The mval as a measurement-values-map would then contain our AMD firmware svn, and AMD profile-specific claims, but I think we'd just give the measurements and some form of acceptable policy specification. We just have one guest policy we apply everywhere, but if that changes we probably need the AMD profile to have expressions like ranges, lower- and upper-bounds for policy components.
>>> For Intel, they'd need a similar profile for the TDREPORT components as claims.
>>>
>>> I say measurements and not measurement even though we're talkabout about a single firmware binary because both AMD and TDX can have multiple measurements based on the VM construction, such as how many vCPUs it launched with (AMD has VMSAs and Intel has TDVPS).
>>> For now our security version number matches what we measure as EV_S_CRTM_VERSION in PCR0, but that may change if there are technology-specific changes.
>>>
>>> As far as I understand, the Intel profile for CoRIM only supports the boot chain up to the quoting enclave (QE) in terms of its TCB version, but the profile does not describe the QE as its own attesting environment for SGX enclave or TDX VM. The attesting key is generated in the QE and is signed by the PCE's hold on the PCK, which is per-machine-per-TCB (ppid + pceid). The quote wraps around the attesting key's signature for verification against their non-x.509 format.
>>>
>>> AMD similarly does not have a profile for the SNP firmware as an attesting environment for an SEV-SNP VM.
>>>
>>> # Evidence Appraisal
>>>
>>> Setting aside evidence formats, I want to really understand how we go from a signed CoRIM and a CVM attestation to an attestation result (which I'll handwave is some JWT representation of the accepted claims).
>>>
>>> We somehow get the VCEK or PCK certificate and attestation report / quote, and the Google firmware CoRIM to the verifier. The verifier can verify the evidence back to the manufacturer with this forwarded (or cached) collateral and introduce every quote/report field as claims of the target environment.
>>> Let's say Google's code signing root key is in the trust anchor, so any CoRIM we sign is trusted.
>>>
>>> If I read the CoRIM document about matching reference values against evidence, the document starts talking about conditional endorsements instead, which are a different triple from reference-value-triples. We discussed a little in the Github issues that reference values are a special kind of endorsement, but it's still jarring. It goes on to say that reference-value-triples is essentially redundant with the conditional-endorsement-triples, but you can use either. Then there's "In the reference-triple-record these are encoded together. In other triples multiple Reference Values are represented more compactly by letting one environment-map apply to multiple measurement-maps."
>>>
>>> It seems "Conditional Endorsement" is philosophical, and "conditional-endorsement-triples" is one implementation of the idea, and "Reference Value" is philosophical, but "reference-value-triples" is one implementation of the idea. Another implementation of "Reference Value" as an mkey of a "conditional-endorsement-triples", and the mval is more explicit about what claims are introduced. For "reference-value-triples", I don't see any explicit representation of a claim, rather, reference-value-triples lead to "authorized-by" getting added to fields of an Accepted Claim Set entry which itself is only a conceptual type to help understand appraisal, but not an actual claim itself–is this where a profile-defined claim needs to clarify meaning? I see this authorized-by as conceptually different from the optional field of a measurement-map, since that is from the CoRIM that I've signed and isn't part of an attestation result representation.
>>>
>>> If I'm looking at a JWT with an AMD profile claim about the measurement value, I'd like another claim that the measurement value is signed by Google, or a stronger claim that the measurement value was signed by a trusted source, and the build provenance is [some google URL to the SLSA provenance].
>>> Again though, if at all possible these claims should appeal more broadly than just Google.
>>>
>>> --
>>> -Dionna Glaze, PhD (she/her)
>>> _______________________________________________
>>> RATS mailing list
>>> RATS@ietf.org
>>> https://www.ietf.org/mailman/listinfo/rats
> 
> 
>