Question of mine: how can you do this in C? Not sure about C++, but in C the longest integer value can be minimum 64 bits (
long long). In most systems, it's 64 bits, but I'm quite sure in no system it exceeds 256 bits, which are required for SHA-256. (Also,
this)
Is there a known library that lets you do some sort of "tricks" with the processor?
You don't need any additional libraries.
You just define the data structure as array of bytes (byte[]), with known length and operate on it as it is.
Eventually you can make sth called union, where you define set of bytes or other type data and put it in one structure, where the data is one after another in memory.