diff --git a/include/libeosio/checksum.hpp b/include/libeosio/checksum.hpp index 3653418..6bedac9 100644 --- a/include/libeosio/checksum.hpp +++ b/include/libeosio/checksum.hpp @@ -57,6 +57,12 @@ inline checksum_t checksum(const unsigned char* data, std::size_t len) { return crc; } +template +inline bool checksum_validate(const unsigned char* data, std::size_t len) { + checksum_t check = F(data, len - CHECKSUM_SIZE); + return !memcmp(check.data(), data + (len - CHECKSUM_SIZE), CHECKSUM_SIZE); +} + /** * Checksum implementations. */