diff --git a/test/tests/CryptTests.cpp b/test/tests/CryptTests.cpp index b609873d13..b80da534de 100644 --- a/test/tests/CryptTests.cpp +++ b/test/tests/CryptTests.cpp @@ -1,8 +1,10 @@ #include #include #include +#include #include #include +#include "TestData.h" class CryptTests : public testing::Test { @@ -29,6 +31,16 @@ public: } return result; } + + std::string GetTestPrivateKeyPath() + { + return Path::Combine(TestData::GetBasePath(), "keys", "Player.privkey"); + } + + std::string GetTestPublicKeyPath() + { + return Path::Combine(TestData::GetBasePath(), "keys", "Player-56f4afb74622a23bd2539ee701fe1b2c13d7e6ba.pubkey"); + } }; TEST_F(CryptTests, SHA1_Basic) @@ -103,9 +115,9 @@ TEST_F(CryptTests, RSA_Basic) { std::vector data = { 0, 1, 2, 3, 4, 5, 6, 7 }; - auto file = File::ReadAllBytes("C:/Users/Ted/Documents/OpenRCT2/keys/Ted.privkey"); + auto file = File::ReadAllText(GetTestPrivateKeyPath()); auto key = Crypt::CreateRSAKey(); - key->SetPrivate(std::string_view((const char *)file.data(), file.size())); + key->SetPrivate(std::string_view(file.data(), file.size())); auto rsa = Crypt::CreateRSA(); auto signature = rsa->SignData(*key, data.data(), data.size()); @@ -117,13 +129,13 @@ TEST_F(CryptTests, RSA_VerifyWithPublic) { std::vector data = { 7, 6, 5, 4, 3, 2, 1, 0 }; - auto privateFile = File::ReadAllBytes("C:/Users/Ted/Documents/OpenRCT2/keys/Ted.privkey"); + auto privateFile = File::ReadAllText(GetTestPrivateKeyPath()); auto privateKey = Crypt::CreateRSAKey(); - privateKey->SetPrivate(std::string_view((const char *)privateFile.data(), privateFile.size())); + privateKey->SetPrivate(std::string_view(privateFile.data(), privateFile.size())); - auto publicFile = File::ReadAllBytes("C:/Users/Ted/Documents/OpenRCT2/keys/Ted-b298a310905df8865788bdc864560c3d4c3ba562.pubkey"); + auto publicFile = File::ReadAllText(GetTestPublicKeyPath()); auto publicKey = Crypt::CreateRSAKey(); - publicKey->SetPublic(std::string_view((const char *)publicFile.data(), publicFile.size())); + publicKey->SetPublic(std::string_view(publicFile.data(), publicFile.size())); auto rsa = Crypt::CreateRSA(); auto signature = rsa->SignData(*privateKey, data.data(), data.size()); @@ -133,7 +145,7 @@ TEST_F(CryptTests, RSA_VerifyWithPublic) TEST_F(CryptTests, RSAKey_GetPublic) { - auto inPem = File::ReadAllText("C:/Users/Ted/Documents/OpenRCT2/keys/Ted-b298a310905df8865788bdc864560c3d4c3ba562.pubkey"); + auto inPem = File::ReadAllText(GetTestPublicKeyPath()); auto publicKey = Crypt::CreateRSAKey(); publicKey->SetPublic(inPem); auto outPem = publicKey->GetPublic(); diff --git a/test/tests/testdata/keys/Player-56f4afb74622a23bd2539ee701fe1b2c13d7e6ba.pubkey b/test/tests/testdata/keys/Player-56f4afb74622a23bd2539ee701fe1b2c13d7e6ba.pubkey new file mode 100644 index 0000000000..06a9004fac --- /dev/null +++ b/test/tests/testdata/keys/Player-56f4afb74622a23bd2539ee701fe1b2c13d7e6ba.pubkey @@ -0,0 +1,5 @@ +-----BEGIN RSA PUBLIC KEY----- +MIGJAoGBAORGPJHpScRUYrjSu8Y5SCQW1UOefRUgQLDemcYD/DrMFBWnLYTMQmyW +QaJSt5zlacQucbfDV+tdxbQBO9eE1S+wxRVnSJpa40R9Ye7YTRsGUhwRyB0MwRBx +sxXKksWNDjsh3UujqW+Tq2Hhz4ohRr3K5fEkMS8Cgzs2TmiNgj1zAgMBAAE= +-----END RSA PUBLIC KEY----- diff --git a/test/tests/testdata/keys/Player.privkey b/test/tests/testdata/keys/Player.privkey new file mode 100644 index 0000000000..fef42f84bf --- /dev/null +++ b/test/tests/testdata/keys/Player.privkey @@ -0,0 +1,15 @@ +-----BEGIN RSA PRIVATE KEY----- +MIICXQIBAAKBgQDkRjyR6UnEVGK40rvGOUgkFtVDnn0VIECw3pnGA/w6zBQVpy2E +zEJslkGiUrec5WnELnG3w1frXcW0ATvXhNUvsMUVZ0iaWuNEfWHu2E0bBlIcEcgd +DMEQcbMVypLFjQ47Id1Lo6lvk6th4c+KIUa9yuXxJDEvAoM7Nk5ojYI9cwIDAQAB +AoGBAN6Ivil8ZGZZ4XfOMDH4y6QrAjKOQeAjdg02pHAOmIh1RKsrM8u/GI4lGMz2 +mHsChs4yfLepXn9cBg0KGt1qaCvjaNGDmZL8uLJiyhE0cB8eObUFZkWzsJlBdKRV +4aTXiWLZGQjDDLCdCz57MjSNspyuq4rsonKfTHlvvFHrN6J5AkEA9NSd05LnR90Y +kF1DtUyvhBF3ubCLMYbwjLQWhuI+kFDe1aoijaYye9x8ol/ZO17xYr5IJ+uFO1U+ +or5MVqma5wJBAO6wQpJGYU2lpMwr5H6C0/HNfDnh65idQ8bKx4aQzSb41pFaLT2o +2/cyOcXLaTz4yEtqiq4fgxJp6mZp4ZxGo5UCQQCMnDvUkk9AR6ve5aGIU3WOLRYM +0Gbw1+X5eUhiyTdTXQ7NubvEjIn79wKhoti5L2sE4fHA85P+IpQplY90Sk5LAkBw +FIhOE4phYaTO0tWKqnhHlQv+Sh3NHhvTXyjuAVS0NijbPBL+XypbG1SRkoCqRtAW +ycKxHM75eI6+5H0yWuE5AkAmZutrDHoZn64E2uUU3aRENxu/1uddepKSlWkzYj7N +sSuv6a9j5p89HAuE5tamnt83SnLh0s0s1L3zAciY8fqO +-----END RSA PRIVATE KEY-----