From ca2845bcb0555c374e0a03a32f69bad55c80b868 Mon Sep 17 00:00:00 2001 From: Katherine Date: Fri, 4 Oct 2024 16:43:30 -0400 Subject: [PATCH] Update key transparency gRPC client --- .../controllers/KeyTransparencyController.java | 2 +- .../KeyTransparencyServiceClient.java | 16 +++++++--------- .../src/main/proto/KeyTransparencyService.proto | 16 +++++++++++----- 3 files changed, 19 insertions(+), 15 deletions(-) diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/controllers/KeyTransparencyController.java b/service/src/main/java/org/whispersystems/textsecuregcm/controllers/KeyTransparencyController.java index 4e4a3e9ee..c4746fe67 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/controllers/KeyTransparencyController.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/controllers/KeyTransparencyController.java @@ -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; diff --git a/service/src/main/java/org/whispersystems/textsecuregcm/keytransparency/KeyTransparencyServiceClient.java b/service/src/main/java/org/whispersystems/textsecuregcm/keytransparency/KeyTransparencyServiceClient.java index 7f0be60ec..1cbaa5c81 100644 --- a/service/src/main/java/org/whispersystems/textsecuregcm/keytransparency/KeyTransparencyServiceClient.java +++ b/service/src/main/java/org/whispersystems/textsecuregcm/keytransparency/KeyTransparencyServiceClient.java @@ -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 diff --git a/service/src/main/proto/KeyTransparencyService.proto b/service/src/main/proto/KeyTransparencyService.proto index e97f3d099..50fb06479 100644 --- a/service/src/main/proto/KeyTransparencyService.proto +++ b/service/src/main/proto/KeyTransparencyService.proto @@ -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) {} }