Конечно, килобайт должен быть равен 1000 байт.
Но в информатике удобнее оперировать степенями двойки и 2^10 = 1024 оказалось максимально близким к обычному значению приставки КИЛО. Так и пошло.
Современные стандарты предполагают использовать слово "КИБИБАЙТ" для обозначения 1024 байта и слово "КИЛОБАЙТ" в нормальном СИ-значении 1000 байт, но похоже это приживается с очень большим трудом. В других ответах есть отличные ссылки на эту тему.
Получается, что слово кибибайт на сегодня более точное, так как у него только одно значение (1024 байта), а у слова килобайт есть два значения (1024 байта или 1000 байт).