package util // SaltXOR xors bits of data with salt // repeating salt if necessary. func SaltXOR(data, salt []byte) (result []byte) { result = make([]byte, len(data)) ls := len(salt) if ls == 0 { copy(result, data) return } for i := range result { result[i] = data[i] ^ salt[i%ls] } return }