See https://blog.computationalcomplexity.org/2004/06/impagliazzo...