Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2218039/?format=api
{ "id": 2218039, "url": "http://patchwork.ozlabs.org/api/patches/2218039/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/patch/20260331100047.34618-9-philippe.reynes@softathome.com/", "project": { "id": 18, "url": "http://patchwork.ozlabs.org/api/projects/18/?format=api", "name": "U-Boot", "link_name": "uboot", "list_id": "u-boot.lists.denx.de", "list_email": "u-boot@lists.denx.de", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260331100047.34618-9-philippe.reynes@softathome.com>", "list_archive_url": null, "date": "2026-03-31T10:00:40", "name": "[v3,08/15] test: vboot: add test for ecdsa", "commit_ref": null, "pull_url": null, "state": "changes-requested", "archived": false, "hash": "5454ff298b038b0cb0684f2a72e248b1e822c61c", "submitter": { "id": 74351, "url": "http://patchwork.ozlabs.org/api/people/74351/?format=api", "name": "Philippe Reynes", "email": "philippe.reynes@softathome.com" }, "delegate": { "id": 161313, "url": "http://patchwork.ozlabs.org/api/users/161313/?format=api", "username": "raymo200915", "first_name": "Raymond", "last_name": "Mao", "email": "raymondmaoca@gmail.com" }, "mbox": "http://patchwork.ozlabs.org/project/uboot/patch/20260331100047.34618-9-philippe.reynes@softathome.com/mbox/", "series": [ { "id": 498164, "url": "http://patchwork.ozlabs.org/api/series/498164/?format=api", "web_url": "http://patchwork.ozlabs.org/project/uboot/list/?series=498164", "date": "2026-03-31T10:00:34", "name": "add software ecdsa support", "version": 3, "mbox": "http://patchwork.ozlabs.org/series/498164/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2218039/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2218039/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<u-boot-bounces@lists.denx.de>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=softathome1.onmicrosoft.com header.i=@softathome1.onmicrosoft.com\n header.a=rsa-sha256 header.s=selector1-softathome1-onmicrosoft-com\n header.b=ExSStfMP;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org)", "phobos.denx.de;\n dmarc=none (p=none dis=none) header.from=softathome.com", "phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de", "phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=softathome1.onmicrosoft.com header.i=@softathome1.onmicrosoft.com\n header.b=\"ExSStfMP\";\n\tdkim-atps=neutral", "phobos.denx.de; dmarc=none (p=none dis=none)\n header.from=softathome.com", "phobos.denx.de;\n spf=pass smtp.mailfrom=philippe.reynes@softathome.com" ], "Received": [ "from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4flNv30yGJz1y1q\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 31 Mar 2026 21:01:51 +1100 (AEDT)", "from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 9850D84109;\n\tTue, 31 Mar 2026 12:01:03 +0200 (CEST)", "by phobos.denx.de (Postfix, from userid 109)\n id 73A6C840D8; Tue, 31 Mar 2026 12:01:01 +0200 (CEST)", "from PAUP264CU001.outbound.protection.outlook.com\n (mail-francecentralazlp170110002.outbound.protection.outlook.com\n [IPv6:2a01:111:f403:c20a::2])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id 072AC84035\n for <u-boot@lists.denx.de>; Tue, 31 Mar 2026 12:00:56 +0200 (CEST)", "from MR1P264CA0132.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:51::7) by\n MRZP264MB3242.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:30::13) with\n Microsoft\n SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.20.9745.28; Tue, 31 Mar 2026 10:00:53 +0000", "from MR1PEPF00000D58.FRAP264.PROD.OUTLOOK.COM\n (2603:10a6:501:51:cafe::4d) by MR1P264CA0132.outlook.office365.com\n (2603:10a6:501:51::7) with Microsoft SMTP Server (version=TLS1_3,\n cipher=TLS_AES_256_GCM_SHA384) id 15.20.9745.28 via Frontend Transport; Tue,\n 31 Mar 2026 10:00:28 +0000", "from proxy.softathome.com (149.6.166.170) by\n MR1PEPF00000D58.mail.protection.outlook.com (10.167.241.5) with Microsoft\n SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9745.21\n via Frontend Transport; Tue, 31 Mar 2026 10:00:53 +0000", "from sah1lpt726.home (unknown [192.168.72.39])\n by proxy.softathome.com (Postfix) with ESMTPSA id 0888C20B06;\n Tue, 31 Mar 2026 12:00:53 +0200 (CEST)" ], "X-Spam-Checker-Version": "SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de", "X-Spam-Level": "", "X-Spam-Status": "No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,RCVD_IN_DNSWL_BLOCKED,SPF_HELO_PASS,SPF_PASS autolearn=ham\n autolearn_force=no version=3.4.2", "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=UqHZlfx0rJ8wo2BI/SE0LOAZesGo+/1eabP25B5ZjwetsWRlyBgGjK2eoHRva67zt+C7bVp9F6pyNLL5YuqVCyS7u4h/F2xtHAdZpQ82kJrL9+nZuLx2Daf85dbtlYOuSdGiPJvi9/TmVQQGxmF1qTWageTQsWqnd70DB6J36vPTi82LiqznBTQbJtGhLTt505OEeqwS82vD89ov1lYZHxcVL2zdF+mbipEfhCndrIXpVvjvbQSThRySHgKQQLn9dC5yd2kdh/I7iPYeuSDXK5dVrWYMyBATwZNmZjQuEWVtm0XJucRAXkdgQrFNVrOMufQ9ibFeAX0dQpfD/cNp7Q==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=zfpFjGweHMQnVlC1EXJgs+yVXQ7wNX01/cuSTiiLDTA=;\n b=BrRSRhxyuK4C+5yJZnm2PXrnPi2ByKh/PAZPYIkT/UOL3TwmwC3tjiA0Ph03/T9YR7jzwnvqZBW8L3Yq5OhaxNQP8iYkDdF3hEKzB61GM1u2+f8k4+VjVZlIupzc+JeQ2yRLpIGRR1rrS+D5+aWdJICcLVJ7UjThsYsVTTT0tPoi/dKBoXa8GxWhTV5tAgU87HLSl2hC/UTymFiXNuJDanaF7vhVwRQraiKn1QUJbN2omghvam2QTQ9cVRy1aFn7wK7X4HanR82p27taeN2jq4EDXwASFY2QYkB556eSISsXd4Ne1B3vJV8G2pd1omTupJiRYnolHdFMi0jYjJXAqg==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 149.6.166.170) smtp.rcpttodomain=canonical.com smtp.mailfrom=softathome.com;\n dmarc=bestguesspass action=none header.from=softathome.com; dkim=none\n (message not signed); arc=none (0)", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=softathome1.onmicrosoft.com; s=selector1-softathome1-onmicrosoft-com;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=zfpFjGweHMQnVlC1EXJgs+yVXQ7wNX01/cuSTiiLDTA=;\n b=ExSStfMPVp+gKt091QfFC/hI2xxkUTYte6y/Ulpo7yBmtwY4oCxOj/QdxEdooHIBntImNfyVlXd03AskK64cetxOHrN7z/pTnH8IhfJ5kSg9BDNhVq8FtN8As56DPynTpd3v7Q/Bk0UwrFPTUY2r1VOHWJgO3LLIOaTajx/EI6tnIAva2B4ciKlPLnu1rnFjverIY6eptPSWsFywjiXdrjb8HX2PMjDIjSjwvROjSLZcPsZKHn2zT9+4VLlLqdpSrH+1L5tDgnP9ngGb15XvsH8rh379ML1Fg/xGGPL3y7Ab/r+i0Ry70+1lYnb1pvnRDorPleOJUMw++MnwhH3TwQ==", "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 149.6.166.170)\n smtp.mailfrom=softathome.com; dkim=none (message not signed)\n header.d=none;dmarc=bestguesspass action=none header.from=softathome.com;", "Received-SPF": "Pass (protection.outlook.com: domain of softathome.com\n designates 149.6.166.170 as permitted sender)\n receiver=protection.outlook.com; client-ip=149.6.166.170;\n helo=proxy.softathome.com; pr=C", "From": "Philippe Reynes <philippe.reynes@softathome.com>", "To": "marko.makela@iki.fi, jonny.green@keytechinc.com, raymondmaoca@gmail.com,\n trini@konsulko.com, simon.glass@canonical.com", "Cc": "u-boot@lists.denx.de,\n\tPhilippe Reynes <philippe.reynes@softathome.com>", "Subject": "[PATCH v3 08/15] test: vboot: add test for ecdsa", "Date": "Tue, 31 Mar 2026 12:00:40 +0200", "Message-ID": "<20260331100047.34618-9-philippe.reynes@softathome.com>", "X-Mailer": "git-send-email 2.43.0", "In-Reply-To": "<20260331100047.34618-1-philippe.reynes@softathome.com>", "References": "<20260331100047.34618-1-philippe.reynes@softathome.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-EOPAttributedMessage": "0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "MR1PEPF00000D58:EE_|MRZP264MB3242:EE_", "Content-Type": "text/plain", "X-MS-Office365-Filtering-Correlation-Id": "51e2358d-2070-4462-1758-08de8f0c6556", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;\n ARA:13230040|1800799024|82310400026|376014|36860700016|56012099003|18002099003|22082099003;", "X-Microsoft-Antispam-Message-Info": "\n nXbqI/66b8HKiDL9VpUu5FTnJtjLytubETs4tO9K3SD+QxYyC4Ckg/qDvY/HEKaZ3Lpc5Q9N0I/AMm+RZVWXKK5wVXa7sPszcBweML/uTZFMkF3MzNpU1aWmaskJ4f0BYDBv1HVtkFFtAiLieNjfvluEXHQzhhsq2tfAv5c6iYzcx0sguX7HxNsaF05tQz0hsLZyBOARysIJl+1CUAUgxZZGPF+zfvbXqO18N/BO18pL/7jaodiojWljzH/CuvMDqwW8DD5KFtecp28SC5WXW63Vhg6e2Zk7tQf6/sVJpFVbW5GHWBaYN4vvVQL3jOH8VW7ua8x/Nd8A1YpHPSTkhz3bLreAYDLPFGDjaxZqyvd4su3ucSpWsGVhljKjBxZe90vA+kCxTOEXwJ2s3hzmdzA7qqDyHCDx8wpfoCVAiVjPr0R8xx6WI+rEU/vMow4472XTPcKocXMkvCT9a1pQVNsGY2nsaXGHbb0eKwEoRv312eLJaHHu3JKNevjtgOuFzMS7yLfN2xYVmHjFVdfmZE3pz1T915bVNL8JoiFKrA2I5JQr7L5Q7Kv4Keg7o+qJKfltlFbbd6gwscUqHT/0lAY8AAwEstywoV0iR7uN6TXDA/1QchPbhOnJ7Ha/NTlQ1pKlC/FvAOJhbtvvEXFGCnI3+yv/nvDTXOpIE1AVjF9XeOV4L869HKts7zxvLOHK6LYeSZbBtwWFdiiDaE27KV0aD525xU2JrtEMm66kUMIJMSwhbJDBdYEAKE5RwQpak3kqA4ObfQzbJ8Yb8lwehw==", "X-Forefront-Antispam-Report": "CIP:149.6.166.170; CTRY:FR; LANG:en; SCL:1; SRV:;\n IPV:CAL; SFV:NSPM; H:proxy.softathome.com; PTR:InfoDomainNonexistent;\n CAT:NONE;\n SFS:(13230040)(1800799024)(82310400026)(376014)(36860700016)(56012099003)(18002099003)(22082099003);\n DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "\n qrwMNxBzhNSMT9EtRXA48K63HbOVz3wJ21xSMmAWa+hclcYRfy42Lh2QDhpTq6Zwye7UFv4sNQDyvK77Z22HhNaJR2wzF9jtOMcND/vo+AIHMehMlYZ1hZUsnqKTv00kA5DZLxKJ6ZA9wQsuFbS0Cuz/ZD7hJ0chS4NKG+nYRgDMkHOeqgRM0n1Y8JMaqt2QMrIi/qRFZUwjF98aUj4uNBarn6Cfvpf2X+Wft4bEvf1EuYrFHQ/YTWuglx8tQY2samOYAYKiq3ty8vSgtAS1wscQKHRhfvvsXqmnsRRpX0I2vRxwRVkX7UszwQ9mr9XOicTVdvALMf4OcAyVE27w1Q9PVQ8PJsXfZA81MZDvP+W44VwBGqLsXQ8MAmddxvzI2VvD7mzHr/mqVtjdhOXrlSU1TsGNOXr/0lHxI6qPbSgkVRZfIu3uo6PwWYso9AQ0", "X-OriginatorOrg": "softathome.com", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "31 Mar 2026 10:00:53.2537 (UTC)", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 51e2358d-2070-4462-1758-08de8f0c6556", "X-MS-Exchange-CrossTenant-Id": "aa10e044-e405-4c10-8353-36b4d0cce511", "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=aa10e044-e405-4c10-8353-36b4d0cce511; Ip=[149.6.166.170];\n Helo=[proxy.softathome.com]", "X-MS-Exchange-CrossTenant-AuthSource": "MR1PEPF00000D58.FRAP264.PROD.OUTLOOK.COM", "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous", "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "MRZP264MB3242", "X-BeenThere": "u-boot@lists.denx.de", "X-Mailman-Version": "2.1.39", "Precedence": "list", "List-Id": "U-Boot discussion <u-boot.lists.denx.de>", "List-Unsubscribe": "<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>", "List-Archive": "<https://lists.denx.de/pipermail/u-boot/>", "List-Post": "<mailto:u-boot@lists.denx.de>", "List-Help": "<mailto:u-boot-request@lists.denx.de?subject=help>", "List-Subscribe": "<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>", "Errors-To": "u-boot-bounces@lists.denx.de", "Sender": "\"U-Boot\" <u-boot-bounces@lists.denx.de>", "X-Virus-Scanned": "clamav-milter 0.103.8 at phobos.denx.de", "X-Virus-Status": "Clean" }, "content": "This commit adds test case for ecdsa on fit, but not (yet) for\nthe global image signature (preload).\n\nReviewed-by: Simon Glass <simon.glass@canonical.com>\nSigned-off-by: Philippe Reynes <philippe.reynes@softathome.com>\n---\nv2:\n- initial version\nv3:\n- no change\n\n test/py/tests/test_vboot.py | 29 ++++++++++++\n .../vboot/sign-configs-sha256-ecdsa256.its | 45 +++++++++++++++++++\n .../vboot/sign-configs-sha256-ecdsa384.its | 45 +++++++++++++++++++\n .../vboot/sign-configs-sha256-ecdsa521.its | 45 +++++++++++++++++++\n .../vboot/sign-images-sha256-ecdsa256.its | 42 +++++++++++++++++\n .../vboot/sign-images-sha256-ecdsa384.its | 42 +++++++++++++++++\n .../vboot/sign-images-sha256-ecdsa521.its | 42 +++++++++++++++++\n 7 files changed, 290 insertions(+)\n create mode 100644 test/py/tests/vboot/sign-configs-sha256-ecdsa256.its\n create mode 100644 test/py/tests/vboot/sign-configs-sha256-ecdsa384.its\n create mode 100644 test/py/tests/vboot/sign-configs-sha256-ecdsa521.its\n create mode 100644 test/py/tests/vboot/sign-images-sha256-ecdsa256.its\n create mode 100644 test/py/tests/vboot/sign-images-sha256-ecdsa384.its\n create mode 100644 test/py/tests/vboot/sign-images-sha256-ecdsa521.its", "diff": "diff --git a/test/py/tests/test_vboot.py b/test/py/tests/test_vboot.py\nindex 496d314c649..4e4d9529031 100644\n--- a/test/py/tests/test_vboot.py\n+++ b/test/py/tests/test_vboot.py\n@@ -94,6 +94,9 @@ TESTDATA_IN = [\n ['sha256-pss-pad', 'sha256', '-rsa2048', '-pss', '-E -p 0x10000', False, False, False, False],\n ['sha256-pss-required', 'sha256', '-rsa2048', '-pss', None, True, False, False, False],\n ['sha256-pss-pad-required', 'sha256', '-rsa2048', '-pss', '-E -p 0x10000', True, True, False, False],\n+ ['sha256-basic-ecdsa256', 'sha256', '-ecdsa256', '', None, False, False, False, False],\n+ ['sha256-basic-ecdsa384', 'sha256', '-ecdsa384', '', None, False, False, False, False],\n+ ['sha256-basic-ecdsa521', 'sha256', '-ecdsa521', '', None, False, False, False, False],\n ['sha384-basic', 'sha384', '-rsa3072', '', None, False, False, False, False],\n ['sha384-pad', 'sha384', '-rsa3072', '', '-E -p 0x10000', False, False, False, False],\n ['algo-arg', 'algo-arg', '', '', '-o sha256,rsa2048', False, False, True, False],\n@@ -287,6 +290,29 @@ def test_vboot(ubman, name, sha_algo, sig_algo, padding, sign_options, required,\n utils.run_and_log(ubman, 'openssl req -batch -new -x509 -key %s%s.key '\n '-out %s%s.crt' % (tmpdir, name, tmpdir, name))\n \n+ def create_ecdsa_pair(name):\n+ \"\"\"Generate a new ECDSA key pair\n+\n+ Args:\n+ name: Name of the key (e.g. 'dev')\n+ \"\"\"\n+\n+ if sig_algo == \"-ecdsa256\":\n+ curve_name = \"secp256r1\"\n+ elif sig_algo == \"-ecdsa384\":\n+ curve_name = \"secp384r1\"\n+ elif sig_algo == \"-ecdsa521\":\n+ curve_name = \"secp521r1\"\n+ else:\n+ curve_name = \"unknownCurve\"\n+\n+ utils.run_and_log(ubman, 'openssl ecparam -name %s -genkey -noout -out %s%s.pem' %\n+ (curve_name, tmpdir, name))\n+\n+ # Create a certificate containing the public key\n+ utils.run_and_log(ubman, 'openssl req -batch -new -x509 -key %s%s.pem '\n+ '-out %s%s.crt' % (tmpdir, name, tmpdir, name))\n+\n def test_with_algo(sha_algo, sig_algo, padding, sign_options):\n \"\"\"Test verified boot with the given hash algorithm.\n \n@@ -537,6 +563,9 @@ def test_vboot(ubman, name, sha_algo, sig_algo, padding, sign_options, required,\n if sig_algo == \"-rsa2048\" or sig_algo == \"-rsa3072\" or sig_algo == \"\":\n create_rsa_pair('dev')\n create_rsa_pair('prod')\n+ elif sig_algo == \"-ecdsa256\" or sig_algo == \"-ecdsa384\" or sig_algo == \"-ecdsa521\":\n+ create_ecdsa_pair('dev')\n+ create_ecdsa_pair('prod')\n \n # Create a number kernel image with zeroes\n with open('%stest-kernel.bin' % tmpdir, 'wb') as fd:\ndiff --git a/test/py/tests/vboot/sign-configs-sha256-ecdsa256.its b/test/py/tests/vboot/sign-configs-sha256-ecdsa256.its\nnew file mode 100644\nindex 00000000000..4d0ef903a78\n--- /dev/null\n+++ b/test/py/tests/vboot/sign-configs-sha256-ecdsa256.its\n@@ -0,0 +1,45 @@\n+/dts-v1/;\n+\n+/ {\n+\tdescription = \"Chrome OS kernel image with one or more FDT blobs\";\n+\t#address-cells = <1>;\n+\n+\timages {\n+\t\tkernel {\n+\t\t\tdata = /incbin/(\"test-kernel.bin\");\n+\t\t\ttype = \"kernel_noload\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tos = \"linux\";\n+\t\t\tcompression = \"none\";\n+\t\t\tload = <0x4>;\n+\t\t\tentry = <0x8>;\n+\t\t\tkernel-version = <1>;\n+\t\t\thash-1 {\n+\t\t\t\talgo = \"sha256\";\n+\t\t\t};\n+\t\t};\n+\t\tfdt-1 {\n+\t\t\tdescription = \"snow\";\n+\t\t\tdata = /incbin/(\"sandbox-kernel.dtb\");\n+\t\t\ttype = \"flat_dt\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tcompression = \"none\";\n+\t\t\tfdt-version = <1>;\n+\t\t\thash-1 {\n+\t\t\t\talgo = \"sha256\";\n+\t\t\t};\n+\t\t};\n+\t};\n+\tconfigurations {\n+\t\tdefault = \"conf-1\";\n+\t\tconf-1 {\n+\t\t\tkernel = \"kernel\";\n+\t\t\tfdt = \"fdt-1\";\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa256\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t\tsign-images = \"fdt\", \"kernel\";\n+\t\t\t};\n+\t\t};\n+\t};\n+};\ndiff --git a/test/py/tests/vboot/sign-configs-sha256-ecdsa384.its b/test/py/tests/vboot/sign-configs-sha256-ecdsa384.its\nnew file mode 100644\nindex 00000000000..10427b43659\n--- /dev/null\n+++ b/test/py/tests/vboot/sign-configs-sha256-ecdsa384.its\n@@ -0,0 +1,45 @@\n+/dts-v1/;\n+\n+/ {\n+\tdescription = \"Chrome OS kernel image with one or more FDT blobs\";\n+\t#address-cells = <1>;\n+\n+\timages {\n+\t\tkernel {\n+\t\t\tdata = /incbin/(\"test-kernel.bin\");\n+\t\t\ttype = \"kernel_noload\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tos = \"linux\";\n+\t\t\tcompression = \"none\";\n+\t\t\tload = <0x4>;\n+\t\t\tentry = <0x8>;\n+\t\t\tkernel-version = <1>;\n+\t\t\thash-1 {\n+\t\t\t\talgo = \"sha256\";\n+\t\t\t};\n+\t\t};\n+\t\tfdt-1 {\n+\t\t\tdescription = \"snow\";\n+\t\t\tdata = /incbin/(\"sandbox-kernel.dtb\");\n+\t\t\ttype = \"flat_dt\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tcompression = \"none\";\n+\t\t\tfdt-version = <1>;\n+\t\t\thash-1 {\n+\t\t\t\talgo = \"sha256\";\n+\t\t\t};\n+\t\t};\n+\t};\n+\tconfigurations {\n+\t\tdefault = \"conf-1\";\n+\t\tconf-1 {\n+\t\t\tkernel = \"kernel\";\n+\t\t\tfdt = \"fdt-1\";\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa384\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t\tsign-images = \"fdt\", \"kernel\";\n+\t\t\t};\n+\t\t};\n+\t};\n+};\ndiff --git a/test/py/tests/vboot/sign-configs-sha256-ecdsa521.its b/test/py/tests/vboot/sign-configs-sha256-ecdsa521.its\nnew file mode 100644\nindex 00000000000..a65593ec64b\n--- /dev/null\n+++ b/test/py/tests/vboot/sign-configs-sha256-ecdsa521.its\n@@ -0,0 +1,45 @@\n+/dts-v1/;\n+\n+/ {\n+\tdescription = \"Chrome OS kernel image with one or more FDT blobs\";\n+\t#address-cells = <1>;\n+\n+\timages {\n+\t\tkernel {\n+\t\t\tdata = /incbin/(\"test-kernel.bin\");\n+\t\t\ttype = \"kernel_noload\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tos = \"linux\";\n+\t\t\tcompression = \"none\";\n+\t\t\tload = <0x4>;\n+\t\t\tentry = <0x8>;\n+\t\t\tkernel-version = <1>;\n+\t\t\thash-1 {\n+\t\t\t\talgo = \"sha256\";\n+\t\t\t};\n+\t\t};\n+\t\tfdt-1 {\n+\t\t\tdescription = \"snow\";\n+\t\t\tdata = /incbin/(\"sandbox-kernel.dtb\");\n+\t\t\ttype = \"flat_dt\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tcompression = \"none\";\n+\t\t\tfdt-version = <1>;\n+\t\t\thash-1 {\n+\t\t\t\talgo = \"sha256\";\n+\t\t\t};\n+\t\t};\n+\t};\n+\tconfigurations {\n+\t\tdefault = \"conf-1\";\n+\t\tconf-1 {\n+\t\t\tkernel = \"kernel\";\n+\t\t\tfdt = \"fdt-1\";\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa521\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t\tsign-images = \"fdt\", \"kernel\";\n+\t\t\t};\n+\t\t};\n+\t};\n+};\ndiff --git a/test/py/tests/vboot/sign-images-sha256-ecdsa256.its b/test/py/tests/vboot/sign-images-sha256-ecdsa256.its\nnew file mode 100644\nindex 00000000000..009003bb601\n--- /dev/null\n+++ b/test/py/tests/vboot/sign-images-sha256-ecdsa256.its\n@@ -0,0 +1,42 @@\n+/dts-v1/;\n+\n+/ {\n+\tdescription = \"Chrome OS kernel image with one or more FDT blobs\";\n+\t#address-cells = <1>;\n+\n+\timages {\n+\t\tkernel {\n+\t\t\tdata = /incbin/(\"test-kernel.bin\");\n+\t\t\ttype = \"kernel_noload\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tos = \"linux\";\n+\t\t\tcompression = \"none\";\n+\t\t\tload = <0x4>;\n+\t\t\tentry = <0x8>;\n+\t\t\tkernel-version = <1>;\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa256\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t};\n+\t\t};\n+\t\tfdt-1 {\n+\t\t\tdescription = \"snow\";\n+\t\t\tdata = /incbin/(\"sandbox-kernel.dtb\");\n+\t\t\ttype = \"flat_dt\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tcompression = \"none\";\n+\t\t\tfdt-version = <1>;\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa256\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t};\n+\t\t};\n+\t};\n+\tconfigurations {\n+\t\tdefault = \"conf-1\";\n+\t\tconf-1 {\n+\t\t\tkernel = \"kernel\";\n+\t\t\tfdt = \"fdt-1\";\n+\t\t};\n+\t};\n+};\ndiff --git a/test/py/tests/vboot/sign-images-sha256-ecdsa384.its b/test/py/tests/vboot/sign-images-sha256-ecdsa384.its\nnew file mode 100644\nindex 00000000000..567de687a06\n--- /dev/null\n+++ b/test/py/tests/vboot/sign-images-sha256-ecdsa384.its\n@@ -0,0 +1,42 @@\n+/dts-v1/;\n+\n+/ {\n+\tdescription = \"Chrome OS kernel image with one or more FDT blobs\";\n+\t#address-cells = <1>;\n+\n+\timages {\n+\t\tkernel {\n+\t\t\tdata = /incbin/(\"test-kernel.bin\");\n+\t\t\ttype = \"kernel_noload\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tos = \"linux\";\n+\t\t\tcompression = \"none\";\n+\t\t\tload = <0x4>;\n+\t\t\tentry = <0x8>;\n+\t\t\tkernel-version = <1>;\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa384\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t};\n+\t\t};\n+\t\tfdt-1 {\n+\t\t\tdescription = \"snow\";\n+\t\t\tdata = /incbin/(\"sandbox-kernel.dtb\");\n+\t\t\ttype = \"flat_dt\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tcompression = \"none\";\n+\t\t\tfdt-version = <1>;\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa384\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t};\n+\t\t};\n+\t};\n+\tconfigurations {\n+\t\tdefault = \"conf-1\";\n+\t\tconf-1 {\n+\t\t\tkernel = \"kernel\";\n+\t\t\tfdt = \"fdt-1\";\n+\t\t};\n+\t};\n+};\ndiff --git a/test/py/tests/vboot/sign-images-sha256-ecdsa521.its b/test/py/tests/vboot/sign-images-sha256-ecdsa521.its\nnew file mode 100644\nindex 00000000000..74ed45b21b8\n--- /dev/null\n+++ b/test/py/tests/vboot/sign-images-sha256-ecdsa521.its\n@@ -0,0 +1,42 @@\n+/dts-v1/;\n+\n+/ {\n+\tdescription = \"Chrome OS kernel image with one or more FDT blobs\";\n+\t#address-cells = <1>;\n+\n+\timages {\n+\t\tkernel {\n+\t\t\tdata = /incbin/(\"test-kernel.bin\");\n+\t\t\ttype = \"kernel_noload\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tos = \"linux\";\n+\t\t\tcompression = \"none\";\n+\t\t\tload = <0x4>;\n+\t\t\tentry = <0x8>;\n+\t\t\tkernel-version = <1>;\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa521\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t};\n+\t\t};\n+\t\tfdt-1 {\n+\t\t\tdescription = \"snow\";\n+\t\t\tdata = /incbin/(\"sandbox-kernel.dtb\");\n+\t\t\ttype = \"flat_dt\";\n+\t\t\tarch = \"sandbox\";\n+\t\t\tcompression = \"none\";\n+\t\t\tfdt-version = <1>;\n+\t\t\tsignature {\n+\t\t\t\talgo = \"sha256,ecdsa521\";\n+\t\t\t\tkey-name-hint = \"dev\";\n+\t\t\t};\n+\t\t};\n+\t};\n+\tconfigurations {\n+\t\tdefault = \"conf-1\";\n+\t\tconf-1 {\n+\t\t\tkernel = \"kernel\";\n+\t\t\tfdt = \"fdt-1\";\n+\t\t};\n+\t};\n+};\n", "prefixes": [ "v3", "08/15" ] }