naeural-client 2.4.1__tar.gz → 2.4.3__tar.gz

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 (134) hide show
  1. {naeural_client-2.4.1 → naeural_client-2.4.3}/PKG-INFO +3 -2
  2. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/_ver.py +1 -1
  3. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/bc/ec.py +63 -48
  4. {naeural_client-2.4.1 → naeural_client-2.4.3}/pyproject.toml +1 -1
  5. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/multi-enc-dec/multi_test1.py +2 -2
  6. {naeural_client-2.4.1 → naeural_client-2.4.3}/.devcontainer/Dockerfile +0 -0
  7. {naeural_client-2.4.1 → naeural_client-2.4.3}/.devcontainer/devcontainer.json +0 -0
  8. {naeural_client-2.4.1 → naeural_client-2.4.3}/.gitattributes +0 -0
  9. {naeural_client-2.4.1 → naeural_client-2.4.3}/.github/workflows/python-publish.yml +0 -0
  10. {naeural_client-2.4.1 → naeural_client-2.4.3}/.gitignore +0 -0
  11. {naeural_client-2.4.1 → naeural_client-2.4.3}/.vscode/launch.json +0 -0
  12. {naeural_client-2.4.1 → naeural_client-2.4.3}/LICENSE +0 -0
  13. {naeural_client-2.4.1 → naeural_client-2.4.3}/README.md +0 -0
  14. {naeural_client-2.4.1 → naeural_client-2.4.3}/TODOs.md +0 -0
  15. {naeural_client-2.4.1 → naeural_client-2.4.3}/__init__.py +0 -0
  16. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/__init__.py +0 -0
  17. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/__init__.py +0 -0
  18. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/distributed_custom_code_presets.py +0 -0
  19. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/generic_session.py +0 -0
  20. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/instance.py +0 -0
  21. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/payload/__init__.py +0 -0
  22. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/payload/payload.py +0 -0
  23. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/pipeline.py +0 -0
  24. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/plugin_template.py +0 -0
  25. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/responses.py +0 -0
  26. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base/transaction.py +0 -0
  27. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/base_decentra_object.py +0 -0
  28. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/bc/__init__.py +0 -0
  29. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/bc/base.py +0 -0
  30. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/bc/chain.py +0 -0
  31. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/certs/__init__.py +0 -0
  32. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/certs/r9092118.ala.eu-central-1.emqxsl.com.crt +0 -0
  33. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/cli/README.md +0 -0
  34. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/cli/cli.py +0 -0
  35. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/cli/cli_commands.py +0 -0
  36. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/cli/nodes.py +0 -0
  37. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/code_cheker/__init__.py +0 -0
  38. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/code_cheker/base.py +0 -0
  39. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/code_cheker/checker.py +0 -0
  40. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/comm/__init__.py +0 -0
  41. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/comm/amqp_wrapper.py +0 -0
  42. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/comm/mqtt_wrapper.py +0 -0
  43. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/README.md +0 -0
  44. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/__init__.py +0 -0
  45. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/apps.py +0 -0
  46. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/base.py +0 -0
  47. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/comms.py +0 -0
  48. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/environment.py +0 -0
  49. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/formatter.py +0 -0
  50. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/heartbeat.py +0 -0
  51. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/misc.py +0 -0
  52. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/const/payload.py +0 -0
  53. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/__init__.py +0 -0
  54. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/instance/__init__.py +0 -0
  55. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/instance/chain_dist_custom_job_01_plugin.py +0 -0
  56. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/instance/custom_web_app_01_plugin.py +0 -0
  57. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/instance/net_mon_01_plugin.py +0 -0
  58. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/instance/telegram_basic_bot_01_plugin.py +0 -0
  59. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/instance/telegram_conversational_bot_01_plugin.py +0 -0
  60. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/instance/view_scene_01_plugin.py +0 -0
  61. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/default/session/mqtt_session.py +0 -0
  62. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/io_formatter/__init__.py +0 -0
  63. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/io_formatter/base/__init__.py +0 -0
  64. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/io_formatter/base/base_formatter.py +0 -0
  65. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/io_formatter/default/__init__.py +0 -0
  66. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/io_formatter/default/a_dummy.py +0 -0
  67. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/io_formatter/default/aixp1.py +0 -0
  68. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/io_formatter/default/default.py +0 -0
  69. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/io_formatter/io_formatter_manager.py +0 -0
  70. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/__init__.py +0 -0
  71. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/base_logger.py +0 -0
  72. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/__init__.py +0 -0
  73. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/class_instance_mixin.py +0 -0
  74. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/computer_vision_mixin.py +0 -0
  75. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/datetime_mixin.py +0 -0
  76. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/download_mixin.py +0 -0
  77. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/general_serialization_mixin.py +0 -0
  78. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/json_serialization_mixin.py +0 -0
  79. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/pickle_serialization_mixin.py +0 -0
  80. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/process_mixin.py +0 -0
  81. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/resource_size_mixin.py +0 -0
  82. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/timers_mixin.py +0 -0
  83. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/upload_mixin.py +0 -0
  84. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/logger_mixins/utils_mixin.py +0 -0
  85. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/small_logger.py +0 -0
  86. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/tzlocal/__init__.py +0 -0
  87. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/tzlocal/unix.py +0 -0
  88. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/tzlocal/utils.py +0 -0
  89. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/tzlocal/win32.py +0 -0
  90. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/logging/tzlocal/windows_tz.py +0 -0
  91. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/plugins_manager_mixin.py +0 -0
  92. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/utils/__init__.py +0 -0
  93. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/utils/comm_utils.py +0 -0
  94. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/utils/config.py +0 -0
  95. {naeural_client-2.4.1 → naeural_client-2.4.3}/naeural_client/utils/dotenv.py +0 -0
  96. {naeural_client-2.4.1 → naeural_client-2.4.3}/requirements.txt +0 -0
  97. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/.example_env +0 -0
  98. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/8. custom_code_fastapi_assets/index.html +0 -0
  99. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/9. code_sandbox_from_scratch_assets/index.html +0 -0
  100. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/_example_pk_sdk.pem +0 -0
  101. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex01_part1_connect.py +0 -0
  102. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex01_part2_filter.py +0 -0
  103. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex02_first_deploy.py +0 -0
  104. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex03_custom_code_on_one_remote__example_1.py +0 -0
  105. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex04_custom_code_on_one_remote__example_2.py +0 -0
  106. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex05_custom_code_on_one_remote__example_3.py +0 -0
  107. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex06_custom_code_on_multiple_remotes__example_1.py +0 -0
  108. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex07_custom_code_on_multiple_remotes__example_2.py +0 -0
  109. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex08_custom_web_app.py +0 -0
  110. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex09_code_sandbox_from_scratch.py +0 -0
  111. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex10_telegram_echo_bot.py +0 -0
  112. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex11_telegram_blackjack_bot.py +0 -0
  113. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/ex12_telegram_smart_bot.py +0 -0
  114. {naeural_client-2.4.1 → naeural_client-2.4.3}/tutorials/video_presentation/1. hello_world.ipynb +0 -0
  115. {naeural_client-2.4.1 → naeural_client-2.4.3}/winrun.bat +0 -0
  116. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/.example_env +0 -0
  117. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/_archive/test.py +0 -0
  118. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/_tutorials/3. simple_real_time_custom_code.py +0 -0
  119. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/_tutorials/4. real_time_custom_code_2.py +0 -0
  120. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/_tutorials/8. chatbot.py +0 -0
  121. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/decentralized/chain_dist_example.py +0 -0
  122. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/decentralized/chain_dist_example_initiator.py +0 -0
  123. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/decentralized/chain_dist_example_worker.py +0 -0
  124. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/enc_dec/enc_dec_test.py +0 -0
  125. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/eth/eth_sign.py +0 -0
  126. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/eth/info.md +0 -0
  127. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/eth/sign.py +0 -0
  128. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/utils/get_documentation.py +0 -0
  129. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/various/README.md +0 -0
  130. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/various/attach_example.py +0 -0
  131. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/various/ex1.py +0 -0
  132. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/various/hello.py +0 -0
  133. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/various/remote_exec.py +0 -0
  134. {naeural_client-2.4.1 → naeural_client-2.4.3}/xperimental/various/save_images.py +0 -0
@@ -1,10 +1,11 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: naeural_client
3
- Version: 2.4.1
3
+ Version: 2.4.3
4
4
  Summary: `naeural_client` is the Python SDK required for client app development for the Naeural Edge Protocol Edge Protocol framework
5
5
  Project-URL: Homepage, https://github.com/NaeuralEdgeProtocol/naeural_client
6
6
  Project-URL: Bug Tracker, https://github.com/NaeuralEdgeProtocol/naeural_client/issues
7
7
  Author-email: Andrei Ionut Damian <andrei.damian@me.com>, Cristan Bleotiu <cristibleotiu@gmail.com>, Stefan Saraev <saraevstefan@gmail.com>
8
+ License-File: LICENSE
8
9
  Classifier: License :: OSI Approved :: MIT License
9
10
  Classifier: Operating System :: OS Independent
10
11
  Classifier: Programming Language :: Python :: 3
@@ -1,4 +1,4 @@
1
- __VER__ = "2.4.1"
1
+ __VER__ = "2.4.3"
2
2
 
3
3
  if __name__ == "__main__":
4
4
  with open("pyproject.toml", "rt") as fd:
@@ -233,12 +233,16 @@ class BaseBCEllipticCurveEngine(BaseBlockEngine):
233
233
  the pk object.
234
234
 
235
235
  """
236
- simple_address = self._remove_prefix(address)
237
- bpublic_key = self._text_to_binary(simple_address)
238
- public_key = ec.EllipticCurvePublicKey.from_encoded_point(
239
- curve=ec.SECP256K1(),
240
- data=bpublic_key
241
- )
236
+ try:
237
+ simple_address = self._remove_prefix(address)
238
+ bpublic_key = self._text_to_binary(simple_address)
239
+ public_key = ec.EllipticCurvePublicKey.from_encoded_point(
240
+ curve=ec.SECP256K1(),
241
+ data=bpublic_key
242
+ )
243
+ except Exception as exp:
244
+ self.P(f"Error converting address <{address}>to pk: {exp}", color='r')
245
+ raise exp
242
246
  return public_key
243
247
 
244
248
 
@@ -328,47 +332,6 @@ class BaseBCEllipticCurveEngine(BaseBlockEngine):
328
332
  #end if
329
333
  return base64.b64encode(encrypted_data).decode() # Encode to base64
330
334
 
331
-
332
- def encrypt(
333
- self,
334
- plaintext: str,
335
- receiver_address: str,
336
- info: str = BCct.DEFAULT_INFO,
337
- debug: bool = False,
338
- **kwargs
339
- ):
340
- """
341
- Encrypts plaintext using the sender's private key and receiver's public key,
342
- then base64 encodes the output.
343
-
344
- Parameters
345
- ----------
346
- receiver_address : str
347
- The receiver's address
348
-
349
- plaintext : str
350
- The plaintext to encrypt.
351
-
352
- Obsolete:
353
- compressed : bool, optional
354
- Whether to compress the plaintext before encryption. The default is True.
355
-
356
- embed_compressed : bool, optional
357
- Whether to embed the compressed flag in the encrypted data. The default is True.
358
-
359
- Returns
360
- -------
361
- str
362
- The base64 encoded nonce and ciphertext.
363
- """
364
- return self._encrypt(
365
- plaintext=plaintext,
366
- receiver_address=receiver_address,
367
- compressed=True,
368
- embed_compressed=True,
369
- info=info,
370
- debug=debug,
371
- )
372
335
 
373
336
 
374
337
  def _decrypt(
@@ -611,7 +574,59 @@ class BaseBCEllipticCurveEngine(BaseBlockEngine):
611
574
  if debug:
612
575
  self.P(f"Error decrypting multi scenario: {exc}", color='r')
613
576
  return None
614
-
577
+
578
+
579
+ def encrypt(
580
+ self,
581
+ plaintext: str,
582
+ receiver_address: any,
583
+ info: str = BCct.DEFAULT_INFO,
584
+ debug: bool = False,
585
+ **kwargs
586
+ ):
587
+ """
588
+ Encrypts plaintext using the sender's private key and receiver's public key,
589
+ then base64 encodes the output.
590
+
591
+ Parameters
592
+ ----------
593
+ plaintext : str
594
+ The plaintext to encrypt.
595
+
596
+ receiver_address : str or list[str]
597
+ The receiver's address or list of multiple receivers addresses.
598
+
599
+
600
+ Obsolete:
601
+ compressed : bool, optional
602
+ Whether to compress the plaintext before encryption. The default is True.
603
+
604
+ embed_compressed : bool, optional
605
+ Whether to embed the compressed flag in the encrypted data. The default is True.
606
+
607
+ Returns
608
+ -------
609
+ str
610
+ The base64 encoded nonce and ciphertext.
611
+ """
612
+ assert isinstance(receiver_address, (str, list)), "receiver_address must be a string or a list of strings."
613
+ if isinstance(receiver_address, list):
614
+ return self.encrypt_for_multi(
615
+ plaintext=plaintext,
616
+ receiver_addresses=receiver_address,
617
+ info=info,
618
+ debug=debug
619
+ )
620
+ return self._encrypt(
621
+ plaintext=plaintext,
622
+ receiver_address=receiver_address,
623
+ compressed=True,
624
+ embed_compressed=True,
625
+ info=info,
626
+ debug=debug,
627
+ )
628
+
629
+
615
630
  def decrypt(
616
631
  self,
617
632
  encrypted_data_b64: str,
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "naeural_client"
7
- version = "2.4.1"
7
+ version = "2.4.3"
8
8
  authors = [
9
9
  { name="Andrei Ionut Damian", email="andrei.damian@me.com" },
10
10
  { name="Cristan Bleotiu", email="cristibleotiu@gmail.com" },
@@ -48,9 +48,9 @@ if __name__ == '__main__' :
48
48
  plaintext=str_data,
49
49
  receiver_address=receivers[0].address, debug=True
50
50
  )
51
- enc_data1m = eng1.encrypt_for_multi(
51
+ enc_data1m = eng1.encrypt(
52
52
  plaintext=str_data,
53
- receiver_addresses=[x.address for x in receivers]
53
+ receiver_address=[x.address for x in receivers]
54
54
  )
55
55
  l.P("Encrypted data size: {}".format(len(enc_data1m)), color='b')
56
56
  receivers.append(bandit) # bandit inserts itself into the list of receivers
File without changes
File without changes
File without changes