diff --git a/frameworks/js/napi/inc/napi_mac.h b/frameworks/js/napi/inc/napi_mac.h index 10fe0604fa96a3c1a86b0c17a17bffb35d856304..0af1c42d6b1f8b1b228b12e9be6666b07e547381 100644 --- a/frameworks/js/napi/inc/napi_mac.h +++ b/frameworks/js/napi/inc/napi_mac.h @@ -26,7 +26,6 @@ namespace OHOS { namespace CryptoFramework { - class NapiMac { public: NapiMac(HcfMac *macObj); @@ -50,7 +49,6 @@ public: private: HcfMac *macObj_ = nullptr; }; - } // namespace CryptoFramework } // namespace OHOS diff --git a/frameworks/js/napi/inc/napi_md.h b/frameworks/js/napi/inc/napi_md.h index caec507478c5a7d7db1166d8c26f73df115f35f9..158eec336b511eaad5b9bed3ebf8430e66bbb5ad 100644 --- a/frameworks/js/napi/inc/napi_md.h +++ b/frameworks/js/napi/inc/napi_md.h @@ -26,7 +26,6 @@ namespace OHOS { namespace CryptoFramework { - class NapiMd { public: NapiMd(HcfMd *mdObj); @@ -49,7 +48,6 @@ public: private: HcfMd *mdObj_ = nullptr; }; - } // namespace CryptoFramework } // namespace OHOS diff --git a/frameworks/js/napi/inc/napi_rand.h b/frameworks/js/napi/inc/napi_rand.h index 2a0bdfebac9553c2a9613c12934940f1d88f98dd..a4b2ebfa34d373de9114dc903aeaf49e8e617538 100644 --- a/frameworks/js/napi/inc/napi_rand.h +++ b/frameworks/js/napi/inc/napi_rand.h @@ -26,7 +26,6 @@ namespace OHOS { namespace CryptoFramework { - class NapiRand { public: NapiRand(HcfRand *randObj); @@ -48,7 +47,6 @@ public: private: HcfRand *randObj_ = nullptr; }; - } // namespace CryptoFramework } // namespace OHOS #endif diff --git a/frameworks/js/napi/src/napi_mac.cpp b/frameworks/js/napi/src/napi_mac.cpp index 0a252e6dcae124ee2519aa76ecbb4409a8fd2840..6c07e6eaf33a96788aefd41822d6f7bbdadd69d3 100644 --- a/frameworks/js/napi/src/napi_mac.cpp +++ b/frameworks/js/napi/src/napi_mac.cpp @@ -25,7 +25,6 @@ namespace OHOS { namespace CryptoFramework { - napi_ref NapiMac::classRef_ = nullptr; struct MacCtx { @@ -478,6 +477,5 @@ void NapiMac::DefineMacJSClass(napi_env env, napi_value exports) sizeof(classDesc) / sizeof(classDesc[0]), classDesc, &constructor); napi_create_reference(env, constructor, 1, &classRef_); } - } // CryptoFramework } // OHOS \ No newline at end of file diff --git a/frameworks/js/napi/src/napi_md.cpp b/frameworks/js/napi/src/napi_md.cpp index c2e1946968430ed56e58b7fe0cb219c7547bd869..da10747b024a5f898279a2eb14ea8b48b4d046cb 100644 --- a/frameworks/js/napi/src/napi_md.cpp +++ b/frameworks/js/napi/src/napi_md.cpp @@ -24,7 +24,6 @@ namespace OHOS { namespace CryptoFramework { - napi_ref NapiMd::classRef_ = nullptr; struct MdCtx { @@ -384,6 +383,5 @@ void NapiMd::DefineMdJSClass(napi_env env, napi_value exports) sizeof(classDesc) / sizeof(classDesc[0]), classDesc, &constructor); napi_create_reference(env, constructor, 1, &classRef_); } - } // CryptoFramework } // OHOS \ No newline at end of file diff --git a/frameworks/js/napi/src/napi_rand.cpp b/frameworks/js/napi/src/napi_rand.cpp index 9fd2d732b950473b6df349a49adbd508181dd804..3b515c1ece5ac863aabdb3610f1da464f7ada1fd 100644 --- a/frameworks/js/napi/src/napi_rand.cpp +++ b/frameworks/js/napi/src/napi_rand.cpp @@ -24,7 +24,6 @@ namespace OHOS { namespace CryptoFramework { - napi_ref NapiRand::classRef_ = nullptr; struct RandCtx { @@ -361,6 +360,5 @@ void NapiRand::DefineRandJSClass(napi_env env, napi_value exports) sizeof(classDesc) / sizeof(classDesc[0]), classDesc, &constructor); napi_create_reference(env, constructor, 1, &classRef_); } - } // CryptoFramework } // OHOS diff --git a/frameworks/rand/rand.c b/frameworks/rand/rand.c index 36ca734e721b01736b753a4b0c8651f672080e38..2e46186b82b3844304f7fa18ef3d61f8cd29c0f9 100644 --- a/frameworks/rand/rand.c +++ b/frameworks/rand/rand.c @@ -60,7 +60,7 @@ static HcfRandSpiCreateFunc FindAbility(const char *algoName) static HcfResult GenerateRandom(HcfRand *self, int32_t numBytes, HcfBlob *random) { - if ((self == NULL) || (numBytes <= 0) || (random == NULL)) { + if ((self == NULL) || (numBytes <= 0) || (numBytes > HCF_MAX_BUFFER_LEN) || (random == NULL)) { LOGE("Invalid params!"); return HCF_INVALID_PARAMS; } @@ -74,7 +74,7 @@ static HcfResult GenerateRandom(HcfRand *self, int32_t numBytes, HcfBlob *random static HcfResult SetSeed(HcfRand *self, HcfBlob *seed) { - if ((self == NULL) || (!IsBlobValid(seed))) { + if ((self == NULL) || (!IsBlobValid(seed)) || (seed->len > HCF_MAX_BUFFER_LEN)) { LOGE("The input self ptr is NULL!"); return HCF_INVALID_PARAMS; } diff --git a/plugin/openssl_plugin/crypto_operation/hmac/inc/mac_openssl.h b/plugin/openssl_plugin/crypto_operation/hmac/inc/mac_openssl.h index 98f15ebda55a0bb42c210e9dafa1286a27174b29..c70c390983fb6b78e2e6eabc9369dd90c2f46338 100644 --- a/plugin/openssl_plugin/crypto_operation/hmac/inc/mac_openssl.h +++ b/plugin/openssl_plugin/crypto_operation/hmac/inc/mac_openssl.h @@ -12,6 +12,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +#ifndef HCF_HMAC_OPENSSL_H +#define HCF_HMAC_OPENSSL_H #include "mac_spi.h" @@ -24,3 +26,4 @@ HcfResult OpensslMacSpiCreate(const char *opensslAlgoName, HcfMacSpi **spiObj); #ifdef __cplusplus } #endif +#endif \ No newline at end of file diff --git a/plugin/openssl_plugin/crypto_operation/hmac/src/mac_openssl.c b/plugin/openssl_plugin/crypto_operation/hmac/src/mac_openssl.c index 00abbbf4ea604f3b5df212a9439baf211757d736..ce187c42fee87cf54a7948b4a2d229bfd123b00b 100644 --- a/plugin/openssl_plugin/crypto_operation/hmac/src/mac_openssl.c +++ b/plugin/openssl_plugin/crypto_operation/hmac/src/mac_openssl.c @@ -141,7 +141,12 @@ static uint32_t OpensslEngineGetMacLength(HcfMacSpi *self) LOGE("The CTX is NULL!"); return HCF_ERR_CRYPTO_OPERATION; } - return HMAC_size(OpensslGetMacCtx(self)); + int32_t size = HMAC_size(OpensslGetMacCtx(self)); + if (size < 0) { + LOGE("Get the overflow path length in openssl!"); + return 0; + } + return size; } static void OpensslDestroyMac(HcfObjectBase *self) diff --git a/plugin/openssl_plugin/crypto_operation/md/inc/md_openssl.h b/plugin/openssl_plugin/crypto_operation/md/inc/md_openssl.h index 705e9a70586aae082ad39340e4ca16ca5a9336fa..4a624320080a53a801d8cb872994d2b8e5ab6f11 100644 --- a/plugin/openssl_plugin/crypto_operation/md/inc/md_openssl.h +++ b/plugin/openssl_plugin/crypto_operation/md/inc/md_openssl.h @@ -12,6 +12,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +#ifndef HCF_MD_OPENSSL_H +#define HCF_MD_OPENSSL_H #include "md_spi.h" @@ -24,3 +26,4 @@ HcfResult OpensslMdSpiCreate(const char *opensslAlgoName, HcfMdSpi **spiObj); #ifdef __cplusplus } #endif +#endif \ No newline at end of file diff --git a/plugin/openssl_plugin/crypto_operation/md/src/md_openssl.c b/plugin/openssl_plugin/crypto_operation/md/src/md_openssl.c index c34c5ae234a882c24b2458f58a3ae477bbc71e49..fc8bae5cfbdcec45ffaa5fa6afae859f7cbe783c 100644 --- a/plugin/openssl_plugin/crypto_operation/md/src/md_openssl.c +++ b/plugin/openssl_plugin/crypto_operation/md/src/md_openssl.c @@ -114,7 +114,11 @@ static uint32_t OpensslEngineGetMdLength(HcfMdSpi *self) LOGE("The CTX is NULL!"); return 0; } - uint32_t size = EVP_MD_CTX_size(OpensslGetMdCtx(self)); + int32_t size = EVP_MD_CTX_size(OpensslGetMdCtx(self)); + if (size < 0) { + LOGE("Get the overflow path length in openssl!"); + return 0; + } return size; } diff --git a/plugin/openssl_plugin/rand/inc/rand_openssl.h b/plugin/openssl_plugin/rand/inc/rand_openssl.h index 83a1e22626393b0319580c3179436b977fbd665a..29a73588230e622a8372e786e912e7fc6d10d38b 100644 --- a/plugin/openssl_plugin/rand/inc/rand_openssl.h +++ b/plugin/openssl_plugin/rand/inc/rand_openssl.h @@ -12,6 +12,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ +#ifndef HCF_MD_OPENSSL_H +#define HCF_MD_OPENSSL_H #include "rand_spi.h" @@ -24,3 +26,4 @@ HcfResult HcfRandSpiCreate(HcfRandSpi **spiObj); #ifdef __cplusplus } #endif +#endif \ No newline at end of file diff --git a/test/unittest/src/crypto_mac_test.cpp b/test/unittest/src/crypto_mac_test.cpp index 6f1b4e8b2f96ccf0c0fac1baeec552035477c40d..8532e55ea77a249b52d7bc6aede94481fa9c67ca 100644 --- a/test/unittest/src/crypto_mac_test.cpp +++ b/test/unittest/src/crypto_mac_test.cpp @@ -26,7 +26,8 @@ using namespace std; using namespace testing::ext; -class CryptoFrameworkHmacTest : public testing::Test { +namespace { +class CryptoMacTest : public testing::Test { public: static void SetUpTestCase(); static void TearDownTestCase(); @@ -49,14 +50,14 @@ static char g_testBigData[] = "VqRH5dzdeeturr5zN5vE77DtqjV7kNKbDJqk4mNqyYRTXymhj "2mnJ5xfnY3z63PFk6TXU9Ga2YmHvtycXxwqMBEctQRa3zVWGVSrh3NF6jXa\r\n"; constexpr uint32_t MAX_MAC_BLOB_LEN = 5000; -void CryptoFrameworkHmacTest::SetUpTestCase() {} -void CryptoFrameworkHmacTest::TearDownTestCase() {} +void CryptoMacTest::SetUpTestCase() {} +void CryptoMacTest::TearDownTestCase() {} -void CryptoFrameworkHmacTest::SetUp() // add init here, this will be called before test. +void CryptoMacTest::SetUp() // add init here, this will be called before test. { } -void CryptoFrameworkHmacTest::TearDown() // add destroy here, this will be called when test case done. +void CryptoMacTest::TearDown() // add destroy here, this will be called when test case done. { } @@ -68,50 +69,50 @@ static void PrintfBlobInHex(uint8_t *data, size_t dataLen) printf("\n"); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacCreateTest002, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacCreateTest002, TestSize.Level0) { int32_t ret = 0; - ret = (int)HcfMacCreate("SHA1", nullptr); + ret = (int32_t)HcfMacCreate("SHA1", nullptr); EXPECT_NE(ret, 0); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoSuppTest001, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoSuppTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); EXPECT_NE(macObj, nullptr); OH_HCF_ObjDestroy(macObj); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoSuppTest002, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoSuppTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA3", &macObj); + ret = (int32_t)HcfMacCreate("SHA3", &macObj); EXPECT_NE(ret, 0); EXPECT_EQ(macObj, nullptr); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoSuppTest003, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoSuppTest003, TestSize.Level0) { int32_t ret = 0; // create a SHA obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate(nullptr, &macObj); + ret = (int32_t)HcfMacCreate(nullptr, &macObj); EXPECT_NE(ret, 0); EXPECT_EQ(macObj, nullptr); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoNameTest001, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoNameTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); EXPECT_NE(macObj, nullptr); // test api functions @@ -121,12 +122,12 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoNameTest001, TestSize.L OH_HCF_ObjDestroy(macObj); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacInitTest001, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacInitTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // set a nullptr key HcfSymKey *key = nullptr; @@ -136,16 +137,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacInitTest001, TestSize.Level OH_HCF_ObjDestroy(macObj); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacInitTest002, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacInitTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // create a symKey generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // get sym key from preset keyBlob uint8_t testKey[] = "abcdefghijklmnop"; @@ -161,12 +162,12 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacInitTest002, TestSize.Level OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacUpdateTest001, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacUpdateTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // set input and output buf uint8_t testData[] = "My test data"; @@ -179,16 +180,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacUpdateTest001, TestSize.Lev OH_HCF_ObjDestroy(macObj); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacUpdateTest002, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacUpdateTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // cteate key generator and set key text HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // get sym key from preset keyBlob uint8_t testKey[] = "abcdefghijklmnop"; @@ -208,16 +209,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacUpdateTest002, TestSize.Lev OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacUpdateTest003, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacUpdateTest003, TestSize.Level0) { int32_t ret = 0; // create a API obj with SHA1 HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // cteate key generator and set key text HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // get sym key from preset keyBlob uint8_t testKey[] = "abcdefghijklmnop"; @@ -240,12 +241,12 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacUpdateTest003, TestSize.Lev OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacDoFinalTest001, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacDoFinalTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // set input and output buf uint8_t outBuf[20] = {0}; @@ -257,16 +258,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacDoFinalTest001, TestSize.Le OH_HCF_ObjDestroy(macObj); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacDoFinalTest002, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacDoFinalTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // cteate key generator and set key text HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // get sym key from preset keyBlob uint8_t testKey[] = "abcdefghijklmnop"; @@ -300,16 +301,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacDoFinalTest002, TestSize.Le printf("test finish"); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacDoFinalTest003, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacDoFinalTest003, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // cteate key generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // get sym key from preset keyBlob uint8_t testKey[] = "abcdefghijklmnop"; @@ -338,16 +339,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacDoFinalTest003, TestSize.Le OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacDoFinalTest004, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacDoFinalTest004, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA256", &macObj); + ret = (int32_t)HcfMacCreate("SHA256", &macObj); EXPECT_EQ(ret, 0); // cteate key generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // get sym key from preset keyBlob uint8_t testKey[] = "abcdefghijklmnop"; @@ -375,12 +376,12 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacDoFinalTest004, TestSize.Le OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacLenTest001, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacLenTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // test api functions ret = macObj->getMacLength(macObj); @@ -388,16 +389,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacLenTest001, TestSize.Level0 OH_HCF_ObjDestroy(macObj); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacLenTest002, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacLenTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // cteate key generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // get sym key from preset keyBlob uint8_t testKey[] = "abcdefghijklmnop"; @@ -415,16 +416,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacLenTest002, TestSize.Level0 OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest001, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA1", &macObj); + ret = (int32_t)HcfMacCreate("SHA1", &macObj); EXPECT_EQ(ret, 0); // create a symKey generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // set key data and convert it to key obj uint8_t testKey[] = "abcdefghijklmnop"; @@ -454,16 +455,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest001, TestSize.Level OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest002, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA224", &macObj); + ret = (int32_t)HcfMacCreate("SHA224", &macObj); EXPECT_EQ(ret, 0); // create a symKey generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // set key data and convert it to key obj uint8_t testKey[] = "abcdefghijklmnop"; @@ -493,16 +494,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest002, TestSize.Level OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest003, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoTest003, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA256", &macObj); + ret = (int32_t)HcfMacCreate("SHA256", &macObj); EXPECT_EQ(ret, 0); // create a symKey generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // set key data and convert it to key obj uint8_t testKey[] = "abcdefghijklmnop"; @@ -532,16 +533,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest003, TestSize.Level OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest004, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoTest004, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA384", &macObj); + ret = (int32_t)HcfMacCreate("SHA384", &macObj); EXPECT_EQ(ret, 0); // create a symKey generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // set key data and convert it to key obj uint8_t testKey[] = "abcdefghijklmnop"; @@ -571,16 +572,16 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest004, TestSize.Level OH_HCF_ObjDestroy(generator); } -HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest005, TestSize.Level0) +HWTEST_F(CryptoMacTest, CryptoFrameworkHmacAlgoTest005, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMac *macObj = nullptr; - ret = (int)HcfMacCreate("SHA512", &macObj); + ret = (int32_t)HcfMacCreate("SHA512", &macObj); EXPECT_EQ(ret, 0); // create a symKey generator HcfSymKeyGenerator *generator = nullptr; - ret = (int)HcfSymKeyGeneratorCreate("AES128", &generator); + ret = (int32_t)HcfSymKeyGeneratorCreate("AES128", &generator); EXPECT_EQ(ret, 0); // set key data and convert it to key obj uint8_t testKey[] = "abcdefghijklmnop"; @@ -608,4 +609,5 @@ HWTEST_F(CryptoFrameworkHmacTest, CryptoFrameworkHmacAlgoTest005, TestSize.Level OH_HCF_ObjDestroy(macObj); OH_HCF_ObjDestroy(key); OH_HCF_ObjDestroy(generator); +} } \ No newline at end of file diff --git a/test/unittest/src/crypto_md_test.cpp b/test/unittest/src/crypto_md_test.cpp index 72ddd618441552404686228cfdc937fd83d40236..6bdb968b5d6ff3a1cf3e7ca8aa25022835982af9 100644 --- a/test/unittest/src/crypto_md_test.cpp +++ b/test/unittest/src/crypto_md_test.cpp @@ -24,7 +24,8 @@ using namespace std; using namespace testing::ext; -class CryptoFrameworkMdTest : public testing::Test { +namespace { +class CryptoMdTest : public testing::Test { public: static void SetUpTestCase(); static void TearDownTestCase(); @@ -47,14 +48,14 @@ static char g_testBigData[] = "VqRH5dzdeeturr5zN5vE77DtqjV7kNKbDJqk4mNqyYRTXymhj "2mnJ5xfnY3z63PFk6TXU9Ga2YmHvtycXxwqMBEctQRa3zVWGVSrh3NF6jXa\r\n"; constexpr uint32_t MAX_MD_BLOB_LEN = 5000; -void CryptoFrameworkMdTest::SetUpTestCase() {} -void CryptoFrameworkMdTest::TearDownTestCase() {} +void CryptoMdTest::SetUpTestCase() {} +void CryptoMdTest::TearDownTestCase() {} -void CryptoFrameworkMdTest::SetUp() // add init here, this will be called before test. +void CryptoMdTest::SetUp() // add init here, this will be called before test. { } -void CryptoFrameworkMdTest::TearDown() // add destroy here, this will be called when test case done. +void CryptoMdTest::TearDown() // add destroy here, this will be called when test case done. { } @@ -66,51 +67,57 @@ static void PrintfBlobInHex(uint8_t *data, size_t dataLen) printf("\n"); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdCreateTest001, TestSize.Level0) +/** + * @tc.name: CryptoFrameworkMdTest.CryptoFrameworkMdCreateTest001 + * @tc.desc: Verify that the creation of the SHA1 Md obj is normal. + * @tc.type: FUNC + * @tc.require: I5QWEM + */ +HWTEST_F(CryptoMdTest, CryptoFrameworkMdCreateTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj - ret = (int)HcfMdCreate("SHA1", nullptr); + ret = (int32_t)HcfMdCreate("SHA1", nullptr); EXPECT_NE(ret, 0); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoSuppTest001, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoSuppTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA1", &mdObj); + ret = (int32_t)HcfMdCreate("SHA1", &mdObj); EXPECT_EQ(ret, 0); EXPECT_NE(mdObj, nullptr); OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoSuppTest002, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoSuppTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA3 obj (not supported) HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA3", &mdObj); + ret = (int32_t)HcfMdCreate("SHA3", &mdObj); EXPECT_NE(ret, 0); EXPECT_EQ(mdObj, nullptr); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoSuppTest003, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoSuppTest003, TestSize.Level0) { int32_t ret = 0; // create an obj with null algoInput (not supported) HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate(nullptr, &mdObj); + ret = (int32_t)HcfMdCreate(nullptr, &mdObj); EXPECT_NE(ret, 0); EXPECT_EQ(mdObj, nullptr); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoNameTest001, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoNameTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA1", &mdObj); + ret = (int32_t)HcfMdCreate("SHA1", &mdObj); EXPECT_EQ(ret, 0); EXPECT_NE(mdObj, nullptr); // test api functions @@ -120,12 +127,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoNameTest001, TestSize.Level OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdUpdateTest001, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdUpdateTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA1", &mdObj); + ret = (int32_t)HcfMdCreate("SHA1", &mdObj); EXPECT_EQ(ret, 0); // define input and output data in blob form HcfBlob *inBlob= nullptr; @@ -135,12 +142,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdUpdateTest001, TestSize.Level0) OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdUpdateTest002, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdUpdateTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA1", &mdObj); + ret = (int32_t)HcfMdCreate("SHA1", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf uint8_t testData[] = "My test data"; @@ -153,12 +160,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdUpdateTest002, TestSize.Level0) OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdDoFinalTest001, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdDoFinalTest001, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA1", &mdObj); + ret = (int32_t)HcfMdCreate("SHA1", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf uint8_t outBuf[20] = {0}; @@ -171,12 +178,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdDoFinalTest001, TestSize.Level0 OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdDoFinalTest002, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdDoFinalTest002, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA1", &mdObj); + ret = (int32_t)HcfMdCreate("SHA1", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf uint8_t testData[] = "My test data"; @@ -195,12 +202,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdDoFinalTest002, TestSize.Level0 OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdDoFinalTest003, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdDoFinalTest003, TestSize.Level0) { int32_t ret = 0; // create a SHA1 obj HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA256", &mdObj); + ret = (int32_t)HcfMdCreate("SHA256", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf uint8_t outBuf[20] = {0}; @@ -218,12 +225,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdDoFinalTest003, TestSize.Level0 OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdLenTest001, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdLenTest001, TestSize.Level0) { int32_t ret = 0; // create a API obj with SHA1 HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA1", &mdObj); + ret = (int32_t)HcfMdCreate("SHA1", &mdObj); EXPECT_EQ(ret, 0); // test api functions ret = mdObj->getMdLength(mdObj); @@ -231,12 +238,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdLenTest001, TestSize.Level0) OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest001, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoTest001, TestSize.Level0) { int32_t ret = 0; // create a API obj with SHA1 HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA1", &mdObj); + ret = (int32_t)HcfMdCreate("SHA1", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf uint8_t testData[] = "My test data"; @@ -257,12 +264,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest001, TestSize.Level0) OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest002, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoTest002, TestSize.Level0) { int32_t ret = 0; // create a API obj with SHA1 HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA224", &mdObj); + ret = (int32_t)HcfMdCreate("SHA224", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf @@ -287,12 +294,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest002, TestSize.Level0) OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest003, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoTest003, TestSize.Level0) { int32_t ret = 0; // create a API obj with SHA1 HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA256", &mdObj); + ret = (int32_t)HcfMdCreate("SHA256", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf uint8_t testData[] = "My test data"; @@ -315,12 +322,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest003, TestSize.Level0) OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest004, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoTest004, TestSize.Level0) { int32_t ret = 0; // create a API obj with SHA1 HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA384", &mdObj); + ret = (int32_t)HcfMdCreate("SHA384", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf @@ -345,12 +352,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest004, TestSize.Level0) OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest005, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoTest005, TestSize.Level0) { int32_t ret = 0; // create a API obj with SHA1 HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("SHA512", &mdObj); + ret = (int32_t)HcfMdCreate("SHA512", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf @@ -375,12 +382,12 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest005, TestSize.Level0) OH_HCF_ObjDestroy(mdObj); } -HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest006, TestSize.Level0) +HWTEST_F(CryptoMdTest, CryptoFrameworkMdAlgoTest006, TestSize.Level0) { int32_t ret = 0; // create a API obj with SHA1 HcfMd *mdObj = nullptr; - ret = (int)HcfMdCreate("MD5", &mdObj); + ret = (int32_t)HcfMdCreate("MD5", &mdObj); EXPECT_EQ(ret, 0); // set input and output buf @@ -403,4 +410,5 @@ HWTEST_F(CryptoFrameworkMdTest, CryptoFrameworkMdAlgoTest006, TestSize.Level0) // destroy the API obj and blob data HcfBlobDataClearAndFree(&outBlob); OH_HCF_ObjDestroy(mdObj); +} } \ No newline at end of file diff --git a/test/unittest/src/crypto_rand_test.cpp b/test/unittest/src/crypto_rand_test.cpp index 53cc0d28cb75774838bfc61401e49a8b795a8cda..d99f79d9ac060804da159ef9ced993cf3ed34196 100644 --- a/test/unittest/src/crypto_rand_test.cpp +++ b/test/unittest/src/crypto_rand_test.cpp @@ -24,7 +24,8 @@ using namespace std; using namespace testing::ext; -class CryptoFrameworkRandTest : public testing::Test { +namespace { +class CryptoRandTest : public testing::Test { public: static void SetUpTestCase(); static void TearDownTestCase(); @@ -32,30 +33,36 @@ public: void TearDown(); }; -void CryptoFrameworkRandTest::SetUpTestCase() {} -void CryptoFrameworkRandTest::TearDownTestCase() {} +void CryptoRandTest::SetUpTestCase() {} +void CryptoRandTest::TearDownTestCase() {} -void CryptoFrameworkRandTest::SetUp() // add init here, this will be called before test. +void CryptoRandTest::SetUp() // add init here, this will be called before test. { } -void CryptoFrameworkRandTest::TearDown() // add destroy here, this will be called when test case done. +void CryptoRandTest::TearDown() // add destroy here, this will be called when test case done. { } -HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkRandCreateTest001, TestSize.Level0) +/** + * @tc.name: CryptoFrameworkRandTest.CryptoFrameworkRandCreateTest001 + * @tc.desc: Verify that the creation of the random obj is normal. + * @tc.type: FUNC + * @tc.require: I5QWEN + */ +HWTEST_F(CryptoRandTest, CryptoFrameworkRandCreateTest001, TestSize.Level0) { int32_t ret = 0; - ret = (int)HcfRandCreate(nullptr); + ret = (int32_t)HcfRandCreate(nullptr); EXPECT_NE(ret, 0); } -HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkRandGenerateTest001, TestSize.Level0) +HWTEST_F(CryptoRandTest, CryptoFrameworkRandGenerateTest001, TestSize.Level0) { int32_t ret = 0; // create a rand obj HcfRand *randObj = nullptr; - ret = (int)HcfRandCreate(&randObj); + ret = (int32_t)HcfRandCreate(&randObj); EXPECT_EQ(ret, 0); // preset params int32_t randomLen = 0; @@ -68,12 +75,12 @@ HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkRandGenerateTest001, TestSize.L OH_HCF_ObjDestroy(randObj); } -HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkRandGenerateTest002, TestSize.Level0) +HWTEST_F(CryptoRandTest, CryptoFrameworkRandGenerateTest002, TestSize.Level0) { int32_t ret = 0; // create a rand obj HcfRand *randObj = nullptr; - ret = (int)HcfRandCreate(&randObj); + ret = (int32_t)HcfRandCreate(&randObj); EXPECT_EQ(ret, 0); // preset params int32_t randomLen = 32; @@ -88,16 +95,16 @@ HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkRandGenerateTest002, TestSize.L OH_HCF_ObjDestroy(randObj); } -HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkRandGenerateTest003, TestSize.Level0) +HWTEST_F(CryptoRandTest, CryptoFrameworkRandGenerateTest003, TestSize.Level0) { int32_t ret = 0; // create a rand obj HcfRand *randObj = nullptr; - ret = (int)HcfRandCreate(&randObj); + ret = (int32_t)HcfRandCreate(&randObj); EXPECT_EQ(ret, 0); // preset params - int32_t randomLen = 1000; - uint8_t randomBuf[1000] = {0}; + int32_t randomLen = 8192; + uint8_t randomBuf[8192] = {0}; // define randomBlob and seedBlob struct HcfBlob randomBlob = {.data = (uint8_t *)randomBuf, .len = 0}; // test generate random @@ -108,12 +115,31 @@ HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkRandGenerateTest003, TestSize.L OH_HCF_ObjDestroy(randObj); } -HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkSetSeedTest001, TestSize.Level0) +HWTEST_F(CryptoRandTest, CryptoFrameworkRandGenerateTest004, TestSize.Level0) { int32_t ret = 0; // create a rand obj HcfRand *randObj = nullptr; - ret = (int)HcfRandCreate(&randObj); + ret = (int32_t)HcfRandCreate(&randObj); + EXPECT_EQ(ret, 0); + // preset params + int32_t randomLen = 8193; + uint8_t randomBuf[8193] = {0}; + // define randomBlob and seedBlob + struct HcfBlob randomBlob = {.data = (uint8_t *)randomBuf, .len = 0}; + // test generate random + ret = randObj->generateRandom(randObj, randomLen, &randomBlob); + EXPECT_NE(ret, 0); + // destroy the API obj and blob data + OH_HCF_ObjDestroy(randObj); +} + +HWTEST_F(CryptoRandTest, CryptoFrameworkSetSeedTest001, TestSize.Level0) +{ + int32_t ret = 0; + // create a rand obj + HcfRand *randObj = nullptr; + ret = (int32_t)HcfRandCreate(&randObj); EXPECT_EQ(ret, 0); // define randomBlob and seedBlob struct HcfBlob *seedBlob = nullptr; @@ -124,12 +150,12 @@ HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkSetSeedTest001, TestSize.Level0 OH_HCF_ObjDestroy(randObj); } -HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkSetSeedTest002, TestSize.Level0) +HWTEST_F(CryptoRandTest, CryptoFrameworkSetSeedTest002, TestSize.Level0) { int32_t ret = 0; // create a rand obj HcfRand *randObj = nullptr; - ret = (int)HcfRandCreate(&randObj); + ret = (int32_t)HcfRandCreate(&randObj); EXPECT_EQ(ret, 0); // preset params int32_t seedLen = 32; @@ -147,12 +173,12 @@ HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkSetSeedTest002, TestSize.Level0 OH_HCF_ObjDestroy(randObj); } -HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkSetSeedTest003, TestSize.Level0) +HWTEST_F(CryptoRandTest, CryptoFrameworkSetSeedTest003, TestSize.Level0) { int32_t ret = 0; // create a rand obj HcfRand *randObj = nullptr; - ret = (int)HcfRandCreate(&randObj); + ret = (int32_t)HcfRandCreate(&randObj); EXPECT_EQ(ret, 0); // preset params int32_t seedLen = 1000; @@ -168,4 +194,5 @@ HWTEST_F(CryptoFrameworkRandTest, CryptoFrameworkSetSeedTest003, TestSize.Level0 // destroy the API obj and blob data HcfBlobDataClearAndFree(&seedBlob); OH_HCF_ObjDestroy(randObj); +} } \ No newline at end of file