Multi Source Translation Content

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Multi Source Translation Content

讨论

排序依据:
Bootloader 软件的安全启动验证 大家好 1. 我们如何对引导加载程序软件本身进行安全启动验证? 如果引导加载程序本身初始化了 CSEc,那么我们就已经在运行未经验证的代码了。 2. 如果引导加载程序区域被锁定为读/写/擦除保护并禁用了 JTAG,我们可以跳过引导加载程序的安全启动验证吗? 它还能被篡改吗? 我们还需要强制对 Bootloader SW 进行安全启动验证吗 谢谢。 Re: Secure Boot validation for Bootloader SW 你好@Kishore_14 1.这需要通过生产流程和适当的应对措施来管理。通常,应在安全的环境中对设备进行编程和配置,只有获得批准的人员才能访问等。 S32K1 设备不具有使此过程更加安全的功能,因此应由用户来安装适当的环境。例如,S32K3 在 ROM 密钥目录中拥有公钥,而私钥则完全归恩智浦所有,因此恩智浦可根据要求签署客户应用程序/数据。这是下一级保护。但 S32K1 上没有这样的东西。 2. 不存在 100% 安全的设备。每种保护都可以绕过。目标是尽可能地使网络安全突破变得困难,并使努力不合理,成本低廉。因此,我们的建议是实施所有级别的保护,包括安全启动。 问候, Lukas
查看全文
S32K312 - a MCAL pointer variable point to a self-defined variable Hi, I am using s32k312 and MCAL version is 5.0.0, the startup and linker files is based on MCAL package. I defined a bool variable named LibDiagCom_Initialized, and I found in the LiveWatch and memory it was changed unexpectedly. I set a data breakpoint and found a struct variable with a pointer was changing the memory.  So is this pointer a wilder pointer? Re: S32K312 - a MCAL pointer variable point to a self-defined variable Hi@yumi From the screenshot you provided, I don't see any relationship between "LibDiagCom_Initialized" and "Lpspi_Ip_axStateStructure". Is there a problem? My understanding of a "dangling pointer"(野指针) is usually that it points to an unknown, random location. I don't see that problem here. Re: S32K312 - a MCAL pointer variable point to a self-defined variable Hi Selent, From the Live Watch, you can see the location of 'LibDiagCom_Initialized' is 0x2040 37df, and the pointer RxBuffer in Lpspi_Ip_axStateStructure point to 0x204037DC.  I set a data breakpoint for LibDiagCom_Initialized, the scenery is LibDiagCom_Initialized value is changed by the RxBuffer at the data breakpoint, as shows in another picture. So my question is: Shouldn't the RxBuffer in Lpspi_Ip_axStateStructure point to somewhere at initialization? If not, is it a dangling pointer?  Re: S32K312 - a MCAL pointer variable point to a self-defined variable Hi@yumi In the image you provided, I did not see that the value of "LibDiagCom_Initialized" had changed. You'd better provide me with your test routine, because I still don't understand it. I don't see any problems in the images you provided.
查看全文
安卓音频编解码器 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我正在尝试让音频在安卓系统内运行。我的板基于 QSB,但使用不同的音频硬件(TI 的 TLV320AIC23B)。Linux 和 Android 源代码均已修改,新驱动程序在 Linux 中加载无故障,Android 也能识别。当我播放 .wav但是,在使用飞思卡尔专有库解码数据的 Android 系统中播放压缩音频时,音质很差。在检查 SSC 总线上的 i2s 信号后,我发现很多音频帧都不包含数据,都是低位。这种情况每隔 10 毫秒左右出现一次,每次 2 或 3 毫秒左右......是否有人在使用飞思卡尔的编解码器库和不同的 ALSA 驱动程序时遇到过类似问题?或者谁能解释如何在没有飞思卡尔专有音频编解码器的情况下版本飞思卡尔安卓系统? 另一方面,我已经让安卓系统和飞思卡尔编解码器库与 Maxim 的 Max9850 音频 DAC 配合使用,我很乐意为新手指点迷津。 Android Re: Android Audio Codecs 嗨,您可以查看本指南,了解如何在 Android 和 Linux 平台上调用音频 https://siliconsignals.io/audio-codec-bring-up-simplified-your-guide-to-android-linux-bsp-development/ Re: Android Audio Codecs <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 嗨,马克、 你的回复是 Bang-on.我们没有注册 iim 设备。即使在梦中,我们也没有想到音频代码和IIM设备之间可能存在某种关系。 我不知道该如何感谢你。我们与飞思卡尔技术支持部门联系了几个月,但一直没有得到解决方案。 非常感谢& 。 普拉尚特 马克-奥利弗-韦斯特堡说: 问题解决了吗? 至少在我们的案例中,问题是由于"/dev/mxc_iim" 和"/dev/mxc_mem" 这两个文件的权限错误造成的。根据飞思卡尔的支持,至少有一些编解码器会访问这些数据,以验证它们是否确实在 i.MX-SoC 上运行,如果检测失败,还会故意注入噪声。这些文件的权限必须设置为 0664,而且相应的内核驱动程序必须正常启动和运行。 Re: Android Audio Codecs <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 问题解决了吗? 至少在我们的案例中,问题是由于"/dev/mxc_iim" 和"/dev/mxc_mem" 这两个文件的权限错误造成的。根据飞思卡尔的支持,至少有一些编解码器会访问这些数据,以验证它们是否确实在 i.MX-SoC 上运行,如果检测失败,还会故意注入噪声。这些文件的权限必须设置为 0664,而且相应的内核驱动程序必须正常启动和运行。 Re: Android Audio Codecs <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 我们正在使用基于 i.MX53 的定制板和飞思卡尔的 SGTL5000 音频编解码器(与飞思卡尔的 QSB 设置类似),但也面临着类似的问题:使用安卓媒体播放器播放 WAV 文件(单声道、立体声、不同的采样率)可以正常运行,没有任何问题。使用安卓的媒体播放器播放 MP3 或 OGG 文件会产生大量噪音,但原始音频数据仍可识别。 作为尝试,我们删除了飞思卡尔的 MP3 编解码器,但保留了飞思卡尔的所有其他编解码器。在这种情况下,Android 似乎使用自己的 SW 编解码器来播放 MP3,而且效果很好,没有任何噪音或失真。在此实验配置中,视频仍由飞思卡尔编解码器处理,但 MP3 音频流仍无法正常工作,并显示出相同的音频问题。不过,视频编解码器本身(H.263、H.264/AVC 和 MPEG2)似乎工作正常。 在我们的案例中,这些音频问题不仅发生在飞思卡尔的 MP3 编解码器上,也发生在 OGG 和 AAC 编解码器上。这些编解码器是否也存在类似问题? 我们已经尝试过飞思卡尔安卓版本 R10.3、R10.3.1 中的编解码器,在我们的系统上,R10.3.2 和 R10.4 以及所有版本似乎都出现了同样的问题。 此致, 马克 Re: Android Audio Codecs <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 你好,内特、 事实上,我们也面临着同样的问题。我们有一款基于 i.MX53 处理器的定制板。我们正在使用飞思卡尔的 SW 音频编解码器。我们已经在opencore中加入了黑客来在多个阶段TAP解码器的输出。当我们播放 MP3 单声道文件时,输出帧大小为 1152 字节。在所有帧中,最后 576 字节为零。如果是 Mp3 立体声,则文件帧大小为 2304 字节。再一次,在所有帧中,我们看到最后 576 字节 0。立体手机壳与您的手机壳类似(10 毫秒数据后 3 毫秒为零)。 飞思卡尔说,这些音频编解码器是使用ARM/Neon进行软件优化的。您说您能用 Maxim 的 Max9850 音频 DAC 正常运行这些编解码器,是什么意思?音频 DAC 如何影响音频解码器的输出? 也许我们遗漏了什么。您能给我们一些指导吗?如蒙答复,我们将不胜感激。 先行致谢。 此致 普拉尚特 Re: Android Audio Codecs <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 飞思卡尔音频编解码器针对飞思卡尔板编解码器进行了优化,因此我认为它不是一个适合您的情况的编解码器。 看看板描述符文件(在 设备/ 下)我知道有一个变量表示预建的真/假。 我不确定视频编解码器是否有一个变量,音频是否有另一个变量。但这可能是你更改 Makefile 所需要的线索。 Re: Android Audio Codecs <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 内特,通话时音频也能正常工作吗?我已经使用外部编解码器安装了 SABRE 板,它可以播放音频文件,但是当我接到 VoIP 电话时,两个方向都没有音频。是否需要在驱动程序中设置一些特殊的东西才能使编解码器在语音通话中运行? 谢谢! Scott
查看全文
什么是“电源”?——入门指南——第三部分:电压追踪器(日语博客) 这次,我们将讲解电压跟踪器。 电压跟踪器是一个不常听到的术语。 Voltage = 电压,tracker = 跟随的东西,所以如果按字面意思理解,它的意思是“跟随电压的东西”。 事实上,电压跟踪器是一种输出电压几乎等于输入电压的装置,如图1所示。当输入电压变化时,输出电压也会相应变化。正是这种特性使其被称为电压跟踪器,因为它“输出的电压与输入电压相匹配(跟随)”。 blog3-1.png 图 1 电压跟踪器行为 那么,在哪些情况下会使用电压跟踪器呢? 第一个电源用于在稳压器输出电流不足时补充其输出电流的不足。 例如,如果你有一个能够输出 100mA 的线性稳压器,但你需要 150mA 来为你的电路供电,你可以从电压跟踪器获得额外的 50mA(参见图 2)。 blog3-2.png 图 2 添加电压跟踪器 从这个角度来看,你可能会认为用线性稳压器代替电压跟踪器就能解决问题,虽然这在某些方面是正确的,但这也带来了一个问题。 例如,如图3所示,即使原有的100mA线性稳压器的输出电压发生波动,新增线性稳压器的输出电压也不会改变。在这种情况下,电路输入电压存在差异,这可能导致电路故障。而使用电压跟踪器后,则不存在这种差异,因此电路的工作状态如同仅由单个稳压器输出一样。 blog3-3.png 图 3 添加线性稳压器   如图 4 所示,第二个电源用作参考电源的附加电源,用于在使用 AD(模数)转换器进行比率测量时。在比率测量中,参考电压和传感器电源必须使用相同的电压,因此通常使用电压跟踪器。 blog3-4.png   图 4 比率测量图像 虽然这与电源的讲解有点偏离主题,但我下次会专门讲解比例测量。 最后,下表显示了电压跟踪器和线性稳压器之间的区别,它们的机制类似。 物品 线性稳压器 电压跟踪器 输入和输出关系 输入电流和输出电流几乎相同。 输入电压 > 输出电压。 输入电压和输出电压几乎相同。 噪音 低的。 低的。 所需零件数量 很少。 很少。 以往的文章可从NXP“电源”摘要页面(日语博客)访问,请查看。 ========================= 我们目前无法回复此帖子“评论”部分的评论。 对于由此造成的不便,我们深表歉意。如有任何疑问,请参阅“ NXP技术问题-如何联系我们(日语博客) ”。 (如果您已经是恩智浦的分销商或与恩智浦有合作关系,您可以直接询问负责人。) 如果您想知道“什么是电源?”,本页总结了您需要了解的第一件事。 在第三部分中,我们将解释电压跟踪器。 (阅读时间:5分钟) 采购和市场营销中心 日本博客
查看全文
HSEインストール用の16進数をフラッシュした後、コードがメインにジャンプしない こんにちは、 HSE ファームウェアのインストールサンプル コードを s32K312 に移植しました。 MCU をフラッシュした後、HSE ファームウェアをインストールしてデバッグ モードで実行することはできますが、プロジェクトの 16 進ファイルを直接フラッシュすると、MCU をリセットした後にメインにジャンプしないため、ファームウェアがインストールされないという問題が発生します。 IVT を使用したインストールを使用しています。リンカーファイルとboot_header.cをご覧ください。参照用のファイルです。 そして、その解決策を提供します。 Re: code not jumping to main after flashing hex for hse installation S32K312 が 16 進ファイルのフラッシュ後にメインにジャンプしない (ただしデバッグ モードでは動作する) 理由をデバッグするには、いくつかの重要な領域に焦点を当てる必要があります。 IVTとブートヘッダーの構成 IVT/ブートローダーとリンカースクリプトの整合 リセットベクトルとブートエントリの動作 ウォッチドッグのリセットまたは早期障害の可能性 HSE ファームウェアのインストールを IVT に移植し、スタンドアロンの 16 進フラッシュに関する問題について言及しているので、リンカー スクリプトを共有してください。これらを確認すると、設定ミスやセットアップ手順の不足がないか特定するのに役立ちCANます。mymilestonecard.com アクティベート Re: code not jumping to main after flashing hex for hse installation リセット後にアプリケーションが起動しないが、デバッグ モードで動作するという問題の場合、ほとんどの場合、次の原因が考えられます。 IVT が間違ったリセット ベクトルを指しています HSEファームウェアアドレスの不一致 リンカーが IVT/boot_header を正しい場所に配置しない リセットベクターセクションが正しくマップされていません publixsurvey.com Re: code not jumping to main after flashing hex for hse installation こんにちは、 私は s32k344 用に提供されたサンプル コードを移植し、確認したところ、リンカー ファイルが s32k344 と同じであることがわかりました。 メッセージにファイルを添付しました。確認して、何が間違っているのか教えてください。 Re: code not jumping to main after flashing hex for hse installation こんにちは、 S32K312 の場合、リンカー ファイルと boot_header.c で IVT とブート構成が正しく設定されていることを確認します。HSE GPR ステータス レジスタをチェックして、ファームウェアが存在するかどうかを確認します。問題が解決しない場合は、不適切な IVT 更新によって起動に失敗する可能性があるため、IVT 更新プロセスを NXP サンプル プロジェクトに合わせてください。 Re: code not jumping to main after flashing hex for hse installation 解決策をご提供ください
查看全文
HSE アプリケーションの更新 - フルメモリモードでアプリケーションを更新する方法 私はan745220-S32K3 HSEトレーニング - Oct2022(2.0)を読んでいます。完全なメモリのための HSE FW 更新手順に関するセクション。 少し混乱していますが、これはアプリケーション コードを更新することではなく、HSE FW 自体を更新することが目的のようです。 HSE FW は工場で固定され、アプリケーション ダウンロードの OTA を認証するために使用されると予想していました。 アプリケーション コードを更新し、認証するにはどうすればよいでしょうか?CAN ダウンロードを暗号化し、HSE を使用して復号化することはできますか? S32K344-WB Re: HSE Application Update - How to update the application in Full Memory Mode RM758225-RM00286 HSE-B ファームウェア リファレンス マニュアル - V2.5(2.5).pdf。これが私が必要としていたものです。ありがとう。 Re: HSE Application Update - How to update the application in Full Memory Mode A1. RM758225-RM00286 HSE-Bファームウェアリファレンスマニュアル - V2.5(2.5).pdf の 表37.主要カタログを お読みください。 HSE ファームウェアは、安全な HSE メモリ領域 (HSE コード フラッシュ) に保存されます。 ファームウェアのインストール中に「3.2.4 フラッシュ メモリ レイアウト (FULL_MEM)」 の章と、 「RM758225-RM00286 HSE-B ファームウェア リファレンス マニュアル - V2.5(2.5).pdf」 の 「3.5.5 S32K344、S32K314、および S32K324 デバイスのフラッシュ メモリ レイアウト」をお読みください 。 A2.HSE は現場で更新CANますが、アンインストールすることはできません。アプリケーションをダウンロードするたびに HSE FW を更新する必要はありません。 RM758225-RM00286 HSE-Bファームウェアリファレンスマニュアル - V2.5(2.5).pdf の第 11章「HSEファームウェアアップデート」 をお読みください。 申し訳ありませんが、これについてはよく分かりません。HSE 関連の問題は、一般社会での議論には適していません。https://www.nxp.com/support/support:SUPPORTHOME?tid=sbmenu で サポート チケット を送信することをお勧めします。私の同僚があなたを助けます。 Re: HSE Application Update - How to update the application in Full Memory Mode ご返答ありがとうございます。これによって一つの問題が解決します。 私のプロジェクトにはブートローダーとアプリケーションがあります。ブートローダーは一度ロードされ、現場で更新されることはありません。通常、ブートローダーを使用して、新しいアプリケーション イメージをダウンロードし、フラッシュに書き込みます。通常、新しいイメージを検証するには、CRC チェックの基本的な手段を使用します。 HSE について読んでみると、アプリケーションをより安全に更新するために使用できるようです。あなたの電子メールとドキュメントから、HSE FW を最初にロードする必要があることがわかりました。 これは、A/B スワップではなく、完全なメモリ アプローチを使用していると仮定した場合の、プロセスの概要についての私の理解です。 HSE FW をインストールしますが、関連する HSE ハードウェアがあると思います。HSE には独自の保護されたメモリ領域がありますか、それとも製品ボードの NVM を使用してキーを保存しますか? HSE ファームウェアは製品フラッシュに保存されますか、それとも安全な HSE メモリ領域に保存されますか? HSE は現場で更新CANますが、アンインストールすることはできません。アプリケーションをダウンロードするたびに更新する必要がありますか? ARINC 429 などの通信バス経由で新しいアプリケーションをダウンロードすると、HSE FW がこれを認証します。私の理解するとおりです。送信者は対称キーを使用して GMAC コードを作成し、新しいアプリケーション イメージとともにバス経由で送信します。HSE は独自のキーのコピーから GMAC を再作成します。次に、これら 2 つを比較してアプリケーション イメージを認証します。 使用中のキーはCAN変更できますか?それはどうやってやるんですか? 全体的に見て、これはあまり安全ではないようです。何が足りないのでしょうか?ハッカーがそのキーを入手した場合、希望するソフトウェアをダウンロードできます。 さらに、ダウンロード前にイメージを暗号化し、HSE が別の非対称キーを使用してそれを復号化することは可能ですか?それはどのように機能するのでしょうか。 フルメモリモードを使用するので、NVM キーカタログを作成する必要はないと思います。それは正しいですか。BSB は ADKP のワンタイム生成キーを使用します。それはどこに保存されていますか? HSE はダウンロードを自動的に認証しますか、それともそれをリクエストする必要がありますか?HSE が現在このタスクを実行している場合、ブートローダは検証においてどのような役割を果たすのでしょうか?HSE はブートローダーのこの部分を置き換えますか? ブートローダーは、依然として新しいイメージのダウンロードを容易にする必要があります。 助けてくれてありがとう。私が言ったことの間違いがあれば訂正してください。このプロセスについてさらに詳しく説明していただければ幸いです。 Re: HSE Application Update - How to update the application in Full Memory Mode ハイ はい。これは HSE FW 自体を更新するものであり、アプリケーション コードを更新するものではありません。 OTAに関しては、前回の議論を参照することをお勧めします: A/BスワップOTAアップデートを備えたデュアルアプリケーションブートローダー - S32K3XX よろしくお願いします、 ロビン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「解決策として承認」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 ---------------------------------------------------------------------------------
查看全文
更改时钟设置后 gpio 无法工作 在 s32k324 上,当我们将时钟设置从 160Mhz PLL 更改为 48Mhz FIRC 时,GPIO 不再工作。gpio,而不是任何特定引脚) 我们使用 RTD MCAL API Mcu_InitClock(),更改时钟设置。   但在我们将 PLL 更改为 FIRC 后,我们发现如果读取 GPIO 引脚,即使 HW 为低电平,它们也总是返回高电平。   您有什么建议吗? Re: gpio not works after change clock settings 我们发现必须调用 Mcu_Init()。 Re: gpio not works after change clock settings 你好 有一个热电阻示例Mcu_Example_S32K344,可通过Mcu_InitClockAPI 切换时钟设置。你测试过吗? 您是否在时钟工具中启用了 SIUL2 的时钟? Mcu_InitClock ClockConfig.png 如果还是不行,请给我发送一个简化的测试项目。 祝好, Robin ------------------------------------------------------------------------------- 注: - 如果本帖回答了您的问题,请点击"ACCEPT AS SOLUTION" 按钮。谢谢! - 我们会在最后一次发帖后的 7 周内跟踪主题,之后的回复将被忽略 如果您以后有相关问题,请另开新主题并参考已关闭的主题。 -------------------------------------------------------------------------------
查看全文
阻塞 i2c 模块问题 早上好、 我正在实施一个大型项目。我每隔几毫秒就运行多个中断。不幸的是,我意识到它与 i2c 模块有冲突,因为我正在使用 i2c_masterTransferBlocking 函数对其进行轮询。这样,它就阻止了我的多次中断。因此,我决定在中断中也使用 i2c 模块。遗憾的是,我不知道如何才能最好地通过中断执行传输,而不需要等待一段时间来完成传输。附件是我目前正在做的一个经过简化的项目,以便我了解如何以最佳方式进行 i2c 传输并在显示屏上打印。 您能就此给我一些建议吗? 预先感谢 。 Re: Blocking i2c module problem 你好@Transidico, 为了更好地帮助您,您能否说明是否需要终止 I2C 传输才能显示消息? 如果是这样的话,您的应用程序似乎本身就是阻塞的,因为它需要另一个进程完成后才能继续。鉴于这种依赖性,你们目前实施的方法似乎是最合适的解决方案。 希望对你有所帮助。 BR Habib Re: Blocking i2c module problem 对不起,有什么答案吗?
查看全文
PCF2131TFY 电池电量 使用 PCF2131TFY 的产品出现间歇性问题,一些板会在短短几天内耗尽电池电量。安装的电池为 CR2032。诊断这个问题有什么注意事项吗?这个部件是否存在已知问题? Re: PCF2131TFY Battery Draw 结果发现问题出在所有印刷电路板上都有一些多余和未清除的助焊剂,导致电流过大和电池耗尽。 Re: PCF2131TFY Battery Draw 对于一些未使用的引脚,请按照以下建议进行设置: 客户在应用中不使用这些引脚时,可将 CLKOUT 和 TS1-4 引脚打开。 用户可通过设置 CLKOUT_ctl 寄存器(13h)的位[2:0] = 111b 将 CLKOUT 引脚设置为高 Z 模式。通过设置 Control_4 寄存器(03h)位 [7:4] = 0000b 和 Control_5 寄存器(04h)但 [7:4] = 0000b,将 TS1-4 引脚设置为非活动引脚。   Re: PCF2131TFY Battery Draw 我给你发了私信。 Re: PCF2131TFY Battery Draw HI 您能在这里分享一下您的原理图吗?
查看全文
マルチキャストVLANタグ付き不正パケットによりEMACが異常な送信を行う こんにちは、チームの皆さん この問題はhttps://community.nxp.com/t5/S32G-Internal-Community/Malformed-Undersized-frame-cause-PFE-VLAN-bridge-forwarding/td-p/2174314から引用されています。 調査の結果、以下の方法でS32G RDB2上で再現できました。 環境: PC -- 不正なパケット --> EMAC1 --> PFE VLAN_BRIDGE --> EMAC2 --> PC、Wireshark FCI 構成: libfci_cli bd-add --vlan=2 for x in emac1 hif0 hif1 hif2 ; do libfci_cli bd-insif --vlan=2 -i $x --tag=ON; done for x in emac2 ; do libfci_cli bd-insif --vlan=2 -i $x --tag=OFF; done libfci_cli phyif-update -i emac1 --mode=VLAN_BRIDGE libfci_cli bd-print 不正なパケットをEMAC1に送信しています。不正なパケットは、通常の IP パケットを切り捨てることによって形成されます。 その後、異常なパケットを Wireshark で観察CAN。主な条件は次のとおりです。 VLANタグ付き不正パケット、 パケットはEMAC2、HIF0、HIF1、HIF2に転送されます。 EMAC2ではVLANタグが削除されます 実験の結果、GPI_DTX_ASEQ を 0x60 に初期化するとこの問題を回避CANことがわかりました。 DDR バッファのレイアウト。 これをどう説明すればいいのでしょうか、根本的な原因は何でしょうか? よろしくお願いいたします ライダー PFE Re: Multicast vlan tagged malformed packets cause EMAC to send abnormal こんにちは、セバスチャン。 G3 では問題が再現されませんでした。レプリカ数が 4 未満の場合、この問題は発生しません。また、Post 分類ヘッダーに問題は見つかりませんでした。SO、FW の問題ではないと考えています。 Re: Multicast vlan tagged malformed packets cause EMAC to send abnormal マニュアルでは x40 または x50 と記載されているレジスタに x60 を書き込むという提案された解決策は非常に危険であるように思われます。aseq_len の値は、ハードウェアの回避策とパフォーマンス (G3 でも異なります) のために、長年にわたって数回変更されています ( AAVB-2028およびリンクされたチケットを参照)。おそらく、この価値を再検討CANでしょう。この問題は G3 でも発生しますか? 通常、VLAN タグは GPI HW ブロックによって追加/削除されます。しかし、GPI はチェックサムの小さなフレームに対してはバグが多いことが分かっています。VLAN タグの追加/削除にもバグがあるようです。SO、おそらく PFE FW で回避策を実装する必要があるでしょう。 FW バグ チケットANET-897を作成しました。分析の計画を開始し、PFE チームで問題を再現してみるCAN。 PS: Lauterbach でパケットをダンプするときは、ネットワークのエンディアンを確認できるように/byteオプションを使用してください。Wireshark でキャプチャしたパケットを前後に取得しておくと役立つかもしれません (リンクされたチケットでCAN)
查看全文
LS1046AのTA_PROG_SFPピンは常に1.8V電源にコネクテッド。 こんにちは、 LS1046Aを使用しています。 チェックリストから、「セキュア ブート プログラミング中は 1.8 V のみを供給する必要があります」ということがわかりました。通常の動作では、このピンは抵抗器を介してプルダウンする必要があります。' しかし、何らかの理由で、LS1046A の TA_PROG_SFP ピンは、私たちのデザインでは常に 1.8V 電源にコネクテッドされています。このデザインにはどのようなリスクがあるのでしょうか? ご回答をお待ちしています。 Re: The TA_PROG_SFP pin of the LS1046A is always connected to a 1.8V power supply こんにちは@KunChen この投稿があなたに届いていることを願っています。 どういたしまして。お役に立てて嬉しいです。 他に何かお手伝いCANことがございましたら、お気軽にご連絡ください。 すてきな一日を!。 よろしくお願いいたします。 ヘクター・ビジャルルS Re: The TA_PROG_SFP pin of the LS1046A is always connected to a 1.8V power supply こんにちは、ヘクター。 ご返信よろしくお願いします。 Re: The TA_PROG_SFP pin of the LS1046A is always connected to a 1.8V power supply こんにちは@KunChen この投稿があなたに届いていることを願っています。 ご質問に関して、 この動作の結果、ヒューズが切れ、以前と同じ情報が上書きされ、再度プログラムできなくなります。 セキュリティ ヒューズ プロセッサ QorIQ LS1046A、LS1026A データ シート、Rev. 4、06/2020 のセクション 4 の次の情報を参照してください。 SFP ヒューズをプログラムするには、ユーザーは電源シーケンスごとに TA_PROG_SFP ピンに 1.8 V を供給する必要があります。TA_PROG_SFPはヒューズの持続時間中のみ電源を供給してください。 プログラミング サイクル。デバイスごとに 6 回のヒューズ プログラミング サイクルの制限があります。その他すべて TA_PROG_SFP は GND にコネクテッドする必要があります。シーケンス要件 TA_PROG_SFP の上昇と下降を図 9 に示します。デバイスの信頼性を確保するために、 ヒューズプログラミングは推奨ヒューズプログラミング範囲内で実行する必要があります 表4の温度範囲。 すてきな一日を! BR、 ヘクター・ビジャルル
查看全文
IMX9352的A55 debug口是否可以改为uart2 在开发IMX93过程发现,硬件是使用uart2作为a55的debug,目前在官方的imx93板子上进行修改,发现不行,需要具体怎么修改或是能不能修改a55的debug口呢?       在默认sdk中,imx93 a55 debug口为uart1,需要把55 debug口修改为uart2。   目前使用原厂的i.mx93开发板,尝试在6.6.23-2.0.0版本的sdk中进行修改,修改的补丁文件为0001-a55-debug-uart2.patch。   目前只对uboot源码进行修改。修改之后烧写新的uboot,uart1不输出,uart2输出乱码:   chenyuansen_2-1723603269601.png   uart1不输出log,可以理解,因为把a55的debug口改为uart2了。 uart2输出乱码,默认uboot源码里配置的串口波特率为115200波特率,这个并未进行改动。   还请确认一下,a55 debug口能不能改为uart2? 修改补丁是否遗漏其他修改? Re: IMX9352的A55 debug口是否可以改为uart2 可以了,问题解决了,非常感谢您的支持 Re: IMX9352的A55 debug口是否可以改为uart2 同步修改了optee-os与atf的源码,把debug口也修改为uart2就可以了(编译atf时我使能了opteed) Re: IMX9352的A55 debug口是否可以改为uart2 Hi 忘记ATF也改了: Zhiming_Liu_0-1727251403838.png Best Regards Zhiming Re: IMX9352的A55 debug口是否可以改为uart2 打了提供的这个补丁后,uart2是可以正常输出了,但是程序卡在spl阶段,不会跳到uboot阶段 打补丁:git apply use_uart2_as_console.diff。   chenyuansen_2-1727251021595.png chenyuansen_3-1727251026662.png   Re: IMX9352的A55 debug口是否可以改为uart2 Hi @chenyuansen  保留设备树的修改,去除board/freescale/imx93_evk/imx93_evk.c中的pad设置,我这边可以了。 Zhiming_Liu_0-1727234180469.png 顺便把dtsi里的clock补全 Zhiming_Liu_0-1727234416183.png Best Regards Zhiming Re: IMX9352的A55 debug口是否可以改为uart2 就算不修改,第三个串口也可以输出,应为第三个串口是uart1,默认为a55的debug口,第四个是uart2,默认是m33的debug口 Re: IMX9352的A55 debug口是否可以改为uart2 Hi @chenyuansen  我这边只修改SPL里的uart,可以在Type-C的第三个串口显示log。 Zhiming_Liu_0-1727144505943.png 拨码设置 Image (5).jpg Best Regards Zhiming Re: IMX9352的A55 debug口是否可以改为uart2 是用官方的板子进行测试,没进行硬件修改,使用type-c连接原厂板子的debug口 Re: IMX9352的A55 debug口是否可以改为uart2 Hi @chenyuansen  你们硬件上有改动吗,比如把UART2接出来?还是直接插上type-c的串口线? Best Regards Zhiming Re: IMX9352的A55 debug口是否可以改为uart2 这个地方也已经有修改了的 chenyuansen_0-1727058701693.png Re: IMX9352的A55 debug口是否可以改为uart2 Hi @chenyuansen  串口需要修改,请参考board/freescale/imx93_evk/imx93_evk.c Zhiming_Liu_0-1726820341121.png Best Regards Zhiming Re: IMX9352的A55 debug口是否可以改为uart2 抱歉,现在才看到回复,附件为补丁包 Re: IMX9352的A55 debug口是否可以改为uart2 Hi 请把0001-a55-debug-uart2.patch这个文件发过来。 Best Regards Zhiming
查看全文
i.MX7DのPLL出力周波数を変更するにはどうすればよいですか こんにちは。 i.MX7DのPLL出力周波数を変更するにはどうすればよいですか。 リファレンスマニュアルのPLLセクションに見つかりませんでした。 ありがとうございます。 Re: i.MX7D の PLL 出力周波数を変更するにはどうすればよいですか IMX7Dを使用しているため、DTSファイルには7d.dtsiが含まれているはずです、7D CPU周波数設定の場合は7d.dtsiを参照でき、Mコアの場合はSDKをダウンロードできます MCUXpresso SDK Builder Re: i.MX7D の PLL 出力周波数を変更するにはどうすればよいですか Linuxを使用していますか?はいの場合は、DTSIファイルでこれを設定でき、opp-tableを見つけます https://github.com/nxp-imx/linux-imx/blob/lf-6.6.y/arch/arm/boot/dts/nxp/imx/imx7d.dtsi Re: i.MX7D の PLL 出力周波数を変更するにはどうすればよいですか どのPLLを変更する必要がありますか?
查看全文
EVK 无法运行到主代码,调试模式下出现堆栈溢出 我首先使用 RT685 EVK 板。我导入了SDK示例代码,代码构建成功。我使用 SEGGER J-Link 探针进行调试,程序闪存没有问题。但代码如下: 在地址“0x1c04a”处中断,没有可用的调试信息,或者在程序代码之外。 0001c04a: bn 0x1c04a 我不知道为什么?我在调试中暂停这个,堆栈使用情况显示为溢出。现在我无法采取下一步行动。谁能帮助我?非常感谢。 i.MX-RT600 回复: EVK cannot run to main code and stack overflow handed in debug mode 現在已經可以正常工作了, 原來是我下載了SDK_2_16_000_MIMXRT685-AUD-EVK.zip, 但是我的開發板是RT685-EVK, 我重新下載SDK_2_16_000_EVK-MIMXRT685.zip已可以正常工作, 謝謝NXP的支持與協助. ,
查看全文
過熱時のi.MX8MPの自動パワーオン動作 私は congatec SMARC モジュールと imx8mp プロセッサを使用しています。 要件を明確にするために、次のことを行います。 SMARCモジュールの温度センサーが105°Cに達すると、システムの電源がオフになります。 現在、システムの再起動には手動で電源を入れ直す必要があります。 この動作を変更して、温度がトリガーしきい値を下回ったときにシステムの電源が自動的にオンになるようにしたいと思います。 この動作がSCFW(システムコントローラーファームウェア)で変更できることを示唆する参考文献が見つかりました。ただし、SCFW ファームウェアは i.MX8MP プロセッサには使用されません。 i.MX8MPのブート シーケンスは次のとおりです。 BootROM → SPL → BL31 (ATF - ARM Trusted Firmware) → OP-TEE (オプション) → BL33 (U-Boot) → Linux カーネル。 私たちの理解に基づくと、この行動に対処する可能性のある分野は次のとおりです。 a) BL31(ATF)の改造。 SNVS(Secure Non-Volatile Storage)内の設定の調整。 b) SMARC モジュールに存在する PMIC PCA9450Cを設定して、自動電源オンを有効にします。 PMIC コンフィギュレーションが正しいパスである場合は、自動電源オンの CONFIGURATION PCA9450C に関するドキュメントまたは詳細を提供できますか。 それとも、もっと良い解決策はありますか? 評価ボード Re: i.MX8MP の過熱時の自動電源投入動作 結局、ウェイクアップアラームを設定し、シャットダウンの直前にそれを設定するサービスを追加しました。したがって、システムがトリガーされたり、電源がオフになったりするたびに、アラームがトリガーされます。何もないよりはましです。 エコー +120 > /sys/class/rtc/rtc1/wakealarm   Re: i.MX8MP の過熱時の自動電源投入動作 親愛なるMarco_Savo、 BL31を変更することはオプションではありません。 2番目のオプションは、電源オンシーケンスを開始するためにPMIC_ON_REQをアサートする必要があるため、自動電源オンがないため、不可能です。 FPGA を使用して、PMIC_ON_REQ 信号をアサートできます。
查看全文
i.MX7D SABREのIVTはリリースできますか? こんにちは。 i.MX7Dを使用した回路ではDDR3Lを認識できません。 私はすべてを試しましたが、問題を解決することはできません。 i.MX7D SABREのIVTはリリースできますか? ありがとうございます。 Re:i.MX7D SABREのIVTをリリースできますか? i.MX7D SABREのIVTは、ボードとその構成に非常に固有です。セキュリティ上の懸念から、直接提供することはできません。必要な情報については、i.MX7D SABREのドキュメント、回路図、およびNXPサポートリソースを参照してください。
查看全文
iMXRT10xx SDK MCUBoot 版本 您好, 我正在使用带有 MCUXpresso SDK 24.12.00 的 imxRT1021 MCU 和 McuBoot 作为 SDK 的中间件元器件。 有办法知道 SDK 包含哪个 MCUBoot 版本吗? 我在代码中进行了搜索,但没有为 MCUBoot 定义任何版本... 谢谢您! Re: iMXRT10xx SDK MCUBoot version 你好! 刚刚在 SDK 文档中找到了 McuBoot 版本说明:应该是 2.0.0 MCUboot 版本说明 — MCUXpresso SDK 文档 afacotti_0-1752854285861.png
查看全文
OpenSSL 无法正确处理 refpem 密钥,nxp 方案正常工作 大家好, 我正在尝试集成 SE050 以便在 node.js 网络服务器中使用。我成功编译了包括 OpenSSL 提供商在内的中间件,还让 sscli 正常工作。 我使用 ssscli 创建了一个密钥对,将其注入 SE 并创建了一个 refpem 密钥。我还修改了系统的 openssl.cnf 文件,使其与 simwtop/demos/linux/common/openssl30_sss_se050.cnf 文件中的一致。 但是,与服务器的任何 TLS 连接都会在握手中失败,因为 OpenSSL 使用对密钥槽的参考作为实际私钥,而不是调用 SE050 提供商。 我还尝试让它与 OpenSSL CLI(即 openssl s_server)配合使用。我可以使用 nxp: 方案获得连接,但不能使用 refpem 密钥文件。 以下命令会导致错误: openssl s_server -accept 12345 -cert server.pem -key server.refpem.key -CAfile root.pem 错误: SSL3 alert read:fatal:decrypt error SSL_accept:error in error ERROR 20203CA4FFFF0000:error:1B80006E:lib(55):ossl_parse_query:trailing characters:../openssl-3.0.13/crypto/property/property_parse.c:454:HERE-->/usr/lib/libsssProvider.so 20203CA4FFFF0000:error:0A00041B:SSL routines:ssl3_read_bytes:tlsv1 alert decrypt error:../openssl-3.0.13/ssl/record/rec_layer_s3.c:1590:SSL alert number 51 shutting down SSL 不过,如果我使用 nxp 网址方案,就能成功连接到服务器。 openssl s_server -accept 12345 -cert server.pem -key nxp:0x6789ABCD -CAfile root.pem 但是,我无法在 node.js 代码中指定 nxp: 0x6789ABCD 密钥参考,但必须使用 refpem 文件。有办法做到这一点吗? 我还尝试通过在配置文件中指定一个 propquery,让 OpenSSL 优先使用 SE050 提供程序,而不是默认提供程序。但目前还没有收获。 # Relevant parts from openssl.cnf [openssl_init] providers = provider_sect alg_section = evp_properties [provider_sect] default = default_sect nxp_prov = nxp_prov_sec [default_sect] activate = 1 [nxp_prov_sec] identity = nxp_prov module = /usr/local/lib/libsssProvider.so activate = 1 [evp_properties] default_properties = ?provider=nxp_prov 如能得到任何帮助,将不胜感激! SE050 Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 我忘了说,我使用的 Node 版本是 20.12.2。 ,20.x 之后的版本可能没有这个问题,但我目前无法验证。 经过进一步调查,发现客户端解密问题是由于提供程序加载顺序不正确造成的。 不过,这个版本的 Node 在处理随机数生成方面存在问题。 问题与 Node 如何初始化提供程序有关。 node.cc 文件包含一个修复程序(在源代码中带有注释),但它不适用于 libsssProvider.so。 我在此分享一系列变通方法,以防有人遇到类似情况。 首先,我要说的是,这些都与 libsssProvider 有关,主要目的是不更改 Node 或 OpenSSL,因此显然可以采用其他更简洁的解决方案。 我不能分享代码,希望下面的信息足够清楚。 可用选项: 1.在 CMakeLists.txt 文件中,设置 SSS_PROV_DISABLE_SE05X_RNG 变量。 这就完全禁止了 SE05X 的随机使用。 这并不理想,但如果你没有任何特殊需要,它还是可行的。 2.在 sssProvider_main.c 中文件,更改 srands 结构的算法,使提供的名称不是已知名称之一(尤其不是默认名称)。 3. 与第 2 点类似,但在这种情况下,名称可选择由环境变量提供(srands 显然不能是常量)。这样,只有在 Node 应用程序中才能避免使用 SE05X 随机发生器,而将其用于其他用途。 有了这些选项, refpems 可以正常工作。 Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 我遇到了与@tksec 完全相同的问题。 如果使用 OpenSSL cli 工具,一切正常,我可以通过 libsssProvider.so 使用 SE052 模块中的密钥建立 TLS 连接。 关于 Node.js、我确认 libsssProvider 已加载,但握手总是失败,错误如下: SSL3 alert write:fatal:decrypt error SSL_connect:error in error 20109DB6FFFF0000:error:0A00007B:SSL routines:tls_process_cert_verify:bad signature:/usr/src/debug/openssl/3.2.1/ssl/statem/statem_lib.c:584: @Kan_Li所建议的通过 id 调用键似乎并不奏效: - 如果我在 options.key 中提供 refpem 文件的路径,服务器就能顺利启动并监听连接,但正如报告所述,握手失败。 - 如果我在 options.key 中提供 urk 密钥路径(nxp: ),应用程序就会崩溃。 -如果我在 options.key 中提供密钥参考 (nxp: ) 应用程序会崩溃 那么,能否请@Kan_Li分享一段可以成功初始化服务器的 Node.js 代码,假设如上所述,这应该可以正常工作? 谢谢! Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 嗨 @tksec, 你找到在 node.js 中使用密钥参考的合适方法了吗? 我也有类似的问题。我正在使用带有 OpenSSL 3.0.14 的 se05x-openssl-provider (v01.00.03) 来生成密钥对,但我无法按照 openssl 提供商 Github 仓库自述文件中的描述使用文件格式为 " 的 " 参考密钥。 其他两个版本(带有参考密钥的标签(示例-恩智浦:" 参考密钥文件路径 ")和带有密钥 ID 的 标签(示例-nxp: 0x12345678)运行良好。 自述文件内容如下:" 注意:使用此方法时,必须先加载 sss 提供程序。这将确保 sss 提供商可以解码引用密钥中存在的密钥 ID 信息 。 " 遗憾的是,我不知道如何做到这一点。通过在 openssl.cnf 文件中添加提供程序来加载提供程序对我来说不起作用。如果我想使用文件格式的参考密钥,我仍然会遇到解密错误。 在此先表示感谢。 致以最诚挚的问候 托马斯 Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 你好@tksec、 感谢您提供的信息!您使用 refpem 文件的用例是什么?签署&验证?我可以尝试在这里重现这个问题。 顺祝商祺! 坎 Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 你好@Kan_Li、 是的,我使用了 ssscli 工具。我运行的是 MW v4.05.00。我在另一个系统上用 OpenSSL 创建了原始密钥。使用 ssscli set 命令将其加载到 SE 中,并使用 ssscli refpem 命令创建 refpem。在使用 s_client、s_server、rsa 等 openssl 命令时,可以成功使用和解析该密钥。也可以使用 OSSL_STORE API(openssl 命令的内部功能)将其转换为 EVP_PKEY,但使用 PEM_read_bio_PrivateKey 无法解析,而 NXP 引擎(在 EmbSe_LoadPrivKey 中)和 node.js 都使用 PEM_read_bio_PrivateKey。 谢谢您! Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 你好@tksec、 您是如何为 RSA 密钥生成 refpem 的?您现在使用的是哪个版本的 MW?请予以澄清。 祝您愉快, Kan ------------------------------------------------------------------------------- 注: - 如果本帖回答了您的问题,请点击"标记正确" 按钮。谢谢! - 我们会在最后一次发帖后的 7 周内跟踪主题,之后的回复将被忽略 如果您以后有相关问题,请另开新主题,并参考已关闭的主题。 ------------------------------------------------------------------------------- Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 你好@Kan_Li 谢谢你说明 refpem 密钥只能用于 openssl 引擎。特别是 node.js 的问题在于,它们会直接对提供的任何密钥字符串调用 PEM_read_bio_PrivateKey 函数,而当密钥字符串不是 PEM 字符串或文件路径而是 uri 时,该函数显然会失效。目前还没有对 OpenSSL 提供商的直接支持。 我改回使用 OpenSSL 引擎,结果也遇到了类似的问题。使用 EC 密钥时工作正常,而使用 RSA 密钥时,在解析 PEM 文件时再次出现错误:1E08010C:DECODER routines::unsupported from OpenSSL。我调试了代码,可以将错误追溯到 PEM_read_bio_PrivateKey 函数,该函数在引擎代码中的 EmbSe_LoadPrivKey 中调用。 您知道在 OpenSSL 引擎中处理 RSA refpem 密钥的问题吗?如何解决这个问题?在我看来,RSA 的 refpem 比 EC 密钥的侵入性更强,这可能是个问题? Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 你好@tksec、 refpem 密钥文件仅适用于 openssl 引擎,但由于您使用的是带有提供程序的 openssl 3.xx,因此请使用"nxp:key_id" 代替。你可以将"se05x_mw_v04.05.01\simw-top\demos\linux\tls_client\scripts\tlsSeClient.sh" 与"se05x_mw_v04.05.01\simw-top\demos\linux\tls_client\scripts\tlsSeClient_3_0.sh" 进行比较,检查两者的区别。 我还想知道你对此是否有任何网络安全问题,实际上从我的选择来看,它只是大多数脚本应该接受的字符串,为什么不能在 node.js 代码中指定 nxp: 0x6789ABCD 密钥参考?请澄清。 祝您愉快, Kan ------------------------------------------------------------------------------- 注: - 如果本帖回答了您的问题,请点击"标记正确" 按钮。谢谢! - 我们会在最后一次发帖后的 7 周内跟踪主题,之后的回复将被忽略 如果您以后有相关问题,请另开新主题,并参考已关闭的主题。 -------------------------------------------------------------------------------
查看全文
OpenSSL は refpem キーを正しく処理しませんが、nxp スキームは機能しています こんにちは、皆さん。 SE050 を node.js Web サーバーで使用できるように統合しようとしています。OpenSSL プロバイダーを含むミドルウェアを正常にコンパイルし、ssscli も動作するようになりました。 ssscli を使用してキー ペアを作成し、それを SE に挿入して refpem キーを作成しました。また、システムの openssl.cnf を simwtop/demos/linux/common/openssl30_sss_se050.cnf のものと一致するように調整しました。 しかし、OpenSSL は SE050 プロバイダーを呼び出す代わりに、キー スロットへの参照を実際の秘密キーとして使用するため、サーバーへの TLS 接続はハンドシェイクで失敗します。 また、OpenSSL CLI (openssl s_server) でも動作するようにしてみました。nxp: スキームを使用して接続CANますが、refpem キー ファイルは使用できません。 次のコマンドを実行するとエラーが発生します。 openssl s_server -accept 12345 -cert server.pem -key server.refpem.key -CAfile root.pem エラー: SSL3 alert read:fatal:decrypt error SSL_accept:error in error ERROR 20203CA4FFFF0000:error:1B80006E:lib(55):ossl_parse_query:trailing characters:../openssl-3.0.13/crypto/property/property_parse.c:454:HERE-->/usr/lib/libsssProvider.so 20203CA4FFFF0000:error:0A00041B:SSL routines:ssl3_read_bytes:tlsv1 alert decrypt error:../openssl-3.0.13/ssl/record/rec_layer_s3.c:1590:SSL alert number 51 shutting down SSL ただし、nxp URL スキームを使用すると、サーバーに正常に接続 CAN ます。 openssl s_server -accept 12345 -cert server.pem -key nxp:0x6789ABCD -CAfile root.pem ただし、node.js コードで nxp:0x6789ABCD キー参照を指定することはCANず、refpem ファイルを使用する必要があります。それをなんとかする方法はあるでしょうか? また、設定ファイルでプロパティクエリを指定して、OpenSSL がデフォルトのプロバイダーよりも SE050 プロバイダーを優先するようにしてみました。しかし、今のところ運がない。 # Relevant parts from openssl.cnf [openssl_init] providers = provider_sect alg_section = evp_properties [provider_sect] default = default_sect nxp_prov = nxp_prov_sec [default_sect] activate = 1 [nxp_prov_sec] identity = nxp_prov module = /usr/local/lib/libsssProvider.so activate = 1 [evp_properties] default_properties = ?provider=nxp_prov どのようなご助力もいただければ幸いです。 SE050 Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 私が使用している Node バージョンは 20.12.2 であることをお伝えするのを忘れました。 20.x 以降のバージョンではこの問題は発生しない可能性がありますが、現時点ではこれを確認する方法がありません。 さらに調査を進めたところ、クライアント側の復号化の問題は、プロバイダーの読み込み順序が間違っていたために発生したことが判明しました。 そうは言っても、このバージョンの Node では乱数生成の処理に問題があることが判明しました。 この問題は、Node がプロバイダーを初期化する方法に関連しています。 具体的には、乱数ジェネレータの初期化で、sss_rand_get_ctx_params への呼び出しの無限ループが発生します。 node.cc ファイルには修正が含まれています (ソースにコメントが含まれています) が、libsssProvider.so では機能しません。 同じような状況に陥った人のために、いくつかの回避策を紹介します。 まず、これらはすべて libsssProvider に関連しており、主に Node または OpenSSL を変更しないことを目的としているSO、他のよりクリーンなソリューションが可能であることは明らかだと述べます。 コードを共有することはできませんが、以下の情報が十分に明確であることを願います。 利用可能なオプション: 1.CMakeLists.txt ファイルで、SSS_PROV_DISABLE_SE05X_RNG 変数を設定します。 これにより、ランダムに対する SE05X の使用が完全に無効になります。 理想的ではありませんが、特別なニーズがない場合は機能します。 2. sssProvider_main.cファイルで、指定された名前が既知の名前 (特にデフォルトではない名前) にならないSO、srands 構造体のアルゴリズムを変更します。これにより、openssl 構成ファイルでランダム キーを設定することで、必要に応じて SE05X ランダム モジュールを使用できるようになります。 3. ポイント 2 と似ていますが、このCASE、名前はオプションで環境変数で提供されます (srands は明らかに定数にすることはCANません)。この方法では、Node アプリケーションの場合にのみ、SE05X 乱数ジェネレーターの使用を回避し、代わりに他の用途でアクティブなままにすることができます。 refpems はこれらのオプションで正しく動作します。 Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working 私も@tksecとまったく同じ問題を経験しています。 OpenSSL cli ツールを使用してすべてが正常であれば、libsssProvider.SO を介して SE052 モジュールのキーを使用する TLS 接続を確立でCAN。 Node.jsでは、libsssProvider がロードされていることを確認しましたが、以下のエラーのように、ハンドシェイクは常に失敗します。 SSL3 アラート書き込み:致命的:復号化エラー SSL_connect:エラーでエラー 20109DB6FFFF0000:エラー:0A00007B:SSLルーチン:tls_process_cert_verify:不正な署名:/usr/src/debug/openssl/3.2.1/ssl/statem/statem_lib.c:584: @Kan_Liが提案したように、ID でキーを参照することは実際には機能しないようです。 - options.key に refpem ファイルへのパスを指定すると、サーバーは問題なく起動し、接続をリッスンしますが、報告されているようにハンドシェイクは失敗します。 - options.key にキーパスを urk (nxp: ) として指定すると、アプリケーションがクラッシュします - options.key にキー参照 (nxp: ) を指定すると、アプリケーションがクラッシュします SO、 @Kan_Liさん、これが問題なく動作するはずであると仮定して、サーバーを正常に初期化できる Node.js コードを共有していただけますCANか? よろしくお願いします。 Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working こんにちは@tksec 、 node.js でキー参照を使用する適切な方法を見つけましたか? 私も同様の問題を抱えています。OpenSSL 3.0.14 で se05x-openssl-プロバイダ (v01.00.03) を使用してキー ペアを生成していますが、openssl プロバイダの Github リポジトリの Readme ファイルに記載されている「ファイル形式の参照キー」を使用できません。 他の2つのバージョン(参照キー付きのラベリング(例:nxp:"参照キーファイルへのパス")と キー ID 付きのラベリング (例: nxp:0x12345678) は正常に機能します。 Readme には次のように記載されています。「注意: この方法を使用する場合は、まず sss プロバイダをロードする必要があります。これにより、sss プロバイダが参照キーに存在するキー ID 情報をデコードできます。 」 残念ながら、その方法が分かりません。プロバイダーを openssl.cnf ファイルに追加してロードしても機能しませんでした。ファイル形式で参照キーを使用しようとすると、依然として復号化エラーが発生します。 よろしくお願いします。 よろしくお願いします トーマス Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working こんにちは@tksec 、 情報ありがとうございます!refpem ファイルを使用するユースCASEは何ですか?署名と検証?ここでこの問題を再現してみようと思います。 よろしくお願いいたします。 カン Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working こんにちは@Kan_Liさん はい、ssscli ツールを使用しました。MW v4.05.00を実行しています。別のシステムで OpenSSL を使用して元のキーを作成しました。ssscli set コマンドを使用して SE にロードし、ssscli refpem コマンドで refpem を作成しました。s_client、s_server、rsa などの openssl コマンドを使用する場合、キーは正常に使用および解析CAN。これは、OSSL_STORE API (openssl コマンドが内部的に実行するもの) を使用して EVP_PKEY に変換することもCANますが、NXP エンジン (EmbSe_LoadPrivKey 内) と node.js の両方で使用される PEM_read_bio_PrivateKey を使用して解析することはできません。 よろしくお願いします! Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working こんにちは@tksec 、 RSA キーの refpem をどのように生成しましたか? ssscli のツールで?現在どのバージョンのMWを使用していますか?ご説明をよろしくお願いいたします。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 --------------------------------------------------------------------------------- Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working こんにちは@Kan_Li refpem キーは openssl エンジンでのみ使用可能であることを明確にしていただきありがとうございます。特に node.js の問題は、提供されたキー文字列に対して PEM_read_bio_PrivateKey 関数を直接呼び出すことです。キー文字列が PEM 文字列やファイル パスではなく uri の場合、明らかに失敗します。OpenSSL プロバイダーに対する直接的なサポートはまだありません。 代わりに OpenSSL エンジンの使用に戻しましたが、同様の問題が発生しました。EC キーの使用は完全に機能しますが、RSA キーを使用すると、OpenSSL からのエラー:1E08010C:DECODER routines::unsupported が発生し、PEM ファイルの解析中に再び失敗します。コードをデバッグしたところ、エンジンのコード内の EmbSe_LoadPrivKey 内から呼び出される関数 PEM_read_bio_PrivateKey にエラーが遡って発生していることがわかりました。 OpenSSL エンジンで RSA refpem キーを処理する際にこのような問題が発生することをご存知ですか?これをどう解決すればいいでしょうか?私の場合、refpem は EC キーよりも RSA キーに対してより侵入的であるように見えますが、これが問題になるでしょうか? Re: OpenSSL doesn't handle refpem key correctly, nxp scheme is working こんにちは@tksec 、 refpem キー ファイルは openssl エンジン専用ですが、プロバイダーで openssl 3.xx を使用するため、代わりに "nxp:key_id" を使用してください。「se05x_mw_v04.05.01\simw-top\demos\linux\tls_client\scripts\tlsSeClient.sh」と「se05x_mw_v04.05.01\simw-top\demos\linux\tls_client\scripts\tlsSeClient_3_0.sh」を比較して違いを確認することができます。また、これに関してセキュリティ上の懸念事項はございますでしょうか。私の見解では、これはほとんどのスクリプトで受け入れられる文字列であるはずですが、なぜNode.jsコードでnxp:0x6789ABCDキー参照を指定できないのでしょうか?ご説明いただけますでしょうか。 すてきな一日を、 カン --------------------------------------------------------------------------------- 注記: - この投稿があなたの質問への回答である場合は、「正解としてマーク」ボタンをクリックしてください。ありがとう! - Threadは最後の投稿から7週間フォローされます。それ以降の返信は無視されます。 後ほど関連する質問がある場合は、新しいThreadを開いて、閉じたThreadを参照してください。 ---------------------------------------------------------------------------------
查看全文
「Flash_VerifyErase」はPRINCE領域では動作しません 消去されたフラッシュ ページを読み取ってハード フォールトが発生しないようにするために、Flash_VerifyErase() を使用しています。これは、PRINCE フラッシュ暗号化を有効にするまでは確実に動作していました。 何らかの理由で、Flash_VerifyErase() は PRINCE フラッシュの消去された領域を検出せず、読み取りを実行するとハード エラーが発生します。関数 Flash_read() は動作していないようです。SO、現状では Flash の読み取り中にハード フォールトが発生しないようにする方法がありません。 PRINCE 消去を検出するための別の機能はありますか?PRINCE が有効な場合にハード フォールトを防ぐにはどうすればよいですか? Re: "Flash_VerifyErase" does not work on PRINCE regions 私も同じ問題を抱えています。暗号化されたフラッシュページを安全に読むにはCANどうすればいいですか? Re: "Flash_VerifyErase" does not work on PRINCE regions はい、これは LPC55S69、バージョン 1B シリコン用です。申し訳ありませんが、以前その情報を忘れてしまいました。 下記に添付したコードをご覧ください。コメント部分はフラッシュ読み取りを行うための推奨方法ですが、PRINCE が有効になっている場合、このコードセクションは機能しなくなります。PRINCE を有効にする前は、memcpy が存在する「else if」内にこのコメント ブロックがありました。 status_t status = FLASH_VerifyErase(&flash_instance, addr, PflashPageSize); if(status == kStatus_Success) { memset(data, 0xFF, len); return len; } else if(status == kStatus_FLASH_CommandFailure) { memcpy(data, (void*)addr, len); } else { return -1; } // status = FLASH_Read(&flash_instance, addr, data, len); // // if(status == kStatus_FLASH_EccError) // { // memset(data, 0xFF, len); // return len; // } // else if(status != kStatus_Success) // { // return -1; // } Re: "Flash_VerifyErase" does not work on PRINCE regions こんにちは、アレクサンダー 使用している部品番号を教えていただけますか?LPC55xxファミリを使用していますか? とにかく、次のリンクからダウンロードできる AN12527.pdf と AN12527SW.zip を参照することをお勧めします。 https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/lpc5500-cortex-m33/high-efficiency-arm-cortex-m33-based-microcontroller-family:LPC55S6x?tab=Documentation_Tab まだ問題がある場合は、レビューできるようにすべてのコードを投稿してください。 BR シャンジュン・ロン
查看全文