Autor Tópico: A ressuscitação do firmware pela porta serial e a perda do HDMI...  (Lida 59534 vezes)

0 Membros e 1 Visitante estão vendo este tópico.

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Sem querer soar alarmista, aqueles usuários com player com chipset Mediatek MT1389 e saída HDMI devem ter cuidados extras ao atualizar o firmware. O motivo é que se a atualização falhar, perde-se a HDCP key impossibilitando o uso da saída HDMI.

O problema já foi reportado no VideoHelp (aqui), no fórum do vb6rocod (aqui) e varias vezes no fórum do DVP5100 (aqui, aqui, aqui, por exemplo)

O cenário é mais o menos o seguinte: O usuário está atualizando o firmware e alguma coisa errada acontece. O player deixa de funcionar e a única saída e a ressuscitação do player via porta serial. O usuário faz a ressuscitação e descobre que a saída HDMI deixou de funcionar (não é possível selecionar a opção HDMI no menu). O motivo é que quando é feita a ressuscitação via porta serial, a HDCP key é apagada. Sem a key o player desabilita a opção do HDMI. Os firmwares oficiais da Philips e os firmwares modificados basados no firmware original do website da Philips (vb6rocod, por exemplo), não incluem a HDCP key.

A única solução para recuperar o HDMI é carregar um firmware extraído vía porta serial de um player que esteja com o HDMI funcionando corretamente.

Por tanto quem tiver um player Mediatek com HDMI e puder extrair o firmware completo via cabo serial estaria fazendo uma ajuda muito grande a comunidade. Acho que o Jefferson não teria reparos em que os firmware sejam anexados a este tópico. Caso contrario podem usar um serviço como o Rapidshare. No fórum do DVP5100 já logramos coletar firmwares backups completos para o 3962 e o 5990 europeu. Amanha eu posto eles aqui ou em algum outro servidor.

Saudações!
Juan M.

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #1 Online: Setembro 25, 2009, 10:00:22 pm »
Então foi isso que aconteceu ao meu DV397H. Após uma atualização por cabo, a HDMI nunca mais funcionou.

jmaraujo, a lógica é a seguinte?
A HDCP key fica em uma região da EEPROM fora da área ocupada pelo firmware (assim como as opções selecionáveis pelo usuário). A atualização do firmware via CD não apaga a EEPROM inteira, apenas sobrepõe o código. Já a atualização pela porta serial inicialmente apaga a EEPROM inteira, zerando a HDCP key. Com a extração do firmware de um player com a HDMI funcional teremos a cópia inteira da EEPROM e quem sabe poderemos localizar a HDCP key, por comparação. Assim, será possível incluí-la no firmware, anexando a região ao código.

Porém, o zeurt havia falado que alguns players possuem sequências que, se digitadas corretamente no controle, permitem habilitar ou desabilitar a HDMI. Essa é outra solução, não? Pois deve haver esse recurso para a assitência técnica poder "consertar" um player com firmware corrompido.
« Última modificação: Setembro 25, 2009, 10:04:08 pm por rictad »

FORUM.RYAN.COM.BR

Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #1 Online: Setembro 25, 2009, 10:00:22 pm »

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #2 Online: Setembro 25, 2009, 10:31:08 pm »
É, eu cheguei a mesma conclusão.  :)

Um usuário do OpenMTK disse que é possível adicionar o bloque HDCP ao firmware, então eu enviei uma MP para ele, pra ver se ele explica pra gente como é que se faz o procedimento...

Outra opção seria olhar no código fonte...

Saudações!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #3 Online: Setembro 26, 2009, 12:43:47 am »
O motivo é que quando é feita a ressuscitação via porta serial, a HDCP key é apagada. Sem a key o player desabilita a opção do HDMI. Os firmwares oficiais da Philips e os firmwares modificados basados no firmware original do website da Philips (vb6rocod, por exemplo), não incluem a HDCP key.

Eu lembro vagamente de ter alertado para essa possibilidade há muito tempo. Possivelmente foi quando estávamos fazendo modificações no firmware do Proview DVP-858 (quando eu encontrar onde foi, posto aqui). Mas como ninguém relatou perda da HDMI na época, acabei esquecendo completamente dessa possibilidade.

Por tanto quem tiver um player Mediatek com HDMI e puder extrair o firmware completo via cabo serial estaria fazendo uma ajuda muito grande a comunidade. Acho que o Jefferson não teria reparos em que os firmware sejam anexados a este tópico.

Não, eu não vejo problema algum.
« Última modificação: Setembro 26, 2009, 01:05:59 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #4 Online: Setembro 26, 2009, 01:05:17 am »
jmaraujo, a lógica é a seguinte?
A HDCP key fica em uma região da EEPROM fora da área ocupada pelo firmware (assim como as opções selecionáveis pelo usuário). A atualização do firmware via CD não apaga a EEPROM inteira, apenas sobrepõe o código. Já a atualização pela porta serial inicialmente apaga a EEPROM inteira, zerando a HDCP key. Com a extração do firmware de um player com a HDMI funcional teremos a cópia inteira da EEPROM e quem sabe poderemos localizar a HDCP key, por comparação. Assim, será possível incluí-la no firmware, anexando a região ao código.

Vocês parecem estar fazendo confusão entre a EEPROM e a FLASH EEPROM (que chamamos habitualmente apenas de FLASH).

A EEPROM é um componente de 8 pinos, geralmente de uns 2KB, onde ficam armazenadas todas as opções do usuário e (no caso dos Philips) a identificação do sub-modelo, entre outras informações. A EEPROM, até onde sei, NUNCA é apagada, qualquer que seja o modo de instalação do firmware. Existem, entretanto, firmwares que inicializam (pré-configuram) determinadas regiões da EEPROM imediatamente antes ou imediatamente depois de um upgrade por CD, mas nunca (até onde vai meu entendimento atual do processo) no upgrade por cabo.

A FLASH EEPROM é o componente geralmente de 48 pinos e 1MB ou mais de capacidade onde é armazenado o firmware. Opções de usuário não podem ser armazenadas na FLASH (não há como lê-las sob demanda), mas uma HDCP KEY pode, porque só é lida uma vez, ao ligar o aparelho.

Tanto a atualização pela porta serial quanto a atualização por CD apagam a FLASH inteira antes de fazer a gravação. Simplesmente não é possível sobrepor dados em uma FLASH do tipo usado em DVD players (embora em pendrives seja).

É tecnicamente possível que a flash possa ser apagada por setores e que um dos processo de gravação preserve um desses setores, mas eu preciso ler os datasheets das FLASH usadas nesses aparelhos antes de dizer se isso é possível.

Quanto ao lugar onde fica armazenada a HDCP KEY, eu me lembro de ter dito, há muito tempo, que desconfiava que fosse aquele monte de bytes estranhamente localizado após o checksum (que deveria ser o último conjunto de bytes no arquivo) no DVP-858. E deixei clara a minha preocupação porque uma ou mais ferramentas usadas regularmente por nós para editar os firmwares considera que o arquivo acaba no checksum, salvando o firmware sem esses bytes.

Eu preciso encontrar onde foi que eu falei isso.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #5 Online: Setembro 26, 2009, 01:17:26 am »
Um dos lugares onde falei sobre minha suspeita foi este (07/07/2007):

http://www.htforum.com/vb/archive/index.php/t-47704-p-11.html
Citar
Citar
Alguem saberia dizer porque o firmware disponibilizado pela proview possui aproximadamente 2Mb e a versao 2.0 Eneris, aproximadamente 1.4Mb ?

Isso é relativamente "normal".

O tamanho da memória flash no Proview é 2MB. Quando se faz uma leitura do firmware via cabo, o programa lê até o último byte, mesmo que tenha um monte de nada lá. Isso é o que chamamos de "versão serial".

Já na "versão CD" essa parte desnecessária é eliminada e o arquivo fica apenas do tamanho do código. O mtkRemaker automaticamente salva em versão CD.

Porém no caso do proview existe um pequeno detalhe: Existe um bloco de informação extra depois do código "normal" que é eliminado também quando gravamos uma "versão CD". Esse bloco supostamente tem as chaves HDCP do aparelho.

Eu digo "supostamente" porque eneris já lançou mais de uma vez em "versão CD" e ninguém que usou fez nenhum comentário sobre problemas com HDCP.

Alguns programas que nós usamos não sabem lidar com esse bloco e o descartam. O MtkRemaker 0.2 final, por exemplo, descarta o bloco, mas a versão mais recente o preserva.

São tantos programas e versões que acontece de a gente se perder no meio do processo e usar algum que descarta o bloco acidentalmente.

http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #6 Online: Setembro 26, 2009, 02:18:50 am »
Acabo de fazer uma checagem que me lembrou de por que eu não havia levado essa minha teoria adiante.

Os dois firmwares originais existentes para o DVP-858 tem dois estranhos blocos de dados muito depois do suposto fim do firmware (o checksum).

Porém nenhum dos firmwares Philips para DVP5980 tem esses blocos. Isso inclui o firmware extraído por Rafalibrenz de seu aparelho quando este ainda era "virgem".

Se, considerando um DVP5980 que tenha perdido a HDMI, colocar o BIOS firmware de Rafa não resolver o problema...


Edit: "BIOS"!? Eu escrevi mesmo "BIOS"!?
« Última modificação: Setembro 26, 2009, 03:01:31 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #7 Online: Setembro 26, 2009, 02:41:00 am »
Vocês parecem estar fazendo confusão entre a EEPROM e a FLASH EEPROM (que chamamos habitualmente apenas de FLASH).

É, a confusão foi minha. De fato, as opções do usuário não ficam na FLASH. :dashhead1:
Mas o restante pode ser daquele jeito mesmo: a HDCP Key fica no espaço que sobra na FLASH, após código do firmware.

Porém nenhum dos firmwares Philips para DVP5980 tem esses blocos. Isso inclui o firmware extraído por Rafalibrenz de seu aparelho quando este ainda era "virgem".

Se, considerando um DVP5980 que tenha perdido a HDMI, colocar o BIOS de Rafa não resolver o problema...
Aí teríamos que ver se o DVP5980 não é um caso diferente. Pode-se tentar um teste ao contrário: alguém atualizar o DVP5980 por cabo com o firmware original e com o arquivo apenas no tamanho exato do firmware para ver se a HDMI continua funcionando.
« Última modificação: Setembro 26, 2009, 02:44:01 am por rictad »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #8 Online: Setembro 26, 2009, 02:50:42 am »
Aí teríamos que ver se o DVP5980 não é um caso diferente.

Eu estava justamente verificando isso.

Eu tenho três modelos comigo com HDMI

Proview DVP-858
Philips DVP5960
Philips DVP5980

Os dois primeiros tem um chip EEPROM extra (dois no total), supostamente dedicado ao chip HDMI.
O DVP5980 tem apenas um chip EEPROM. E é o mesmo (24C08 - 1KB) do DVP5100, que não tem HDMI.
« Última modificação: Setembro 26, 2009, 03:05:21 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #9 Online: Setembro 26, 2009, 02:52:23 am »
Pode-se tentar um teste ao contrário: alguém atualizar o DVP5980 por cabo com o firmware original e com o arquivo apenas no tamanho exato do firmware para ver se a HDMI continua funcionando.

Eu faria esse teste ainda hoje. Mas eu não tenho nenhuma TV com HDMI, por isso sequer posso dizer se o HDMI de meus aparelhos funciona.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #10 Online: Setembro 26, 2009, 03:06:00 am »
Eu tenho três modelos comigo com HDMI

Proview DVP-858
Philips DVP5960
Philips DVP5980

Os dois primeiros tem um chip EEPROM extra (dois no total), supostamente dedicado ao chip HDMI.
O DVP5980 tem apenas um chip EEPROM. E é o mesmo do DVP5100, que não tem HDMI.


Eu iria sugerir isso, que o DVP5980 poderia ter uma ROM a mais (com as informações HDMI) e que isso (perder a HDMI) talvez não ocorresse com ele. Mas você mostrou que ele só tem 1 chip EEPROM. Isso não pode ficar em outro tipo de chip ROM, mais difícil de identificar? Os 5 links que o jmaraujo enviou são de casos de perda da HDMI no DVP5990.

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #11 Online: Setembro 26, 2009, 03:13:01 am »
Acabei de dar uma olhada no firmware extraído pela Rafa. Ele tem um pequeno grupo extra de bytes, após o checksum. São 5 bytes de bloco extra:

Código: [Selecionar]
FE 00 00 00 01
Isso poderia ser algo importante?

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #12 Online: Setembro 26, 2009, 03:25:10 am »

Eu iria sugerir isso, que o DVP5980 poderia ter uma ROM a mais (com as informações HDMI) e que isso (perder a HDMI) talvez não ocorresse com ele. Mas você mostrou que ele só tem 1 chip EEPROM. Isso não pode ficar em outro tipo de chip ROM, mais difícil de identificar?

Não. Todos os demais chips do DVP5980 tem propósitos já determinados.
 
Os 5 links que o jmaraujo enviou são de casos de perda da HDMI no DVP5990.

Alguém sabe onde encontrar fotos de alta resolução da placa do DVP5990?
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #13 Online: Setembro 26, 2009, 03:26:19 am »
Acabei de dar uma olhada no firmware extraído pela Rafa. Ele tem um pequeno grupo extra de bytes, após o checksum. São 5 bytes de bloco extra:

Código: [Selecionar]
FE 00 00 00 01
Isso poderia ser algo importante?

Eu vi isso, mas não achei relevante. Pode até ser que queira dizer algo mas no momento eu acho que não.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #14 Online: Setembro 26, 2009, 03:29:37 am »
O extranho é que em todos os casos relatados o problema aconteceu com DVP5990's. Coincidência?

Rictad, se quiser comparar dois arquivos, quem sabe seja melhor pegar o firmware serial do DVP5990 postado no fórum do DVP5100 e compara-lo com o equivalente do site da Philips.

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #15 Online: Setembro 26, 2009, 03:33:10 am »
O extranho é que em todos os casos relatados o problema aconteceu com DVP5990's. Coincidência?

Rictad tem um LG DV397H. Se não tivesse também acontecido com ele eu já estaria afirmando que provavelmente é um defeito da Philips.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #16 Online: Setembro 26, 2009, 03:39:41 am »
Citação de: Jefferson
Rictad tem um LG DV397H. Se não tivesse também acontecido com ele eu já estaria afirmando que provavelmente é um defeito da Philips.
Certo. Não lembrava do caso do LG dele...  :-[

O extranho é que em todos os casos relatados o problema aconteceu com DVP5990's. Coincidência?

Rictad, se quiser comparar dois arquivos, quem sabe seja melhor pegar o firmware serial do DVP5990 postado no fórum do DVP5100 e compara-lo com o equivalente do site da Philips.
No anexo está o backup serial firmware do DVP5990/37 americano (anteriormente eu disse europeu). Este é o link para o firmware original no site da Philips: http://www.p4c.philips.com/files/d/dvp5990_37/dvp5990_37_fus_aen.zip

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #17 Online: Setembro 26, 2009, 03:42:44 am »
O LG do rictad tem MT1389S, certo? O mesmo que o DVP5990... Vou ver se tenho o datasheet do MT1389S.

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #18 Online: Setembro 26, 2009, 03:43:22 am »
Eu andei lendo que a HDCP key é na verdade um conjunto de 40 chaves com 56 bits cada. Portanto, ocupa no mínimo 280 bytes. Talvez vocês já soubessem disso, mas de qualquer modo...

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #19 Online: Setembro 26, 2009, 03:50:56 am »
Eu andei lendo que a HDCP key é na verdade um conjunto de 40 chaves com 56 bits cada. Portanto, ocupa no mínimo 280 bytes. Talvez vocês já soubessem disso, mas de qualquer modo...
Eu ainda não.  ;D

O LG do rictad tem MT1389S, certo? O mesmo que o DVP5990... Vou ver se tenho o datasheet do MT1389S.
Hum.... aí, talvez seja esse danado. Eu acho que ele foi o responsável por eu quase não conseguir sequer ressuscitar meu player via cabo. Tive que fazer um "vodu".

Rictad tem um LG DV397H. Se não tivesse também acontecido com ele eu já estaria afirmando que provavelmente é um defeito da Philips.
Meu maior erro foi não ter extraído os dados da minha FLASH com o firmware corrompido antes de atualizar via serial.

No anexo está o backup serial firmware do DVP5990/37 americano (anteriormente eu disse europeu). Este é o link para o firmware original no site da Philips: http://www.p4c.philips.com/files/d/dvp5990_37/dvp5990_37_fus_aen.zip
Obrigado! Vou comparar com mais calma.

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #20 Online: Setembro 26, 2009, 04:01:22 am »
Eu andei lendo que a HDCP key é na verdade um conjunto de 40 chaves com 56 bits cada. Portanto, ocupa no mínimo 280 bytes. Talvez vocês já soubessem disso, mas de qualquer modo...

E no final talvez estejamos no caminho completamente errado e isso seja irrelevante.

Faz muito tempo (anos) que analisei esse problema pela última vez e minhas conclusões estão "balançando" da mesma forma que balançaram antes.

Eu não estou bem certo de que o problema tenha algo a ver com "HDCP Key". Com HDCP talvez, mas não com o que se chama de "HDCP Key".

Pelo que eu entendi, a "HDCP Key" é um segredo muito bem guardado, que não poderia estar no firmware e nem mesmo em um chip que pudesse ser lido, como as memórias EEPROM. Eu acredito que cada chip diretamente envolvido no processo HDMI tenha a "HDCP Key" gravada físicamente no chip durante o processo de gravação fabricação. No caso do DVP5980 esse "chip" é o da Silicon Image. Eu não creio que o MT1389 sequer precise saber o que é HDCP.

Claro, ainda pode ser que exista um outro conjunto de bytes que o firmware precisa conhecer para falar com o chip da Silicon Image.
« Última modificação: Setembro 26, 2009, 04:20:15 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #21 Online: Setembro 26, 2009, 04:18:49 am »
Segundo o arquivo na Wikipedia:
http://en.wikipedia.org/wiki/High-bandwidth_Digital_Content_Protection

Na melhor das hipóteses, se o problema realmente for HDCP, nós estamos procurando por uma KSV, que tem apenas 40 bits (5 bytes). Isso pode estar em qualquer lugar. Poderia ser até mesmo os cinco bytes mostrados por Rictad, mas eles violam a regra do artigo da Wikipedia que diz que 20 bits tem que sem ON e 20 bits tem que ser OFF.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #22 Online: Setembro 26, 2009, 04:33:26 am »
Ok, tenho aqui um firmware com HDCP e HDMI e o mesmo firmware sem HDCP/HDMI. Este fim de semana vou comparar as diferenças...

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #23 Online: Setembro 26, 2009, 04:45:36 am »
Ok, tenho aqui um firmware com HDCP e HDMI e o mesmo firmware sem HDCP/HDMI. Este fim de semana vou comparar as diferenças...

Disponibiliza para a gente também e ajudaremos a classificar o Uruguai para a Copa 2010!  ;)

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #24 Online: Setembro 26, 2009, 04:51:26 am »
Ha-ha-ha! Vai ser difícil!!!! :D

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #25 Online: Setembro 26, 2009, 04:51:37 am »
Segundo o que li aqui:
http://ryan.com.br/smf/index.php?topic=392.msg9176019;topicseen#msg9176019

O problema de Rictad é diferente do problema citado em outros casos. Para Rictad a porta HDMI morreu completamente, mas este relato aqui:
http://vb6rocod.euracks.com/phpBB3/viewtopic.php?f=2&t=3&p=424&hilit=hdcp#p424

Fala de um player que só não reproduz a imagem de DVD (arquivos na USB dão imagem e sempre há som) pela HDMI. Este tem todos os elementos de um problema de HDCP, já o de Rictad, não.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #26 Online: Setembro 26, 2009, 04:58:09 am »
Segundo o que li aqui:
http://ryan.com.br/smf/index.php?topic=392.msg9176019;topicseen#msg9176019

O problema de Rictad é diferente do problema citado em outros casos. Para Rictad a porta HDMI morreu completamente, mas este relato aqui:
http://vb6rocod.euracks.com/phpBB3/viewtopic.php?f=2&t=3&p=424&hilit=hdcp#p424

Fala de um player que só não reproduz a imagem de DVD (arquivos na USB dão imagem e sempre há som) pela HDMI. Este tem todos os elementos de um problema de HDCP, já o de Rictad, não.

É, no meu caso qualquer imagem ou áudio de qualquer formato não sai mais pela HDMI. No entanto, ao ligar o player, a TV reconhece sinal na HDMI (ativa sua entrada HDMI), mas fica apenas em uma tela preta e sem som.

De fato não pode ser HDCP, pois, se fosse, deveria atingir somente o conteúdo protegido.
« Última modificação: Setembro 26, 2009, 05:04:02 am por rictad »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #27 Online: Setembro 26, 2009, 05:02:53 am »
Os dois firmwares de jmaraujo são muito diferentes. As diferenças estão apenas no código 8032 (ARM, DSP e DATA são idênticos), mas o com HDCP tem um banco 8032 a mais e todos os outros quatro são diferentes.

São 238 mil bytes diferentes. Não dá para comparar.
« Última modificação: Setembro 26, 2009, 09:04:48 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #28 Online: Setembro 26, 2009, 05:32:10 am »
Eu faria esse teste ainda hoje. Mas eu não tenho nenhuma TV com HDMI, por isso sequer posso dizer se o HDMI de meus aparelhos funciona.

TV, realmente não. Mas espantosamente algo compatível estava literalmente iluminando a minha cara enquanto eu dizia isso.

Apesar de não gostar de monitores LCD, depois que três dos meus monitores CRT pifaram eu me vi obrigado a comprar (e usar) um Proview AR2238AFJW. Para completar a coincidência e o meu "desligamento" ele está bem em cima de um dos meus DVP5980 e conectado a ele pela porta DVI-D através de um adaptador HDMI-DVI.

Eu havia feito essa conexão justamente para analisar a qualidade de imagem pela HDMI comparado com o que eu podia ver na minha TV CRT (botei o mesmo filme para rodar ao mesmo tempo em ambos), mas isso é assunto para outro tópico. O fato é que aparentemente esse monitor é compatível com HDCP pela DVI, porque acabo de rodar dois filmes originais, incluindo Daredevil, que eu tenho certeza de que tem Macrovision, e meu DVP5980 exibe a imagem normalmente.

Estou usando meu firmware v1.0 (ou alguma variação de teste dele) e sempre fiz atualização por cabo.

Edit: "1.0" é o que aparece na tela por erro meu na hora de liberar o firmware. Me lembrei agora que eu nunca cheguei à versão 1.0.
« Última modificação: Setembro 26, 2009, 08:58:03 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #29 Online: Setembro 26, 2009, 06:07:59 am »
Eu acabo de testar o outro DVP5980 e o resultado foi quase o mesmo. Estão aparecendo uns artefatos estranhos na tela, mas pode ser o firmware instalado.

Esse aparelho sofreu todo tipo de abuso. Eu instalei nele todo tipo de combinação de firmwares, com ou sem HDMI, e todas as versões do site da Philips.

Dai minhas hipóteses nesse momento são:

1) O DVP5980 é imune ao problema ou;
2) O dano não ocorre pela instalação via serial, mas na falha da operação via CD. O problema de Rictad também ocorreu depois de uma instalação via CD mal-sucedida.

Edit: E eu raramente uso CDs. Quando estou trabalhando em um aparelho este fica permanentemente conectado à porta serial do meu computador e à TV do quarto.
« Última modificação: Setembro 26, 2009, 08:56:09 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #30 Online: Setembro 26, 2009, 09:01:52 am »
De fato não pode ser HDCP, pois, se fosse, deveria atingir somente o conteúdo protegido.

É o lógico. Mas isso se agarra à premissa de que a LG não tenha cometido nenhum erro de projeto.

É preciso saber como um aparelho igual ao seu se comporta normalmente quando é apresentado a um monitor sem HDCP.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #31 Online: Setembro 26, 2009, 02:08:58 pm »
Acho que vale a pena dar uma relembrada numas coisas que nós descobrimos há alguns meses atrás (tópico do Firmware do DV397H):

Códigos para informações e funções ocultas:

"Encontrei mais essas informações referentes ao LG DVX9900H:

Quote
Region code + HDCP + Macrovision

HDCP off/on:
PAUSE,1,2,3,6,9
on screen: "OK H" or "Default H" (Status)
(2xPAUSE to leave)

Macrovision off/on:
Pause,7,4,1,5,3,6,9
on screen: "OK M" oder "Default M" (Status)
(2xPAUSE to leave)

EDID off/on: (Extended Display Identification Data)
Pause,1,4,7,8,9
on screen: "OK E" oder "Default E" (Status)
(2xPAUSE to leave)

Region Code:
Pause,3,1,4,1,5,9
0=all

Video/HDMI Info Page:
Pause,2,4,8,6,5

Factory reset + SYSTEM INFORMATION page
go to Setup/video/TV Aspect/16:9
and press 1,3,9,7,1,3,9,ENTER


after disabling macro and hdcp componant now works on all res 720p and 1080i"

Então, o rictad conseguiu as seguintes informações sobre o seu LG DV397H usando o código para Video/HDMI Info page (ver acima):

"Quote
1. EDID

  -TV SYSTEM :NTSC
-AUTO MODE:  OFF
-VSDB Match:  Fail
-EDID parsing:  Fail

2. Supported by sink

-408i/576i:    No /No
-480p/576p:  No /No
-720p/720p:  No /No
-1080i/1080i:  No /No
-1080p/1080p:  No /No

Please press F-Skip key to see next page..

E na segunda página:

Quote
3. HDCP

-AKSV & BKSV:   Fail Fail
-R0 & R0':   Fail
-Rl & Rl':   Fail
-Repeater Bit:   OFF
-Support Al Bit:  OFF
-HDCP Authentication:  Fail

4. Current Status

-Video Mode:   YPbPr  480i
-Audio Mode:   PCM
-HDMI Format:  RGB

Qualquer coisa que aperte, mesmo os números, sai da tela."

O rictad não conseguiu fazer funcionar os códigos para ligar/desligar a HDCP, e os outros descritos acima.
Encontrei tais códigos na internet para outro modelo de LG, porém no editor hexadecimal encontramos os mesmos códigos no LG DV397H (só que o rictad não conseguiu usá-los na prática):

"DV397H:

B5:3670  30 31 2F 30 38 0A 3A 20  4D 54 31 33 38 39 20 53  01/08:. MT1389 S
B5:3680  02 01 02 06 00 00 00 00  02 01 00 04 09 09 04 05  ................
B5:3690  06 02 05 08 00 11 01 03  09 07 01 03 09 11 00 00  ................
B5:36A0  00 13 03 01 04 01 05 09  13 02 04 08 06 05 13 01  ................
B5:36B0  04 07 08 09 13 01 02 03  06 09 13 03 02 01 04 07  ................
B5:36C0  08 09 13 07 04 01 05 03  06 09 00 00 00 00 00 00  ................

O #13 é o código de PAUSE e o #11 o código de ENTER.

Esses 4 últimos não consegui fazer funcionar, mas a sua tabela mostra que três deles existem. Vou tentar tudo isso que você sugeriu. Muito obrigado, zeurt!"

Lendo tudo o que foi dito até agora, a minha teoria atual sobre o problema é a seguinte:
Provavelmente, a HDCP key fica no próprio chip HDMI, bem escondida mesmo (como o Ryan sugeriu).
Porém, o firmware, de alguma maneira, checa se a HDCP key é valida (podemos ver evidências dessa checagem na tela de informação Video/HDMI acima)
Acho que após a atualização mal sucedida por CD, a checagem da HDCP key falhou, e penso que quando isso ocorre, talvez o firmware desabilite a HDCP ou a HDMI (e talvez essa opção fique registrada na EEPROM).
Podemos ver que existe, pelo menos em outros players LG a possibilidade de ligar/desligar HDCP, Macrovision, etc. (ver códigos para funções ocultas acima).
Após a atualização pelo cabo para ressucitação, a HDCP ou HDMI continuaria desabilitada pois isto estaria registrado numa opção da EEPROM, e só voltaria a funcionar editando a opção para o valor anterior.
Pensando assim, seria necessário conseguir uma "cópia" da EEPROM de um player com a HDMI funcionando, e "colocá-la" no DV397H do rictad.
Nessa teoria, a única coisa que não consigo explicar é o fato de que com o Philips 5990 houve resolução do problema com a atualização com o firmware extraído pelo cabo (de acordo com a descrição de jmaraujo). Nesse caso todo o problema estaria localizado na FLASH e não na EEPROM?

« Última modificação: Setembro 26, 2009, 02:13:59 pm por zeurt »

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #32 Online: Setembro 26, 2009, 02:36:50 pm »
Bom, de qualquer forma, vou tentar o teste proposto pelo Ryan. Como meu monitor LCD tem HDCP, vou procurar um desses cabos HDMI to VGA simples, sem suporte a HDCP (vi que tem alguns com suporte HDCP). Aí vou testar pela VGA. Se der imagem, é só HDCP. Se não der, é a HDMI. Ou não...  :-[ ;D

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #33 Online: Setembro 26, 2009, 06:17:03 pm »
Um usuário do OpenMTK disse que é possível adicionar o bloque HDCP ao firmware, então eu enviei uma MP para ele, pra ver se ele explica pra gente como é que se faz o procedimento...
Ele me deu a seguinte resposta aquí: "I think the only way to get the HDCP block is to dump it by serial cable from the original firmware. vb6rocod modified firmware does not include the HDCP block ( it's not included in the firmware from philips either). So when someone flashes firmware using the serial cable it zeros out HDCP block area which prevents hdmi from working. The way I get it to work is by using a hex editor and adding it to vbrocod firmware before I flash. The easiest thing is to make a backup first and if you run into problems you can most likely fix it by reflashing with the original firmware."

Os dois firmwares de jmaraujo são muito diferentes. As diferenças estão apenas no código 8032 (ARM, DSP e DATA são idênticos), mas o com HDCP tem um banco 8032 a mais e todos os outros quatro são diferentes.

São 238 mil bytes diferentes. Não dá para comparar.
Não, é claro que não uma comparação direta, mas sim fazer o disassembly e aplicar os scripts de HDMI e HDCP disponivéis no grupo MT13x9 do Yahoo!

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #34 Online: Setembro 26, 2009, 10:58:56 pm »
Um usuário do OpenMTK disse que é possível adicionar o bloque HDCP ao firmware, então eu enviei uma MP para ele, pra ver se ele explica pra gente como é que se faz o procedimento...
Ele me deu a seguinte resposta aquí: "I think the only way to get the HDCP block is to dump it by serial cable from the original firmware. vb6rocod modified firmware does not include the HDCP block ( it's not included in the firmware from philips either). So when someone flashes firmware using the serial cable it zeros out HDCP block area which prevents hdmi from working. The way I get it to work is by using a hex editor and adding it to vbrocod firmware before I flash. The easiest thing is to make a backup first and if you run into problems you can most likely fix it by reflashing with the original firmware."

Legal! Agora ficou bem claro! O bloco HDCP (HDCP block) fica em alguma área do firmware que nós ainda não descobrimos, sendo que a maioria dos firmwares que usamos como base para as modificações (disponíveis nos sites de serviço da Philips e LG) não possuem esse bloco. A falta desse bloco provoca a falha na autenticação da HDCP e a consequente inutilização da HDMI. A solução realmente deve ser a que jmaraujo afirmou no seu primeiro post. Usar um firmware original extraído pelo cabo (que necessariamente contém o HDCP block). Se for possível identificar o bloco, melhor. Fico curioso para saber onde fica esse tal HDCP block, qual seu tamanho, etc.
P.S.: Portanto, esqueçam a minha teoria do último post.  :dashhead1:
« Última modificação: Setembro 26, 2009, 11:00:36 pm por zeurt »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #35 Online: Setembro 26, 2009, 11:05:44 pm »
Bom, de qualquer forma, vou tentar o teste proposto pelo Ryan. Como meu monitor LCD tem HDCP, vou procurar um desses cabos HDMI to VGA simples, sem suporte a HDCP (vi que tem alguns com suporte HDCP). Aí vou testar pela VGA. Se der imagem, é só HDCP. Se não der, é a HDMI. Ou não...  :-[ ;D

Eu nem sabia que isso existia.
http://produto.mercadolivre.com.br/MLB-108432900-cabo-hdmi-x-vga-folhado-a-ouro-hdtv-dvd-monitor-lcd-tv-_JM

Mas eu acho que você só vai desperdiçar dinheiro.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #36 Online: Setembro 26, 2009, 11:19:57 pm »
Ele me deu a seguinte resposta aquí: "I think the only way to get the HDCP block is to dump it by serial cable from the original firmware. vb6rocod modified firmware does not include the HDCP block ( it's not included in the firmware from philips either). So when someone flashes firmware using the serial cable it zeros out HDCP block area which prevents hdmi from working. The way I get it to work is by using a hex editor and adding it to vbrocod firmware before I flash. The easiest thing is to make a backup first and if you run into problems you can most likely fix it by reflashing with the original firmware."

Essa teoria se baseia na premissa de que a FLASH seja apagada por setores e que o setor com o tal HDMI block seja preservado durante o upgrade por CD. Porque esse é o único modo da instalação de um update oficial Philips não matar o HDMI.

Como eu havia dito antes, para se escrever em uma flash você precisa apagá-la antes. Se a FLASH permite apagamento por setores e você por exemplo precisa mudar apenas um byte do que está escrito lá, você copia o setor para a memória, muda o byte na memória, apaga o setor e depois escreve o novo setor. Existem chips FLASH que permitem acesso byte por byte, mas que eu saiba só são usados pelo MT1389L.

É tecnicamente possível que a rotina de upgrade por CD esteja fazendo algo desse tipo, escolhendo que setores devem ser apagados, ou que faça um "merge" na memória antes. Mas eu estou desconfiado de que isso é "enrolado" demais para o MT1389 fazer.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #37 Online: Setembro 26, 2009, 11:24:41 pm »
Não, é claro que não uma comparação direta, mas sim fazer o disassembly e aplicar os scripts de HDMI e HDCP disponivéis no grupo MT13x9 do Yahoo!

Eu não sabia que existiam esses scripts.

De qualquer forma, o que eu vi na comparação binária me desanimaria a fazer qualquer comparação no IDA.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #38 Online: Setembro 27, 2009, 12:55:26 am »
Sugestão para teste:

Se o Rafalibrenz estiver com o 5990, com a HDMI funcionando, e com facilidade de usar o cabo, ele poderia fazer o seguinte:
1- Atualizar o player por CD com um firmware original disponível no site da Philips.
2- Extrair o firmware por cabo. Assim, o possível HDCP block viria junto.
3- Comparar os dois firmwares para tentar identificar o possível HDCP block. Nesse caso, provavelmente a comparação deva ser bem mais fácil do que em relação aos firmwares que o jmaraujo enviou.

É claro, só se o Rafa tiver tempo, disposição, condições, etc.  ;D

Offline rafalibrenz

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 356
  • Aprovação: +28/-0
    • Ver Perfil
    • Blog
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #39 Online: Setembro 27, 2009, 02:39:57 am »
Aí teríamos que ver se o DVP5980 não é um caso diferente.
Provavelmente seja um caso diferente. Eu judiei do DVP5980 do meu pai, até hoje ele tem sequelas por eu ter colocado o firmware do DVP5960 nele. E 99% dos upgrades foram via cabo.

E a HDMI dele?

É só colocar um firmware compatível com HDMI que ela funciona!


Alguém sabe onde encontrar fotos de alta resolução da placa do DVP5990?
Eu posso providenciar! 'Xá comigo!

Tentarei fazer isso amanhã. Com luz do dia meu trabalho ficará bem mais fácil.


Sugestão para teste:

Se o Rafalibrenz estiver com o 5990, com a HDMI funcionando, e com facilidade de usar o cabo, ele poderia fazer o seguinte:
1- Atualizar o player por CD com um firmware original disponível no site da Philips.
2- Extrair o firmware por cabo. Assim, o possível HDCP block viria junto.
3- Comparar os dois firmwares para tentar identificar o possível HDCP block. Nesse caso, provavelmente a comparação deva ser bem mais fácil do que em relação aos firmwares que o jmaraujo enviou.

É claro, só se o Rafa tiver tempo, disposição, condições, etc.  ;D
Com certeza!!!

Mas COM certeza. De todas as pessoas do mundo, eu seria a mais triste se perdesse a HDMI do DVP5990! Eu uso ele em um display que só tem VGA, DVI-D e HDMI.

Ou seja: me interesso muito pelo provável 'remédio' para um possível mal súbito na minha querida HDMIzinha.

Farei isso nessa semana. O quanto antes! Só não faço pois preciso do auxílio do meu pai para soldar os pinos na placa do dvd player, pra conectar o cabo do "O CABO" (que no meu caso fica numa caixinha). Hehehehe.

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #40 Online: Setembro 27, 2009, 05:09:35 am »
Bom, de qualquer forma, vou tentar o teste proposto pelo Ryan. Como meu monitor LCD tem HDCP, vou procurar um desses cabos HDMI to VGA simples, sem suporte a HDCP (vi que tem alguns com suporte HDCP). Aí vou testar pela VGA. Se der imagem, é só HDCP. Se não der, é a HDMI. Ou não...  :-[ ;D

Eu nem sabia que isso existia.
http://produto.mercadolivre.com.br/MLB-108432900-cabo-hdmi-x-vga-folhado-a-ouro-hdtv-dvd-monitor-lcd-tv-_JM

Mas eu acho que você só vai desperdiçar dinheiro.
Pode ser útil para fazer alguns testes, mas não por R$ 50,00.  :blink:

Acho que descobri alguma coisa no primeiro par de firmwares do DVP5990/37 que o jmaraujo enviou (o do link e o do anexo). Comparando apenas o tamanho dos seguimentos e blocos pelo MTKRemaker, vi que a única diferença era o bloco extra final. No firmware modificado, o bloco extra tem 8 bytes, que são apenas 8 zeros. Já o bloco extra do firmware dumpado possui 4104 bytes. Se há uma HDCP key na FLASH, ela só pode estar nesse espaço, pois os demais blocos, além de estarem do mesmo tamanho, são contínuos (não há espaço de endereços entre eles). Olhando num hex editor, dá para ver que após os 8 zeros iniciais começa uma sequência de #FFs, que representam espaço vazio ou não utilizado na FLASH. Mas perto do final, no offset #C08, começa uma sequência de 286 bytes. Talvez sejam os 280 da conta do zeurt para a HDCP key mais os 5 para o KSV apontado pelo Ryan e mais 1 para controle (início, fim, checksum, não sei). Segue apenas o bloco em anexo. Será que esses 286 bytes podem ser o HDCP block? Se o Rafa fizer o backup dele a gente poderá fazer testes trabalhando com esse trecho (setando com #FF e reinserindo no player para ver se a HDMI ainda funciona, se ele quiser arriscar :laugh:).

Com relação ao segundo par de firmwares que o jmaraujo enviou, a única diferença na estrutura geral dos blocos é aquela mesma já apontada pelo Ryan. Apenas complementando, no firmware com HDMI, o bloco 4 do 8032 está completo (1kb) e há mais um bloco 5 com apenas uma pequena quantidade de bytes. Penso que a diferença pelo HDMI está apenas nessa região (final do bloco 4 e o pequeno bloco 5). Porém, o jmaraujo não deixou claro, mas acho que nenhum deles foi extraído via cabo, então não são uma cópia inteira da FLASH com mais bytes extras. Mas são interessantes para ajudar a compreender as rotinas responsáveis pelo HDMI.

EDIT: Olhando no início do bloco de 286 bytes, os 5 primeiros bytes, (descartando o 00 inicial) são: #73 #2A #92 #7C #9C. Em binário, isso dá: 0111001100101010100100100111110010011100, que possui 20 bits 0 e 20 bits 1. Seria o KSV?
« Última modificação: Setembro 27, 2009, 05:48:04 am por rictad »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #41 Online: Setembro 27, 2009, 01:24:40 pm »
EDIT: Olhando no início do bloco de 286 bytes, os 5 primeiros bytes, (descartando o 00 inicial) são: #73 #2A #92 #7C #9C. Em binário, isso dá: 0111001100101010100100100111110010011100, que possui 20 bits 0 e 20 bits 1. Seria o KSV?

Macacos me mordam se não for...
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #42 Online: Setembro 27, 2009, 02:06:26 pm »
Acho que descobri alguma coisa no primeiro par de firmwares do DVP5990/37 que o jmaraujo enviou (o do link e o do anexo).

Não sei como, mas eu sequer vi que ele tinha anexado um firmware lá.

Eu fiz minha própria análise agora e constatei o mesmo que você, mas vou explicar de outra forma.

Os dois firmwares são byte-por byte idênticos em todos os blocos "normais". Se você rodar o MTKextract em ambos o resultado é absolutamente o mesmo. A diferença está muito após o checksum (onde normalmente acaba o firmware). Dependendo de que byte você considerar como o último é uma seqüência de 287 ou 288 bytes (um de nós dois está contando errado) começando em 0x1FFC00. Isso está no último setor de 64K da flash.

Juntando o fato dos números serem provavelmente uma KSV, tenho que dar o braço a torcer e admitir que realmente o Philips faz apagamento por setores durante o upgrade por CD, deixando o último setor da flash intocado.

A seqüência de oito bytes "zero" pode ou não ser importante, mas eu acho que não é.
 
É bom ter em mente que uma dada KSV só funciona com o conjunto de HDCP keys correspondente.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #43 Online: Setembro 27, 2009, 02:21:13 pm »
Olha só que interessante...

No firmware do DVP858 o primeiro bloco extra de bytes também tem 288 bytes e começa com:

00 B0 9B 1A 71 75 74 CC

que em binário é:

1011000010011011000110100111000101110101

que também tem exatamente 20 bits ON e 20 bits OFF

Edit: Esqueci de dizer que o bloco também começa em 0x1FCC00. É coincidência demais.
« Última modificação: Setembro 28, 2009, 01:01:52 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #44 Online: Setembro 27, 2009, 02:31:24 pm »
É difícil acreditar que o conjunto de HDCP keys esteja exposto no firmware, mas a coincidência numérica (tirando a KSV, restam pouco mais de 280 bytes) é inquietante.

A KSV é como uma "chave pública" e as HDCP keys formam a "chave privada". É desconcertante ver uma chave privada criptográfica exposta. Isso deve ser coincidência.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #45 Online: Setembro 27, 2009, 03:31:04 pm »
Acabo de testar o Proview DVP858

Eu sobrescrevi os dois blocos extras do firmware com zeros, me certifiquei de que tinha sido gravado...

... e a HDMI continua funcionando.

Deve ter sido por isso que eu ignorara o problema até agora. Os dois aparelhos com HDMI para os quais eu fiz firmwares parecem ser imunes.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #46 Online: Setembro 27, 2009, 07:59:53 pm »
Dependendo de que byte você considerar como o último é uma seqüência de 287 ou 288 bytes (um de nós dois está contando errado) começando em 0x1FFC00. Isso está no último setor de 64K da flash.
Sim, estou considerando 287 bytes na verdade. Contei errado. Começa no 00 e termina no #55, que podem ser os delimitadores. Se for isso, sombram 285 bytes no meio.

É difícil acreditar que o conjunto de HDCP keys esteja exposto no firmware, mas a coincidência numérica (tirando a KSV, restam pouco mais de 280 bytes) é inquietante.

A KSV é como uma "chave pública" e as HDCP keys formam a "chave privada". É desconcertante ver uma chave privada criptográfica exposta. Isso deve ser coincidência.
Certo, o player envia apenas o KSV para a TV e a TV envia seu KSV para o player. E ambos combinam os KSVs recebidos com suas próprias chaves privadas para gerarem uma mesma chave de criptografia que será usada para cifrar e decifrar o conteúdo enviado pela HDMI. De fato, deixar a HDCP key visível seria perigoso. Mas não está no firmware. Está fora, mas na FLASH. O usuário tem que alterar fisicamente o hardware para conseguir acesso. Mas de qualquer forma, veja o que diz a Wikipedia: "These keys are confidential and failure to keep them secret may be seen as a violation of the license agreement." Se aquilo for a HDCP key, temos uma falha de segurança. Mas será que os fabricantes estão se importando muito com isso?

Acabo de testar o Proview DVP858

Eu sobrescrevi os dois blocos extras do firmware com zeros, me certifiquei de que tinha sido gravado...

... e a HDMI continua funcionando.

Deve ter sido por isso que eu ignorara o problema até agora. Os dois aparelhos com HDMI para os quais eu fiz firmwares parecem ser imunes.
Funcionando mesmo com o conteúdo protegido? Eles podem ser imunes mesmo ou estamos diante de uma enorme coincidência, pois são players de fabricantes diferentes com o mesmo tipo de código extra, de mesmo tamanho e começando no mesmo endereço!
« Última modificação: Setembro 30, 2009, 08:09:17 pm por rictad »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #47 Online: Setembro 28, 2009, 01:30:33 am »
Se aquilo for a HDCP key, temos uma falha de segurança. Mas será que os fabricantes estão se importando muito com isso?
Ter sua licença revogada significa não poder mais fabricar aparelhos com suporte a HDCP. Isso tem conseqüências graves. O FBI praticamente fechou as portas da Cyberhome nos EUA por algo assim.

E veja o que diz a Wikipedia:

Citar
For this attack you first have to break Blom's scheme (the linear algebra-based key-exchange system). In the case of HDCP, you need a minimum of 39 device keys in order to reconstruct the secret symmetrical master matrix that has been used to compute all device keys.
Tendo acesso a um número suficiente de keys e alguns dias de computação é possível chegar à "master key". Quando isso acontecer, HDCP se torna "de domínio público"  :)

Funcionando mesmo com o conteúdo protegido?
Sim. Eu tenho mais de 200 discos protegidos aqui para escolher. Dificilmente você vai encontrar um disco mais cheio de frescuras que os da Disney e "Piratas do caribe 2" roda.

Eles podem ser imunes mesmo ou estamos diante de uma enorme coincidência, pois são players de fabricantes diferentes com o mesmo tipo de código extra, de mesmo tamanho e começando no mesmo endereço!
Eu me lembrei hoje de uma antiga teoria minha: HDCP só deveria impedir o "upscale" de conteúdo protegido. Daí repeti meu teste com o Proview para ter certeza de que o upscale estava ocorrendo e está. Coloquei Piratas do Caribe 2, fui no setup e configurei explicitamente para 720P e depois chequei no monitor: 1280x720.

Upscale funcionando com DVD protegido, mesmo com todo o bloco HDCP apagado.
« Última modificação: Setembro 28, 2009, 01:55:13 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #48 Online: Setembro 28, 2009, 01:36:54 am »
O que eu queria adicionar respeito ao assunto do HDMI, e que carregar um backup completo realmente resolve o problema.

Eu fico triste de não poder ajudar muito porque não tenho nem player nem tv com HDMI... Estou seguindo atentamente os avanços feitos por vocês. Quem sabe daqui a um tempo a gente já consiga adicionar o bloco HDCP diretamente nos firmwares modificados basados nos firmwares baixados do site da Philips.  ;D

Saudações!

PS: Rictad, ainda estou te "devendo" aquele email para pedir a sua ajuda com o filtrado dos tags do itálicos (não a implementação do itálico, somente o filtrado dos tags). Alguns ArmCodes já "trazem de fábrica" essa opção mas o que eu estou usando não. Desculpem o off-topic.
« Última modificação: Setembro 28, 2009, 01:39:27 am por jmaraujo »

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #49 Online: Setembro 28, 2009, 02:07:56 am »
Tenho uma teoria a respeito do Philips 5980 e do Proview 858: o fato da HDCP key estar presente na FLASH, e por coincidência no mesmo local, não significa necessariamente que a checagem HDCP seja feita na prática pelo firmware, ou seja, os firmwares desses players podem ter desligado a HDCP. Considerando que são um pouco mais antigos que o Philips 5990 e o LG DV397H, e que na época não era tão frequente a presença de monitores e TVs com HDCP, talvez os fabricantes possam ter optado por deixar a HDCP desligada (independente da chave estar lá ou não). Acho até que a HDCP key deve ser colocada por padrão nesse local (ou também em outros que não sabemos, em outros players) da FLASH em todos os players Mediatek com HDMI.
P.S.: A minha teoria pode ir pro lixo se alguém souber que o 5980 ou o 858 ligados pela HDMI a alguma tela sem HDCP bloqueiem o sinal de conteúdo protegido (ou seja, que a HDCP funcione na prática nesses players).

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #50 Online: Setembro 28, 2009, 02:14:40 am »
É, o DVP5980 e da 2ª geração do MT1389, e o DVP5990 e da 4ª geração.

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #51 Online: Setembro 28, 2009, 02:40:28 am »
Pessoal, é o seguinte. Fiz vários testes hoje gravando e lendo a FLASH para saber quais setores não são atualizados pelos 2 métodos (serial e CD/pen drive).

Vocês talvez se surpreendam, mas com o MTKTool via serial, menos setores são apagados no DV397H de chipset S. Na verdade, via serial, nada a partir do endereço #F0000 é apagado pela atualização. Erro meu. Com MTKTool 1.31 mais setores são apagados, como se imaginava, mas nem todos. E tem algo mais surpreendente. Após desligarmos o player na tomada e o religarmos pela primeira vez (EDIT: e usarmos a opção DivX VOD pela primeira vez após a atualização) a FLASH é alterada! Um pequeno bloco com início em #1F0000 é alterado, pelo próprio player! Sim, é adicionada a string "MT23" em #1F0000 seguida de alguns bytes e de um pequeno trecho apagado (FFs) até #1F7FFF. A partir de #F8000 tudo fica mantido :-[. Já na atualização via pen drive isso não acontece e também acontece e o único setor mantido (não apagado) é o que começa justamente em #1FFC00 (o das prováveis HDCP keys).

Ainda estou fazendo alguns testes (estou usando o Windows num laptop, com cabo USB Prolific e, como já é sabido, o upgrade é lento com o driver Windows desse cabo USB), mas depois posto os resultados com mais detalhes.
« Última modificação: Setembro 30, 2009, 08:11:23 pm por rictad »

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #52 Online: Setembro 28, 2009, 02:50:22 am »
Ainda estou fazendo alguns testes (estou usando o Windows num laptop, com cabo USB Prolific e, como já é sabido, o upgrade é lento com o driver Windows desse cabo USB), mas depois posto os resultados com mais detalhes.
Já tentou usar outro driver? No meu cabo, com o driver original a transferência era muito lenta, daí eu fiz o download de um driver acho que do site da Prolific, e a conexão agora é feita a uma velocidad normal... Agora não tenho como checar as versões, mas se precisar, depois eu dou uma olhada no meus drivers.

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #53 Online: Setembro 28, 2009, 02:59:38 am »
Ainda estou fazendo alguns testes (estou usando o Windows num laptop, com cabo USB Prolific e, como já é sabido, o upgrade é lento com o driver Windows desse cabo USB), mas depois posto os resultados com mais detalhes.
Já tentou usar outro driver? No meu cabo, com o driver original a transferência era muito lenta, daí eu fiz o download de um driver acho que do site da Prolific, e a conexão agora é feita a uma velocidad normal... Agora não tenho como checar as versões, mas se precisar, depois eu dou uma olhada no meus drivers.

É o da prolific mesmo. Mas não se preocupa não, isso aqui é provisório.

PS: Rictad, ainda estou te "devendo" aquele email para pedir a sua ajuda com o filtrado dos tags do itálicos (não a implementação do itálico, somente o filtrado dos tags). Alguns ArmCodes já "trazem de fábrica" essa opção mas o que eu estou usando não. Desculpem o off-topic.

Tranquilo! O DV397H MT1389S é um desses em que as tags já são filtradas de fábrica. Então eu tive que identificar o trecho do filtro no ARM. Lá no tópico do firmware do DV397H você pode ver qual o endereço da rotina do ARM que tem o filtro. É a rotina que lê o buffer primário da legenda e preenche o buffer secundário. Eu também identifiquei uma rotina candidata a fazer isso (que não tem o filtro) no DV256k. Se o seu não tem o filtro, a rotina deve ser similar a que indiquei no tópico do DV256k (se eu estiver certo sobre ela). Depois vou ver se identifico rotinas candidatas a isso no seu player e posto lá no tópico do seu firmware.

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #54 Online: Setembro 28, 2009, 03:40:48 am »
Alguns "blocos HDCP" (todos localizados em $1FFC00):

Proview DVP858 v20.06 e v20.07
Chip HDMI: MT1392E 0620-CWSL

Código: [Selecionar]
00 B0 9B 1A 71 75 74 CC 00 39 C3 AF F8 82 75 76
 7C 5B C0 A7 59 4F DB 9E 4A 77 9F 56 A9 C5 69 D8
 50 E4 52 7A 9F F5 A3 91 D3 04 E6 23 53 BF CB 9C
 73 B0 2E 6E 8F F4 F1 17 FA 94 EB 7C 61 C2 F2 38
 7C 94 AF BE 40 1F 8A A4 A7 6B 1D BA 85 F7 A3 DE
 60 56 6D 92 52 25 E9 7E 0D 21 7E D0 CB 91 86 C2
 D3 F0 B2 2A F1 95 72 98 A4 04 ED 76 52 23 A2 45
 9A D8 D5 37 77 FE 11 C8 60 98 08 9C B8 AE 10 0B
 B9 5B 49 32 6B AD 09 AB 12 C3 44 EE 5E 06 DC 86
 91 D2 01 B5 AC F6 54 40 DA 96 74 85 F1 67 1B 58
 4B 0E 76 B8 13 2D 15 EF 35 99 43 DA 27 AA BD 2C
 0B 98 B6 1C 43 82 CA A4 A6 51 16 9C 27 60 77 80
 59 D8 1E 7A CB 76 C7 A4 14 4A D6 7C D3 4C EE EF
 05 67 73 AF 99 F2 52 10 8D 51 B9 88 84 47 63 19
 91 FB 19 D2 10 E6 C2 33 1E 3C 12 F9 FA 25 64 FE
 9E 77 27 CF 66 89 9C 05 BD E7 8B CC C5 E3 34 DA
 0A 04 34 A0 18 7A 8F BC AE DA 7C C9 1A A2 46 9E
 35 3D 1D C5 C6 EA EC 26 CD 4F E6 E1 BD 8D E3 FF

Philips DVP5990/37 (postado por jmaraujo)

Código: [Selecionar]
00 73 2A 92 7C 9C 66 A5 59 14 4F 48 5A 38 21 CC
 A8 81 73 1A F9 A9 29 83 27 24 1D 44 F4 98 D5 FB
 65 22 8A E1 10 DD 50 9B 7A 12 46 14 98 C7 89 E9
 C1 0D B4 E4 47 47 52 3D 61 4B B2 34 75 7A 48 C1
 F7 A1 76 DF 9A 11 F6 0E AF D0 CE 46 54 92 C8 B5
 44 3B 4B BB 95 E4 E6 BA 1A EF B4 AB 6F DA 9A 05
 65 A3 89 11 1A AF 48 99 5D 4E B8 F3 62 EE 06 09
 4F D7 0A FA B3 24 1E B8 A0 D4 F4 FF 12 3B 52 3C
 C3 67 ED D3 01 3F 85 47 76 6D C9 B4 03 BA EC 5C
 90 CD D4 20 F6 19 D2 24 C6 26 AD 40 8B FD 0E 81
 90 34 AD 4F B9 63 88 C3 16 BF 54 AD 90 5D C1 FB
 D2 04 83 32 4A F1 28 3F 00 04 FA 3A 23 33 F8 20
 C3 5C B0 C3 F9 41 EB 46 EC F7 C0 10 58 82 95 13
 57 20 13 6C BB 7A FC 69 F4 79 BB 69 30 3B 99 E3
 01 B9 32 28 C5 D8 63 6F 6D F5 94 8B 42 D9 13 2F
 36 83 50 E3 C6 D9 A8 A5 24 03 66 74 C1 0A 39 72
 03 84 7F 76 06 F2 D8 1B D9 8C 4E 3B 9A 29 E7 73
 6E EE 75 52 07 22 D7 43 9C 2D 29 C7 2F DE 55 FF

Philips DVP5960/37 (firmware aqui)
Chip HDMI: MT1392E 0541-CWSL

Código: [Selecionar]
00 03 E3 16 B4 BB 7F D1 1D EA 04 2B 1D 89 96 58
 CA 70 D7 92 DA AE 40 37 C3 2E AE 39 6D 22 D9 E5
 20 5A 7E 90 85 24 16 52 A7 CD B1 CB 85 47 C4 1A
 F1 9B 74 8E 94 90 DC 31 56 8E 69 2C A4 69 A2 66
 23 C1 5A 02 33 8E 60 33 7C F4 1E 40 A6 53 2A 4C
 3E 58 2E FB 31 1F 6D 02 56 5E 8F 4E 75 8A C6 32
 BD 4E A9 4F C4 DB C8 F7 A1 2B B1 68 A3 C6 2F 0B
 EC E5 45 3C 55 EC A7 FA 02 F3 F6 21 14 9D 81 39
 5D 17 CC 9A E0 67 68 35 80 5F 3D 4F C0 50 2E 46
 ED E5 71 B9 16 4E 22 ED F7 9B 71 68 CF FC 57 6E
 1B 17 2C B6 96 C8 0A 9F E1 19 0B BC E1 F9 2D 66
 62 9D 21 5D 87 DB EC BB 2B 58 39 FF C4 29 D3 C7
 71 60 EF D7 74 CE 03 90 CB F5 6C 83 80 63 83 CF
 FD 3E 9D D8 FC 4A 4D 21 B7 CB 4C 98 15 55 F3 FD
 0C E1 14 B4 32 6A 20 58 2C FD D7 2B 5F 2A 42 DC
 E4 B2 A2 13 6B 36 15 87 54 00 52 0E 7F 7B A8 13
 57 B6 63 13 FA 21 67 0F 81 E1 06 D5 8A CC 10 3A
 09 D0 00 01 59 6E B9 7F 2F E2 3E E9 D5 F8 D2 FF

ARCELIK-BEKO DVD-7400 (firmware aqui)

Código: [Selecionar]
00 41 AE C9 B6 6C 8E 74 07 3B 77 FF 91 69 CE 3B
 DF D2 A7 01 8A C6 9B F3 90 85 ED ED 70 47 31 FD
 F8 5A EF 3C 01 24 CB 7E 06 A7 5C 2C A1 A6 32 83
 C9 C4 14 98 C6 AF DB D0 62 B4 A3 56 67 B5 A3 1F
 1D 32 4A 15 80 CD B1 5D F9 55 56 3D B5 B6 76 FF
 E9 7F AA 07 A3 8F 15 94 0C 92 2A 82 77 00 F3 8F
 0A EC 7B 87 CC C1 7A 24 84 E9 AB 40 EA D6 13 EC
 E3 35 17 2D 00 A1 EA 8D EB D4 FF 97 4D 99 F8 88
 40 BC 31 79 9F EA 68 40 11 3C EE 8D 05 8A 7B 52
 A5 33 A9 E1 B5 F6 01 83 E2 F1 EF D6 58 09 FC 11
 09 E2 8B ED 21 27 E6 28 1A 06 57 9A E9 CC D9 82
 9C 2A 1A 5D 04 E6 03 B6 38 2D 7F DC 4C 36 4B 44
 69 9B D0 FF C2 76 95 7F B7 D5 D2 9C 47 73 6C 50
 8D D9 F1 98 0D 53 E4 02 F0 A3 C9 59 02 DF AD 6A
 D3 7B D2 C5 92 EB E4 16 E5 CA C8 5E CE FB 54 78
 E3 7E 72 E2 7E 91 25 6F EE 44 8A 8D A8 85 BA 4B
 C8 ED 1A DA 97 6D 44 F5 1F C2 6D 6D A5 54 AC A1
 10 72 67 8C 88 6C 09 8C 8C 2C 03 7F EE 14 4A FF

YAMAHA DVD-S661 (firmware aqui)

Código: [Selecionar]
00 B0 59 79 2A 6D 64 F2 F3 82 1E 1B 03 78 E4 FA
 62 56 41 94 9D BE 58 52 38 DD A4 98 98 B2 ED A1
 FB C0 48 64 1B 62 CE A9 7B 69 AC B4 DF 45 66 1A
 91 06 7E EE 65 7B 1E A3 20 27 36 CB 2D 09 6A CD
 08 29 C5 C4 B4 95 03 2D 16 D3 AC D7 54 F3 29 9C
 D3 88 74 8E D8 9C D1 2D E5 96 8D 0B 06 8E C2 FC
 72 7A 91 B6 57 3F 9A B8 7C 9F 99 02 51 D2 A0 82
 47 CB 5D 54 75 36 B6 3B E7 65 18 E1 05 40 77 28
 18 5D 5F FD 47 52 3C AD AD 9A 44 0E EC D9 83 80
 59 12 48 6E E4 D9 83 8F 17 13 3C 60 14 C2 93 09
 4C 36 49 B3 DF C8 F4 26 32 22 7F 79 16 0C CD 83
 7C 50 01 3D 18 FA 9F 61 FB BA CF 21 A3 70 E5 77
 CE 3B E3 6B A0 F2 65 4C 3D A4 B9 40 AA FD 74 95
 BD C0 85 01 24 A0 FF 7F 95 34 0B CA E5 16 5C 39
 45 45 D1 BE 36 AA 0A F7 E0 1A 1F 83 37 FE 8D 26
 59 CC E7 6F 90 F5 B8 CE 84 F0 BB AA 17 02 F3 6E
 34 4F E8 12 B1 82 23 57 F7 DF 61 D5 71 EC 16 5E
 55 54 A4 91 B4 27 A7 3F 85 5A F4 BA 3C 19 37 FF

Medion 81290 (firmware aqui)
Chip HDMI: Supostamente um MT1392

Código: [Selecionar]
00 05 B8 9E 1D 7A 6D 13 8E 8E C6 D3 04 86 D4 E9
 59 CB CE 27 C6 AE 6A 39 BB CF 7E E7 77 57 36 6A
 28 EC CE 1B 46 73 15 7A 00 9F 86 A8 93 60 EF 7A
 1F 78 A7 47 0E 7E 53 8C 6B A2 4E F0 1A 7F 7F 82
 9E 0A 79 86 A2 FB AD 73 80 FF A0 E2 E4 0A 21 09
 64 97 D5 67 96 43 9C B9 11 28 D4 7E 93 A8 F1 B4
 2F 6C 22 12 29 A6 81 A5 13 B3 CC 22 3E 8D 26 12
 74 41 F2 63 84 22 8E B5 78 E0 28 F8 45 B9 17 EE
 16 11 24 A6 2A 15 43 86 29 AA C3 6B D1 8B A0 5F
 ED EA A2 51 C5 DA 49 32 B5 50 6B 3C FB EF 39 45
 EB AA B4 7F 25 42 99 B9 3B 72 7D E1 9E 43 C6 0C
 F2 EE B8 95 50 CE 2F B8 D9 7F F6 2C F6 14 E4 F9
 2B 2B 1D 34 DE 0F A1 62 E0 B1 71 9D 54 00 ED EC
 99 12 38 19 6D 06 BD 71 86 B8 3D FA 19 01 4E 0C
 D3 D0 D1 E1 88 A3 B7 95 75 E3 8B A5 3F 1E 90 3D
 BB B9 5F D7 2D 6A 40 58 2F 55 8D B5 D3 39 22 FF
 8C EA 30 D3 2E 2A DC 8D 04 91 CA 7A F1 DC 33 09
 22 2C 2B 71 25 BB 3E E7 E6 CB 0C 2D 34 93 7E FF


Irei atualizando este post à medida que for extraindo outros
« Última modificação: Setembro 28, 2009, 05:16:13 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #55 Online: Setembro 28, 2009, 04:14:51 am »
Eu tenho três firmwares originais diferentes para DVP5980 extraídos por cabo e curiosamente nenhum deles tem o bloco.

*O de HEJ456
http://board.softpedia.com/index.php?showtopic=439&view=findpost&p=27702
*O que eu extraí do meu aparelho
*O que Rafa extraiu do aparelho dele


Mais curioso ainda: o DVP5980 é o único aparelho que até onde pude apurar não usa um chip HDMI Mediatek. Ele usa um chipset (são dois chips) Silicon Image PrismaClear.

Se as fotos do Rafa mostrarem que o DVP5990 tem um chip HDMI Mediatek eu vou acreditar que esse "HDCP block" é resultado de uma ca**da da Mediatek, que não inseriu as chaves fisicamente no seu chip.
« Última modificação: Setembro 28, 2009, 04:18:45 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #56 Online: Setembro 28, 2009, 04:58:42 am »

Se as fotos do Rafa mostrarem que o DVP5990 tem um chip HDMI Mediatek eu vou acreditar que esse "HDCP block" é resultado de uma ca**da da Mediatek, que não inseriu as chaves fisicamente no seu chip.

Eu encontrei fotos aqui:
http://blog.techflaws.org/2008/11/01/philips-dvp3260-5990-faq/

Mas não vi chip HDMI. Ou está do outro lado da placa ou é embutido no MT1389DXE
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #57 Online: Setembro 28, 2009, 07:19:50 am »
Eu fiz um pequeno programa para facilitar a localização e verificação do suposto "HDCP block".

Não faz nada de sofisticado. Apenas se certifica do offset, tamanho e validade do KSV.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #58 Online: Setembro 28, 2009, 07:52:01 am »
Vocês talvez se surpreendam, mas com o MTKTool via serial, menos setores são apagados no DV397H de chipset S. Na verdade, via serial, nada a partir do endereço #F0000 é apagado pela atualização.

Ué... como então o seu player perdeu a HDMI quando você atualizou por cabo?

Que versão do MTKtool você está usando agora? Sabe dizer se sempre usou essa versão?

Você pode me dizer qual o modelo do chip flash no seu aparelho? Eu não encontrei fotos internas do DV397H. Você tem como tirar algumas?
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #59 Online: Setembro 28, 2009, 12:23:14 pm »
Eu tenho três firmwares originais diferentes para DVP5980 extraídos por cabo e curiosamente nenhum deles tem o bloco.

*O de HEJ456
http://board.softpedia.com/index.php?showtopic=439&view=findpost&p=27702
*O que eu extraí do meu aparelho
*O que Rafa extraiu do aparelho dele


Mais curioso ainda: o DVP5980 é o único aparelho que até onde pude apurar não usa um chip HDMI Mediatek. Ele usa um chipset (são dois chips) Silicon Image PrismaClear.

Se as fotos do Rafa mostrarem que o DVP5990 tem um chip HDMI Mediatek eu vou acreditar que esse "HDCP block" é resultado de uma ca**da da Mediatek, que não inseriu as chaves fisicamente no seu chip.

O certo é que quando o chip HDMI é Mediatek, o HDCP block fica sempre no mesmo local. O fato de não haver HDCP block nesse local no Philips 5980 não significa que não exista HDCP block em nenhum outro lugar da FLASH (ainda não identificado). A Silicon Image PrismaClear também pode ter deixado o HDCP block na FLASH, porém em outro lugar (e assim fazendo a mesma ca**da que a Mediatek), ou não.
Finalizando, a existência do HDCP block na FLASH (certa no Proview 858 e duvidosa no Philips 5980) não indica necessariamente que o problema da perda do HDCP block por atualização por cabo irá inutilizar a HDMI, como foi mostrado pelos testes do Ryan. A minha explicação para isso num post acima se baseia na possibilidade do HDCP estar desabilitado pelo firmware nesses players mais antigos.

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #60 Online: Setembro 29, 2009, 04:41:30 am »
Vocês talvez se surpreendam, mas com o MTKTool via serial, menos setores são apagados no DV397H de chipset S. Na verdade, via serial, nada a partir do endereço #F0000 é apagado pela atualização.

Ué... como então o seu player perdeu a HDMI quando você atualizou por cabo?

Que versão do MTKtool você está usando agora? Sabe dizer se sempre usou essa versão?

Você pode me dizer qual o modelo do chip flash no seu aparelho? Eu não encontrei fotos internas do DV397H. Você tem como tirar algumas?
Pois é, fiquei pensando nisso e vi que estava errado. Com o MTKTool 1.31 (acho que sempre usei essa versão) de fato um maior trecho da FLASH é apagado, mas mesmo assim ainda fica um pequeno setor intacto no final.

Durante aquele tempo em que fiquei com a FLASH "travada", eu postei imagens do meu DV397H aberto e até mesmo o datasheet da FLASH. E no final daquilo tudo cheguei à conclusão que esse aparelho com chipset MT1389S tem lá suas peculiaridades na atualização.

Vamos aos resultados dos testes. Antes de mais nada, descobri em qual operação o player grava a string "MT23" na FLASH e mais alguns bytes a partir do endereço #1F0000. É quando acionamos a opção DivX VOD pela primeira vez, para gerar o código de identificação do reprodutor DivX. Até mesmo bytes isolados são alterados nessa operação! Se essa FLASH não permite gravar bytes isolados, então o player tem que ler um bloco da FLASH, alterar alguns bytes, e regravá-lo inteiro.

O arquivo backup1.bin é o backup inicial da minha FLASH com o firmware Rictad 3.2. Coincidentemente, esse firmware vai até o endereço #1EFFFF (sem considerar o checksum). De #1F0000 a #1F0003 deveria estar o checksum (como está no arquivo do firmware). Porém, no endereço #1F0000 começa a string "MT23" gravada pelo player (mais à frente veremos mais detalhes sobre isso), de modo que se abrirmos esse arquivo no MTKRemaker receberemos aviso de checksum errado. Se o firmware tivesse ficado 1 byte maior ;), o próprio player teria o corrompido, podendo fazer aparecer sintomas estranhos.

Então peguei o backup1.bin e inseri o código #BB (uma marca, para facilitar a identificação) de #1F0004 até #1FFFFF. Atualizei com o MTKTool 1.31, desliguei o player, religuei, fiz algumas operações (inclusive o VOD) e fiz um novo backup, que está no arquivo backup2.bin. Aqueles poucos bytes que acompanhavam a string "MT23" após o endereço #1F0004 voltaram. Além disso, o trecho de #1F010B a #1F7FFF foi apagado. Foi aqui que eu me confundi anteriormente. Pensei que havia sido o processo de atualização serial que só tinha apagado até #1F7FFF, esquecendo que eu havia gravado até #1FFFFF. Mas foi o player que apagou esse trecho após a atualização, como veremos a seguir.

Em seguida, utilizei o firmware original, que só vai até #1DC917, e adicionei #BB a partir de #1DC914 (passando por cima do checksum) até #1FFFFF. Após reiniciar o player, fiz algumas operações (menos o VOD) e copiei a FLASH novamente. Este novo dump está no arquivo backup3.bin e não há nenhuma alteração. Todos os #BBs que eu adicionei estão lá. Nada de string "MT23". Aí, reiniciei o player novamente e fiz apenas mais 1 operação: o DivX VOD. No arquivo backup4.bin temos o conteúdo da FLASH logo após o VOD. A string "MT23" foi reinserida em #1F0000 seguida de alguns bytes novamente. Podemos ver que alguns #BBs ficaram no meio dos bytes inseridos, dando a idéia de que os bytes podem ter sido mesmo inseridos individualmente! Mas pode ser que o setor tenha sido lido pelo player, modificado na memória e regravado na FLASH. E novamente o trecho de #1F010B a #1F7FFF foi apagado. Tudo isso após o DivX VOD ser selecionado. Fiz esta experiência 2 vezes.

O arquivo backup5.bin é o backup da FLASH logo após a atualização via pen drive com o firmware original (no tamanho certo, sem os #BBs). Vemos que a FLASH foi apagada até o endereço #1FBFFF. O trecho a partir de #1FC000 (HDCP block?) ficou preservado, pois os #BBs da atualização anterior ficaram lá.

Já o arquivo backup6.bin foi dumpado logo após a atualização via serial com o firmware original. A FLASH foi apagada até o endereço #1FFEFF. Apenas o pequeno trecho final a partir de #1FFF00 ficou preservado. Pode ser limitação do MTKTool ou uma peculiaridade da FLASH ou mesmo do MT1389S. Seja como for, eu quase não consegui mais remover esse trecho com #BB. Se preenchesse um firmware com #FF até o final, os #BBs não eram sobrescritos na atualização. Falha do MTKTool? Outra peculiaridade? Só consegui "apagar" o trecho final com #00. Então vi que qualquer valor pode ser usado nestes últimos 256 bytes, menos #FF! :-[. (EDIT: Não é bem assim. Na verdade, é impossível alterar um bit de 1 para 0. Isso só é possível no erase, como será explicado mais à frente pelo Ryan. Por isso foi possível programar alterando #FF para #BB e #BB para #00, mas agora não é mais possível gravar nada, até que o setor seja apagado um dia.) Minha FLASH ficará com esses 0s no finalzinho para sempre. :laugh:

Também fiz um teste adicionando o HDCP block do DVP5990 em #1FC000 (a princípio, se há uma chave privada e seu correspondente KSV para ser trocado com o KSV da TV, ambos os aparelhos gerarão a mesma chave mestra para compartilharem dados criptografados, mesmo que a chave seja de outro aparelho), mas a HDMI continuou sem funcionar.
« Última modificação: Setembro 30, 2009, 08:12:35 pm por rictad »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #61 Online: Setembro 29, 2009, 05:18:20 am »
Durante aquele tempo em que fiquei com a FLASH "travada", eu postei imagens do meu DV397H aberto e até mesmo o datasheet da FLASH. E no final daquilo tudo cheguei à conclusão que esse aparelho com chipset MT1389S tem lá suas peculiaridades na atualização.

Agora me deu um nó...

Seu aparelho (MT1389S) tem uma flash paralela e uma EEPROM . É a configuração "normal".
Já o de Allanzin (MT1389M) tem uma flash serial e nenhuma EEPROM visível . Eu suspeito que de alguma forma esses aparelhos guardem as preferências de usuário na própria flash.

Faria sentido esse comportamento se você tivesse o MT1389M, mas não com o MT1389S...

Tenho que checar se o mesmo acontece nos meus aparelhos.
« Última modificação: Setembro 29, 2009, 05:19:53 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #62 Online: Setembro 29, 2009, 05:24:34 am »
Esqueci de mencionar: Seu aparelho também não tem um chip HDMI externo.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #63 Online: Setembro 29, 2009, 07:13:39 pm »
Mas não vi chip HDMI. Ou está do outro lado da placa ou é embutido no MT1389DXE
Está incluido no MT1389S (4ª geração).

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #64 Online: Setembro 30, 2009, 02:58:10 am »
Se quiserem analisar outro firmware, no arquivo anexo está o firmware extraido do DVP3962/37 que está postado no fórum do DVP5100, e no seguinte link está o firmware oficial da Philips: http://www.p4c.philips.com/files/d/dvp3962_37/dvp3962_37_fus_aen.zip

O firmware foi extraido por Joel Iglesias, o crédito vai para ele.

Offline rafalibrenz

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 356
  • Aprovação: +28/-0
    • Ver Perfil
    • Blog
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #65 Online: Setembro 30, 2009, 03:22:34 am »
Hoje eu tirei as fotos internas do DVP5990.

No total são 16 fotos.

Eu vou disponibilizar elas de duas formas:

1. Vou anexar todas aqui nesse post, em um arquivo rar de 18,7 MB (dividido em 4 partes). Aí elas estão sem resize. Só passei pelo Photoshop, onde dei um Shapen e salvei em JPG com qualidade 8 (High) (fica bem menor do que a compressão superfine que eu uso na câmera). A minha câmera (Canon SX110IS) tem 9 megapixels, então algumas fotos estão com 3456 x 2592 pixels. As que estão com menos foram cropadas pois tinham áreas totalmente inúteis.

2. Para facilitar a visualização eu também coloquei todas elas em um álbum público do PicasaWeb. Aqui elas estão com aproximadamente 2 megapixels apenas. 1600 pixels na maior dimensão.

Todas as fotos estão com os dados EXIF, para satisfazer aos curiosos. :)

Hoje mesmo eu ia extrair o firmware, mas não achei a porta serial na placa...

Estou desconfiado com aproximadamente 80% de 'certeza desconfiométrica' de que a serial é aquele soquete branco com 4 pinos bem perto do chip da memória FLASH.

Mas estou em dúvida, pois não enxerguei os escritinhos "TX, RX, GND" perto dos pinos, como estou acostumado.

Alguém me confirma se a serial é ali mesmo? É só alguém me confirmar, que aí eu tento ler o firmware.

Aaaah... Só que eu precisaria, além disso, saber a pinagem (TX, RX, GND) pra saber de que lado eu encaixo o meu cabo (que não tem aquele conector do soquetezinho), já que eu não consigo ler. Existe um padrão para essa pinagem? E se eu colocar virado, corro algum risco?

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #66 Online: Setembro 30, 2009, 06:50:09 am »
Hoje mesmo eu ia extrair o firmware, mas não achei a porta serial na placa...

Estou desconfiado com aproximadamente 80% de 'certeza desconfiométrica' de que a serial é aquele soquete branco com 4 pinos bem perto do chip da memória FLASH.

Mas estou em dúvida, pois não enxerguei os escritinhos "TX, RX, GND" perto dos pinos, como estou acostumado.

Alguém me confirma se a serial é ali mesmo? É só alguém me confirmar, que aí eu tento ler o firmware.

Muito provavelmente, é. Se você tiver um multímetro pode conferir facilmente.

Com o aparelho desligado da tomada e o multímetro medindo continuidade, coloque uma ponta em cada um dos dois pinos centrais do conector e arraste a outra pelos terminais da CPU. Se houver continuidade, é a porta serial.

Cuidado: NUNCA manipule a porta serial com o aparelho ligado na tomada, se não tiver extraído o firmware original ainda. O "ruído" eletromagnético presente nos seus dedos pode ativar a rotina de apagamento da flash.

Aaaah... Só que eu precisaria, além disso, saber a pinagem (TX, RX, GND) pra saber de que lado eu encaixo o meu cabo (que não tem aquele conector do soquetezinho), já que eu não consigo ler. Existe um padrão para essa pinagem? E se eu colocar virado, corro algum risco?

Se seu cabo só tem três fios (não tem +3.3V), não há risco algum. De qualquer forma GND é facilmente identificável porque dá continuidade para conectores metálicos da placa.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #67 Online: Setembro 30, 2009, 09:28:04 am »
Para quem, baseado na simplicidade na operação de pendrives, não entende como uma memória flash seja assim tão "fresca" para se gravar como eu venho dizendo, este artigo na Wikipedia dá alguns esclarecimentos.

Um resumo (acrescentando coisas que eu sei de outras fontes):

  • Só é possível mudar um bit qualquer de uma EEPROM (incluindo as flash) para "1" durante uma operação de apagamento. Durante a escrita só é possível gravar "0"s. É por isso que uma memória apagada apresenta "FF"s (11111111 11111111).
  • Existem duas tecnologias: "NOR" e "NAND". A "NOR" é mais flexível na programação e leitura (permite até Execute In Place), mas é mais cara e por isso menos comum. Eu acredito que todas as flash usadas em DVD players sejam NAND.
  • Uma memória NAND só pode ser apagada por setores/blocos. E esses setores não costumam ser menores que 8K, mas em sua maioria tem de 32K a 64K (pelo menos para memórias de 2MB).
  • Uma memória NAND pode ser programada por "páginas" tão pequenas quanto 512 bytes, sempre tendo em mente que 1)A página tem que estar apagada antes 2)Se você quiser escrever outra coisa no mesmo lugar precisa apagar o bloco inteiro antes.
  • Uma EEPROM que pode ser programada um byte de cada vez chama-se "byte-programmable" (é o caso das memórias que guardam as preferências do usuário). A maioria das flash é "page-programmable".

Exemplos flash "byte-programmable"

AM28F020 (256 KB)

Exemplos flash que podem ser programadas byte por byte mas não são "byte-programmable" porque requerem que o setor seja apagado antes.

EN25F80 (2MB - SPI) - Usada no Eletrovision EV-597


Rictad,

A flash do seu aparelho (MXIC MX29LV160C) parece ser capaz de programação byte-por-byte. Isso não está absolutamente claro no datasheet. Mas uma coisa está clara (página 16):

Citar
Programming is allowed in any sequence and across
sector boundaries. A bit cannot be programmed from a
"0" back to a "1"
. Attempting to do so may cause the
device to set Q5 to "1", or cause the Data# Polling algo-
rithm to indicate the operation was successful. However,
a succeeding read will show that the data is still "0".
Only erase operations can convert a "0"  to a "1".

Isso significa que, de qualquer forma, sua flash não é exatamente "byte-programmable". A CPU pode até escrever em algum lugar onde previamente haviam "FF"s, mas não pode mudar esse valor a não ser usando um ciclo "copia, apaga, muda e cola".

Até passou pela minha cabeça uma teoria: Será que o MTKFlash realmente está lendo a flash ou está lendo uma cópia da flash na RAM? Mas eu descartei essa possibilidade porque:

1)O firmware vai para a RAM com o bloco RISC descompactado. Ter duas cópias do firmware na RAM seria um desperdício de memória
2)Para isso o aparelho precisaria estar praticamente todo "ativo". A maioria dos parelhos permite a leitura do firmware mesmo em standby.
« Última modificação: Setembro 30, 2009, 10:44:50 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #68 Online: Setembro 30, 2009, 05:28:03 pm »
Rictad,

A flash do seu aparelho (MXIC MX29LV160C) parece ser capaz de programação byte-por-byte. Isso não está absolutamente claro no datasheet. Mas uma coisa está clara (página 16):

Citar
Programming is allowed in any sequence and across
sector boundaries. A bit cannot be programmed from a
"0" back to a "1"
. Attempting to do so may cause the
device to set Q5 to "1", or cause the Data# Polling algo-
rithm to indicate the operation was successful. However,
a succeeding read will show that the data is still "0".
Only erase operations can convert a "0"  to a "1".

Isso significa que, de qualquer forma, sua flash não é exatamente "byte-programmable". A CPU pode até escrever em algum lugar onde previamente haviam "FF"s, mas não pode mudar esse valor a não ser usando um ciclo "copia, apaga, muda e cola".

Então é como eu cheguei a dizer. Aquele trecho a partir de #1F0000 deve ser copiado na memória, ter alguns bytes alterados e regravado no setor da FLASH após este ter sido apagado. Isso justifica alguns bytes #BB ainda sobrarem em meio aos modificados, já que essa FLASH não permite o erase por byte, só por setores (apesar de permitir gravar por bytes). Caso fosse uma tentativa de gravar os bytes individuais, o trecho ficaria errado. Por exemplo, o byte correspondente ao "M" da string "MT23" gravado em #1F0000 tem valor #4D, quem em binário é 01001101. Se tiver um #FF na posição, obviamente #4D pode ser gravado, alterando os bits 7, 5, 4 e 1 da posição de "1" para "0". Mas se tiver o #BB na posição, que em binário é 10111011, uma tentativa de gravar #4D na posição, resultaria em 00001001 = #09 (os bits "0" não podem ser mudados para "1"). Como isso não ocorre, temos certeza que o setor foi apagado antes.

E também está claro o porquê de não conseguir "apagar" o setor final, de 256 bytes. Esse setor é o único não apagado pelo erase do MTKTool. Mas é possível programá-lo. Depois de programá-lo com #BB, tentei programá-lo com #FF, mas está mais do que claro que isso é algo impossivel de se fazer nessas FLASH's (é o mesmo que tentar rodar os bits 0 de cada #BB para 1, algo feito apenas no erase). Agora, como programei com #00 esse setor final, será impossível gravar qualquer valor naquelas posições. Só se um dia conseguir um erase total. ;D

Offline rafalibrenz

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 356
  • Aprovação: +28/-0
    • Ver Perfil
    • Blog
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #69 Online: Setembro 30, 2009, 07:37:37 pm »
Depois de horas de vai-e-vem, consegui extrair o firmware do DVP5990.

Um pouco de história:

Primeiro não achei a serial. Aí o Jefferson me deu as dicas aqui no tópico e eu fui lá com o multímetro e constatei que o que eu achava que era a serial, era mesmo! Aí outro problema: meu conector do "o cabo" não encaixava no conector da serial. Tive que encontrar um (tirei de um cabo de áudio de drive de CD, que tinha uma das pontas duplas. A branca foi a que serviu) e trocar a ponta do meu cabo. Feito isso, testei o cabo (queria ter certeza se havia ligado certo o GND, TX e RX) com o DVP5980 antes de metê-lo no DVP5990. Leu direitinho a flash.

Aí fui pegar o firmware oficial do DVP5990 no site da Philips. Não consegui. Minha internet está maluca hoje à tarde. Então minha irmã, que mora bem longe, baixou o arquivo e me mandou por e-mail. Aí beleza: atualizei o firmware para a versão oficial. Testei. Tudo certo. Aí fui ler o firmware pela porta serial... E o programa (Mtk Flasher) não reconheceu a flash. Lá vou eu, com as unhas, tirar o adesivo... ficou uma meleca... lá vou eu, com um paninho com álcool, limpar a meleca... Ok! Consegui ler!

O chip de memória FLASH do meu DVP5990 é o ESMT F49L160BA-70T.

Com um pouco de Google consegui isso:

0x8C,  0x49,  0x200000, 0x10000, 4, EFST(F49L160BA)

Foi só adicionar no arquivo INI e aí consegui ler a Flash.

Abri o arquivo extraído no MtkReMaker, e abriu direitinho, sem erros.

Testei a HDMI do DVP5990 depois de tudo isso e continua ok.

Ou seja: tudo certo! :)

Segue o arquivo oficial que usei e o extraído via serial.

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #70 Online: Setembro 30, 2009, 08:08:31 pm »
Testei a HDMI do DVP5990 depois de tudo isso e continua ok.

Mas você atualizou via CD ou pen drive, certo? Tenta atualizar via serial com o firmware original para ver se HDMI ainda funciona. Se não funcionar, você tem o conteúdo extraído para deixar sua FLASH como antes. Mas... cuidado...  ;)
« Última modificação: Setembro 30, 2009, 08:14:36 pm por rictad »

Offline rafalibrenz

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 356
  • Aprovação: +28/-0
    • Ver Perfil
    • Blog
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #71 Online: Setembro 30, 2009, 09:09:05 pm »
Mas você atualizou via CD ou pen drive, certo?
Sim. Hoje eu só escrevi na FLASH uma vez, quando coloquei o firmware oficial via USB. O teste da HDMI no final do processo foi para ter certeza que não havia ocorrido algum tipo de esquesitice eletro-magnética nociva à saúdo do aparelho durante o manuseio do aparelho.

Tenta atualizar via serial com o firmware original para ver se HDMI ainda funciona. Se não funcionar, você tem o conteúdo extraído para deixar sua FLASH como antes. Mas... cuidado...  ;)
Eu não me disponho a fazer isso. Pelo menos não agora. Esse aparelho fica totalmente inútil pra mim sem HDMI (o meu display não tem outra entrada compatível com o DVP5990). Estou com medo de escrever na FLASH dele via serial, apesar de já ter entendido que, pela lógica, eu não corro risco, pois poderia ter a FLASH do jeito que está, mas tenho medo igual. Talvez o buraco seja mais embaixo.

Jmaraujo, você comentou que tinha usuários no seu fórum que perderam a HDMI do DVP5990, né? Avise eles que eu fiz a extração do firmware totalmente funcional via serial, acho que eles vão gostar de saber.

Offline zeurt

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 333
  • Aprovação: +47/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #72 Online: Setembro 30, 2009, 09:10:29 pm »
A HDCP key do Philips 5990 do Rafalibrenz está presente no firmware extraído por cabo (no mesmo endereço #1FFC00), e não está presente no firmware oficial da Philips (conforme esperado). A HDCP key é diferente da HDCP key do outro firmware do 5990/37 extraído por cabo (enviado pelo jmaraujo).

Considerando que a HDCP key do Philips 5990 não serviu no LG DV397H do rictad, será que essa tal HDCP key tem que ser específica para cada modelo? Só podemos ter certeza disso se alguém que possue um LG DV397H com chip MT1389S extrair o firmware por cabo para fazer essa doação para o rictad, e talvez assim finalmente consertar sua HDMI.  ;D Se mesmo assim não der certo, o mistério continuará...
« Última modificação: Setembro 30, 2009, 09:13:28 pm por zeurt »

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #73 Online: Setembro 30, 2009, 10:04:45 pm »
Eu não me disponho a fazer isso. Pelo menos não agora. Esse aparelho fica totalmente inútil pra mim sem HDMI (o meu display não tem outra entrada compatível com o DVP5990). Estou com medo de escrever na FLASH dele via serial, apesar de já ter entendido que, pela lógica, eu não corro risco, pois poderia ter a FLASH do jeito que está, mas tenho medo igual. Talvez o buraco seja mais embaixo.
É, eu entendo. Por isso disse "cuidado" :angel:. Nunca se sabe... :laugh:

Considerando que a HDCP key do Philips 5990 não serviu no LG DV397H do rictad, será que essa tal HDCP key tem que ser específica para cada modelo? Só podemos ter certeza disso se alguém que possue um LG DV397H com chip MT1389S extrair o firmware por cabo para fazer essa doação para o rictad, e talvez assim finalmente consertar sua HDMI.  ;D Se mesmo assim não der certo, o mistério continuará...

Ela até deve ser uma por modelo, devido à licença. Mas não acho que precisaria ser diferente para funcionar, pela regra da criptografia. A não ser que essa HDCP key que estamos vendo ainda é mesclada com algum valor de identificação do hardware. Neste caso, teremos uma única funcional por modelo.

Difícil é achar outro proprietário do LG DV397H MT1389S disposto a fazer o cabo. A HDMI não está me fazendo falta, pois a Vídeo Componente não deixa nada a desejar. Além disso, a única entrada HDMI da minha TV está ligada a um STB :). Mas a curiosidade para saber se tinha uma HDCP key naquele endereço (ou em outro lugar) é grande.

EDIT: Consegui apagar a FLASH inteira usando o MT1389 Flasher. Era uma limitação do MTKTool, então. Além disso, mesmo com o driver prolific do Windows, a gravação é tão rápida quanto com MTKTool no Linux (via Wine), usando módulo pl2303 (uns 3 minutos).
« Última modificação: Outubro 01, 2009, 01:55:53 am por rictad »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #74 Online: Outubro 01, 2009, 02:56:51 am »

Ela até deve ser uma por modelo, devido à licença.

Isso está me deixando confuso. Segundo o que é dito no artigo na Wikipedia, cada modelo tem um conjunto de keys diferente, para que seja possível revogar a licença de apenas um modelo. Porém a revogação só faz sentido no caso de aparelhos de blu-ray, porque os discos blu-ray também fazem autenticação com o player.

1) Não faz nenhum sentido revogar a licença de um DVD player, porque ele vai continuar funcionando com o hardware que foi fabricado antes de sua licença ser revogada. Faz sentido em um Blu-ray player, porque o aparelho deixará de ser capaz de reproduzir discos novos. É possível até desabilitar o aparelho por comando de um programa no disco blu-ray, para que não possa reproduzir mais nada.

2) Do ponto de vista da fabricação é dificíl ter HDCP keys diferentes para cada modelo sem deixá-las expostas de alguma forma. Você não pode ter um chip HDMI (MT1392, PrismaClear) fabricado sob medida para cada modelo. Então o mais "fácil" é realmente essas HDCP Keys serem gravadas na flash ou em uma EEPROM (até mesmo numa PROM). Porém isso expõe as keys, violando a licença.

Só faria algum sentido para mim se de alguma forma esse "HDCP block" estiver também criptografado por uma rotina embutida no chip MT1389.

http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #75 Online: Outubro 01, 2009, 03:04:26 am »

Considerando que a HDCP key do Philips 5990 não serviu no LG DV397H do rictad, será que essa tal HDCP key tem que ser específica para cada modelo?

Ainda não sabemos sequer se o "HDCP block" da LG fica no mesmo endereço. Nunca vimos um firmware LG "completo".

Se tudo o mais estiver certo, pode ser que o firmware faça alguma espécie de checksum no bloco.

No momento só quem está habilitado a fazer isso é o Rafa, porque ele tem um aparelho que sabidamente perde o HDMI sem o tal bloco (os meus até agora são imunes). Rafa poderia trocar o bloco dele por outro para ver se continua funcionando.

Não estou dizendo que ele deva fazer isso. É arriscado e ele precisa muito do HDMI de seu player.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #76 Online: Outubro 01, 2009, 03:09:21 am »
Só faria algum sentido para mim se de alguma forma esse "HDCP block" estiver também criptografado por uma rotina embutida no chip MT1389.

E isso dá para saber se alguém que perdeu sua HDMI só conseguir fazê-la funcionar com o HDCP block do seu modelo.

Ainda não sabemos sequer se o "HDCP block" da LG fica no mesmo endereço. Nunca vimos um firmware LG "completo".
Se tudo o mais estiver certo, pode ser que o firmware faça alguma espécie de checksum no bloco.

Isso é mais fácil que a criptografia! Pode ser isso. Mas só com o teste citado anteriormente para saber...

1) Não faz nenhum sentido revogar a licença de um DVD player, porque ele vai continuar funcionando com o hardware que foi fabricado antes de sua licença ser revogada. Faz sentido em um Blu-ray player, porque o aparelho deixará de ser capaz de reproduzir discos novos. É possível até desabilitar o aparelho por comando de um programa no disco blu-ray, para que não possa reproduzir mais nada.

Agora aqui eu fiquei confuso. Você está dizendo que cada Blu-ray sai de fábrica com informações sobre a licença HDCP de cada modelo de aparelho que ele pode rodar? Ou pelo menos com a informação das licenças revogadas? Só assim ele pode "saber" se o HDCP key do aparelho é válido.
« Última modificação: Outubro 01, 2009, 03:13:26 am por rictad »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #77 Online: Outubro 01, 2009, 03:28:41 am »
Agora aqui eu fiquei confuso. Você está dizendo que cada Blu-ray sai de fábrica com informações sobre a licença HDCP de cada modelo de aparelho que ele pode rodar? Ou pelo menos com a informação das licenças revogadas? Só assim ele pode "saber" se o HDCP key do aparelho é válido.

Segundo a especificação,  cada Blu-ray player do mercado possui uma "revocation list" com todas as KSV revogadas.

Pior ainda: Os discos de blu-ray foram projetados para conter atualizações de firmware e da revocation list para cada blu-ray player do planeta. E essa atualização é do tipo "mandatory". Ou seja: você compra um disco blu-ray novo, bota prá assistir e de repente pode ocorrer uma de duas coisas:

1) Seu player comprometido é atualizado e não pode mais reproduzir discos piratas.
2) Seu receiver comprometido (a TV ou outro dispositivo que você tenha no caminho) não autentica mais com o player.

Eu li em algum lugar que para evitar que um hacker comprometa um modelo e isso vitimize todos os compradores do mesmo modelo, cada aparelho no mundo tem uma KSV própria.

Mas a realização disso é ainda mais difícil de entender que cada modelo no mundo com uma KSV distinta.

http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #78 Online: Outubro 01, 2009, 03:38:09 am »

E isso dá para saber se alguém que perdeu sua HDMI só conseguir fazê-la funcionar com o HDCP block do seu modelo.

Não, não é isso. O objetivo de criptografar o "HDCP block" é apenas evitar que as chaves sejam expostas. Um hacker teria que descobrir a criptografia da Mediatek antes de poder considerar aquilo um conjunto de "HDCP keys" válido e passar para a próxima fase. A chave de criptografia da Mediatek poderia ser a mesma, sempre, desde que estivesse embutida no chip.

Então, mesmo que a Mediatek aplique sua própria criptografias às chaves, um bloco de um modelo pode funcionar em outro modelo.

Porém basta fazer um simples checksum para invalidar todo o bloco e dificultar o intercâmbio de chaves entre modelos. É facílimo para o firmware fazer essa verificação.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline rictad

  • Hacker Honorário
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 285
  • Aprovação: +59/-0
    • Ver Perfil
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #79 Online: Outubro 01, 2009, 03:45:54 am »
Segundo a especificação,  cada Blu-ray player do mercado possui uma "revocation list" com todas as KSV revogadas.

Pior ainda: Os discos de blu-ray foram projetados para conter atualizações de firmware e da revocation list para cada blu-ray player do planeta. E essa atualização é do tipo "mandatory". Ou seja: você compra um disco blu-ray novo, bota prá assistir e de repente pode ocorrer uma de duas coisas:

1) Seu player comprometido é atualizado e não pode mais reproduzir discos piratas.
2) Seu receiver comprometido (a TV ou outro dispositivo que você tenha no caminho) não autentica mais com o player.
:o  :o
Então está explicado! Mas isso no Brasil ia dar problemas, pois viola nossas leis de defesa do consumidor. Daria um monte de processos. Parece filme americano, quando a pessoa está com o cartão de crédito expirado ou bloqueado: o atendente da loja pega o cartão e quebra. :laugh: Lá isso é permitido, aqui não.

Para mim, a lógica deveria ser a seguinte: se o fabricante tivesse sua licença revogada, ficaria impedido de produzir novos modelos com aquela HDCP key e teria seus estoques apreendidos. Já seria uma dura pena a ele. Mas os modelos que foram vendidos, foram vendidos com a licença ainda válida para o consumidor final, que não teria nada a ver com isso. Mas as leis autorais e de patentes americanas são terríveis para o consumidor final... ::)

Porém basta fazer um simples checksum para invalidar todo o bloco e dificultar o intercâmbio de chaves entre modelos. É facílimo para o firmware fazer essa verificação.

É, acho que deve ter checksum mesmo.

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #80 Online: Outubro 01, 2009, 06:04:19 pm »
No momento só quem está habilitado a fazer isso é o Rafa, porque ele tem um aparelho que sabidamente perde o HDMI sem o tal bloco (os meus até agora são imunes).

Quase consegui um aparelho para fazer testes.

Remontei meu DVP5960 (que não é exatamente meu, mas o dono deixou comigo há anos dizendo que pediria se um dia precisasse) e testei o HDMI. Como eu esperava, não deu imagem no meu monitor e verifiquei (pela analógica) que o menu HDMI estava desabilitado. Instalei via serial o firmware completo para DVP5960/37 e o menu foi habilitado, mas eu não posso escolher a resolução (fica em AUTO). O monitor fica piscando como se estivesse tentando combinar a resolução com o player, mas não chegam a um acordo e não dá imagem nunca.

Sem imagem, qualquer teste que eu faça só me dará uma meia resposta, mesmo me baseando pelo menu HDMI.
« Última modificação: Outubro 01, 2009, 06:06:07 pm por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #81 Online: Outubro 03, 2009, 10:15:31 am »
Mais sobre como as chaves HDCP podem estar presentes nos aparelhos.

http://focus.ti.com/lit/an/slla131/slla131.pdf
A respeito de componentes da Texas Instruments para interfaces DVI
Citar
...For proper HDCP operation, the TFP501 must have appropriate keys loaded in an external
EEPROM and encrypted by the device.

18. Do I need an EEPROM for HDCP keys with the TFP510?
The TFP510 has a provision to use keys stored elsewhere in memory and sent to it. The
keys are still encrypted uniquely to the device. See related documents for more details.

17. Should I write protect the HDCP key EEPROM?
Yes. The TI device will read from the EEPROM, check an indicator value and decide
whether to read and use the keys stored there or encrypt them. There is only 1 64 bit value
of the indicator which will cause the device to re-write the EEPROM. Improper write to the
EEPROM by the device is unlikely, however, the EEPROM could possibly interpret power
transients as a write command and alter its memory. Write protecting the EEPROM is
advised after the TI device has encrypted the keys.


19. Do I need an EEPROM for HDCP keys with the TFP501?
Yes, the TFP501 has no other user interface over which keys can be transferred.

20. How does the TI device differentiate between the key EEPROM and other I2C EEPROMs
in the system?
The TI devices use an isolated I2C bus for the EEPROM load. The device is always bus
master, but talks to the EEPROM only at a well defined time after reset, so access to the
EEPROM for factory programming or re-programming is easy
.

O que isso nos diz:

  • As chaves podem estar aparentemente expostas no firmware ou em EEPROM, mas provavelmente (se o fabricante não for idiota) estão criptografadas por processo conhecido apenas pelo chip que as lê. Isso confirma minha teoria de alguns posts atrás;
  • Mesmo que o fabricante grave as chaves do jeito que as recebeu alguns chips tem a capacidade de ao perceber isso criptografar o bloco automaticamente;



Manual de serviço da TV VIZIO L30WGU
http://buttfuzz.net/downloads/tv/vizio_l30wgu_service_manual.pdf

Citar

HDCP Keys EEPROM
The SiI 169 comes pre-programmed with a production set of HDCP keys in its internal EEPROM. In
this way the keys are provided the highest level of protection as required by the HDCP specification.
Silicon Image manages all aspects of the key purchasing and programming. There is no need for the
customer to purchase HDCP keys from the licensing authority. For security reasons, the keys cannot
be read out of the device.
Samples of the SiI 169 are available with the B1 public keys as listed in the back of the HDCP
specification. These are marked with a -PUB part number as noted in the Ordering Information
section. Make sure to request either “Public” or “Production” keys when requesting samples. Before
receiving samples of the SiI 169 with production keys a customer must have signed the HDCP
license agreement.

Essa era a única possibilidade que eu conhecia, antes de "me tocar" para a possibilidade de uma segunda camada de criptografia: o chip já vem pré-fabricado com as chaves não havendo como um hacker comum ter acesso a elas (piratas em escala industrial tem seus meios). No caso do chip acima existe uma EEPROM interna que provavelmente só pode ser acessada com ferramentas do fabricante. Isso evita o enorme custo associado a gravar chaves diferentes em cada chip direto na pastilha de silício. Usando uma EEPROM interna o fabricante do chip pode gravar as chaves depois da criação da pastilha e em seguida "cortar" (física ou logicamente) o acesso externo à EEPROM.

Só para dar uma idéia de como pode ser difícil ler algo quando o fabricante não dá acesso externo, somente após 10 anos alguém conseguiu fazer um "dump" da boot ROM do Gameboy Color.
« Última modificação: Outubro 03, 2009, 11:14:06 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline ygor.almeida

  • Novato Prolixo
  • **
  • Mensagens: 73
  • Aprovação: +1/-0
  • My Name is Neo
    • Ver Perfil
    • eXtremeMods
Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #82 Online: Outubro 24, 2009, 12:37:27 am »
Apenas se for para ajudar.

Eu ainda tenho um Player DVP5990 Lacrado com uma firmware original da Philips - alguém precisa da firmware original de um player que nunca foi alterado nada !?

Eu me habilito a extrair a firmware com o cabo se alguém for precisar para algum estudo ou mesmo para tentar recuperar o do Rafa.

Basta me dizer qual o programa preciso e qual o procedimento para ter 100% de certeza que a firmware esta OK.

Att
www.eXtremeMods.com.br
Hardware IT News & OverClock

FORUM.RYAN.COM.BR

Re: A ressuscitação do firmware pela porta serial e a perda do HDMI...
« Responder #82 Online: Outubro 24, 2009, 12:37:27 am »