Boas pessoal, estou a fazer um web site ( loja online ) que faça um consumo de um web service, ao qual um dos métodos é o login.
um dos requisitos da password é que esta seja encriptada por uma chave publica ( gerada por um algoritmo RSA ) disponibilizada num ficheiro .pem que aqui tenho. depois a encriptaçao devera ser feita em base 64.
Alguém concorda com o codigo que tenho aqui?
Código :
um dos requisitos da password é que esta seja encriptada por uma chave publica ( gerada por um algoritmo RSA ) disponibilizada num ficheiro .pem que aqui tenho. depois a encriptaçao devera ser feita em base 64.
Alguém concorda com o codigo que tenho aqui?
Código :
<?php
session_start();
$myusername=$_POST['username'];
$mypassword=$_POST['senha'];
$publicKey="
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCiXzbj1VxqE2i2GmKtXKPDPHqv
J2HIQaEPX0lTsbP43cAjr1NBBVwiWk1nZGi82T1oOXWFucO6+hYPEcXRJAPwF5qp
CIe24H5XnX3WXaCbeReJqeJWITExDCg4bH+jgaRu2Wu8Da8mIeQwqYQBnzJVhIJB
Xl4sq6FI6yLiIQjaWwIDAQAB
-----END PUBLIC KEY-----
";
/*
Ler chave ficheiro
$fp=fopen ("C:\Users\Win7\Desktop\Client\publicKey.pem","r");
$publicKey=fread ($fp,8192);
fclose($fp);
*/
openssl_public_encrypt($mypassword, $encrypted, $publicKey);
$client= new SoapClient('http://localhost/SIMencws/PSiMencws.exe/wsdl/IISIMencws');
$params = array(
'Ausername' => $myusername,
'Apassword' =>base64_encode($encrypted));
$response = $client->__soapCall("Login", $params);
?>
session_start();
$myusername=$_POST['username'];
$mypassword=$_POST['senha'];
$publicKey="
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCiXzbj1VxqE2i2GmKtXKPDPHqv
J2HIQaEPX0lTsbP43cAjr1NBBVwiWk1nZGi82T1oOXWFucO6+hYPEcXRJAPwF5qp
CIe24H5XnX3WXaCbeReJqeJWITExDCg4bH+jgaRu2Wu8Da8mIeQwqYQBnzJVhIJB
Xl4sq6FI6yLiIQjaWwIDAQAB
-----END PUBLIC KEY-----
";
/*
Ler chave ficheiro
$fp=fopen ("C:\Users\Win7\Desktop\Client\publicKey.pem","r");
$publicKey=fread ($fp,8192);
fclose($fp);
*/
openssl_public_encrypt($mypassword, $encrypted, $publicKey);
$client= new SoapClient('http://localhost/SIMencws/PSiMencws.exe/wsdl/IISIMencws');
$params = array(
'Ausername' => $myusername,
'Apassword' =>base64_encode($encrypted));
$response = $client->__soapCall("Login", $params);
?>