From a777f563e193e21c697a360dab8f963c7d677b2f Mon Sep 17 00:00:00 2001 From: lihehe Date: Tue, 14 May 2024 21:50:34 +0800 Subject: [PATCH] update README for jit code signing Change-Id: If72ce5ead799da4d9682b4b319952f43776f4300 Signed-off-by: lihehe --- README_zh.md | 14 +++++++++++++- figures/codesign.png | Bin 64736 -> 60946 bytes .../jit_code_sign/include/pac_sign_ctx.h | 1 - .../jit_code_sign/src/pac_sign_ctx.cpp | 7 ------- test/unittest/jit_code_sign_test.cpp | 2 ++ 5 files changed, 15 insertions(+), 9 deletions(-) diff --git a/README_zh.md b/README_zh.md index ef98166..191cfd8 100644 --- a/README_zh.md +++ b/README_zh.md @@ -14,6 +14,7 @@ - 代码签名使能:在用户态提供代码签名校验的相关接口和逻辑,供应用安装的时候调用,为应用和代码文件使能代码签名。 - 本地代码签名:在设备侧运行签名服务给本地代码提供签名接口,为AOT生成的机器码文件生成代码签名。 - 代码属性设置:支持代码所有者标记及校验,提供配置XPM验签地址区接口。 +- JIT(Just In Time)代码签名:使用代码签名技术来保护编译出的JIT代码的完整性,防止恶意代码被注入到JIT代码中。 ## 目录 @@ -24,7 +25,8 @@ │ ├── code_sign_attr_utils # 属性设置接口 │ ├── code_sign_utils # 使能接口 │ ├── common # 公共基础能力 -│ └── local_code_sign # 本地签名接口 +│ ├── jit_code_sign # JIT代码签名 +│ └── local_code_sign # 本地签名 ├── services # 服务层 │ ├── key_enable # 证书初始化 │ └── local_code_sign # 本地签名服务 @@ -51,6 +53,16 @@ | int32_t SignLocalCode(const std::string &ownerID, const std::string &filePath, ByteBuffer &signature); | 带OwnerId的本地代码签名 | | int InitXpmRegion(void); | 初始化XPM地址 | | int SetXpmOwnerId(uint32_t idType, const char *ownerId); | 设置OwnerId | +| int32_t RegisterTmpBuffer(JitCodeSignerBase *signer, void *tmpBuffer); | 注册临时Buffer起始地址 | +| int32_t AppendInstruction(JitCodeSignerBase *signer, Instr instr); | 对添加到临时Buffer的指令签名 | +| int32_t AppendData(JitCodeSignerBase *signer, const void *const data, uint32_t size); | 对添加到临时Buffer的数据签名 | +| int32_t WillFixUp(JitCodeSignerBase *signer, uint32_t n = 1); | 声明下n条指令待更新 | +| int32_t PatchInstruction(JitCodeSignerBase *signer, int offset, Instr instr); | 更新缓冲区的偏移处指令签名 | +| int32_t PatchInstruction(JitCodeSignerBase *signer, void *address, Instr insn); | 更新对应地址指令签名 | +| int32_t PatchData(JitCodeSignerBase *signer, int offset, const void *const data, uint32_t size); | 更新缓冲区偏移处数据签名 | +| int32_t PatchData(JitCodeSignerBase *signer, void *address, const void *const data, uint32_t size); | 更新对应地址数据签名 | +| int32_t ResetJitCode(void *jitMemory, int size); | 重置JIT内存 | +| int32_t CopyToJitCode(JitCodeSignerBase *signer, void *jitMemory, void *tmpBuffer, int size); | 将JIT代码复制到JIT内存 | ### 签名工具使用指南 diff --git a/figures/codesign.png b/figures/codesign.png index 8a494cb95ef899f5680a596a9ca8249a924357c6..65cd5f970b6669f8d5e4687bf08b84580d7a70ad 100644 GIT binary patch literal 60946 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 JIM*dS>)%Y^O_~4z literal 64736 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 #include "errcode.h" +#include "jit_code_signer_factory.h" #include "jit_buffer_integrity.h" #include "pac_sign_ctx.h" @@ -121,6 +122,7 @@ public: static void SetUpTestCase() { + EXPECT_EQ(JitCodeSignerFactory::IsSupportJitCodeSigner(), true); JitFortPrepare(); AllocJitMemory(); }; -- Gitee