Guest User

Untitled

a guest
Jan 13th, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.71 KB | None | 0 0
  1. //JAVSCRIPT
  2. function resKey() //Получаем через сервер public key и записываем через сервер в сессию provate key
  3. {
  4.     ajaxPost
  5.         (
  6.             {
  7.                 header: 'pubKey',
  8.                 url: '/blocks/login/js/qwe.php',
  9.             },
  10.              
  11.         resKeySql
  12.         );
  13. }
  14.  
  15. function resKeySql(publicKey) //Генерируем рандомный код и прогоняем через publiсKey, который вернули с сервера
  16. {
  17.     code = codeGenerate(10000, 1000000000);
  18.    
  19.    
  20.     var crypt = new JSEncrypt();
  21.     crypt.setPublicKey(publicKey);
  22.     cryptCode = crypt.encrypt(code);
  23.     console.log("Public key: " + publicKey);
  24.     console.log('CodeGenerate: ' + code);
  25.     console.log('RSA KEY CODE: ' + cryptCode);
  26.    
  27.     ajaxPost
  28.     (
  29.         {
  30.             header: 'encodeSha',
  31.             url: '/blocks/login/js/qwe.php',
  32.             rsa_key: cryptCode
  33.         },
  34.          
  35.     con
  36.     );
  37. }
  38.  
  39. //ENDJAVASCRIPT
  40.  
  41. //PHP
  42.  
  43. function server_generateRSA() //Отдаем publicKey и записываем privateKey
  44.     {
  45.         $config = array(
  46.           "digest_alg" => "sha512",
  47.           "private_key_bits" => 1024,
  48.           "private_key_type" => OPENSSL_KEYTYPE_RSA,
  49.         );
  50.  
  51.         $res = openssl_pkey_new($config);
  52.  
  53.         openssl_pkey_export($res, $privKey);
  54.  
  55.         $pubKey = openssl_pkey_get_details($res);
  56.  
  57.         echo $pubKey['key'];
  58.         $_SESSION['private_key'] = $privKey;
  59.     }
  60.  
  61. function encodeRSA($rsaKey) //Декодируем рандомные цифры из JS
  62.     {
  63.         //$txt = "Hello world!";
  64.        
  65.         $pk  = openssl_get_privatekey($_SESSION['private_key']);
  66.         openssl_private_decrypt(base64_decode($rsaKey), $decrypted, $pk);  
  67.        
  68.         $_SESSION['decrypted_key_user'] = $decrypted;
  69.        
  70.         //$txt = base64_encode(strcode($txt, 'miranda'));
  71.         echo 'Code decrypted: '.$decrypted.'\n';
  72.    
  73.     }
Advertisement
Add Comment
Please, Sign In to add comment