FPakSignatureFile

Structure which describes the content of the pak .sig files

Choose your operating system:

Windows

macOS

Linux

References

Module

PakFile

Header

/Engine/Source/Runtime/PakFile/Public/IPlatformFilePak.h

Include

#include "IPlatformFilePak.h"

Syntax

struct FPakSignatureFile

Remarks

Structure which describes the content of the pak .sig files

Variables

Name Description

Public variable

TArray< TPakChu...

 

ChunkHashes

CRCs of each contiguous 64kb block of the pak file.

Public variable

FSHAHash

 

DecryptedHash

SHA1 hash of the chunk CRC data. Only valid after calling DecryptSignatureAndValidate.

Public variable

TArray< uint8 >

 

EncryptedHash

RSA encrypted hash.

Public variable

TArray< uint8 >

 

SignatureData

The actual array of data that was encrypted in the RSA block. Contains the chunk table hash and also other custom data related to the pak file.

Public variable

EVersion

 

Version

Sig file version. Set to Legacy if the sig file is of an old version.

Functions

Name Description

Public function Const

FSHAHash

 

ComputeCurrentMasterHash()

Helper function for computing the SHA1 hash of the current chunk CRC array

Public function

bool

 

DecryptSignatureAndValidate

(
    const FRSAKeyHandle InKey,
    const FString& InFilename
)

Decrypt the chunk CRCs hash and validate that it matches the current one

Public function

void

 

Serialize

(
    FArchive& Ar
)

Serialize/deserialize this object to/from an FArchive

Public function

void

 

SetChunkHashesAndSign

(
    const TArray< TPakChunkHash >& InC...,
    const TArrayView< uint8 >& InSigna...,
    const FRSAKeyHandle InKey
)

Initialize and hash the CRC list then use the provided private key to encrypt the hash

Enums

Name

Description

Public enum

EVersion

Constants

Name

Description

Magic

Magic number that tells us we're dealing with the new format sig files.