Lines Matching refs:pctx
50 bool Scrypt::DoScrypt(const std::vector<uint8_t> &data, uint32_t algoVersion, EVP_PKEY_CTX *pctx)
58 if (EVP_PKEY_CTX_set1_pbe_pass(pctx, reinterpret_cast<const char *>(data.data()), data.size()) <= 0) {
62 if (EVP_PKEY_CTX_set1_scrypt_salt(pctx, algoParameter_.data(), algoParameter_.size()) <= 0) {
66 if (EVP_PKEY_CTX_set_scrypt_N(pctx, scryptParameters.scryptN) <= 0) {
70 if (EVP_PKEY_CTX_set_scrypt_r(pctx, scryptParameters.scryptR) <= 0) {
74 if (EVP_PKEY_CTX_set_scrypt_p(pctx, scryptParameters.scryptP) <= 0) {
86 EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_SCRYPT, NULL);
87 if (EVP_PKEY_derive_init(pctx) <= 0) {
92 if (!DoScrypt(data, algoVersion, pctx)) {
94 EVP_PKEY_CTX_free(pctx);
99 if (EVP_PKEY_derive(pctx, out.data(), &outlen) <= 0) {
101 EVP_PKEY_CTX_free(pctx);
107 EVP_PKEY_CTX_free(pctx);