checksum

package
v0.0.0-...-fa4f983 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2024 License: AGPL-3.0 Imports: 2 Imported by: 0

Documentation

Overview

Package checksum provides functions and abstractions to generate data checksums.

Copyright (c) 2018 - 2024 PhotoPrism UG. All rights reserved.

This program is free software: you can redistribute it and/or modify
it under Version 3 of the GNU Affero General Public License (the "AGPL"):
<https://docs.photoprism.app/license/agpl>

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

The AGPL is supplemented by our Trademark and Brand Guidelines,
which describe how our Brand Assets may be used:
<https://www.photoprism.app/trademark>

Feel free to send an email to hello@photoprism.app if you have questions, want to support our work, or just want to say hello.

Additional information can be found in our Developer Guide: <https://docs.photoprism.app/developer-guide/>

Index

Constants

View Source
const (
	CharsetBase36 = "abcdefghijklmnopqrstuvwxyz0123456789"
	CharsetBase62 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
)

Variables

View Source
var Crc32Castagnoli = crc32.MakeTable(crc32.Castagnoli)

Functions

func Base36

func Base36(data []byte) byte

Base36 returns a simple checksum byte based on Crc32 and the 36 lower-case characters specified in CharsetBase36.

func Char

func Char(data []byte) byte

Char returns a simple checksum byte based on Crc32 and the 62 characters specified in CharsetBase62.

func Crc32

func Crc32(data []byte) uint32

Crc32 returns the CRC-32 checksum of data using the crc32.IEEE polynomial.

func Digit

func Digit(data []byte) int

Digit returns a Crc32-based checksum number between 0 and 9.

func Serial

func Serial(data []byte) string

Serial returns the CRC-32 checksum as a hexadecimal encoded string using the Castagnoli polynomial, which has better error detection properties than crc32.IEEE.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL