我有一台三星电视通过光纤输出连接到我的DTS音响系统。电视有ARM CPU和嵌入式Linux操作系统。它配备了嵌入式媒体播放器。但内部媒体播放器不会将DTS音频传递给我的音响系统。它只通过AC3和其他格式。我想破解电视的固件,将DTS音频传递给我的音响系统。
开始这种爱好项目有哪些书籍,学习资源等?我从未在嵌入式平台上编程。在开始之前我应该知道什么?例如,我应该知道音频编程,电子学,Linux内核,C编程吗?任何建议都会有所帮助。
实际上,有一个专门的sourceforge项目与三星电视上的固件黑客攻击相关,名为SamyGO。但当我问这个网站的主要固件黑客之一时,我没有收到他的回复。所以我在这里有人可以回答我的问题。谢谢..
更新:
我应该为这种工作获得多少电子知识? (我拥有C.S学位和关于电子学,逻辑设计等的基础知识)。我应该是Linux内核还是C专家?
实际上我一直想知道像George Hotz这样的嵌入式设备黑客是如何获得这种知识的。因为它是一个封闭的系统,他们没有任何文档,他们怎么能这样做呢?他们是从学校学到的吗?(我不这么认为)。如果他们这样做,他们学习什么?他们使用哪些书?如果他们不这样做,怎么样?
答案 0 :(得分:4)
我在Linksys路由器的反向工程固件上发现了这篇优秀的博文,
http://www.devttys0.com/2011/05/reverse-engineering-firmware-linksys-wag120n/
详细说明了如何对固件进行反向工程,以明确的步骤进入文件系统。如果您可以按照这些步骤操作,那么您将非常了解破解固件所需的操作。
我认为您不需要大量的电子知识来破解固件,基本的101级知识就足够了。如果您了解基本的操作系统和系统,那么您应该能够顺利完成工作。
答案 1 :(得分:2)
黑客攻击一个无证件的系统是一项微不足道的任务。你肯定应该学习C并练习嵌入式编程,并且对电子学的良好了解将有很大帮助(如果你在google上找不到任何文档,你必须查看电路并猜测它是如何工作的)。 我的建议是:让一些(有记录的)ARM板开始攻击(beagleboard / pandaboard浮现在脑海中)。如果你愿意,你将学到很多关于Linux,C,内核开发甚至电子学的知识。 试图直接在电视系统上潜水可能会让你非常沮丧。
更新: 在电子方面,您不需要是电子工程师。研究大量数字电子产品,了解CPU,总线和通用外设的工作原理。大多数情况下,您可以查看任何芯片代码并搜索数据表,但有时它们是专门为一个设备设计的,或者根本没有标识。在这种情况下,您需要一个逻辑分析仪来对其进行反向工程并尝试理解如何与它“对话”。 您可以通过书籍学习CS和电子学,但真正的逆向工程只能通过经验学习(当然,学习别人做事情有多大帮助)。 继续并打开您感兴趣的设备,尝试了解它们的工作方式并改变其中的内容。你肯定会烧掉其中的一些(从更便宜的那些开始),但这是学习如何破解设备的最好方法。
在使用高压设备(液晶电视确实有一些高压设备)时要注意不要死!
答案 2 :(得分:0)
需要考虑的合适的开发板,拥有非常活跃的社区,即如果您遇到困难也很容易获得帮助: - )
在开始执行更困难的任务之前,先从他们那里了解嵌入式系统
答案 3 :(得分:-2)
是的,C语言知识很重要。
首先尝试学习 Raspberry Pi ,然后跳转到 Adruino 。
你可以在facebook和Google中找到这么多社区,加入并加入你自己。
然后你可以学到很多黑客