痞子衡嵌入式:开启NXP-MCUBootUtility工具的HAB加密功能 - CST(中英双语)

本文指导如何手动添加HABCodeSigningTool至NXP-MCUBootUtility,以实现HAB加密功能,包括签名功能的开启、AES加密功能的cst.exe重新编译等步骤。
  为了便于大家快速验证软件HAB加密功能,特将已开启HAB加密功能的cst工具上传至百度网盘,仅用作个人学习用途,违者后果自负。
  -- 链接: https://pan.baidu.com/s/1lcFverYPDDp0qjxCcWpkug
  -- 提取码: 3873
  使用方法:将下载到的压缩包cst_3.0.1_hab_crypto.zip解压后将其所有文件拷贝到 \NXP-MCUBootUtility\tools\cst 文件夹下即可。

1 Reason for enabling HAB encryption function 为什么要开启HAB加密功能

  NXP-MCUBootUtility is a tool designed for NXP MCU secure encryption boot. It fully supports secure encryption boot functions (signature only, signature and encryption) based on HAB implementation. HAB related functions are based on NXP's official HAB enablement tools. Due to the restriction of export control on security product, HAB Code Signing Tool cannot be directly integrated into NXP-MCUBootUtility installation package, so if you want to enbale HAB signature and encryption function for NXP-MCUBootUtility, You need to add HAB Code Signing Tool into NXP-MCUBootUtility manually. This article teaches you how to add HAB Code Signing Tool into NXP-MCUBootUtility to activate HAB encryption function.

  NXP-MCUBootUtility是一个专为NXP MCU安全加密启动而设计的工具,其能完整支持基于HAB实现的安全加密启动(单签名,签名和加密),而HAB相关的功能是借助恩智浦官方的HAB Code Signing Tool工具来实现的,HAB Code Signing Tool跟安全加密有关,因为一些跟欧美出口管制有关的原因,NXP-MCUBootUtility不能够直接将HAB Code Signing Tool工具集成到软件安装包里,所以如果要在NXP-MCUBootUtility里开启HAB签名和加密功能,需要自己将HAB Code Signing Tool工具添加到NXP-MCUBootUtility里,本篇文章即教大家如何添加HAB Code Signing Tool工具进NXP-MCUBootUtility以激活HAB加密功能。

2 Enable HAB signature function first 首先开启HAB签名功能

  First, you need to refer to 《开启NXP-MCUBootUtility工具的HAB签名功能 - CST》, This article teaches you to add the CST tool into NXP-MCUBootUtility and activates the HAB signature function, the prerequisite for activating HAB encryption function is to enable HAB signature function.

  首先参照 《开启NXP-MCUBootUtility工具的HAB签名功能 - CST》 这篇文章教你将CST工具添加进NXP-MCUBootUtility里并激活HAB签名功能,激活HAB加密的前提是使能HAB签名。

3 Regenerate cst.exe with AES encryption function 重新生成含AES加密功能的cst.exe

  The signature and encryption functions of NXP-MCUBootUtility are implemented by calling \NXP-MCUBootUtility\tools\cst\mingw32\bin\cst.exe. The cs.exe in the CST package downloaded from NXP's official website does not include AES encryption function by default. So we need to recompile and generate cst.exe with AES encryption function.

  NXP-MCUBootUtility的签名和加密功能均是通过调用\NXP-MCUBootUtility\tools\cst\mingw32\bin\cst.exe实现的,从恩智浦官网下载的CST包里的cst.exe默认没有开启AES加密功能,因此我们需要重新编译生成含AES加密功能的cst.exe。

3.1 Install gcc under MSYS2 在MSYS2下安装gcc

  First, you need to download the msys2 installation package on the website http://www.msys2.org/ and select the appropriate installation package according to your system (x86_64 is for 64bit system, i686 is for 32bit systems), We choose msys2-x86_64-20180531.exe here. After the installation is complete, open the MSYS2 MSYS console from the Start menu.

  首先在网站 http://www.msys2.org/ 下载msys2的安装包,根据你的系统选择合适的安装包(x86_64适用于64bit系统,i686适用于32bit系统),这里选择的是msys2-x86_64-20180531.exe,安装完成后从开始菜单里打开MSYS2 MSYS控制台。

msys2StartMenuMysy

  Execute the following four commands in sequence, and just input y when encountering ":: Proceed with installation? [Y/n]" questions. Note that you may need to close the console and reopen after the first command is executed. After successful execution of all commands, the basic configuration of MSYS2 and the installation of standard packages and gcc for compilation are completed.

  依次执行如下四条命令,遇到":: Proceed with installation? [Y/n]"询问全部输入y,注意第一条命令执行后可能需要关闭控制台重新打开。所有命令正常执行结束后便完成了MSYS2的基础更新配置以及用于编译的标准包和gcc的安装。

jay@pc MSYS ~
$ pacman -Syu
$ pacman -Su
$ pacman -S –-needed base-devel
$ pacman -S mingw-w64-i686-gcc

3.2 Compile openssl under MinGW 在MinGW下编译openssl

  Then download the openssl source package on the website https://www.openssl.org/, it is recommended to select the 1.0.x version (1.1.x version seems to have issues). We choose openssl-1.0.2q.tar.gz here. After downloading, decompress it and place it in the \NXP-MCUBootUtility\tools\openssl directory. Open the MSYS2 MinGW 32-bit console from the Start menu.

  然后在网站 https://www.openssl.org/ 下载openssl的源码包,推荐选择1.0.x版本(1.1.x版本经测试有问题),这里选择的是openssl-1.0.2q.tar.gz,下载完成后将其解压放置到\NXP-MCUBootUtility\tools\openssl\目录下,从开始菜单里打开MSYS2 MinGW 32-bit控制台。

msys2StartMenuMingw32

  Use the cd command to checkout to the \NXP-MCUBootUtility\tools\openssl\openssl-1.0.2q directory and execute the following three commands in sequence. Note that the second command takes a little longer time (about 10 minutes). Please be patient.

  使用cd命令切换到\NXP-MCUBootUtility\tools\openssl\openssl-1.0.2q目录下,依次执行如下三条命令,注意第二条命令执行时间稍长(大约10分钟),请耐心等待。

jay@pc MINGW32 /d/NXP-MCUBootUtility/tools/openssl/openssl-1.0.2q
$ ./config
$ make
$ cp ms/applink.c include/openssl/

3.3 Generate cst.exe under MinGW 在MinGW下生成cst.exe

  Use the cd command to checkout to the \NXP-MCUBootUtility\tools\cst\code\back_end\src directory and execute the following two commands in sequence.

  继续在MSYS2 MinGW 32-bit控制台下操作,使用cd命令切换到\NXP-MCUBootUtility\tools\cst\code\back_end\src目录下,依次执行如下两条命令。

jay@pc MINGW32 /d/NXP-MCUBootUtility/tools/cst/code/back_end/src
$ gcc *.c -o cst.exe -I ../hdr -I ../../../../openssl/openssl-1.0.2q/include/ -L ../../../mingw32/lib/ -L ../../../../openssl/openssl-1.0.2q -lfrontend -lcrypto -lgdi32 -static
$ cp cst.exe ../../../mingw32/bin/

  At this point, the HAB encryption function is also activated. Open the NXP-MCUBootUtility and select the "HAB Encrypted Image Boot" mode in the Secure Boot Type and then enjoy it.

  至此NXP-MCUBootUtility的HAB加密功能也被激活了,打开NXP-MCUBootUtility软件,在Secure Boot Type里选择"HAB Encrypted Image Boot"模式试试吧。

enableHabEncryptFunc

(lerobot) C:\Users\莫礼蒸\Desktop\lerobot>conda install ffmpeg -c conda-forge Channels: - conda-forge - defaults Platform: win-64 Collecting package metadata (repodata.json): done Solving environment: done ## Package Plan ## environment location: D:\Anaconda_envs\envs\lerobot added / updated specs: - ffmpeg The following NEW packages will be INSTALLED: aom conda-forge/win-64::aom-3.9.1-he0c23c2_0 cairo conda-forge/win-64::cairo-1.18.4-h5782bbf_0 dav1d conda-forge/win-64::dav1d-1.2.1-hcfcfb64_0 ffmpeg conda-forge/win-64::ffmpeg-8.0.0-gpl_ha750ffe_706 font-ttf-dejavu-s~ conda-forge/noarch::font-ttf-dejavu-sans-mono-2.37-hab24e00_0 font-ttf-inconsol~ conda-forge/noarch::font-ttf-inconsolata-3.000-h77eed37_0 font-ttf-source-c~ conda-forge/noarch::font-ttf-source-code-pro-2.038-h77eed37_0 font-ttf-ubuntu conda-forge/noarch::font-ttf-ubuntu-0.83-h77eed37_3 fontconfig conda-forge/win-64::fontconfig-2.15.0-h765892d_1 fonts-conda-ecosy~ conda-forge/noarch::fonts-conda-ecosystem-1-0 fonts-conda-forge conda-forge/noarch::fonts-conda-forge-1-hc364b38_1 freetype conda-forge/win-64::freetype-2.14.1-h57928b3_0 fribidi conda-forge/win-64::fribidi-1.0.16-hfd05255_0 gdk-pixbuf conda-forge/win-64::gdk-pixbuf-2.44.4-h1f5b9c4_0 glslang conda-forge/win-64::glslang-16.0.0-h5b34520_0 graphite2 conda-forge/win-64::graphite2-1.3.14-hac47afa_2 harfbuzz conda-forge/win-64::harfbuzz-12.2.0-h5f2951f_0 icu conda-forge/win-64::icu-75.1-he0c23c2_0 lame conda-forge/win-64::lame-3.100-hcfcfb64_1003 lerc conda-forge/win-64::lerc-4.0.0-h6470a55_1 libdeflate conda-forge/win-64::libdeflate-1.25-h51727cc_0 libexpat conda-forge/win-64::libexpat-2.7.3-hac47afa_0 libfreetype conda-forge/win-64::libfreetype-2.14.1-h57928b3_0 libfreetype6 conda-forge/win-64::libfreetype6-2.14.1-hdbac1cb_0 libglib conda-forge/win-64::libglib-2.86.2-h0c9aed9_1 libiconv conda-forge/win-64::libiconv-1.18-hc1393d2_2 libintl conda-forge/win-64::libintl-0.22.5-h5728263_3 libjpeg-turbo conda-forge/win-64::libjpeg-turbo-3.1.2-hfd05255_0 liblzma conda-forge/win-64::liblzma-5.8.1-h2466b09_2 liblzma-devel conda-forge/win-64::liblzma-devel-5.8.1-h2466b09_2 libogg conda-forge/win-64::libogg-1.3.5-h2466b09_1 libopus conda-forge/win-64::libopus-1.5.2-h2466b09_0 libpng conda-forge/win-64::libpng-1.6.51-h7351971_0 librsvg conda-forge/win-64::librsvg-2.60.0-hd5e4115_0 libsqlite conda-forge/win-64::libsqlite-3.51.0-hf5d6505_0 libtiff conda-forge/win-64::libtiff-4.7.1-h8f73337_1 libusb conda-forge/win-64::libusb-1.0.29-h1839187_0 libvorbis conda-forge/win-64::libvorbis-1.3.7-h5112557_2 libvulkan-loader conda-forge/win-64::libvulkan-loader-1.4.328.1-h477610d_0 libxml2 conda-forge/win-64::libxml2-2.15.1-ha29bfb0_0 libxml2-16 conda-forge/win-64::libxml2-16-2.15.1-h06f855e_0 openh264 conda-forge/win-64::openh264-2.6.0-hb17fa0b_0 done (lerobot) C:\Users\莫礼蒸\Desktop\lerobot>pip install -e Usage: pip install [options] <requirement specifier> [package-index-options] ... pip install [options] -r <requirements file> [package-index-options] ... pip install [options] [-e] <vcs project url> ... pip install [options] [-e] <local project path> ... pip install [options] <archive url/path> ... -e option requires 1 argument (lerobot) C:\Users\莫礼蒸\Desktop\lerobot>pip install -e Usage: pip install [options] <requirement specifier> [package-index-options] ... pip install [options] -r <requirements file> [package-index-options] ... pip install [options] [-e] <vcs project url> ... pip install [options] [-e] <local project path> ... pip install [options] <archive url/path> ... -e option requires 1 argument (lerobot) C:\Users\莫礼蒸\Desktop\lerobot>pip install -e “.[dynamixel]” ERROR: “.[dynamixel]” is not a valid editable requirement. It should either be a path to a local project or a VCS URL (beginning with bzr+http, bzr+https, bzr+ssh, bzr+sftp, bzr+ftp, bzr+lp, bzr+file, git+http, git+https, git+ssh, git+git, git+file, hg+file, hg+http, hg+https, hg+ssh, hg+static-http, svn+ssh, svn+http, svn+https, svn+svn, svn+file).
11-25
admin@How-dell MINGW64 /d/MediaWatermarkSystem $ conda install -c conda-forge opencv Retrieving notices: done Channels: - conda-forge - defaults - nvidia - pytorch Platform: win-64 Collecting package metadata (repodata.json): done Solving environment: done ## Package Plan ## environment location: D:\AAAdachuangapps\envs\dc added / updated specs: - opencv The following packages will be downloaded: package | build ---------------------------|----------------- aom-3.6.1 | h63175ca_0 7.6 MB conda-forge bzip2-1.0.8 | h0ad9c76_8 55 KB conda-forge ca-certificates-2025.11.12 | h4c7d964_0 149 KB conda-forge cairo-1.16.0 | hd694305_1014 2.3 MB conda-forge dav1d-1.2.1 | hcfcfb64_0 604 KB conda-forge expat-2.7.3 | hac47afa_0 126 KB conda-forge ffmpeg-5.1.2 | gpl_h8bb4bc8_112 10.8 MB conda-forge font-ttf-dejavu-sans-mono-2.37| hab24e00_0 388 KB conda-forge font-ttf-inconsolata-3.000 | h77eed37_0 94 KB conda-forge font-ttf-source-code-pro-2.038| h77eed37_0 684 KB conda-forge font-ttf-ubuntu-0.83 | h77eed37_3 1.5 MB conda-forge fontconfig-2.14.2 | hbde0cde_0 186 KB conda-forge fonts-conda-ecosystem-1 | 0 4 KB conda-forge fonts-conda-forge-1 | hc364b38_1 4 KB conda-forge gettext-0.22.5 | h5728263_3 33 KB conda-forge gettext-tools-0.22.5 | h5a7288d_3 3.3 MB conda-forge glib-2.80.2 | h0df6a38_0 558 KB conda-forge glib-tools-2.80.2 | h2f9d560_0 93 KB conda-forge graphite2-1.3.14 | hac47afa_2 94 KB conda-forge gst-plugins-base-1.22.9 | h001b923_1 1.9 MB conda-forge gstreamer-1.22.9 | hb4038d2_1 1.8 MB conda-forge harfbuzz-6.0.0 | he256f1b_0 875 KB conda-forge icu-70.1 | h0e60522_0 17.0 MB conda-forge jasper-2.0.33 | hc2e4405_1 614 KB conda-forge krb5-1.20.1 | heb0366b_0 701 KB conda-forge lcms2-2.15 | ha5c8aab_0 487 KB conda-forge libasprintf-0.22.5 | h5728263_3 49 KB conda-forge libasprintf-devel-0.22.5 | h5728263_3 35 KB conda-forge libblas-3.9.0 |1_h8933c1f_netlib 193 KB conda-forge libcblas-3.9.0 |13_hc41557d_netlib 48 KB conda-forge libclang-15.0.7 |default_h3a3e6c3_5 145 KB conda-forge libclang13-15.0.7 |default_hf64faad_5 20.9 MB conda-forge libexpat-2.7.3 | hac47afa_0 68 KB conda-forge libffi-3.5.2 | h52bdfb6_0 44 KB conda-forge libgettextpo-0.22.5 | h5728263_3 167 KB conda-forge libgettextpo-devel-0.22.5 | h5728263_3 39 KB conda-forge libglib-2.80.2 | h0df6a38_0 3.6 MB conda-forge libiconv-1.18 | hc1393d2_2 681 KB conda-forge libintl-0.22.5 | h5728263_3 93 KB conda-forge libintl-devel-0.22.5 | h5728263_3 40 KB conda-forge liblapack-3.9.0 |13_h018ca30_netlib 2.0 MB conda-forge liblapacke-3.9.0 |13_h0d55cca_netlib 395 KB conda-forge libogg-1.3.5 | h2466b09_1 34 KB conda-forge libopencv-4.7.0 | py39ha9d37a1_1 31.0 MB conda-forge libopus-1.5.2 | h2466b09_0 282 KB conda-forge libprotobuf-3.21.12 | h12be248_2 2.0 MB conda-forge libsqlite-3.51.0 | hf5d6505_0 1.2 MB conda-forge libtiff-4.5.1 | h44ae7cf_1 1.0 MB libvorbis-1.3.7 | h5112557_2 238 KB conda-forge libwebp-1.6.0 | h4d5522a_0 71 KB conda-forge libwebp-base-1.6.0 | h4d5522a_0 273 KB conda-forge libxml2-2.12.7 | h283a6d9_1 1.6 MB conda-forge libzlib-1.2.13 | h2466b09_6 55 KB conda-forge m2w64-gcc-libgfortran-5.3.0| 6 342 KB conda-forge m2w64-gcc-libs-5.3.0 | 7 520 KB conda-forge m2w64-gcc-libs-core-5.3.0 | 7 214 KB conda-forge m2w64-gmp-6.1.0 | 2 726 KB conda-forge m2w64-libwinpthread-git-5.0.0.4634.697f757| 2 31 KB conda-forge msys2-conda-epoch-20160418 | 1 3 KB conda-forge numpy-1.20.3 | py39h6635163_0 5.3 MB conda-forge numpy-base-2.0.0 | py39hb9380bd_0 9.0 MB opencv-4.7.0 | py39hcbf5309_1 24 KB conda-forge openh264-2.3.1 | h63175ca_2 401 KB conda-forge openjpeg-2.5.0 | ha2aaf27_2 232 KB conda-forge openssl-3.6.0 | h725018a_0 9.0 MB conda-forge pcre2-10.43 | h17e33f8_0 799 KB conda-forge pixman-0.46.4 | h5112557_1 530 KB conda-forge py-opencv-4.7.0 | py39h00e5391_1 1.1 MB conda-forge qt-main-5.15.8 | h720456b_6 57.6 MB conda-forge svt-av1-1.4.1 | h63175ca_0 1.9 MB conda-forge x264-1!164.3095 | h8ffe710_2 1017 KB conda-forge x265-3.5 | h2d74725_3 5.3 MB conda-forge zeromq-4.3.5 | h6c54ac7_1 4.0 MB zlib-1.2.13 | h2466b09_6 105 KB conda-forge ------------------------------------------------------------ Total: 216.0 MB The following NEW packages will be INSTALLED: aom conda-forge/win-64::aom-3.6.1-h63175ca_0 bzip2 conda-forge/win-64::bzip2-1.0.8-h0ad9c76_8 cairo conda-forge/win-64::cairo-1.16.0-hd694305_1014 dav1d conda-forge/win-64::dav1d-1.2.1-hcfcfb64_0 expat conda-forge/win-64::expat-2.7.3-hac47afa_0 ffmpeg conda-forge/win-64::ffmpeg-5.1.2-gpl_h8bb4bc8_112 font-ttf-dejavu-s~ conda-forge/noarch::font-ttf-dejavu-sans-mono-2.37-hab24e00_0 font-ttf-inconsol~ conda-forge/noarch::font-ttf-inconsolata-3.000-h77eed37_0 font-ttf-source-c~ conda-forge/noarch::font-ttf-source-code-pro-2.038-h77eed37_0 font-ttf-ubuntu conda-forge/noarch::font-ttf-ubuntu-0.83-h77eed37_3 fontconfig conda-forge/win-64::fontconfig-2.14.2-hbde0cde_0 fonts-conda-ecosy~ conda-forge/noarch::fonts-conda-ecosystem-1-0 fonts-conda-forge conda-forge/noarch::fonts-conda-forge-1-hc364b38_1 gettext conda-forge/win-64::gettext-0.22.5-h5728263_3 gettext-tools conda-forge/win-64::gettext-tools-0.22.5-h5a7288d_3 glib conda-forge/win-64::glib-2.80.2-h0df6a38_0 glib-tools conda-forge/win-64::glib-tools-2.80.2-h2f9d560_0 graphite2 conda-forge/win-64::graphite2-1.3.14-hac47afa_2 gst-plugins-base conda-forge/win-64::gst-plugins-base-1.22.9-h001b923_1 gstreamer conda-forge/win-64::gstreamer-1.22.9-hb4038d2_1 harfbuzz conda-forge/win-64::harfbuzz-6.0.0-he256f1b_0 icu conda-forge/win-64::icu-70.1-h0e60522_0 jasper conda-forge/win-64::jasper-2.0.33-hc2e4405_1 libasprintf conda-forge/win-64::libasprintf-0.22.5-h5728263_3 libasprintf-devel conda-forge/win-64::libasprintf-devel-0.22.5-h5728263_3 libblas conda-forge/win-64::libblas-3.9.0-1_h8933c1f_netlib libcblas conda-forge/win-64::libcblas-3.9.0-13_hc41557d_netlib libclang conda-forge/win-64::libclang-15.0.7-default_h3a3e6c3_5 libclang13 conda-forge/win-64::libclang13-15.0.7-default_hf64faad_5 libexpat conda-forge/win-64::libexpat-2.7.3-hac47afa_0 libffi conda-forge/win-64::libffi-3.5.2-h52bdfb6_0 libgettextpo conda-forge/win-64::libgettextpo-0.22.5-h5728263_3 libgettextpo-devel conda-forge/win-64::libgettextpo-devel-0.22.5-h5728263_3 libglib conda-forge/win-64::libglib-2.80.2-h0df6a38_0 libiconv conda-forge/win-64::libiconv-1.18-hc1393d2_2 libintl conda-forge/win-64::libintl-0.22.5-h5728263_3 libintl-devel conda-forge/win-64::libintl-devel-0.22.5-h5728263_3 liblapack conda-forge/win-64::liblapack-3.9.0-13_h018ca30_netlib liblapacke conda-forge/win-64::liblapacke-3.9.0-13_h0d55cca_netlib libogg conda-forge/win-64::libogg-1.3.5-h2466b09_1 libopencv conda-forge/win-64::libopencv-4.7.0-py39ha9d37a1_1 libopus conda-forge/win-64::libopus-1.5.2-h2466b09_0 libprotobuf conda-forge/win-64::libprotobuf-3.21.12-h12be248_2 libsqlite conda-forge/win-64::libsqlite-3.51.0-hf5d6505_0 libvorbis conda-forge/win-64::libvorbis-1.3.7-h5112557_2 libxml2 conda-forge/win-64::libxml2-2.12.7-h283a6d9_1 libzlib conda-forge/win-64::libzlib-1.2.13-h2466b09_6 m2w64-gcc-libgfor~ conda-forge/win-64::m2w64-gcc-libgfortran-5.3.0-6 m2w64-gcc-libs conda-forge/win-64::m2w64-gcc-libs-5.3.0-7 m2w64-gcc-libs-co~ conda-forge/win-64::m2w64-gcc-libs-core-5.3.0-7 m2w64-gmp conda-forge/win-64::m2w64-gmp-6.1.0-2 m2w64-libwinpthre~ conda-forge/win-64::m2w64-libwinpthread-git-5.0.0.4634.697f757-2 msys2-conda-epoch conda-forge/win-64::msys2-conda-epoch-20160418-1 opencv conda-forge/win-64::opencv-4.7.0-py39hcbf5309_1 openh264 conda-forge/win-64::openh264-2.3.1-h63175ca_2 pcre2 conda-forge/win-64::pcre2-10.43-h17e33f8_0 pixman conda-forge/win-64::pixman-0.46.4-h5112557_1 py-opencv conda-forge/win-64::py-opencv-4.7.0-py39h00e5391_1 qt-main conda-forge/win-64::qt-main-5.15.8-h720456b_6 svt-av1 conda-forge/win-64::svt-av1-1.4.1-h63175ca_0 x264 conda-forge/win-64::x264-1!164.3095-h8ffe710_2 x265 conda-forge/win-64::x265-3.5-h2d74725_3 The following packages will be UPDATED: ca-certificates pkgs/main/win-64::ca-certificates-202~ --> conda-forge/noarch::ca-certificates-2025.11.12-h4c7d964_0 libwebp pkgs/main::libwebp-1.3.2-h18467be_1 --> conda-forge::libwebp-1.6.0-h4d5522a_0 libwebp-base pkgs/main::libwebp-base-1.3.2-h3d0472~ --> conda-forge::libwebp-base-1.6.0-h4d5522a_0 openssl 3.5.4-h725018a_0 --> 3.6.0-h725018a_0 zlib pkgs/main::zlib-1.2.13-h8cc25b3_1 --> conda-forge::zlib-1.2.13-h2466b09_6 The following packages will be SUPERSEDED by a higher-priority channel: lcms2 pkgs/main::lcms2-2.16-h62be587_1 --> conda-forge::lcms2-2.15-ha5c8aab_0 numpy pkgs/main::numpy-2.0.1-py39h055cbcc_1 --> conda-forge::numpy-1.20.3-py39h6635163_0 openjpeg pkgs/main::openjpeg-2.5.2-h9b5d1b5_1 --> conda-forge::openjpeg-2.5.0-ha2aaf27_2 zeromq conda-forge::zeromq-4.3.5-h5bddc39_9 --> pkgs/main::zeromq-4.3.5-h6c54ac7_1 The following packages will be DOWNGRADED: krb5 1.21.3-hdf4eb48_0 --> 1.20.1-heb0366b_0 libtiff 4.7.0-h404307b_0 --> 4.5.1-h44ae7cf_1 numpy-base 2.0.1-py39h65a83cf_1 --> 2.0.0-py39hb9380bd_0 Proceed ([y]/n)?
最新发布
11-29
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

痞子衡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值