Algorithm to transform plaintext to a key of desired keysize, when using input plaintext as key for FPE?
I'm using it as a one way encryption on plaintext values such as SSN, names, dates, etc.


I suggest rethinking your approach.  None of these values have much entropy, so it would be straightforward to bruteforce the original plaintexts (just like cracking a password hashed with a fast hash function).

If you're planning to use these values for authentication, that doesn't sound like a great idea... but I know that, in some applications, it's the best you can do.  A few suggestions:


Use a password hash instead of fancy encryption.  Since there's likely not much entropy in the secret values, a password hash would be helpful in slowing down brute force attacks.
Combine the values before hashing.  This will at least force attackers to crack them as a group, not one-at-a-time.  Be sure to combine the values such that they are delimited unambiguously.


If you must process the fields separately (in order to perform comparisons between accounts, for example), I still think a password hash is better suited to this purpose -- just use a fixed salt to make the hashing deterministic.  Don't expect too much security here though; thoroughly hashed dates can still be cracked quite easily.