Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/PyNaCl-1.6.2-py3.11-linux-x86_64.egg/nacl/bindings/__init__.py: 96%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

26 statements  

1# Copyright 2013-2019 Donald Stufft and individual contributors 

2# 

3# Licensed under the Apache License, Version 2.0 (the "License"); 

4# you may not use this file except in compliance with the License. 

5# You may obtain a copy of the License at 

6# 

7# http://www.apache.org/licenses/LICENSE-2.0 

8# 

9# Unless required by applicable law or agreed to in writing, software 

10# distributed under the License is distributed on an "AS IS" BASIS, 

11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 

12# See the License for the specific language governing permissions and 

13# limitations under the License. 

14 

15 

16from nacl.bindings.crypto_aead import ( 

17 crypto_aead_aegis128l_ABYTES, 

18 crypto_aead_aegis128l_decrypt, 

19 crypto_aead_aegis128l_encrypt, 

20 crypto_aead_aegis128l_KEYBYTES, 

21 crypto_aead_aegis128l_MESSAGEBYTES_MAX, 

22 crypto_aead_aegis128l_NPUBBYTES, 

23 crypto_aead_aegis128l_NSECBYTES, 

24 crypto_aead_aegis256_ABYTES, 

25 crypto_aead_aegis256_decrypt, 

26 crypto_aead_aegis256_encrypt, 

27 crypto_aead_aegis256_KEYBYTES, 

28 crypto_aead_aegis256_MESSAGEBYTES_MAX, 

29 crypto_aead_aegis256_NPUBBYTES, 

30 crypto_aead_aegis256_NSECBYTES, 

31 crypto_aead_aes256gcm_ABYTES, 

32 crypto_aead_aes256gcm_decrypt, 

33 crypto_aead_aes256gcm_encrypt, 

34 crypto_aead_aes256gcm_KEYBYTES, 

35 crypto_aead_aes256gcm_MESSAGEBYTES_MAX, 

36 crypto_aead_aes256gcm_NPUBBYTES, 

37 crypto_aead_aes256gcm_NSECBYTES, 

38 crypto_aead_chacha20poly1305_ABYTES, 

39 crypto_aead_chacha20poly1305_decrypt, 

40 crypto_aead_chacha20poly1305_encrypt, 

41 crypto_aead_chacha20poly1305_ietf_ABYTES, 

42 crypto_aead_chacha20poly1305_ietf_decrypt, 

43 crypto_aead_chacha20poly1305_ietf_encrypt, 

44 crypto_aead_chacha20poly1305_ietf_KEYBYTES, 

45 crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX, 

46 crypto_aead_chacha20poly1305_ietf_NPUBBYTES, 

47 crypto_aead_chacha20poly1305_ietf_NSECBYTES, 

48 crypto_aead_chacha20poly1305_KEYBYTES, 

49 crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX, 

50 crypto_aead_chacha20poly1305_NPUBBYTES, 

51 crypto_aead_chacha20poly1305_NSECBYTES, 

52 crypto_aead_xchacha20poly1305_ietf_ABYTES, 

53 crypto_aead_xchacha20poly1305_ietf_decrypt, 

54 crypto_aead_xchacha20poly1305_ietf_encrypt, 

55 crypto_aead_xchacha20poly1305_ietf_KEYBYTES, 

56 crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX, 

57 crypto_aead_xchacha20poly1305_ietf_NPUBBYTES, 

58 crypto_aead_xchacha20poly1305_ietf_NSECBYTES, 

59) 

60from nacl.bindings.crypto_box import ( 

61 crypto_box, 

62 crypto_box_afternm, 

63 crypto_box_beforenm, 

64 crypto_box_BEFORENMBYTES, 

65 crypto_box_BOXZEROBYTES, 

66 crypto_box_easy, 

67 crypto_box_easy_afternm, 

68 crypto_box_keypair, 

69 crypto_box_NONCEBYTES, 

70 crypto_box_open, 

71 crypto_box_open_afternm, 

72 crypto_box_open_easy, 

73 crypto_box_open_easy_afternm, 

74 crypto_box_PUBLICKEYBYTES, 

75 crypto_box_seal, 

76 crypto_box_seal_open, 

77 crypto_box_SEALBYTES, 

78 crypto_box_SECRETKEYBYTES, 

79 crypto_box_seed_keypair, 

80 crypto_box_SEEDBYTES, 

81 crypto_box_ZEROBYTES, 

82) 

83from nacl.bindings.crypto_core import ( 

84 crypto_core_ed25519_add, 

85 crypto_core_ed25519_BYTES, 

86 crypto_core_ed25519_from_uniform, 

87 crypto_core_ed25519_is_valid_point, 

88 crypto_core_ed25519_NONREDUCEDSCALARBYTES, 

89 crypto_core_ed25519_scalar_add, 

90 crypto_core_ed25519_scalar_complement, 

91 crypto_core_ed25519_scalar_invert, 

92 crypto_core_ed25519_scalar_mul, 

93 crypto_core_ed25519_scalar_negate, 

94 crypto_core_ed25519_scalar_reduce, 

95 crypto_core_ed25519_scalar_sub, 

96 crypto_core_ed25519_SCALARBYTES, 

97 crypto_core_ed25519_sub, 

98 has_crypto_core_ed25519, 

99) 

100from nacl.bindings.crypto_generichash import ( 

101 crypto_generichash_BYTES, 

102 crypto_generichash_BYTES_MAX, 

103 crypto_generichash_BYTES_MIN, 

104 crypto_generichash_KEYBYTES, 

105 crypto_generichash_KEYBYTES_MAX, 

106 crypto_generichash_KEYBYTES_MIN, 

107 crypto_generichash_PERSONALBYTES, 

108 crypto_generichash_SALTBYTES, 

109 crypto_generichash_STATEBYTES, 

110) 

111from nacl.bindings.crypto_generichash import ( 

112 generichash_blake2b_final as crypto_generichash_blake2b_final, 

113) 

114from nacl.bindings.crypto_generichash import ( 

115 generichash_blake2b_init as crypto_generichash_blake2b_init, 

116) 

117from nacl.bindings.crypto_generichash import ( 

118 generichash_blake2b_salt_personal as crypto_generichash_blake2b_salt_personal, 

119) 

120from nacl.bindings.crypto_generichash import ( 

121 generichash_blake2b_update as crypto_generichash_blake2b_update, 

122) 

123from nacl.bindings.crypto_hash import ( 

124 crypto_hash, 

125 crypto_hash_BYTES, 

126 crypto_hash_sha256, 

127 crypto_hash_sha256_BYTES, 

128 crypto_hash_sha512, 

129 crypto_hash_sha512_BYTES, 

130) 

131from nacl.bindings.crypto_kx import ( 

132 crypto_kx_client_session_keys, 

133 crypto_kx_keypair, 

134 crypto_kx_PUBLIC_KEY_BYTES, 

135 crypto_kx_SECRET_KEY_BYTES, 

136 crypto_kx_SEED_BYTES, 

137 crypto_kx_seed_keypair, 

138 crypto_kx_server_session_keys, 

139 crypto_kx_SESSION_KEY_BYTES, 

140) 

141from nacl.bindings.crypto_pwhash import ( 

142 crypto_pwhash_alg, 

143 crypto_pwhash_ALG_ARGON2I13, 

144 crypto_pwhash_ALG_ARGON2ID13, 

145 crypto_pwhash_ALG_DEFAULT, 

146 crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE, 

147 crypto_pwhash_argon2i_MEMLIMIT_MAX, 

148 crypto_pwhash_argon2i_MEMLIMIT_MIN, 

149 crypto_pwhash_argon2i_MEMLIMIT_MODERATE, 

150 crypto_pwhash_argon2i_MEMLIMIT_SENSITIVE, 

151 crypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE, 

152 crypto_pwhash_argon2i_OPSLIMIT_MAX, 

153 crypto_pwhash_argon2i_OPSLIMIT_MIN, 

154 crypto_pwhash_argon2i_OPSLIMIT_MODERATE, 

155 crypto_pwhash_argon2i_OPSLIMIT_SENSITIVE, 

156 crypto_pwhash_argon2i_STRPREFIX, 

157 crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE, 

158 crypto_pwhash_argon2id_MEMLIMIT_MAX, 

159 crypto_pwhash_argon2id_MEMLIMIT_MIN, 

160 crypto_pwhash_argon2id_MEMLIMIT_MODERATE, 

161 crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE, 

162 crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE, 

163 crypto_pwhash_argon2id_OPSLIMIT_MAX, 

164 crypto_pwhash_argon2id_OPSLIMIT_MIN, 

165 crypto_pwhash_argon2id_OPSLIMIT_MODERATE, 

166 crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE, 

167 crypto_pwhash_argon2id_STRPREFIX, 

168 crypto_pwhash_BYTES_MAX, 

169 crypto_pwhash_BYTES_MIN, 

170 crypto_pwhash_PASSWD_MAX, 

171 crypto_pwhash_PASSWD_MIN, 

172 crypto_pwhash_SALTBYTES, 

173 crypto_pwhash_scryptsalsa208sha256_BYTES_MAX, 

174 crypto_pwhash_scryptsalsa208sha256_BYTES_MIN, 

175 crypto_pwhash_scryptsalsa208sha256_ll, 

176 crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE, 

177 crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX, 

178 crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN, 

179 crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE, 

180 crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE, 

181 crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX, 

182 crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN, 

183 crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE, 

184 crypto_pwhash_scryptsalsa208sha256_PASSWD_MAX, 

185 crypto_pwhash_scryptsalsa208sha256_PASSWD_MIN, 

186 crypto_pwhash_scryptsalsa208sha256_SALTBYTES, 

187 crypto_pwhash_scryptsalsa208sha256_str, 

188 crypto_pwhash_scryptsalsa208sha256_str_verify, 

189 crypto_pwhash_scryptsalsa208sha256_STRBYTES, 

190 crypto_pwhash_scryptsalsa208sha256_STRPREFIX, 

191 crypto_pwhash_str_alg, 

192 crypto_pwhash_str_verify, 

193 crypto_pwhash_STRBYTES, 

194 has_crypto_pwhash_scryptsalsa208sha256, 

195 nacl_bindings_pick_scrypt_params, 

196) 

197from nacl.bindings.crypto_scalarmult import ( 

198 crypto_scalarmult, 

199 crypto_scalarmult_base, 

200 crypto_scalarmult_BYTES, 

201 crypto_scalarmult_ed25519, 

202 crypto_scalarmult_ed25519_base, 

203 crypto_scalarmult_ed25519_base_noclamp, 

204 crypto_scalarmult_ed25519_BYTES, 

205 crypto_scalarmult_ed25519_noclamp, 

206 crypto_scalarmult_ed25519_SCALARBYTES, 

207 crypto_scalarmult_SCALARBYTES, 

208 has_crypto_scalarmult_ed25519, 

209) 

210from nacl.bindings.crypto_secretbox import ( 

211 crypto_secretbox, 

212 crypto_secretbox_BOXZEROBYTES, 

213 crypto_secretbox_easy, 

214 crypto_secretbox_KEYBYTES, 

215 crypto_secretbox_MACBYTES, 

216 crypto_secretbox_MESSAGEBYTES_MAX, 

217 crypto_secretbox_NONCEBYTES, 

218 crypto_secretbox_open, 

219 crypto_secretbox_open_easy, 

220 crypto_secretbox_ZEROBYTES, 

221) 

222from nacl.bindings.crypto_secretstream import ( 

223 crypto_secretstream_xchacha20poly1305_ABYTES, 

224 crypto_secretstream_xchacha20poly1305_HEADERBYTES, 

225 crypto_secretstream_xchacha20poly1305_init_pull, 

226 crypto_secretstream_xchacha20poly1305_init_push, 

227 crypto_secretstream_xchacha20poly1305_KEYBYTES, 

228 crypto_secretstream_xchacha20poly1305_keygen, 

229 crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX, 

230 crypto_secretstream_xchacha20poly1305_pull, 

231 crypto_secretstream_xchacha20poly1305_push, 

232 crypto_secretstream_xchacha20poly1305_rekey, 

233 crypto_secretstream_xchacha20poly1305_state, 

234 crypto_secretstream_xchacha20poly1305_STATEBYTES, 

235 crypto_secretstream_xchacha20poly1305_TAG_FINAL, 

236 crypto_secretstream_xchacha20poly1305_TAG_MESSAGE, 

237 crypto_secretstream_xchacha20poly1305_TAG_PUSH, 

238 crypto_secretstream_xchacha20poly1305_TAG_REKEY, 

239) 

240from nacl.bindings.crypto_shorthash import ( 

241 BYTES as crypto_shorthash_siphash24_BYTES, 

242) 

243from nacl.bindings.crypto_shorthash import ( 

244 KEYBYTES as crypto_shorthash_siphash24_KEYBYTES, 

245) 

246from nacl.bindings.crypto_shorthash import ( 

247 XBYTES as crypto_shorthash_siphashx24_BYTES, 

248) 

249from nacl.bindings.crypto_shorthash import ( 

250 XKEYBYTES as crypto_shorthash_siphashx24_KEYBYTES, 

251) 

252from nacl.bindings.crypto_shorthash import ( 

253 crypto_shorthash_siphash24, 

254 crypto_shorthash_siphashx24, 

255 has_crypto_shorthash_siphashx24, 

256) 

257from nacl.bindings.crypto_sign import ( 

258 crypto_sign, 

259 crypto_sign_BYTES, 

260 crypto_sign_ed25519_pk_to_curve25519, 

261 crypto_sign_ed25519_sk_to_curve25519, 

262 crypto_sign_ed25519_sk_to_pk, 

263 crypto_sign_ed25519_sk_to_seed, 

264 crypto_sign_ed25519ph_final_create, 

265 crypto_sign_ed25519ph_final_verify, 

266 crypto_sign_ed25519ph_state, 

267 crypto_sign_ed25519ph_STATEBYTES, 

268 crypto_sign_ed25519ph_update, 

269 crypto_sign_keypair, 

270 crypto_sign_open, 

271 crypto_sign_PUBLICKEYBYTES, 

272 crypto_sign_SECRETKEYBYTES, 

273 crypto_sign_seed_keypair, 

274 crypto_sign_SEEDBYTES, 

275) 

276from nacl.bindings.randombytes import ( 

277 randombytes, 

278 randombytes_buf_deterministic, 

279) 

280from nacl.bindings.sodium_core import sodium_init 

281from nacl.bindings.utils import ( 

282 sodium_add, 

283 sodium_increment, 

284 sodium_memcmp, 

285 sodium_pad, 

286 sodium_unpad, 

287) 

288 

289__all__ = [ 

290 "crypto_aead_aegis128l_ABYTES", 

291 "crypto_aead_aegis128l_KEYBYTES", 

292 "crypto_aead_aegis128l_MESSAGEBYTES_MAX", 

293 "crypto_aead_aegis128l_NPUBBYTES", 

294 "crypto_aead_aegis128l_NSECBYTES", 

295 "crypto_aead_aegis128l_decrypt", 

296 "crypto_aead_aegis128l_encrypt", 

297 "crypto_aead_aegis256_ABYTES", 

298 "crypto_aead_aegis256_KEYBYTES", 

299 "crypto_aead_aegis256_MESSAGEBYTES_MAX", 

300 "crypto_aead_aegis256_NPUBBYTES", 

301 "crypto_aead_aegis256_NSECBYTES", 

302 "crypto_aead_aegis256_decrypt", 

303 "crypto_aead_aegis256_encrypt", 

304 "crypto_aead_aes256gcm_ABYTES", 

305 "crypto_aead_aes256gcm_KEYBYTES", 

306 "crypto_aead_aes256gcm_MESSAGEBYTES_MAX", 

307 "crypto_aead_aes256gcm_NPUBBYTES", 

308 "crypto_aead_aes256gcm_NSECBYTES", 

309 "crypto_aead_aes256gcm_decrypt", 

310 "crypto_aead_aes256gcm_encrypt", 

311 "crypto_aead_chacha20poly1305_ABYTES", 

312 "crypto_aead_chacha20poly1305_KEYBYTES", 

313 "crypto_aead_chacha20poly1305_MESSAGEBYTES_MAX", 

314 "crypto_aead_chacha20poly1305_NPUBBYTES", 

315 "crypto_aead_chacha20poly1305_NSECBYTES", 

316 "crypto_aead_chacha20poly1305_decrypt", 

317 "crypto_aead_chacha20poly1305_encrypt", 

318 "crypto_aead_chacha20poly1305_ietf_ABYTES", 

319 "crypto_aead_chacha20poly1305_ietf_KEYBYTES", 

320 "crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX", 

321 "crypto_aead_chacha20poly1305_ietf_NPUBBYTES", 

322 "crypto_aead_chacha20poly1305_ietf_NSECBYTES", 

323 "crypto_aead_chacha20poly1305_ietf_decrypt", 

324 "crypto_aead_chacha20poly1305_ietf_encrypt", 

325 "crypto_aead_xchacha20poly1305_ietf_ABYTES", 

326 "crypto_aead_xchacha20poly1305_ietf_KEYBYTES", 

327 "crypto_aead_xchacha20poly1305_ietf_MESSAGEBYTES_MAX", 

328 "crypto_aead_xchacha20poly1305_ietf_NPUBBYTES", 

329 "crypto_aead_xchacha20poly1305_ietf_NSECBYTES", 

330 "crypto_aead_xchacha20poly1305_ietf_decrypt", 

331 "crypto_aead_xchacha20poly1305_ietf_encrypt", 

332 "crypto_box", 

333 "crypto_box_BEFORENMBYTES", 

334 "crypto_box_BOXZEROBYTES", 

335 "crypto_box_NONCEBYTES", 

336 "crypto_box_PUBLICKEYBYTES", 

337 "crypto_box_SEALBYTES", 

338 "crypto_box_SECRETKEYBYTES", 

339 "crypto_box_SEEDBYTES", 

340 "crypto_box_ZEROBYTES", 

341 "crypto_box_afternm", 

342 "crypto_box_beforenm", 

343 "crypto_box_easy", 

344 "crypto_box_easy_afternm", 

345 "crypto_box_keypair", 

346 "crypto_box_open", 

347 "crypto_box_open_afternm", 

348 "crypto_box_open_easy", 

349 "crypto_box_open_easy_afternm", 

350 "crypto_box_seal", 

351 "crypto_box_seal_open", 

352 "crypto_box_seed_keypair", 

353 "crypto_core_ed25519_BYTES", 

354 "crypto_core_ed25519_NONREDUCEDSCALARBYTES", 

355 "crypto_core_ed25519_SCALARBYTES", 

356 "crypto_core_ed25519_UNIFORMBYTES", 

357 "crypto_core_ed25519_add", 

358 "crypto_core_ed25519_from_uniform", 

359 "crypto_core_ed25519_is_valid_point", 

360 "crypto_core_ed25519_scalar_add", 

361 "crypto_core_ed25519_scalar_complement", 

362 "crypto_core_ed25519_scalar_invert", 

363 "crypto_core_ed25519_scalar_mul", 

364 "crypto_core_ed25519_scalar_negate", 

365 "crypto_core_ed25519_scalar_reduce", 

366 "crypto_core_ed25519_scalar_sub", 

367 "crypto_core_ed25519_sub", 

368 "crypto_generichash_BYTES", 

369 "crypto_generichash_BYTES_MAX", 

370 "crypto_generichash_BYTES_MIN", 

371 "crypto_generichash_KEYBYTES", 

372 "crypto_generichash_KEYBYTES_MAX", 

373 "crypto_generichash_KEYBYTES_MIN", 

374 "crypto_generichash_PERSONALBYTES", 

375 "crypto_generichash_SALTBYTES", 

376 "crypto_generichash_STATEBYTES", 

377 "crypto_generichash_blake2b_final", 

378 "crypto_generichash_blake2b_init", 

379 "crypto_generichash_blake2b_salt_personal", 

380 "crypto_generichash_blake2b_update", 

381 "crypto_hash", 

382 "crypto_hash_BYTES", 

383 "crypto_hash_sha256", 

384 "crypto_hash_sha256_BYTES", 

385 "crypto_hash_sha512", 

386 "crypto_hash_sha512_BYTES", 

387 "crypto_kx_PUBLIC_KEY_BYTES", 

388 "crypto_kx_SECRET_KEY_BYTES", 

389 "crypto_kx_SEED_BYTES", 

390 "crypto_kx_SESSION_KEY_BYTES", 

391 "crypto_kx_client_session_keys", 

392 "crypto_kx_keypair", 

393 "crypto_kx_seed_keypair", 

394 "crypto_kx_server_session_keys", 

395 "crypto_pwhash_ALG_ARGON2I13", 

396 "crypto_pwhash_ALG_ARGON2ID13", 

397 "crypto_pwhash_ALG_DEFAULT", 

398 "crypto_pwhash_BYTES_MAX", 

399 "crypto_pwhash_BYTES_MIN", 

400 "crypto_pwhash_PASSWD_MAX", 

401 "crypto_pwhash_PASSWD_MIN", 

402 "crypto_pwhash_SALTBYTES", 

403 "crypto_pwhash_STRBYTES", 

404 "crypto_pwhash_alg", 

405 "crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE", 

406 "crypto_pwhash_argon2i_MEMLIMIT_MAX", 

407 "crypto_pwhash_argon2i_MEMLIMIT_MIN", 

408 "crypto_pwhash_argon2i_MEMLIMIT_MODERATE", 

409 "crypto_pwhash_argon2i_MEMLIMIT_SENSITIVE", 

410 "crypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE", 

411 "crypto_pwhash_argon2i_OPSLIMIT_MAX", 

412 "crypto_pwhash_argon2i_OPSLIMIT_MIN", 

413 "crypto_pwhash_argon2i_OPSLIMIT_MODERATE", 

414 "crypto_pwhash_argon2i_OPSLIMIT_SENSITIVE", 

415 "crypto_pwhash_argon2i_STRPREFIX", 

416 "crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE", 

417 "crypto_pwhash_argon2id_MEMLIMIT_MAX", 

418 "crypto_pwhash_argon2id_MEMLIMIT_MIN", 

419 "crypto_pwhash_argon2id_MEMLIMIT_MODERATE", 

420 "crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE", 

421 "crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE", 

422 "crypto_pwhash_argon2id_OPSLIMIT_MAX", 

423 "crypto_pwhash_argon2id_OPSLIMIT_MIN", 

424 "crypto_pwhash_argon2id_OPSLIMIT_MODERATE", 

425 "crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE", 

426 "crypto_pwhash_argon2id_STRPREFIX", 

427 "crypto_pwhash_scryptsalsa208sha256_BYTES_MAX", 

428 "crypto_pwhash_scryptsalsa208sha256_BYTES_MIN", 

429 "crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE", 

430 "crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX", 

431 "crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN", 

432 "crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE", 

433 "crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE", 

434 "crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX", 

435 "crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN", 

436 "crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE", 

437 "crypto_pwhash_scryptsalsa208sha256_PASSWD_MAX", 

438 "crypto_pwhash_scryptsalsa208sha256_PASSWD_MIN", 

439 "crypto_pwhash_scryptsalsa208sha256_SALTBYTES", 

440 "crypto_pwhash_scryptsalsa208sha256_STRBYTES", 

441 "crypto_pwhash_scryptsalsa208sha256_STRPREFIX", 

442 "crypto_pwhash_scryptsalsa208sha256_ll", 

443 "crypto_pwhash_scryptsalsa208sha256_str", 

444 "crypto_pwhash_scryptsalsa208sha256_str_verify", 

445 "crypto_pwhash_str_alg", 

446 "crypto_pwhash_str_verify", 

447 "crypto_scalarmult", 

448 "crypto_scalarmult_BYTES", 

449 "crypto_scalarmult_SCALARBYTES", 

450 "crypto_scalarmult_base", 

451 "crypto_scalarmult_ed25519", 

452 "crypto_scalarmult_ed25519_BYTES", 

453 "crypto_scalarmult_ed25519_SCALARBYTES", 

454 "crypto_scalarmult_ed25519_base", 

455 "crypto_scalarmult_ed25519_base_noclamp", 

456 "crypto_scalarmult_ed25519_noclamp", 

457 "crypto_secretbox", 

458 "crypto_secretbox_BOXZEROBYTES", 

459 "crypto_secretbox_KEYBYTES", 

460 "crypto_secretbox_MACBYTES", 

461 "crypto_secretbox_MESSAGEBYTES_MAX", 

462 "crypto_secretbox_NONCEBYTES", 

463 "crypto_secretbox_ZEROBYTES", 

464 "crypto_secretbox_easy", 

465 "crypto_secretbox_open", 

466 "crypto_secretbox_open_easy", 

467 "crypto_secretstream_xchacha20poly1305_ABYTES", 

468 "crypto_secretstream_xchacha20poly1305_HEADERBYTES", 

469 "crypto_secretstream_xchacha20poly1305_KEYBYTES", 

470 "crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX", 

471 "crypto_secretstream_xchacha20poly1305_STATEBYTES", 

472 "crypto_secretstream_xchacha20poly1305_TAG_FINAL", 

473 "crypto_secretstream_xchacha20poly1305_TAG_MESSAGE", 

474 "crypto_secretstream_xchacha20poly1305_TAG_PUSH", 

475 "crypto_secretstream_xchacha20poly1305_TAG_REKEY", 

476 "crypto_secretstream_xchacha20poly1305_init_pull", 

477 "crypto_secretstream_xchacha20poly1305_init_push", 

478 "crypto_secretstream_xchacha20poly1305_keygen", 

479 "crypto_secretstream_xchacha20poly1305_pull", 

480 "crypto_secretstream_xchacha20poly1305_push", 

481 "crypto_secretstream_xchacha20poly1305_rekey", 

482 "crypto_secretstream_xchacha20poly1305_state", 

483 "crypto_shorthash_siphash24", 

484 "crypto_shorthash_siphash24_BYTES", 

485 "crypto_shorthash_siphash24_KEYBYTES", 

486 "crypto_shorthash_siphashx24", 

487 "crypto_shorthash_siphashx24_BYTES", 

488 "crypto_shorthash_siphashx24_KEYBYTES", 

489 "crypto_sign", 

490 "crypto_sign_BYTES", 

491 "crypto_sign_PUBLICKEYBYTES", 

492 "crypto_sign_SECRETKEYBYTES", 

493 "crypto_sign_SEEDBYTES", 

494 "crypto_sign_ed25519_pk_to_curve25519", 

495 "crypto_sign_ed25519_sk_to_curve25519", 

496 "crypto_sign_ed25519_sk_to_pk", 

497 "crypto_sign_ed25519_sk_to_seed", 

498 "crypto_sign_ed25519ph_STATEBYTES", 

499 "crypto_sign_ed25519ph_final_create", 

500 "crypto_sign_ed25519ph_final_verify", 

501 "crypto_sign_ed25519ph_state", 

502 "crypto_sign_ed25519ph_update", 

503 "crypto_sign_keypair", 

504 "crypto_sign_open", 

505 "crypto_sign_seed_keypair", 

506 "has_crypto_core_ed25519", 

507 "has_crypto_pwhash_scryptsalsa208sha256", 

508 "has_crypto_scalarmult_ed25519", 

509 "has_crypto_shorthash_siphashx24", 

510 "nacl_bindings_pick_scrypt_params", 

511 "randombytes", 

512 "randombytes_buf_deterministic", 

513 "sodium_add", 

514 "sodium_increment", 

515 "sodium_init", 

516 "sodium_memcmp", 

517 "sodium_pad", 

518 "sodium_unpad", 

519] 

520 

521 

522# Initialize Sodium 

523sodium_init()