all(); // Check secure key if (empty($p['secure_key']) || $p['secure_key'] !== $config['secure_key']) { $valid = false; } // Username $name = $validate->clean($p['username']); if (!$validate->minLength($name, 1)) { $valid = false; } // Email if (empty($p['email'])) { $valid = false; } elseif (!$validate->isEmail($p['email'])) { $valid = false; } // Password if (empty($p['password'])) { $valid = false; } else { // Use pepper + Argon2id $peppered = hash_hmac('sha3-512', $p['password'], $config['secure_key']); $hashed_password = password_hash($peppered, PASSWORD_ARGON2ID); } if ($valid) { // Insert user $query = <<query($query, $params); $userid = $db->lastid(); // Assign admin group $groupInsertQuery = <<query($groupInsertQuery, [$userid, 'admin']); } // Always redirect at end $redirect->url('/novaconium');