diff --git a/Userland/Libraries/LibCrypto/Hash/HashFunction.h b/Userland/Libraries/LibCrypto/Hash/HashFunction.h index 0dab948740..894f30f45f 100644 --- a/Userland/Libraries/LibCrypto/Hash/HashFunction.h +++ b/Userland/Libraries/LibCrypto/Hash/HashFunction.h @@ -7,6 +7,7 @@ #pragma once #include +#include #include #include @@ -58,3 +59,16 @@ protected: virtual ~HashFunction() = default; }; } + +template +struct AK::Formatter> : StandardFormatter { + ErrorOr format(FormatBuilder& builder, Crypto::Hash::Digest const& digest) + { + for (size_t i = 0; i < digest.Size; ++i) { + if (i > 0 && i % 4 == 0) + TRY(builder.put_padding('-', 1)); + TRY(builder.put_u64(digest.data[i], 16, false, false, true, FormatBuilder::Align::Right, 2)); + } + return {}; + } +};