Шифрование данных
Данные направляются в JSON формате и содержат два параметра:
- Ключ (key);
- Данные (payload)
{ "key" : string; "payload" : string }
Ключ представляет собой зашифрованный симметричный ключ для расшифровки полезной данных. Чтобы расшифровать этот симметричный ключ, вам необходимо использовать ранее полученный закрытый ключ.
Пример скрипта на Python, используемого для расшифровки данных:
import rsa
import base64
from cryptography.fernet import Fernet
key_decode = base64.b64decode(key)
payload_decode = base64.b64decode(payload)
privateKey = rsa.PrivateKey.load_pkcs1(private_key_string.encode('utf8'))
symmetricKey = rsa.decrypt(key_decode, privateKey)
f = Fernet(symmetricKey)
payload_decrypted = f.decrypt(payload_decode).decode('utf-8')