pixel-react 1.15.21 → 1.15.23

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 (208) hide show
  1. package/lib/_virtual/aesCipherSuites.js +4 -0
  2. package/lib/_virtual/aesCipherSuites.js.map +1 -0
  3. package/lib/_virtual/asn1-validator.js +4 -0
  4. package/lib/_virtual/asn1-validator.js.map +1 -0
  5. package/lib/_virtual/asn1.js +4 -0
  6. package/lib/_virtual/asn1.js.map +1 -0
  7. package/lib/_virtual/cipherModes.js +4 -0
  8. package/lib/_virtual/cipherModes.js.map +1 -0
  9. package/lib/_virtual/hmac.js +4 -0
  10. package/lib/_virtual/hmac.js.map +1 -0
  11. package/lib/_virtual/index11.js +2 -2
  12. package/lib/_virtual/index12.js +2 -2
  13. package/lib/_virtual/index13.js +2 -2
  14. package/lib/_virtual/index14.js +4 -0
  15. package/lib/_virtual/index14.js.map +1 -0
  16. package/lib/_virtual/index2.js +5 -3
  17. package/lib/_virtual/index2.js.map +1 -1
  18. package/lib/_virtual/index3.js +4 -2
  19. package/lib/_virtual/index3.js.map +1 -1
  20. package/lib/_virtual/index4.js +2 -4
  21. package/lib/_virtual/index4.js.map +1 -1
  22. package/lib/_virtual/index5.js +4 -2
  23. package/lib/_virtual/index5.js.map +1 -1
  24. package/lib/_virtual/index6.js +2 -2
  25. package/lib/_virtual/index7.js +2 -6
  26. package/lib/_virtual/index7.js.map +1 -1
  27. package/lib/_virtual/index8.js +6 -2
  28. package/lib/_virtual/index8.js.map +1 -1
  29. package/lib/_virtual/index9.js +2 -2
  30. package/lib/_virtual/md5.js +4 -0
  31. package/lib/_virtual/md5.js.map +1 -0
  32. package/lib/_virtual/mgf1.js +4 -0
  33. package/lib/_virtual/mgf1.js.map +1 -0
  34. package/lib/_virtual/oids.js +4 -0
  35. package/lib/_virtual/oids.js.map +1 -0
  36. package/lib/_virtual/pem.js +4 -0
  37. package/lib/_virtual/pem.js.map +1 -0
  38. package/lib/_virtual/pkcs1.js +4 -0
  39. package/lib/_virtual/pkcs1.js.map +1 -0
  40. package/lib/_virtual/pkcs12.js +4 -0
  41. package/lib/_virtual/pkcs12.js.map +1 -0
  42. package/lib/_virtual/pkcs7.js +4 -0
  43. package/lib/_virtual/pkcs7.js.map +1 -0
  44. package/lib/_virtual/pkcs7asn1.js +4 -0
  45. package/lib/_virtual/pkcs7asn1.js.map +1 -0
  46. package/lib/_virtual/pki.js +4 -0
  47. package/lib/_virtual/pki.js.map +1 -0
  48. package/lib/_virtual/prime.js +4 -0
  49. package/lib/_virtual/prime.js.map +1 -0
  50. package/lib/_virtual/prng.js +4 -0
  51. package/lib/_virtual/prng.js.map +1 -0
  52. package/lib/_virtual/pss.js +4 -0
  53. package/lib/_virtual/pss.js.map +1 -0
  54. package/lib/_virtual/random.js +4 -0
  55. package/lib/_virtual/random.js.map +1 -0
  56. package/lib/_virtual/sha1.js +4 -0
  57. package/lib/_virtual/sha1.js.map +1 -0
  58. package/lib/_virtual/sha256.js +4 -0
  59. package/lib/_virtual/sha256.js.map +1 -0
  60. package/lib/_virtual/sha512.js +4 -0
  61. package/lib/_virtual/sha512.js.map +1 -0
  62. package/lib/_virtual/ssh.js +4 -0
  63. package/lib/_virtual/ssh.js.map +1 -0
  64. package/lib/_virtual/util.js +4 -0
  65. package/lib/_virtual/util.js.map +1 -0
  66. package/lib/_virtual/x509.js +4 -0
  67. package/lib/_virtual/x509.js.map +1 -0
  68. package/lib/assets/icons/testify_icon.svg.js +6 -0
  69. package/lib/assets/icons/testify_icon.svg.js.map +1 -0
  70. package/lib/assets/icons/testify_loader.svg.js +6 -0
  71. package/lib/assets/icons/testify_loader.svg.js.map +1 -0
  72. package/lib/assets/icons/testify_logo_name.svg.js +6 -0
  73. package/lib/assets/icons/testify_logo_name.svg.js.map +1 -0
  74. package/lib/components/AllProjectsDropdown/AllProjectsDropdown.js +3 -1
  75. package/lib/components/AllProjectsDropdown/AllProjectsDropdown.js.map +1 -1
  76. package/lib/components/Charts/DashboardDonutChart/DashboardDonutChart.js +2 -9
  77. package/lib/components/Charts/DashboardDonutChart/DashboardDonutChart.js.map +1 -1
  78. package/lib/components/Charts/DashboardDonutChart/types.d.ts +1 -1
  79. package/lib/components/ConditionalDropdown/ConditionalDropdown.js +2 -9
  80. package/lib/components/ConditionalDropdown/ConditionalDropdown.js.map +1 -1
  81. package/lib/components/Editor/Editor.js +37 -17
  82. package/lib/components/Editor/Editor.js.map +1 -1
  83. package/lib/components/Icon/iconList.js +6 -0
  84. package/lib/components/Icon/iconList.js.map +1 -1
  85. package/lib/components/MultiSelect/MultiSelect.js +9 -10
  86. package/lib/components/MultiSelect/MultiSelect.js.map +1 -1
  87. package/lib/components/PhoneInput/PhoneInput.js +1 -0
  88. package/lib/components/PhoneInput/PhoneInput.js.map +1 -1
  89. package/lib/components/SessionDropdown/SessionDropdown.js +4 -2
  90. package/lib/components/SessionDropdown/SessionDropdown.js.map +1 -1
  91. package/lib/index.cjs +27423 -379
  92. package/lib/index.cjs.map +1 -1
  93. package/lib/index.d.ts +1 -1
  94. package/lib/node_modules/classnames/index.js +1 -1
  95. package/lib/node_modules/input-format/modules/react/Input.js +1 -1
  96. package/lib/node_modules/js-beautify/js/index.js +1 -1
  97. package/lib/node_modules/js-beautify/js/src/html/beautifier.js +1 -1
  98. package/lib/node_modules/js-beautify/js/src/html/index.js +1 -1
  99. package/lib/node_modules/js-beautify/js/src/html/options.js +1 -1
  100. package/lib/node_modules/js-beautify/js/src/html/tokenizer.js +1 -1
  101. package/lib/node_modules/js-beautify/js/src/index.js +1 -1
  102. package/lib/node_modules/js-beautify/js/src/javascript/beautifier.js +1 -1
  103. package/lib/node_modules/js-beautify/js/src/javascript/index.js +1 -1
  104. package/lib/node_modules/js-beautify/js/src/javascript/options.js +1 -1
  105. package/lib/node_modules/js-beautify/js/src/javascript/tokenizer.js +1 -1
  106. package/lib/node_modules/node-forge/lib/aes.js +1014 -0
  107. package/lib/node_modules/node-forge/lib/aes.js.map +1 -0
  108. package/lib/node_modules/node-forge/lib/aesCipherSuites.js +286 -0
  109. package/lib/node_modules/node-forge/lib/aesCipherSuites.js.map +1 -0
  110. package/lib/node_modules/node-forge/lib/asn1-validator.js +100 -0
  111. package/lib/node_modules/node-forge/lib/asn1-validator.js.map +1 -0
  112. package/lib/node_modules/node-forge/lib/asn1.js +1379 -0
  113. package/lib/node_modules/node-forge/lib/asn1.js.map +1 -0
  114. package/lib/node_modules/node-forge/lib/baseN.js +181 -0
  115. package/lib/node_modules/node-forge/lib/baseN.js.map +1 -0
  116. package/lib/node_modules/node-forge/lib/cipher.js +236 -0
  117. package/lib/node_modules/node-forge/lib/cipher.js.map +1 -0
  118. package/lib/node_modules/node-forge/lib/cipherModes.js +936 -0
  119. package/lib/node_modules/node-forge/lib/cipherModes.js.map +1 -0
  120. package/lib/node_modules/node-forge/lib/des.js +467 -0
  121. package/lib/node_modules/node-forge/lib/des.js.map +1 -0
  122. package/lib/node_modules/node-forge/lib/ed25519.js +1108 -0
  123. package/lib/node_modules/node-forge/lib/ed25519.js.map +1 -0
  124. package/lib/node_modules/node-forge/lib/forge.js +23 -0
  125. package/lib/node_modules/node-forge/lib/forge.js.map +1 -0
  126. package/lib/node_modules/node-forge/lib/hmac.js +158 -0
  127. package/lib/node_modules/node-forge/lib/hmac.js.map +1 -0
  128. package/lib/node_modules/node-forge/lib/index.js +70 -0
  129. package/lib/node_modules/node-forge/lib/index.js.map +1 -0
  130. package/lib/node_modules/node-forge/lib/jsbn.js +1481 -0
  131. package/lib/node_modules/node-forge/lib/jsbn.js.map +1 -0
  132. package/lib/node_modules/node-forge/lib/kem.js +178 -0
  133. package/lib/node_modules/node-forge/lib/kem.js.map +1 -0
  134. package/lib/node_modules/node-forge/lib/log.js +325 -0
  135. package/lib/node_modules/node-forge/lib/log.js.map +1 -0
  136. package/lib/node_modules/node-forge/lib/md.all.js +28 -0
  137. package/lib/node_modules/node-forge/lib/md.all.js.map +1 -0
  138. package/lib/node_modules/node-forge/lib/md.js +22 -0
  139. package/lib/node_modules/node-forge/lib/md.js.map +1 -0
  140. package/lib/node_modules/node-forge/lib/md5.js +288 -0
  141. package/lib/node_modules/node-forge/lib/md5.js.map +1 -0
  142. package/lib/node_modules/node-forge/lib/mgf.js +24 -0
  143. package/lib/node_modules/node-forge/lib/mgf.js.map +1 -0
  144. package/lib/node_modules/node-forge/lib/mgf1.js +68 -0
  145. package/lib/node_modules/node-forge/lib/mgf1.js.map +1 -0
  146. package/lib/node_modules/node-forge/lib/oids.js +185 -0
  147. package/lib/node_modules/node-forge/lib/oids.js.map +1 -0
  148. package/lib/node_modules/node-forge/lib/pbe.js +966 -0
  149. package/lib/node_modules/node-forge/lib/pbe.js.map +1 -0
  150. package/lib/node_modules/node-forge/lib/pbkdf2.js +209 -0
  151. package/lib/node_modules/node-forge/lib/pbkdf2.js.map +1 -0
  152. package/lib/node_modules/node-forge/lib/pem.js +250 -0
  153. package/lib/node_modules/node-forge/lib/pem.js.map +1 -0
  154. package/lib/node_modules/node-forge/lib/pkcs1.js +273 -0
  155. package/lib/node_modules/node-forge/lib/pkcs1.js.map +1 -0
  156. package/lib/node_modules/node-forge/lib/pkcs12.js +980 -0
  157. package/lib/node_modules/node-forge/lib/pkcs12.js.map +1 -0
  158. package/lib/node_modules/node-forge/lib/pkcs7.js +1073 -0
  159. package/lib/node_modules/node-forge/lib/pkcs7.js.map +1 -0
  160. package/lib/node_modules/node-forge/lib/pkcs7asn1.js +415 -0
  161. package/lib/node_modules/node-forge/lib/pkcs7asn1.js.map +1 -0
  162. package/lib/node_modules/node-forge/lib/pki.js +125 -0
  163. package/lib/node_modules/node-forge/lib/pki.js.map +1 -0
  164. package/lib/node_modules/node-forge/lib/prime.js +297 -0
  165. package/lib/node_modules/node-forge/lib/prime.js.map +1 -0
  166. package/lib/node_modules/node-forge/lib/prng.js +433 -0
  167. package/lib/node_modules/node-forge/lib/prng.js.map +1 -0
  168. package/lib/node_modules/node-forge/lib/pss.js +246 -0
  169. package/lib/node_modules/node-forge/lib/pss.js.map +1 -0
  170. package/lib/node_modules/node-forge/lib/random.js +191 -0
  171. package/lib/node_modules/node-forge/lib/random.js.map +1 -0
  172. package/lib/node_modules/node-forge/lib/rc2.js +382 -0
  173. package/lib/node_modules/node-forge/lib/rc2.js.map +1 -0
  174. package/lib/node_modules/node-forge/lib/rsa.js +1815 -0
  175. package/lib/node_modules/node-forge/lib/rsa.js.map +1 -0
  176. package/lib/node_modules/node-forge/lib/sha1.js +325 -0
  177. package/lib/node_modules/node-forge/lib/sha1.js.map +1 -0
  178. package/lib/node_modules/node-forge/lib/sha256.js +306 -0
  179. package/lib/node_modules/node-forge/lib/sha256.js.map +1 -0
  180. package/lib/node_modules/node-forge/lib/sha512.js +479 -0
  181. package/lib/node_modules/node-forge/lib/sha512.js.map +1 -0
  182. package/lib/node_modules/node-forge/lib/ssh.js +244 -0
  183. package/lib/node_modules/node-forge/lib/ssh.js.map +1 -0
  184. package/lib/node_modules/node-forge/lib/tls.js +4207 -0
  185. package/lib/node_modules/node-forge/lib/tls.js.map +1 -0
  186. package/lib/node_modules/node-forge/lib/util.js +2565 -0
  187. package/lib/node_modules/node-forge/lib/util.js.map +1 -0
  188. package/lib/node_modules/node-forge/lib/x509.js +2986 -0
  189. package/lib/node_modules/node-forge/lib/x509.js.map +1 -0
  190. package/lib/node_modules/prop-types/index.js +1 -1
  191. package/lib/node_modules/react-async-script/lib/esm/async-script-loader.js +1 -1
  192. package/lib/node_modules/react-google-recaptcha/lib/esm/recaptcha.js +1 -1
  193. package/lib/node_modules/react-is/index.js +1 -1
  194. package/lib/node_modules/react-phone-number-input/modules/CountryIcon.js +1 -1
  195. package/lib/node_modules/react-phone-number-input/modules/CountrySelect.js +1 -1
  196. package/lib/node_modules/react-phone-number-input/modules/Flag.js +1 -1
  197. package/lib/node_modules/react-phone-number-input/modules/InputBasic.js +1 -1
  198. package/lib/node_modules/react-phone-number-input/modules/InputSmart.js +1 -1
  199. package/lib/node_modules/react-phone-number-input/modules/InternationalIcon.js +1 -1
  200. package/lib/node_modules/react-phone-number-input/modules/PhoneInputWithCountry.js +1 -1
  201. package/lib/node_modules/react-phone-number-input/modules/PropTypes.js +1 -1
  202. package/lib/node_modules/scheduler/index.js +1 -1
  203. package/lib/node_modules/use-context-selector/dist/index.js +1 -1
  204. package/lib/styles.css +1 -1
  205. package/lib/styles.css.map +1 -1
  206. package/lib/utils/getEncryptedData/getEncryptedData.js +10 -13
  207. package/lib/utils/getEncryptedData/getEncryptedData.js.map +1 -1
  208. package/package.json +3 -1
@@ -0,0 +1,1108 @@
1
+ import { __require as requireForge } from './forge.js';
2
+ import { __require as requireJsbn } from './jsbn.js';
3
+ import { __require as requireRandom } from './random.js';
4
+ import { __require as requireSha512 } from './sha512.js';
5
+ import { __require as requireUtil } from './util.js';
6
+ import { __require as requireAsn1Validator } from './asn1-validator.js';
7
+
8
+ /**
9
+ * JavaScript implementation of Ed25519.
10
+ *
11
+ * Copyright (c) 2017-2019 Digital Bazaar, Inc.
12
+ *
13
+ * This implementation is based on the most excellent TweetNaCl which is
14
+ * in the public domain. Many thanks to its contributors:
15
+ *
16
+ * https://github.com/dchest/tweetnacl-js
17
+ */
18
+ var ed25519_1;
19
+ var hasRequiredEd25519;
20
+ function requireEd25519() {
21
+ if (hasRequiredEd25519) return ed25519_1;
22
+ hasRequiredEd25519 = 1;
23
+ var forge = requireForge();
24
+ requireJsbn();
25
+ requireRandom();
26
+ requireSha512();
27
+ requireUtil();
28
+ var asn1Validator = requireAsn1Validator();
29
+ var publicKeyValidator = asn1Validator.publicKeyValidator;
30
+ var privateKeyValidator = asn1Validator.privateKeyValidator;
31
+ if (typeof BigInteger === 'undefined') {
32
+ var BigInteger = forge.jsbn.BigInteger;
33
+ }
34
+ var ByteBuffer = forge.util.ByteBuffer;
35
+ var NativeBuffer = typeof Buffer === 'undefined' ? Uint8Array : Buffer;
36
+
37
+ /*
38
+ * Ed25519 algorithms, see RFC 8032:
39
+ * https://tools.ietf.org/html/rfc8032
40
+ */
41
+ forge.pki = forge.pki || {};
42
+ ed25519_1 = forge.pki.ed25519 = forge.ed25519 = forge.ed25519 || {};
43
+ var ed25519 = forge.ed25519;
44
+ ed25519.constants = {};
45
+ ed25519.constants.PUBLIC_KEY_BYTE_LENGTH = 32;
46
+ ed25519.constants.PRIVATE_KEY_BYTE_LENGTH = 64;
47
+ ed25519.constants.SEED_BYTE_LENGTH = 32;
48
+ ed25519.constants.SIGN_BYTE_LENGTH = 64;
49
+ ed25519.constants.HASH_BYTE_LENGTH = 64;
50
+ ed25519.generateKeyPair = function (options) {
51
+ options = options || {};
52
+ var seed = options.seed;
53
+ if (seed === undefined) {
54
+ // generate seed
55
+ seed = forge.random.getBytesSync(ed25519.constants.SEED_BYTE_LENGTH);
56
+ } else if (typeof seed === 'string') {
57
+ if (seed.length !== ed25519.constants.SEED_BYTE_LENGTH) {
58
+ throw new TypeError('"seed" must be ' + ed25519.constants.SEED_BYTE_LENGTH + ' bytes in length.');
59
+ }
60
+ } else if (!(seed instanceof Uint8Array)) {
61
+ throw new TypeError('"seed" must be a node.js Buffer, Uint8Array, or a binary string.');
62
+ }
63
+ seed = messageToNativeBuffer({
64
+ message: seed,
65
+ encoding: 'binary'
66
+ });
67
+ var pk = new NativeBuffer(ed25519.constants.PUBLIC_KEY_BYTE_LENGTH);
68
+ var sk = new NativeBuffer(ed25519.constants.PRIVATE_KEY_BYTE_LENGTH);
69
+ for (var i = 0; i < 32; ++i) {
70
+ sk[i] = seed[i];
71
+ }
72
+ crypto_sign_keypair(pk, sk);
73
+ return {
74
+ publicKey: pk,
75
+ privateKey: sk
76
+ };
77
+ };
78
+
79
+ /**
80
+ * Converts a private key from a RFC8410 ASN.1 encoding.
81
+ *
82
+ * @param obj - The asn1 representation of a private key.
83
+ *
84
+ * @returns {Object} keyInfo - The key information.
85
+ * @returns {Buffer|Uint8Array} keyInfo.privateKeyBytes - 32 private key bytes.
86
+ */
87
+ ed25519.privateKeyFromAsn1 = function (obj) {
88
+ var capture = {};
89
+ var errors = [];
90
+ var valid = forge.asn1.validate(obj, privateKeyValidator, capture, errors);
91
+ if (!valid) {
92
+ var error = new Error('Invalid Key.');
93
+ error.errors = errors;
94
+ throw error;
95
+ }
96
+ var oid = forge.asn1.derToOid(capture.privateKeyOid);
97
+ var ed25519Oid = forge.oids.EdDSA25519;
98
+ if (oid !== ed25519Oid) {
99
+ throw new Error('Invalid OID "' + oid + '"; OID must be "' + ed25519Oid + '".');
100
+ }
101
+ var privateKey = capture.privateKey;
102
+ // manually extract the private key bytes from nested octet string, see FIXME:
103
+ // https://github.com/digitalbazaar/forge/blob/master/lib/asn1.js#L542
104
+ var privateKeyBytes = messageToNativeBuffer({
105
+ message: forge.asn1.fromDer(privateKey).value,
106
+ encoding: 'binary'
107
+ });
108
+ // TODO: RFC8410 specifies a format for encoding the public key bytes along
109
+ // with the private key bytes. `publicKeyBytes` can be returned in the
110
+ // future. https://tools.ietf.org/html/rfc8410#section-10.3
111
+ return {
112
+ privateKeyBytes: privateKeyBytes
113
+ };
114
+ };
115
+
116
+ /**
117
+ * Converts a public key from a RFC8410 ASN.1 encoding.
118
+ *
119
+ * @param obj - The asn1 representation of a public key.
120
+ *
121
+ * @return {Buffer|Uint8Array} - 32 public key bytes.
122
+ */
123
+ ed25519.publicKeyFromAsn1 = function (obj) {
124
+ // get SubjectPublicKeyInfo
125
+ var capture = {};
126
+ var errors = [];
127
+ var valid = forge.asn1.validate(obj, publicKeyValidator, capture, errors);
128
+ if (!valid) {
129
+ var error = new Error('Invalid Key.');
130
+ error.errors = errors;
131
+ throw error;
132
+ }
133
+ var oid = forge.asn1.derToOid(capture.publicKeyOid);
134
+ var ed25519Oid = forge.oids.EdDSA25519;
135
+ if (oid !== ed25519Oid) {
136
+ throw new Error('Invalid OID "' + oid + '"; OID must be "' + ed25519Oid + '".');
137
+ }
138
+ var publicKeyBytes = capture.ed25519PublicKey;
139
+ if (publicKeyBytes.length !== ed25519.constants.PUBLIC_KEY_BYTE_LENGTH) {
140
+ throw new Error('Key length is invalid.');
141
+ }
142
+ return messageToNativeBuffer({
143
+ message: publicKeyBytes,
144
+ encoding: 'binary'
145
+ });
146
+ };
147
+ ed25519.publicKeyFromPrivateKey = function (options) {
148
+ options = options || {};
149
+ var privateKey = messageToNativeBuffer({
150
+ message: options.privateKey,
151
+ encoding: 'binary'
152
+ });
153
+ if (privateKey.length !== ed25519.constants.PRIVATE_KEY_BYTE_LENGTH) {
154
+ throw new TypeError('"options.privateKey" must have a byte length of ' + ed25519.constants.PRIVATE_KEY_BYTE_LENGTH);
155
+ }
156
+ var pk = new NativeBuffer(ed25519.constants.PUBLIC_KEY_BYTE_LENGTH);
157
+ for (var i = 0; i < pk.length; ++i) {
158
+ pk[i] = privateKey[32 + i];
159
+ }
160
+ return pk;
161
+ };
162
+ ed25519.sign = function (options) {
163
+ options = options || {};
164
+ var msg = messageToNativeBuffer(options);
165
+ var privateKey = messageToNativeBuffer({
166
+ message: options.privateKey,
167
+ encoding: 'binary'
168
+ });
169
+ if (privateKey.length === ed25519.constants.SEED_BYTE_LENGTH) {
170
+ var keyPair = ed25519.generateKeyPair({
171
+ seed: privateKey
172
+ });
173
+ privateKey = keyPair.privateKey;
174
+ } else if (privateKey.length !== ed25519.constants.PRIVATE_KEY_BYTE_LENGTH) {
175
+ throw new TypeError('"options.privateKey" must have a byte length of ' + ed25519.constants.SEED_BYTE_LENGTH + ' or ' + ed25519.constants.PRIVATE_KEY_BYTE_LENGTH);
176
+ }
177
+ var signedMsg = new NativeBuffer(ed25519.constants.SIGN_BYTE_LENGTH + msg.length);
178
+ crypto_sign(signedMsg, msg, msg.length, privateKey);
179
+ var sig = new NativeBuffer(ed25519.constants.SIGN_BYTE_LENGTH);
180
+ for (var i = 0; i < sig.length; ++i) {
181
+ sig[i] = signedMsg[i];
182
+ }
183
+ return sig;
184
+ };
185
+ ed25519.verify = function (options) {
186
+ options = options || {};
187
+ var msg = messageToNativeBuffer(options);
188
+ if (options.signature === undefined) {
189
+ throw new TypeError('"options.signature" must be a node.js Buffer, a Uint8Array, a forge ' + 'ByteBuffer, or a binary string.');
190
+ }
191
+ var sig = messageToNativeBuffer({
192
+ message: options.signature,
193
+ encoding: 'binary'
194
+ });
195
+ if (sig.length !== ed25519.constants.SIGN_BYTE_LENGTH) {
196
+ throw new TypeError('"options.signature" must have a byte length of ' + ed25519.constants.SIGN_BYTE_LENGTH);
197
+ }
198
+ var publicKey = messageToNativeBuffer({
199
+ message: options.publicKey,
200
+ encoding: 'binary'
201
+ });
202
+ if (publicKey.length !== ed25519.constants.PUBLIC_KEY_BYTE_LENGTH) {
203
+ throw new TypeError('"options.publicKey" must have a byte length of ' + ed25519.constants.PUBLIC_KEY_BYTE_LENGTH);
204
+ }
205
+ var sm = new NativeBuffer(ed25519.constants.SIGN_BYTE_LENGTH + msg.length);
206
+ var m = new NativeBuffer(ed25519.constants.SIGN_BYTE_LENGTH + msg.length);
207
+ var i;
208
+ for (i = 0; i < ed25519.constants.SIGN_BYTE_LENGTH; ++i) {
209
+ sm[i] = sig[i];
210
+ }
211
+ for (i = 0; i < msg.length; ++i) {
212
+ sm[i + ed25519.constants.SIGN_BYTE_LENGTH] = msg[i];
213
+ }
214
+ return crypto_sign_open(m, sm, sm.length, publicKey) >= 0;
215
+ };
216
+ function messageToNativeBuffer(options) {
217
+ var message = options.message;
218
+ if (message instanceof Uint8Array || message instanceof NativeBuffer) {
219
+ return message;
220
+ }
221
+ var encoding = options.encoding;
222
+ if (message === undefined) {
223
+ if (options.md) {
224
+ // TODO: more rigorous validation that `md` is a MessageDigest
225
+ message = options.md.digest().getBytes();
226
+ encoding = 'binary';
227
+ } else {
228
+ throw new TypeError('"options.message" or "options.md" not specified.');
229
+ }
230
+ }
231
+ if (typeof message === 'string' && !encoding) {
232
+ throw new TypeError('"options.encoding" must be "binary" or "utf8".');
233
+ }
234
+ if (typeof message === 'string') {
235
+ if (typeof Buffer !== 'undefined') {
236
+ return Buffer.from(message, encoding);
237
+ }
238
+ message = new ByteBuffer(message, encoding);
239
+ } else if (!(message instanceof ByteBuffer)) {
240
+ throw new TypeError('"options.message" must be a node.js Buffer, a Uint8Array, a forge ' + 'ByteBuffer, or a string with "options.encoding" specifying its ' + 'encoding.');
241
+ }
242
+
243
+ // convert to native buffer
244
+ var buffer = new NativeBuffer(message.length());
245
+ for (var i = 0; i < buffer.length; ++i) {
246
+ buffer[i] = message.at(i);
247
+ }
248
+ return buffer;
249
+ }
250
+ var gf0 = gf();
251
+ var gf1 = gf([1]);
252
+ var D = gf([0x78a3, 0x1359, 0x4dca, 0x75eb, 0xd8ab, 0x4141, 0x0a4d, 0x0070, 0xe898, 0x7779, 0x4079, 0x8cc7, 0xfe73, 0x2b6f, 0x6cee, 0x5203]);
253
+ var D2 = gf([0xf159, 0x26b2, 0x9b94, 0xebd6, 0xb156, 0x8283, 0x149a, 0x00e0, 0xd130, 0xeef3, 0x80f2, 0x198e, 0xfce7, 0x56df, 0xd9dc, 0x2406]);
254
+ var X = gf([0xd51a, 0x8f25, 0x2d60, 0xc956, 0xa7b2, 0x9525, 0xc760, 0x692c, 0xdc5c, 0xfdd6, 0xe231, 0xc0a4, 0x53fe, 0xcd6e, 0x36d3, 0x2169]);
255
+ var Y = gf([0x6658, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666]);
256
+ var L = new Float64Array([0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x10]);
257
+ var I = gf([0xa0b0, 0x4a0e, 0x1b27, 0xc4ee, 0xe478, 0xad2f, 0x1806, 0x2f43, 0xd7a7, 0x3dfb, 0x0099, 0x2b4d, 0xdf0b, 0x4fc1, 0x2480, 0x2b83]);
258
+
259
+ // TODO: update forge buffer implementation to use `Buffer` or `Uint8Array`,
260
+ // whichever is available, to improve performance
261
+ function sha512(msg, msgLen) {
262
+ // Note: `out` and `msg` are NativeBuffer
263
+ var md = forge.md.sha512.create();
264
+ var buffer = new ByteBuffer(msg);
265
+ md.update(buffer.getBytes(msgLen), 'binary');
266
+ var hash = md.digest().getBytes();
267
+ if (typeof Buffer !== 'undefined') {
268
+ return Buffer.from(hash, 'binary');
269
+ }
270
+ var out = new NativeBuffer(ed25519.constants.HASH_BYTE_LENGTH);
271
+ for (var i = 0; i < 64; ++i) {
272
+ out[i] = hash.charCodeAt(i);
273
+ }
274
+ return out;
275
+ }
276
+ function crypto_sign_keypair(pk, sk) {
277
+ var p = [gf(), gf(), gf(), gf()];
278
+ var i;
279
+ var d = sha512(sk, 32);
280
+ d[0] &= 248;
281
+ d[31] &= 127;
282
+ d[31] |= 64;
283
+ scalarbase(p, d);
284
+ pack(pk, p);
285
+ for (i = 0; i < 32; ++i) {
286
+ sk[i + 32] = pk[i];
287
+ }
288
+ return 0;
289
+ }
290
+
291
+ // Note: difference from C - smlen returned, not passed as argument.
292
+ function crypto_sign(sm, m, n, sk) {
293
+ var i,
294
+ j,
295
+ x = new Float64Array(64);
296
+ var p = [gf(), gf(), gf(), gf()];
297
+ var d = sha512(sk, 32);
298
+ d[0] &= 248;
299
+ d[31] &= 127;
300
+ d[31] |= 64;
301
+ var smlen = n + 64;
302
+ for (i = 0; i < n; ++i) {
303
+ sm[64 + i] = m[i];
304
+ }
305
+ for (i = 0; i < 32; ++i) {
306
+ sm[32 + i] = d[32 + i];
307
+ }
308
+ var r = sha512(sm.subarray(32), n + 32);
309
+ reduce(r);
310
+ scalarbase(p, r);
311
+ pack(sm, p);
312
+ for (i = 32; i < 64; ++i) {
313
+ sm[i] = sk[i];
314
+ }
315
+ var h = sha512(sm, n + 64);
316
+ reduce(h);
317
+ for (i = 32; i < 64; ++i) {
318
+ x[i] = 0;
319
+ }
320
+ for (i = 0; i < 32; ++i) {
321
+ x[i] = r[i];
322
+ }
323
+ for (i = 0; i < 32; ++i) {
324
+ for (j = 0; j < 32; j++) {
325
+ x[i + j] += h[i] * d[j];
326
+ }
327
+ }
328
+ modL(sm.subarray(32), x);
329
+ return smlen;
330
+ }
331
+ function crypto_sign_open(m, sm, n, pk) {
332
+ var i, mlen;
333
+ var t = new NativeBuffer(32);
334
+ var p = [gf(), gf(), gf(), gf()],
335
+ q = [gf(), gf(), gf(), gf()];
336
+ mlen = -1;
337
+ if (n < 64) {
338
+ return -1;
339
+ }
340
+ if (unpackneg(q, pk)) {
341
+ return -1;
342
+ }
343
+ for (i = 0; i < n; ++i) {
344
+ m[i] = sm[i];
345
+ }
346
+ for (i = 0; i < 32; ++i) {
347
+ m[i + 32] = pk[i];
348
+ }
349
+ var h = sha512(m, n);
350
+ reduce(h);
351
+ scalarmult(p, q, h);
352
+ scalarbase(q, sm.subarray(32));
353
+ add(p, q);
354
+ pack(t, p);
355
+ n -= 64;
356
+ if (crypto_verify_32(sm, 0, t, 0)) {
357
+ for (i = 0; i < n; ++i) {
358
+ m[i] = 0;
359
+ }
360
+ return -1;
361
+ }
362
+ for (i = 0; i < n; ++i) {
363
+ m[i] = sm[i + 64];
364
+ }
365
+ mlen = n;
366
+ return mlen;
367
+ }
368
+ function modL(r, x) {
369
+ var carry, i, j, k;
370
+ for (i = 63; i >= 32; --i) {
371
+ carry = 0;
372
+ for (j = i - 32, k = i - 12; j < k; ++j) {
373
+ x[j] += carry - 16 * x[i] * L[j - (i - 32)];
374
+ carry = x[j] + 128 >> 8;
375
+ x[j] -= carry * 256;
376
+ }
377
+ x[j] += carry;
378
+ x[i] = 0;
379
+ }
380
+ carry = 0;
381
+ for (j = 0; j < 32; ++j) {
382
+ x[j] += carry - (x[31] >> 4) * L[j];
383
+ carry = x[j] >> 8;
384
+ x[j] &= 255;
385
+ }
386
+ for (j = 0; j < 32; ++j) {
387
+ x[j] -= carry * L[j];
388
+ }
389
+ for (i = 0; i < 32; ++i) {
390
+ x[i + 1] += x[i] >> 8;
391
+ r[i] = x[i] & 255;
392
+ }
393
+ }
394
+ function reduce(r) {
395
+ var x = new Float64Array(64);
396
+ for (var i = 0; i < 64; ++i) {
397
+ x[i] = r[i];
398
+ r[i] = 0;
399
+ }
400
+ modL(r, x);
401
+ }
402
+ function add(p, q) {
403
+ var a = gf(),
404
+ b = gf(),
405
+ c = gf(),
406
+ d = gf(),
407
+ e = gf(),
408
+ f = gf(),
409
+ g = gf(),
410
+ h = gf(),
411
+ t = gf();
412
+ Z(a, p[1], p[0]);
413
+ Z(t, q[1], q[0]);
414
+ M(a, a, t);
415
+ A(b, p[0], p[1]);
416
+ A(t, q[0], q[1]);
417
+ M(b, b, t);
418
+ M(c, p[3], q[3]);
419
+ M(c, c, D2);
420
+ M(d, p[2], q[2]);
421
+ A(d, d, d);
422
+ Z(e, b, a);
423
+ Z(f, d, c);
424
+ A(g, d, c);
425
+ A(h, b, a);
426
+ M(p[0], e, f);
427
+ M(p[1], h, g);
428
+ M(p[2], g, f);
429
+ M(p[3], e, h);
430
+ }
431
+ function cswap(p, q, b) {
432
+ for (var i = 0; i < 4; ++i) {
433
+ sel25519(p[i], q[i], b);
434
+ }
435
+ }
436
+ function pack(r, p) {
437
+ var tx = gf(),
438
+ ty = gf(),
439
+ zi = gf();
440
+ inv25519(zi, p[2]);
441
+ M(tx, p[0], zi);
442
+ M(ty, p[1], zi);
443
+ pack25519(r, ty);
444
+ r[31] ^= par25519(tx) << 7;
445
+ }
446
+ function pack25519(o, n) {
447
+ var i, j, b;
448
+ var m = gf(),
449
+ t = gf();
450
+ for (i = 0; i < 16; ++i) {
451
+ t[i] = n[i];
452
+ }
453
+ car25519(t);
454
+ car25519(t);
455
+ car25519(t);
456
+ for (j = 0; j < 2; ++j) {
457
+ m[0] = t[0] - 0xffed;
458
+ for (i = 1; i < 15; ++i) {
459
+ m[i] = t[i] - 0xffff - (m[i - 1] >> 16 & 1);
460
+ m[i - 1] &= 0xffff;
461
+ }
462
+ m[15] = t[15] - 0x7fff - (m[14] >> 16 & 1);
463
+ b = m[15] >> 16 & 1;
464
+ m[14] &= 0xffff;
465
+ sel25519(t, m, 1 - b);
466
+ }
467
+ for (i = 0; i < 16; i++) {
468
+ o[2 * i] = t[i] & 0xff;
469
+ o[2 * i + 1] = t[i] >> 8;
470
+ }
471
+ }
472
+ function unpackneg(r, p) {
473
+ var t = gf(),
474
+ chk = gf(),
475
+ num = gf(),
476
+ den = gf(),
477
+ den2 = gf(),
478
+ den4 = gf(),
479
+ den6 = gf();
480
+ set25519(r[2], gf1);
481
+ unpack25519(r[1], p);
482
+ S(num, r[1]);
483
+ M(den, num, D);
484
+ Z(num, num, r[2]);
485
+ A(den, r[2], den);
486
+ S(den2, den);
487
+ S(den4, den2);
488
+ M(den6, den4, den2);
489
+ M(t, den6, num);
490
+ M(t, t, den);
491
+ pow2523(t, t);
492
+ M(t, t, num);
493
+ M(t, t, den);
494
+ M(t, t, den);
495
+ M(r[0], t, den);
496
+ S(chk, r[0]);
497
+ M(chk, chk, den);
498
+ if (neq25519(chk, num)) {
499
+ M(r[0], r[0], I);
500
+ }
501
+ S(chk, r[0]);
502
+ M(chk, chk, den);
503
+ if (neq25519(chk, num)) {
504
+ return -1;
505
+ }
506
+ if (par25519(r[0]) === p[31] >> 7) {
507
+ Z(r[0], gf0, r[0]);
508
+ }
509
+ M(r[3], r[0], r[1]);
510
+ return 0;
511
+ }
512
+ function unpack25519(o, n) {
513
+ var i;
514
+ for (i = 0; i < 16; ++i) {
515
+ o[i] = n[2 * i] + (n[2 * i + 1] << 8);
516
+ }
517
+ o[15] &= 0x7fff;
518
+ }
519
+ function pow2523(o, i) {
520
+ var c = gf();
521
+ var a;
522
+ for (a = 0; a < 16; ++a) {
523
+ c[a] = i[a];
524
+ }
525
+ for (a = 250; a >= 0; --a) {
526
+ S(c, c);
527
+ if (a !== 1) {
528
+ M(c, c, i);
529
+ }
530
+ }
531
+ for (a = 0; a < 16; ++a) {
532
+ o[a] = c[a];
533
+ }
534
+ }
535
+ function neq25519(a, b) {
536
+ var c = new NativeBuffer(32);
537
+ var d = new NativeBuffer(32);
538
+ pack25519(c, a);
539
+ pack25519(d, b);
540
+ return crypto_verify_32(c, 0, d, 0);
541
+ }
542
+ function crypto_verify_32(x, xi, y, yi) {
543
+ return vn(x, xi, y, yi, 32);
544
+ }
545
+ function vn(x, xi, y, yi, n) {
546
+ var i,
547
+ d = 0;
548
+ for (i = 0; i < n; ++i) {
549
+ d |= x[xi + i] ^ y[yi + i];
550
+ }
551
+ return (1 & d - 1 >>> 8) - 1;
552
+ }
553
+ function par25519(a) {
554
+ var d = new NativeBuffer(32);
555
+ pack25519(d, a);
556
+ return d[0] & 1;
557
+ }
558
+ function scalarmult(p, q, s) {
559
+ var b, i;
560
+ set25519(p[0], gf0);
561
+ set25519(p[1], gf1);
562
+ set25519(p[2], gf1);
563
+ set25519(p[3], gf0);
564
+ for (i = 255; i >= 0; --i) {
565
+ b = s[i / 8 | 0] >> (i & 7) & 1;
566
+ cswap(p, q, b);
567
+ add(q, p);
568
+ add(p, p);
569
+ cswap(p, q, b);
570
+ }
571
+ }
572
+ function scalarbase(p, s) {
573
+ var q = [gf(), gf(), gf(), gf()];
574
+ set25519(q[0], X);
575
+ set25519(q[1], Y);
576
+ set25519(q[2], gf1);
577
+ M(q[3], X, Y);
578
+ scalarmult(p, q, s);
579
+ }
580
+ function set25519(r, a) {
581
+ var i;
582
+ for (i = 0; i < 16; i++) {
583
+ r[i] = a[i] | 0;
584
+ }
585
+ }
586
+ function inv25519(o, i) {
587
+ var c = gf();
588
+ var a;
589
+ for (a = 0; a < 16; ++a) {
590
+ c[a] = i[a];
591
+ }
592
+ for (a = 253; a >= 0; --a) {
593
+ S(c, c);
594
+ if (a !== 2 && a !== 4) {
595
+ M(c, c, i);
596
+ }
597
+ }
598
+ for (a = 0; a < 16; ++a) {
599
+ o[a] = c[a];
600
+ }
601
+ }
602
+ function car25519(o) {
603
+ var i,
604
+ v,
605
+ c = 1;
606
+ for (i = 0; i < 16; ++i) {
607
+ v = o[i] + c + 65535;
608
+ c = Math.floor(v / 65536);
609
+ o[i] = v - c * 65536;
610
+ }
611
+ o[0] += c - 1 + 37 * (c - 1);
612
+ }
613
+ function sel25519(p, q, b) {
614
+ var t,
615
+ c = ~(b - 1);
616
+ for (var i = 0; i < 16; ++i) {
617
+ t = c & (p[i] ^ q[i]);
618
+ p[i] ^= t;
619
+ q[i] ^= t;
620
+ }
621
+ }
622
+ function gf(init) {
623
+ var i,
624
+ r = new Float64Array(16);
625
+ if (init) {
626
+ for (i = 0; i < init.length; ++i) {
627
+ r[i] = init[i];
628
+ }
629
+ }
630
+ return r;
631
+ }
632
+ function A(o, a, b) {
633
+ for (var i = 0; i < 16; ++i) {
634
+ o[i] = a[i] + b[i];
635
+ }
636
+ }
637
+ function Z(o, a, b) {
638
+ for (var i = 0; i < 16; ++i) {
639
+ o[i] = a[i] - b[i];
640
+ }
641
+ }
642
+ function S(o, a) {
643
+ M(o, a, a);
644
+ }
645
+ function M(o, a, b) {
646
+ var v,
647
+ c,
648
+ t0 = 0,
649
+ t1 = 0,
650
+ t2 = 0,
651
+ t3 = 0,
652
+ t4 = 0,
653
+ t5 = 0,
654
+ t6 = 0,
655
+ t7 = 0,
656
+ t8 = 0,
657
+ t9 = 0,
658
+ t10 = 0,
659
+ t11 = 0,
660
+ t12 = 0,
661
+ t13 = 0,
662
+ t14 = 0,
663
+ t15 = 0,
664
+ t16 = 0,
665
+ t17 = 0,
666
+ t18 = 0,
667
+ t19 = 0,
668
+ t20 = 0,
669
+ t21 = 0,
670
+ t22 = 0,
671
+ t23 = 0,
672
+ t24 = 0,
673
+ t25 = 0,
674
+ t26 = 0,
675
+ t27 = 0,
676
+ t28 = 0,
677
+ t29 = 0,
678
+ t30 = 0,
679
+ b0 = b[0],
680
+ b1 = b[1],
681
+ b2 = b[2],
682
+ b3 = b[3],
683
+ b4 = b[4],
684
+ b5 = b[5],
685
+ b6 = b[6],
686
+ b7 = b[7],
687
+ b8 = b[8],
688
+ b9 = b[9],
689
+ b10 = b[10],
690
+ b11 = b[11],
691
+ b12 = b[12],
692
+ b13 = b[13],
693
+ b14 = b[14],
694
+ b15 = b[15];
695
+ v = a[0];
696
+ t0 += v * b0;
697
+ t1 += v * b1;
698
+ t2 += v * b2;
699
+ t3 += v * b3;
700
+ t4 += v * b4;
701
+ t5 += v * b5;
702
+ t6 += v * b6;
703
+ t7 += v * b7;
704
+ t8 += v * b8;
705
+ t9 += v * b9;
706
+ t10 += v * b10;
707
+ t11 += v * b11;
708
+ t12 += v * b12;
709
+ t13 += v * b13;
710
+ t14 += v * b14;
711
+ t15 += v * b15;
712
+ v = a[1];
713
+ t1 += v * b0;
714
+ t2 += v * b1;
715
+ t3 += v * b2;
716
+ t4 += v * b3;
717
+ t5 += v * b4;
718
+ t6 += v * b5;
719
+ t7 += v * b6;
720
+ t8 += v * b7;
721
+ t9 += v * b8;
722
+ t10 += v * b9;
723
+ t11 += v * b10;
724
+ t12 += v * b11;
725
+ t13 += v * b12;
726
+ t14 += v * b13;
727
+ t15 += v * b14;
728
+ t16 += v * b15;
729
+ v = a[2];
730
+ t2 += v * b0;
731
+ t3 += v * b1;
732
+ t4 += v * b2;
733
+ t5 += v * b3;
734
+ t6 += v * b4;
735
+ t7 += v * b5;
736
+ t8 += v * b6;
737
+ t9 += v * b7;
738
+ t10 += v * b8;
739
+ t11 += v * b9;
740
+ t12 += v * b10;
741
+ t13 += v * b11;
742
+ t14 += v * b12;
743
+ t15 += v * b13;
744
+ t16 += v * b14;
745
+ t17 += v * b15;
746
+ v = a[3];
747
+ t3 += v * b0;
748
+ t4 += v * b1;
749
+ t5 += v * b2;
750
+ t6 += v * b3;
751
+ t7 += v * b4;
752
+ t8 += v * b5;
753
+ t9 += v * b6;
754
+ t10 += v * b7;
755
+ t11 += v * b8;
756
+ t12 += v * b9;
757
+ t13 += v * b10;
758
+ t14 += v * b11;
759
+ t15 += v * b12;
760
+ t16 += v * b13;
761
+ t17 += v * b14;
762
+ t18 += v * b15;
763
+ v = a[4];
764
+ t4 += v * b0;
765
+ t5 += v * b1;
766
+ t6 += v * b2;
767
+ t7 += v * b3;
768
+ t8 += v * b4;
769
+ t9 += v * b5;
770
+ t10 += v * b6;
771
+ t11 += v * b7;
772
+ t12 += v * b8;
773
+ t13 += v * b9;
774
+ t14 += v * b10;
775
+ t15 += v * b11;
776
+ t16 += v * b12;
777
+ t17 += v * b13;
778
+ t18 += v * b14;
779
+ t19 += v * b15;
780
+ v = a[5];
781
+ t5 += v * b0;
782
+ t6 += v * b1;
783
+ t7 += v * b2;
784
+ t8 += v * b3;
785
+ t9 += v * b4;
786
+ t10 += v * b5;
787
+ t11 += v * b6;
788
+ t12 += v * b7;
789
+ t13 += v * b8;
790
+ t14 += v * b9;
791
+ t15 += v * b10;
792
+ t16 += v * b11;
793
+ t17 += v * b12;
794
+ t18 += v * b13;
795
+ t19 += v * b14;
796
+ t20 += v * b15;
797
+ v = a[6];
798
+ t6 += v * b0;
799
+ t7 += v * b1;
800
+ t8 += v * b2;
801
+ t9 += v * b3;
802
+ t10 += v * b4;
803
+ t11 += v * b5;
804
+ t12 += v * b6;
805
+ t13 += v * b7;
806
+ t14 += v * b8;
807
+ t15 += v * b9;
808
+ t16 += v * b10;
809
+ t17 += v * b11;
810
+ t18 += v * b12;
811
+ t19 += v * b13;
812
+ t20 += v * b14;
813
+ t21 += v * b15;
814
+ v = a[7];
815
+ t7 += v * b0;
816
+ t8 += v * b1;
817
+ t9 += v * b2;
818
+ t10 += v * b3;
819
+ t11 += v * b4;
820
+ t12 += v * b5;
821
+ t13 += v * b6;
822
+ t14 += v * b7;
823
+ t15 += v * b8;
824
+ t16 += v * b9;
825
+ t17 += v * b10;
826
+ t18 += v * b11;
827
+ t19 += v * b12;
828
+ t20 += v * b13;
829
+ t21 += v * b14;
830
+ t22 += v * b15;
831
+ v = a[8];
832
+ t8 += v * b0;
833
+ t9 += v * b1;
834
+ t10 += v * b2;
835
+ t11 += v * b3;
836
+ t12 += v * b4;
837
+ t13 += v * b5;
838
+ t14 += v * b6;
839
+ t15 += v * b7;
840
+ t16 += v * b8;
841
+ t17 += v * b9;
842
+ t18 += v * b10;
843
+ t19 += v * b11;
844
+ t20 += v * b12;
845
+ t21 += v * b13;
846
+ t22 += v * b14;
847
+ t23 += v * b15;
848
+ v = a[9];
849
+ t9 += v * b0;
850
+ t10 += v * b1;
851
+ t11 += v * b2;
852
+ t12 += v * b3;
853
+ t13 += v * b4;
854
+ t14 += v * b5;
855
+ t15 += v * b6;
856
+ t16 += v * b7;
857
+ t17 += v * b8;
858
+ t18 += v * b9;
859
+ t19 += v * b10;
860
+ t20 += v * b11;
861
+ t21 += v * b12;
862
+ t22 += v * b13;
863
+ t23 += v * b14;
864
+ t24 += v * b15;
865
+ v = a[10];
866
+ t10 += v * b0;
867
+ t11 += v * b1;
868
+ t12 += v * b2;
869
+ t13 += v * b3;
870
+ t14 += v * b4;
871
+ t15 += v * b5;
872
+ t16 += v * b6;
873
+ t17 += v * b7;
874
+ t18 += v * b8;
875
+ t19 += v * b9;
876
+ t20 += v * b10;
877
+ t21 += v * b11;
878
+ t22 += v * b12;
879
+ t23 += v * b13;
880
+ t24 += v * b14;
881
+ t25 += v * b15;
882
+ v = a[11];
883
+ t11 += v * b0;
884
+ t12 += v * b1;
885
+ t13 += v * b2;
886
+ t14 += v * b3;
887
+ t15 += v * b4;
888
+ t16 += v * b5;
889
+ t17 += v * b6;
890
+ t18 += v * b7;
891
+ t19 += v * b8;
892
+ t20 += v * b9;
893
+ t21 += v * b10;
894
+ t22 += v * b11;
895
+ t23 += v * b12;
896
+ t24 += v * b13;
897
+ t25 += v * b14;
898
+ t26 += v * b15;
899
+ v = a[12];
900
+ t12 += v * b0;
901
+ t13 += v * b1;
902
+ t14 += v * b2;
903
+ t15 += v * b3;
904
+ t16 += v * b4;
905
+ t17 += v * b5;
906
+ t18 += v * b6;
907
+ t19 += v * b7;
908
+ t20 += v * b8;
909
+ t21 += v * b9;
910
+ t22 += v * b10;
911
+ t23 += v * b11;
912
+ t24 += v * b12;
913
+ t25 += v * b13;
914
+ t26 += v * b14;
915
+ t27 += v * b15;
916
+ v = a[13];
917
+ t13 += v * b0;
918
+ t14 += v * b1;
919
+ t15 += v * b2;
920
+ t16 += v * b3;
921
+ t17 += v * b4;
922
+ t18 += v * b5;
923
+ t19 += v * b6;
924
+ t20 += v * b7;
925
+ t21 += v * b8;
926
+ t22 += v * b9;
927
+ t23 += v * b10;
928
+ t24 += v * b11;
929
+ t25 += v * b12;
930
+ t26 += v * b13;
931
+ t27 += v * b14;
932
+ t28 += v * b15;
933
+ v = a[14];
934
+ t14 += v * b0;
935
+ t15 += v * b1;
936
+ t16 += v * b2;
937
+ t17 += v * b3;
938
+ t18 += v * b4;
939
+ t19 += v * b5;
940
+ t20 += v * b6;
941
+ t21 += v * b7;
942
+ t22 += v * b8;
943
+ t23 += v * b9;
944
+ t24 += v * b10;
945
+ t25 += v * b11;
946
+ t26 += v * b12;
947
+ t27 += v * b13;
948
+ t28 += v * b14;
949
+ t29 += v * b15;
950
+ v = a[15];
951
+ t15 += v * b0;
952
+ t16 += v * b1;
953
+ t17 += v * b2;
954
+ t18 += v * b3;
955
+ t19 += v * b4;
956
+ t20 += v * b5;
957
+ t21 += v * b6;
958
+ t22 += v * b7;
959
+ t23 += v * b8;
960
+ t24 += v * b9;
961
+ t25 += v * b10;
962
+ t26 += v * b11;
963
+ t27 += v * b12;
964
+ t28 += v * b13;
965
+ t29 += v * b14;
966
+ t30 += v * b15;
967
+ t0 += 38 * t16;
968
+ t1 += 38 * t17;
969
+ t2 += 38 * t18;
970
+ t3 += 38 * t19;
971
+ t4 += 38 * t20;
972
+ t5 += 38 * t21;
973
+ t6 += 38 * t22;
974
+ t7 += 38 * t23;
975
+ t8 += 38 * t24;
976
+ t9 += 38 * t25;
977
+ t10 += 38 * t26;
978
+ t11 += 38 * t27;
979
+ t12 += 38 * t28;
980
+ t13 += 38 * t29;
981
+ t14 += 38 * t30;
982
+ // t15 left as is
983
+
984
+ // first car
985
+ c = 1;
986
+ v = t0 + c + 65535;
987
+ c = Math.floor(v / 65536);
988
+ t0 = v - c * 65536;
989
+ v = t1 + c + 65535;
990
+ c = Math.floor(v / 65536);
991
+ t1 = v - c * 65536;
992
+ v = t2 + c + 65535;
993
+ c = Math.floor(v / 65536);
994
+ t2 = v - c * 65536;
995
+ v = t3 + c + 65535;
996
+ c = Math.floor(v / 65536);
997
+ t3 = v - c * 65536;
998
+ v = t4 + c + 65535;
999
+ c = Math.floor(v / 65536);
1000
+ t4 = v - c * 65536;
1001
+ v = t5 + c + 65535;
1002
+ c = Math.floor(v / 65536);
1003
+ t5 = v - c * 65536;
1004
+ v = t6 + c + 65535;
1005
+ c = Math.floor(v / 65536);
1006
+ t6 = v - c * 65536;
1007
+ v = t7 + c + 65535;
1008
+ c = Math.floor(v / 65536);
1009
+ t7 = v - c * 65536;
1010
+ v = t8 + c + 65535;
1011
+ c = Math.floor(v / 65536);
1012
+ t8 = v - c * 65536;
1013
+ v = t9 + c + 65535;
1014
+ c = Math.floor(v / 65536);
1015
+ t9 = v - c * 65536;
1016
+ v = t10 + c + 65535;
1017
+ c = Math.floor(v / 65536);
1018
+ t10 = v - c * 65536;
1019
+ v = t11 + c + 65535;
1020
+ c = Math.floor(v / 65536);
1021
+ t11 = v - c * 65536;
1022
+ v = t12 + c + 65535;
1023
+ c = Math.floor(v / 65536);
1024
+ t12 = v - c * 65536;
1025
+ v = t13 + c + 65535;
1026
+ c = Math.floor(v / 65536);
1027
+ t13 = v - c * 65536;
1028
+ v = t14 + c + 65535;
1029
+ c = Math.floor(v / 65536);
1030
+ t14 = v - c * 65536;
1031
+ v = t15 + c + 65535;
1032
+ c = Math.floor(v / 65536);
1033
+ t15 = v - c * 65536;
1034
+ t0 += c - 1 + 37 * (c - 1);
1035
+
1036
+ // second car
1037
+ c = 1;
1038
+ v = t0 + c + 65535;
1039
+ c = Math.floor(v / 65536);
1040
+ t0 = v - c * 65536;
1041
+ v = t1 + c + 65535;
1042
+ c = Math.floor(v / 65536);
1043
+ t1 = v - c * 65536;
1044
+ v = t2 + c + 65535;
1045
+ c = Math.floor(v / 65536);
1046
+ t2 = v - c * 65536;
1047
+ v = t3 + c + 65535;
1048
+ c = Math.floor(v / 65536);
1049
+ t3 = v - c * 65536;
1050
+ v = t4 + c + 65535;
1051
+ c = Math.floor(v / 65536);
1052
+ t4 = v - c * 65536;
1053
+ v = t5 + c + 65535;
1054
+ c = Math.floor(v / 65536);
1055
+ t5 = v - c * 65536;
1056
+ v = t6 + c + 65535;
1057
+ c = Math.floor(v / 65536);
1058
+ t6 = v - c * 65536;
1059
+ v = t7 + c + 65535;
1060
+ c = Math.floor(v / 65536);
1061
+ t7 = v - c * 65536;
1062
+ v = t8 + c + 65535;
1063
+ c = Math.floor(v / 65536);
1064
+ t8 = v - c * 65536;
1065
+ v = t9 + c + 65535;
1066
+ c = Math.floor(v / 65536);
1067
+ t9 = v - c * 65536;
1068
+ v = t10 + c + 65535;
1069
+ c = Math.floor(v / 65536);
1070
+ t10 = v - c * 65536;
1071
+ v = t11 + c + 65535;
1072
+ c = Math.floor(v / 65536);
1073
+ t11 = v - c * 65536;
1074
+ v = t12 + c + 65535;
1075
+ c = Math.floor(v / 65536);
1076
+ t12 = v - c * 65536;
1077
+ v = t13 + c + 65535;
1078
+ c = Math.floor(v / 65536);
1079
+ t13 = v - c * 65536;
1080
+ v = t14 + c + 65535;
1081
+ c = Math.floor(v / 65536);
1082
+ t14 = v - c * 65536;
1083
+ v = t15 + c + 65535;
1084
+ c = Math.floor(v / 65536);
1085
+ t15 = v - c * 65536;
1086
+ t0 += c - 1 + 37 * (c - 1);
1087
+ o[0] = t0;
1088
+ o[1] = t1;
1089
+ o[2] = t2;
1090
+ o[3] = t3;
1091
+ o[4] = t4;
1092
+ o[5] = t5;
1093
+ o[6] = t6;
1094
+ o[7] = t7;
1095
+ o[8] = t8;
1096
+ o[9] = t9;
1097
+ o[10] = t10;
1098
+ o[11] = t11;
1099
+ o[12] = t12;
1100
+ o[13] = t13;
1101
+ o[14] = t14;
1102
+ o[15] = t15;
1103
+ }
1104
+ return ed25519_1;
1105
+ }
1106
+
1107
+ export { requireEd25519 as __require };
1108
+ //# sourceMappingURL=ed25519.js.map