It comes from the Malay word 'kechap' meaning 'to smack the lips.' The Malay word ultimately comes from Chinese dialect 'koechiap' or 'ke-tsiap' which is pickled-fish brine.
Both are partially right according to online Webster's:
[Probably Malay kicap, fish sauce, possibly from Chinese (Cantonese) k-chap, equivalent to Chinese (Mandarin) qi�, eggplant + Chinese (Mandarin) zh, sap, gravy.]