@peculiar/certificates-viewer 4.0.1 → 4.1.0

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.
Files changed (242) hide show
  1. package/README.md +1 -1
  2. package/components/actions.js +21 -0
  3. package/components/actions.js.map +1 -0
  4. package/components/arrow_top.js +1 -1
  5. package/components/attribute-certificate-viewer.js +7 -7
  6. package/components/attribute-certificate-viewer.js.map +1 -1
  7. package/components/button-menu.js +2 -14
  8. package/components/button-menu.js.map +1 -1
  9. package/components/certificate-viewer.js +5 -5
  10. package/components/certificate-viewer.js.map +1 -1
  11. package/components/crl-viewer.js +6 -6
  12. package/components/crl-viewer.js.map +1 -1
  13. package/components/cross.js +47 -0
  14. package/components/cross.js.map +1 -0
  15. package/components/csr-viewer.js +4 -4
  16. package/components/csr-viewer.js.map +1 -1
  17. package/components/download.js +404 -374
  18. package/components/download.js.map +1 -1
  19. package/components/index.js +5 -1
  20. package/components/index.js.map +1 -1
  21. package/components/index2.js +2 -2
  22. package/components/index2.js.map +1 -1
  23. package/components/issuer_name.js +2 -2
  24. package/components/miscellaneous.js +648 -245
  25. package/components/miscellaneous.js.map +1 -1
  26. package/components/peculiar-certificates-viewer.js +4 -42
  27. package/components/peculiar-certificates-viewer.js.map +1 -1
  28. package/components/peculiar-text-hider.js +1 -1
  29. package/components/subject_name.js +2 -2
  30. package/components/subject_name.js.map +1 -1
  31. package/dist/cjs/actions-19013d4a.js +23 -0
  32. package/dist/cjs/actions-19013d4a.js.map +1 -0
  33. package/dist/cjs/{certification_request-c0cafa72.js → certification_request-bf416170.js} +553 -214
  34. package/dist/cjs/certification_request-bf416170.js.map +1 -0
  35. package/dist/cjs/{crl-b4322166.js → crl-d9591b95.js} +14 -14
  36. package/dist/cjs/{crl-b4322166.js.map → crl-d9591b95.js.map} +1 -1
  37. package/dist/cjs/cross-9872c473.js +51 -0
  38. package/dist/cjs/cross-9872c473.js.map +1 -0
  39. package/dist/cjs/{download-972dda8a.js → download-0fa5b33c.js} +377 -377
  40. package/dist/cjs/download-0fa5b33c.js.map +1 -0
  41. package/dist/cjs/index.cjs.js +18 -1
  42. package/dist/cjs/index.cjs.js.map +1 -1
  43. package/dist/cjs/link-6aea0be4.js +25 -0
  44. package/dist/cjs/link-6aea0be4.js.map +1 -0
  45. package/dist/cjs/{miscellaneous-806a04a5.js → miscellaneous-6e800553.js} +114 -33
  46. package/dist/cjs/miscellaneous-6e800553.js.map +1 -0
  47. package/dist/cjs/peculiar-attribute-certificate-viewer_3.cjs.entry.js +9 -8
  48. package/dist/cjs/peculiar-attribute-certificate-viewer_3.cjs.entry.js.map +1 -1
  49. package/dist/cjs/peculiar-button-menu_3.cjs.entry.js +2 -14
  50. package/dist/cjs/peculiar-button-menu_3.cjs.entry.js.map +1 -1
  51. package/dist/cjs/peculiar-certificate-decoder.cjs.entry.js +4 -4
  52. package/dist/cjs/peculiar-certificate-viewer.cjs.entry.js +5 -4
  53. package/dist/cjs/peculiar-certificate-viewer.cjs.entry.js.map +1 -1
  54. package/dist/cjs/peculiar-certificates-viewer.cjs.entry.js +9 -47
  55. package/dist/cjs/peculiar-certificates-viewer.cjs.entry.js.map +1 -1
  56. package/dist/cjs/{x509_certificate-989b1435.js → x509_certificate-53feebd3.js} +7 -7
  57. package/dist/cjs/{x509_certificate-989b1435.js.map → x509_certificate-53feebd3.js.map} +1 -1
  58. package/dist/collection/components/certificate-details-parts/extensions/index.js +5 -0
  59. package/dist/collection/components/certificate-details-parts/extensions/index.js.map +1 -1
  60. package/dist/collection/components/certificate-details-parts/extensions/key_description_extension.js +80 -0
  61. package/dist/collection/components/certificate-details-parts/extensions/key_description_extension.js.map +1 -0
  62. package/dist/collection/constants/oids.js +1 -0
  63. package/dist/collection/constants/oids.js.map +1 -1
  64. package/dist/collection/crypto/extension.js +4 -0
  65. package/dist/collection/crypto/extension.js.map +1 -1
  66. package/dist/collection/index.js +4 -0
  67. package/dist/collection/index.js.map +1 -1
  68. package/dist/collection/utils/camel_case_to_words.js +15 -0
  69. package/dist/collection/utils/camel_case_to_words.js.map +1 -0
  70. package/dist/collection/utils/index.js +1 -0
  71. package/dist/collection/utils/index.js.map +1 -1
  72. package/dist/esm/actions-8d745b2a.js +21 -0
  73. package/dist/esm/actions-8d745b2a.js.map +1 -0
  74. package/dist/esm/{arrow_top-efd3a56d.js → arrow_top-fc298828.js} +2 -2
  75. package/dist/esm/{arrow_top-efd3a56d.js.map → arrow_top-fc298828.js.map} +1 -1
  76. package/dist/esm/{certification_request-5cadde9f.js → certification_request-c9dc8e9c.js} +545 -209
  77. package/dist/esm/certification_request-c9dc8e9c.js.map +1 -0
  78. package/dist/esm/{crl-11670c3e.js → crl-70e85374.js} +14 -14
  79. package/dist/esm/{crl-11670c3e.js.map → crl-70e85374.js.map} +1 -1
  80. package/dist/esm/cross-9ec9a759.js +47 -0
  81. package/dist/esm/cross-9ec9a759.js.map +1 -0
  82. package/dist/esm/{download-57c5bf8f.js → download-aacb6eff.js} +375 -375
  83. package/dist/esm/download-aacb6eff.js.map +1 -0
  84. package/dist/esm/index.js +8 -1
  85. package/dist/esm/index.js.map +1 -1
  86. package/dist/esm/link-ad24c3be.js +23 -0
  87. package/dist/esm/link-ad24c3be.js.map +1 -0
  88. package/dist/esm/{miscellaneous-1d4e8b41.js → miscellaneous-0763f98e.js} +108 -27
  89. package/dist/esm/miscellaneous-0763f98e.js.map +1 -0
  90. package/dist/esm/peculiar-attribute-certificate-viewer_3.entry.js +9 -8
  91. package/dist/esm/peculiar-attribute-certificate-viewer_3.entry.js.map +1 -1
  92. package/dist/esm/peculiar-button-menu_3.entry.js +2 -14
  93. package/dist/esm/peculiar-button-menu_3.entry.js.map +1 -1
  94. package/dist/esm/peculiar-certificate-decoder.entry.js +4 -4
  95. package/dist/esm/peculiar-certificate-viewer.entry.js +5 -4
  96. package/dist/esm/peculiar-certificate-viewer.entry.js.map +1 -1
  97. package/dist/esm/peculiar-certificates-viewer.entry.js +5 -43
  98. package/dist/esm/peculiar-certificates-viewer.entry.js.map +1 -1
  99. package/dist/esm/peculiar-text-hider.entry.js +1 -1
  100. package/dist/esm/{x509_certificate-dfae6999.js → x509_certificate-8cf268d1.js} +7 -7
  101. package/dist/esm/{x509_certificate-dfae6999.js.map → x509_certificate-8cf268d1.js.map} +1 -1
  102. package/dist/esm-es5/actions-8d745b2a.js +12 -0
  103. package/dist/esm-es5/actions-8d745b2a.js.map +1 -0
  104. package/dist/esm-es5/{arrow_top-efd3a56d.js → arrow_top-fc298828.js} +2 -2
  105. package/dist/esm-es5/certification_request-c9dc8e9c.js +97 -0
  106. package/dist/esm-es5/certification_request-c9dc8e9c.js.map +1 -0
  107. package/dist/esm-es5/{crl-11670c3e.js → crl-70e85374.js} +6 -6
  108. package/dist/esm-es5/{crl-11670c3e.js.map → crl-70e85374.js.map} +1 -1
  109. package/dist/esm-es5/cross-9ec9a759.js +26 -0
  110. package/dist/esm-es5/cross-9ec9a759.js.map +1 -0
  111. package/dist/esm-es5/download-aacb6eff.js +43 -0
  112. package/dist/esm-es5/download-aacb6eff.js.map +1 -0
  113. package/dist/esm-es5/index.js +1 -1
  114. package/dist/esm-es5/link-ad24c3be.js +12 -0
  115. package/dist/esm-es5/link-ad24c3be.js.map +1 -0
  116. package/dist/esm-es5/{miscellaneous-1d4e8b41.js → miscellaneous-0763f98e.js} +58 -51
  117. package/dist/esm-es5/miscellaneous-0763f98e.js.map +1 -0
  118. package/dist/esm-es5/peculiar-attribute-certificate-viewer_3.entry.js +3 -3
  119. package/dist/esm-es5/peculiar-attribute-certificate-viewer_3.entry.js.map +1 -1
  120. package/dist/esm-es5/peculiar-button-menu_3.entry.js +1 -8
  121. package/dist/esm-es5/peculiar-button-menu_3.entry.js.map +1 -1
  122. package/dist/esm-es5/peculiar-certificate-decoder.entry.js +1 -1
  123. package/dist/esm-es5/peculiar-certificate-viewer.entry.js +1 -1
  124. package/dist/esm-es5/peculiar-certificate-viewer.entry.js.map +1 -1
  125. package/dist/esm-es5/peculiar-certificates-viewer.entry.js +2 -23
  126. package/dist/esm-es5/peculiar-certificates-viewer.entry.js.map +1 -1
  127. package/dist/esm-es5/peculiar-text-hider.entry.js +1 -1
  128. package/dist/esm-es5/x509_certificate-8cf268d1.js +12 -0
  129. package/dist/esm-es5/{x509_certificate-dfae6999.js.map → x509_certificate-8cf268d1.js.map} +1 -1
  130. package/dist/peculiar/index.esm.js +1 -1
  131. package/dist/peculiar/p-025b3cfb.entry.js +5 -0
  132. package/dist/peculiar/{p-fd4b9a50.entry.js.map → p-025b3cfb.entry.js.map} +1 -1
  133. package/dist/peculiar/p-0bd7c6bc.system.entry.js +13 -0
  134. package/dist/peculiar/p-0bd7c6bc.system.entry.js.map +1 -0
  135. package/dist/peculiar/{p-709994c1.js → p-0fc2e2b4.js} +2 -2
  136. package/dist/peculiar/p-10d2d400.system.js +34 -0
  137. package/dist/peculiar/{p-6667fe6e.system.js.map → p-10d2d400.system.js.map} +1 -1
  138. package/dist/peculiar/p-14f281b0.system.js +43 -0
  139. package/dist/peculiar/p-14f281b0.system.js.map +1 -0
  140. package/dist/peculiar/p-15cb92b5.system.js +97 -0
  141. package/dist/peculiar/p-15cb92b5.system.js.map +1 -0
  142. package/dist/peculiar/p-1ceb0fe3.js +12 -0
  143. package/dist/peculiar/p-1ceb0fe3.js.map +1 -0
  144. package/dist/peculiar/p-1ef997ee.js +97 -0
  145. package/dist/peculiar/p-1ef997ee.js.map +1 -0
  146. package/dist/peculiar/{p-e39de121.system.entry.js → p-24050d82.system.entry.js} +2 -2
  147. package/dist/peculiar/p-2f48fe70.entry.js +12 -0
  148. package/dist/peculiar/p-2f48fe70.entry.js.map +1 -0
  149. package/dist/peculiar/{p-0bdcdbf7.system.js → p-31b60224.system.js} +59 -52
  150. package/dist/peculiar/p-31b60224.system.js.map +1 -0
  151. package/dist/peculiar/p-33196289.entry.js +5 -0
  152. package/dist/peculiar/{p-90459cec.entry.js.map → p-33196289.entry.js.map} +1 -1
  153. package/dist/peculiar/p-370cee20.js +26 -0
  154. package/dist/peculiar/p-370cee20.js.map +1 -0
  155. package/dist/peculiar/{p-7ed7cd97.system.entry.js → p-4ab9673f.system.entry.js} +4 -4
  156. package/dist/peculiar/{p-7ed7cd97.system.entry.js.map → p-4ab9673f.system.entry.js.map} +1 -1
  157. package/dist/peculiar/{p-8748391f.system.entry.js → p-5151cb6f.system.entry.js} +2 -2
  158. package/dist/peculiar/p-53784f15.system.entry.js +5 -0
  159. package/dist/peculiar/p-53784f15.system.entry.js.map +1 -0
  160. package/dist/peculiar/p-542412ae.js +33 -0
  161. package/dist/peculiar/{p-43eb3721.js.map → p-542412ae.js.map} +1 -1
  162. package/dist/peculiar/p-59e5ac12.js +43 -0
  163. package/dist/peculiar/p-59e5ac12.js.map +1 -0
  164. package/dist/peculiar/p-5ab007e9.entry.js +5 -0
  165. package/dist/peculiar/p-5ab007e9.entry.js.map +1 -0
  166. package/dist/peculiar/p-5e49b881.system.entry.js +5 -0
  167. package/dist/peculiar/{p-26981468.system.entry.js.map → p-5e49b881.system.entry.js.map} +1 -1
  168. package/dist/peculiar/p-6cb88fd6.system.js +13 -0
  169. package/dist/peculiar/p-6cb88fd6.system.js.map +1 -0
  170. package/dist/peculiar/p-72f53d81.js +12 -0
  171. package/dist/peculiar/{p-6e79b9c8.js.map → p-72f53d81.js.map} +1 -1
  172. package/dist/peculiar/p-80832207.system.js +1 -1
  173. package/dist/peculiar/p-94a453d7.js +12 -0
  174. package/dist/peculiar/p-94a453d7.js.map +1 -0
  175. package/dist/peculiar/{p-f3d85a5f.entry.js → p-9c91dd68.entry.js} +5 -5
  176. package/dist/peculiar/{p-f3d85a5f.entry.js.map → p-9c91dd68.entry.js.map} +1 -1
  177. package/dist/peculiar/p-a3eeb94b.system.js +5 -0
  178. package/dist/peculiar/p-b313be9e.system.js +13 -0
  179. package/dist/peculiar/p-b313be9e.system.js.map +1 -0
  180. package/dist/peculiar/{p-daf23673.system.js → p-c99507d4.system.js} +3 -3
  181. package/dist/peculiar/p-ca02a823.js +362 -0
  182. package/dist/peculiar/p-ca02a823.js.map +1 -0
  183. package/dist/peculiar/p-cfca7dae.system.js +13 -0
  184. package/dist/peculiar/{p-31586b23.system.js.map → p-cfca7dae.system.js.map} +1 -1
  185. package/dist/peculiar/p-ddae2f8e.system.js +27 -0
  186. package/dist/peculiar/p-ddae2f8e.system.js.map +1 -0
  187. package/dist/peculiar/{p-882e1281.entry.js → p-e5b18cd1.entry.js} +2 -2
  188. package/dist/peculiar/peculiar.esm.js +1 -1
  189. package/dist/types/components/certificate-details-parts/extensions/key_description_extension.d.ts +15 -0
  190. package/dist/types/constants/oids.d.ts +1 -0
  191. package/dist/types/crypto/extension.d.ts +2 -1
  192. package/dist/types/index.d.ts +4 -0
  193. package/dist/types/utils/camel_case_to_words.d.ts +8 -0
  194. package/dist/types/utils/index.d.ts +1 -0
  195. package/hydrate/index.js +1039 -609
  196. package/package.json +22 -21
  197. package/dist/cjs/certification_request-c0cafa72.js.map +0 -1
  198. package/dist/cjs/download-972dda8a.js.map +0 -1
  199. package/dist/cjs/miscellaneous-806a04a5.js.map +0 -1
  200. package/dist/esm/certification_request-5cadde9f.js.map +0 -1
  201. package/dist/esm/download-57c5bf8f.js.map +0 -1
  202. package/dist/esm/miscellaneous-1d4e8b41.js.map +0 -1
  203. package/dist/esm-es5/certification_request-5cadde9f.js +0 -97
  204. package/dist/esm-es5/certification_request-5cadde9f.js.map +0 -1
  205. package/dist/esm-es5/download-57c5bf8f.js +0 -19
  206. package/dist/esm-es5/download-57c5bf8f.js.map +0 -1
  207. package/dist/esm-es5/miscellaneous-1d4e8b41.js.map +0 -1
  208. package/dist/esm-es5/x509_certificate-dfae6999.js +0 -12
  209. package/dist/peculiar/p-0bdcdbf7.system.js.map +0 -1
  210. package/dist/peculiar/p-23555789.system.entry.js +0 -34
  211. package/dist/peculiar/p-23555789.system.entry.js.map +0 -1
  212. package/dist/peculiar/p-26981468.system.entry.js +0 -5
  213. package/dist/peculiar/p-31586b23.system.js +0 -13
  214. package/dist/peculiar/p-43eb3721.js +0 -33
  215. package/dist/peculiar/p-5823e6e8.entry.js +0 -12
  216. package/dist/peculiar/p-5823e6e8.entry.js.map +0 -1
  217. package/dist/peculiar/p-596836a7.entry.js +0 -33
  218. package/dist/peculiar/p-596836a7.entry.js.map +0 -1
  219. package/dist/peculiar/p-6667fe6e.system.js +0 -34
  220. package/dist/peculiar/p-6e79b9c8.js +0 -12
  221. package/dist/peculiar/p-74c241e7.js +0 -97
  222. package/dist/peculiar/p-74c241e7.js.map +0 -1
  223. package/dist/peculiar/p-90459cec.entry.js +0 -5
  224. package/dist/peculiar/p-97688065.js +0 -355
  225. package/dist/peculiar/p-97688065.js.map +0 -1
  226. package/dist/peculiar/p-a053c132.js +0 -19
  227. package/dist/peculiar/p-a053c132.js.map +0 -1
  228. package/dist/peculiar/p-ae9189f6.system.js +0 -19
  229. package/dist/peculiar/p-ae9189f6.system.js.map +0 -1
  230. package/dist/peculiar/p-bd485115.system.entry.js +0 -13
  231. package/dist/peculiar/p-bd485115.system.entry.js.map +0 -1
  232. package/dist/peculiar/p-c0a298fd.system.js +0 -97
  233. package/dist/peculiar/p-c0a298fd.system.js.map +0 -1
  234. package/dist/peculiar/p-e1960173.system.js +0 -5
  235. package/dist/peculiar/p-fd4b9a50.entry.js +0 -5
  236. /package/dist/esm-es5/{arrow_top-efd3a56d.js.map → arrow_top-fc298828.js.map} +0 -0
  237. /package/dist/peculiar/{p-709994c1.js.map → p-0fc2e2b4.js.map} +0 -0
  238. /package/dist/peculiar/{p-e39de121.system.entry.js.map → p-24050d82.system.entry.js.map} +0 -0
  239. /package/dist/peculiar/{p-8748391f.system.entry.js.map → p-5151cb6f.system.entry.js.map} +0 -0
  240. /package/dist/peculiar/{p-e1960173.system.js.map → p-a3eeb94b.system.js.map} +0 -0
  241. /package/dist/peculiar/{p-daf23673.system.js.map → p-c99507d4.system.js.map} +0 -0
  242. /package/dist/peculiar/{p-882e1281.entry.js.map → p-e5b18cd1.entry.js.map} +0 -0
@@ -0,0 +1,80 @@
1
+ /*!
2
+ * © Peculiar Ventures https://peculiarventures.com/ - MIT License
3
+ */
4
+ /**
5
+ * @license
6
+ * Copyright (c) Peculiar Ventures, LLC.
7
+ *
8
+ * This source code is licensed under the MIT license found in the
9
+ * LICENSE file in the root directory of this source tree.
10
+ */
11
+ import { h } from "@stencil/core";
12
+ import { AttestationApplicationId, IntegerSet, RootOfTrust, } from "@peculiar/asn1-android";
13
+ import { Convert, BufferSourceConverter } from "pvtsutils";
14
+ import { AsnParser } from "@peculiar/asn1-schema";
15
+ import { l10n, camelCaseToWords } from "../../../utils";
16
+ import { RowValue, TableRowTable } from "../row";
17
+ import { BasicExtension } from "./basic_extension";
18
+ export const KeyDescriptionExtension = (props) => {
19
+ const { extension } = props;
20
+ const renderRowValue = (data) => Object.keys(data).map((keyName) => {
21
+ const keyValue = data[keyName];
22
+ let value = '';
23
+ switch (true) {
24
+ case typeof keyValue === 'string' || typeof keyValue === 'number':
25
+ value = keyValue;
26
+ break;
27
+ case keyValue instanceof IntegerSet:
28
+ value = keyValue.join(', ');
29
+ break;
30
+ case typeof keyValue === 'boolean':
31
+ value = keyValue
32
+ ? l10n.getString('yes')
33
+ : l10n.getString('no');
34
+ break;
35
+ case Object.is(keyValue, null):
36
+ value = 'NULL';
37
+ break;
38
+ case keyValue instanceof RootOfTrust:
39
+ return [
40
+ h(RowValue, { name: camelCaseToWords(keyName), value: "" }),
41
+ h(TableRowTable, null, renderRowValue(keyValue)),
42
+ ];
43
+ case BufferSourceConverter.isBufferSource(keyValue):
44
+ if (keyName === 'attestationApplicationId') {
45
+ try {
46
+ const parsed = AsnParser.parse(keyValue, AttestationApplicationId);
47
+ if (parsed.packageInfos.length || parsed.signatureDigests.length) {
48
+ return [
49
+ h(RowValue, { name: camelCaseToWords(keyName), value: "" }),
50
+ Boolean(parsed.packageInfos) && (h(TableRowTable, null, h(RowValue, { name: camelCaseToWords('packageInfos'), value: "" }), parsed.packageInfos.map((attestationPackageInfo) => (h(TableRowTable, null, renderRowValue(attestationPackageInfo)))))),
51
+ ];
52
+ }
53
+ }
54
+ catch (error) {
55
+ //
56
+ }
57
+ }
58
+ try {
59
+ value = Convert.ToString(keyValue);
60
+ }
61
+ catch (error) {
62
+ value = Convert.ToHex(keyValue);
63
+ }
64
+ break;
65
+ default:
66
+ }
67
+ return (h(RowValue, { name: camelCaseToWords(keyName), value: value }));
68
+ });
69
+ const renderAuthorizationList = (title, authorizationList) => {
70
+ if (authorizationList.length === 0) {
71
+ return null;
72
+ }
73
+ return [
74
+ h(RowValue, { name: title, value: "" }),
75
+ h(TableRowTable, null, authorizationList.map(renderRowValue)),
76
+ ];
77
+ };
78
+ return (h(BasicExtension, { extension: extension }, h(RowValue, { name: camelCaseToWords('attestationVersion'), value: extension.value.attestationVersion }), h(RowValue, { name: camelCaseToWords('attestationSecurityLevel'), value: extension.value.attestationSecurityLevel }), h(RowValue, { name: camelCaseToWords('keymasterVersion'), value: extension.value.keymasterVersion }), h(RowValue, { name: camelCaseToWords('keymasterSecurityLevel'), value: extension.value.keymasterSecurityLevel }), h(RowValue, { name: camelCaseToWords('attestationChallenge'), value: Convert.ToString(extension.value.attestationChallenge) }), h(RowValue, { name: camelCaseToWords('uniqueId'), value: Convert.ToString(extension.value.uniqueId) || undefined }), renderAuthorizationList(camelCaseToWords('softwareEnforced'), extension.value.softwareEnforced), renderAuthorizationList(camelCaseToWords('teeEnforced'), extension.value.teeEnforced)));
79
+ };
80
+ //# sourceMappingURL=key_description_extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key_description_extension.js","sourceRoot":"","sources":["../../../../src/components/certificate-details-parts/extensions/key_description_extension.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright (c) Peculiar Ventures, LLC.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { h, FunctionalComponent } from '@stencil/core';\nimport {\n NonStandardKeyDescription,\n AttestationApplicationId,\n AuthorizationList,\n IntegerSet,\n RootOfTrust,\n} from '@peculiar/asn1-android';\nimport { Convert, BufferSourceConverter } from 'pvtsutils';\nimport { AsnParser } from '@peculiar/asn1-schema';\n\nimport { l10n, camelCaseToWords } from '../../../utils';\nimport { Extension } from '../../../crypto/extension';\nimport { RowValue, TableRowTable } from '../row';\n\nimport { BasicExtension } from './basic_extension';\n\ninterface IKeyDescriptionExtensionProps {\n extension: Extension<NonStandardKeyDescription>;\n}\n\nexport const KeyDescriptionExtension:\nFunctionalComponent<IKeyDescriptionExtensionProps> = (props) => {\n const { extension } = props;\n\n const renderRowValue = (data: Object) => Object.keys(data).map((keyName) => {\n const keyValue = data[keyName];\n let value: string | number | string[] = '';\n\n switch (true) {\n case typeof keyValue === 'string' || typeof keyValue === 'number':\n value = keyValue;\n break;\n\n case keyValue instanceof IntegerSet:\n value = keyValue.join(', ');\n break;\n\n case typeof keyValue === 'boolean':\n value = keyValue\n ? l10n.getString('yes')\n : l10n.getString('no');\n break;\n\n case Object.is(keyValue, null):\n value = 'NULL';\n break;\n\n case keyValue instanceof RootOfTrust:\n return [\n <RowValue\n name={camelCaseToWords(keyName)}\n value=\"\"\n />,\n <TableRowTable>\n {renderRowValue(keyValue)}\n </TableRowTable>,\n ];\n\n case BufferSourceConverter.isBufferSource(keyValue):\n if (keyName === 'attestationApplicationId') {\n try {\n const parsed = AsnParser.parse(keyValue, AttestationApplicationId);\n\n if (parsed.packageInfos.length || parsed.signatureDigests.length) {\n return [\n <RowValue\n name={camelCaseToWords(keyName)}\n value=\"\"\n />,\n Boolean(parsed.packageInfos) && (\n <TableRowTable>\n <RowValue\n name={camelCaseToWords('packageInfos')}\n value=\"\"\n />\n {parsed.packageInfos.map((attestationPackageInfo) => (\n <TableRowTable>\n {renderRowValue(attestationPackageInfo)}\n </TableRowTable>\n ))}\n </TableRowTable>\n ),\n ];\n }\n } catch (error) {\n //\n }\n }\n\n try {\n value = Convert.ToString(keyValue);\n } catch (error) {\n value = Convert.ToHex(keyValue);\n }\n\n break;\n\n default:\n }\n\n return (\n <RowValue\n name={camelCaseToWords(keyName)}\n value={value}\n />\n );\n });\n\n const renderAuthorizationList = (title: string, authorizationList: AuthorizationList[]) => {\n if (authorizationList.length === 0) {\n return null;\n }\n\n return [\n <RowValue\n name={title}\n value=\"\"\n />,\n <TableRowTable>\n {authorizationList.map(renderRowValue)}\n </TableRowTable>,\n ];\n };\n\n return (\n <BasicExtension\n extension={extension}\n >\n <RowValue\n name={camelCaseToWords('attestationVersion')}\n value={extension.value.attestationVersion}\n />\n <RowValue\n name={camelCaseToWords('attestationSecurityLevel')}\n value={extension.value.attestationSecurityLevel}\n />\n <RowValue\n name={camelCaseToWords('keymasterVersion')}\n value={extension.value.keymasterVersion}\n />\n <RowValue\n name={camelCaseToWords('keymasterSecurityLevel')}\n value={extension.value.keymasterSecurityLevel}\n />\n <RowValue\n name={camelCaseToWords('attestationChallenge')}\n value={Convert.ToString(extension.value.attestationChallenge)}\n />\n <RowValue\n name={camelCaseToWords('uniqueId')}\n value={Convert.ToString(extension.value.uniqueId) || undefined}\n />\n {renderAuthorizationList(camelCaseToWords('softwareEnforced'), extension.value.softwareEnforced)}\n {renderAuthorizationList(camelCaseToWords('teeEnforced'), extension.value.teeEnforced)}\n </BasicExtension>\n );\n};\n"]}
@@ -2304,6 +2304,7 @@ export const OIDs = {
2304
2304
  '1.3.6.1.4.1.4329.7': 'Siemens Public Key Infrastructure',
2305
2305
  '1.3.6.1.4.1.52266.1': 'Legal Entity Identifier',
2306
2306
  '1.3.6.1.4.1.52266.2': 'Role',
2307
+ '1.3.6.1.4.1.11129.2.1.17': 'Android Key Attestation',
2307
2308
  // https://ec.europa.eu/futurium/sites/futurium/files/ntqwac_pilot.pdf
2308
2309
  '0.4.0.9496.1': 'Domain Name Beneficiary',
2309
2310
  '0.4.0.9496.2': 'DNB Legal representative',