diff --git a/trunk/ConsoleDataMigration/ConsoleBackup/Exporter.cpp b/trunk/ConsoleDataMigration/ConsoleBackup/Exporter.cpp index 51294de..766650e 100644 --- a/trunk/ConsoleDataMigration/ConsoleBackup/Exporter.cpp +++ b/trunk/ConsoleDataMigration/ConsoleBackup/Exporter.cpp @@ -18,7 +18,6 @@ #include #include #include -#include #include #include #include @@ -240,15 +239,7 @@ void WriteIvs() nn::crypto::SwAesCtrContext swAesCtrContest; - if(nn::os::IsRunOnDevelopmentHardware()) - { - swAesCtrContest.Initialize(common::devIv, common::devKey, sizeof(common::devKey)); - } - else - { - swAesCtrContest.Initialize(common::prodIv, common::prodKey, sizeof(common::prodKey)); - } - + swAesCtrContest.Initialize(common::iv, common::key, sizeof(common::key)); swAesCtrContest.Encrypt(enc, ivs, size); s_SdWriter.WriteBufWithCmac(common::IVS_PATHNAME, enc, size); diff --git a/trunk/ConsoleDataMigration/ConsoleRestore/Importer.cpp b/trunk/ConsoleDataMigration/ConsoleRestore/Importer.cpp index 663b2f3..10c5e58 100644 --- a/trunk/ConsoleDataMigration/ConsoleRestore/Importer.cpp +++ b/trunk/ConsoleDataMigration/ConsoleRestore/Importer.cpp @@ -14,7 +14,6 @@ *---------------------------------------------------------------------------*/ #include -#include #include #include #include @@ -607,15 +606,7 @@ nn::Result ImportIvs() nn::crypto::Initialize(); nn::crypto::SwAesCtrContext swAesCtrContest; - if(nn::os::IsRunOnDevelopmentHardware()) - { - swAesCtrContest.Initialize(common::devIv, common::devKey, sizeof(common::devKey)); - } - else - { - swAesCtrContest.Initialize(common::prodIv, common::prodKey, sizeof(common::prodKey)); - } - + swAesCtrContest.Initialize(common::iv, common::key, sizeof(common::key)); swAesCtrContest.Decrypt(dec, enc, readSize); // IVS書き込み diff --git a/trunk/ConsoleDataMigration/common/Aes_define.h b/trunk/ConsoleDataMigration/common/Aes_define.h index f244569..d6fadcb 100644 --- a/trunk/ConsoleDataMigration/common/Aes_define.h +++ b/trunk/ConsoleDataMigration/common/Aes_define.h @@ -16,46 +16,54 @@ #ifndef AES_DEFINE_H_ #define AES_DEFINE_H_ +//マスタリング用ビルド時に有効にする +//#define USE_PROD_KEY + #include namespace common { - const bit8 devKey[AES_KEY_SIZE] NN_ATTRIBUTE_ALIGN(4) = + +#ifndef USE_PROD_KEY + + const bit8 key[AES_KEY_SIZE] NN_ATTRIBUTE_ALIGN(4) = { 0x81, 0x35, 0xc6, 0x54, 0x19, 0x1a, 0x47, 0x2a, 0x6b, 0x78, 0xbe, 0x25, 0x90, 0xf6, 0xee, 0x74 }; - const bit8 devCmacKey[AES_KEY_SIZE] = + const bit8 cmacKey[AES_KEY_SIZE] = { 0x87, 0xdd, 0xc6, 0xd6, 0xf2, 0xe0, 0x2c, 0xa6, 0x04, 0x21, 0x9c, 0x5e, 0x33, 0x8c, 0x3d, 0xaa }; - const bit8 devIv[AES_BLOCK_SIZE] NN_ATTRIBUTE_ALIGN(4) = + const bit8 iv[AES_BLOCK_SIZE] NN_ATTRIBUTE_ALIGN(4) = { 0xdf, 0x0f, 0xf9, 0x1b, 0x34, 0x47, 0x70, 0x7f, 0x7d, 0x06, 0x85, 0xe6, 0xe7, 0xb6, 0x4e, 0xe9 }; - - const bit8 prodKey[AES_KEY_SIZE] NN_ATTRIBUTE_ALIGN(4) = +#else + const bit8 key[AES_KEY_SIZE] NN_ATTRIBUTE_ALIGN(4) = { 0x64, 0x02, 0x6d, 0xbd, 0x9f, 0xb6, 0x62, 0x39, 0x86, 0x90, 0x67, 0x8a, 0xe2, 0xfa, 0xe1, 0x6e }; - const bit8 prodCmacKey[AES_KEY_SIZE] = + const bit8 cmacKey[AES_KEY_SIZE] = { 0xdf, 0x3c, 0x58, 0xeb, 0xeb, 0xbf, 0x45, 0x6d, 0xc9, 0xbe, 0xe3, 0x10, 0xe2, 0x23, 0xfc, 0x30 }; - const bit8 prodIv[AES_BLOCK_SIZE] NN_ATTRIBUTE_ALIGN(4) = + const bit8 iv[AES_BLOCK_SIZE] NN_ATTRIBUTE_ALIGN(4) = { 0xe4, 0xcf, 0x58, 0xe5, 0xc9, 0xd6, 0xac, 0x7d, 0xf1, 0xb9, 0x82, 0xf9, 0xa2, 0xd8, 0xda, 0x7b }; +#endif + } diff --git a/trunk/ConsoleDataMigration/common/FileTransfer.cpp b/trunk/ConsoleDataMigration/common/FileTransfer.cpp index 51e5ad6..7ce23f6 100644 --- a/trunk/ConsoleDataMigration/common/FileTransfer.cpp +++ b/trunk/ConsoleDataMigration/common/FileTransfer.cpp @@ -15,8 +15,6 @@ #include -#include - #include #include #include @@ -214,14 +212,7 @@ bool CopyDirectory(const wchar_t * from_path, const wchar_t * to_path, void* buf } nn::crypto::SwAesCtrContext swAesCtrContext; - if(nn::os::IsRunOnDevelopmentHardware()) - { - swAesCtrContext.Initialize(devIv, common::devKey, sizeof(devKey)); - } - else - { - swAesCtrContext.Initialize(prodIv, common::prodKey, sizeof(prodKey)); - } + swAesCtrContext.Initialize(iv, common::key, sizeof(key)); size_t totalReadSize = 0; nn::crypto::Sha256Context context; @@ -306,16 +297,8 @@ bool CopyDirectory(const wchar_t * from_path, const wchar_t * to_path, void* buf context.GetHash(sha256Hash); bit8 cmac[nn::crypto::AES_CMAC_MAC_SIZE]; - if(nn::os::IsRunOnDevelopmentHardware()) - { - result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, - nn::crypto::Sha256Context::HASH_SIZE, common::devCmacKey); - } - else - { - result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, - nn::crypto::Sha256Context::HASH_SIZE, common::prodCmacKey); - } + result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, + nn::crypto::Sha256Context::HASH_SIZE, common::cmacKey); COMMON_LOGGER_RESULT_IF_FAILED_WITH_LINE(result); result = to_file.TryWrite(&writesize, cmac, sizeof(cmac)); @@ -448,15 +431,7 @@ bool CalculateAndCompareCmac(nn::crypto::Sha256Context* context, bit8* sdCmac) context->GetHash(sha256Hash); context->Finalize(); - if(nn::os::IsRunOnDevelopmentHardware()) - { - result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, sizeof(sha256Hash), common::devCmacKey); - } - else - { - result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, sizeof(sha256Hash), common::prodCmacKey); - } - + result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, sizeof(sha256Hash), common::cmacKey); if (result.IsFailure()) { COMMON_LOGGER_RESULT_IF_FAILED_WITH_LINE(result); diff --git a/trunk/ConsoleDataMigration/common/SdReaderWriter.cpp b/trunk/ConsoleDataMigration/common/SdReaderWriter.cpp index 5fd268a..4bea638 100644 --- a/trunk/ConsoleDataMigration/common/SdReaderWriter.cpp +++ b/trunk/ConsoleDataMigration/common/SdReaderWriter.cpp @@ -18,8 +18,6 @@ #include "CommonLogger.h" #include "Aes_define.h" -#include - #include #include #include @@ -124,15 +122,7 @@ nn::Result SdReaderWriter::WriteBufWithCmac(const wchar_t* path, void* buf, size nn::crypto::CalculateSha256(sha256Hash, buf, size); bit8 cmac[nn::crypto::AES_CMAC_MAC_SIZE]; - - if(nn::os::IsRunOnDevelopmentHardware()) - { - result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, nn::crypto::Sha256Context::HASH_SIZE, common::devCmacKey); - } - else - { - result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, nn::crypto::Sha256Context::HASH_SIZE, common::prodCmacKey); - } + result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, nn::crypto::Sha256Context::HASH_SIZE, common::cmacKey); COMMON_LOGGER_RESULT_IF_FAILED_WITH_LINE(result); s32 writeSize; @@ -222,15 +212,7 @@ nn::Result SdReaderWriter::ReadBufWithCmac(const wchar_t* path, void* buf, size_ nn::crypto::CalculateSha256(sha256Hash, buf, *totalSize); bit8 cmac[nn::crypto::AES_CMAC_MAC_SIZE]; - if(nn::os::IsRunOnDevelopmentHardware()) - { - result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, nn::crypto::Sha256Context::HASH_SIZE, common::devCmacKey); - } - else - { - result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, nn::crypto::Sha256Context::HASH_SIZE, common::prodCmacKey); - } - + result = nn::crypto::CalculateAesCmacSw(cmac, sha256Hash, nn::crypto::Sha256Context::HASH_SIZE, common::cmacKey); COMMON_LOGGER_RESULT_IF_FAILED_WITH_LINE(result); if(std::memcmp(reinterpret_cast(buf) + *totalSize, cmac, sizeof(cmac)) != 0)