How exactly is this possible, particularly with difficulty re-targeting every block?
Blocks may have timestamp different from real time. This allows keeping low difficulty. Time window is limited but enough for this attack.
Also, it is my understanding that not only would the difficulty of finding a PoW block go up, but the difficulty of finding a PoS would go down in response as well.
No.
Additionally, no matter how fast you can manage to generate a string of PoW blocks there is no way to know with certainty that a PoS block wont be randomly generated within that time and interrupt the string?
Again, one PoS block will not stop attack. Two will.
Additionally, no matter how fast you can manage to generate a string of PoW blocks there is no way to know with certainty that a PoS block wont be randomly generated within that time and interrupt the string?
Again, one PoS block will not stop attack. Two will.
This I don't understand because of my own ignorance, like most of the things I don't understand, how is it possible that you only need to control one PoS block to orphan your PoW chain and carry out this attack but there would need to be two legitimate PoS blocks to stop the attack from occurring?
Blocks may have timestamp different from real time.
So this is attack is dependent upon an unknown? Is there a way to confirm one way or another?
Also, it is my understanding that not only would the difficulty of finding a PoW block go up, but the difficulty of finding a PoS would go down in response as well.
No.
Can you be a little more detailed? I have been told in the past that the two difficulties adjust to one another.