鸿蒙PC二进制无合法签名无法运行。签名分三种:自签名仅限本机使用,不能声明权限;调试证书需自行申请,可声明权限并小范围分发,但IDE自动签名无效;二进制证书面向认证开发者,个人难获取。权限分二进制自身与应用侧两层,共享库不能声明权限。强沙箱应用须申请ALLOW_EXTERNAL_NATIVE_CODE,且无法拉起自签名二进制。签名后须chmod +x,勿放/data/local/tmp。
鸿蒙PC的三种二进制签名共用同一.codesign段,区别仅在signature字段:自签名仅填描述符自身摘要,只能证明文件未被篡改,无法声明权限;调试证书签名用证书链签出PKCS7,需开发者模式并绑定UDID,可声明权限;二进制证书签名走发行信任表,用于正式分发。签名决定身份可信,沙箱决定能否被拉起。
鸿蒙PC仅允许合法签名的二进制运行。自签名二进制可运行但无法声明权限;调试证书签名可声明权限,但必须使用自行申请的证书,DevEco自动签发的证书会被内核PKCS7校验拒绝。签名后需执行chmod +x,并在module.json中写入设备UDID。实测五种组合,失败时内核日志报E_HM_KEYREJECTED。
完成下面两步后,将自动完成登录并继续当前操作。