Advertisement
Guest User

PHP Example

a guest
Sep 16th, 2016
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.61 KB | None | 0 0
  1. <?php
  2.  
  3. function encrypt( $plain )
  4. {
  5.   $array_mul = array ( 0 => 213119, 1 => 213247, 2 => 213203, 3 => 213821 );
  6.   $array_add = array ( 0 => 2529077, 1 => 2529089, 2 => 2529589, 3 => 2529997 );
  7.   $dst = $key = array ( 0 => 0, 1 => 0, 2 => 0, 3 => 0, 4 => 0, 5 => 0, 6 => 0, 7 => 0, 8 => 0, 9 => 0, 10 => 0, 11 => 0, 12 => 0, 13 => 0, 14 => 0, 15 => 0 );
  8.  
  9.   for ( $i = 0; $i < strlen ( $plain ); $i++ ) {
  10.     $dst [ $i ] = $key [ $i ] = ord ( substr ( $plain, $i, 1 ) );
  11.   }
  12.  
  13.   for ( $i = 0; $i <= 3; $i++ ) {
  14.     $val [ $i ] = fmod ( ( $key [ $i * 4 + 0 ] + $key [ $i * 4 + 1 ] * 0x100 + $key [ $i * 4 + 2 ] * 0x10000 + $key [ $i * 4 + 3 ] * 0x1000000 ) * $array_mul [ $i ] + $array_add [ $i ], 4294967296 );
  15.   }
  16.  
  17.   for ( $i = 0; $i <= 3; $i++ ) {
  18.     $key [ $i * 4 + 0 ] = $val [ $i ] & 0xff;
  19.     $key [ $i * 4 + 1 ] = $val [ $i ] / 0x100 & 0xff;
  20.     $key [ $i * 4 + 2 ] = $val [ $i ] / 0x10000 & 0xff;
  21.     $key [ $i * 4 + 3 ] = $val [ $i ] / 0x1000000 & 0xff;
  22.   }
  23.  
  24.   $dst [ 0 ] = $dst [ 0 ] ^ $key [ 0 ];
  25.   for ( $i = 1; $i <= 15; $i++ ) {
  26.     $dst [ $i ] = $dst [ $i ] ^ $dst [ $i - 1 ] ^ $key [ $i ];
  27.   }
  28.  
  29.   for ( $i = 0; $i <= 15; $i++ ) {
  30.     if ( $dst [ $i ] == 0 ) {
  31.       $dst [ $i ] = 0x66;
  32.     }
  33.   }
  34.  
  35.   $encrypted = "0x";
  36.   for ( $i = 0; $i <= 15; $i++ ) {
  37.     if ( $dst [ $i ] < 16 ) {
  38.       $encrypted .= "0";
  39.     }
  40.     $encrypted .= /*strtoupper (*/ dechex ( $dst [ $i ] ) /*)*/;
  41.   }
  42.   return ( $encrypted );
  43. }
  44.  
  45. $dbName = 'lin2db';
  46. $dbAddress = '(local)\SQLEXPRESS';
  47. $dbUser = 'sa';
  48. $dbPassword = '123456';
  49.  
  50. $loginName = 'root3';
  51. $loginPassword = 'root';
  52. $encLoginPassword = encrypt($loginPassword);
  53. $serverName = "serverName\sqlexpress"; //serverName\instanceName
  54. $connectionInfo = array( "Database"=>"$dbName", "UID"=>"$dbUser", "PWD"=>"$dbPassword");
  55. $conn = sqlsrv_connect( $dbAddress, $connectionInfo);
  56.  
  57. if( $conn )
  58. {
  59.     echo "Connection established.<br />";
  60.     $sql = "SELECT account, password FROM user_auth WHERE account='$loginName'";
  61.     $stmt = sqlsrv_query( $conn, $sql );
  62.     if( $stmt === false) {
  63.             die( print_r( sqlsrv_errors(), true) );
  64.     }
  65.  
  66.     if( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) )
  67.     {
  68.         $pwd = '0x' . bin2hex($row['password']);
  69.         echo "Data from db: ".$row['account'].", ".$pwd."<br />";
  70.         echo "Encrypted pwd: $encLoginPassword  ($loginPassword)<br />";
  71.         if($pwd == $encLoginPassword)
  72.         {
  73.             echo "Passwords match! OK!<br />";
  74.         }else
  75.         {
  76.             echo "Passwords doesn't match!<br />";
  77.         }
  78.     }
  79.     sqlsrv_free_stmt( $stmt);
  80.     sqlsrv_close( $conn );
  81. }else
  82. {
  83.     echo "Connection could not be established.<br />";
  84.     die( print_r( sqlsrv_errors(), true));
  85. }
  86.  
  87. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement