apple-data 1.0.653 → 1.0.655

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 482821ec962f4b074c21d5f0af855bb40a9c184abc02896489e825a882bafb65
4
- data.tar.gz: d0f6b9232b2be836b4062ac088e75725437f703b093e7a511f1a9d9cc1c13e6e
3
+ metadata.gz: dd195565f6a763dd7e17ea456f1a44eb8ddb894c6b36cd6753faac16c777af40
4
+ data.tar.gz: 84c0d2fa71fa5f150e4b0e257ca44f53e4b613e700f6652a833f08e0f59ed353
5
5
  SHA512:
6
- metadata.gz: ce1b5bcdfc7b2484efe583a56d171dd2ef7b9c71774e60d51cdc08fae9e8c8cb7f14279f26f195d0a646643e5b0324ad8c6c569f6f1a69bc42c27283105043bb
7
- data.tar.gz: f2d9137bbafb0ff882773a591bc98c73bfe4459a4933b3da1c70c0e7b36be78aad5219ec51197e7bfef16322a8c6f35ee9f7ae6f79c57c70a907298d0882567a
6
+ metadata.gz: 77f9f3c7f763cba126c1001d415933b4e3ca2fad2ad4246c759f5c929e0d371028d456888492d8118f418dae15911792e847c9c7ab68b6241542aeaeaf9fe787
7
+ data.tar.gz: 804f30a89390ed1d21cff30d6710ff1367dc4db08311a5624bb7599070570caf9d34f1a6c0224aa72c53b5d88c04643d060c64c8aacf0ee1bd7e89477cb97282
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module AppleData
4
+ # An ASN1 definition
5
+ class ASN1Definition
6
+ attr_reader :path
7
+
8
+ def initialize(path)
9
+ @path = path
10
+ end
11
+
12
+ def self.all
13
+ Dir[AppleData.get_path('asn1', '**', '*.asn')].map { |file| File.expand_path(file) }.map { |file| new(file) }
14
+ end
15
+ end
16
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AppleData
4
- VERSION = '1.0.653'
4
+ VERSION = '1.0.655'
5
5
  end
data/lib/apple_data.rb CHANGED
@@ -10,11 +10,12 @@ module AppleData
10
10
  LOADER = Zeitwerk::Loader.new.tap do |loader|
11
11
  loader.push_dir(__dir__)
12
12
  loader.tag = 'apple-data'
13
- loader.inflector.tap do |inflector|
14
- inflector.inflect 'dsl' => 'DSL'
15
- inflector.inflect 'img4' => 'IMG4'
16
- inflector.inflect 'pki' => 'PKI'
17
- end
13
+ loader.inflector.inflect(
14
+ 'dsl' => 'DSL',
15
+ 'img4' => 'IMG4',
16
+ 'pki' => 'PKI',
17
+ 'asn1_definition' => 'ASN1Definition'
18
+ )
18
19
  loader.setup
19
20
 
20
21
  loader.eager_load_dir(File.join(__dir__, 'apple_data/schemas'))
@@ -22,15 +23,19 @@ module AppleData
22
23
 
23
24
  DEFAULT_APPLE_DATA_SHARE = File.join(File.dirname(__FILE__), '../share/')
24
25
 
25
- def get_data(file)
26
- YAML.load_file(File.join(@apple_data, file))
26
+ def self.get_data(file)
27
+ YAML.load_file(File.join(AppleData.data_location, file))
28
+ end
29
+
30
+ def self.get_path(*parts)
31
+ File.join(AppleData.data_location, *parts)
27
32
  end
28
33
 
29
34
  def self.data_location=(location)
30
- @apple_data = location
35
+ @data_location = location
31
36
  end
32
37
 
33
38
  def self.data_location
34
- @apple_data || AppleData::DEFAULT_APPLE_DATA_SHARE
39
+ @data_location ||= AppleData::DEFAULT_APPLE_DATA_SHARE
35
40
  end
36
41
  end
data/share/img4.yaml CHANGED
@@ -173,24 +173,6 @@ types:
173
173
  with a `secb` object with a `trst` object), `rssl` (Factory SSL root CA),
174
174
  `rvok` (Revocation list) and `trpk` (trusted public keys?)
175
175
  lpol_properties:
176
- AMNM:
177
- BNCH:
178
- BORD:
179
- CEPO:
180
- CHIP:
181
- CPRO:
182
- CSEC:
183
- DGST:
184
- title: Hash Digest
185
- DPRO:
186
- DSEC:
187
- ECID:
188
- EPRO:
189
- ESEC:
190
- LCST:
191
- LNCH:
192
- RNCH:
193
- SDOM:
194
176
  auxi:
195
177
  title: Auxiliary Image4 Manifest Hash (`auxi`)
196
178
  description: After the system verifies that the UAKL hash matches what’s found
@@ -241,11 +223,6 @@ lpol_properties:
241
223
  access:
242
224
  write:
243
225
  - macOS
244
- bat0:
245
- bat1:
246
- batf:
247
- chg0:
248
- chg1:
249
226
  coih:
250
227
  title: CustomOS Image4 Manifest Hash (coih)
251
228
  description: The `coih` is an SHA384 hash of CustomOS Image4 manifest. The payload
@@ -257,12 +234,8 @@ lpol_properties:
257
234
  access:
258
235
  write:
259
236
  - 1TR
260
- diag:
261
- dtre:
262
237
  gaid:
263
238
  description: Gaia Authentication ID (Apple Internal)
264
- glyc:
265
- glyp:
266
239
  hrlp:
267
240
  title: Has recoveryOS Local Policy
268
241
  description: The `hrlp` indicates whether or not the `prot` value is the measurement
@@ -275,9 +248,6 @@ lpol_properties:
275
248
  - 1TR
276
249
  - recoveryOS
277
250
  - macOS
278
- ibot:
279
- illb:
280
- krnl:
281
251
  kuid:
282
252
  title: Key Encryption Key
283
253
  description: The kuid indicates the volume that was booted. The key encryption
@@ -296,7 +266,6 @@ lpol_properties:
296
266
  description: Local Boot Object. Indicates that the object is to be used as the
297
267
  target of a local boot only and not provided by the server for remote / DFU
298
268
  boots.
299
- logo:
300
269
  lpnh:
301
270
  title: LocalPolicy Nonce Hash
302
271
  description: The lpnh is used for anti-replay of the LocalPolicy. This is an SHA384
@@ -357,7 +326,6 @@ lpol_properties:
357
326
  - 1TR
358
327
  - recoveryOS
359
328
  - macOS
360
- recm:
361
329
  rolp:
362
330
  description: recoveryOS local policy
363
331
  type: boolean
@@ -392,8 +360,6 @@ lpol_properties:
392
360
  - 1TR
393
361
  - recoveryOS
394
362
  - macOS
395
- rsep:
396
- sepi:
397
363
  sip0:
398
364
  title: System Integrity Protection (SIP) 0 Status - Overall
399
365
  description: The sip0 holds the existing System Integrity Protection (SIP) policy
@@ -433,7 +399,6 @@ lpol_properties:
433
399
  description: Secure Multi-Boot 3 - DEP-allowed MDM Control
434
400
  smb5:
435
401
  description: Unknown - but known to exist in Factory signing
436
- snon:
437
402
  snuf:
438
403
  description: Staged Nonce For Update Firmware
439
404
  spih:
@@ -655,7 +620,10 @@ manifest_properties:
655
620
  LNCH:
656
621
  description: Local Policy Next Cryptographic Hash
657
622
  name: ApLocalNonceHash
623
+ META:
624
+ title: Metadata
658
625
  Mod#:
626
+ title: Model ID
659
627
  RNCH:
660
628
  description: Remote Nonce Cryptographic Hash
661
629
  RSCH:
@@ -679,6 +647,8 @@ manifest_properties:
679
647
  description: Security Mode
680
648
  SNON:
681
649
  description: SEP Nonce
650
+ SPAY:
651
+ title: SysCfg Payload
682
652
  SrNm:
683
653
  description: Unit Serial Number
684
654
  manifest: true
@@ -740,6 +710,8 @@ manifest_properties:
740
710
  lpol:
741
711
  description: Local Policy
742
712
  manx:
713
+ mlb#:
714
+ title: Main Logic Board Serial
743
715
  mmap:
744
716
  description: Memory Map
745
717
  nsih:
@@ -762,6 +734,7 @@ manifest_properties:
762
734
  Potentially indicates that the policy is for a recovery boot only.
763
735
  type: boolean
764
736
  rfcg:
737
+ title: Reconfigure Mode
765
738
  type: boolean
766
739
  rsch:
767
740
  description: research mode
@@ -804,7 +777,7 @@ manifest_properties:
804
777
  roots:
805
778
  - ManifestKey-DataCenter
806
779
  uidm:
807
- description: UID Mode (Enabled)
780
+ description: UID Mixing (Entanglement)
808
781
  type: boolean
809
782
  roots:
810
783
  - ManifestKey-DataCenter
@@ -1123,6 +1096,8 @@ img4_tags:
1123
1096
  description: Chained LocalPolicy Hash String
1124
1097
  Coor:
1125
1098
  title: Country of Origin
1099
+ DGST:
1100
+ title: Object Digest
1126
1101
  DPCl:
1127
1102
  title: Primary Calibration Matrix
1128
1103
  DPRO:
@@ -1158,6 +1133,8 @@ img4_tags:
1158
1133
  title: Proximity Calibration Data
1159
1134
  RMd#:
1160
1135
  title: Regional Model Number
1136
+ SDOM:
1137
+ title: Security Domain
1161
1138
  SPTM:
1162
1139
  description: Secure Page Table Monitor
1163
1140
  SpTS:
@@ -1194,10 +1171,12 @@ img4_tags:
1194
1171
  auac:
1195
1172
  description:
1196
1173
  batf:
1174
+ title: Battery Firmware
1197
1175
  berb:
1198
1176
  bles:
1199
1177
  description:
1200
1178
  cfel:
1179
+ title: CFELoader
1201
1180
  description:
1202
1181
  firmware_name: CFELoader
1203
1182
  cker:
@@ -1287,6 +1266,18 @@ img4_tags:
1287
1266
  description:
1288
1267
  itst:
1289
1268
  description: Installer Test?
1269
+ kcrf:
1270
+ name: Kernel Cache Read-Only File Offset
1271
+ kcrz:
1272
+ name: Kernel Cache Read-Only File Size
1273
+ kcwf:
1274
+ name: Kernel Cache Write File Offset
1275
+ kcwz:
1276
+ name: Kernel Cache Write File Size
1277
+ kcxf:
1278
+ name: Kernel Cache Execute File Offset
1279
+ kcxz:
1280
+ name: Kernel Cache Execute File Size
1290
1281
  kdlv:
1291
1282
  description: Kernel Linker Version
1292
1283
  lamo:
@@ -1397,6 +1388,8 @@ img4_tags:
1397
1388
  description:
1398
1389
  tics:
1399
1390
  description:
1391
+ time:
1392
+ title: Timestamp
1400
1393
  tstp:
1401
1394
  title: Testing Product
1402
1395
  tz0s:
data/share/pki.yaml CHANGED
@@ -92,7 +92,7 @@ oids:
92
92
  symbol: oidAppleSecureBootTicketCertSpec
93
93
  1.2.840.113635.100.6.1.15:
94
94
  title: IMG4 Manifest Certificate Specification
95
- name: appleImg4Manifest
95
+ name: appleImg4ManifestSpecification
96
96
  type: sequence
97
97
  description: "Constriction on values that can be specified or signed by this certificate.
98
98
  \ Conatins two sub-sequesnces, \nthe MANP (Manifest Properties) and the OBJP
@@ -144,11 +144,13 @@ oids:
144
144
  apple_description: Apple World Wide Developer Relations Certificates for Code
145
145
  Signing GM from developer to Apple
146
146
  1.2.840.113635.100.6.16:
147
+ name: appleSecureEnclaveFDRCommands
147
148
  description: A sequence of FDR programming commands, seperated by ";". Each command
148
149
  is "PUT" or "GET" prior to a 4CC value, followed by a ":" then the value of
149
150
  the key.
150
151
  example: PUT/FSCl:sik-FXFYFXFFYFFEX-QQRRRDEETFEFYCEIESLIREILCILESCLSELRESERSER
151
152
  1.2.840.113635.100.6.17:
153
+ name: appleKeyInstanceName
152
154
  description: Contains the name of the key
153
155
  1.2.840.113635.100.6.2:
154
156
  title: Apple Security Algorithm
@@ -158,6 +160,7 @@ oids:
158
160
  1.2.840.113635.100.6.2.10:
159
161
  symbol: oidAppleIntmMarkerAppleSystemIntg2
160
162
  1.2.840.113635.100.6.2.12:
163
+ name: appleIntmMarkerAppleServerAuthentication
161
164
  symbol: oidAppleIntmMarkerAppleServerAuthentication
162
165
  1.2.840.113635.100.6.2.13:
163
166
  symbol: oidAppleIntmMarkerAppleSystemIntgG3
@@ -258,6 +261,10 @@ oids:
258
261
  1.2.840.113635.100.6.71.1:
259
262
  description: Made for iDevice (MFi) - Authentication v4 - Apple Accessory Properties
260
263
  Extension
264
+ 1.2.840.113635.100.6.8:
265
+ name: appleImg4Manifest
266
+ 1.2.840.113635.100.6.9:
267
+ title: appleSomeSHA256Hash
261
268
  1.2.840.113635.100.7.1.1:
262
269
  apple_description: 'Apple FairPlay certificate extended Application Authentication
263
270
  & Authorization: Policy'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apple-data
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.653
4
+ version: 1.0.655
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rick Mark
@@ -92,6 +92,7 @@ extra_rdoc_files:
92
92
  files:
93
93
  - README.md
94
94
  - lib/apple_data.rb
95
+ - lib/apple_data/asn1_definition.rb
95
96
  - lib/apple_data/data_file.rb
96
97
  - lib/apple_data/dsl/collection_definition.rb
97
98
  - lib/apple_data/dsl/data_file_definition.rb