Cover Letter Detail
Show a cover letter.
GET /api/1.0/covers/2198147/?format=api
{ "id": 2198147, "url": "http://patchwork.ozlabs.org/api/1.0/covers/2198147/?format=api", "project": { "id": 18, "url": "http://patchwork.ozlabs.org/api/1.0/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 }, "msgid": "<20260219132552.1499698-1-philippe.reynes@softathome.com>", "date": "2026-02-19T13:25:43", "name": "[RFC,v2,0/9] add software ecdsa support", "submitter": { "id": 74351, "url": "http://patchwork.ozlabs.org/api/1.0/people/74351/?format=api", "name": "Philippe Reynes", "email": "philippe.reynes@softathome.com" }, "series": [ { "id": 492675, "url": "http://patchwork.ozlabs.org/api/1.0/series/492675/?format=api", "date": "2026-02-19T13:25:49", "name": "add software ecdsa support", "version": 2, "mbox": "http://patchwork.ozlabs.org/series/492675/mbox/" } ], "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=gup00rRb;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=85.214.62.61; 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=\"gup00rRb\";\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 [85.214.62.61])\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 4fGvKl4n88z1xpY\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 20 Feb 2026 00:26:35 +1100 (AEDT)", "from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id 2754A83DEA;\n\tThu, 19 Feb 2026 14:26:19 +0100 (CET)", "by phobos.denx.de (Postfix, from userid 109)\n id 0CD4D83E36; Thu, 19 Feb 2026 14:26:17 +0100 (CET)", "from PR0P264CU014.outbound.protection.outlook.com\n (mail-francecentralazlp170120004.outbound.protection.outlook.com\n [IPv6:2a01:111:f403:c20a::4])\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 4EBA983D5D\n for <u-boot@lists.denx.de>; Thu, 19 Feb 2026 14:26:14 +0100 (CET)", "from PAZP264CA0043.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:1fc::9)\n by MRZP264MB2699.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:18::16) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.15; Thu, 19 Feb\n 2026 13:26:09 +0000", "from PA1PEPF000CC3FA.FRAP264.PROD.OUTLOOK.COM\n (2603:10a6:102:1fc:cafe::8f) by PAZP264CA0043.outlook.office365.com\n (2603:10a6:102:1fc::9) with Microsoft SMTP Server (version=TLS1_3,\n cipher=TLS_AES_256_GCM_SHA384) id 15.20.9632.15 via Frontend Transport; Thu,\n 19 Feb 2026 13:26:09 +0000", "from proxy.softathome.com (149.6.166.170) by\n PA1PEPF000CC3FA.mail.protection.outlook.com (10.167.242.5) with Microsoft\n SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9632.12\n via Frontend Transport; Thu, 19 Feb 2026 13:26:09 +0000", "from sah1lpt726.home (unknown [192.168.72.32])\n by proxy.softathome.com (Postfix) with ESMTPSA id 8C90820143;\n Thu, 19 Feb 2026 14:26:09 +0100 (CET)" ], "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=qHIedyOBZSKhttii9E7I3ng31GEcRksa/JD8SlltPTpaHbNirj1E5dTnX0D8yXEu3FCURnOM8wAkMmSSUqbTrY/Mvff4Y/6dzZG2DrxGyBgqy1q8PdkhN3h4oz1WacWfRrx7LWXPRLOJQ5QziJbCHEvGYqtI/2JMel6rBefj28ga/6RW3bGMZy/7S3WEPJIY3oFUrckUypk3xtm/83PayQD/5ul40vv4/GPwMxrsVIDlJP8Y3OqQntxGW5yK/iBuW/nj6+UpQ5nDcTrEA5DsBeGapMFq06Syyx6IrhQa7sXyV+jZWAalTkn0gj4E0ksRwu709D7+iitxVHrjgatmGQ==", "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=UmtiK97zc5lFaB9jso96mUdiXjD6q/S1RVqdmLQTGFw=;\n b=N4TeMpKWaVslh2+2AK550zDcMnLU2aFDHMOiOujihfwKC3Yvmv15HC/xzavDA7iOXpSlUwHVeJMTc1SmGVZcodkwi5REOnRnpL6FPfTFKd9qxnj0cEuLFqfUsLGj4JraET/8ZZuXjhaLdfIyJCgpSufT4AG80UnoZ8t06jgniHpZO5joS+JXGMFunef9+iIFg96U72GVVfKgA4dcNmqvHISOqwSEdELvSYk/hKlkGHG4EP52OCH1AUI8pERb8HhtDlT2RPl8ms1qLn8sTFgVFeE/KezoW4Vj7B8hyt7XKufx47I5uhBhmA8ftaPFLrNfmHrhS5dThncRLEaJ4Bso8w==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass (sender ip is\n 149.6.166.170) smtp.rcpttodomain=gmail.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=UmtiK97zc5lFaB9jso96mUdiXjD6q/S1RVqdmLQTGFw=;\n b=gup00rRbg5Pjg2LArn/BOklWGKS5bzvseotXmQ36bkG4mVk9bTsRQhMZsppYNoang7N4JHnzOxgY820LUbZCLoq/h13Wg33UCoCc1D0zqnSZwfBuVr64GoD/aYH75JteE3QxBt83tPogGTAzufa10wZccO95wk7MB1hLvW7q0aWJCJRHWVu+Ah0eVpjRKvb24OKh/Jd/CNRrPmx2czrRyLcwtTYHUr38aBXKuuXW3VXWe4+qvMQsxtO+pmjAL3dr/F02Vfe98TBgRxyQK1GUhTT8L2ff3irMgDSdLG07OwVDze9IKgoyG6/po2veUDR8cJIf5P9YkM7C9kpXTk6TMA==", "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", "Cc": "u-boot@lists.denx.de,\n\tPhilippe Reynes <philippe.reynes@softathome.com>", "Subject": "[RFC PATCH v2 0/9] add software ecdsa support", "Date": "Thu, 19 Feb 2026 14:25:43 +0100", "Message-ID": "<20260219132552.1499698-1-philippe.reynes@softathome.com>", "X-Mailer": "git-send-email 2.43.0", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-EOPAttributedMessage": "0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "PA1PEPF000CC3FA:EE_|MRZP264MB2699:EE_", "Content-Type": "text/plain", "X-MS-Office365-Filtering-Correlation-Id": "f024d866-13d3-4710-cbd7-08de6fba71d5", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;\n ARA:13230040|1800799024|82310400026|376014|36860700013|7142099003;", "X-Microsoft-Antispam-Message-Info": "\n xb572yya25utvgBFVYo3rjT+E77eEGkTi+/Op7yxtsPWP3BxrVfp2iYbpSAJY5swe1ibHJrryL59qjzS2YP+dkTF7RAB7UWtyl0hRrPz6eDqhgCf0q/Cvw3l321wjTZwXOMbkj/kThtwdeusFYkhjh7quFFjTkkE1mpPSS/JipHMNqBwMJWSQs4/AwBS5SCNnR4XUZrUOYfEs1idSFdSQ4Jq5MYLAiIdqA0+w88x+o6Q+/BtzrJ8m0Dh60u2Ja0C71+b2854d6xU881puG2utlID5tZOmiaRI9V0v7pqAv/VkjD9yHw+4UgbHtfvkKNalEsrqxgkI9YAGkJ5umRXG5bxWxZBtNdKiJZ+60DcNWUg2T7btS2Ko+eapp4ZQNYELidGgLvQg78dgcYV5xFQFXZwz++a64CEClO1LxZsWxFs9IpDlmLzkE9A6+ZqUWoErHgX4wWdnFiWcy2jq2pZjzmKfE4l7D3qGmto4qRblP4UYhqdU1hxji/3Vialgj74B6j9G6NNb8iCl/EmYeDyVVVzzjX3tmdZJRyrKU6HlGZIdRSvDGlJwzyd8LkMnbnmIqx1PLoILCk5UlIlImMw+XeaLa/4i2CPY2aCwEeZLyqj1IcsTiaZDvYfm/dQMrOmBHuBd3XJGHFWtGskU0pnlJBxDRkfQ1BuGsGZfvlHNCm3YZ4CsNTJq7nLrn//ZwDq2Bjcl6oInjuM8bABjkkvjHaSimq9P1xjQ+yHsFGE3tVmOtjrFZjxlbtJYW9iNVJQ/frF8Kym1DWBXpzbjASbFG29MaM9Av7UqidB8LnSocYgUVpcjbDXo1ApefYviNC8SrJKgPX7vUmJrCTyNIGDFq2W36rn00IvGzfXjlahoi0Ow+pIkbWobR7xfuwiO7jxq5fYZxDYuJ2aWws+5NgH2g3CDmMQrHBU/OZsOmiyJVvktuqC27OJxqVUX+UKyit0aCpY8BC/RwXQmggijPWtED3bThqPGOHs0JQHieIwEaAT1l4FSGDxU3uUb+ODQlKf/EOVyC9/LPMnUdShYtVL3k5HT0iGLD/ilq/UQNh7bS04jSpFpxm+JltsY3MXION1BNEdP7UAoScECPj9BqnSgIimqfJJnoRIo8NYW6sn1r3uhKyKy2v2Fwcu5h/XMvheZeDg5m6SG8yBCbNcY3w5gtHR7IikJY5jrI21sGGXv3jAPUDoOSLTeSvedxWYS9+aQJiNIaqMbBBQO8F5N4KpevFRSbWi4t29d6p95xUmrE7nvJncPVGaHzUVcfrKB1mtILjz0EbKuPI4S/RS83os4M0Qfu3Dz+7lMN6u4P7ZyX7E84TDAJO/49XfGJsMzPqcf8Zbx+4N3F4NuTuLFewm5hV4uIGxbTHiay4qj17ZhpTFhqwBfaBeCtAPr+dG+TOZwnjlTRVjh+emnJCiGr7dhY63LGaA4RHHMx/B6e/WCjyT+O9oRDe7aG2nA9m4kuAFxa4eZk/43xQCCRhoAeDl2RhHCBMU/AEHfrcIT27ZD0OWkFBm+BPFqwXzw03lYX7zPeDUCTOGKqCI+qnftNjQIVBLnKH+M8QW12LDHe+qvFn4ln3vI0HlplVy3ldbZPLfB1o6jIPfc1GLU6UigaFRdU9gP+tKCSSUU7AxMmmbnHfw25C2TDcotArwHGvPcvNrWhQZRs9qxKXXW4OUu9Q3kA==", "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)(36860700013)(7142099003);\n DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "\n fMTOeeefzkWqqi2Kk6b6q5yKiQ5pNJZVv5XWBWuA/PZrgTvhH9A5mVw7r2IKeSGVDbGpa/nnCXTJnlCjpPCGiwc73om0JbVKdTLNlJTLodxKp7jhLlIUJO0AUFqY/LjIvZjVUoh93AshniJ2UTMoQ5e2VF87wyhNJuZpwGlWaSiBmbWFTSfujC+hsTfzeA1BeE/KyFtaWQpUvzvq9dcCFCFAwgXhGQ48JZhbTSIbfgLEsGlqFNxagvef4oN2ttP1nrLx5iNqLTgBxel3tr7ahShcRUGJPHFX56wUOdPLfote6qVxdBrCGVj7uGgOUruxX4mlxxwKpadiaKfYELwaWTzxhMQXlAUX8R8RMyv3TDnBRiX6m0JBEFCeVMajwSm9aTKxQvDj8Id6YraBExEWKFXn06Zvp7/ZTpfZbUa+AbgOkcjxwhwz8U8hMy7SsV/l", "X-OriginatorOrg": "softathome.com", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "19 Feb 2026 13:26:09.7125 (UTC)", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n f024d866-13d3-4710-cbd7-08de6fba71d5", "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": "PA1PEPF000CC3FA.FRAP264.PROD.OUTLOOK.COM", "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous", "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "MRZP264MB2699", "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 serie adds the support of ecdsa with software\nusing mbedtls. So boards without ecdsa hardware may\nalso use signature with ecdsa.\n\nTo add the support of ecdsa with mbedtls, I have:\n- enabled ecdsa in mbedtls\n- add a function sw_ecdsa_verify that uses mbedtls\n- add a driver sw_ecdsa that call sw_ecdsa_verify\n\nI have tested this code with sandbox, and I have\nfollowed those steps:\n\n0) build u-boot using sandbox_defconfig and adding those options:\nCONFIG_ECDSA_SW=y\nCONFIG_ECDSA_MBEDTLS=y\nCONFIG_ECDSA=y\nCONFIG_ECDSA_VERIFY=y\n\n1) add a signature node to an its file\n\tsignature-256 {\n\t\talgo = \"sha256,ecdsa256\";\n\t\tkey-name-hint = \"private-key-256\";\n\t};\n\n2) generate an ecdsa key\nopenssl ecparam -name prime256v1 -genkey -noout -out private-key-256.pem\n\n3) create the itb file\n./tools/mkimage -f <file.its> -k . -K arch/sandbox/dts/test.dtb <file.itb>\n\n4) launch sandbox u-boot\n\n./u-boot -d arch/sandbox/dts/test.dtb\n\n5) on sandbox u-boot prompt, load the itb and launch bootm on it\n\n=> host load hostfs - 1000000 uboot-ecdsa.itb\n4628674 bytes read in 1 ms (4.3 GiB/s)\n=> bootm 1000000\n...\n...\n Verifying Hash Integrity ... sha256,ecdsa256:private-key-256+ OK\n\n\nI have tested with success ecdsa256 and ecdsa384,\nbut there is an issue with secp521r1. \n\nChanges in v2:\n- move ECDSA_MBEDTLS to MBEDTLS_LIB_X509\n- rename lib/mbedtls/sw_ecdsa.c to lib/mbedtls/ecdsa.c\n- enhance dependancies for ECDSA_MBEDTLS\n- fix support of ecdsa521/secp521r1\n- add vboot test using ecdsa\n\n\nPhilippe Reynes (9):\n mbedtls: enable support of ecc\n ecdsa: initial support of ecdsa using mbedtls\n test: lib: sw_ecdsa: add initial test\n drivers: crypto: add software ecdsa support\n ecdsa: fix support of secp521r1\n test: dm: ecdsa.c: clean this test as software ecdsa is now\n implemented\n configs: sandbox: enable the software ecdsa driver\n test: py: vboot: prepare integration test for ecdsa\n test: vboot: add test for ecdsa\n\n configs/amd_versal2_virt_defconfig | 1 +\n configs/qemu_arm64_lwip_defconfig | 1 +\n configs/sandbox_defconfig | 1 +\n configs/starfive_visionfive2_defconfig | 1 +\n configs/xilinx_versal_net_virt_defconfig | 1 +\n configs/xilinx_versal_virt_defconfig | 1 +\n configs/xilinx_zynqmp_kria_defconfig | 1 +\n configs/xilinx_zynqmp_virt_defconfig | 1 +\n drivers/crypto/Kconfig | 2 +\n drivers/crypto/Makefile | 1 +\n drivers/crypto/ecdsa/Kconfig | 6 +\n drivers/crypto/ecdsa/Makefile | 6 +\n drivers/crypto/ecdsa/ecdsa-sw.c | 33 ++\n include/crypto/internal/sw_ecdsa.h | 14 +\n lib/ecdsa/ecdsa-libcrypto.c | 21 +-\n lib/ecdsa/ecdsa-verify.c | 24 +-\n lib/fdt-libcrypto.c | 2 +-\n lib/mbedtls/Kconfig | 16 +\n lib/mbedtls/Makefile | 19 +-\n lib/mbedtls/ecdsa.c | 94 ++++\n lib/mbedtls/mbedtls_def_config.h | 18 +\n test/dm/ecdsa.c | 18 +-\n test/lib/Makefile | 1 +\n test/lib/sw_ecdsa.c | 465 ++++++++++++++++++\n test/py/tests/test_fit_ecdsa.py | 2 +-\n test/py/tests/test_vboot.py | 128 +++--\n ....its => sign-configs-sha1-rsa2048-pss.its} | 0\n ...sha1.its => sign-configs-sha1-rsa2048.its} | 0\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 ... sign-configs-sha256-rsa2048-pss-prod.its} | 0\n ...ts => sign-configs-sha256-rsa2048-pss.its} | 0\n ...56.its => sign-configs-sha256-rsa2048.its} | 0\n ...84.its => sign-configs-sha384-rsa3072.its} | 0\n ...s.its => sign-images-sha1-rsa2048-pss.its} | 0\n ...-sha1.its => sign-images-sha1-rsa2048.its} | 0\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 ...its => sign-images-sha256-rsa2048-pss.its} | 0\n ...256.its => sign-images-sha256-rsa2048.its} | 0\n ...384.its => sign-images-sha384-rsa3072.its} | 0\n tools/image-sig-host.c | 2 +-\n 44 files changed, 1062 insertions(+), 79 deletions(-)\n create mode 100644 drivers/crypto/ecdsa/Kconfig\n create mode 100644 drivers/crypto/ecdsa/Makefile\n create mode 100644 drivers/crypto/ecdsa/ecdsa-sw.c\n create mode 100644 include/crypto/internal/sw_ecdsa.h\n create mode 100644 lib/mbedtls/ecdsa.c\n create mode 100644 test/lib/sw_ecdsa.c\n rename test/py/tests/vboot/{sign-configs-sha1-pss.its => sign-configs-sha1-rsa2048-pss.its} (100%)\n rename test/py/tests/vboot/{sign-configs-sha1.its => sign-configs-sha1-rsa2048.its} (100%)\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 rename test/py/tests/vboot/{sign-configs-sha256-pss-prod.its => sign-configs-sha256-rsa2048-pss-prod.its} (100%)\n rename test/py/tests/vboot/{sign-configs-sha256-pss.its => sign-configs-sha256-rsa2048-pss.its} (100%)\n rename test/py/tests/vboot/{sign-configs-sha256.its => sign-configs-sha256-rsa2048.its} (100%)\n rename test/py/tests/vboot/{sign-configs-sha384.its => sign-configs-sha384-rsa3072.its} (100%)\n rename test/py/tests/vboot/{sign-images-sha1-pss.its => sign-images-sha1-rsa2048-pss.its} (100%)\n rename test/py/tests/vboot/{sign-images-sha1.its => sign-images-sha1-rsa2048.its} (100%)\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\n rename test/py/tests/vboot/{sign-images-sha256-pss.its => sign-images-sha256-rsa2048-pss.its} (100%)\n rename test/py/tests/vboot/{sign-images-sha256.its => sign-images-sha256-rsa2048.its} (100%)\n rename test/py/tests/vboot/{sign-images-sha384.its => sign-images-sha384-rsa3072.its} (100%)" }