fingerprinter: API for encoding and decoding