>> I propose replacing P, the password or passphrase, in step 1 with>> the null string. In other words all the memory banging in step 2Yes. This would severely weaken the algorithm.
>> would be determined solely by the salt, S. The password would only
>> affect the algorithm output in step 3, which should be sufficient for security.
>
> i believe this would severely reduce the hw cost, as you can share the
> prepared memory block between multiple cores executing the 3rd step.