func md5Checksum(finger string) []byte {
w := md5.New()
io.WriteString(w, finger)
md5_value := w.Sum(nil)
return md5_value
}
func BytesToUint64(bytes []byte) uint64 {
return uint64(binary.BigEndian.Uint64(bytes))
}
func fingerPrintChecksum(query string) string {
finger := fingerPrint(query)
md5_value := md5Checksum(finger)
checksum64 := BytesToUint64(md5_value[8:])
checksum := fmt.Sprintf("%v", checksum64)
return checksum
}