From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mx.groups.io with SMTP id smtpd.web08.4792.1663914726099861986 for ; Thu, 22 Sep 2022 23:32:06 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=AhGheaSf; spf=pass (domain: intel.com, ip: 134.134.136.126, mailfrom: qi1.zhang@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1663914726; x=1695450726; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=neA2iV1KYYFFoHmpHUNO1i5lm22zsEHye/nsJNxCqfM=; b=AhGheaSfv7Usuq+TyxoAE/AjCPd04Cm/EAeZJUpWBETb1MT4kXKgb4ZD z/BnBtETvnI1M8sHDrKwrE0H6cwBHpAD+h7//2TvWzyl5CMCJFNWl5aAc zEyUeGD3UptEERIzIhYyux+UoRavp1XpUrBAXoPagNpa7TPpZXE6FauAc W4Y1Lc/wSpmCvxN53RuhkAHyVDdHfIJgqUvHGsHIEsgSH8H4l2C4jnyVn fnU4SRZYZgvJl+fgOt/EGNwrbrt9zmfg8nrsL496PdLOFz0QHz2oyH9FZ 6ol1V8z+chciJwxqEpBlbBRI+VRCIdiUhWYpuFXRs17f0SCsu9/KmgSeV w==; X-IronPort-AV: E=McAfee;i="6500,9779,10478"; a="283619010" X-IronPort-AV: E=Sophos;i="5.93,337,1654585200"; d="scan'208";a="283619010" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Sep 2022 23:32:05 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,337,1654585200"; d="scan'208";a="571272281" Received: from shwdesssddpdqi.ccr.corp.intel.com ([10.239.157.129]) by orsmga003.jf.intel.com with ESMTP; 22 Sep 2022 23:32:04 -0700 From: "Qi Zhang" To: devel@edk2.groups.io Cc: Qi Zhang , Jiewen Yao , Jian J Wang , Xiaoyu Lu , Guomin Jiang Subject: [PATCH V2 0/4] CryptoPkg: add AeadAesGcm support. Date: Fri, 23 Sep 2022 14:31:57 +0800 Message-Id: X-Mailer: git-send-email 2.26.2.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add AeadAesGcm Encrypt and Decrypt. With this change, the size increase of BaseCyrptLib is about 60K bytes. The new functions are verifed by the Host UnitTest. And also it has been integratd in https://github.com/tianocore/edk2-staging/tree/DeviceSecurity and been verified. All the code change is on the PR https://github.com/tianocore/edk2/pull/3224. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4036 Signed-off-by: Qi Zhang Cc: Jiewen Yao Cc: Jian J Wang Cc: Xiaoyu Lu Cc: Guomin Jiang Reviewed-by: Jiewen Yao Qi Zhang (4): CryptoPkg: add AeadAesGcm function() definition. CryptoPkg: add AeadAesGcm support. CryptoPkg: add AeadAesGcm to Crypto Service. CryptoPkg: add UnitTest for AeadAesGcm. CryptoPkg/CryptoPkg.dsc | 2 + CryptoPkg/Driver/Crypto.c | 94 +++++- CryptoPkg/Include/Library/BaseCryptLib.h | 87 ++++++ .../Pcd/PcdCryptoServiceFamilyEnable.h | 7 + .../Library/BaseCryptLib/BaseCryptLib.inf | 1 + .../BaseCryptLib/Cipher/CryptAeadAesGcm.c | 279 ++++++++++++++++++ .../BaseCryptLib/Cipher/CryptAeadAesGcmNull.c | 100 +++++++ .../Library/BaseCryptLib/PeiCryptLib.inf | 1 + .../Library/BaseCryptLib/RuntimeCryptLib.inf | 1 + .../Library/BaseCryptLib/SmmCryptLib.inf | 1 + .../BaseCryptLib/UnitTestHostBaseCryptLib.inf | 1 + .../BaseCryptLibNull/BaseCryptLibNull.inf | 1 + .../Cipher/CryptAeadAesGcmNull.c | 100 +++++++ .../BaseCryptLibOnProtocolPpi/CryptLib.c | 93 ++++++ CryptoPkg/Private/Protocol/Crypto.h | 88 +++++- .../Library/BaseCryptLib/AeadAesGcmTests.c | 112 +++++++ .../BaseCryptLib/BaseCryptLibUnitTests.c | 1 + .../Library/BaseCryptLib/TestBaseCryptLib.h | 3 + .../BaseCryptLib/TestBaseCryptLibHost.inf | 1 + .../BaseCryptLib/TestBaseCryptLibShell.inf | 1 + 20 files changed, 972 insertions(+), 2 deletions(-) create mode 100644 CryptoPkg/Library/BaseCryptLib/Cipher/CryptAeadAesGcm.c create mode 100644 CryptoPkg/Library/BaseCryptLib/Cipher/CryptAeadAesGcmNull.c create mode 100644 CryptoPkg/Library/BaseCryptLibNull/Cipher/CryptAeadAesGcmNull.c create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/AeadAesGcmTests.c -- 2.26.2.windows.1