public function createSealedRequest(
        string $method,
        string $uri,
        string $body,
        SealingPublicKey $key,
        array $headers = []
    ): RequestInterface {
        $sealed = Simple::seal(
            $body,
            $key
        );
        return new Request(
            $method,
            $uri,
            $headers,
            Base64UrlSafe::encode($sealed)
        );
    }
public function createSealedRequest(
        string $method,
        string $uri,
        string $body,
        SealingPublicKey $key,
        array $headers = []
    ): RequestInterface {
        $sealed = Simple::seal(
            $body,
            $key
        );
        return new Request(
            $method,
            $uri,
            $headers,
            Base64UrlSafe::encode($sealed)
        );
    }
public function createSealedRequest ( string $ method , string $ uri , string $ body , SealingPublicKey $ key , array $ headers = [ ] ) : RequestInterface { $ sealed = Simple :: seal ( $ body , $ key ) ; return new Request ( $ method , $ uri , $ headers , Base64UrlSafe :: encode ( $ sealed ) ) ; }
Encrypt your HTTP request with the server's public key, so that only
the server can decrypt the message.

@param string $method
@param string $uri
@param string $body
@param SealingPublicKey $key
@param array $headers
@return RequestInterface
Encrypt your HTTP request with the server s public key so that only the server can decrypt the message .