Depois de concluir a decodificação do BaiDuMp3, Base64 mais algumas alterações no Unicode, descobri que o algoritmo Base64 da versão JS e da versão ASP não é ideal para suporte chinês, então usei Php. O servidor é IIS6.0, e também é. possível deixá-lo rodar o PHP.
1. Prepare três arquivos: php.ini, php5ts.dll e php5isapi.dll O php5 é o arquivo da versão do PHP que você possui.
2. Copie php.ini para o diretório do Windows
Se você quiser usar a sessão, configure-a primeiro:
Abra o arquivo, encontre extension_dir = ./ e altere-o para extension_dir = C:/windows/extensions; em seguida, localize session.save_path = /tmp e altere-o para session.save_path = C:/windows/sessions. (Observação: neste momento, você precisa criar uma pasta de sessões no diretório C:/windows para armazenar a sessão.)
3. Copie php5ts.dll e php5isapi.dll para o diretório system32
4. No IIS, adicione a extensão do serviço da Web, selecione o arquivo necessário e copie-o para php5isapi.dll no system32 e marque a caixa para definir o status da extensão como permitido.
5. No site onde você deseja permitir a execução do PHP, defina suas propriedades.
[Diretório inicial] [Configuração] [Extensão de aplicativo]
Clique no botão [Adicionar], selecione o arquivo executável para copiar para php5isapi.dll no system32, a extensão é php, o limite de ação é: GET, HEAD, POST e depois confirme.
Reinicie o IIS.
Agora, o site que você configurou pode executar ASP e PHP. Da mesma forma, você também pode adicionar Asp.Net ou outras extensões de serviço WEB.
Em anexo está o código de codificação e decodificação do cliente BaiDuMp3!
A seguir está o conteúdo citado:
<tipo de script=texto/javascript>
função bdmp3Url(){
isto.I=[];
isto.E=[];
this.init();
}
bdmp3Url.prototype = {
inicialização:função(){
this.getkeys(0,9,48);
this.getkeys(10,35,55);
this.getkeys(36,61,61);
},
getkeys:função(Q,N,O){
para(var P=Q;P<=N;P++){
isto.I[P]=String.fromCharCode(P+O);este.E[P+O]=P;
}
},
código:função(C,D,F){
//Desvio
var K=D%26;K=K?K:1;K=C?K:-K;
var N=F.comprimento,I=isto.I,E=isto.E,R='',Q='';
for(var P=0;P<N;P++){
R=F.charAt(P);
if(/[A-Za-z0-9]/.test(R)){
var S=E[F.charCodeAt(P)]+K;
se(C){
se(S>61){S-=62;}
}outro{
se(S<0){S+=62;}
}
R=I[S];
}
Q+=R;
}
retornar Q;
}
}
var x = novo bdmp3Url();
document.write(x.code(1,1227148832,'http://www.wzms.net/UploadFiles/2007-1/115747297.wma')+'<br/>');
document.write(x.code(0,1227148832,'iuuq://xxx.x0nt.ofu/VqmpbeGjmft/3118-2/2268583A8.xnb'));
</script>