Expanding Key Material Is there a way to take key material (for example 256 random bits for an AES key) and "expand" it over to a larger amount of data? Or can I go the opposite way and take a large amount of random data and Xor it down to 256 bits and use that (this looks like secret-sharing, but I do not know if anything changes because the "participants" would all be in the same place)?

I want to store a key, but I don't want it to be just 256 bits since it makes it hard to destroy it on certain types of media. The "key" should be a very large file such that if any portion of it on the media is damaged, the entire key is unable to be retrieved.

Just to be clear, I do not want to have "extra bits" of security. I just want to be able to have 256 bits (or whatever the algorithm is using) of security over a larger amount of storage to make key recovery on the physical storage media harder.
Yes, you could use the HKDF-expand function to expand the bits of the key to a certain size and then use HKDF-extract to derive a key from it again. Note that the resulting key is not identical to the key you've started with. You can use the HKDF-expand again to derive one or more multiple keys with any size from the extracted key material.

HKDF internally uses a hash function (it's a Hash based Key Derivation Function). So it should be fine as long you use SHA-256 or above for 256 bit of input material. The entropy in the output material should be (close to) 256 bits.

Just like a normal hash, you would need all the input data to calculate the correct output, so if only part of the enlarged key gets known you might be still secure, as long as the amount of unknown material is large enough (so brute force attacks are unlikely to succeed).

You can leave the other arguments to HKDF-extract / expand empty if you don't know what to do with them. Using an empty salt seems fine for this kind of purpose.