add get_passcode function
and crypto_generichash allow None in