私はmp3ファイルを読み込んで暗号化するスクリプトを持っています。このファイルを復号化してbase64に変換してhtml5で再生できるようにします。mcryptでバイナリmp3を暗号化/復号化するmimetypeがありません
キー1がページに保存され、静的、KEY2は、私が使用したテストのために、各ファイルに対して一意になります。ここでは
$key1 = md5(time());
$key2 = md5($key1.time());
は、私のエンコードのPHPコードである:ここで
//Get file content
$file = file_get_contents('test.mp3');
//Encrypt file
$Encrypt = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key1, $file, MCRYPT_MODE_CBC, $key2);
$Encrypt = trim(base64_encode($Encrypt));
//Create new file
$fileE = "test.mp3e"; $fileE = fopen($file64, 'w') or die("can't open file");
//Put crypted content
fwrite($fileE, $Encrypt);
//Close file
fclose($fileE);
デコードされたファイルは同じサイズですが、MIMEタイプはありません。
//Get file content
$fileE = file_get_contents('test.mp3e');
//Decode
$fileDecoded = base64_decode($fileE);
//Decrypt file
$Decrypt = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key1, $fileDecoded, MCRYPT_MODE_CBC, $key2);
$Decrypt = trim($Decrypt);
//Create new file
$file = "test.mp3"; $file = fopen($file, 'w') or die("can't open file");
//Put crypted content
fwrite($file, $Decrypt);
//Close file
fclose($file);
「MIMEタイプなし」とはどういう意味ですか?復号化されたファイルは元のファイルと同じですか(同じハッシュが生成されますか?どのように "MIMEタイプなし"と判断しましたか? – deceze
なぜあなたはそれらを暗号化していますか? –
変数$ file64の値は何ですか? –