The 32 year old defender joins up with former manager Neil Warnock in an 18 month deal with the Bluebirds.
Halford was out of contract in the summer and presumably the Millers have decided to cash in with a nominal amount.
Halford made 15 appearances for the Millers this season, scoring 1 goal.