1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/cloud/kms/v1/service.proto 20 21package kms 22 23import ( 24 context "context" 25 reflect "reflect" 26 sync "sync" 27 28 _ "google.golang.org/genproto/googleapis/api/annotations" 29 grpc "google.golang.org/grpc" 30 codes "google.golang.org/grpc/codes" 31 status "google.golang.org/grpc/status" 32 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 33 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 34 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 35 wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" 36) 37 38const ( 39 // Verify that this generated code is sufficiently up-to-date. 40 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 41 // Verify that runtime/protoimpl is sufficiently up-to-date. 42 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 43) 44 45// Request message for [KeyManagementService.ListKeyRings][google.cloud.kms.v1.KeyManagementService.ListKeyRings]. 46type ListKeyRingsRequest struct { 47 state protoimpl.MessageState 48 sizeCache protoimpl.SizeCache 49 unknownFields protoimpl.UnknownFields 50 51 // Required. The resource name of the location associated with the 52 // [KeyRings][google.cloud.kms.v1.KeyRing], in the format `projects/*/locations/*`. 53 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 54 // Optional. Optional limit on the number of [KeyRings][google.cloud.kms.v1.KeyRing] to include in the 55 // response. Further [KeyRings][google.cloud.kms.v1.KeyRing] can subsequently be obtained by 56 // including the [ListKeyRingsResponse.next_page_token][google.cloud.kms.v1.ListKeyRingsResponse.next_page_token] in a subsequent 57 // request. If unspecified, the server will pick an appropriate default. 58 PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 59 // Optional. Optional pagination token, returned earlier via 60 // [ListKeyRingsResponse.next_page_token][google.cloud.kms.v1.ListKeyRingsResponse.next_page_token]. 61 PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 62 // Optional. Only include resources that match the filter in the response. For 63 // more information, see 64 // [Sorting and filtering list 65 // results](https://cloud.google.com/kms/docs/sorting-and-filtering). 66 Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"` 67 // Optional. Specify how the results should be sorted. If not specified, the 68 // results will be sorted in the default order. For more information, see 69 // [Sorting and filtering list 70 // results](https://cloud.google.com/kms/docs/sorting-and-filtering). 71 OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 72} 73 74func (x *ListKeyRingsRequest) Reset() { 75 *x = ListKeyRingsRequest{} 76 if protoimpl.UnsafeEnabled { 77 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[0] 78 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 79 ms.StoreMessageInfo(mi) 80 } 81} 82 83func (x *ListKeyRingsRequest) String() string { 84 return protoimpl.X.MessageStringOf(x) 85} 86 87func (*ListKeyRingsRequest) ProtoMessage() {} 88 89func (x *ListKeyRingsRequest) ProtoReflect() protoreflect.Message { 90 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[0] 91 if protoimpl.UnsafeEnabled && x != nil { 92 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 93 if ms.LoadMessageInfo() == nil { 94 ms.StoreMessageInfo(mi) 95 } 96 return ms 97 } 98 return mi.MessageOf(x) 99} 100 101// Deprecated: Use ListKeyRingsRequest.ProtoReflect.Descriptor instead. 102func (*ListKeyRingsRequest) Descriptor() ([]byte, []int) { 103 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{0} 104} 105 106func (x *ListKeyRingsRequest) GetParent() string { 107 if x != nil { 108 return x.Parent 109 } 110 return "" 111} 112 113func (x *ListKeyRingsRequest) GetPageSize() int32 { 114 if x != nil { 115 return x.PageSize 116 } 117 return 0 118} 119 120func (x *ListKeyRingsRequest) GetPageToken() string { 121 if x != nil { 122 return x.PageToken 123 } 124 return "" 125} 126 127func (x *ListKeyRingsRequest) GetFilter() string { 128 if x != nil { 129 return x.Filter 130 } 131 return "" 132} 133 134func (x *ListKeyRingsRequest) GetOrderBy() string { 135 if x != nil { 136 return x.OrderBy 137 } 138 return "" 139} 140 141// Request message for [KeyManagementService.ListCryptoKeys][google.cloud.kms.v1.KeyManagementService.ListCryptoKeys]. 142type ListCryptoKeysRequest struct { 143 state protoimpl.MessageState 144 sizeCache protoimpl.SizeCache 145 unknownFields protoimpl.UnknownFields 146 147 // Required. The resource name of the [KeyRing][google.cloud.kms.v1.KeyRing] to list, in the format 148 // `projects/*/locations/*/keyRings/*`. 149 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 150 // Optional. Optional limit on the number of [CryptoKeys][google.cloud.kms.v1.CryptoKey] to include in the 151 // response. Further [CryptoKeys][google.cloud.kms.v1.CryptoKey] can subsequently be obtained by 152 // including the [ListCryptoKeysResponse.next_page_token][google.cloud.kms.v1.ListCryptoKeysResponse.next_page_token] in a subsequent 153 // request. If unspecified, the server will pick an appropriate default. 154 PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 155 // Optional. Optional pagination token, returned earlier via 156 // [ListCryptoKeysResponse.next_page_token][google.cloud.kms.v1.ListCryptoKeysResponse.next_page_token]. 157 PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 158 // The fields of the primary version to include in the response. 159 VersionView CryptoKeyVersion_CryptoKeyVersionView `protobuf:"varint,4,opt,name=version_view,json=versionView,proto3,enum=google.cloud.kms.v1.CryptoKeyVersion_CryptoKeyVersionView" json:"version_view,omitempty"` 160 // Optional. Only include resources that match the filter in the response. For 161 // more information, see 162 // [Sorting and filtering list 163 // results](https://cloud.google.com/kms/docs/sorting-and-filtering). 164 Filter string `protobuf:"bytes,5,opt,name=filter,proto3" json:"filter,omitempty"` 165 // Optional. Specify how the results should be sorted. If not specified, the 166 // results will be sorted in the default order. For more information, see 167 // [Sorting and filtering list 168 // results](https://cloud.google.com/kms/docs/sorting-and-filtering). 169 OrderBy string `protobuf:"bytes,6,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 170} 171 172func (x *ListCryptoKeysRequest) Reset() { 173 *x = ListCryptoKeysRequest{} 174 if protoimpl.UnsafeEnabled { 175 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[1] 176 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 177 ms.StoreMessageInfo(mi) 178 } 179} 180 181func (x *ListCryptoKeysRequest) String() string { 182 return protoimpl.X.MessageStringOf(x) 183} 184 185func (*ListCryptoKeysRequest) ProtoMessage() {} 186 187func (x *ListCryptoKeysRequest) ProtoReflect() protoreflect.Message { 188 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[1] 189 if protoimpl.UnsafeEnabled && x != nil { 190 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 191 if ms.LoadMessageInfo() == nil { 192 ms.StoreMessageInfo(mi) 193 } 194 return ms 195 } 196 return mi.MessageOf(x) 197} 198 199// Deprecated: Use ListCryptoKeysRequest.ProtoReflect.Descriptor instead. 200func (*ListCryptoKeysRequest) Descriptor() ([]byte, []int) { 201 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{1} 202} 203 204func (x *ListCryptoKeysRequest) GetParent() string { 205 if x != nil { 206 return x.Parent 207 } 208 return "" 209} 210 211func (x *ListCryptoKeysRequest) GetPageSize() int32 { 212 if x != nil { 213 return x.PageSize 214 } 215 return 0 216} 217 218func (x *ListCryptoKeysRequest) GetPageToken() string { 219 if x != nil { 220 return x.PageToken 221 } 222 return "" 223} 224 225func (x *ListCryptoKeysRequest) GetVersionView() CryptoKeyVersion_CryptoKeyVersionView { 226 if x != nil { 227 return x.VersionView 228 } 229 return CryptoKeyVersion_CRYPTO_KEY_VERSION_VIEW_UNSPECIFIED 230} 231 232func (x *ListCryptoKeysRequest) GetFilter() string { 233 if x != nil { 234 return x.Filter 235 } 236 return "" 237} 238 239func (x *ListCryptoKeysRequest) GetOrderBy() string { 240 if x != nil { 241 return x.OrderBy 242 } 243 return "" 244} 245 246// Request message for [KeyManagementService.ListCryptoKeyVersions][google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions]. 247type ListCryptoKeyVersionsRequest struct { 248 state protoimpl.MessageState 249 sizeCache protoimpl.SizeCache 250 unknownFields protoimpl.UnknownFields 251 252 // Required. The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to list, in the format 253 // `projects/*/locations/*/keyRings/*/cryptoKeys/*`. 254 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 255 // Optional. Optional limit on the number of [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion] to 256 // include in the response. Further [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion] can 257 // subsequently be obtained by including the 258 // [ListCryptoKeyVersionsResponse.next_page_token][google.cloud.kms.v1.ListCryptoKeyVersionsResponse.next_page_token] in a subsequent request. 259 // If unspecified, the server will pick an appropriate default. 260 PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 261 // Optional. Optional pagination token, returned earlier via 262 // [ListCryptoKeyVersionsResponse.next_page_token][google.cloud.kms.v1.ListCryptoKeyVersionsResponse.next_page_token]. 263 PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 264 // The fields to include in the response. 265 View CryptoKeyVersion_CryptoKeyVersionView `protobuf:"varint,4,opt,name=view,proto3,enum=google.cloud.kms.v1.CryptoKeyVersion_CryptoKeyVersionView" json:"view,omitempty"` 266 // Optional. Only include resources that match the filter in the response. For 267 // more information, see 268 // [Sorting and filtering list 269 // results](https://cloud.google.com/kms/docs/sorting-and-filtering). 270 Filter string `protobuf:"bytes,5,opt,name=filter,proto3" json:"filter,omitempty"` 271 // Optional. Specify how the results should be sorted. If not specified, the 272 // results will be sorted in the default order. For more information, see 273 // [Sorting and filtering list 274 // results](https://cloud.google.com/kms/docs/sorting-and-filtering). 275 OrderBy string `protobuf:"bytes,6,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 276} 277 278func (x *ListCryptoKeyVersionsRequest) Reset() { 279 *x = ListCryptoKeyVersionsRequest{} 280 if protoimpl.UnsafeEnabled { 281 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[2] 282 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 283 ms.StoreMessageInfo(mi) 284 } 285} 286 287func (x *ListCryptoKeyVersionsRequest) String() string { 288 return protoimpl.X.MessageStringOf(x) 289} 290 291func (*ListCryptoKeyVersionsRequest) ProtoMessage() {} 292 293func (x *ListCryptoKeyVersionsRequest) ProtoReflect() protoreflect.Message { 294 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[2] 295 if protoimpl.UnsafeEnabled && x != nil { 296 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 297 if ms.LoadMessageInfo() == nil { 298 ms.StoreMessageInfo(mi) 299 } 300 return ms 301 } 302 return mi.MessageOf(x) 303} 304 305// Deprecated: Use ListCryptoKeyVersionsRequest.ProtoReflect.Descriptor instead. 306func (*ListCryptoKeyVersionsRequest) Descriptor() ([]byte, []int) { 307 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{2} 308} 309 310func (x *ListCryptoKeyVersionsRequest) GetParent() string { 311 if x != nil { 312 return x.Parent 313 } 314 return "" 315} 316 317func (x *ListCryptoKeyVersionsRequest) GetPageSize() int32 { 318 if x != nil { 319 return x.PageSize 320 } 321 return 0 322} 323 324func (x *ListCryptoKeyVersionsRequest) GetPageToken() string { 325 if x != nil { 326 return x.PageToken 327 } 328 return "" 329} 330 331func (x *ListCryptoKeyVersionsRequest) GetView() CryptoKeyVersion_CryptoKeyVersionView { 332 if x != nil { 333 return x.View 334 } 335 return CryptoKeyVersion_CRYPTO_KEY_VERSION_VIEW_UNSPECIFIED 336} 337 338func (x *ListCryptoKeyVersionsRequest) GetFilter() string { 339 if x != nil { 340 return x.Filter 341 } 342 return "" 343} 344 345func (x *ListCryptoKeyVersionsRequest) GetOrderBy() string { 346 if x != nil { 347 return x.OrderBy 348 } 349 return "" 350} 351 352// Request message for [KeyManagementService.ListImportJobs][google.cloud.kms.v1.KeyManagementService.ListImportJobs]. 353type ListImportJobsRequest struct { 354 state protoimpl.MessageState 355 sizeCache protoimpl.SizeCache 356 unknownFields protoimpl.UnknownFields 357 358 // Required. The resource name of the [KeyRing][google.cloud.kms.v1.KeyRing] to list, in the format 359 // `projects/*/locations/*/keyRings/*`. 360 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 361 // Optional. Optional limit on the number of [ImportJobs][google.cloud.kms.v1.ImportJob] to include in the 362 // response. Further [ImportJobs][google.cloud.kms.v1.ImportJob] can subsequently be obtained by 363 // including the [ListImportJobsResponse.next_page_token][google.cloud.kms.v1.ListImportJobsResponse.next_page_token] in a subsequent 364 // request. If unspecified, the server will pick an appropriate default. 365 PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 366 // Optional. Optional pagination token, returned earlier via 367 // [ListImportJobsResponse.next_page_token][google.cloud.kms.v1.ListImportJobsResponse.next_page_token]. 368 PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 369 // Optional. Only include resources that match the filter in the response. For 370 // more information, see 371 // [Sorting and filtering list 372 // results](https://cloud.google.com/kms/docs/sorting-and-filtering). 373 Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"` 374 // Optional. Specify how the results should be sorted. If not specified, the 375 // results will be sorted in the default order. For more information, see 376 // [Sorting and filtering list 377 // results](https://cloud.google.com/kms/docs/sorting-and-filtering). 378 OrderBy string `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"` 379} 380 381func (x *ListImportJobsRequest) Reset() { 382 *x = ListImportJobsRequest{} 383 if protoimpl.UnsafeEnabled { 384 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[3] 385 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 386 ms.StoreMessageInfo(mi) 387 } 388} 389 390func (x *ListImportJobsRequest) String() string { 391 return protoimpl.X.MessageStringOf(x) 392} 393 394func (*ListImportJobsRequest) ProtoMessage() {} 395 396func (x *ListImportJobsRequest) ProtoReflect() protoreflect.Message { 397 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[3] 398 if protoimpl.UnsafeEnabled && x != nil { 399 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 400 if ms.LoadMessageInfo() == nil { 401 ms.StoreMessageInfo(mi) 402 } 403 return ms 404 } 405 return mi.MessageOf(x) 406} 407 408// Deprecated: Use ListImportJobsRequest.ProtoReflect.Descriptor instead. 409func (*ListImportJobsRequest) Descriptor() ([]byte, []int) { 410 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{3} 411} 412 413func (x *ListImportJobsRequest) GetParent() string { 414 if x != nil { 415 return x.Parent 416 } 417 return "" 418} 419 420func (x *ListImportJobsRequest) GetPageSize() int32 { 421 if x != nil { 422 return x.PageSize 423 } 424 return 0 425} 426 427func (x *ListImportJobsRequest) GetPageToken() string { 428 if x != nil { 429 return x.PageToken 430 } 431 return "" 432} 433 434func (x *ListImportJobsRequest) GetFilter() string { 435 if x != nil { 436 return x.Filter 437 } 438 return "" 439} 440 441func (x *ListImportJobsRequest) GetOrderBy() string { 442 if x != nil { 443 return x.OrderBy 444 } 445 return "" 446} 447 448// Response message for [KeyManagementService.ListKeyRings][google.cloud.kms.v1.KeyManagementService.ListKeyRings]. 449type ListKeyRingsResponse struct { 450 state protoimpl.MessageState 451 sizeCache protoimpl.SizeCache 452 unknownFields protoimpl.UnknownFields 453 454 // The list of [KeyRings][google.cloud.kms.v1.KeyRing]. 455 KeyRings []*KeyRing `protobuf:"bytes,1,rep,name=key_rings,json=keyRings,proto3" json:"key_rings,omitempty"` 456 // A token to retrieve next page of results. Pass this value in 457 // [ListKeyRingsRequest.page_token][google.cloud.kms.v1.ListKeyRingsRequest.page_token] to retrieve the next page of results. 458 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 459 // The total number of [KeyRings][google.cloud.kms.v1.KeyRing] that matched the query. 460 TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 461} 462 463func (x *ListKeyRingsResponse) Reset() { 464 *x = ListKeyRingsResponse{} 465 if protoimpl.UnsafeEnabled { 466 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[4] 467 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 468 ms.StoreMessageInfo(mi) 469 } 470} 471 472func (x *ListKeyRingsResponse) String() string { 473 return protoimpl.X.MessageStringOf(x) 474} 475 476func (*ListKeyRingsResponse) ProtoMessage() {} 477 478func (x *ListKeyRingsResponse) ProtoReflect() protoreflect.Message { 479 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[4] 480 if protoimpl.UnsafeEnabled && x != nil { 481 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 482 if ms.LoadMessageInfo() == nil { 483 ms.StoreMessageInfo(mi) 484 } 485 return ms 486 } 487 return mi.MessageOf(x) 488} 489 490// Deprecated: Use ListKeyRingsResponse.ProtoReflect.Descriptor instead. 491func (*ListKeyRingsResponse) Descriptor() ([]byte, []int) { 492 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{4} 493} 494 495func (x *ListKeyRingsResponse) GetKeyRings() []*KeyRing { 496 if x != nil { 497 return x.KeyRings 498 } 499 return nil 500} 501 502func (x *ListKeyRingsResponse) GetNextPageToken() string { 503 if x != nil { 504 return x.NextPageToken 505 } 506 return "" 507} 508 509func (x *ListKeyRingsResponse) GetTotalSize() int32 { 510 if x != nil { 511 return x.TotalSize 512 } 513 return 0 514} 515 516// Response message for [KeyManagementService.ListCryptoKeys][google.cloud.kms.v1.KeyManagementService.ListCryptoKeys]. 517type ListCryptoKeysResponse struct { 518 state protoimpl.MessageState 519 sizeCache protoimpl.SizeCache 520 unknownFields protoimpl.UnknownFields 521 522 // The list of [CryptoKeys][google.cloud.kms.v1.CryptoKey]. 523 CryptoKeys []*CryptoKey `protobuf:"bytes,1,rep,name=crypto_keys,json=cryptoKeys,proto3" json:"crypto_keys,omitempty"` 524 // A token to retrieve next page of results. Pass this value in 525 // [ListCryptoKeysRequest.page_token][google.cloud.kms.v1.ListCryptoKeysRequest.page_token] to retrieve the next page of results. 526 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 527 // The total number of [CryptoKeys][google.cloud.kms.v1.CryptoKey] that matched the query. 528 TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 529} 530 531func (x *ListCryptoKeysResponse) Reset() { 532 *x = ListCryptoKeysResponse{} 533 if protoimpl.UnsafeEnabled { 534 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[5] 535 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 536 ms.StoreMessageInfo(mi) 537 } 538} 539 540func (x *ListCryptoKeysResponse) String() string { 541 return protoimpl.X.MessageStringOf(x) 542} 543 544func (*ListCryptoKeysResponse) ProtoMessage() {} 545 546func (x *ListCryptoKeysResponse) ProtoReflect() protoreflect.Message { 547 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[5] 548 if protoimpl.UnsafeEnabled && x != nil { 549 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 550 if ms.LoadMessageInfo() == nil { 551 ms.StoreMessageInfo(mi) 552 } 553 return ms 554 } 555 return mi.MessageOf(x) 556} 557 558// Deprecated: Use ListCryptoKeysResponse.ProtoReflect.Descriptor instead. 559func (*ListCryptoKeysResponse) Descriptor() ([]byte, []int) { 560 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{5} 561} 562 563func (x *ListCryptoKeysResponse) GetCryptoKeys() []*CryptoKey { 564 if x != nil { 565 return x.CryptoKeys 566 } 567 return nil 568} 569 570func (x *ListCryptoKeysResponse) GetNextPageToken() string { 571 if x != nil { 572 return x.NextPageToken 573 } 574 return "" 575} 576 577func (x *ListCryptoKeysResponse) GetTotalSize() int32 { 578 if x != nil { 579 return x.TotalSize 580 } 581 return 0 582} 583 584// Response message for [KeyManagementService.ListCryptoKeyVersions][google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions]. 585type ListCryptoKeyVersionsResponse struct { 586 state protoimpl.MessageState 587 sizeCache protoimpl.SizeCache 588 unknownFields protoimpl.UnknownFields 589 590 // The list of [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion]. 591 CryptoKeyVersions []*CryptoKeyVersion `protobuf:"bytes,1,rep,name=crypto_key_versions,json=cryptoKeyVersions,proto3" json:"crypto_key_versions,omitempty"` 592 // A token to retrieve next page of results. Pass this value in 593 // [ListCryptoKeyVersionsRequest.page_token][google.cloud.kms.v1.ListCryptoKeyVersionsRequest.page_token] to retrieve the next page of 594 // results. 595 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 596 // The total number of [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion] that matched the 597 // query. 598 TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 599} 600 601func (x *ListCryptoKeyVersionsResponse) Reset() { 602 *x = ListCryptoKeyVersionsResponse{} 603 if protoimpl.UnsafeEnabled { 604 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[6] 605 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 606 ms.StoreMessageInfo(mi) 607 } 608} 609 610func (x *ListCryptoKeyVersionsResponse) String() string { 611 return protoimpl.X.MessageStringOf(x) 612} 613 614func (*ListCryptoKeyVersionsResponse) ProtoMessage() {} 615 616func (x *ListCryptoKeyVersionsResponse) ProtoReflect() protoreflect.Message { 617 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[6] 618 if protoimpl.UnsafeEnabled && x != nil { 619 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 620 if ms.LoadMessageInfo() == nil { 621 ms.StoreMessageInfo(mi) 622 } 623 return ms 624 } 625 return mi.MessageOf(x) 626} 627 628// Deprecated: Use ListCryptoKeyVersionsResponse.ProtoReflect.Descriptor instead. 629func (*ListCryptoKeyVersionsResponse) Descriptor() ([]byte, []int) { 630 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{6} 631} 632 633func (x *ListCryptoKeyVersionsResponse) GetCryptoKeyVersions() []*CryptoKeyVersion { 634 if x != nil { 635 return x.CryptoKeyVersions 636 } 637 return nil 638} 639 640func (x *ListCryptoKeyVersionsResponse) GetNextPageToken() string { 641 if x != nil { 642 return x.NextPageToken 643 } 644 return "" 645} 646 647func (x *ListCryptoKeyVersionsResponse) GetTotalSize() int32 { 648 if x != nil { 649 return x.TotalSize 650 } 651 return 0 652} 653 654// Response message for [KeyManagementService.ListImportJobs][google.cloud.kms.v1.KeyManagementService.ListImportJobs]. 655type ListImportJobsResponse struct { 656 state protoimpl.MessageState 657 sizeCache protoimpl.SizeCache 658 unknownFields protoimpl.UnknownFields 659 660 // The list of [ImportJobs][google.cloud.kms.v1.ImportJob]. 661 ImportJobs []*ImportJob `protobuf:"bytes,1,rep,name=import_jobs,json=importJobs,proto3" json:"import_jobs,omitempty"` 662 // A token to retrieve next page of results. Pass this value in 663 // [ListImportJobsRequest.page_token][google.cloud.kms.v1.ListImportJobsRequest.page_token] to retrieve the next page of results. 664 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 665 // The total number of [ImportJobs][google.cloud.kms.v1.ImportJob] that matched the query. 666 TotalSize int32 `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` 667} 668 669func (x *ListImportJobsResponse) Reset() { 670 *x = ListImportJobsResponse{} 671 if protoimpl.UnsafeEnabled { 672 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[7] 673 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 674 ms.StoreMessageInfo(mi) 675 } 676} 677 678func (x *ListImportJobsResponse) String() string { 679 return protoimpl.X.MessageStringOf(x) 680} 681 682func (*ListImportJobsResponse) ProtoMessage() {} 683 684func (x *ListImportJobsResponse) ProtoReflect() protoreflect.Message { 685 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[7] 686 if protoimpl.UnsafeEnabled && x != nil { 687 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 688 if ms.LoadMessageInfo() == nil { 689 ms.StoreMessageInfo(mi) 690 } 691 return ms 692 } 693 return mi.MessageOf(x) 694} 695 696// Deprecated: Use ListImportJobsResponse.ProtoReflect.Descriptor instead. 697func (*ListImportJobsResponse) Descriptor() ([]byte, []int) { 698 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{7} 699} 700 701func (x *ListImportJobsResponse) GetImportJobs() []*ImportJob { 702 if x != nil { 703 return x.ImportJobs 704 } 705 return nil 706} 707 708func (x *ListImportJobsResponse) GetNextPageToken() string { 709 if x != nil { 710 return x.NextPageToken 711 } 712 return "" 713} 714 715func (x *ListImportJobsResponse) GetTotalSize() int32 { 716 if x != nil { 717 return x.TotalSize 718 } 719 return 0 720} 721 722// Request message for [KeyManagementService.GetKeyRing][google.cloud.kms.v1.KeyManagementService.GetKeyRing]. 723type GetKeyRingRequest struct { 724 state protoimpl.MessageState 725 sizeCache protoimpl.SizeCache 726 unknownFields protoimpl.UnknownFields 727 728 // Required. The [name][google.cloud.kms.v1.KeyRing.name] of the [KeyRing][google.cloud.kms.v1.KeyRing] to get. 729 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 730} 731 732func (x *GetKeyRingRequest) Reset() { 733 *x = GetKeyRingRequest{} 734 if protoimpl.UnsafeEnabled { 735 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[8] 736 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 737 ms.StoreMessageInfo(mi) 738 } 739} 740 741func (x *GetKeyRingRequest) String() string { 742 return protoimpl.X.MessageStringOf(x) 743} 744 745func (*GetKeyRingRequest) ProtoMessage() {} 746 747func (x *GetKeyRingRequest) ProtoReflect() protoreflect.Message { 748 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[8] 749 if protoimpl.UnsafeEnabled && x != nil { 750 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 751 if ms.LoadMessageInfo() == nil { 752 ms.StoreMessageInfo(mi) 753 } 754 return ms 755 } 756 return mi.MessageOf(x) 757} 758 759// Deprecated: Use GetKeyRingRequest.ProtoReflect.Descriptor instead. 760func (*GetKeyRingRequest) Descriptor() ([]byte, []int) { 761 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{8} 762} 763 764func (x *GetKeyRingRequest) GetName() string { 765 if x != nil { 766 return x.Name 767 } 768 return "" 769} 770 771// Request message for [KeyManagementService.GetCryptoKey][google.cloud.kms.v1.KeyManagementService.GetCryptoKey]. 772type GetCryptoKeyRequest struct { 773 state protoimpl.MessageState 774 sizeCache protoimpl.SizeCache 775 unknownFields protoimpl.UnknownFields 776 777 // Required. The [name][google.cloud.kms.v1.CryptoKey.name] of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to get. 778 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 779} 780 781func (x *GetCryptoKeyRequest) Reset() { 782 *x = GetCryptoKeyRequest{} 783 if protoimpl.UnsafeEnabled { 784 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[9] 785 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 786 ms.StoreMessageInfo(mi) 787 } 788} 789 790func (x *GetCryptoKeyRequest) String() string { 791 return protoimpl.X.MessageStringOf(x) 792} 793 794func (*GetCryptoKeyRequest) ProtoMessage() {} 795 796func (x *GetCryptoKeyRequest) ProtoReflect() protoreflect.Message { 797 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[9] 798 if protoimpl.UnsafeEnabled && x != nil { 799 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 800 if ms.LoadMessageInfo() == nil { 801 ms.StoreMessageInfo(mi) 802 } 803 return ms 804 } 805 return mi.MessageOf(x) 806} 807 808// Deprecated: Use GetCryptoKeyRequest.ProtoReflect.Descriptor instead. 809func (*GetCryptoKeyRequest) Descriptor() ([]byte, []int) { 810 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{9} 811} 812 813func (x *GetCryptoKeyRequest) GetName() string { 814 if x != nil { 815 return x.Name 816 } 817 return "" 818} 819 820// Request message for [KeyManagementService.GetCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.GetCryptoKeyVersion]. 821type GetCryptoKeyVersionRequest struct { 822 state protoimpl.MessageState 823 sizeCache protoimpl.SizeCache 824 unknownFields protoimpl.UnknownFields 825 826 // Required. The [name][google.cloud.kms.v1.CryptoKeyVersion.name] of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to get. 827 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 828} 829 830func (x *GetCryptoKeyVersionRequest) Reset() { 831 *x = GetCryptoKeyVersionRequest{} 832 if protoimpl.UnsafeEnabled { 833 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[10] 834 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 835 ms.StoreMessageInfo(mi) 836 } 837} 838 839func (x *GetCryptoKeyVersionRequest) String() string { 840 return protoimpl.X.MessageStringOf(x) 841} 842 843func (*GetCryptoKeyVersionRequest) ProtoMessage() {} 844 845func (x *GetCryptoKeyVersionRequest) ProtoReflect() protoreflect.Message { 846 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[10] 847 if protoimpl.UnsafeEnabled && x != nil { 848 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 849 if ms.LoadMessageInfo() == nil { 850 ms.StoreMessageInfo(mi) 851 } 852 return ms 853 } 854 return mi.MessageOf(x) 855} 856 857// Deprecated: Use GetCryptoKeyVersionRequest.ProtoReflect.Descriptor instead. 858func (*GetCryptoKeyVersionRequest) Descriptor() ([]byte, []int) { 859 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{10} 860} 861 862func (x *GetCryptoKeyVersionRequest) GetName() string { 863 if x != nil { 864 return x.Name 865 } 866 return "" 867} 868 869// Request message for [KeyManagementService.GetPublicKey][google.cloud.kms.v1.KeyManagementService.GetPublicKey]. 870type GetPublicKeyRequest struct { 871 state protoimpl.MessageState 872 sizeCache protoimpl.SizeCache 873 unknownFields protoimpl.UnknownFields 874 875 // Required. The [name][google.cloud.kms.v1.CryptoKeyVersion.name] of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] public key to 876 // get. 877 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 878} 879 880func (x *GetPublicKeyRequest) Reset() { 881 *x = GetPublicKeyRequest{} 882 if protoimpl.UnsafeEnabled { 883 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[11] 884 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 885 ms.StoreMessageInfo(mi) 886 } 887} 888 889func (x *GetPublicKeyRequest) String() string { 890 return protoimpl.X.MessageStringOf(x) 891} 892 893func (*GetPublicKeyRequest) ProtoMessage() {} 894 895func (x *GetPublicKeyRequest) ProtoReflect() protoreflect.Message { 896 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[11] 897 if protoimpl.UnsafeEnabled && x != nil { 898 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 899 if ms.LoadMessageInfo() == nil { 900 ms.StoreMessageInfo(mi) 901 } 902 return ms 903 } 904 return mi.MessageOf(x) 905} 906 907// Deprecated: Use GetPublicKeyRequest.ProtoReflect.Descriptor instead. 908func (*GetPublicKeyRequest) Descriptor() ([]byte, []int) { 909 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{11} 910} 911 912func (x *GetPublicKeyRequest) GetName() string { 913 if x != nil { 914 return x.Name 915 } 916 return "" 917} 918 919// Request message for [KeyManagementService.GetImportJob][google.cloud.kms.v1.KeyManagementService.GetImportJob]. 920type GetImportJobRequest struct { 921 state protoimpl.MessageState 922 sizeCache protoimpl.SizeCache 923 unknownFields protoimpl.UnknownFields 924 925 // Required. The [name][google.cloud.kms.v1.ImportJob.name] of the [ImportJob][google.cloud.kms.v1.ImportJob] to get. 926 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 927} 928 929func (x *GetImportJobRequest) Reset() { 930 *x = GetImportJobRequest{} 931 if protoimpl.UnsafeEnabled { 932 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[12] 933 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 934 ms.StoreMessageInfo(mi) 935 } 936} 937 938func (x *GetImportJobRequest) String() string { 939 return protoimpl.X.MessageStringOf(x) 940} 941 942func (*GetImportJobRequest) ProtoMessage() {} 943 944func (x *GetImportJobRequest) ProtoReflect() protoreflect.Message { 945 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[12] 946 if protoimpl.UnsafeEnabled && x != nil { 947 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 948 if ms.LoadMessageInfo() == nil { 949 ms.StoreMessageInfo(mi) 950 } 951 return ms 952 } 953 return mi.MessageOf(x) 954} 955 956// Deprecated: Use GetImportJobRequest.ProtoReflect.Descriptor instead. 957func (*GetImportJobRequest) Descriptor() ([]byte, []int) { 958 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{12} 959} 960 961func (x *GetImportJobRequest) GetName() string { 962 if x != nil { 963 return x.Name 964 } 965 return "" 966} 967 968// Request message for [KeyManagementService.CreateKeyRing][google.cloud.kms.v1.KeyManagementService.CreateKeyRing]. 969type CreateKeyRingRequest struct { 970 state protoimpl.MessageState 971 sizeCache protoimpl.SizeCache 972 unknownFields protoimpl.UnknownFields 973 974 // Required. The resource name of the location associated with the 975 // [KeyRings][google.cloud.kms.v1.KeyRing], in the format `projects/*/locations/*`. 976 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 977 // Required. It must be unique within a location and match the regular 978 // expression `[a-zA-Z0-9_-]{1,63}` 979 KeyRingId string `protobuf:"bytes,2,opt,name=key_ring_id,json=keyRingId,proto3" json:"key_ring_id,omitempty"` 980 // Required. A [KeyRing][google.cloud.kms.v1.KeyRing] with initial field values. 981 KeyRing *KeyRing `protobuf:"bytes,3,opt,name=key_ring,json=keyRing,proto3" json:"key_ring,omitempty"` 982} 983 984func (x *CreateKeyRingRequest) Reset() { 985 *x = CreateKeyRingRequest{} 986 if protoimpl.UnsafeEnabled { 987 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[13] 988 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 989 ms.StoreMessageInfo(mi) 990 } 991} 992 993func (x *CreateKeyRingRequest) String() string { 994 return protoimpl.X.MessageStringOf(x) 995} 996 997func (*CreateKeyRingRequest) ProtoMessage() {} 998 999func (x *CreateKeyRingRequest) ProtoReflect() protoreflect.Message { 1000 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[13] 1001 if protoimpl.UnsafeEnabled && x != nil { 1002 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1003 if ms.LoadMessageInfo() == nil { 1004 ms.StoreMessageInfo(mi) 1005 } 1006 return ms 1007 } 1008 return mi.MessageOf(x) 1009} 1010 1011// Deprecated: Use CreateKeyRingRequest.ProtoReflect.Descriptor instead. 1012func (*CreateKeyRingRequest) Descriptor() ([]byte, []int) { 1013 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{13} 1014} 1015 1016func (x *CreateKeyRingRequest) GetParent() string { 1017 if x != nil { 1018 return x.Parent 1019 } 1020 return "" 1021} 1022 1023func (x *CreateKeyRingRequest) GetKeyRingId() string { 1024 if x != nil { 1025 return x.KeyRingId 1026 } 1027 return "" 1028} 1029 1030func (x *CreateKeyRingRequest) GetKeyRing() *KeyRing { 1031 if x != nil { 1032 return x.KeyRing 1033 } 1034 return nil 1035} 1036 1037// Request message for [KeyManagementService.CreateCryptoKey][google.cloud.kms.v1.KeyManagementService.CreateCryptoKey]. 1038type CreateCryptoKeyRequest struct { 1039 state protoimpl.MessageState 1040 sizeCache protoimpl.SizeCache 1041 unknownFields protoimpl.UnknownFields 1042 1043 // Required. The [name][google.cloud.kms.v1.KeyRing.name] of the KeyRing associated with the 1044 // [CryptoKeys][google.cloud.kms.v1.CryptoKey]. 1045 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1046 // Required. It must be unique within a KeyRing and match the regular 1047 // expression `[a-zA-Z0-9_-]{1,63}` 1048 CryptoKeyId string `protobuf:"bytes,2,opt,name=crypto_key_id,json=cryptoKeyId,proto3" json:"crypto_key_id,omitempty"` 1049 // Required. A [CryptoKey][google.cloud.kms.v1.CryptoKey] with initial field values. 1050 CryptoKey *CryptoKey `protobuf:"bytes,3,opt,name=crypto_key,json=cryptoKey,proto3" json:"crypto_key,omitempty"` 1051 // If set to true, the request will create a [CryptoKey][google.cloud.kms.v1.CryptoKey] without any 1052 // [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion]. You must manually call 1053 // [CreateCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.CreateCryptoKeyVersion] or 1054 // [ImportCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.ImportCryptoKeyVersion] 1055 // before you can use this [CryptoKey][google.cloud.kms.v1.CryptoKey]. 1056 SkipInitialVersionCreation bool `protobuf:"varint,5,opt,name=skip_initial_version_creation,json=skipInitialVersionCreation,proto3" json:"skip_initial_version_creation,omitempty"` 1057} 1058 1059func (x *CreateCryptoKeyRequest) Reset() { 1060 *x = CreateCryptoKeyRequest{} 1061 if protoimpl.UnsafeEnabled { 1062 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[14] 1063 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1064 ms.StoreMessageInfo(mi) 1065 } 1066} 1067 1068func (x *CreateCryptoKeyRequest) String() string { 1069 return protoimpl.X.MessageStringOf(x) 1070} 1071 1072func (*CreateCryptoKeyRequest) ProtoMessage() {} 1073 1074func (x *CreateCryptoKeyRequest) ProtoReflect() protoreflect.Message { 1075 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[14] 1076 if protoimpl.UnsafeEnabled && x != nil { 1077 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1078 if ms.LoadMessageInfo() == nil { 1079 ms.StoreMessageInfo(mi) 1080 } 1081 return ms 1082 } 1083 return mi.MessageOf(x) 1084} 1085 1086// Deprecated: Use CreateCryptoKeyRequest.ProtoReflect.Descriptor instead. 1087func (*CreateCryptoKeyRequest) Descriptor() ([]byte, []int) { 1088 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{14} 1089} 1090 1091func (x *CreateCryptoKeyRequest) GetParent() string { 1092 if x != nil { 1093 return x.Parent 1094 } 1095 return "" 1096} 1097 1098func (x *CreateCryptoKeyRequest) GetCryptoKeyId() string { 1099 if x != nil { 1100 return x.CryptoKeyId 1101 } 1102 return "" 1103} 1104 1105func (x *CreateCryptoKeyRequest) GetCryptoKey() *CryptoKey { 1106 if x != nil { 1107 return x.CryptoKey 1108 } 1109 return nil 1110} 1111 1112func (x *CreateCryptoKeyRequest) GetSkipInitialVersionCreation() bool { 1113 if x != nil { 1114 return x.SkipInitialVersionCreation 1115 } 1116 return false 1117} 1118 1119// Request message for [KeyManagementService.CreateCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.CreateCryptoKeyVersion]. 1120type CreateCryptoKeyVersionRequest struct { 1121 state protoimpl.MessageState 1122 sizeCache protoimpl.SizeCache 1123 unknownFields protoimpl.UnknownFields 1124 1125 // Required. The [name][google.cloud.kms.v1.CryptoKey.name] of the [CryptoKey][google.cloud.kms.v1.CryptoKey] associated with 1126 // the [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion]. 1127 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1128 // Required. A [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] with initial field values. 1129 CryptoKeyVersion *CryptoKeyVersion `protobuf:"bytes,2,opt,name=crypto_key_version,json=cryptoKeyVersion,proto3" json:"crypto_key_version,omitempty"` 1130} 1131 1132func (x *CreateCryptoKeyVersionRequest) Reset() { 1133 *x = CreateCryptoKeyVersionRequest{} 1134 if protoimpl.UnsafeEnabled { 1135 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[15] 1136 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1137 ms.StoreMessageInfo(mi) 1138 } 1139} 1140 1141func (x *CreateCryptoKeyVersionRequest) String() string { 1142 return protoimpl.X.MessageStringOf(x) 1143} 1144 1145func (*CreateCryptoKeyVersionRequest) ProtoMessage() {} 1146 1147func (x *CreateCryptoKeyVersionRequest) ProtoReflect() protoreflect.Message { 1148 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[15] 1149 if protoimpl.UnsafeEnabled && x != nil { 1150 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1151 if ms.LoadMessageInfo() == nil { 1152 ms.StoreMessageInfo(mi) 1153 } 1154 return ms 1155 } 1156 return mi.MessageOf(x) 1157} 1158 1159// Deprecated: Use CreateCryptoKeyVersionRequest.ProtoReflect.Descriptor instead. 1160func (*CreateCryptoKeyVersionRequest) Descriptor() ([]byte, []int) { 1161 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{15} 1162} 1163 1164func (x *CreateCryptoKeyVersionRequest) GetParent() string { 1165 if x != nil { 1166 return x.Parent 1167 } 1168 return "" 1169} 1170 1171func (x *CreateCryptoKeyVersionRequest) GetCryptoKeyVersion() *CryptoKeyVersion { 1172 if x != nil { 1173 return x.CryptoKeyVersion 1174 } 1175 return nil 1176} 1177 1178// Request message for [KeyManagementService.ImportCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.ImportCryptoKeyVersion]. 1179type ImportCryptoKeyVersionRequest struct { 1180 state protoimpl.MessageState 1181 sizeCache protoimpl.SizeCache 1182 unknownFields protoimpl.UnknownFields 1183 1184 // Required. The [name][google.cloud.kms.v1.CryptoKey.name] of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to 1185 // be imported into. 1186 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1187 // Required. The [algorithm][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm] of 1188 // the key being imported. This does not need to match the 1189 // [version_template][google.cloud.kms.v1.CryptoKey.version_template] of the [CryptoKey][google.cloud.kms.v1.CryptoKey] this 1190 // version imports into. 1191 Algorithm CryptoKeyVersion_CryptoKeyVersionAlgorithm `protobuf:"varint,2,opt,name=algorithm,proto3,enum=google.cloud.kms.v1.CryptoKeyVersion_CryptoKeyVersionAlgorithm" json:"algorithm,omitempty"` 1192 // Required. The [name][google.cloud.kms.v1.ImportJob.name] of the [ImportJob][google.cloud.kms.v1.ImportJob] that was used to 1193 // wrap this key material. 1194 ImportJob string `protobuf:"bytes,4,opt,name=import_job,json=importJob,proto3" json:"import_job,omitempty"` 1195 // Required. The incoming wrapped key material that is to be imported. 1196 // 1197 // Types that are assignable to WrappedKeyMaterial: 1198 // *ImportCryptoKeyVersionRequest_RsaAesWrappedKey 1199 WrappedKeyMaterial isImportCryptoKeyVersionRequest_WrappedKeyMaterial `protobuf_oneof:"wrapped_key_material"` 1200} 1201 1202func (x *ImportCryptoKeyVersionRequest) Reset() { 1203 *x = ImportCryptoKeyVersionRequest{} 1204 if protoimpl.UnsafeEnabled { 1205 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[16] 1206 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1207 ms.StoreMessageInfo(mi) 1208 } 1209} 1210 1211func (x *ImportCryptoKeyVersionRequest) String() string { 1212 return protoimpl.X.MessageStringOf(x) 1213} 1214 1215func (*ImportCryptoKeyVersionRequest) ProtoMessage() {} 1216 1217func (x *ImportCryptoKeyVersionRequest) ProtoReflect() protoreflect.Message { 1218 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[16] 1219 if protoimpl.UnsafeEnabled && x != nil { 1220 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1221 if ms.LoadMessageInfo() == nil { 1222 ms.StoreMessageInfo(mi) 1223 } 1224 return ms 1225 } 1226 return mi.MessageOf(x) 1227} 1228 1229// Deprecated: Use ImportCryptoKeyVersionRequest.ProtoReflect.Descriptor instead. 1230func (*ImportCryptoKeyVersionRequest) Descriptor() ([]byte, []int) { 1231 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{16} 1232} 1233 1234func (x *ImportCryptoKeyVersionRequest) GetParent() string { 1235 if x != nil { 1236 return x.Parent 1237 } 1238 return "" 1239} 1240 1241func (x *ImportCryptoKeyVersionRequest) GetAlgorithm() CryptoKeyVersion_CryptoKeyVersionAlgorithm { 1242 if x != nil { 1243 return x.Algorithm 1244 } 1245 return CryptoKeyVersion_CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED 1246} 1247 1248func (x *ImportCryptoKeyVersionRequest) GetImportJob() string { 1249 if x != nil { 1250 return x.ImportJob 1251 } 1252 return "" 1253} 1254 1255func (m *ImportCryptoKeyVersionRequest) GetWrappedKeyMaterial() isImportCryptoKeyVersionRequest_WrappedKeyMaterial { 1256 if m != nil { 1257 return m.WrappedKeyMaterial 1258 } 1259 return nil 1260} 1261 1262func (x *ImportCryptoKeyVersionRequest) GetRsaAesWrappedKey() []byte { 1263 if x, ok := x.GetWrappedKeyMaterial().(*ImportCryptoKeyVersionRequest_RsaAesWrappedKey); ok { 1264 return x.RsaAesWrappedKey 1265 } 1266 return nil 1267} 1268 1269type isImportCryptoKeyVersionRequest_WrappedKeyMaterial interface { 1270 isImportCryptoKeyVersionRequest_WrappedKeyMaterial() 1271} 1272 1273type ImportCryptoKeyVersionRequest_RsaAesWrappedKey struct { 1274 // Wrapped key material produced with 1275 // [RSA_OAEP_3072_SHA1_AES_256][google.cloud.kms.v1.ImportJob.ImportMethod.RSA_OAEP_3072_SHA1_AES_256] 1276 // or 1277 // [RSA_OAEP_4096_SHA1_AES_256][google.cloud.kms.v1.ImportJob.ImportMethod.RSA_OAEP_4096_SHA1_AES_256]. 1278 // 1279 // This field contains the concatenation of two wrapped keys: 1280 // <ol> 1281 // <li>An ephemeral AES-256 wrapping key wrapped with the 1282 // [public_key][google.cloud.kms.v1.ImportJob.public_key] using RSAES-OAEP with SHA-1, 1283 // MGF1 with SHA-1, and an empty label. 1284 // </li> 1285 // <li>The key to be imported, wrapped with the ephemeral AES-256 key 1286 // using AES-KWP (RFC 5649). 1287 // </li> 1288 // </ol> 1289 // 1290 // If importing symmetric key material, it is expected that the unwrapped 1291 // key contains plain bytes. If importing asymmetric key material, it is 1292 // expected that the unwrapped key is in PKCS#8-encoded DER format (the 1293 // PrivateKeyInfo structure from RFC 5208). 1294 // 1295 // This format is the same as the format produced by PKCS#11 mechanism 1296 // CKM_RSA_AES_KEY_WRAP. 1297 RsaAesWrappedKey []byte `protobuf:"bytes,5,opt,name=rsa_aes_wrapped_key,json=rsaAesWrappedKey,proto3,oneof"` 1298} 1299 1300func (*ImportCryptoKeyVersionRequest_RsaAesWrappedKey) isImportCryptoKeyVersionRequest_WrappedKeyMaterial() { 1301} 1302 1303// Request message for [KeyManagementService.CreateImportJob][google.cloud.kms.v1.KeyManagementService.CreateImportJob]. 1304type CreateImportJobRequest struct { 1305 state protoimpl.MessageState 1306 sizeCache protoimpl.SizeCache 1307 unknownFields protoimpl.UnknownFields 1308 1309 // Required. The [name][google.cloud.kms.v1.KeyRing.name] of the [KeyRing][google.cloud.kms.v1.KeyRing] associated with the 1310 // [ImportJobs][google.cloud.kms.v1.ImportJob]. 1311 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 1312 // Required. It must be unique within a KeyRing and match the regular 1313 // expression `[a-zA-Z0-9_-]{1,63}` 1314 ImportJobId string `protobuf:"bytes,2,opt,name=import_job_id,json=importJobId,proto3" json:"import_job_id,omitempty"` 1315 // Required. An [ImportJob][google.cloud.kms.v1.ImportJob] with initial field values. 1316 ImportJob *ImportJob `protobuf:"bytes,3,opt,name=import_job,json=importJob,proto3" json:"import_job,omitempty"` 1317} 1318 1319func (x *CreateImportJobRequest) Reset() { 1320 *x = CreateImportJobRequest{} 1321 if protoimpl.UnsafeEnabled { 1322 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[17] 1323 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1324 ms.StoreMessageInfo(mi) 1325 } 1326} 1327 1328func (x *CreateImportJobRequest) String() string { 1329 return protoimpl.X.MessageStringOf(x) 1330} 1331 1332func (*CreateImportJobRequest) ProtoMessage() {} 1333 1334func (x *CreateImportJobRequest) ProtoReflect() protoreflect.Message { 1335 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[17] 1336 if protoimpl.UnsafeEnabled && x != nil { 1337 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1338 if ms.LoadMessageInfo() == nil { 1339 ms.StoreMessageInfo(mi) 1340 } 1341 return ms 1342 } 1343 return mi.MessageOf(x) 1344} 1345 1346// Deprecated: Use CreateImportJobRequest.ProtoReflect.Descriptor instead. 1347func (*CreateImportJobRequest) Descriptor() ([]byte, []int) { 1348 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{17} 1349} 1350 1351func (x *CreateImportJobRequest) GetParent() string { 1352 if x != nil { 1353 return x.Parent 1354 } 1355 return "" 1356} 1357 1358func (x *CreateImportJobRequest) GetImportJobId() string { 1359 if x != nil { 1360 return x.ImportJobId 1361 } 1362 return "" 1363} 1364 1365func (x *CreateImportJobRequest) GetImportJob() *ImportJob { 1366 if x != nil { 1367 return x.ImportJob 1368 } 1369 return nil 1370} 1371 1372// Request message for [KeyManagementService.UpdateCryptoKey][google.cloud.kms.v1.KeyManagementService.UpdateCryptoKey]. 1373type UpdateCryptoKeyRequest struct { 1374 state protoimpl.MessageState 1375 sizeCache protoimpl.SizeCache 1376 unknownFields protoimpl.UnknownFields 1377 1378 // Required. [CryptoKey][google.cloud.kms.v1.CryptoKey] with updated values. 1379 CryptoKey *CryptoKey `protobuf:"bytes,1,opt,name=crypto_key,json=cryptoKey,proto3" json:"crypto_key,omitempty"` 1380 // Required. List of fields to be updated in this request. 1381 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 1382} 1383 1384func (x *UpdateCryptoKeyRequest) Reset() { 1385 *x = UpdateCryptoKeyRequest{} 1386 if protoimpl.UnsafeEnabled { 1387 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[18] 1388 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1389 ms.StoreMessageInfo(mi) 1390 } 1391} 1392 1393func (x *UpdateCryptoKeyRequest) String() string { 1394 return protoimpl.X.MessageStringOf(x) 1395} 1396 1397func (*UpdateCryptoKeyRequest) ProtoMessage() {} 1398 1399func (x *UpdateCryptoKeyRequest) ProtoReflect() protoreflect.Message { 1400 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[18] 1401 if protoimpl.UnsafeEnabled && x != nil { 1402 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1403 if ms.LoadMessageInfo() == nil { 1404 ms.StoreMessageInfo(mi) 1405 } 1406 return ms 1407 } 1408 return mi.MessageOf(x) 1409} 1410 1411// Deprecated: Use UpdateCryptoKeyRequest.ProtoReflect.Descriptor instead. 1412func (*UpdateCryptoKeyRequest) Descriptor() ([]byte, []int) { 1413 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{18} 1414} 1415 1416func (x *UpdateCryptoKeyRequest) GetCryptoKey() *CryptoKey { 1417 if x != nil { 1418 return x.CryptoKey 1419 } 1420 return nil 1421} 1422 1423func (x *UpdateCryptoKeyRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 1424 if x != nil { 1425 return x.UpdateMask 1426 } 1427 return nil 1428} 1429 1430// Request message for [KeyManagementService.UpdateCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyVersion]. 1431type UpdateCryptoKeyVersionRequest struct { 1432 state protoimpl.MessageState 1433 sizeCache protoimpl.SizeCache 1434 unknownFields protoimpl.UnknownFields 1435 1436 // Required. [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] with updated values. 1437 CryptoKeyVersion *CryptoKeyVersion `protobuf:"bytes,1,opt,name=crypto_key_version,json=cryptoKeyVersion,proto3" json:"crypto_key_version,omitempty"` 1438 // Required. List of fields to be updated in this request. 1439 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 1440} 1441 1442func (x *UpdateCryptoKeyVersionRequest) Reset() { 1443 *x = UpdateCryptoKeyVersionRequest{} 1444 if protoimpl.UnsafeEnabled { 1445 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[19] 1446 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1447 ms.StoreMessageInfo(mi) 1448 } 1449} 1450 1451func (x *UpdateCryptoKeyVersionRequest) String() string { 1452 return protoimpl.X.MessageStringOf(x) 1453} 1454 1455func (*UpdateCryptoKeyVersionRequest) ProtoMessage() {} 1456 1457func (x *UpdateCryptoKeyVersionRequest) ProtoReflect() protoreflect.Message { 1458 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[19] 1459 if protoimpl.UnsafeEnabled && x != nil { 1460 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1461 if ms.LoadMessageInfo() == nil { 1462 ms.StoreMessageInfo(mi) 1463 } 1464 return ms 1465 } 1466 return mi.MessageOf(x) 1467} 1468 1469// Deprecated: Use UpdateCryptoKeyVersionRequest.ProtoReflect.Descriptor instead. 1470func (*UpdateCryptoKeyVersionRequest) Descriptor() ([]byte, []int) { 1471 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{19} 1472} 1473 1474func (x *UpdateCryptoKeyVersionRequest) GetCryptoKeyVersion() *CryptoKeyVersion { 1475 if x != nil { 1476 return x.CryptoKeyVersion 1477 } 1478 return nil 1479} 1480 1481func (x *UpdateCryptoKeyVersionRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 1482 if x != nil { 1483 return x.UpdateMask 1484 } 1485 return nil 1486} 1487 1488// Request message for [KeyManagementService.Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. 1489type EncryptRequest struct { 1490 state protoimpl.MessageState 1491 sizeCache protoimpl.SizeCache 1492 unknownFields protoimpl.UnknownFields 1493 1494 // Required. The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] or [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] 1495 // to use for encryption. 1496 // 1497 // If a [CryptoKey][google.cloud.kms.v1.CryptoKey] is specified, the server will use its 1498 // [primary version][google.cloud.kms.v1.CryptoKey.primary]. 1499 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1500 // Required. The data to encrypt. Must be no larger than 64KiB. 1501 // 1502 // The maximum size depends on the key version's 1503 // [protection_level][google.cloud.kms.v1.CryptoKeyVersionTemplate.protection_level]. For 1504 // [SOFTWARE][google.cloud.kms.v1.ProtectionLevel.SOFTWARE] keys, the plaintext must be no larger 1505 // than 64KiB. For [HSM][google.cloud.kms.v1.ProtectionLevel.HSM] keys, the combined length of the 1506 // plaintext and additional_authenticated_data fields must be no larger than 1507 // 8KiB. 1508 Plaintext []byte `protobuf:"bytes,2,opt,name=plaintext,proto3" json:"plaintext,omitempty"` 1509 // Optional. Optional data that, if specified, must also be provided during decryption 1510 // through [DecryptRequest.additional_authenticated_data][google.cloud.kms.v1.DecryptRequest.additional_authenticated_data]. 1511 // 1512 // The maximum size depends on the key version's 1513 // [protection_level][google.cloud.kms.v1.CryptoKeyVersionTemplate.protection_level]. For 1514 // [SOFTWARE][google.cloud.kms.v1.ProtectionLevel.SOFTWARE] keys, the AAD must be no larger than 1515 // 64KiB. For [HSM][google.cloud.kms.v1.ProtectionLevel.HSM] keys, the combined length of the 1516 // plaintext and additional_authenticated_data fields must be no larger than 1517 // 8KiB. 1518 AdditionalAuthenticatedData []byte `protobuf:"bytes,3,opt,name=additional_authenticated_data,json=additionalAuthenticatedData,proto3" json:"additional_authenticated_data,omitempty"` 1519 // Optional. An optional CRC32C checksum of the [EncryptRequest.plaintext][google.cloud.kms.v1.EncryptRequest.plaintext]. If 1520 // specified, [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will verify the integrity of the 1521 // received [EncryptRequest.plaintext][google.cloud.kms.v1.EncryptRequest.plaintext] using this checksum. 1522 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will report an error if the checksum verification 1523 // fails. If you receive a checksum error, your client should verify that 1524 // CRC32C([EncryptRequest.plaintext][google.cloud.kms.v1.EncryptRequest.plaintext]) is equal to 1525 // [EncryptRequest.plaintext_crc32c][google.cloud.kms.v1.EncryptRequest.plaintext_crc32c], and if so, perform a limited number of 1526 // retries. A persistent mismatch may indicate an issue in your computation of 1527 // the CRC32C checksum. 1528 // Note: This field is defined as int64 for reasons of compatibility across 1529 // different languages. However, it is a non-negative integer, which will 1530 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 1531 // that support this type. 1532 // 1533 // NOTE: This field is in Beta. 1534 PlaintextCrc32C *wrapperspb.Int64Value `protobuf:"bytes,7,opt,name=plaintext_crc32c,json=plaintextCrc32c,proto3" json:"plaintext_crc32c,omitempty"` 1535 // Optional. An optional CRC32C checksum of the 1536 // [EncryptRequest.additional_authenticated_data][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data]. If specified, 1537 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will verify the integrity of the received 1538 // [EncryptRequest.additional_authenticated_data][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data] using this checksum. 1539 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will report an error if the checksum verification 1540 // fails. If you receive a checksum error, your client should verify that 1541 // CRC32C([EncryptRequest.additional_authenticated_data][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data]) is equal to 1542 // [EncryptRequest.additional_authenticated_data_crc32c][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data_crc32c], and if so, perform 1543 // a limited number of retries. A persistent mismatch may indicate an issue in 1544 // your computation of the CRC32C checksum. 1545 // Note: This field is defined as int64 for reasons of compatibility across 1546 // different languages. However, it is a non-negative integer, which will 1547 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 1548 // that support this type. 1549 // 1550 // NOTE: This field is in Beta. 1551 AdditionalAuthenticatedDataCrc32C *wrapperspb.Int64Value `protobuf:"bytes,8,opt,name=additional_authenticated_data_crc32c,json=additionalAuthenticatedDataCrc32c,proto3" json:"additional_authenticated_data_crc32c,omitempty"` 1552} 1553 1554func (x *EncryptRequest) Reset() { 1555 *x = EncryptRequest{} 1556 if protoimpl.UnsafeEnabled { 1557 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[20] 1558 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1559 ms.StoreMessageInfo(mi) 1560 } 1561} 1562 1563func (x *EncryptRequest) String() string { 1564 return protoimpl.X.MessageStringOf(x) 1565} 1566 1567func (*EncryptRequest) ProtoMessage() {} 1568 1569func (x *EncryptRequest) ProtoReflect() protoreflect.Message { 1570 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[20] 1571 if protoimpl.UnsafeEnabled && x != nil { 1572 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1573 if ms.LoadMessageInfo() == nil { 1574 ms.StoreMessageInfo(mi) 1575 } 1576 return ms 1577 } 1578 return mi.MessageOf(x) 1579} 1580 1581// Deprecated: Use EncryptRequest.ProtoReflect.Descriptor instead. 1582func (*EncryptRequest) Descriptor() ([]byte, []int) { 1583 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{20} 1584} 1585 1586func (x *EncryptRequest) GetName() string { 1587 if x != nil { 1588 return x.Name 1589 } 1590 return "" 1591} 1592 1593func (x *EncryptRequest) GetPlaintext() []byte { 1594 if x != nil { 1595 return x.Plaintext 1596 } 1597 return nil 1598} 1599 1600func (x *EncryptRequest) GetAdditionalAuthenticatedData() []byte { 1601 if x != nil { 1602 return x.AdditionalAuthenticatedData 1603 } 1604 return nil 1605} 1606 1607func (x *EncryptRequest) GetPlaintextCrc32C() *wrapperspb.Int64Value { 1608 if x != nil { 1609 return x.PlaintextCrc32C 1610 } 1611 return nil 1612} 1613 1614func (x *EncryptRequest) GetAdditionalAuthenticatedDataCrc32C() *wrapperspb.Int64Value { 1615 if x != nil { 1616 return x.AdditionalAuthenticatedDataCrc32C 1617 } 1618 return nil 1619} 1620 1621// Request message for [KeyManagementService.Decrypt][google.cloud.kms.v1.KeyManagementService.Decrypt]. 1622type DecryptRequest struct { 1623 state protoimpl.MessageState 1624 sizeCache protoimpl.SizeCache 1625 unknownFields protoimpl.UnknownFields 1626 1627 // Required. The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to use for decryption. 1628 // The server will choose the appropriate version. 1629 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1630 // Required. The encrypted data originally returned in 1631 // [EncryptResponse.ciphertext][google.cloud.kms.v1.EncryptResponse.ciphertext]. 1632 Ciphertext []byte `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` 1633 // Optional. Optional data that must match the data originally supplied in 1634 // [EncryptRequest.additional_authenticated_data][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data]. 1635 AdditionalAuthenticatedData []byte `protobuf:"bytes,3,opt,name=additional_authenticated_data,json=additionalAuthenticatedData,proto3" json:"additional_authenticated_data,omitempty"` 1636 // Optional. An optional CRC32C checksum of the [DecryptRequest.ciphertext][google.cloud.kms.v1.DecryptRequest.ciphertext]. If 1637 // specified, [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will verify the integrity of the 1638 // received [DecryptRequest.ciphertext][google.cloud.kms.v1.DecryptRequest.ciphertext] using this checksum. 1639 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will report an error if the checksum verification 1640 // fails. If you receive a checksum error, your client should verify that 1641 // CRC32C([DecryptRequest.ciphertext][google.cloud.kms.v1.DecryptRequest.ciphertext]) is equal to 1642 // [DecryptRequest.ciphertext_crc32c][google.cloud.kms.v1.DecryptRequest.ciphertext_crc32c], and if so, perform a limited number 1643 // of retries. A persistent mismatch may indicate an issue in your computation 1644 // of the CRC32C checksum. 1645 // Note: This field is defined as int64 for reasons of compatibility across 1646 // different languages. However, it is a non-negative integer, which will 1647 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 1648 // that support this type. 1649 // 1650 // NOTE: This field is in Beta. 1651 CiphertextCrc32C *wrapperspb.Int64Value `protobuf:"bytes,5,opt,name=ciphertext_crc32c,json=ciphertextCrc32c,proto3" json:"ciphertext_crc32c,omitempty"` 1652 // Optional. An optional CRC32C checksum of the 1653 // [DecryptRequest.additional_authenticated_data][google.cloud.kms.v1.DecryptRequest.additional_authenticated_data]. If specified, 1654 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will verify the integrity of the received 1655 // [DecryptRequest.additional_authenticated_data][google.cloud.kms.v1.DecryptRequest.additional_authenticated_data] using this checksum. 1656 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will report an error if the checksum verification 1657 // fails. If you receive a checksum error, your client should verify that 1658 // CRC32C([DecryptRequest.additional_authenticated_data][google.cloud.kms.v1.DecryptRequest.additional_authenticated_data]) is equal to 1659 // [DecryptRequest.additional_authenticated_data_crc32c][google.cloud.kms.v1.DecryptRequest.additional_authenticated_data_crc32c], and if so, perform 1660 // a limited number of retries. A persistent mismatch may indicate an issue in 1661 // your computation of the CRC32C checksum. 1662 // Note: This field is defined as int64 for reasons of compatibility across 1663 // different languages. However, it is a non-negative integer, which will 1664 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 1665 // that support this type. 1666 // 1667 // NOTE: This field is in Beta. 1668 AdditionalAuthenticatedDataCrc32C *wrapperspb.Int64Value `protobuf:"bytes,6,opt,name=additional_authenticated_data_crc32c,json=additionalAuthenticatedDataCrc32c,proto3" json:"additional_authenticated_data_crc32c,omitempty"` 1669} 1670 1671func (x *DecryptRequest) Reset() { 1672 *x = DecryptRequest{} 1673 if protoimpl.UnsafeEnabled { 1674 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[21] 1675 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1676 ms.StoreMessageInfo(mi) 1677 } 1678} 1679 1680func (x *DecryptRequest) String() string { 1681 return protoimpl.X.MessageStringOf(x) 1682} 1683 1684func (*DecryptRequest) ProtoMessage() {} 1685 1686func (x *DecryptRequest) ProtoReflect() protoreflect.Message { 1687 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[21] 1688 if protoimpl.UnsafeEnabled && x != nil { 1689 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1690 if ms.LoadMessageInfo() == nil { 1691 ms.StoreMessageInfo(mi) 1692 } 1693 return ms 1694 } 1695 return mi.MessageOf(x) 1696} 1697 1698// Deprecated: Use DecryptRequest.ProtoReflect.Descriptor instead. 1699func (*DecryptRequest) Descriptor() ([]byte, []int) { 1700 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{21} 1701} 1702 1703func (x *DecryptRequest) GetName() string { 1704 if x != nil { 1705 return x.Name 1706 } 1707 return "" 1708} 1709 1710func (x *DecryptRequest) GetCiphertext() []byte { 1711 if x != nil { 1712 return x.Ciphertext 1713 } 1714 return nil 1715} 1716 1717func (x *DecryptRequest) GetAdditionalAuthenticatedData() []byte { 1718 if x != nil { 1719 return x.AdditionalAuthenticatedData 1720 } 1721 return nil 1722} 1723 1724func (x *DecryptRequest) GetCiphertextCrc32C() *wrapperspb.Int64Value { 1725 if x != nil { 1726 return x.CiphertextCrc32C 1727 } 1728 return nil 1729} 1730 1731func (x *DecryptRequest) GetAdditionalAuthenticatedDataCrc32C() *wrapperspb.Int64Value { 1732 if x != nil { 1733 return x.AdditionalAuthenticatedDataCrc32C 1734 } 1735 return nil 1736} 1737 1738// Request message for [KeyManagementService.AsymmetricSign][google.cloud.kms.v1.KeyManagementService.AsymmetricSign]. 1739type AsymmetricSignRequest struct { 1740 state protoimpl.MessageState 1741 sizeCache protoimpl.SizeCache 1742 unknownFields protoimpl.UnknownFields 1743 1744 // Required. The resource name of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to use for signing. 1745 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1746 // Required. The digest of the data to sign. The digest must be produced with 1747 // the same digest algorithm as specified by the key version's 1748 // [algorithm][google.cloud.kms.v1.CryptoKeyVersion.algorithm]. 1749 Digest *Digest `protobuf:"bytes,3,opt,name=digest,proto3" json:"digest,omitempty"` 1750 // Optional. An optional CRC32C checksum of the [AsymmetricSignRequest.digest][google.cloud.kms.v1.AsymmetricSignRequest.digest]. If 1751 // specified, [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will verify the integrity of the 1752 // received [AsymmetricSignRequest.digest][google.cloud.kms.v1.AsymmetricSignRequest.digest] using this checksum. 1753 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will report an error if the checksum verification 1754 // fails. If you receive a checksum error, your client should verify that 1755 // CRC32C([AsymmetricSignRequest.digest][google.cloud.kms.v1.AsymmetricSignRequest.digest]) is equal to 1756 // [AsymmetricSignRequest.digest_crc32c][google.cloud.kms.v1.AsymmetricSignRequest.digest_crc32c], and if so, perform a limited 1757 // number of retries. A persistent mismatch may indicate an issue in your 1758 // computation of the CRC32C checksum. 1759 // Note: This field is defined as int64 for reasons of compatibility across 1760 // different languages. However, it is a non-negative integer, which will 1761 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 1762 // that support this type. 1763 // 1764 // NOTE: This field is in Beta. 1765 DigestCrc32C *wrapperspb.Int64Value `protobuf:"bytes,4,opt,name=digest_crc32c,json=digestCrc32c,proto3" json:"digest_crc32c,omitempty"` 1766} 1767 1768func (x *AsymmetricSignRequest) Reset() { 1769 *x = AsymmetricSignRequest{} 1770 if protoimpl.UnsafeEnabled { 1771 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[22] 1772 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1773 ms.StoreMessageInfo(mi) 1774 } 1775} 1776 1777func (x *AsymmetricSignRequest) String() string { 1778 return protoimpl.X.MessageStringOf(x) 1779} 1780 1781func (*AsymmetricSignRequest) ProtoMessage() {} 1782 1783func (x *AsymmetricSignRequest) ProtoReflect() protoreflect.Message { 1784 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[22] 1785 if protoimpl.UnsafeEnabled && x != nil { 1786 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1787 if ms.LoadMessageInfo() == nil { 1788 ms.StoreMessageInfo(mi) 1789 } 1790 return ms 1791 } 1792 return mi.MessageOf(x) 1793} 1794 1795// Deprecated: Use AsymmetricSignRequest.ProtoReflect.Descriptor instead. 1796func (*AsymmetricSignRequest) Descriptor() ([]byte, []int) { 1797 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{22} 1798} 1799 1800func (x *AsymmetricSignRequest) GetName() string { 1801 if x != nil { 1802 return x.Name 1803 } 1804 return "" 1805} 1806 1807func (x *AsymmetricSignRequest) GetDigest() *Digest { 1808 if x != nil { 1809 return x.Digest 1810 } 1811 return nil 1812} 1813 1814func (x *AsymmetricSignRequest) GetDigestCrc32C() *wrapperspb.Int64Value { 1815 if x != nil { 1816 return x.DigestCrc32C 1817 } 1818 return nil 1819} 1820 1821// Request message for [KeyManagementService.AsymmetricDecrypt][google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt]. 1822type AsymmetricDecryptRequest struct { 1823 state protoimpl.MessageState 1824 sizeCache protoimpl.SizeCache 1825 unknownFields protoimpl.UnknownFields 1826 1827 // Required. The resource name of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to use for 1828 // decryption. 1829 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1830 // Required. The data encrypted with the named [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]'s public 1831 // key using OAEP. 1832 Ciphertext []byte `protobuf:"bytes,3,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` 1833 // Optional. An optional CRC32C checksum of the [AsymmetricDecryptRequest.ciphertext][google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext]. 1834 // If specified, [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will verify the integrity of the 1835 // received [AsymmetricDecryptRequest.ciphertext][google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext] using this checksum. 1836 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] will report an error if the checksum verification 1837 // fails. If you receive a checksum error, your client should verify that 1838 // CRC32C([AsymmetricDecryptRequest.ciphertext][google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext]) is equal to 1839 // [AsymmetricDecryptRequest.ciphertext_crc32c][google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext_crc32c], and if so, perform a 1840 // limited number of retries. A persistent mismatch may indicate an issue in 1841 // your computation of the CRC32C checksum. 1842 // Note: This field is defined as int64 for reasons of compatibility across 1843 // different languages. However, it is a non-negative integer, which will 1844 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 1845 // that support this type. 1846 // 1847 // NOTE: This field is in Beta. 1848 CiphertextCrc32C *wrapperspb.Int64Value `protobuf:"bytes,4,opt,name=ciphertext_crc32c,json=ciphertextCrc32c,proto3" json:"ciphertext_crc32c,omitempty"` 1849} 1850 1851func (x *AsymmetricDecryptRequest) Reset() { 1852 *x = AsymmetricDecryptRequest{} 1853 if protoimpl.UnsafeEnabled { 1854 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[23] 1855 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1856 ms.StoreMessageInfo(mi) 1857 } 1858} 1859 1860func (x *AsymmetricDecryptRequest) String() string { 1861 return protoimpl.X.MessageStringOf(x) 1862} 1863 1864func (*AsymmetricDecryptRequest) ProtoMessage() {} 1865 1866func (x *AsymmetricDecryptRequest) ProtoReflect() protoreflect.Message { 1867 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[23] 1868 if protoimpl.UnsafeEnabled && x != nil { 1869 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1870 if ms.LoadMessageInfo() == nil { 1871 ms.StoreMessageInfo(mi) 1872 } 1873 return ms 1874 } 1875 return mi.MessageOf(x) 1876} 1877 1878// Deprecated: Use AsymmetricDecryptRequest.ProtoReflect.Descriptor instead. 1879func (*AsymmetricDecryptRequest) Descriptor() ([]byte, []int) { 1880 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{23} 1881} 1882 1883func (x *AsymmetricDecryptRequest) GetName() string { 1884 if x != nil { 1885 return x.Name 1886 } 1887 return "" 1888} 1889 1890func (x *AsymmetricDecryptRequest) GetCiphertext() []byte { 1891 if x != nil { 1892 return x.Ciphertext 1893 } 1894 return nil 1895} 1896 1897func (x *AsymmetricDecryptRequest) GetCiphertextCrc32C() *wrapperspb.Int64Value { 1898 if x != nil { 1899 return x.CiphertextCrc32C 1900 } 1901 return nil 1902} 1903 1904// Response message for [KeyManagementService.Decrypt][google.cloud.kms.v1.KeyManagementService.Decrypt]. 1905type DecryptResponse struct { 1906 state protoimpl.MessageState 1907 sizeCache protoimpl.SizeCache 1908 unknownFields protoimpl.UnknownFields 1909 1910 // The decrypted data originally supplied in [EncryptRequest.plaintext][google.cloud.kms.v1.EncryptRequest.plaintext]. 1911 Plaintext []byte `protobuf:"bytes,1,opt,name=plaintext,proto3" json:"plaintext,omitempty"` 1912 // Integrity verification field. A CRC32C checksum of the returned 1913 // [DecryptResponse.plaintext][google.cloud.kms.v1.DecryptResponse.plaintext]. An integrity check of 1914 // [DecryptResponse.plaintext][google.cloud.kms.v1.DecryptResponse.plaintext] can be performed by computing the CRC32C 1915 // checksum of [DecryptResponse.plaintext][google.cloud.kms.v1.DecryptResponse.plaintext] and comparing your results to 1916 // this field. Discard the response in case of non-matching checksum values, 1917 // and perform a limited number of retries. A persistent mismatch may indicate 1918 // an issue in your computation of the CRC32C checksum. Note: receiving this 1919 // response message indicates that [KeyManagementService][google.cloud.kms.v1.KeyManagementService] is able to 1920 // successfully decrypt the [ciphertext][google.cloud.kms.v1.DecryptRequest.ciphertext]. 1921 // Note: This field is defined as int64 for reasons of compatibility across 1922 // different languages. However, it is a non-negative integer, which will 1923 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 1924 // that support this type. 1925 // 1926 // NOTE: This field is in Beta. 1927 PlaintextCrc32C *wrapperspb.Int64Value `protobuf:"bytes,2,opt,name=plaintext_crc32c,json=plaintextCrc32c,proto3" json:"plaintext_crc32c,omitempty"` 1928} 1929 1930func (x *DecryptResponse) Reset() { 1931 *x = DecryptResponse{} 1932 if protoimpl.UnsafeEnabled { 1933 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[24] 1934 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1935 ms.StoreMessageInfo(mi) 1936 } 1937} 1938 1939func (x *DecryptResponse) String() string { 1940 return protoimpl.X.MessageStringOf(x) 1941} 1942 1943func (*DecryptResponse) ProtoMessage() {} 1944 1945func (x *DecryptResponse) ProtoReflect() protoreflect.Message { 1946 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[24] 1947 if protoimpl.UnsafeEnabled && x != nil { 1948 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1949 if ms.LoadMessageInfo() == nil { 1950 ms.StoreMessageInfo(mi) 1951 } 1952 return ms 1953 } 1954 return mi.MessageOf(x) 1955} 1956 1957// Deprecated: Use DecryptResponse.ProtoReflect.Descriptor instead. 1958func (*DecryptResponse) Descriptor() ([]byte, []int) { 1959 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{24} 1960} 1961 1962func (x *DecryptResponse) GetPlaintext() []byte { 1963 if x != nil { 1964 return x.Plaintext 1965 } 1966 return nil 1967} 1968 1969func (x *DecryptResponse) GetPlaintextCrc32C() *wrapperspb.Int64Value { 1970 if x != nil { 1971 return x.PlaintextCrc32C 1972 } 1973 return nil 1974} 1975 1976// Response message for [KeyManagementService.Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. 1977type EncryptResponse struct { 1978 state protoimpl.MessageState 1979 sizeCache protoimpl.SizeCache 1980 unknownFields protoimpl.UnknownFields 1981 1982 // The resource name of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] used in encryption. Check 1983 // this field to verify that the intended resource was used for encryption. 1984 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1985 // The encrypted data. 1986 Ciphertext []byte `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` 1987 // Integrity verification field. A CRC32C checksum of the returned 1988 // [EncryptResponse.ciphertext][google.cloud.kms.v1.EncryptResponse.ciphertext]. An integrity check of 1989 // [EncryptResponse.ciphertext][google.cloud.kms.v1.EncryptResponse.ciphertext] can be performed by computing the CRC32C 1990 // checksum of [EncryptResponse.ciphertext][google.cloud.kms.v1.EncryptResponse.ciphertext] and comparing your results to 1991 // this field. Discard the response in case of non-matching checksum values, 1992 // and perform a limited number of retries. A persistent mismatch may indicate 1993 // an issue in your computation of the CRC32C checksum. 1994 // Note: This field is defined as int64 for reasons of compatibility across 1995 // different languages. However, it is a non-negative integer, which will 1996 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 1997 // that support this type. 1998 // 1999 // NOTE: This field is in Beta. 2000 CiphertextCrc32C *wrapperspb.Int64Value `protobuf:"bytes,4,opt,name=ciphertext_crc32c,json=ciphertextCrc32c,proto3" json:"ciphertext_crc32c,omitempty"` 2001 // Integrity verification field. A flag indicating whether 2002 // [EncryptRequest.plaintext_crc32c][google.cloud.kms.v1.EncryptRequest.plaintext_crc32c] was received by 2003 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] and used for the integrity verification of the 2004 // [plaintext][google.cloud.kms.v1.EncryptRequest.plaintext]. A false value of this field 2005 // indicates either that [EncryptRequest.plaintext_crc32c][google.cloud.kms.v1.EncryptRequest.plaintext_crc32c] was left unset or 2006 // that it was not delivered to [KeyManagementService][google.cloud.kms.v1.KeyManagementService]. If you've set 2007 // [EncryptRequest.plaintext_crc32c][google.cloud.kms.v1.EncryptRequest.plaintext_crc32c] but this field is still false, discard 2008 // the response and perform a limited number of retries. 2009 // 2010 // NOTE: This field is in Beta. 2011 VerifiedPlaintextCrc32C bool `protobuf:"varint,5,opt,name=verified_plaintext_crc32c,json=verifiedPlaintextCrc32c,proto3" json:"verified_plaintext_crc32c,omitempty"` 2012 // Integrity verification field. A flag indicating whether 2013 // [EncryptRequest.additional_authenticated_data_crc32c][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data_crc32c] was received by 2014 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] and used for the integrity verification of the 2015 // [AAD][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data]. A false value of this 2016 // field indicates either that 2017 // [EncryptRequest.additional_authenticated_data_crc32c][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data_crc32c] was left unset or 2018 // that it was not delivered to [KeyManagementService][google.cloud.kms.v1.KeyManagementService]. If you've set 2019 // [EncryptRequest.additional_authenticated_data_crc32c][google.cloud.kms.v1.EncryptRequest.additional_authenticated_data_crc32c] but this field is 2020 // still false, discard the response and perform a limited number of retries. 2021 // 2022 // NOTE: This field is in Beta. 2023 VerifiedAdditionalAuthenticatedDataCrc32C bool `protobuf:"varint,6,opt,name=verified_additional_authenticated_data_crc32c,json=verifiedAdditionalAuthenticatedDataCrc32c,proto3" json:"verified_additional_authenticated_data_crc32c,omitempty"` 2024} 2025 2026func (x *EncryptResponse) Reset() { 2027 *x = EncryptResponse{} 2028 if protoimpl.UnsafeEnabled { 2029 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[25] 2030 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2031 ms.StoreMessageInfo(mi) 2032 } 2033} 2034 2035func (x *EncryptResponse) String() string { 2036 return protoimpl.X.MessageStringOf(x) 2037} 2038 2039func (*EncryptResponse) ProtoMessage() {} 2040 2041func (x *EncryptResponse) ProtoReflect() protoreflect.Message { 2042 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[25] 2043 if protoimpl.UnsafeEnabled && x != nil { 2044 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2045 if ms.LoadMessageInfo() == nil { 2046 ms.StoreMessageInfo(mi) 2047 } 2048 return ms 2049 } 2050 return mi.MessageOf(x) 2051} 2052 2053// Deprecated: Use EncryptResponse.ProtoReflect.Descriptor instead. 2054func (*EncryptResponse) Descriptor() ([]byte, []int) { 2055 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{25} 2056} 2057 2058func (x *EncryptResponse) GetName() string { 2059 if x != nil { 2060 return x.Name 2061 } 2062 return "" 2063} 2064 2065func (x *EncryptResponse) GetCiphertext() []byte { 2066 if x != nil { 2067 return x.Ciphertext 2068 } 2069 return nil 2070} 2071 2072func (x *EncryptResponse) GetCiphertextCrc32C() *wrapperspb.Int64Value { 2073 if x != nil { 2074 return x.CiphertextCrc32C 2075 } 2076 return nil 2077} 2078 2079func (x *EncryptResponse) GetVerifiedPlaintextCrc32C() bool { 2080 if x != nil { 2081 return x.VerifiedPlaintextCrc32C 2082 } 2083 return false 2084} 2085 2086func (x *EncryptResponse) GetVerifiedAdditionalAuthenticatedDataCrc32C() bool { 2087 if x != nil { 2088 return x.VerifiedAdditionalAuthenticatedDataCrc32C 2089 } 2090 return false 2091} 2092 2093// Response message for [KeyManagementService.AsymmetricSign][google.cloud.kms.v1.KeyManagementService.AsymmetricSign]. 2094type AsymmetricSignResponse struct { 2095 state protoimpl.MessageState 2096 sizeCache protoimpl.SizeCache 2097 unknownFields protoimpl.UnknownFields 2098 2099 // The created signature. 2100 Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"` 2101 // Integrity verification field. A CRC32C checksum of the returned 2102 // [AsymmetricSignResponse.signature][google.cloud.kms.v1.AsymmetricSignResponse.signature]. An integrity check of 2103 // [AsymmetricSignResponse.signature][google.cloud.kms.v1.AsymmetricSignResponse.signature] can be performed by computing the 2104 // CRC32C checksum of [AsymmetricSignResponse.signature][google.cloud.kms.v1.AsymmetricSignResponse.signature] and comparing your 2105 // results to this field. Discard the response in case of non-matching 2106 // checksum values, and perform a limited number of retries. A persistent 2107 // mismatch may indicate an issue in your computation of the CRC32C checksum. 2108 // Note: This field is defined as int64 for reasons of compatibility across 2109 // different languages. However, it is a non-negative integer, which will 2110 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 2111 // that support this type. 2112 // 2113 // NOTE: This field is in Beta. 2114 SignatureCrc32C *wrapperspb.Int64Value `protobuf:"bytes,2,opt,name=signature_crc32c,json=signatureCrc32c,proto3" json:"signature_crc32c,omitempty"` 2115 // Integrity verification field. A flag indicating whether 2116 // [AsymmetricSignRequest.digest_crc32c][google.cloud.kms.v1.AsymmetricSignRequest.digest_crc32c] was received by 2117 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] and used for the integrity verification of the 2118 // [digest][google.cloud.kms.v1.AsymmetricSignRequest.digest]. A false value of this field 2119 // indicates either that [AsymmetricSignRequest.digest_crc32c][google.cloud.kms.v1.AsymmetricSignRequest.digest_crc32c] was left 2120 // unset or that it was not delivered to [KeyManagementService][google.cloud.kms.v1.KeyManagementService]. If you've 2121 // set [AsymmetricSignRequest.digest_crc32c][google.cloud.kms.v1.AsymmetricSignRequest.digest_crc32c] but this field is still false, 2122 // discard the response and perform a limited number of retries. 2123 // 2124 // NOTE: This field is in Beta. 2125 VerifiedDigestCrc32C bool `protobuf:"varint,3,opt,name=verified_digest_crc32c,json=verifiedDigestCrc32c,proto3" json:"verified_digest_crc32c,omitempty"` 2126 // The resource name of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] used for signing. Check 2127 // this field to verify that the intended resource was used for signing. 2128 // 2129 // NOTE: This field is in Beta. 2130 Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"` 2131} 2132 2133func (x *AsymmetricSignResponse) Reset() { 2134 *x = AsymmetricSignResponse{} 2135 if protoimpl.UnsafeEnabled { 2136 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[26] 2137 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2138 ms.StoreMessageInfo(mi) 2139 } 2140} 2141 2142func (x *AsymmetricSignResponse) String() string { 2143 return protoimpl.X.MessageStringOf(x) 2144} 2145 2146func (*AsymmetricSignResponse) ProtoMessage() {} 2147 2148func (x *AsymmetricSignResponse) ProtoReflect() protoreflect.Message { 2149 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[26] 2150 if protoimpl.UnsafeEnabled && x != nil { 2151 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2152 if ms.LoadMessageInfo() == nil { 2153 ms.StoreMessageInfo(mi) 2154 } 2155 return ms 2156 } 2157 return mi.MessageOf(x) 2158} 2159 2160// Deprecated: Use AsymmetricSignResponse.ProtoReflect.Descriptor instead. 2161func (*AsymmetricSignResponse) Descriptor() ([]byte, []int) { 2162 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{26} 2163} 2164 2165func (x *AsymmetricSignResponse) GetSignature() []byte { 2166 if x != nil { 2167 return x.Signature 2168 } 2169 return nil 2170} 2171 2172func (x *AsymmetricSignResponse) GetSignatureCrc32C() *wrapperspb.Int64Value { 2173 if x != nil { 2174 return x.SignatureCrc32C 2175 } 2176 return nil 2177} 2178 2179func (x *AsymmetricSignResponse) GetVerifiedDigestCrc32C() bool { 2180 if x != nil { 2181 return x.VerifiedDigestCrc32C 2182 } 2183 return false 2184} 2185 2186func (x *AsymmetricSignResponse) GetName() string { 2187 if x != nil { 2188 return x.Name 2189 } 2190 return "" 2191} 2192 2193// Response message for [KeyManagementService.AsymmetricDecrypt][google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt]. 2194type AsymmetricDecryptResponse struct { 2195 state protoimpl.MessageState 2196 sizeCache protoimpl.SizeCache 2197 unknownFields protoimpl.UnknownFields 2198 2199 // The decrypted data originally encrypted with the matching public key. 2200 Plaintext []byte `protobuf:"bytes,1,opt,name=plaintext,proto3" json:"plaintext,omitempty"` 2201 // Integrity verification field. A CRC32C checksum of the returned 2202 // [AsymmetricDecryptResponse.plaintext][google.cloud.kms.v1.AsymmetricDecryptResponse.plaintext]. An integrity check of 2203 // [AsymmetricDecryptResponse.plaintext][google.cloud.kms.v1.AsymmetricDecryptResponse.plaintext] can be performed by computing the 2204 // CRC32C checksum of [AsymmetricDecryptResponse.plaintext][google.cloud.kms.v1.AsymmetricDecryptResponse.plaintext] and comparing 2205 // your results to this field. Discard the response in case of non-matching 2206 // checksum values, and perform a limited number of retries. A persistent 2207 // mismatch may indicate an issue in your computation of the CRC32C checksum. 2208 // Note: This field is defined as int64 for reasons of compatibility across 2209 // different languages. However, it is a non-negative integer, which will 2210 // never exceed 2^32-1, and can be safely downconverted to uint32 in languages 2211 // that support this type. 2212 // 2213 // NOTE: This field is in Beta. 2214 PlaintextCrc32C *wrapperspb.Int64Value `protobuf:"bytes,2,opt,name=plaintext_crc32c,json=plaintextCrc32c,proto3" json:"plaintext_crc32c,omitempty"` 2215 // Integrity verification field. A flag indicating whether 2216 // [AsymmetricDecryptRequest.ciphertext_crc32c][google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext_crc32c] was received by 2217 // [KeyManagementService][google.cloud.kms.v1.KeyManagementService] and used for the integrity verification of the 2218 // [ciphertext][google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext]. A false value of this 2219 // field indicates either that [AsymmetricDecryptRequest.ciphertext_crc32c][google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext_crc32c] 2220 // was left unset or that it was not delivered to [KeyManagementService][google.cloud.kms.v1.KeyManagementService]. If 2221 // you've set [AsymmetricDecryptRequest.ciphertext_crc32c][google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext_crc32c] but this field is 2222 // still false, discard the response and perform a limited number of retries. 2223 // 2224 // NOTE: This field is in Beta. 2225 VerifiedCiphertextCrc32C bool `protobuf:"varint,3,opt,name=verified_ciphertext_crc32c,json=verifiedCiphertextCrc32c,proto3" json:"verified_ciphertext_crc32c,omitempty"` 2226} 2227 2228func (x *AsymmetricDecryptResponse) Reset() { 2229 *x = AsymmetricDecryptResponse{} 2230 if protoimpl.UnsafeEnabled { 2231 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[27] 2232 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2233 ms.StoreMessageInfo(mi) 2234 } 2235} 2236 2237func (x *AsymmetricDecryptResponse) String() string { 2238 return protoimpl.X.MessageStringOf(x) 2239} 2240 2241func (*AsymmetricDecryptResponse) ProtoMessage() {} 2242 2243func (x *AsymmetricDecryptResponse) ProtoReflect() protoreflect.Message { 2244 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[27] 2245 if protoimpl.UnsafeEnabled && x != nil { 2246 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2247 if ms.LoadMessageInfo() == nil { 2248 ms.StoreMessageInfo(mi) 2249 } 2250 return ms 2251 } 2252 return mi.MessageOf(x) 2253} 2254 2255// Deprecated: Use AsymmetricDecryptResponse.ProtoReflect.Descriptor instead. 2256func (*AsymmetricDecryptResponse) Descriptor() ([]byte, []int) { 2257 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{27} 2258} 2259 2260func (x *AsymmetricDecryptResponse) GetPlaintext() []byte { 2261 if x != nil { 2262 return x.Plaintext 2263 } 2264 return nil 2265} 2266 2267func (x *AsymmetricDecryptResponse) GetPlaintextCrc32C() *wrapperspb.Int64Value { 2268 if x != nil { 2269 return x.PlaintextCrc32C 2270 } 2271 return nil 2272} 2273 2274func (x *AsymmetricDecryptResponse) GetVerifiedCiphertextCrc32C() bool { 2275 if x != nil { 2276 return x.VerifiedCiphertextCrc32C 2277 } 2278 return false 2279} 2280 2281// Request message for [KeyManagementService.UpdateCryptoKeyPrimaryVersion][google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyPrimaryVersion]. 2282type UpdateCryptoKeyPrimaryVersionRequest struct { 2283 state protoimpl.MessageState 2284 sizeCache protoimpl.SizeCache 2285 unknownFields protoimpl.UnknownFields 2286 2287 // Required. The resource name of the [CryptoKey][google.cloud.kms.v1.CryptoKey] to update. 2288 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 2289 // Required. The id of the child [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to use as primary. 2290 CryptoKeyVersionId string `protobuf:"bytes,2,opt,name=crypto_key_version_id,json=cryptoKeyVersionId,proto3" json:"crypto_key_version_id,omitempty"` 2291} 2292 2293func (x *UpdateCryptoKeyPrimaryVersionRequest) Reset() { 2294 *x = UpdateCryptoKeyPrimaryVersionRequest{} 2295 if protoimpl.UnsafeEnabled { 2296 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[28] 2297 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2298 ms.StoreMessageInfo(mi) 2299 } 2300} 2301 2302func (x *UpdateCryptoKeyPrimaryVersionRequest) String() string { 2303 return protoimpl.X.MessageStringOf(x) 2304} 2305 2306func (*UpdateCryptoKeyPrimaryVersionRequest) ProtoMessage() {} 2307 2308func (x *UpdateCryptoKeyPrimaryVersionRequest) ProtoReflect() protoreflect.Message { 2309 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[28] 2310 if protoimpl.UnsafeEnabled && x != nil { 2311 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2312 if ms.LoadMessageInfo() == nil { 2313 ms.StoreMessageInfo(mi) 2314 } 2315 return ms 2316 } 2317 return mi.MessageOf(x) 2318} 2319 2320// Deprecated: Use UpdateCryptoKeyPrimaryVersionRequest.ProtoReflect.Descriptor instead. 2321func (*UpdateCryptoKeyPrimaryVersionRequest) Descriptor() ([]byte, []int) { 2322 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{28} 2323} 2324 2325func (x *UpdateCryptoKeyPrimaryVersionRequest) GetName() string { 2326 if x != nil { 2327 return x.Name 2328 } 2329 return "" 2330} 2331 2332func (x *UpdateCryptoKeyPrimaryVersionRequest) GetCryptoKeyVersionId() string { 2333 if x != nil { 2334 return x.CryptoKeyVersionId 2335 } 2336 return "" 2337} 2338 2339// Request message for [KeyManagementService.DestroyCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion]. 2340type DestroyCryptoKeyVersionRequest struct { 2341 state protoimpl.MessageState 2342 sizeCache protoimpl.SizeCache 2343 unknownFields protoimpl.UnknownFields 2344 2345 // Required. The resource name of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to destroy. 2346 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 2347} 2348 2349func (x *DestroyCryptoKeyVersionRequest) Reset() { 2350 *x = DestroyCryptoKeyVersionRequest{} 2351 if protoimpl.UnsafeEnabled { 2352 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[29] 2353 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2354 ms.StoreMessageInfo(mi) 2355 } 2356} 2357 2358func (x *DestroyCryptoKeyVersionRequest) String() string { 2359 return protoimpl.X.MessageStringOf(x) 2360} 2361 2362func (*DestroyCryptoKeyVersionRequest) ProtoMessage() {} 2363 2364func (x *DestroyCryptoKeyVersionRequest) ProtoReflect() protoreflect.Message { 2365 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[29] 2366 if protoimpl.UnsafeEnabled && x != nil { 2367 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2368 if ms.LoadMessageInfo() == nil { 2369 ms.StoreMessageInfo(mi) 2370 } 2371 return ms 2372 } 2373 return mi.MessageOf(x) 2374} 2375 2376// Deprecated: Use DestroyCryptoKeyVersionRequest.ProtoReflect.Descriptor instead. 2377func (*DestroyCryptoKeyVersionRequest) Descriptor() ([]byte, []int) { 2378 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{29} 2379} 2380 2381func (x *DestroyCryptoKeyVersionRequest) GetName() string { 2382 if x != nil { 2383 return x.Name 2384 } 2385 return "" 2386} 2387 2388// Request message for [KeyManagementService.RestoreCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion]. 2389type RestoreCryptoKeyVersionRequest struct { 2390 state protoimpl.MessageState 2391 sizeCache protoimpl.SizeCache 2392 unknownFields protoimpl.UnknownFields 2393 2394 // Required. The resource name of the [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] to restore. 2395 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 2396} 2397 2398func (x *RestoreCryptoKeyVersionRequest) Reset() { 2399 *x = RestoreCryptoKeyVersionRequest{} 2400 if protoimpl.UnsafeEnabled { 2401 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[30] 2402 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2403 ms.StoreMessageInfo(mi) 2404 } 2405} 2406 2407func (x *RestoreCryptoKeyVersionRequest) String() string { 2408 return protoimpl.X.MessageStringOf(x) 2409} 2410 2411func (*RestoreCryptoKeyVersionRequest) ProtoMessage() {} 2412 2413func (x *RestoreCryptoKeyVersionRequest) ProtoReflect() protoreflect.Message { 2414 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[30] 2415 if protoimpl.UnsafeEnabled && x != nil { 2416 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2417 if ms.LoadMessageInfo() == nil { 2418 ms.StoreMessageInfo(mi) 2419 } 2420 return ms 2421 } 2422 return mi.MessageOf(x) 2423} 2424 2425// Deprecated: Use RestoreCryptoKeyVersionRequest.ProtoReflect.Descriptor instead. 2426func (*RestoreCryptoKeyVersionRequest) Descriptor() ([]byte, []int) { 2427 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{30} 2428} 2429 2430func (x *RestoreCryptoKeyVersionRequest) GetName() string { 2431 if x != nil { 2432 return x.Name 2433 } 2434 return "" 2435} 2436 2437// A [Digest][google.cloud.kms.v1.Digest] holds a cryptographic message digest. 2438type Digest struct { 2439 state protoimpl.MessageState 2440 sizeCache protoimpl.SizeCache 2441 unknownFields protoimpl.UnknownFields 2442 2443 // Required. The message digest. 2444 // 2445 // Types that are assignable to Digest: 2446 // *Digest_Sha256 2447 // *Digest_Sha384 2448 // *Digest_Sha512 2449 Digest isDigest_Digest `protobuf_oneof:"digest"` 2450} 2451 2452func (x *Digest) Reset() { 2453 *x = Digest{} 2454 if protoimpl.UnsafeEnabled { 2455 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[31] 2456 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2457 ms.StoreMessageInfo(mi) 2458 } 2459} 2460 2461func (x *Digest) String() string { 2462 return protoimpl.X.MessageStringOf(x) 2463} 2464 2465func (*Digest) ProtoMessage() {} 2466 2467func (x *Digest) ProtoReflect() protoreflect.Message { 2468 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[31] 2469 if protoimpl.UnsafeEnabled && x != nil { 2470 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2471 if ms.LoadMessageInfo() == nil { 2472 ms.StoreMessageInfo(mi) 2473 } 2474 return ms 2475 } 2476 return mi.MessageOf(x) 2477} 2478 2479// Deprecated: Use Digest.ProtoReflect.Descriptor instead. 2480func (*Digest) Descriptor() ([]byte, []int) { 2481 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{31} 2482} 2483 2484func (m *Digest) GetDigest() isDigest_Digest { 2485 if m != nil { 2486 return m.Digest 2487 } 2488 return nil 2489} 2490 2491func (x *Digest) GetSha256() []byte { 2492 if x, ok := x.GetDigest().(*Digest_Sha256); ok { 2493 return x.Sha256 2494 } 2495 return nil 2496} 2497 2498func (x *Digest) GetSha384() []byte { 2499 if x, ok := x.GetDigest().(*Digest_Sha384); ok { 2500 return x.Sha384 2501 } 2502 return nil 2503} 2504 2505func (x *Digest) GetSha512() []byte { 2506 if x, ok := x.GetDigest().(*Digest_Sha512); ok { 2507 return x.Sha512 2508 } 2509 return nil 2510} 2511 2512type isDigest_Digest interface { 2513 isDigest_Digest() 2514} 2515 2516type Digest_Sha256 struct { 2517 // A message digest produced with the SHA-256 algorithm. 2518 Sha256 []byte `protobuf:"bytes,1,opt,name=sha256,proto3,oneof"` 2519} 2520 2521type Digest_Sha384 struct { 2522 // A message digest produced with the SHA-384 algorithm. 2523 Sha384 []byte `protobuf:"bytes,2,opt,name=sha384,proto3,oneof"` 2524} 2525 2526type Digest_Sha512 struct { 2527 // A message digest produced with the SHA-512 algorithm. 2528 Sha512 []byte `protobuf:"bytes,3,opt,name=sha512,proto3,oneof"` 2529} 2530 2531func (*Digest_Sha256) isDigest_Digest() {} 2532 2533func (*Digest_Sha384) isDigest_Digest() {} 2534 2535func (*Digest_Sha512) isDigest_Digest() {} 2536 2537// Cloud KMS metadata for the given [google.cloud.location.Location][google.cloud.location.Location]. 2538type LocationMetadata struct { 2539 state protoimpl.MessageState 2540 sizeCache protoimpl.SizeCache 2541 unknownFields protoimpl.UnknownFields 2542 2543 // Indicates whether [CryptoKeys][google.cloud.kms.v1.CryptoKey] with 2544 // [protection_level][google.cloud.kms.v1.CryptoKeyVersionTemplate.protection_level] 2545 // [HSM][google.cloud.kms.v1.ProtectionLevel.HSM] can be created in this location. 2546 HsmAvailable bool `protobuf:"varint,1,opt,name=hsm_available,json=hsmAvailable,proto3" json:"hsm_available,omitempty"` 2547 // Indicates whether [CryptoKeys][google.cloud.kms.v1.CryptoKey] with 2548 // [protection_level][google.cloud.kms.v1.CryptoKeyVersionTemplate.protection_level] 2549 // [EXTERNAL][google.cloud.kms.v1.ProtectionLevel.EXTERNAL] can be created in this location. 2550 EkmAvailable bool `protobuf:"varint,2,opt,name=ekm_available,json=ekmAvailable,proto3" json:"ekm_available,omitempty"` 2551} 2552 2553func (x *LocationMetadata) Reset() { 2554 *x = LocationMetadata{} 2555 if protoimpl.UnsafeEnabled { 2556 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[32] 2557 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2558 ms.StoreMessageInfo(mi) 2559 } 2560} 2561 2562func (x *LocationMetadata) String() string { 2563 return protoimpl.X.MessageStringOf(x) 2564} 2565 2566func (*LocationMetadata) ProtoMessage() {} 2567 2568func (x *LocationMetadata) ProtoReflect() protoreflect.Message { 2569 mi := &file_google_cloud_kms_v1_service_proto_msgTypes[32] 2570 if protoimpl.UnsafeEnabled && x != nil { 2571 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 2572 if ms.LoadMessageInfo() == nil { 2573 ms.StoreMessageInfo(mi) 2574 } 2575 return ms 2576 } 2577 return mi.MessageOf(x) 2578} 2579 2580// Deprecated: Use LocationMetadata.ProtoReflect.Descriptor instead. 2581func (*LocationMetadata) Descriptor() ([]byte, []int) { 2582 return file_google_cloud_kms_v1_service_proto_rawDescGZIP(), []int{32} 2583} 2584 2585func (x *LocationMetadata) GetHsmAvailable() bool { 2586 if x != nil { 2587 return x.HsmAvailable 2588 } 2589 return false 2590} 2591 2592func (x *LocationMetadata) GetEkmAvailable() bool { 2593 if x != nil { 2594 return x.EkmAvailable 2595 } 2596 return false 2597} 2598 2599var File_google_cloud_kms_v1_service_proto protoreflect.FileDescriptor 2600 2601var file_google_cloud_kms_v1_service_proto_rawDesc = []byte{ 2602 0x0a, 0x21, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x6b, 2603 0x6d, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 2604 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2605 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2606 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 2607 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 2608 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 2609 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 2610 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 2611 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 2612 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 2613 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x6b, 0x6d, 0x73, 0x2f, 0x76, 0x31, 2614 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 2615 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 2616 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 2617 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 2618 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 2619 0x74, 0x6f, 0x22, 0xdb, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x52, 0x69, 2620 0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 2621 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 2622 0x41, 0x23, 0x0a, 0x21, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x67, 0x6f, 2623 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4c, 0x6f, 0x63, 2624 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 2625 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 2626 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 2627 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 2628 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 2629 0x6b, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 2630 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 2631 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 0x20, 0x01, 2632 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 2633 0x22, 0xba, 0x02, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 2634 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 2635 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 2636 0x41, 0x21, 0x0a, 0x1f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 2637 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x65, 0x79, 0x52, 2638 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 2639 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 2640 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 2641 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 2642 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 2643 0x6e, 0x12, 0x5d, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x69, 0x65, 2644 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2645 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 2646 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 2647 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x56, 2648 0x69, 0x65, 0x77, 0x52, 0x0b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x56, 0x69, 0x65, 0x77, 2649 0x12, 0x1b, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 2650 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1e, 0x0a, 2651 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 2652 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x22, 0xb4, 0x02, 2653 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 2654 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 2655 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 2656 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 2657 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 2658 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 2659 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 2660 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 2661 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 2662 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 2663 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x4e, 0x0a, 0x04, 0x76, 0x69, 0x65, 0x77, 0x18, 2664 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2665 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 2666 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x72, 0x79, 2667 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x56, 0x69, 0x65, 2668 0x77, 0x52, 0x04, 0x76, 0x69, 0x65, 0x77, 0x12, 0x1b, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 2669 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x66, 0x69, 2670 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 2671 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x6f, 0x72, 0x64, 2672 0x65, 0x72, 0x42, 0x79, 0x22, 0xdb, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x70, 2673 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 2674 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 2675 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 2676 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 2677 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 2678 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 2679 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 2680 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 2681 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 2682 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 2683 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 2684 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x08, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x05, 2685 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x6f, 0x72, 0x64, 0x65, 0x72, 2686 0x42, 0x79, 0x22, 0x98, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x52, 0x69, 2687 0x6e, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x09, 0x6b, 2688 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 2689 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 2690 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x6b, 0x65, 2691 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 2692 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 2693 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 2694 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 2695 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xa0, 0x01, 2696 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 2697 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x63, 0x72, 0x79, 0x70, 2698 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 2699 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 2700 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x0a, 0x63, 2701 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 2702 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 2703 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 2704 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 2705 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 2706 0x22, 0xbd, 0x01, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 2707 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 2708 0x73, 0x65, 0x12, 0x55, 0x0a, 0x13, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 2709 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 2710 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 2711 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 2712 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 2713 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 2714 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 2715 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 2716 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 2717 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 2718 0x22, 0xa0, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 2719 0x6f, 0x62, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x69, 2720 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x6a, 0x6f, 0x62, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 2721 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 2722 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 2723 0x52, 0x0a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x73, 0x12, 0x26, 0x0a, 0x0f, 2724 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 2725 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 2726 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 2727 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 2728 0x69, 0x7a, 0x65, 0x22, 0x50, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 2729 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3b, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 2730 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 2731 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 2732 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 2733 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x54, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x72, 0x79, 0x70, 2734 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 2735 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 2736 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 2737 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 2738 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x62, 0x0a, 0x1a, 0x47, 2739 0x65, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 2740 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 2741 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 2742 0x28, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2743 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 2744 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 2745 0x5b, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x52, 2746 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 2747 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 0x63, 0x6c, 2748 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 2749 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 2750 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x54, 0x0a, 0x13, 2751 0x47, 0x65, 0x74, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 2752 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 2753 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2754 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 2755 0x6f, 0x6d, 0x2f, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x52, 0x04, 0x6e, 0x61, 2756 0x6d, 0x65, 0x22, 0xbc, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 2757 0x52, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 2758 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 2759 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x67, 2760 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4c, 0x6f, 2761 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x23, 2762 0x0a, 0x0b, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 2763 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 2764 0x67, 0x49, 0x64, 0x12, 0x3c, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x18, 2765 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2766 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4b, 0x65, 0x79, 0x52, 2767 0x69, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 2768 0x67, 0x22, 0x89, 0x02, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 2769 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 2770 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 2771 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 2772 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x65, 2773 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x27, 0x0a, 2774 0x0d, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 2775 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x63, 0x72, 0x79, 0x70, 0x74, 2776 0x6f, 0x4b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x0a, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 2777 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 2778 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 2779 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 2780 0x09, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x12, 0x41, 0x0a, 0x1d, 0x73, 0x6b, 2781 0x69, 0x70, 0x5f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 2782 0x6f, 0x6e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 2783 0x08, 0x52, 0x1a, 0x73, 0x6b, 0x69, 0x70, 0x49, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x56, 0x65, 2784 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xbc, 0x01, 2785 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 2786 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 2787 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 2788 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 2789 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 2790 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 2791 0x6e, 0x74, 0x12, 0x58, 0x0a, 0x12, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 2792 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 2793 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 2794 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 2795 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x10, 0x63, 0x72, 0x79, 0x70, 2796 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xb3, 0x02, 0x0a, 2797 0x1d, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 2798 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 2799 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 2800 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 2801 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 2802 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 2803 0x74, 0x12, 0x62, 0x0a, 0x09, 0x61, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x18, 0x02, 2804 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 2805 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 2806 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x72, 0x79, 0x70, 2807 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x67, 0x6f, 2808 0x72, 0x69, 0x74, 0x68, 0x6d, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x61, 0x6c, 0x67, 0x6f, 2809 0x72, 0x69, 0x74, 0x68, 0x6d, 0x12, 0x22, 0x0a, 0x0a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 2810 0x6a, 0x6f, 0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 2811 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x12, 0x2f, 0x0a, 0x13, 0x72, 0x73, 0x61, 2812 0x5f, 0x61, 0x65, 0x73, 0x5f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 2813 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x10, 0x72, 0x73, 0x61, 0x41, 0x65, 0x73, 2814 0x57, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x42, 0x16, 0x0a, 0x14, 0x77, 0x72, 2815 0x61, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 2816 0x61, 0x6c, 0x22, 0xc6, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x70, 2817 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 2818 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 2819 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 2820 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 2821 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x27, 2822 0x0a, 0x0d, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 2823 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x69, 0x6d, 0x70, 0x6f, 2824 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x0a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 2825 0x74, 0x5f, 0x6a, 0x6f, 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 2826 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 2827 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x42, 0x03, 0xe0, 0x41, 0x02, 2828 0x52, 0x09, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x22, 0x9e, 0x01, 0x0a, 0x16, 2829 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 2830 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x0a, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 2831 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 2832 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 2833 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 2834 0x09, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 2835 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 2836 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 2837 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x02, 2838 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xbb, 0x01, 0x0a, 2839 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 2840 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x58, 2841 0x0a, 0x12, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x65, 0x72, 2842 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 2843 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 2844 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 2845 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x10, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 2846 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 2847 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 2848 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 2849 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 2850 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xdb, 0x02, 0x0a, 0x0e, 0x45, 2851 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 2852 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x09, 0xe0, 0x41, 0x02, 2853 0xfa, 0x41, 0x03, 0x0a, 0x01, 0x2a, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x09, 2854 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x42, 2855 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 2856 0x47, 0x0a, 0x1d, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x75, 2857 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 2858 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x1b, 0x61, 0x64, 0x64, 2859 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 2860 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4b, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x69, 2861 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x07, 0x20, 0x01, 2862 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 2863 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 2864 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x43, 2865 0x72, 0x63, 0x33, 0x32, 0x63, 0x12, 0x71, 0x0a, 0x24, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 2866 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 2867 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x08, 0x20, 2868 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 2869 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 2870 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 2871 0x6c, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 2872 0x74, 0x61, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x22, 0xff, 0x02, 0x0a, 0x0e, 0x44, 0x65, 0x63, 2873 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 2874 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 2875 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2876 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 2877 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0a, 0x63, 0x69, 2878 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 2879 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x12, 2880 0x47, 0x0a, 0x1d, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x75, 2881 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 2882 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x1b, 0x61, 0x64, 0x64, 2883 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 2884 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4d, 0x0a, 0x11, 0x63, 0x69, 0x70, 0x68, 2885 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x05, 0x20, 2886 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 2887 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 2888 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x10, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 2889 0x74, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x12, 0x71, 0x0a, 0x24, 0x61, 0x64, 0x64, 0x69, 0x74, 2890 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 2891 0x74, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 2892 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 2893 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 2894 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x21, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 2895 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 2896 0x44, 0x61, 0x74, 0x61, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x22, 0xde, 0x01, 0x0a, 0x15, 0x41, 2897 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x71, 2898 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 2899 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 0x63, 0x6c, 0x6f, 0x75, 2900 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 2901 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 2902 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x64, 0x69, 2903 0x67, 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 2904 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 2905 0x2e, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x64, 0x69, 2906 0x67, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x0d, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x63, 2907 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 2908 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 2909 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x64, 2910 0x69, 0x67, 0x65, 0x73, 0x74, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x22, 0xd4, 0x01, 0x0a, 0x18, 2911 0x41, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 2912 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 2913 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 2914 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 2915 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 2916 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 2917 0x0a, 0x0a, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 2918 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 2919 0x65, 0x78, 0x74, 0x12, 0x4d, 0x0a, 0x11, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 2920 0x74, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 2921 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 2922 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 2923 0x52, 0x10, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x43, 0x72, 0x63, 0x33, 2924 0x32, 0x63, 0x22, 0x77, 0x0a, 0x0f, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x73, 2925 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 2926 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 2927 0x65, 0x78, 0x74, 0x12, 0x46, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 2928 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 2929 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 2930 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x69, 2931 0x6e, 0x74, 0x65, 0x78, 0x74, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x22, 0xad, 0x02, 0x0a, 0x0f, 2932 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 2933 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 2934 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 2935 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 2936 0x65, 0x78, 0x74, 0x12, 0x48, 0x0a, 0x11, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 2937 0x74, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 2938 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 2939 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x10, 0x63, 0x69, 0x70, 2940 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x12, 0x3a, 0x0a, 2941 0x19, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 2942 0x65, 0x78, 0x74, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 2943 0x52, 0x17, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x69, 0x6e, 0x74, 2944 0x65, 0x78, 0x74, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x12, 0x60, 0x0a, 0x2d, 0x76, 0x65, 0x72, 2945 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 2946 0x5f, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x64, 2947 0x61, 0x74, 0x61, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 2948 0x52, 0x29, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 2949 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x65, 2950 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x22, 0xc8, 0x01, 0x0a, 0x16, 2951 0x41, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 2952 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 2953 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 2954 0x74, 0x75, 0x72, 0x65, 0x12, 0x46, 0x0a, 0x10, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 2955 0x65, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 2956 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 2957 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x73, 0x69, 0x67, 2958 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x12, 0x34, 0x0a, 0x16, 2959 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x5f, 2960 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x76, 0x65, 2961 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x44, 0x69, 0x67, 0x65, 0x73, 0x74, 0x43, 0x72, 0x63, 0x33, 2962 0x32, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 2963 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xbf, 0x01, 0x0a, 0x19, 0x41, 0x73, 0x79, 0x6d, 0x6d, 2964 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 2965 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 2966 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 2967 0x78, 0x74, 0x12, 0x46, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 2968 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 2969 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 2970 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x70, 0x6c, 0x61, 0x69, 0x6e, 2971 0x74, 0x65, 0x78, 0x74, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x12, 0x3c, 0x0a, 0x1a, 0x76, 0x65, 2972 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 2973 0x74, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 2974 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x43, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 2975 0x78, 0x74, 0x43, 0x72, 0x63, 0x33, 0x32, 0x63, 0x22, 0x9d, 0x01, 0x0a, 0x24, 0x55, 0x70, 0x64, 2976 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x50, 0x72, 0x69, 0x6d, 2977 0x61, 0x72, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 2978 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 2979 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 2980 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 2981 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 2982 0x12, 0x36, 0x0a, 0x15, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 2983 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 2984 0x03, 0xe0, 0x41, 0x02, 0x52, 0x12, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 2985 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x66, 0x0a, 0x1e, 0x44, 0x65, 0x73, 0x74, 2986 0x72, 0x6f, 0x79, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 2987 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 2988 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 2989 0x0a, 0x28, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2990 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 2991 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 2992 0x22, 0x66, 0x0a, 0x1e, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 2993 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 2994 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 2995 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 2996 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 2997 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 2998 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x60, 0x0a, 0x06, 0x44, 0x69, 0x67, 0x65, 2999 0x73, 0x74, 0x12, 0x18, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x18, 0x01, 0x20, 0x01, 3000 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x12, 0x18, 0x0a, 0x06, 3001 0x73, 0x68, 0x61, 0x33, 0x38, 0x34, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 3002 0x73, 0x68, 0x61, 0x33, 0x38, 0x34, 0x12, 0x18, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x35, 0x31, 0x32, 3003 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x73, 0x68, 0x61, 0x35, 0x31, 0x32, 3004 0x42, 0x08, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x22, 0x5c, 0x0a, 0x10, 0x4c, 0x6f, 3005 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 3006 0x0a, 0x0d, 0x68, 0x73, 0x6d, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 3007 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x68, 0x73, 0x6d, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 3008 0x62, 0x6c, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6b, 0x6d, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 3009 0x61, 0x62, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x65, 0x6b, 0x6d, 0x41, 3010 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x32, 0x86, 0x26, 0x0a, 0x14, 0x4b, 0x65, 0x79, 3011 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 3012 0x65, 0x12, 0xa2, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 3013 0x67, 0x73, 0x12, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3014 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 3015 0x52, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x67, 3016 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 3017 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x52, 3018 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2e, 0x12, 3019 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 3020 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 3021 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0xda, 0x41, 0x06, 3022 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xb5, 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x43, 3023 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3024 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 3025 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 3026 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3027 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 3028 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 3029 0x73, 0x65, 0x22, 0x4a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3b, 0x12, 0x39, 0x2f, 0x76, 0x31, 0x2f, 3030 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 3031 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 3032 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 3033 0x6f, 0x4b, 0x65, 0x79, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xde, 3034 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 3035 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3036 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 3037 0x69, 0x73, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 3038 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 3039 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 3040 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 3041 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 3042 0x5e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4f, 0x12, 0x4d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 3043 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 3044 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 3045 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 3046 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 3047 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 3048 0xb5, 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 3049 0x62, 0x73, 0x12, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 3050 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x70, 3051 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 3052 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 3053 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 3054 0x6f, 0x62, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4a, 0x82, 0xd3, 0xe4, 3055 0x93, 0x02, 0x3b, 0x12, 0x39, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 3056 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 3057 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 3058 0x2f, 0x2a, 0x7d, 0x2f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x73, 0xda, 0x41, 3059 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x8f, 0x01, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x4b, 3060 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3061 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 3062 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 3063 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 3064 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x22, 0x3b, 0x82, 0xd3, 3065 0xe4, 0x93, 0x02, 0x2e, 0x12, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 3066 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 3067 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 3068 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xa2, 0x01, 0x0a, 0x0c, 0x47, 0x65, 3069 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 3070 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 3071 0x2e, 0x47, 0x65, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 3072 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 3073 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 3074 0x6f, 0x4b, 0x65, 0x79, 0x22, 0x48, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3b, 0x12, 0x39, 0x2f, 0x76, 3075 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 3076 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 3077 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 3078 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xcb, 3079 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 3080 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3081 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 3082 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 3083 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3084 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 3085 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x5c, 3086 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4f, 0x12, 0x4d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 3087 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 3088 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 3089 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 3090 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 3091 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xc0, 0x01, 0x0a, 3092 0x0c, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x2e, 3093 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 3094 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 3095 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3096 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 3097 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x22, 0x66, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x59, 0x12, 3098 0x57, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 3099 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 3100 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 3101 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 3102 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x70, 3103 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 3104 0xa2, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 3105 0x12, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 3106 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 3107 0x4a, 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 3108 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 3109 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x22, 0x48, 0x82, 0xd3, 0xe4, 0x93, 3110 0x02, 0x3b, 0x12, 0x39, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 3111 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 3112 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 3113 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 3114 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xb6, 0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 3115 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3116 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 3117 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 3118 0x74, 0x1a, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3119 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x22, 3120 0x5c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x38, 0x22, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 3121 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 3122 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6b, 0x65, 0x79, 3123 0x52, 0x69, 0x6e, 0x67, 0x73, 0x3a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0xda, 3124 0x41, 0x1b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 3125 0x67, 0x5f, 0x69, 0x64, 0x2c, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x12, 0xcf, 0x01, 3126 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 3127 0x79, 0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3128 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x72, 3129 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 3130 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 3131 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x22, 0x6f, 3132 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x22, 0x39, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 3133 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 3134 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 3135 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 3136 0x73, 0x3a, 0x0a, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0xda, 0x41, 0x1f, 3137 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 3138 0x79, 0x5f, 0x69, 0x64, 0x2c, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x12, 3139 0xfb, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 3140 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 3141 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 3142 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 3143 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 3144 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 3145 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 3146 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x85, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x63, 0x22, 0x4d, 3147 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 3148 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 3149 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 3150 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x72, 0x79, 0x70, 3151 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x12, 0x63, 3152 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 3153 0x6e, 0xda, 0x41, 0x19, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x63, 0x72, 0x79, 0x70, 0x74, 3154 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0xd4, 0x01, 3155 0x0a, 0x16, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 3156 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3157 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x49, 3158 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 3159 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 3160 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 3161 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 3162 0x69, 0x6f, 0x6e, 0x22, 0x5f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x59, 0x22, 0x54, 0x2f, 0x76, 0x31, 3163 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 3164 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 3165 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 3166 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 3167 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 3168 0x74, 0x3a, 0x01, 0x2a, 0x12, 0xcf, 0x01, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 3169 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3170 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 3171 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x52, 0x65, 3172 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3173 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 3174 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x22, 0x6f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x22, 0x39, 0x2f, 3175 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 3176 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 3177 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x69, 0x6d, 3178 0x70, 0x6f, 0x72, 0x74, 0x4a, 0x6f, 0x62, 0x73, 0x3a, 0x0a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 3179 0x5f, 0x6a, 0x6f, 0x62, 0xda, 0x41, 0x1f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x69, 0x6d, 3180 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x2c, 0x69, 0x6d, 0x70, 0x6f, 3181 0x72, 0x74, 0x5f, 0x6a, 0x6f, 0x62, 0x12, 0xd1, 0x01, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 3182 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 3183 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 3184 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 3185 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3186 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 3187 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x22, 0x71, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x52, 0x32, 3188 0x44, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 3189 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 3190 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 3191 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 3192 0x79, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0a, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 3193 0x79, 0xda, 0x41, 0x16, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x2c, 0x75, 3194 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x93, 0x02, 0x0a, 0x16, 0x55, 3195 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 3196 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3197 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 3198 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 3199 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 3200 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 3201 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 3202 0x22, 0x9d, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x76, 0x32, 0x60, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 3203 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 3204 0x6f, 0x6e, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 3205 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 3206 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 3207 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 3208 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x12, 0x63, 0x72, 0x79, 3209 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0xda, 3210 0x41, 0x1e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 0x65, 0x72, 3211 0x73, 0x69, 0x6f, 0x6e, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 3212 0x12, 0xb4, 0x01, 0x0a, 0x07, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x23, 0x2e, 0x67, 3213 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 3214 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 3215 0x74, 0x1a, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3216 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 3217 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x22, 3218 0x42, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 3219 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 3220 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 3221 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x2a, 0x7d, 0x3a, 0x65, 0x6e, 0x63, 0x72, 3222 0x79, 0x70, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0e, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x70, 0x6c, 3223 0x61, 0x69, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0xb4, 0x01, 0x0a, 0x07, 0x44, 0x65, 0x63, 0x72, 3224 0x79, 0x70, 0x74, 0x12, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 3225 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 3226 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3227 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 3228 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5e, 3229 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x22, 0x41, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 3230 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 3231 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 3232 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 3233 0x7d, 0x3a, 0x64, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0f, 0x6e, 3234 0x61, 0x6d, 0x65, 0x2c, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78, 0x74, 0x12, 0xe0, 3235 0x01, 0x0a, 0x0e, 0x41, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x69, 0x67, 3236 0x6e, 0x12, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3237 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 3238 0x69, 0x63, 0x53, 0x69, 0x67, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 3239 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 3240 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x69, 3241 0x67, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x75, 0x82, 0xd3, 0xe4, 0x93, 3242 0x02, 0x61, 0x22, 0x5c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 3243 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 3244 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 3245 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 3246 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 3247 0x7d, 0x3a, 0x61, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x53, 0x69, 0x67, 0x6e, 3248 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x64, 0x69, 0x67, 0x65, 0x73, 3249 0x74, 0x12, 0xf0, 0x01, 0x0a, 0x11, 0x41, 0x73, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 3250 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3251 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 3252 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 3253 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3254 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73, 0x79, 3255 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x52, 0x65, 3256 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x64, 0x22, 0x5f, 3257 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 3258 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 3259 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 3260 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 3261 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x61, 0x73, 3262 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x63, 0x72, 0x79, 0x70, 0x74, 0x3a, 3263 0x01, 0x2a, 0xda, 0x41, 0x0f, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x63, 0x69, 0x70, 0x68, 0x65, 0x72, 3264 0x74, 0x65, 0x78, 0x74, 0x12, 0xf2, 0x01, 0x0a, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 3265 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x56, 3266 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3267 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 3268 0x61, 0x74, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x50, 0x72, 0x69, 0x6d, 3269 0x61, 0x72, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 3270 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 3271 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 3272 0x79, 0x22, 0x76, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x53, 0x22, 0x4e, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 3273 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 3274 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 3275 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 3276 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x69, 0x6d, 0x61, 3277 0x72, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x1a, 0x6e, 3278 0x61, 0x6d, 0x65, 0x2c, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x76, 3279 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x12, 0xde, 0x01, 0x0a, 0x17, 0x44, 0x65, 3280 0x73, 0x74, 0x72, 0x6f, 0x79, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 3281 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 3282 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x73, 0x74, 3283 0x72, 0x6f, 0x79, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 3284 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 3285 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 3286 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 3287 0x6e, 0x22, 0x67, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x5a, 0x22, 0x55, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 3288 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 3289 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x52, 3290 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 3291 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 3292 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 3293 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xde, 0x01, 0x0a, 0x17, 0x52, 3294 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 3295 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 3296 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 3297 0x74, 0x6f, 0x72, 0x65, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 3298 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x6f, 3299 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 3300 0x31, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 0x72, 0x73, 0x69, 3301 0x6f, 0x6e, 0x22, 0x67, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x5a, 0x22, 0x55, 0x2f, 0x76, 0x31, 0x2f, 3302 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 3303 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79, 3304 0x52, 0x69, 0x6e, 0x67, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 3305 0x79, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x56, 0x65, 3306 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 3307 0x65, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x74, 0xca, 0x41, 0x17, 3308 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 3309 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x57, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 3310 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 3311 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 3312 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 3313 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 3314 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 3315 0x73, 0x42, 0x8c, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 3316 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6b, 0x6d, 0x73, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x4b, 3317 0x6d, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x36, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 3318 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 3319 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 3320 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x6b, 0x6d, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x6b, 0x6d, 3321 0x73, 0xf8, 0x01, 0x01, 0xaa, 0x02, 0x13, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 3322 0x6f, 0x75, 0x64, 0x2e, 0x4b, 0x6d, 0x73, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x13, 0x47, 0x6f, 0x6f, 3323 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x4b, 0x6d, 0x73, 0x5c, 0x56, 0x31, 3324 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 3325} 3326 3327var ( 3328 file_google_cloud_kms_v1_service_proto_rawDescOnce sync.Once 3329 file_google_cloud_kms_v1_service_proto_rawDescData = file_google_cloud_kms_v1_service_proto_rawDesc 3330) 3331 3332func file_google_cloud_kms_v1_service_proto_rawDescGZIP() []byte { 3333 file_google_cloud_kms_v1_service_proto_rawDescOnce.Do(func() { 3334 file_google_cloud_kms_v1_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_kms_v1_service_proto_rawDescData) 3335 }) 3336 return file_google_cloud_kms_v1_service_proto_rawDescData 3337} 3338 3339var file_google_cloud_kms_v1_service_proto_msgTypes = make([]protoimpl.MessageInfo, 33) 3340var file_google_cloud_kms_v1_service_proto_goTypes = []interface{}{ 3341 (*ListKeyRingsRequest)(nil), // 0: google.cloud.kms.v1.ListKeyRingsRequest 3342 (*ListCryptoKeysRequest)(nil), // 1: google.cloud.kms.v1.ListCryptoKeysRequest 3343 (*ListCryptoKeyVersionsRequest)(nil), // 2: google.cloud.kms.v1.ListCryptoKeyVersionsRequest 3344 (*ListImportJobsRequest)(nil), // 3: google.cloud.kms.v1.ListImportJobsRequest 3345 (*ListKeyRingsResponse)(nil), // 4: google.cloud.kms.v1.ListKeyRingsResponse 3346 (*ListCryptoKeysResponse)(nil), // 5: google.cloud.kms.v1.ListCryptoKeysResponse 3347 (*ListCryptoKeyVersionsResponse)(nil), // 6: google.cloud.kms.v1.ListCryptoKeyVersionsResponse 3348 (*ListImportJobsResponse)(nil), // 7: google.cloud.kms.v1.ListImportJobsResponse 3349 (*GetKeyRingRequest)(nil), // 8: google.cloud.kms.v1.GetKeyRingRequest 3350 (*GetCryptoKeyRequest)(nil), // 9: google.cloud.kms.v1.GetCryptoKeyRequest 3351 (*GetCryptoKeyVersionRequest)(nil), // 10: google.cloud.kms.v1.GetCryptoKeyVersionRequest 3352 (*GetPublicKeyRequest)(nil), // 11: google.cloud.kms.v1.GetPublicKeyRequest 3353 (*GetImportJobRequest)(nil), // 12: google.cloud.kms.v1.GetImportJobRequest 3354 (*CreateKeyRingRequest)(nil), // 13: google.cloud.kms.v1.CreateKeyRingRequest 3355 (*CreateCryptoKeyRequest)(nil), // 14: google.cloud.kms.v1.CreateCryptoKeyRequest 3356 (*CreateCryptoKeyVersionRequest)(nil), // 15: google.cloud.kms.v1.CreateCryptoKeyVersionRequest 3357 (*ImportCryptoKeyVersionRequest)(nil), // 16: google.cloud.kms.v1.ImportCryptoKeyVersionRequest 3358 (*CreateImportJobRequest)(nil), // 17: google.cloud.kms.v1.CreateImportJobRequest 3359 (*UpdateCryptoKeyRequest)(nil), // 18: google.cloud.kms.v1.UpdateCryptoKeyRequest 3360 (*UpdateCryptoKeyVersionRequest)(nil), // 19: google.cloud.kms.v1.UpdateCryptoKeyVersionRequest 3361 (*EncryptRequest)(nil), // 20: google.cloud.kms.v1.EncryptRequest 3362 (*DecryptRequest)(nil), // 21: google.cloud.kms.v1.DecryptRequest 3363 (*AsymmetricSignRequest)(nil), // 22: google.cloud.kms.v1.AsymmetricSignRequest 3364 (*AsymmetricDecryptRequest)(nil), // 23: google.cloud.kms.v1.AsymmetricDecryptRequest 3365 (*DecryptResponse)(nil), // 24: google.cloud.kms.v1.DecryptResponse 3366 (*EncryptResponse)(nil), // 25: google.cloud.kms.v1.EncryptResponse 3367 (*AsymmetricSignResponse)(nil), // 26: google.cloud.kms.v1.AsymmetricSignResponse 3368 (*AsymmetricDecryptResponse)(nil), // 27: google.cloud.kms.v1.AsymmetricDecryptResponse 3369 (*UpdateCryptoKeyPrimaryVersionRequest)(nil), // 28: google.cloud.kms.v1.UpdateCryptoKeyPrimaryVersionRequest 3370 (*DestroyCryptoKeyVersionRequest)(nil), // 29: google.cloud.kms.v1.DestroyCryptoKeyVersionRequest 3371 (*RestoreCryptoKeyVersionRequest)(nil), // 30: google.cloud.kms.v1.RestoreCryptoKeyVersionRequest 3372 (*Digest)(nil), // 31: google.cloud.kms.v1.Digest 3373 (*LocationMetadata)(nil), // 32: google.cloud.kms.v1.LocationMetadata 3374 (CryptoKeyVersion_CryptoKeyVersionView)(0), // 33: google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionView 3375 (*KeyRing)(nil), // 34: google.cloud.kms.v1.KeyRing 3376 (*CryptoKey)(nil), // 35: google.cloud.kms.v1.CryptoKey 3377 (*CryptoKeyVersion)(nil), // 36: google.cloud.kms.v1.CryptoKeyVersion 3378 (*ImportJob)(nil), // 37: google.cloud.kms.v1.ImportJob 3379 (CryptoKeyVersion_CryptoKeyVersionAlgorithm)(0), // 38: google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm 3380 (*fieldmaskpb.FieldMask)(nil), // 39: google.protobuf.FieldMask 3381 (*wrapperspb.Int64Value)(nil), // 40: google.protobuf.Int64Value 3382 (*PublicKey)(nil), // 41: google.cloud.kms.v1.PublicKey 3383} 3384var file_google_cloud_kms_v1_service_proto_depIdxs = []int32{ 3385 33, // 0: google.cloud.kms.v1.ListCryptoKeysRequest.version_view:type_name -> google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionView 3386 33, // 1: google.cloud.kms.v1.ListCryptoKeyVersionsRequest.view:type_name -> google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionView 3387 34, // 2: google.cloud.kms.v1.ListKeyRingsResponse.key_rings:type_name -> google.cloud.kms.v1.KeyRing 3388 35, // 3: google.cloud.kms.v1.ListCryptoKeysResponse.crypto_keys:type_name -> google.cloud.kms.v1.CryptoKey 3389 36, // 4: google.cloud.kms.v1.ListCryptoKeyVersionsResponse.crypto_key_versions:type_name -> google.cloud.kms.v1.CryptoKeyVersion 3390 37, // 5: google.cloud.kms.v1.ListImportJobsResponse.import_jobs:type_name -> google.cloud.kms.v1.ImportJob 3391 34, // 6: google.cloud.kms.v1.CreateKeyRingRequest.key_ring:type_name -> google.cloud.kms.v1.KeyRing 3392 35, // 7: google.cloud.kms.v1.CreateCryptoKeyRequest.crypto_key:type_name -> google.cloud.kms.v1.CryptoKey 3393 36, // 8: google.cloud.kms.v1.CreateCryptoKeyVersionRequest.crypto_key_version:type_name -> google.cloud.kms.v1.CryptoKeyVersion 3394 38, // 9: google.cloud.kms.v1.ImportCryptoKeyVersionRequest.algorithm:type_name -> google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm 3395 37, // 10: google.cloud.kms.v1.CreateImportJobRequest.import_job:type_name -> google.cloud.kms.v1.ImportJob 3396 35, // 11: google.cloud.kms.v1.UpdateCryptoKeyRequest.crypto_key:type_name -> google.cloud.kms.v1.CryptoKey 3397 39, // 12: google.cloud.kms.v1.UpdateCryptoKeyRequest.update_mask:type_name -> google.protobuf.FieldMask 3398 36, // 13: google.cloud.kms.v1.UpdateCryptoKeyVersionRequest.crypto_key_version:type_name -> google.cloud.kms.v1.CryptoKeyVersion 3399 39, // 14: google.cloud.kms.v1.UpdateCryptoKeyVersionRequest.update_mask:type_name -> google.protobuf.FieldMask 3400 40, // 15: google.cloud.kms.v1.EncryptRequest.plaintext_crc32c:type_name -> google.protobuf.Int64Value 3401 40, // 16: google.cloud.kms.v1.EncryptRequest.additional_authenticated_data_crc32c:type_name -> google.protobuf.Int64Value 3402 40, // 17: google.cloud.kms.v1.DecryptRequest.ciphertext_crc32c:type_name -> google.protobuf.Int64Value 3403 40, // 18: google.cloud.kms.v1.DecryptRequest.additional_authenticated_data_crc32c:type_name -> google.protobuf.Int64Value 3404 31, // 19: google.cloud.kms.v1.AsymmetricSignRequest.digest:type_name -> google.cloud.kms.v1.Digest 3405 40, // 20: google.cloud.kms.v1.AsymmetricSignRequest.digest_crc32c:type_name -> google.protobuf.Int64Value 3406 40, // 21: google.cloud.kms.v1.AsymmetricDecryptRequest.ciphertext_crc32c:type_name -> google.protobuf.Int64Value 3407 40, // 22: google.cloud.kms.v1.DecryptResponse.plaintext_crc32c:type_name -> google.protobuf.Int64Value 3408 40, // 23: google.cloud.kms.v1.EncryptResponse.ciphertext_crc32c:type_name -> google.protobuf.Int64Value 3409 40, // 24: google.cloud.kms.v1.AsymmetricSignResponse.signature_crc32c:type_name -> google.protobuf.Int64Value 3410 40, // 25: google.cloud.kms.v1.AsymmetricDecryptResponse.plaintext_crc32c:type_name -> google.protobuf.Int64Value 3411 0, // 26: google.cloud.kms.v1.KeyManagementService.ListKeyRings:input_type -> google.cloud.kms.v1.ListKeyRingsRequest 3412 1, // 27: google.cloud.kms.v1.KeyManagementService.ListCryptoKeys:input_type -> google.cloud.kms.v1.ListCryptoKeysRequest 3413 2, // 28: google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions:input_type -> google.cloud.kms.v1.ListCryptoKeyVersionsRequest 3414 3, // 29: google.cloud.kms.v1.KeyManagementService.ListImportJobs:input_type -> google.cloud.kms.v1.ListImportJobsRequest 3415 8, // 30: google.cloud.kms.v1.KeyManagementService.GetKeyRing:input_type -> google.cloud.kms.v1.GetKeyRingRequest 3416 9, // 31: google.cloud.kms.v1.KeyManagementService.GetCryptoKey:input_type -> google.cloud.kms.v1.GetCryptoKeyRequest 3417 10, // 32: google.cloud.kms.v1.KeyManagementService.GetCryptoKeyVersion:input_type -> google.cloud.kms.v1.GetCryptoKeyVersionRequest 3418 11, // 33: google.cloud.kms.v1.KeyManagementService.GetPublicKey:input_type -> google.cloud.kms.v1.GetPublicKeyRequest 3419 12, // 34: google.cloud.kms.v1.KeyManagementService.GetImportJob:input_type -> google.cloud.kms.v1.GetImportJobRequest 3420 13, // 35: google.cloud.kms.v1.KeyManagementService.CreateKeyRing:input_type -> google.cloud.kms.v1.CreateKeyRingRequest 3421 14, // 36: google.cloud.kms.v1.KeyManagementService.CreateCryptoKey:input_type -> google.cloud.kms.v1.CreateCryptoKeyRequest 3422 15, // 37: google.cloud.kms.v1.KeyManagementService.CreateCryptoKeyVersion:input_type -> google.cloud.kms.v1.CreateCryptoKeyVersionRequest 3423 16, // 38: google.cloud.kms.v1.KeyManagementService.ImportCryptoKeyVersion:input_type -> google.cloud.kms.v1.ImportCryptoKeyVersionRequest 3424 17, // 39: google.cloud.kms.v1.KeyManagementService.CreateImportJob:input_type -> google.cloud.kms.v1.CreateImportJobRequest 3425 18, // 40: google.cloud.kms.v1.KeyManagementService.UpdateCryptoKey:input_type -> google.cloud.kms.v1.UpdateCryptoKeyRequest 3426 19, // 41: google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyVersion:input_type -> google.cloud.kms.v1.UpdateCryptoKeyVersionRequest 3427 20, // 42: google.cloud.kms.v1.KeyManagementService.Encrypt:input_type -> google.cloud.kms.v1.EncryptRequest 3428 21, // 43: google.cloud.kms.v1.KeyManagementService.Decrypt:input_type -> google.cloud.kms.v1.DecryptRequest 3429 22, // 44: google.cloud.kms.v1.KeyManagementService.AsymmetricSign:input_type -> google.cloud.kms.v1.AsymmetricSignRequest 3430 23, // 45: google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt:input_type -> google.cloud.kms.v1.AsymmetricDecryptRequest 3431 28, // 46: google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyPrimaryVersion:input_type -> google.cloud.kms.v1.UpdateCryptoKeyPrimaryVersionRequest 3432 29, // 47: google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion:input_type -> google.cloud.kms.v1.DestroyCryptoKeyVersionRequest 3433 30, // 48: google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion:input_type -> google.cloud.kms.v1.RestoreCryptoKeyVersionRequest 3434 4, // 49: google.cloud.kms.v1.KeyManagementService.ListKeyRings:output_type -> google.cloud.kms.v1.ListKeyRingsResponse 3435 5, // 50: google.cloud.kms.v1.KeyManagementService.ListCryptoKeys:output_type -> google.cloud.kms.v1.ListCryptoKeysResponse 3436 6, // 51: google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions:output_type -> google.cloud.kms.v1.ListCryptoKeyVersionsResponse 3437 7, // 52: google.cloud.kms.v1.KeyManagementService.ListImportJobs:output_type -> google.cloud.kms.v1.ListImportJobsResponse 3438 34, // 53: google.cloud.kms.v1.KeyManagementService.GetKeyRing:output_type -> google.cloud.kms.v1.KeyRing 3439 35, // 54: google.cloud.kms.v1.KeyManagementService.GetCryptoKey:output_type -> google.cloud.kms.v1.CryptoKey 3440 36, // 55: google.cloud.kms.v1.KeyManagementService.GetCryptoKeyVersion:output_type -> google.cloud.kms.v1.CryptoKeyVersion 3441 41, // 56: google.cloud.kms.v1.KeyManagementService.GetPublicKey:output_type -> google.cloud.kms.v1.PublicKey 3442 37, // 57: google.cloud.kms.v1.KeyManagementService.GetImportJob:output_type -> google.cloud.kms.v1.ImportJob 3443 34, // 58: google.cloud.kms.v1.KeyManagementService.CreateKeyRing:output_type -> google.cloud.kms.v1.KeyRing 3444 35, // 59: google.cloud.kms.v1.KeyManagementService.CreateCryptoKey:output_type -> google.cloud.kms.v1.CryptoKey 3445 36, // 60: google.cloud.kms.v1.KeyManagementService.CreateCryptoKeyVersion:output_type -> google.cloud.kms.v1.CryptoKeyVersion 3446 36, // 61: google.cloud.kms.v1.KeyManagementService.ImportCryptoKeyVersion:output_type -> google.cloud.kms.v1.CryptoKeyVersion 3447 37, // 62: google.cloud.kms.v1.KeyManagementService.CreateImportJob:output_type -> google.cloud.kms.v1.ImportJob 3448 35, // 63: google.cloud.kms.v1.KeyManagementService.UpdateCryptoKey:output_type -> google.cloud.kms.v1.CryptoKey 3449 36, // 64: google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyVersion:output_type -> google.cloud.kms.v1.CryptoKeyVersion 3450 25, // 65: google.cloud.kms.v1.KeyManagementService.Encrypt:output_type -> google.cloud.kms.v1.EncryptResponse 3451 24, // 66: google.cloud.kms.v1.KeyManagementService.Decrypt:output_type -> google.cloud.kms.v1.DecryptResponse 3452 26, // 67: google.cloud.kms.v1.KeyManagementService.AsymmetricSign:output_type -> google.cloud.kms.v1.AsymmetricSignResponse 3453 27, // 68: google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt:output_type -> google.cloud.kms.v1.AsymmetricDecryptResponse 3454 35, // 69: google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyPrimaryVersion:output_type -> google.cloud.kms.v1.CryptoKey 3455 36, // 70: google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion:output_type -> google.cloud.kms.v1.CryptoKeyVersion 3456 36, // 71: google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion:output_type -> google.cloud.kms.v1.CryptoKeyVersion 3457 49, // [49:72] is the sub-list for method output_type 3458 26, // [26:49] is the sub-list for method input_type 3459 26, // [26:26] is the sub-list for extension type_name 3460 26, // [26:26] is the sub-list for extension extendee 3461 0, // [0:26] is the sub-list for field type_name 3462} 3463 3464func init() { file_google_cloud_kms_v1_service_proto_init() } 3465func file_google_cloud_kms_v1_service_proto_init() { 3466 if File_google_cloud_kms_v1_service_proto != nil { 3467 return 3468 } 3469 file_google_cloud_kms_v1_resources_proto_init() 3470 if !protoimpl.UnsafeEnabled { 3471 file_google_cloud_kms_v1_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 3472 switch v := v.(*ListKeyRingsRequest); i { 3473 case 0: 3474 return &v.state 3475 case 1: 3476 return &v.sizeCache 3477 case 2: 3478 return &v.unknownFields 3479 default: 3480 return nil 3481 } 3482 } 3483 file_google_cloud_kms_v1_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 3484 switch v := v.(*ListCryptoKeysRequest); i { 3485 case 0: 3486 return &v.state 3487 case 1: 3488 return &v.sizeCache 3489 case 2: 3490 return &v.unknownFields 3491 default: 3492 return nil 3493 } 3494 } 3495 file_google_cloud_kms_v1_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 3496 switch v := v.(*ListCryptoKeyVersionsRequest); i { 3497 case 0: 3498 return &v.state 3499 case 1: 3500 return &v.sizeCache 3501 case 2: 3502 return &v.unknownFields 3503 default: 3504 return nil 3505 } 3506 } 3507 file_google_cloud_kms_v1_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 3508 switch v := v.(*ListImportJobsRequest); i { 3509 case 0: 3510 return &v.state 3511 case 1: 3512 return &v.sizeCache 3513 case 2: 3514 return &v.unknownFields 3515 default: 3516 return nil 3517 } 3518 } 3519 file_google_cloud_kms_v1_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 3520 switch v := v.(*ListKeyRingsResponse); i { 3521 case 0: 3522 return &v.state 3523 case 1: 3524 return &v.sizeCache 3525 case 2: 3526 return &v.unknownFields 3527 default: 3528 return nil 3529 } 3530 } 3531 file_google_cloud_kms_v1_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 3532 switch v := v.(*ListCryptoKeysResponse); i { 3533 case 0: 3534 return &v.state 3535 case 1: 3536 return &v.sizeCache 3537 case 2: 3538 return &v.unknownFields 3539 default: 3540 return nil 3541 } 3542 } 3543 file_google_cloud_kms_v1_service_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 3544 switch v := v.(*ListCryptoKeyVersionsResponse); i { 3545 case 0: 3546 return &v.state 3547 case 1: 3548 return &v.sizeCache 3549 case 2: 3550 return &v.unknownFields 3551 default: 3552 return nil 3553 } 3554 } 3555 file_google_cloud_kms_v1_service_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 3556 switch v := v.(*ListImportJobsResponse); i { 3557 case 0: 3558 return &v.state 3559 case 1: 3560 return &v.sizeCache 3561 case 2: 3562 return &v.unknownFields 3563 default: 3564 return nil 3565 } 3566 } 3567 file_google_cloud_kms_v1_service_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 3568 switch v := v.(*GetKeyRingRequest); i { 3569 case 0: 3570 return &v.state 3571 case 1: 3572 return &v.sizeCache 3573 case 2: 3574 return &v.unknownFields 3575 default: 3576 return nil 3577 } 3578 } 3579 file_google_cloud_kms_v1_service_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 3580 switch v := v.(*GetCryptoKeyRequest); i { 3581 case 0: 3582 return &v.state 3583 case 1: 3584 return &v.sizeCache 3585 case 2: 3586 return &v.unknownFields 3587 default: 3588 return nil 3589 } 3590 } 3591 file_google_cloud_kms_v1_service_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 3592 switch v := v.(*GetCryptoKeyVersionRequest); i { 3593 case 0: 3594 return &v.state 3595 case 1: 3596 return &v.sizeCache 3597 case 2: 3598 return &v.unknownFields 3599 default: 3600 return nil 3601 } 3602 } 3603 file_google_cloud_kms_v1_service_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 3604 switch v := v.(*GetPublicKeyRequest); i { 3605 case 0: 3606 return &v.state 3607 case 1: 3608 return &v.sizeCache 3609 case 2: 3610 return &v.unknownFields 3611 default: 3612 return nil 3613 } 3614 } 3615 file_google_cloud_kms_v1_service_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 3616 switch v := v.(*GetImportJobRequest); i { 3617 case 0: 3618 return &v.state 3619 case 1: 3620 return &v.sizeCache 3621 case 2: 3622 return &v.unknownFields 3623 default: 3624 return nil 3625 } 3626 } 3627 file_google_cloud_kms_v1_service_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 3628 switch v := v.(*CreateKeyRingRequest); i { 3629 case 0: 3630 return &v.state 3631 case 1: 3632 return &v.sizeCache 3633 case 2: 3634 return &v.unknownFields 3635 default: 3636 return nil 3637 } 3638 } 3639 file_google_cloud_kms_v1_service_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 3640 switch v := v.(*CreateCryptoKeyRequest); i { 3641 case 0: 3642 return &v.state 3643 case 1: 3644 return &v.sizeCache 3645 case 2: 3646 return &v.unknownFields 3647 default: 3648 return nil 3649 } 3650 } 3651 file_google_cloud_kms_v1_service_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 3652 switch v := v.(*CreateCryptoKeyVersionRequest); i { 3653 case 0: 3654 return &v.state 3655 case 1: 3656 return &v.sizeCache 3657 case 2: 3658 return &v.unknownFields 3659 default: 3660 return nil 3661 } 3662 } 3663 file_google_cloud_kms_v1_service_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 3664 switch v := v.(*ImportCryptoKeyVersionRequest); i { 3665 case 0: 3666 return &v.state 3667 case 1: 3668 return &v.sizeCache 3669 case 2: 3670 return &v.unknownFields 3671 default: 3672 return nil 3673 } 3674 } 3675 file_google_cloud_kms_v1_service_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 3676 switch v := v.(*CreateImportJobRequest); i { 3677 case 0: 3678 return &v.state 3679 case 1: 3680 return &v.sizeCache 3681 case 2: 3682 return &v.unknownFields 3683 default: 3684 return nil 3685 } 3686 } 3687 file_google_cloud_kms_v1_service_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 3688 switch v := v.(*UpdateCryptoKeyRequest); i { 3689 case 0: 3690 return &v.state 3691 case 1: 3692 return &v.sizeCache 3693 case 2: 3694 return &v.unknownFields 3695 default: 3696 return nil 3697 } 3698 } 3699 file_google_cloud_kms_v1_service_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 3700 switch v := v.(*UpdateCryptoKeyVersionRequest); i { 3701 case 0: 3702 return &v.state 3703 case 1: 3704 return &v.sizeCache 3705 case 2: 3706 return &v.unknownFields 3707 default: 3708 return nil 3709 } 3710 } 3711 file_google_cloud_kms_v1_service_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 3712 switch v := v.(*EncryptRequest); i { 3713 case 0: 3714 return &v.state 3715 case 1: 3716 return &v.sizeCache 3717 case 2: 3718 return &v.unknownFields 3719 default: 3720 return nil 3721 } 3722 } 3723 file_google_cloud_kms_v1_service_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { 3724 switch v := v.(*DecryptRequest); i { 3725 case 0: 3726 return &v.state 3727 case 1: 3728 return &v.sizeCache 3729 case 2: 3730 return &v.unknownFields 3731 default: 3732 return nil 3733 } 3734 } 3735 file_google_cloud_kms_v1_service_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { 3736 switch v := v.(*AsymmetricSignRequest); i { 3737 case 0: 3738 return &v.state 3739 case 1: 3740 return &v.sizeCache 3741 case 2: 3742 return &v.unknownFields 3743 default: 3744 return nil 3745 } 3746 } 3747 file_google_cloud_kms_v1_service_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { 3748 switch v := v.(*AsymmetricDecryptRequest); i { 3749 case 0: 3750 return &v.state 3751 case 1: 3752 return &v.sizeCache 3753 case 2: 3754 return &v.unknownFields 3755 default: 3756 return nil 3757 } 3758 } 3759 file_google_cloud_kms_v1_service_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { 3760 switch v := v.(*DecryptResponse); i { 3761 case 0: 3762 return &v.state 3763 case 1: 3764 return &v.sizeCache 3765 case 2: 3766 return &v.unknownFields 3767 default: 3768 return nil 3769 } 3770 } 3771 file_google_cloud_kms_v1_service_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { 3772 switch v := v.(*EncryptResponse); i { 3773 case 0: 3774 return &v.state 3775 case 1: 3776 return &v.sizeCache 3777 case 2: 3778 return &v.unknownFields 3779 default: 3780 return nil 3781 } 3782 } 3783 file_google_cloud_kms_v1_service_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { 3784 switch v := v.(*AsymmetricSignResponse); i { 3785 case 0: 3786 return &v.state 3787 case 1: 3788 return &v.sizeCache 3789 case 2: 3790 return &v.unknownFields 3791 default: 3792 return nil 3793 } 3794 } 3795 file_google_cloud_kms_v1_service_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { 3796 switch v := v.(*AsymmetricDecryptResponse); i { 3797 case 0: 3798 return &v.state 3799 case 1: 3800 return &v.sizeCache 3801 case 2: 3802 return &v.unknownFields 3803 default: 3804 return nil 3805 } 3806 } 3807 file_google_cloud_kms_v1_service_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { 3808 switch v := v.(*UpdateCryptoKeyPrimaryVersionRequest); i { 3809 case 0: 3810 return &v.state 3811 case 1: 3812 return &v.sizeCache 3813 case 2: 3814 return &v.unknownFields 3815 default: 3816 return nil 3817 } 3818 } 3819 file_google_cloud_kms_v1_service_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { 3820 switch v := v.(*DestroyCryptoKeyVersionRequest); i { 3821 case 0: 3822 return &v.state 3823 case 1: 3824 return &v.sizeCache 3825 case 2: 3826 return &v.unknownFields 3827 default: 3828 return nil 3829 } 3830 } 3831 file_google_cloud_kms_v1_service_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { 3832 switch v := v.(*RestoreCryptoKeyVersionRequest); i { 3833 case 0: 3834 return &v.state 3835 case 1: 3836 return &v.sizeCache 3837 case 2: 3838 return &v.unknownFields 3839 default: 3840 return nil 3841 } 3842 } 3843 file_google_cloud_kms_v1_service_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { 3844 switch v := v.(*Digest); i { 3845 case 0: 3846 return &v.state 3847 case 1: 3848 return &v.sizeCache 3849 case 2: 3850 return &v.unknownFields 3851 default: 3852 return nil 3853 } 3854 } 3855 file_google_cloud_kms_v1_service_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { 3856 switch v := v.(*LocationMetadata); i { 3857 case 0: 3858 return &v.state 3859 case 1: 3860 return &v.sizeCache 3861 case 2: 3862 return &v.unknownFields 3863 default: 3864 return nil 3865 } 3866 } 3867 } 3868 file_google_cloud_kms_v1_service_proto_msgTypes[16].OneofWrappers = []interface{}{ 3869 (*ImportCryptoKeyVersionRequest_RsaAesWrappedKey)(nil), 3870 } 3871 file_google_cloud_kms_v1_service_proto_msgTypes[31].OneofWrappers = []interface{}{ 3872 (*Digest_Sha256)(nil), 3873 (*Digest_Sha384)(nil), 3874 (*Digest_Sha512)(nil), 3875 } 3876 type x struct{} 3877 out := protoimpl.TypeBuilder{ 3878 File: protoimpl.DescBuilder{ 3879 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 3880 RawDescriptor: file_google_cloud_kms_v1_service_proto_rawDesc, 3881 NumEnums: 0, 3882 NumMessages: 33, 3883 NumExtensions: 0, 3884 NumServices: 1, 3885 }, 3886 GoTypes: file_google_cloud_kms_v1_service_proto_goTypes, 3887 DependencyIndexes: file_google_cloud_kms_v1_service_proto_depIdxs, 3888 MessageInfos: file_google_cloud_kms_v1_service_proto_msgTypes, 3889 }.Build() 3890 File_google_cloud_kms_v1_service_proto = out.File 3891 file_google_cloud_kms_v1_service_proto_rawDesc = nil 3892 file_google_cloud_kms_v1_service_proto_goTypes = nil 3893 file_google_cloud_kms_v1_service_proto_depIdxs = nil 3894} 3895 3896// Reference imports to suppress errors if they are not otherwise used. 3897var _ context.Context 3898var _ grpc.ClientConnInterface 3899 3900// This is a compile-time assertion to ensure that this generated file 3901// is compatible with the grpc package it is being compiled against. 3902const _ = grpc.SupportPackageIsVersion6 3903 3904// KeyManagementServiceClient is the client API for KeyManagementService service. 3905// 3906// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 3907type KeyManagementServiceClient interface { 3908 // Lists [KeyRings][google.cloud.kms.v1.KeyRing]. 3909 ListKeyRings(ctx context.Context, in *ListKeyRingsRequest, opts ...grpc.CallOption) (*ListKeyRingsResponse, error) 3910 // Lists [CryptoKeys][google.cloud.kms.v1.CryptoKey]. 3911 ListCryptoKeys(ctx context.Context, in *ListCryptoKeysRequest, opts ...grpc.CallOption) (*ListCryptoKeysResponse, error) 3912 // Lists [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion]. 3913 ListCryptoKeyVersions(ctx context.Context, in *ListCryptoKeyVersionsRequest, opts ...grpc.CallOption) (*ListCryptoKeyVersionsResponse, error) 3914 // Lists [ImportJobs][google.cloud.kms.v1.ImportJob]. 3915 ListImportJobs(ctx context.Context, in *ListImportJobsRequest, opts ...grpc.CallOption) (*ListImportJobsResponse, error) 3916 // Returns metadata for a given [KeyRing][google.cloud.kms.v1.KeyRing]. 3917 GetKeyRing(ctx context.Context, in *GetKeyRingRequest, opts ...grpc.CallOption) (*KeyRing, error) 3918 // Returns metadata for a given [CryptoKey][google.cloud.kms.v1.CryptoKey], as well as its 3919 // [primary][google.cloud.kms.v1.CryptoKey.primary] [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. 3920 GetCryptoKey(ctx context.Context, in *GetCryptoKeyRequest, opts ...grpc.CallOption) (*CryptoKey, error) 3921 // Returns metadata for a given [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. 3922 GetCryptoKeyVersion(ctx context.Context, in *GetCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) 3923 // Returns the public key for the given [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. The 3924 // [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] must be 3925 // [ASYMMETRIC_SIGN][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ASYMMETRIC_SIGN] or 3926 // [ASYMMETRIC_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ASYMMETRIC_DECRYPT]. 3927 GetPublicKey(ctx context.Context, in *GetPublicKeyRequest, opts ...grpc.CallOption) (*PublicKey, error) 3928 // Returns metadata for a given [ImportJob][google.cloud.kms.v1.ImportJob]. 3929 GetImportJob(ctx context.Context, in *GetImportJobRequest, opts ...grpc.CallOption) (*ImportJob, error) 3930 // Create a new [KeyRing][google.cloud.kms.v1.KeyRing] in a given Project and Location. 3931 CreateKeyRing(ctx context.Context, in *CreateKeyRingRequest, opts ...grpc.CallOption) (*KeyRing, error) 3932 // Create a new [CryptoKey][google.cloud.kms.v1.CryptoKey] within a [KeyRing][google.cloud.kms.v1.KeyRing]. 3933 // 3934 // [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] and 3935 // [CryptoKey.version_template.algorithm][google.cloud.kms.v1.CryptoKeyVersionTemplate.algorithm] 3936 // are required. 3937 CreateCryptoKey(ctx context.Context, in *CreateCryptoKeyRequest, opts ...grpc.CallOption) (*CryptoKey, error) 3938 // Create a new [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] in a [CryptoKey][google.cloud.kms.v1.CryptoKey]. 3939 // 3940 // The server will assign the next sequential id. If unset, 3941 // [state][google.cloud.kms.v1.CryptoKeyVersion.state] will be set to 3942 // [ENABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.ENABLED]. 3943 CreateCryptoKeyVersion(ctx context.Context, in *CreateCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) 3944 // Imports a new [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] into an existing [CryptoKey][google.cloud.kms.v1.CryptoKey] using the 3945 // wrapped key material provided in the request. 3946 // 3947 // The version ID will be assigned the next sequential id within the 3948 // [CryptoKey][google.cloud.kms.v1.CryptoKey]. 3949 ImportCryptoKeyVersion(ctx context.Context, in *ImportCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) 3950 // Create a new [ImportJob][google.cloud.kms.v1.ImportJob] within a [KeyRing][google.cloud.kms.v1.KeyRing]. 3951 // 3952 // [ImportJob.import_method][google.cloud.kms.v1.ImportJob.import_method] is required. 3953 CreateImportJob(ctx context.Context, in *CreateImportJobRequest, opts ...grpc.CallOption) (*ImportJob, error) 3954 // Update a [CryptoKey][google.cloud.kms.v1.CryptoKey]. 3955 UpdateCryptoKey(ctx context.Context, in *UpdateCryptoKeyRequest, opts ...grpc.CallOption) (*CryptoKey, error) 3956 // Update a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]'s metadata. 3957 // 3958 // [state][google.cloud.kms.v1.CryptoKeyVersion.state] may be changed between 3959 // [ENABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.ENABLED] and 3960 // [DISABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DISABLED] using this 3961 // method. See [DestroyCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion] and [RestoreCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion] to 3962 // move between other states. 3963 UpdateCryptoKeyVersion(ctx context.Context, in *UpdateCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) 3964 // Encrypts data, so that it can only be recovered by a call to [Decrypt][google.cloud.kms.v1.KeyManagementService.Decrypt]. 3965 // The [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] must be 3966 // [ENCRYPT_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ENCRYPT_DECRYPT]. 3967 Encrypt(ctx context.Context, in *EncryptRequest, opts ...grpc.CallOption) (*EncryptResponse, error) 3968 // Decrypts data that was protected by [Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. The [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] 3969 // must be [ENCRYPT_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ENCRYPT_DECRYPT]. 3970 Decrypt(ctx context.Context, in *DecryptRequest, opts ...grpc.CallOption) (*DecryptResponse, error) 3971 // Signs data using a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] with [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] 3972 // ASYMMETRIC_SIGN, producing a signature that can be verified with the public 3973 // key retrieved from [GetPublicKey][google.cloud.kms.v1.KeyManagementService.GetPublicKey]. 3974 AsymmetricSign(ctx context.Context, in *AsymmetricSignRequest, opts ...grpc.CallOption) (*AsymmetricSignResponse, error) 3975 // Decrypts data that was encrypted with a public key retrieved from 3976 // [GetPublicKey][google.cloud.kms.v1.KeyManagementService.GetPublicKey] corresponding to a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] with 3977 // [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] ASYMMETRIC_DECRYPT. 3978 AsymmetricDecrypt(ctx context.Context, in *AsymmetricDecryptRequest, opts ...grpc.CallOption) (*AsymmetricDecryptResponse, error) 3979 // Update the version of a [CryptoKey][google.cloud.kms.v1.CryptoKey] that will be used in [Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. 3980 // 3981 // Returns an error if called on a key whose purpose is not 3982 // [ENCRYPT_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ENCRYPT_DECRYPT]. 3983 UpdateCryptoKeyPrimaryVersion(ctx context.Context, in *UpdateCryptoKeyPrimaryVersionRequest, opts ...grpc.CallOption) (*CryptoKey, error) 3984 // Schedule a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] for destruction. 3985 // 3986 // Upon calling this method, [CryptoKeyVersion.state][google.cloud.kms.v1.CryptoKeyVersion.state] will be set to 3987 // [DESTROY_SCHEDULED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROY_SCHEDULED] 3988 // and [destroy_time][google.cloud.kms.v1.CryptoKeyVersion.destroy_time] will be set to a time 24 3989 // hours in the future, at which point the [state][google.cloud.kms.v1.CryptoKeyVersion.state] 3990 // will be changed to 3991 // [DESTROYED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROYED], and the key 3992 // material will be irrevocably destroyed. 3993 // 3994 // Before the [destroy_time][google.cloud.kms.v1.CryptoKeyVersion.destroy_time] is reached, 3995 // [RestoreCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion] may be called to reverse the process. 3996 DestroyCryptoKeyVersion(ctx context.Context, in *DestroyCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) 3997 // Restore a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] in the 3998 // [DESTROY_SCHEDULED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROY_SCHEDULED] 3999 // state. 4000 // 4001 // Upon restoration of the CryptoKeyVersion, [state][google.cloud.kms.v1.CryptoKeyVersion.state] 4002 // will be set to [DISABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DISABLED], 4003 // and [destroy_time][google.cloud.kms.v1.CryptoKeyVersion.destroy_time] will be cleared. 4004 RestoreCryptoKeyVersion(ctx context.Context, in *RestoreCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) 4005} 4006 4007type keyManagementServiceClient struct { 4008 cc grpc.ClientConnInterface 4009} 4010 4011func NewKeyManagementServiceClient(cc grpc.ClientConnInterface) KeyManagementServiceClient { 4012 return &keyManagementServiceClient{cc} 4013} 4014 4015func (c *keyManagementServiceClient) ListKeyRings(ctx context.Context, in *ListKeyRingsRequest, opts ...grpc.CallOption) (*ListKeyRingsResponse, error) { 4016 out := new(ListKeyRingsResponse) 4017 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/ListKeyRings", in, out, opts...) 4018 if err != nil { 4019 return nil, err 4020 } 4021 return out, nil 4022} 4023 4024func (c *keyManagementServiceClient) ListCryptoKeys(ctx context.Context, in *ListCryptoKeysRequest, opts ...grpc.CallOption) (*ListCryptoKeysResponse, error) { 4025 out := new(ListCryptoKeysResponse) 4026 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/ListCryptoKeys", in, out, opts...) 4027 if err != nil { 4028 return nil, err 4029 } 4030 return out, nil 4031} 4032 4033func (c *keyManagementServiceClient) ListCryptoKeyVersions(ctx context.Context, in *ListCryptoKeyVersionsRequest, opts ...grpc.CallOption) (*ListCryptoKeyVersionsResponse, error) { 4034 out := new(ListCryptoKeyVersionsResponse) 4035 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/ListCryptoKeyVersions", in, out, opts...) 4036 if err != nil { 4037 return nil, err 4038 } 4039 return out, nil 4040} 4041 4042func (c *keyManagementServiceClient) ListImportJobs(ctx context.Context, in *ListImportJobsRequest, opts ...grpc.CallOption) (*ListImportJobsResponse, error) { 4043 out := new(ListImportJobsResponse) 4044 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/ListImportJobs", in, out, opts...) 4045 if err != nil { 4046 return nil, err 4047 } 4048 return out, nil 4049} 4050 4051func (c *keyManagementServiceClient) GetKeyRing(ctx context.Context, in *GetKeyRingRequest, opts ...grpc.CallOption) (*KeyRing, error) { 4052 out := new(KeyRing) 4053 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/GetKeyRing", in, out, opts...) 4054 if err != nil { 4055 return nil, err 4056 } 4057 return out, nil 4058} 4059 4060func (c *keyManagementServiceClient) GetCryptoKey(ctx context.Context, in *GetCryptoKeyRequest, opts ...grpc.CallOption) (*CryptoKey, error) { 4061 out := new(CryptoKey) 4062 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/GetCryptoKey", in, out, opts...) 4063 if err != nil { 4064 return nil, err 4065 } 4066 return out, nil 4067} 4068 4069func (c *keyManagementServiceClient) GetCryptoKeyVersion(ctx context.Context, in *GetCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) { 4070 out := new(CryptoKeyVersion) 4071 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/GetCryptoKeyVersion", in, out, opts...) 4072 if err != nil { 4073 return nil, err 4074 } 4075 return out, nil 4076} 4077 4078func (c *keyManagementServiceClient) GetPublicKey(ctx context.Context, in *GetPublicKeyRequest, opts ...grpc.CallOption) (*PublicKey, error) { 4079 out := new(PublicKey) 4080 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/GetPublicKey", in, out, opts...) 4081 if err != nil { 4082 return nil, err 4083 } 4084 return out, nil 4085} 4086 4087func (c *keyManagementServiceClient) GetImportJob(ctx context.Context, in *GetImportJobRequest, opts ...grpc.CallOption) (*ImportJob, error) { 4088 out := new(ImportJob) 4089 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/GetImportJob", in, out, opts...) 4090 if err != nil { 4091 return nil, err 4092 } 4093 return out, nil 4094} 4095 4096func (c *keyManagementServiceClient) CreateKeyRing(ctx context.Context, in *CreateKeyRingRequest, opts ...grpc.CallOption) (*KeyRing, error) { 4097 out := new(KeyRing) 4098 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/CreateKeyRing", in, out, opts...) 4099 if err != nil { 4100 return nil, err 4101 } 4102 return out, nil 4103} 4104 4105func (c *keyManagementServiceClient) CreateCryptoKey(ctx context.Context, in *CreateCryptoKeyRequest, opts ...grpc.CallOption) (*CryptoKey, error) { 4106 out := new(CryptoKey) 4107 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/CreateCryptoKey", in, out, opts...) 4108 if err != nil { 4109 return nil, err 4110 } 4111 return out, nil 4112} 4113 4114func (c *keyManagementServiceClient) CreateCryptoKeyVersion(ctx context.Context, in *CreateCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) { 4115 out := new(CryptoKeyVersion) 4116 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/CreateCryptoKeyVersion", in, out, opts...) 4117 if err != nil { 4118 return nil, err 4119 } 4120 return out, nil 4121} 4122 4123func (c *keyManagementServiceClient) ImportCryptoKeyVersion(ctx context.Context, in *ImportCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) { 4124 out := new(CryptoKeyVersion) 4125 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/ImportCryptoKeyVersion", in, out, opts...) 4126 if err != nil { 4127 return nil, err 4128 } 4129 return out, nil 4130} 4131 4132func (c *keyManagementServiceClient) CreateImportJob(ctx context.Context, in *CreateImportJobRequest, opts ...grpc.CallOption) (*ImportJob, error) { 4133 out := new(ImportJob) 4134 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/CreateImportJob", in, out, opts...) 4135 if err != nil { 4136 return nil, err 4137 } 4138 return out, nil 4139} 4140 4141func (c *keyManagementServiceClient) UpdateCryptoKey(ctx context.Context, in *UpdateCryptoKeyRequest, opts ...grpc.CallOption) (*CryptoKey, error) { 4142 out := new(CryptoKey) 4143 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/UpdateCryptoKey", in, out, opts...) 4144 if err != nil { 4145 return nil, err 4146 } 4147 return out, nil 4148} 4149 4150func (c *keyManagementServiceClient) UpdateCryptoKeyVersion(ctx context.Context, in *UpdateCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) { 4151 out := new(CryptoKeyVersion) 4152 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/UpdateCryptoKeyVersion", in, out, opts...) 4153 if err != nil { 4154 return nil, err 4155 } 4156 return out, nil 4157} 4158 4159func (c *keyManagementServiceClient) Encrypt(ctx context.Context, in *EncryptRequest, opts ...grpc.CallOption) (*EncryptResponse, error) { 4160 out := new(EncryptResponse) 4161 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/Encrypt", in, out, opts...) 4162 if err != nil { 4163 return nil, err 4164 } 4165 return out, nil 4166} 4167 4168func (c *keyManagementServiceClient) Decrypt(ctx context.Context, in *DecryptRequest, opts ...grpc.CallOption) (*DecryptResponse, error) { 4169 out := new(DecryptResponse) 4170 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/Decrypt", in, out, opts...) 4171 if err != nil { 4172 return nil, err 4173 } 4174 return out, nil 4175} 4176 4177func (c *keyManagementServiceClient) AsymmetricSign(ctx context.Context, in *AsymmetricSignRequest, opts ...grpc.CallOption) (*AsymmetricSignResponse, error) { 4178 out := new(AsymmetricSignResponse) 4179 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/AsymmetricSign", in, out, opts...) 4180 if err != nil { 4181 return nil, err 4182 } 4183 return out, nil 4184} 4185 4186func (c *keyManagementServiceClient) AsymmetricDecrypt(ctx context.Context, in *AsymmetricDecryptRequest, opts ...grpc.CallOption) (*AsymmetricDecryptResponse, error) { 4187 out := new(AsymmetricDecryptResponse) 4188 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/AsymmetricDecrypt", in, out, opts...) 4189 if err != nil { 4190 return nil, err 4191 } 4192 return out, nil 4193} 4194 4195func (c *keyManagementServiceClient) UpdateCryptoKeyPrimaryVersion(ctx context.Context, in *UpdateCryptoKeyPrimaryVersionRequest, opts ...grpc.CallOption) (*CryptoKey, error) { 4196 out := new(CryptoKey) 4197 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/UpdateCryptoKeyPrimaryVersion", in, out, opts...) 4198 if err != nil { 4199 return nil, err 4200 } 4201 return out, nil 4202} 4203 4204func (c *keyManagementServiceClient) DestroyCryptoKeyVersion(ctx context.Context, in *DestroyCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) { 4205 out := new(CryptoKeyVersion) 4206 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/DestroyCryptoKeyVersion", in, out, opts...) 4207 if err != nil { 4208 return nil, err 4209 } 4210 return out, nil 4211} 4212 4213func (c *keyManagementServiceClient) RestoreCryptoKeyVersion(ctx context.Context, in *RestoreCryptoKeyVersionRequest, opts ...grpc.CallOption) (*CryptoKeyVersion, error) { 4214 out := new(CryptoKeyVersion) 4215 err := c.cc.Invoke(ctx, "/google.cloud.kms.v1.KeyManagementService/RestoreCryptoKeyVersion", in, out, opts...) 4216 if err != nil { 4217 return nil, err 4218 } 4219 return out, nil 4220} 4221 4222// KeyManagementServiceServer is the server API for KeyManagementService service. 4223type KeyManagementServiceServer interface { 4224 // Lists [KeyRings][google.cloud.kms.v1.KeyRing]. 4225 ListKeyRings(context.Context, *ListKeyRingsRequest) (*ListKeyRingsResponse, error) 4226 // Lists [CryptoKeys][google.cloud.kms.v1.CryptoKey]. 4227 ListCryptoKeys(context.Context, *ListCryptoKeysRequest) (*ListCryptoKeysResponse, error) 4228 // Lists [CryptoKeyVersions][google.cloud.kms.v1.CryptoKeyVersion]. 4229 ListCryptoKeyVersions(context.Context, *ListCryptoKeyVersionsRequest) (*ListCryptoKeyVersionsResponse, error) 4230 // Lists [ImportJobs][google.cloud.kms.v1.ImportJob]. 4231 ListImportJobs(context.Context, *ListImportJobsRequest) (*ListImportJobsResponse, error) 4232 // Returns metadata for a given [KeyRing][google.cloud.kms.v1.KeyRing]. 4233 GetKeyRing(context.Context, *GetKeyRingRequest) (*KeyRing, error) 4234 // Returns metadata for a given [CryptoKey][google.cloud.kms.v1.CryptoKey], as well as its 4235 // [primary][google.cloud.kms.v1.CryptoKey.primary] [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. 4236 GetCryptoKey(context.Context, *GetCryptoKeyRequest) (*CryptoKey, error) 4237 // Returns metadata for a given [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. 4238 GetCryptoKeyVersion(context.Context, *GetCryptoKeyVersionRequest) (*CryptoKeyVersion, error) 4239 // Returns the public key for the given [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]. The 4240 // [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] must be 4241 // [ASYMMETRIC_SIGN][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ASYMMETRIC_SIGN] or 4242 // [ASYMMETRIC_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ASYMMETRIC_DECRYPT]. 4243 GetPublicKey(context.Context, *GetPublicKeyRequest) (*PublicKey, error) 4244 // Returns metadata for a given [ImportJob][google.cloud.kms.v1.ImportJob]. 4245 GetImportJob(context.Context, *GetImportJobRequest) (*ImportJob, error) 4246 // Create a new [KeyRing][google.cloud.kms.v1.KeyRing] in a given Project and Location. 4247 CreateKeyRing(context.Context, *CreateKeyRingRequest) (*KeyRing, error) 4248 // Create a new [CryptoKey][google.cloud.kms.v1.CryptoKey] within a [KeyRing][google.cloud.kms.v1.KeyRing]. 4249 // 4250 // [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] and 4251 // [CryptoKey.version_template.algorithm][google.cloud.kms.v1.CryptoKeyVersionTemplate.algorithm] 4252 // are required. 4253 CreateCryptoKey(context.Context, *CreateCryptoKeyRequest) (*CryptoKey, error) 4254 // Create a new [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] in a [CryptoKey][google.cloud.kms.v1.CryptoKey]. 4255 // 4256 // The server will assign the next sequential id. If unset, 4257 // [state][google.cloud.kms.v1.CryptoKeyVersion.state] will be set to 4258 // [ENABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.ENABLED]. 4259 CreateCryptoKeyVersion(context.Context, *CreateCryptoKeyVersionRequest) (*CryptoKeyVersion, error) 4260 // Imports a new [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] into an existing [CryptoKey][google.cloud.kms.v1.CryptoKey] using the 4261 // wrapped key material provided in the request. 4262 // 4263 // The version ID will be assigned the next sequential id within the 4264 // [CryptoKey][google.cloud.kms.v1.CryptoKey]. 4265 ImportCryptoKeyVersion(context.Context, *ImportCryptoKeyVersionRequest) (*CryptoKeyVersion, error) 4266 // Create a new [ImportJob][google.cloud.kms.v1.ImportJob] within a [KeyRing][google.cloud.kms.v1.KeyRing]. 4267 // 4268 // [ImportJob.import_method][google.cloud.kms.v1.ImportJob.import_method] is required. 4269 CreateImportJob(context.Context, *CreateImportJobRequest) (*ImportJob, error) 4270 // Update a [CryptoKey][google.cloud.kms.v1.CryptoKey]. 4271 UpdateCryptoKey(context.Context, *UpdateCryptoKeyRequest) (*CryptoKey, error) 4272 // Update a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion]'s metadata. 4273 // 4274 // [state][google.cloud.kms.v1.CryptoKeyVersion.state] may be changed between 4275 // [ENABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.ENABLED] and 4276 // [DISABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DISABLED] using this 4277 // method. See [DestroyCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion] and [RestoreCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion] to 4278 // move between other states. 4279 UpdateCryptoKeyVersion(context.Context, *UpdateCryptoKeyVersionRequest) (*CryptoKeyVersion, error) 4280 // Encrypts data, so that it can only be recovered by a call to [Decrypt][google.cloud.kms.v1.KeyManagementService.Decrypt]. 4281 // The [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] must be 4282 // [ENCRYPT_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ENCRYPT_DECRYPT]. 4283 Encrypt(context.Context, *EncryptRequest) (*EncryptResponse, error) 4284 // Decrypts data that was protected by [Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. The [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] 4285 // must be [ENCRYPT_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ENCRYPT_DECRYPT]. 4286 Decrypt(context.Context, *DecryptRequest) (*DecryptResponse, error) 4287 // Signs data using a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] with [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] 4288 // ASYMMETRIC_SIGN, producing a signature that can be verified with the public 4289 // key retrieved from [GetPublicKey][google.cloud.kms.v1.KeyManagementService.GetPublicKey]. 4290 AsymmetricSign(context.Context, *AsymmetricSignRequest) (*AsymmetricSignResponse, error) 4291 // Decrypts data that was encrypted with a public key retrieved from 4292 // [GetPublicKey][google.cloud.kms.v1.KeyManagementService.GetPublicKey] corresponding to a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] with 4293 // [CryptoKey.purpose][google.cloud.kms.v1.CryptoKey.purpose] ASYMMETRIC_DECRYPT. 4294 AsymmetricDecrypt(context.Context, *AsymmetricDecryptRequest) (*AsymmetricDecryptResponse, error) 4295 // Update the version of a [CryptoKey][google.cloud.kms.v1.CryptoKey] that will be used in [Encrypt][google.cloud.kms.v1.KeyManagementService.Encrypt]. 4296 // 4297 // Returns an error if called on a key whose purpose is not 4298 // [ENCRYPT_DECRYPT][google.cloud.kms.v1.CryptoKey.CryptoKeyPurpose.ENCRYPT_DECRYPT]. 4299 UpdateCryptoKeyPrimaryVersion(context.Context, *UpdateCryptoKeyPrimaryVersionRequest) (*CryptoKey, error) 4300 // Schedule a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] for destruction. 4301 // 4302 // Upon calling this method, [CryptoKeyVersion.state][google.cloud.kms.v1.CryptoKeyVersion.state] will be set to 4303 // [DESTROY_SCHEDULED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROY_SCHEDULED] 4304 // and [destroy_time][google.cloud.kms.v1.CryptoKeyVersion.destroy_time] will be set to a time 24 4305 // hours in the future, at which point the [state][google.cloud.kms.v1.CryptoKeyVersion.state] 4306 // will be changed to 4307 // [DESTROYED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROYED], and the key 4308 // material will be irrevocably destroyed. 4309 // 4310 // Before the [destroy_time][google.cloud.kms.v1.CryptoKeyVersion.destroy_time] is reached, 4311 // [RestoreCryptoKeyVersion][google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion] may be called to reverse the process. 4312 DestroyCryptoKeyVersion(context.Context, *DestroyCryptoKeyVersionRequest) (*CryptoKeyVersion, error) 4313 // Restore a [CryptoKeyVersion][google.cloud.kms.v1.CryptoKeyVersion] in the 4314 // [DESTROY_SCHEDULED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DESTROY_SCHEDULED] 4315 // state. 4316 // 4317 // Upon restoration of the CryptoKeyVersion, [state][google.cloud.kms.v1.CryptoKeyVersion.state] 4318 // will be set to [DISABLED][google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState.DISABLED], 4319 // and [destroy_time][google.cloud.kms.v1.CryptoKeyVersion.destroy_time] will be cleared. 4320 RestoreCryptoKeyVersion(context.Context, *RestoreCryptoKeyVersionRequest) (*CryptoKeyVersion, error) 4321} 4322 4323// UnimplementedKeyManagementServiceServer can be embedded to have forward compatible implementations. 4324type UnimplementedKeyManagementServiceServer struct { 4325} 4326 4327func (*UnimplementedKeyManagementServiceServer) ListKeyRings(context.Context, *ListKeyRingsRequest) (*ListKeyRingsResponse, error) { 4328 return nil, status.Errorf(codes.Unimplemented, "method ListKeyRings not implemented") 4329} 4330func (*UnimplementedKeyManagementServiceServer) ListCryptoKeys(context.Context, *ListCryptoKeysRequest) (*ListCryptoKeysResponse, error) { 4331 return nil, status.Errorf(codes.Unimplemented, "method ListCryptoKeys not implemented") 4332} 4333func (*UnimplementedKeyManagementServiceServer) ListCryptoKeyVersions(context.Context, *ListCryptoKeyVersionsRequest) (*ListCryptoKeyVersionsResponse, error) { 4334 return nil, status.Errorf(codes.Unimplemented, "method ListCryptoKeyVersions not implemented") 4335} 4336func (*UnimplementedKeyManagementServiceServer) ListImportJobs(context.Context, *ListImportJobsRequest) (*ListImportJobsResponse, error) { 4337 return nil, status.Errorf(codes.Unimplemented, "method ListImportJobs not implemented") 4338} 4339func (*UnimplementedKeyManagementServiceServer) GetKeyRing(context.Context, *GetKeyRingRequest) (*KeyRing, error) { 4340 return nil, status.Errorf(codes.Unimplemented, "method GetKeyRing not implemented") 4341} 4342func (*UnimplementedKeyManagementServiceServer) GetCryptoKey(context.Context, *GetCryptoKeyRequest) (*CryptoKey, error) { 4343 return nil, status.Errorf(codes.Unimplemented, "method GetCryptoKey not implemented") 4344} 4345func (*UnimplementedKeyManagementServiceServer) GetCryptoKeyVersion(context.Context, *GetCryptoKeyVersionRequest) (*CryptoKeyVersion, error) { 4346 return nil, status.Errorf(codes.Unimplemented, "method GetCryptoKeyVersion not implemented") 4347} 4348func (*UnimplementedKeyManagementServiceServer) GetPublicKey(context.Context, *GetPublicKeyRequest) (*PublicKey, error) { 4349 return nil, status.Errorf(codes.Unimplemented, "method GetPublicKey not implemented") 4350} 4351func (*UnimplementedKeyManagementServiceServer) GetImportJob(context.Context, *GetImportJobRequest) (*ImportJob, error) { 4352 return nil, status.Errorf(codes.Unimplemented, "method GetImportJob not implemented") 4353} 4354func (*UnimplementedKeyManagementServiceServer) CreateKeyRing(context.Context, *CreateKeyRingRequest) (*KeyRing, error) { 4355 return nil, status.Errorf(codes.Unimplemented, "method CreateKeyRing not implemented") 4356} 4357func (*UnimplementedKeyManagementServiceServer) CreateCryptoKey(context.Context, *CreateCryptoKeyRequest) (*CryptoKey, error) { 4358 return nil, status.Errorf(codes.Unimplemented, "method CreateCryptoKey not implemented") 4359} 4360func (*UnimplementedKeyManagementServiceServer) CreateCryptoKeyVersion(context.Context, *CreateCryptoKeyVersionRequest) (*CryptoKeyVersion, error) { 4361 return nil, status.Errorf(codes.Unimplemented, "method CreateCryptoKeyVersion not implemented") 4362} 4363func (*UnimplementedKeyManagementServiceServer) ImportCryptoKeyVersion(context.Context, *ImportCryptoKeyVersionRequest) (*CryptoKeyVersion, error) { 4364 return nil, status.Errorf(codes.Unimplemented, "method ImportCryptoKeyVersion not implemented") 4365} 4366func (*UnimplementedKeyManagementServiceServer) CreateImportJob(context.Context, *CreateImportJobRequest) (*ImportJob, error) { 4367 return nil, status.Errorf(codes.Unimplemented, "method CreateImportJob not implemented") 4368} 4369func (*UnimplementedKeyManagementServiceServer) UpdateCryptoKey(context.Context, *UpdateCryptoKeyRequest) (*CryptoKey, error) { 4370 return nil, status.Errorf(codes.Unimplemented, "method UpdateCryptoKey not implemented") 4371} 4372func (*UnimplementedKeyManagementServiceServer) UpdateCryptoKeyVersion(context.Context, *UpdateCryptoKeyVersionRequest) (*CryptoKeyVersion, error) { 4373 return nil, status.Errorf(codes.Unimplemented, "method UpdateCryptoKeyVersion not implemented") 4374} 4375func (*UnimplementedKeyManagementServiceServer) Encrypt(context.Context, *EncryptRequest) (*EncryptResponse, error) { 4376 return nil, status.Errorf(codes.Unimplemented, "method Encrypt not implemented") 4377} 4378func (*UnimplementedKeyManagementServiceServer) Decrypt(context.Context, *DecryptRequest) (*DecryptResponse, error) { 4379 return nil, status.Errorf(codes.Unimplemented, "method Decrypt not implemented") 4380} 4381func (*UnimplementedKeyManagementServiceServer) AsymmetricSign(context.Context, *AsymmetricSignRequest) (*AsymmetricSignResponse, error) { 4382 return nil, status.Errorf(codes.Unimplemented, "method AsymmetricSign not implemented") 4383} 4384func (*UnimplementedKeyManagementServiceServer) AsymmetricDecrypt(context.Context, *AsymmetricDecryptRequest) (*AsymmetricDecryptResponse, error) { 4385 return nil, status.Errorf(codes.Unimplemented, "method AsymmetricDecrypt not implemented") 4386} 4387func (*UnimplementedKeyManagementServiceServer) UpdateCryptoKeyPrimaryVersion(context.Context, *UpdateCryptoKeyPrimaryVersionRequest) (*CryptoKey, error) { 4388 return nil, status.Errorf(codes.Unimplemented, "method UpdateCryptoKeyPrimaryVersion not implemented") 4389} 4390func (*UnimplementedKeyManagementServiceServer) DestroyCryptoKeyVersion(context.Context, *DestroyCryptoKeyVersionRequest) (*CryptoKeyVersion, error) { 4391 return nil, status.Errorf(codes.Unimplemented, "method DestroyCryptoKeyVersion not implemented") 4392} 4393func (*UnimplementedKeyManagementServiceServer) RestoreCryptoKeyVersion(context.Context, *RestoreCryptoKeyVersionRequest) (*CryptoKeyVersion, error) { 4394 return nil, status.Errorf(codes.Unimplemented, "method RestoreCryptoKeyVersion not implemented") 4395} 4396 4397func RegisterKeyManagementServiceServer(s *grpc.Server, srv KeyManagementServiceServer) { 4398 s.RegisterService(&_KeyManagementService_serviceDesc, srv) 4399} 4400 4401func _KeyManagementService_ListKeyRings_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4402 in := new(ListKeyRingsRequest) 4403 if err := dec(in); err != nil { 4404 return nil, err 4405 } 4406 if interceptor == nil { 4407 return srv.(KeyManagementServiceServer).ListKeyRings(ctx, in) 4408 } 4409 info := &grpc.UnaryServerInfo{ 4410 Server: srv, 4411 FullMethod: "/google.cloud.kms.v1.KeyManagementService/ListKeyRings", 4412 } 4413 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4414 return srv.(KeyManagementServiceServer).ListKeyRings(ctx, req.(*ListKeyRingsRequest)) 4415 } 4416 return interceptor(ctx, in, info, handler) 4417} 4418 4419func _KeyManagementService_ListCryptoKeys_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4420 in := new(ListCryptoKeysRequest) 4421 if err := dec(in); err != nil { 4422 return nil, err 4423 } 4424 if interceptor == nil { 4425 return srv.(KeyManagementServiceServer).ListCryptoKeys(ctx, in) 4426 } 4427 info := &grpc.UnaryServerInfo{ 4428 Server: srv, 4429 FullMethod: "/google.cloud.kms.v1.KeyManagementService/ListCryptoKeys", 4430 } 4431 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4432 return srv.(KeyManagementServiceServer).ListCryptoKeys(ctx, req.(*ListCryptoKeysRequest)) 4433 } 4434 return interceptor(ctx, in, info, handler) 4435} 4436 4437func _KeyManagementService_ListCryptoKeyVersions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4438 in := new(ListCryptoKeyVersionsRequest) 4439 if err := dec(in); err != nil { 4440 return nil, err 4441 } 4442 if interceptor == nil { 4443 return srv.(KeyManagementServiceServer).ListCryptoKeyVersions(ctx, in) 4444 } 4445 info := &grpc.UnaryServerInfo{ 4446 Server: srv, 4447 FullMethod: "/google.cloud.kms.v1.KeyManagementService/ListCryptoKeyVersions", 4448 } 4449 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4450 return srv.(KeyManagementServiceServer).ListCryptoKeyVersions(ctx, req.(*ListCryptoKeyVersionsRequest)) 4451 } 4452 return interceptor(ctx, in, info, handler) 4453} 4454 4455func _KeyManagementService_ListImportJobs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4456 in := new(ListImportJobsRequest) 4457 if err := dec(in); err != nil { 4458 return nil, err 4459 } 4460 if interceptor == nil { 4461 return srv.(KeyManagementServiceServer).ListImportJobs(ctx, in) 4462 } 4463 info := &grpc.UnaryServerInfo{ 4464 Server: srv, 4465 FullMethod: "/google.cloud.kms.v1.KeyManagementService/ListImportJobs", 4466 } 4467 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4468 return srv.(KeyManagementServiceServer).ListImportJobs(ctx, req.(*ListImportJobsRequest)) 4469 } 4470 return interceptor(ctx, in, info, handler) 4471} 4472 4473func _KeyManagementService_GetKeyRing_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4474 in := new(GetKeyRingRequest) 4475 if err := dec(in); err != nil { 4476 return nil, err 4477 } 4478 if interceptor == nil { 4479 return srv.(KeyManagementServiceServer).GetKeyRing(ctx, in) 4480 } 4481 info := &grpc.UnaryServerInfo{ 4482 Server: srv, 4483 FullMethod: "/google.cloud.kms.v1.KeyManagementService/GetKeyRing", 4484 } 4485 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4486 return srv.(KeyManagementServiceServer).GetKeyRing(ctx, req.(*GetKeyRingRequest)) 4487 } 4488 return interceptor(ctx, in, info, handler) 4489} 4490 4491func _KeyManagementService_GetCryptoKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4492 in := new(GetCryptoKeyRequest) 4493 if err := dec(in); err != nil { 4494 return nil, err 4495 } 4496 if interceptor == nil { 4497 return srv.(KeyManagementServiceServer).GetCryptoKey(ctx, in) 4498 } 4499 info := &grpc.UnaryServerInfo{ 4500 Server: srv, 4501 FullMethod: "/google.cloud.kms.v1.KeyManagementService/GetCryptoKey", 4502 } 4503 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4504 return srv.(KeyManagementServiceServer).GetCryptoKey(ctx, req.(*GetCryptoKeyRequest)) 4505 } 4506 return interceptor(ctx, in, info, handler) 4507} 4508 4509func _KeyManagementService_GetCryptoKeyVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4510 in := new(GetCryptoKeyVersionRequest) 4511 if err := dec(in); err != nil { 4512 return nil, err 4513 } 4514 if interceptor == nil { 4515 return srv.(KeyManagementServiceServer).GetCryptoKeyVersion(ctx, in) 4516 } 4517 info := &grpc.UnaryServerInfo{ 4518 Server: srv, 4519 FullMethod: "/google.cloud.kms.v1.KeyManagementService/GetCryptoKeyVersion", 4520 } 4521 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4522 return srv.(KeyManagementServiceServer).GetCryptoKeyVersion(ctx, req.(*GetCryptoKeyVersionRequest)) 4523 } 4524 return interceptor(ctx, in, info, handler) 4525} 4526 4527func _KeyManagementService_GetPublicKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4528 in := new(GetPublicKeyRequest) 4529 if err := dec(in); err != nil { 4530 return nil, err 4531 } 4532 if interceptor == nil { 4533 return srv.(KeyManagementServiceServer).GetPublicKey(ctx, in) 4534 } 4535 info := &grpc.UnaryServerInfo{ 4536 Server: srv, 4537 FullMethod: "/google.cloud.kms.v1.KeyManagementService/GetPublicKey", 4538 } 4539 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4540 return srv.(KeyManagementServiceServer).GetPublicKey(ctx, req.(*GetPublicKeyRequest)) 4541 } 4542 return interceptor(ctx, in, info, handler) 4543} 4544 4545func _KeyManagementService_GetImportJob_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4546 in := new(GetImportJobRequest) 4547 if err := dec(in); err != nil { 4548 return nil, err 4549 } 4550 if interceptor == nil { 4551 return srv.(KeyManagementServiceServer).GetImportJob(ctx, in) 4552 } 4553 info := &grpc.UnaryServerInfo{ 4554 Server: srv, 4555 FullMethod: "/google.cloud.kms.v1.KeyManagementService/GetImportJob", 4556 } 4557 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4558 return srv.(KeyManagementServiceServer).GetImportJob(ctx, req.(*GetImportJobRequest)) 4559 } 4560 return interceptor(ctx, in, info, handler) 4561} 4562 4563func _KeyManagementService_CreateKeyRing_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4564 in := new(CreateKeyRingRequest) 4565 if err := dec(in); err != nil { 4566 return nil, err 4567 } 4568 if interceptor == nil { 4569 return srv.(KeyManagementServiceServer).CreateKeyRing(ctx, in) 4570 } 4571 info := &grpc.UnaryServerInfo{ 4572 Server: srv, 4573 FullMethod: "/google.cloud.kms.v1.KeyManagementService/CreateKeyRing", 4574 } 4575 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4576 return srv.(KeyManagementServiceServer).CreateKeyRing(ctx, req.(*CreateKeyRingRequest)) 4577 } 4578 return interceptor(ctx, in, info, handler) 4579} 4580 4581func _KeyManagementService_CreateCryptoKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4582 in := new(CreateCryptoKeyRequest) 4583 if err := dec(in); err != nil { 4584 return nil, err 4585 } 4586 if interceptor == nil { 4587 return srv.(KeyManagementServiceServer).CreateCryptoKey(ctx, in) 4588 } 4589 info := &grpc.UnaryServerInfo{ 4590 Server: srv, 4591 FullMethod: "/google.cloud.kms.v1.KeyManagementService/CreateCryptoKey", 4592 } 4593 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4594 return srv.(KeyManagementServiceServer).CreateCryptoKey(ctx, req.(*CreateCryptoKeyRequest)) 4595 } 4596 return interceptor(ctx, in, info, handler) 4597} 4598 4599func _KeyManagementService_CreateCryptoKeyVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4600 in := new(CreateCryptoKeyVersionRequest) 4601 if err := dec(in); err != nil { 4602 return nil, err 4603 } 4604 if interceptor == nil { 4605 return srv.(KeyManagementServiceServer).CreateCryptoKeyVersion(ctx, in) 4606 } 4607 info := &grpc.UnaryServerInfo{ 4608 Server: srv, 4609 FullMethod: "/google.cloud.kms.v1.KeyManagementService/CreateCryptoKeyVersion", 4610 } 4611 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4612 return srv.(KeyManagementServiceServer).CreateCryptoKeyVersion(ctx, req.(*CreateCryptoKeyVersionRequest)) 4613 } 4614 return interceptor(ctx, in, info, handler) 4615} 4616 4617func _KeyManagementService_ImportCryptoKeyVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4618 in := new(ImportCryptoKeyVersionRequest) 4619 if err := dec(in); err != nil { 4620 return nil, err 4621 } 4622 if interceptor == nil { 4623 return srv.(KeyManagementServiceServer).ImportCryptoKeyVersion(ctx, in) 4624 } 4625 info := &grpc.UnaryServerInfo{ 4626 Server: srv, 4627 FullMethod: "/google.cloud.kms.v1.KeyManagementService/ImportCryptoKeyVersion", 4628 } 4629 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4630 return srv.(KeyManagementServiceServer).ImportCryptoKeyVersion(ctx, req.(*ImportCryptoKeyVersionRequest)) 4631 } 4632 return interceptor(ctx, in, info, handler) 4633} 4634 4635func _KeyManagementService_CreateImportJob_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4636 in := new(CreateImportJobRequest) 4637 if err := dec(in); err != nil { 4638 return nil, err 4639 } 4640 if interceptor == nil { 4641 return srv.(KeyManagementServiceServer).CreateImportJob(ctx, in) 4642 } 4643 info := &grpc.UnaryServerInfo{ 4644 Server: srv, 4645 FullMethod: "/google.cloud.kms.v1.KeyManagementService/CreateImportJob", 4646 } 4647 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4648 return srv.(KeyManagementServiceServer).CreateImportJob(ctx, req.(*CreateImportJobRequest)) 4649 } 4650 return interceptor(ctx, in, info, handler) 4651} 4652 4653func _KeyManagementService_UpdateCryptoKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4654 in := new(UpdateCryptoKeyRequest) 4655 if err := dec(in); err != nil { 4656 return nil, err 4657 } 4658 if interceptor == nil { 4659 return srv.(KeyManagementServiceServer).UpdateCryptoKey(ctx, in) 4660 } 4661 info := &grpc.UnaryServerInfo{ 4662 Server: srv, 4663 FullMethod: "/google.cloud.kms.v1.KeyManagementService/UpdateCryptoKey", 4664 } 4665 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4666 return srv.(KeyManagementServiceServer).UpdateCryptoKey(ctx, req.(*UpdateCryptoKeyRequest)) 4667 } 4668 return interceptor(ctx, in, info, handler) 4669} 4670 4671func _KeyManagementService_UpdateCryptoKeyVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4672 in := new(UpdateCryptoKeyVersionRequest) 4673 if err := dec(in); err != nil { 4674 return nil, err 4675 } 4676 if interceptor == nil { 4677 return srv.(KeyManagementServiceServer).UpdateCryptoKeyVersion(ctx, in) 4678 } 4679 info := &grpc.UnaryServerInfo{ 4680 Server: srv, 4681 FullMethod: "/google.cloud.kms.v1.KeyManagementService/UpdateCryptoKeyVersion", 4682 } 4683 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4684 return srv.(KeyManagementServiceServer).UpdateCryptoKeyVersion(ctx, req.(*UpdateCryptoKeyVersionRequest)) 4685 } 4686 return interceptor(ctx, in, info, handler) 4687} 4688 4689func _KeyManagementService_Encrypt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4690 in := new(EncryptRequest) 4691 if err := dec(in); err != nil { 4692 return nil, err 4693 } 4694 if interceptor == nil { 4695 return srv.(KeyManagementServiceServer).Encrypt(ctx, in) 4696 } 4697 info := &grpc.UnaryServerInfo{ 4698 Server: srv, 4699 FullMethod: "/google.cloud.kms.v1.KeyManagementService/Encrypt", 4700 } 4701 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4702 return srv.(KeyManagementServiceServer).Encrypt(ctx, req.(*EncryptRequest)) 4703 } 4704 return interceptor(ctx, in, info, handler) 4705} 4706 4707func _KeyManagementService_Decrypt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4708 in := new(DecryptRequest) 4709 if err := dec(in); err != nil { 4710 return nil, err 4711 } 4712 if interceptor == nil { 4713 return srv.(KeyManagementServiceServer).Decrypt(ctx, in) 4714 } 4715 info := &grpc.UnaryServerInfo{ 4716 Server: srv, 4717 FullMethod: "/google.cloud.kms.v1.KeyManagementService/Decrypt", 4718 } 4719 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4720 return srv.(KeyManagementServiceServer).Decrypt(ctx, req.(*DecryptRequest)) 4721 } 4722 return interceptor(ctx, in, info, handler) 4723} 4724 4725func _KeyManagementService_AsymmetricSign_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4726 in := new(AsymmetricSignRequest) 4727 if err := dec(in); err != nil { 4728 return nil, err 4729 } 4730 if interceptor == nil { 4731 return srv.(KeyManagementServiceServer).AsymmetricSign(ctx, in) 4732 } 4733 info := &grpc.UnaryServerInfo{ 4734 Server: srv, 4735 FullMethod: "/google.cloud.kms.v1.KeyManagementService/AsymmetricSign", 4736 } 4737 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4738 return srv.(KeyManagementServiceServer).AsymmetricSign(ctx, req.(*AsymmetricSignRequest)) 4739 } 4740 return interceptor(ctx, in, info, handler) 4741} 4742 4743func _KeyManagementService_AsymmetricDecrypt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4744 in := new(AsymmetricDecryptRequest) 4745 if err := dec(in); err != nil { 4746 return nil, err 4747 } 4748 if interceptor == nil { 4749 return srv.(KeyManagementServiceServer).AsymmetricDecrypt(ctx, in) 4750 } 4751 info := &grpc.UnaryServerInfo{ 4752 Server: srv, 4753 FullMethod: "/google.cloud.kms.v1.KeyManagementService/AsymmetricDecrypt", 4754 } 4755 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4756 return srv.(KeyManagementServiceServer).AsymmetricDecrypt(ctx, req.(*AsymmetricDecryptRequest)) 4757 } 4758 return interceptor(ctx, in, info, handler) 4759} 4760 4761func _KeyManagementService_UpdateCryptoKeyPrimaryVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4762 in := new(UpdateCryptoKeyPrimaryVersionRequest) 4763 if err := dec(in); err != nil { 4764 return nil, err 4765 } 4766 if interceptor == nil { 4767 return srv.(KeyManagementServiceServer).UpdateCryptoKeyPrimaryVersion(ctx, in) 4768 } 4769 info := &grpc.UnaryServerInfo{ 4770 Server: srv, 4771 FullMethod: "/google.cloud.kms.v1.KeyManagementService/UpdateCryptoKeyPrimaryVersion", 4772 } 4773 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4774 return srv.(KeyManagementServiceServer).UpdateCryptoKeyPrimaryVersion(ctx, req.(*UpdateCryptoKeyPrimaryVersionRequest)) 4775 } 4776 return interceptor(ctx, in, info, handler) 4777} 4778 4779func _KeyManagementService_DestroyCryptoKeyVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4780 in := new(DestroyCryptoKeyVersionRequest) 4781 if err := dec(in); err != nil { 4782 return nil, err 4783 } 4784 if interceptor == nil { 4785 return srv.(KeyManagementServiceServer).DestroyCryptoKeyVersion(ctx, in) 4786 } 4787 info := &grpc.UnaryServerInfo{ 4788 Server: srv, 4789 FullMethod: "/google.cloud.kms.v1.KeyManagementService/DestroyCryptoKeyVersion", 4790 } 4791 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4792 return srv.(KeyManagementServiceServer).DestroyCryptoKeyVersion(ctx, req.(*DestroyCryptoKeyVersionRequest)) 4793 } 4794 return interceptor(ctx, in, info, handler) 4795} 4796 4797func _KeyManagementService_RestoreCryptoKeyVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 4798 in := new(RestoreCryptoKeyVersionRequest) 4799 if err := dec(in); err != nil { 4800 return nil, err 4801 } 4802 if interceptor == nil { 4803 return srv.(KeyManagementServiceServer).RestoreCryptoKeyVersion(ctx, in) 4804 } 4805 info := &grpc.UnaryServerInfo{ 4806 Server: srv, 4807 FullMethod: "/google.cloud.kms.v1.KeyManagementService/RestoreCryptoKeyVersion", 4808 } 4809 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 4810 return srv.(KeyManagementServiceServer).RestoreCryptoKeyVersion(ctx, req.(*RestoreCryptoKeyVersionRequest)) 4811 } 4812 return interceptor(ctx, in, info, handler) 4813} 4814 4815var _KeyManagementService_serviceDesc = grpc.ServiceDesc{ 4816 ServiceName: "google.cloud.kms.v1.KeyManagementService", 4817 HandlerType: (*KeyManagementServiceServer)(nil), 4818 Methods: []grpc.MethodDesc{ 4819 { 4820 MethodName: "ListKeyRings", 4821 Handler: _KeyManagementService_ListKeyRings_Handler, 4822 }, 4823 { 4824 MethodName: "ListCryptoKeys", 4825 Handler: _KeyManagementService_ListCryptoKeys_Handler, 4826 }, 4827 { 4828 MethodName: "ListCryptoKeyVersions", 4829 Handler: _KeyManagementService_ListCryptoKeyVersions_Handler, 4830 }, 4831 { 4832 MethodName: "ListImportJobs", 4833 Handler: _KeyManagementService_ListImportJobs_Handler, 4834 }, 4835 { 4836 MethodName: "GetKeyRing", 4837 Handler: _KeyManagementService_GetKeyRing_Handler, 4838 }, 4839 { 4840 MethodName: "GetCryptoKey", 4841 Handler: _KeyManagementService_GetCryptoKey_Handler, 4842 }, 4843 { 4844 MethodName: "GetCryptoKeyVersion", 4845 Handler: _KeyManagementService_GetCryptoKeyVersion_Handler, 4846 }, 4847 { 4848 MethodName: "GetPublicKey", 4849 Handler: _KeyManagementService_GetPublicKey_Handler, 4850 }, 4851 { 4852 MethodName: "GetImportJob", 4853 Handler: _KeyManagementService_GetImportJob_Handler, 4854 }, 4855 { 4856 MethodName: "CreateKeyRing", 4857 Handler: _KeyManagementService_CreateKeyRing_Handler, 4858 }, 4859 { 4860 MethodName: "CreateCryptoKey", 4861 Handler: _KeyManagementService_CreateCryptoKey_Handler, 4862 }, 4863 { 4864 MethodName: "CreateCryptoKeyVersion", 4865 Handler: _KeyManagementService_CreateCryptoKeyVersion_Handler, 4866 }, 4867 { 4868 MethodName: "ImportCryptoKeyVersion", 4869 Handler: _KeyManagementService_ImportCryptoKeyVersion_Handler, 4870 }, 4871 { 4872 MethodName: "CreateImportJob", 4873 Handler: _KeyManagementService_CreateImportJob_Handler, 4874 }, 4875 { 4876 MethodName: "UpdateCryptoKey", 4877 Handler: _KeyManagementService_UpdateCryptoKey_Handler, 4878 }, 4879 { 4880 MethodName: "UpdateCryptoKeyVersion", 4881 Handler: _KeyManagementService_UpdateCryptoKeyVersion_Handler, 4882 }, 4883 { 4884 MethodName: "Encrypt", 4885 Handler: _KeyManagementService_Encrypt_Handler, 4886 }, 4887 { 4888 MethodName: "Decrypt", 4889 Handler: _KeyManagementService_Decrypt_Handler, 4890 }, 4891 { 4892 MethodName: "AsymmetricSign", 4893 Handler: _KeyManagementService_AsymmetricSign_Handler, 4894 }, 4895 { 4896 MethodName: "AsymmetricDecrypt", 4897 Handler: _KeyManagementService_AsymmetricDecrypt_Handler, 4898 }, 4899 { 4900 MethodName: "UpdateCryptoKeyPrimaryVersion", 4901 Handler: _KeyManagementService_UpdateCryptoKeyPrimaryVersion_Handler, 4902 }, 4903 { 4904 MethodName: "DestroyCryptoKeyVersion", 4905 Handler: _KeyManagementService_DestroyCryptoKeyVersion_Handler, 4906 }, 4907 { 4908 MethodName: "RestoreCryptoKeyVersion", 4909 Handler: _KeyManagementService_RestoreCryptoKeyVersion_Handler, 4910 }, 4911 }, 4912 Streams: []grpc.StreamDesc{}, 4913 Metadata: "google/cloud/kms/v1/service.proto", 4914} 4915