---
name: "SWISS::CRC64"
section: "3pm"
platform: "linux"
package: "libswiss-perl"
version: "1.80-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SWISS::CRC64"
---

# SWISS::CRC64(3pm)

## CRC64 perl module documentation

### NAME

CRC64 - Calculate the cyclic redundancy check.

### SYNOPSIS

```
   use SWISS::CRC64;

   $crc = SWISS::CRC64::crc64("IHATEMATH");
   #returns the string "E3DCADD69B01ADD1"
   ($crc_low, $crc_high) = SWISS::CRC64::crc64("IHATEMATH");
   #returns two 32-bit unsigned integers, 3822890454 and 2600578513
```

### DESCRIPTION

SWISS-PROT + TREMBL use a 64-bit Cyclic Redundancy Check for the amino acid sequences.

The algorithm to compute the CRC is described in the ISO 3309 standard.  The generator polynomial is x64 + x4 + x3 + x + 1. Reference: W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery, "Numerical recipes in C", 2nd ed., Cambridge University  Press. Pages 896ff.

### Functions

- crc64 string

  Calculate the CRC64 (cyclic redundancy checksum) for **string**.

  In array context, returns two integers equal to the higher and lower 32 bits of the CRC64. In scalar context, returns a 16-character string containing the CRC64 in hexadecimal format.

## AUTHOR

Alexandre Gattiker, gattiker@isb-sib.ch

## ACKNOWLEDGEMENTS

Based on SPcrc, a C implementation by Christian Iseli, available at  ftp://ftp.ebi.ac.uk/pub/software/swissprot/Swissknife/old/SPcrc.tar.gz
