diff --git a/scripts/update_payload/applier.py b/scripts/update_payload/applier.py
index 3b7b1a6..cd9fd06 100644
--- a/scripts/update_payload/applier.py
+++ b/scripts/update_payload/applier.py
@@ -62,8 +62,8 @@
   actual_hash = hasher.digest()
   if actual_hash != expected_hash:
     raise PayloadError('%s hash (%s) not as expected (%s)' %
-                       (name, actual_hash.encode('hex'),
-                        expected_hash.encode('hex')))
+                       (name, common.FormatSha256(actual_hash),
+                        common.FormatSha256(expected_hash)))
 
 
 def _ReadExtents(file_obj, extents, block_size, max_length=-1):
diff --git a/scripts/update_payload/checker.py b/scripts/update_payload/checker.py
index e1b08a1..13a0518 100644
--- a/scripts/update_payload/checker.py
+++ b/scripts/update_payload/checker.py
@@ -437,8 +437,8 @@
     signed_hash = signed_data[len(common.SIG_ASN1_HEADER):]
     if signed_hash != actual_hash:
       raise PayloadError('%s: signed hash (%s) different from actual (%s)' %
-                         (sig_name, signed_hash.encode('hex'),
-                          actual_hash.encode('hex')))
+                         (sig_name, common.FormatSha256(signed_hash),
+                          common.FormatSha256(actual_hash)))
 
   @staticmethod
   def _CheckBlocksFitLength(length, num_blocks, block_size, length_name,
@@ -837,8 +837,8 @@
       if op.data_sha256_hash != actual_hash.digest():
         raise PayloadError(
             '%s: data_sha256_hash (%s) does not match actual hash (%s)' %
-            (op_name, op.data_sha256_hash.encode('hex'),
-             actual_hash.hexdigest()))
+            (op_name, common.FormatSha256(op.data_sha256_hash),
+             common.FormatSha256(actual_hash.digest())))
     elif data_offset is not None:
       if allow_signature_in_extents:
         blob_hash_counts['signature'] += 1
