protocol: footprint => fingerprint