12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- <?php
- namespace app\api\controller;
- use app\common\controller\Api;
- /**
- * 手机短信接口
- */
- class Test extends Api
- {
- protected $noNeedLogin = '*';
- protected $noNeedRight = '*';
- //解密
- public function index()
- {
- $request_data = input('request_data', 'PtqZJw7sYX3g07g\/451+u7DCgF8R4f6pzrdcwDUxV1pRJ+l7RUIJzB2CBwr9YINQqJeieC\/19\/3D6yzQNHHkthyu+jtUBQz7XMCd+hax2MsASeRKPICtsoVJDzDF9sy+ewRDbl2NC3zPJK026VnsrhpW6BSNO4J1oZIctjrhgONrJUk47yht0Vq+qLysqdcy+sdp5JYmp8C4OFnxT\/jhNIYbaoYQP8UBqKIdMm4q9wxKTor4SHMliBxDX3M1z+oXOxVbb+1rhztaSCHqKUgBe7N69Kl42ZM\/WXqDf72D5sMExZtSbqQG3NNEv2nzIXDa1G9pI76s8rKg9uTH+DG9+A==', 'trim'); //手机号和事件 json串 加密
- if (!$request_data) {
- $this->error('网络延迟1');
- }
- $request_data = base64_decode($request_data);
- $public_key_str = config('api_rsa.public_key');
- $public_key = "-----BEGIN PUBLIC KEY-----" .PHP_EOL.
- wordwrap($public_key_str, 64, PHP_EOL, true) .
- PHP_EOL."-----END PUBLIC KEY-----";
- $data = ''; //手机号和事件 json串 加密
- openssl_public_decrypt($request_data, $data, $public_key); // 使用私钥解密数据
- if (!$data) {
- $this->error('网络延迟2');
- }
- $data = json_decode($data, true);
- if (!$data) {
- $this->error('网络延迟3');
- }
- $this->success(1,$data);
- }
- //加密
- public function jiami(){
- $data = [
- 'id' => 180,
- 'name' => '恐龙扛狼',
- ];
- $json_data = json_encode($data);
- $private_key_str = config('api_rsa.private_key');
- $private_key = "-----BEGIN RSA PRIVATE KEY-----\n".
- wordwrap($private_key_str, 64, "\n", true).
- "\n-----END RSA PRIVATE KEY-----";
- $newdata = '';
- openssl_private_encrypt($json_data,$newdata,$private_key);
- $newdata = base64_encode($newdata);
- $this->success(1,$newdata);
- }
- //盐值与向量
- public function test(){
- $data = [
- 'id' => 180,
- 'name' => '恐龙扛狼',
- ];
- $json_data = json_encode($data);
- $method = 'AES-128-CBC';
- $key = '2911827315869D7F';
- $iv='1234567812345678';
- $request_data = '';
- $passcrypt = openssl_encrypt($json_data,$method,$key,OPENSSL_RAW_DATA,$iv);
- echo $request_data = base64_encode($passcrypt);
- $data = base64_decode($request_data);
- $data = openssl_decrypt($data, $method, $key, OPENSSL_RAW_DATA, $iv);
- $data = json_decode($data, true);
- dump($data);
- }
- }
|