Update key transparency gRPC client

This commit is contained in:
Katherine 2024-10-04 16:43:30 -04:00 committed by GitHub
parent 80cd5d9ccc
commit ca2845bcb0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 19 additions and 15 deletions

View File

@ -13,7 +13,7 @@ import io.grpc.StatusRuntimeException;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.tags.Tag;
import katie.MonitorKey;
import org.signal.keytransparency.client.MonitorKey;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.whispersystems.textsecuregcm.auth.AuthenticatedDevice;

View File

@ -19,13 +19,11 @@ import java.util.concurrent.Executor;
import java.util.concurrent.TimeUnit;
import io.grpc.TlsChannelCredentials;
import katie.ConsistencyParameters;
import katie.KatieGrpc;
import katie.MonitorKey;
import katie.MonitorRequest;
import katie.MonitorResponse;
import katie.SearchRequest;
import katie.SearchResponse;
import org.signal.keytransparency.client.ConsistencyParameters;
import org.signal.keytransparency.client.KeyTransparencyQueryServiceGrpc;
import org.signal.keytransparency.client.MonitorKey;
import org.signal.keytransparency.client.MonitorRequest;
import org.signal.keytransparency.client.SearchRequest;
import org.whispersystems.textsecuregcm.util.CompletableFutureUtil;
public class KeyTransparencyServiceClient implements Managed {
@ -35,7 +33,7 @@ public class KeyTransparencyServiceClient implements Managed {
private final int port;
private final ChannelCredentials tlsChannelCredentials;
private ManagedChannel channel;
private KatieGrpc.KatieFutureStub stub;
private KeyTransparencyQueryServiceGrpc.KeyTransparencyQueryServiceFutureStub stub;
public KeyTransparencyServiceClient(
final String host,
@ -100,7 +98,7 @@ public class KeyTransparencyServiceClient implements Managed {
channel = Grpc.newChannelBuilderForAddress(host, port, tlsChannelCredentials)
.idleTimeout(1, TimeUnit.MINUTES)
.build();
stub = KatieGrpc.newFutureStub(channel);
stub = KeyTransparencyQueryServiceGrpc.newFutureStub(channel);
}
@Override

View File

@ -6,17 +6,23 @@
syntax = "proto3";
option java_multiple_files = true;
option java_package = "org.signal.keytransparency.client";
package katie;
package kt_query;
service Katie {
/**
* An external-facing, read-only key transparency service used by Signal's chat server
* to look up and monitor search keys.
*/
service KeyTransparencyQueryService {
/**
* Provides proof that a specific version of the search key exists in the log tree.
* An endpoint used by clients to search for a given key in the transparency log.
* The server returns proof that the search key exists in the log.
*/
rpc Search(SearchRequest) returns (SearchResponse) {}
/**
* Allows users to monitor a set of search keys by providing proof that the log tree continues to be
* constructed correctly in later entries for those search keys.
* An endpoint that allows users to monitor a set of search keys by returning proof that the log continues to be
* constructed correctly in later entries for those search keys.
*/
rpc Monitor(MonitorRequest) returns (MonitorResponse) {}
}