userRDFWriter = new UserRDFWriter(); $this->userRDFReader = new UserRDFReader(); } public function addNewUser($userInfo) { $userName = $userInfo['username']; $userPassword = $this->RIJNDAEL_encrypt($userInfo['password']); if(!$this->checkUserName($userName)) { $this->userRDFWriter->addNewUser($userName, $userPassword); $this->userRDFWriter->saveUsers(); } } public function checkUserName($userName) { $result = false; $resultUser = $this->userRDFReader->getUserNames(); if ($resultUser != null) { foreach($resultUser as $user) { $name = $user['?name']->label; if(!strcmp($name ,$userName)) { $result = true; } } } return $result; } public function checkUserPassword($userInfo) { $result = false; $userName = $userInfo['username']; $userPassword = $userInfo['password']; $encryptedPasswordLiteral = $this->userRDFReader->getUserPassword($userName); $encryptedPassword = $encryptedPasswordLiteral[0]['?password']->label; if(!strcmp($this->RIJNDAEL_encrypt($userPassword),$encryptedPassword)) $result = true; return $result; } protected function RIJNDAEL_encrypt($text) { $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB); $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); return base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $this->key, $text, MCRYPT_MODE_ECB, $iv)); } } ?>