Utilising a frontend with TweetNacl and a backend with Pynacl, the message decryption is failing. I have logged the information flow, but it seems to me there is something amiss. The triggered error was not helpful in finding a solution to this problem, so I am writing here.
Traceback (most recent call last):
File "C:\Users\aUsename\AppData\Local\plover\plover\plugins\win\Python39\site-packages\plover_engine_server\websocket\nacl_middleware.py", line 99, in returned_middleware
decrypted_message = my_mail_box.decrypt(incoming_base64_encrypted_message, Base64Encoder)
File "C:\Users\aUsername\AppData\Local\plover\plover\plugins\win\Python39\site-packages\nacl\public.py", line 294, in decrypt
if len(nonce) != self.NONCE_SIZE:
TypeError: object of type 'ABCMeta' has no len()
Server
On the server side, there is Plover with the following plugin.
This plugin writes and reads to a file that has the public and private keys.
In this round the server has:
Utilising a frontend with TweetNacl and a backend with Pynacl, the message decryption is failing. I have logged the information flow, but it seems to me there is something amiss. The triggered error was not helpful in finding a solution to this problem, so I am writing here.
Frontend
At apiSlice.js line 7, the private key of the message sender is:
And the public key is:
Then a message with the content
{ message: 'Hello to you!' }
is encrypted at App.js line 97, which in turns calls the query at apiSlice.js line 23.Network
A GET query message with the following payload is then sent:
And which is responded by server with:
Server
On the server side, there is Plover with the following plugin.
This plugin writes and reads to a file that has the public and private keys. In this round the server has:
The read and write to this file are governed by config.py
The message is then received by the nacl_middleware where the following log is written to plover.log: