This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TM4C123GH6PZ:保护闪存上的软件

Guru**** 1829950 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/668226/tm4c123gh6pz-protecting-the-software-on-flash

器件型号:TM4C123GH6PZ
主题中讨论的其他器件:TM4C123

您好!

我们将使用 TM4C123处理器创建器件、

我注意到在 LM 闪存编程器中有一个选项可以"将闪存内容上载到 a.bin 文件"。

这是不需要的、因为我不希望任何人访问我们的软件。

 我是否有办法通过软件 阻止从器件中提取闪存?

谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Nadav、

    为了防止 LMFlash 编程器访问闪存、BOOTCFG 寄存器中有 DBG0和 DBG1位阻止 JTAG 访问。 但是、这可以由 LMFlash 编程器撤消、同时也可以批量擦除闪存。 如果你只想防止软件被读取、这是一个部分有效的方法、因为闪存随后将被擦除(更多地说明它是部分的原因)。 为了防止 LMFlash 编程器能够清除 BOOTCFG 寄存器+执行闪存批量擦除、您需要通过将 JTAG 引脚变为输入来禁用电路板上的 JTAG、或者使用其他一些方法来阻止 LMFlash 与 JTAG 接口通信。

    现在、对于部分器件... 听起来您的总目标是防止从器件中提取闪存。 如果是、请记住、这不是一款高安全性器件。 您可以设置一些障碍来使生活更加困难、例如防止 JTAG 被使用、但无法完全保护器件免受所有形式的闪存提取的影响、因此请注意这一点。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Ralph Jacobi">现在、部分器件... 听起来您的总目标是防止从器件中提取闪存。 如果是、请记住、这不是一款高安全性器件。 您可以设置一些障碍来使生活更加困难、例如防止 JTAG 被使用、但无法完全保护器件免受所有形式的闪存提取的影响、因此请注意这一点。

    很高兴看到这一点。 我要强调的是,这样做很可能是很便宜的。 这样做还会限制您访问已编程微控制器的能力。

    Robert

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的、谢谢。
    另一层保护可能是为每个器件添加一个唯一的密钥、该密钥将链接到 DID0和 DID1寄存器中的值。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    愿这位“迟到”的记者——加上“外人的喜悦”——这位供应商代理人没有这样做,他的愚蠢行为是:“低于10美元的设备可能受到充分保护,不会被“窥视”!

    来自该供应商和所有其他供应商的此类 MCU (重要的是、这不是"供应商弱点")只能"抛掷"、 "相当微弱的代码安全 防御!"   

    正如"华尔街"的金融监管机构试图"确保监管合规性"一样、此类任务(与您的任务几乎相同)面临以下现实:

    • 被调节的(在您的情况下为代码断路器)"稳压器"或"将会"代码保护器(通常)智能得多。  (即小批量、MCU 用户-抱歉!)
    • 被监管的人  "日常工作"(无人机)监管者具有更强的动力。   代码断路器通常(非常)得到良好的回报-因此、动机达到了顶峰
    • 受监管者 往往监管者"装备更好"。   在您的情况下-执行您将要执行的操作-我可以"解密"您的 MCU - X 射线 (如果需要)-然后您的代码"裸机!"

    禁用 JTAG (或其他"绷带")可能会阻碍"未完全装备的初中学生"的工作、但可以快速/轻松地通过"熟练、装备、经验和动力"来克服!

    如果您,“在此处查看用户的安全尝试”(通过论坛的“搜索”框)-您将注意到,“高发生次数”的用户... "锁定(仅限)自己!"   令人愉快——和诗意……

    因此、您的"产品成功"应该是源于"安全"、而不是源于"安全"、而是:

    • 快速进入市场-他很早就到达-获得最高利润-最大收益
    • 合理数量的所需功能
    • 极具吸引力的价格
    • 清除操作手册
    • 高于平均用户支持水平
    • 适当的质量控制
    • 创新型分销
    • 有效的促销和广告

    这些都不会"阻止"您的芯片"黑客"。   然而、它们为"您(或许不明智)寻求获得的"在 市场中取得成功提供了最佳机会!

    正是销售成功可持续发展证明了一个更"恰当"和(或许)可实现的目标!     保护低于10美元的芯片-没有那么多...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您似乎是对的、
    我们没有机会保护软件免受黑客的攻击。

    顺便说一句、我阅读了更多内容、并看到 DID0和 DID1并不是每个 MCU 所独有的、因此这甚至不会帮助我更加努力。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢您-我"不"是对的-我的目标是展示 "现实"。   我们(有时)为一个类似的半巨人而工作、"失去了我们的头脑、失去了我们的准则"、因此不得不通过"低于传统手段"来恢复准则

    也要接受-除非您的发展是"特别独特和有灵感的"、否则(任何人)不太可能"关心您的代码!"  (*)

    因此-您正在为"看不见"攻击者(更有可能是不存在的攻击者)订购"低效保护"!    这种做法没有太大意义--这是不是吗?
    如上所述、最延迟、注意力不集中和最"锁定"的人将是您!

    上一篇文章中的要点介绍了那些策略、这些策略使"3个群星和我找到了-然后将技术公司 公开!"。   该帖子中的内容是否证明不值得 "解决"?  

    通过充分的"努力、专注、经验、幸运和"接纳现实"、您也可以达到这样的高度... (但绝不通过"安全!")

    (*) 如果您/公司向"一个或几个客户"提供某种数量的产品、则他们(客户)很可能会"感兴趣、"在您的代码中!"   (AS -携带您的代码-和"板副本"-它们(操作上)可免费"从图片中删除您/公司!")    适当订立的合同以及软件版权和"特殊功能"可能会减少/阻止这种可能性。