added passcode derivation