/**
  * @return array
  */
 private function signResponseReadyRawData()
 {
     $result = $this;
     $rpc = $this->getRpc();
     $response = $rpc->getResponse();
     $rawData = $response->getReadyData();
     $responseData = $rawData;
     if (!is_array($responseData)) {
         $responseData = array();
     }
     if (!$this->getIsEnabled()) {
         return $result;
     }
     $signSecret = $this->getSignatureRequestSecret();
     $signAlgorithm = $this->getSignatureAlgorithm();
     $signData = array();
     $signKeys = $this->getSignatureSignRequestKeys();
     foreach ($signKeys as $key) {
         $value = null;
         if (array_key_exists($responseData, $key)) {
             $value = $responseData[$key];
         }
         $signData[$key] = $value;
     }
     $signature = RpcUtil::createRequestSignature($signData, $signKeys, $signSecret, $signAlgorithm, time());
     $responseData['signature'] = $signature;
     $response->setReadyData($responseData);
     return $result;
 }