diff --git a/BaseTools/Source/Python/Rsa2048Sha256Sign/Rsa2048Sha256Sign.py b/BaseTools/Source/Python/Rsa2048Sha256Sign/Rsa2048Sha256Sign.py index d2bb0c998c..c285a69ec0 100644 --- a/BaseTools/Source/Python/Rsa2048Sha256Sign/Rsa2048Sha256Sign.py +++ b/BaseTools/Source/Python/Rsa2048Sha256Sign/Rsa2048Sha256Sign.py @@ -156,7 +156,7 @@ if __name__ == '__main__': PublicKeyHexString = Process.communicate()[0].split('=')[1].strip() PublicKey = '' while len(PublicKeyHexString) > 0: - PublicKey = PublicKey + chr(int(PublicKeyHexString[0:2], 16)) + PublicKey = PublicKey + PublicKeyHexString[0:2] PublicKeyHexString=PublicKeyHexString[2:] if Process.returncode != 0: sys.exit(Process.returncode) @@ -188,7 +188,7 @@ if __name__ == '__main__': # args.OutputFile = open(args.OutputFileName, 'wb') args.OutputFile.write(EFI_HASH_ALGORITHM_SHA256_GUID.bytes_le) - args.OutputFile.write(PublicKey) + args.OutputFile.write(bytearray.fromhex(str(PublicKey))) args.OutputFile.write(Signature) args.OutputFile.write(args.InputFileBuffer) args.OutputFile.close()