在PHP中加密MP3文件并在JAVA中解密

时间:2012-03-02 09:27:04

标签: java php encryption

我基本上想要加密服务器上管理员上传的mp3文件(用PHP完成)。当我的应用程序下载文件时,我希望它解密并播放它(要在JAVA中完成)。

我可以使用哪种最佳加密/解密技术以及如何使用它?

谢谢你。

2 个答案:

答案 0 :(得分:0)

PHP中的加密/解密

 $key = "topSecretPassKey"; 
$crypted = encrypte($filecontents,$key);
function GenerationCle($Texte,$CleDEncryptage) 
  { 
  $CleDEncryptage = md5($CleDEncryptage); 
  $Compteur=0; 
  $VariableTemp = ""; 
  for ($Ctr=0;$Ctr<strlen($Texte);$Ctr++) 
    { 
    if ($Compteur==strlen($CleDEncryptage))
      $Compteur=0; 
    $VariableTemp.= substr($Texte,$Ctr,1) ^ substr($CleDEncryptage,$Compteur,1); 
    $Compteur++; 
    } 
  return $VariableTemp; 
  } 

function encrypt($Texte,$Cle) 
  { 
  srand((double)microtime()*1000000); 
  $CleDEncryptage = md5(rand(0,32000) ); 
  $Compteur=0; 
  $VariableTemp = ""; 
  for ($Ctr=0;$Ctr<strlen($Texte);$Ctr++) 
    { 
    if ($Compteur==strlen($CleDEncryptage)) 
      $Compteur=0; 
    $VariableTemp.= substr($CleDEncryptage,$Compteur,1).(substr($Texte,$Ctr,1) ^ substr($CleDEncryptage,$Compteur,1) ); 
    $Compteur++;
    } 
  return base64_encode(GenerationCle($VariableTemp,$Cle) );
  } 

function decrypt($Texte,$Cle) 
  { 
  $Texte = GenerationCle(base64_decode($Texte),$Cle);
  $VariableTemp = ""; 
  for ($Ctr=0;$Ctr<strlen($Texte);$Ctr++) 
    { 
    $md5 = substr($Texte,$Ctr,1); 
    $Ctr++; 
    $VariableTemp.= (substr($Texte,$Ctr,1) ^ $md5); 
    } 
  return $VariableTemp; 
  }

答案 1 :(得分:0)

您应该使用一些可接受的加密技术。你没有提到加密算法的任何要求,所以让我们猜一点。

最简单的方法是使用base64编码 - 它的实现很简单,应该没有问题。

其他方法是使用一些增强的加密工具,如pgp / gpg。您需要适当地设置gpg工具和密钥以加密/解密文件。