Yes, which as @alex noted means we either need to call this PBKDF2HMAC or build it a bit more generically (and just have OpenSSL and CommonCrypto only support passing HMAC objects). I'm favoring the latter at the moment.