]> git.cameronkatri.com Git - ldid.git/blob - docs/ldid.zh_CN.1
Add proper hash agility required for 15.1+
[ldid.git] / docs / ldid.zh_CN.1
1 .\"-
2 .\" Copyright (c) 2021-2022 Procursus Team <team@procurs.us>
3 .\" SPDX-License-Identifier: AGPL-3.0-or-later
4 .\"
5 .Dd January 20, 2022
6 .Dt LDID 1
7 .Os
8 .Sh 名称
9 .Nm ldid
10 .Nd 链接身份编辑器
11 .Sh 语法
12 .Nm
13 .Op Fl A Ns Ar 处理器类型 : Ns Ar 亚类型
14 .Op Fl a
15 .Op Fl C Ns Op Ar adhoc | Ar enforcement | Ar expires | Ar hard | Ar host | Ar kill | Ar library-validation | Ar restrict | Ar runtime
16 .Op Fl D
17 .Op Fl d
18 .Op Fl E Ns Ar 数字 : Ns Ar 档案
19 .Op Fl e
20 .Op Fl H Ns Op Ar sha1 | Ar sha256
21 .Op Fl h
22 .Op Fl I Ns Ar 名称
23 .Op Fl K Ns Ar 密錀.p12 Op Fl U Ns Ar 密码
24 .Op Fl M
25 .Op Fl P
26 .Op Fl Q Ns Ar 需求.xml
27 .Op Fl q
28 .Op Fl r | Fl S Ns Ar 档案.xml | Fl s
29 .Op Fl T Ns Ar 时间印章
30 .Op Fl u
31 .Op Fl arch Ar 架构类型
32 .Ar
33 .Sh 描述
34 .Nm
35 把SHA1和SHA256杂凑值加入到Mach-O档案中,
36 让它们能在有验证但没有签署验证的系统上运行。
37 .Bl -tag -width -indent
38 .It Fl A Ns Ar 处理器类型 : Ns Ar 亚类型
39 当和
40 .Fl a , Fl D , Fl e , Fl h , Fl q ,
41
42 .Fl u ,
43 一起被使用时,只作用在被
44 .Ar 处理器类型
45
46 .Ar 亚类型
47 指定的部分。
48 .Ar 处理器类型
49
50 .Ar 亚类型
51 都应该是整数。
52 .It Fl a
53 以十六进制印出处理器类型和亚类型。
54 .It Fl arch Ar 架构类型
55
56 .Fl A
57 一样,不过使用架构的名称。
58 已知的
59 .Ar 架构类型 Ns s
60 可以在
61 .Xr arch 3
62 中找到。
63 这是一个Procursus扩展。
64 .It Fl C Ns Op Ar adhoc | Ar enforcement | Ar expires | Ar hard | Ar host | Ar kill | Ar library-validation | Ar restrict | Ar runtime
65 设定要在档案中包含的程式码签署选项。
66 请看
67 .Xr codesign 1
68 来获得关于这些选项的更多资讯。
69 .It Fl D
70 重设加密码 (cryptid)。
71 .It Fl d
72 输出在二进位档案中的加密码。
73 由于兼容性原因,这也能作为
74 .Fl h ,
75 工作,但在将来这会被移除。
76 .It Fl E Ns Ar 数字 : Ns Ar 档案
77
78 .Ar 档案
79 的杂凑值嵌入到位于
80 .Ar 数字
81 的特殊代码签署位置中。
82 .It Fl e
83 把每一部分的权限印出, 或印出
84 .Fl A ,
85 所指定的部分的权限
86 .Ar 到标准输出。
87 .It Fl H Ns Op Ar sha1 | Ar sha256
88 禁用没有指明的杂凑吗。
89 这个选项可以用来重现
90 .Xr codesign 1
91 只提供sha256签署的预设行为。
92 .It Fl h
93 印出关于签署的资讯,包括杂凑值的
94 类型,选项,CDHash, 和 CodeDirectory 版本到
95 .Ar 标准输出。
96 .It Fl I Ns Ar 名称
97 把二进制档案签署中的识别码设定为
98 .Ar 名称。
99 如没有指明,就会使用二进位档案的档案名称。
100 .It Fl K Ns Ar 密錀.p12
101 用在
102 .Ar 密錀.p12 .
103 的身份签署。 会给二进位档案有一个有效的签署,令它能够在有签署验证的系统上运行。
104 如果
105 .Ar 密錀.p12
106 有密码的话,你会被询问。 也可以用
107 .Fl U
108 选项来提供密码。
109 .It Fl M
110 当和
111 .Fl S ,
112 一起使用时,和现有的权限合并而不是取代它。 在加入权限时有用。
113 .It Fl P
114 将这个Mach-O二进位档案标示为系统二进位档案。
115 .It Fl Q Ns Ar 需求.xml
116 把需求嵌入到
117 .Ar 需求.xml
118 中。
119 .It Fl q
120 印出被嵌入在二进位档案中的需求。
121 .It Fl r
122 从Mach-O档案中删除签署。
123 .It Fl S Ns Op Ar 档案.xml
124 伪签署Mach-O档案。
125 如果提供了
126 .Ar 档案.xml
127 那么在
128 .Ar 档案.xml
129 中的权限会被嵌入到Mach-O中。
130 .It Fl s
131 重新签署Mach-O档案但保留现有权限。
132 .It Fl T Ns Ar 时间印章
133 当签署一个动态链结函式库时,把时间印章设定为
134 .Ar 时间印章
135
136 .Ar 时间印章
137 应该是一个以秒作为单位的UNIX时间印章,如果
138 .Ar
139 是一个连字号的话
140 .Pq Sq Fl ,
141 时间印章会被设定为Mach-O头中的时间印章。
142 .It Fl U Ns Ar 密码
143 使用
144 .Ar 密码
145 作为p12证书的密码,而不是询问。
146 这是一个Procursus扩展。
147 .It Fl u
148 如果Mach-O档案有和UIKit链结,印出被链结的UIKit版本。
149 .El
150 .Sh 例子
151 指令:
152 .Pp
153 .Dl "ldid -S 档案"
154 .Pp
155 会伪签署
156 .Ar 档案
157 而且不嵌入任何权限。
158 .Pp
159 指令:
160 .Pp
161 .Dl "ldid -Cadhoc -K/path/to/密錀.p12 -Sent.xml 档案"
162 .Pp
163 会使用
164 .Ar /path/to/密錀.p12
165 中的私錀来签署
166 .Ar 档案
167 也会使用在
168 .Ar ent.xml ,
169 中的权限并把签署标示为特别用途 (adhoc) 签署。
170 .Pp
171 指令:
172 .Pp
173 .Dl "ldid -Sent.xml -M 档案"
174 .Pp
175 会把
176 .Ar ent.xml
177 中的权限加入到已经在
178 .Ar 档案 .
179 中的权限。
180 .Pp
181 指令:
182 .Pp
183 .Dl "ldid -e 档案 > ent.xml"
184 .Pp
185 会把在
186 .Ar 档案
187 中每一部分的权限储存到
188 .Ar ent.xml .
189 .Sh 另见
190 .Xr codesign 1
191 .Sh 历史
192 这个
193 .Nm
194 工具程式是由
195 .An Jay \*qSaurik\*q Freeman . 所编写的。
196 对iPhoneOS 1.2.0 和 2.0 的支援在2008年4月6号被加入。
197 .Fl S
198 在2008年6月13日被加入。
199 SHA256 支援在2016年8月25日被加入,修正iOS 11支援。
200 iOS 14支援在2020年7月31日由
201 .An Kabir Oberai .
202 加入。
203 iOS 15支援在2021年6月11日被加入。