Someone help me understand Bitcoin mining a little more clearly: is it proof of work specifically or the SHA256 algorithm that determines the difficulty of blocks are generated too quickly?
Also difficulty will increase over time as machines get more efficient correct?