From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mx.groups.io with SMTP id smtpd.web12.284.1579129057635709692 for ; Wed, 15 Jan 2020 14:57:37 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.43, mailfrom: amol.n.sukerkar@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 15 Jan 2020 14:57:37 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,323,1574150400"; d="scan'208";a="373083374" Received: from ansukerk-mobl1.amr.corp.intel.com ([10.78.16.116]) by orsmga004.jf.intel.com with ESMTP; 15 Jan 2020 14:57:36 -0800 From: "Sukerkar, Amol N" To: devel@edk2.groups.io Cc: michael.d.kinney@intel.com, jiewen.yao@intel.com, jian.j.wang@intel.com, sachin.agrawal@intel.com, srinivas.musti@intel.com, subash.lakkimsetti@intel.com Subject: [PATCH v3 0/1] SecurityPkg/BaseHashLib: Implement Unified Hash Calculation API Date: Wed, 15 Jan 2020 15:57:29 -0700 Message-Id: <20200115225730.1330-1-amol.n.sukerkar@intel.com> X-Mailer: git-send-email 2.24.1.windows.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Currently, the UEFI drivers using the SHA/SM3 hashing algorithms use hard-coded API to calculate the hash, for instance, sha_256(...), etc. Since SHA384 and/or SM3_256 are being increasingly adopted for robustness, it becomes cumbersome to modify each driver that calls into hash calculating API. To better achieve this, we are proposing a Unified API, which can be used by UEFI drivers, that provides the drivers with flexibility to use the desired hashing algorithm based on the required robnustness. Alternatively, the design document is also attached to Bugzilla, https://bugzilla.tianocore.org/show_bug.cgi?id=2151. Sukerkar, Amol N (1): SecurityPkg/BaseHashLib: Implement Unified Hash Calculation API SecurityPkg/Library/BaseHashLib/BaseHashLibCommon.c | 151 ++++++++++++++++++++ SecurityPkg/Library/BaseHashLib/BaseHashLibDxe.c | 100 +++++++++++++ SecurityPkg/Library/BaseHashLib/BaseHashLibPei.c | 103 +++++++++++++ SecurityPkg/Include/Library/BaseHashLib.h | 85 +++++++++++ SecurityPkg/Library/BaseHashLib/BaseHashLibCommon.h | 141 ++++++++++++++++++ SecurityPkg/Library/BaseHashLib/BaseHashLibDxe.inf | 46 ++++++ SecurityPkg/Library/BaseHashLib/BaseHashLibDxe.uni | 17 +++ SecurityPkg/Library/BaseHashLib/BaseHashLibPei.inf | 51 +++++++ SecurityPkg/Library/BaseHashLib/BaseHashLibPei.uni | 16 +++ SecurityPkg/SecurityPkg.dec | 23 ++- SecurityPkg/SecurityPkg.dsc | 10 +- SecurityPkg/SecurityPkg.uni | 15 +- 12 files changed, 755 insertions(+), 3 deletions(-) create mode 100644 SecurityPkg/Library/BaseHashLib/BaseHashLibCommon.c create mode 100644 SecurityPkg/Library/BaseHashLib/BaseHashLibDxe.c create mode 100644 SecurityPkg/Library/BaseHashLib/BaseHashLibPei.c create mode 100644 SecurityPkg/Include/Library/BaseHashLib.h create mode 100644 SecurityPkg/Library/BaseHashLib/BaseHashLibCommon.h create mode 100644 SecurityPkg/Library/BaseHashLib/BaseHashLibDxe.inf create mode 100644 SecurityPkg/Library/BaseHashLib/BaseHashLibDxe.uni create mode 100644 SecurityPkg/Library/BaseHashLib/BaseHashLibPei.inf create mode 100644 SecurityPkg/Library/BaseHashLib/BaseHashLibPei.uni -- 2.16.2.windows.1