post(); $config = sConf("dy."); $sessionKey = (new Crypt)->config(['appid' => $config['appid'],'secret' => $config['secret']])->getSessionKey($param['code']); if (empty($sessionKey)) return error("授权登录失败"); if (!isset($sessionKey['openid'])) return error("获取数据失败"); $openId = $sessionKey['openid']; $userIn = [ 'openid' => $openId, "create_ip" => $request->getRealIp(), "nickname" => "用户_".strtoupper(CodeExtend::random(3,5)), "avatar" => "https://img.inmei.cc/logo.png" ]; print_r($sessionKey); print_r($userIn); return error("err"); } catch (\Throwable $throwable) { return error($throwable->getMessage()); } } protected function decrypt2code($private_key, $ciphertext_str) { // 解码 base64 密文 $ciphertext = base64_decode($ciphertext_str); // 使用私钥解密 openssl_private_decrypt($ciphertext, $plaintext, $private_key, OPENSSL_PKCS1_PADDING); if ($plaintext === false) { return []; } return json_decode($plaintext,true); } protected function decrypt($encrypted_data, $session_key, $iv) { $data = base64_decode($encrypted_data); $key = base64_decode($session_key); $iv_decoded = base64_decode($iv); // 使用 AES-256-CBC 模式解密 $decrypted = openssl_decrypt($data, 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv_decoded); return $decrypted; } }