Files
UnrealEngineUWP/Engine/Source/Programs/UnrealPak/Private/KeyGenerator.h
Ben Marsh 149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00

35 lines
874 B
C

// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
#pragma once
/**
* Encryption keys: public and private
*/
struct FKeyPair
{
/** Public decryption key */
FEncryptionKey PublicKey;
/** Private encryption key */
FEncryptionKey PrivateKey;
friend FArchive& operator<<(FArchive& Ar, FKeyPair& Pair)
{
Ar << Pair.PublicKey.Exponent;
Ar << Pair.PublicKey.Modulus;
Ar << Pair.PrivateKey.Exponent;
Ar << Pair.PrivateKey.Modulus;
return Ar;
}
};
/**
* Generates a prime number table where the max prime number value is less than MaxValue
*/
void GeneratePrimeNumberTable(int64 MaxValue, const TCHAR* Filename);
/**
* Generates a file with the encryption keys
*/
bool GenerateKeys(const TCHAR* KeyFilename);
bool SaveKeysToFile(const FKeyPair& Keys, const TCHAR* KeyFilename);
bool ReadKeysFromFile(const TCHAR* KeyFilename, FKeyPair& OutKeys);