我必须编写python程序才能插入数据,并与用PHP编写的Web服务交换数据。该Web服务公开了API的其余部分。要发送的数据需要使用python加密,并通过PHP解密。
在PHP中,数据像这样被解密
$data=AesCtr::decrypt($dataEncoded, $user->apiKey, Parameter::getGlobalParameter('aesKeyLength'));
在python中,我这样写:
def MyEncrypt(data,Key):
# Encrypt the plaintext with the given key:
# ciphertext = AES-256-CTR-Encrypt(plaintext, key, iv)
iv = secrets.randbits(128)
EncryptedActivity = pyaes.AESModeOfOperationCTR(KeyAPI, pyaes.Counter(iv))
ciphertext = EncryptedActivity.encrypt(Activity)
return(ciphertext)
def InsertNewData(data,HasToBeEncrypted):
if HasToBeEncrypted :
EncrypedData=base64.b64encode(MyEncrypt(data,KeyAPI))
else:
EncrypedData=data
resultpost=requests.post(URL, data=EncrypedData, auth=Authentificaion, headers=headers)
return resultpost
ResulInsert = InsertNewData(Activity,False)
以下是API答复我的信息
“错误”:“无效的API查询”,“消息”:“” \'数据\'不正确 为方法POST编码。请求正确的API KEY“”}
我在做什么错?
预先感谢您的帮助。