From a5947c722db3f4b25646f01c3b91fab022e11a2b Mon Sep 17 00:00:00 2001 From: Joseph Angelo Date: Wed, 4 Sep 2024 21:10:32 -0700 Subject: [PATCH] Spruce up README (#12) --- README.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 292d67b..7562a30 100644 --- a/README.md +++ b/README.md @@ -2,20 +2,25 @@ A dependency free implementation of the Fletcher's checksum algorithm -[![crates.io](https://img.shields.io/crates/v/fletcher.svg)](https://crates.io/crates/fletcher) ![example workflow](https://github.com/jbangelo/fletcher/actions/workflows/build.yml/badge.svg) +[![crates.io](https://img.shields.io/crates/v/fletcher.svg)](https://crates.io/crates/fletcher) +[![docs.rs](https://img.shields.io/docsrs/fletcher)](https://docs.rs/fletcher/latest/fletcher/) +[![Build Status](https://github.com/jbangelo/fletcher/actions/workflows/build.yml/badge.svg)](https://github.com/jbangelo/fletcher) +[![Crates.io License](https://img.shields.io/crates/l/fletcher)](https://github.com/jbangelo/fletcher/blob/main/LICENSE) + + Fletcher's Checksum was developed to provide nearly the same error checking capability as a CRC but with a faster software implementation. This is not a cryptographically secure checksum, it's only meant to be used for checking the integrity of data NOT the authenticity. -## Algorithm Pros +## Algorithm Pros ✅ This algorithm is faster to run in software than most CRCs. This is because the CRC algorithm was originally designed to be simple to implement in hardware, but not neccesarily in software. The Fletcher Checksum was designed specifically to be suited for implementation in software. -## Algorithm Cons +## Algorithm Cons ❌ This checksum algorithm does suffer from not being able to distinguish `0xFF` from `0x00`. Meaning a block of data with all bits set to 1 will have the exact same the same checksum as a block of data with all bits set to 0. This comes