Verify a signature.
(
self,
algorithm: str,
data: str | bytes,
signature: str | bytes,
public_key: str | bytes,
)
| 496 | return SignResponse(**result) |
| 497 | |
| 498 | async def verify( |
| 499 | self, |
| 500 | algorithm: str, |
| 501 | data: str | bytes, |
| 502 | signature: str | bytes, |
| 503 | public_key: str | bytes, |
| 504 | ) -> VerifyResponse: |
| 505 | """Verify a signature.""" |
| 506 | data_bytes = data.encode() if isinstance(data, str) else data |
| 507 | sig_bytes = signature.encode() if isinstance(signature, str) else signature |
| 508 | pk_bytes = public_key.encode() if isinstance(public_key, str) else public_key |
| 509 | |
| 510 | payload = { |
| 511 | "algorithm": algorithm, |
| 512 | "data": binascii.hexlify(data_bytes).decode(), |
| 513 | "signature": binascii.hexlify(sig_bytes).decode(), |
| 514 | "public_key": binascii.hexlify(pk_bytes).decode(), |
| 515 | } |
| 516 | result = await self._send_rpc_request("Verify", payload) |
| 517 | return VerifyResponse(**result) |
| 518 | |
| 519 | async def version(self) -> VersionResponse: |
| 520 | """Query the guest-agent version. |