google-cloud-iot-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,517 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Iot
23
+ module V1
24
+ # The device resource.
25
+ # @!attribute [rw] id
26
+ # @return [::String]
27
+ # The user-defined device identifier. The device ID must be unique
28
+ # within a device registry.
29
+ # @!attribute [rw] name
30
+ # @return [::String]
31
+ # The resource path name. For example,
32
+ # `projects/p1/locations/us-central1/registries/registry0/devices/dev0` or
33
+ # `projects/p1/locations/us-central1/registries/registry0/devices/{num_id}`.
34
+ # When `name` is populated as a response from the service, it always ends
35
+ # in the device numeric ID.
36
+ # @!attribute [rw] num_id
37
+ # @return [::Integer]
38
+ # [Output only] A server-defined unique numeric ID for the device. This is a
39
+ # more compact way to identify devices, and it is globally unique.
40
+ # @!attribute [rw] credentials
41
+ # @return [::Array<::Google::Cloud::Iot::V1::DeviceCredential>]
42
+ # The credentials used to authenticate this device. To allow credential
43
+ # rotation without interruption, multiple device credentials can be bound to
44
+ # this device. No more than 3 credentials can be bound to a single device at
45
+ # a time. When new credentials are added to a device, they are verified
46
+ # against the registry credentials. For details, see the description of the
47
+ # `DeviceRegistry.credentials` field.
48
+ # @!attribute [rw] last_heartbeat_time
49
+ # @return [::Google::Protobuf::Timestamp]
50
+ # [Output only] The last time an MQTT `PINGREQ` was received. This field
51
+ # applies only to devices connecting through MQTT. MQTT clients usually only
52
+ # send `PINGREQ` messages if the connection is idle, and no other messages
53
+ # have been sent. Timestamps are periodically collected and written to
54
+ # storage; they may be stale by a few minutes.
55
+ # @!attribute [rw] last_event_time
56
+ # @return [::Google::Protobuf::Timestamp]
57
+ # [Output only] The last time a telemetry event was received. Timestamps are
58
+ # periodically collected and written to storage; they may be stale by a few
59
+ # minutes.
60
+ # @!attribute [rw] last_state_time
61
+ # @return [::Google::Protobuf::Timestamp]
62
+ # [Output only] The last time a state event was received. Timestamps are
63
+ # periodically collected and written to storage; they may be stale by a few
64
+ # minutes.
65
+ # @!attribute [rw] last_config_ack_time
66
+ # @return [::Google::Protobuf::Timestamp]
67
+ # [Output only] The last time a cloud-to-device config version acknowledgment
68
+ # was received from the device. This field is only for configurations
69
+ # sent through MQTT.
70
+ # @!attribute [rw] last_config_send_time
71
+ # @return [::Google::Protobuf::Timestamp]
72
+ # [Output only] The last time a cloud-to-device config version was sent to
73
+ # the device.
74
+ # @!attribute [rw] blocked
75
+ # @return [::Boolean]
76
+ # If a device is blocked, connections or requests from this device will fail.
77
+ # Can be used to temporarily prevent the device from connecting if, for
78
+ # example, the sensor is generating bad data and needs maintenance.
79
+ # @!attribute [rw] last_error_time
80
+ # @return [::Google::Protobuf::Timestamp]
81
+ # [Output only] The time the most recent error occurred, such as a failure to
82
+ # publish to Cloud Pub/Sub. This field is the timestamp of
83
+ # 'last_error_status'.
84
+ # @!attribute [rw] last_error_status
85
+ # @return [::Google::Rpc::Status]
86
+ # [Output only] The error message of the most recent error, such as a failure
87
+ # to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this
88
+ # field. If no errors have occurred, this field has an empty message
89
+ # and the status code 0 == OK. Otherwise, this field is expected to have a
90
+ # status code other than OK.
91
+ # @!attribute [rw] config
92
+ # @return [::Google::Cloud::Iot::V1::DeviceConfig]
93
+ # The most recent device configuration, which is eventually sent from
94
+ # Cloud IoT Core to the device. If not present on creation, the
95
+ # configuration will be initialized with an empty payload and version value
96
+ # of `1`. To update this field after creation, use the
97
+ # `DeviceManager.ModifyCloudToDeviceConfig` method.
98
+ # @!attribute [rw] state
99
+ # @return [::Google::Cloud::Iot::V1::DeviceState]
100
+ # [Output only] The state most recently received from the device. If no state
101
+ # has been reported, this field is not present.
102
+ # @!attribute [rw] log_level
103
+ # @return [::Google::Cloud::Iot::V1::LogLevel]
104
+ # **Beta Feature**
105
+ #
106
+ # The logging verbosity for device activity. If unspecified,
107
+ # DeviceRegistry.log_level will be used.
108
+ # @!attribute [rw] metadata
109
+ # @return [::Google::Protobuf::Map{::String => ::String}]
110
+ # The metadata key-value pairs assigned to the device. This metadata is not
111
+ # interpreted or indexed by Cloud IoT Core. It can be used to add contextual
112
+ # information for the device.
113
+ #
114
+ # Keys must conform to the regular expression [a-zA-Z][a-zA-Z0-9-_.+~%]+ and
115
+ # be less than 128 bytes in length.
116
+ #
117
+ # Values are free-form strings. Each value must be less than or equal to 32
118
+ # KB in size.
119
+ #
120
+ # The total size of all keys and values must be less than 256 KB, and the
121
+ # maximum number of key-value pairs is 500.
122
+ # @!attribute [rw] gateway_config
123
+ # @return [::Google::Cloud::Iot::V1::GatewayConfig]
124
+ # Gateway-related configuration and state.
125
+ class Device
126
+ include ::Google::Protobuf::MessageExts
127
+ extend ::Google::Protobuf::MessageExts::ClassMethods
128
+
129
+ # @!attribute [rw] key
130
+ # @return [::String]
131
+ # @!attribute [rw] value
132
+ # @return [::String]
133
+ class MetadataEntry
134
+ include ::Google::Protobuf::MessageExts
135
+ extend ::Google::Protobuf::MessageExts::ClassMethods
136
+ end
137
+ end
138
+
139
+ # Gateway-related configuration and state.
140
+ # @!attribute [rw] gateway_type
141
+ # @return [::Google::Cloud::Iot::V1::GatewayType]
142
+ # Indicates whether the device is a gateway.
143
+ # @!attribute [rw] gateway_auth_method
144
+ # @return [::Google::Cloud::Iot::V1::GatewayAuthMethod]
145
+ # Indicates how to authorize and/or authenticate devices to access the
146
+ # gateway.
147
+ # @!attribute [rw] last_accessed_gateway_id
148
+ # @return [::String]
149
+ # [Output only] The ID of the gateway the device accessed most recently.
150
+ # @!attribute [rw] last_accessed_gateway_time
151
+ # @return [::Google::Protobuf::Timestamp]
152
+ # [Output only] The most recent time at which the device accessed the gateway
153
+ # specified in `last_accessed_gateway`.
154
+ class GatewayConfig
155
+ include ::Google::Protobuf::MessageExts
156
+ extend ::Google::Protobuf::MessageExts::ClassMethods
157
+ end
158
+
159
+ # A container for a group of devices.
160
+ # @!attribute [rw] id
161
+ # @return [::String]
162
+ # The identifier of this device registry. For example, `myRegistry`.
163
+ # @!attribute [rw] name
164
+ # @return [::String]
165
+ # The resource path name. For example,
166
+ # `projects/example-project/locations/us-central1/registries/my-registry`.
167
+ # @!attribute [rw] event_notification_configs
168
+ # @return [::Array<::Google::Cloud::Iot::V1::EventNotificationConfig>]
169
+ # The configuration for notification of telemetry events received from the
170
+ # device. All telemetry events that were successfully published by the
171
+ # device and acknowledged by Cloud IoT Core are guaranteed to be
172
+ # delivered to Cloud Pub/Sub. If multiple configurations match a message,
173
+ # only the first matching configuration is used. If you try to publish a
174
+ # device telemetry event using MQTT without specifying a Cloud Pub/Sub topic
175
+ # for the device's registry, the connection closes automatically. If you try
176
+ # to do so using an HTTP connection, an error is returned. Up to 10
177
+ # configurations may be provided.
178
+ # @!attribute [rw] state_notification_config
179
+ # @return [::Google::Cloud::Iot::V1::StateNotificationConfig]
180
+ # The configuration for notification of new states received from the device.
181
+ # State updates are guaranteed to be stored in the state history, but
182
+ # notifications to Cloud Pub/Sub are not guaranteed. For example, if
183
+ # permissions are misconfigured or the specified topic doesn't exist, no
184
+ # notification will be published but the state will still be stored in Cloud
185
+ # IoT Core.
186
+ # @!attribute [rw] mqtt_config
187
+ # @return [::Google::Cloud::Iot::V1::MqttConfig]
188
+ # The MQTT configuration for this device registry.
189
+ # @!attribute [rw] http_config
190
+ # @return [::Google::Cloud::Iot::V1::HttpConfig]
191
+ # The DeviceService (HTTP) configuration for this device registry.
192
+ # @!attribute [rw] log_level
193
+ # @return [::Google::Cloud::Iot::V1::LogLevel]
194
+ # **Beta Feature**
195
+ #
196
+ # The default logging verbosity for activity from devices in this registry.
197
+ # The verbosity level can be overridden by Device.log_level.
198
+ # @!attribute [rw] credentials
199
+ # @return [::Array<::Google::Cloud::Iot::V1::RegistryCredential>]
200
+ # The credentials used to verify the device credentials. No more than 10
201
+ # credentials can be bound to a single registry at a time. The verification
202
+ # process occurs at the time of device creation or update. If this field is
203
+ # empty, no verification is performed. Otherwise, the credentials of a newly
204
+ # created device or added credentials of an updated device should be signed
205
+ # with one of these registry credentials.
206
+ #
207
+ # Note, however, that existing devices will never be affected by
208
+ # modifications to this list of credentials: after a device has been
209
+ # successfully created in a registry, it should be able to connect even if
210
+ # its registry credentials are revoked, deleted, or modified.
211
+ class DeviceRegistry
212
+ include ::Google::Protobuf::MessageExts
213
+ extend ::Google::Protobuf::MessageExts::ClassMethods
214
+ end
215
+
216
+ # The configuration of MQTT for a device registry.
217
+ # @!attribute [rw] mqtt_enabled_state
218
+ # @return [::Google::Cloud::Iot::V1::MqttState]
219
+ # If enabled, allows connections using the MQTT protocol. Otherwise, MQTT
220
+ # connections to this registry will fail.
221
+ class MqttConfig
222
+ include ::Google::Protobuf::MessageExts
223
+ extend ::Google::Protobuf::MessageExts::ClassMethods
224
+ end
225
+
226
+ # The configuration of the HTTP bridge for a device registry.
227
+ # @!attribute [rw] http_enabled_state
228
+ # @return [::Google::Cloud::Iot::V1::HttpState]
229
+ # If enabled, allows devices to use DeviceService via the HTTP protocol.
230
+ # Otherwise, any requests to DeviceService will fail for this registry.
231
+ class HttpConfig
232
+ include ::Google::Protobuf::MessageExts
233
+ extend ::Google::Protobuf::MessageExts::ClassMethods
234
+ end
235
+
236
+ # The configuration for forwarding telemetry events.
237
+ # @!attribute [rw] subfolder_matches
238
+ # @return [::String]
239
+ # If the subfolder name matches this string exactly, this configuration will
240
+ # be used. The string must not include the leading '/' character. If empty,
241
+ # all strings are matched. This field is used only for telemetry events;
242
+ # subfolders are not supported for state changes.
243
+ # @!attribute [rw] pubsub_topic_name
244
+ # @return [::String]
245
+ # A Cloud Pub/Sub topic name. For example,
246
+ # `projects/myProject/topics/deviceEvents`.
247
+ class EventNotificationConfig
248
+ include ::Google::Protobuf::MessageExts
249
+ extend ::Google::Protobuf::MessageExts::ClassMethods
250
+ end
251
+
252
+ # The configuration for notification of new states received from the device.
253
+ # @!attribute [rw] pubsub_topic_name
254
+ # @return [::String]
255
+ # A Cloud Pub/Sub topic name. For example,
256
+ # `projects/myProject/topics/deviceEvents`.
257
+ class StateNotificationConfig
258
+ include ::Google::Protobuf::MessageExts
259
+ extend ::Google::Protobuf::MessageExts::ClassMethods
260
+ end
261
+
262
+ # A server-stored registry credential used to validate device credentials.
263
+ # @!attribute [rw] public_key_certificate
264
+ # @return [::Google::Cloud::Iot::V1::PublicKeyCertificate]
265
+ # A public key certificate used to verify the device credentials.
266
+ class RegistryCredential
267
+ include ::Google::Protobuf::MessageExts
268
+ extend ::Google::Protobuf::MessageExts::ClassMethods
269
+ end
270
+
271
+ # Details of an X.509 certificate. For informational purposes only.
272
+ # @!attribute [rw] issuer
273
+ # @return [::String]
274
+ # The entity that signed the certificate.
275
+ # @!attribute [rw] subject
276
+ # @return [::String]
277
+ # The entity the certificate and public key belong to.
278
+ # @!attribute [rw] start_time
279
+ # @return [::Google::Protobuf::Timestamp]
280
+ # The time the certificate becomes valid.
281
+ # @!attribute [rw] expiry_time
282
+ # @return [::Google::Protobuf::Timestamp]
283
+ # The time the certificate becomes invalid.
284
+ # @!attribute [rw] signature_algorithm
285
+ # @return [::String]
286
+ # The algorithm used to sign the certificate.
287
+ # @!attribute [rw] public_key_type
288
+ # @return [::String]
289
+ # The type of public key in the certificate.
290
+ class X509CertificateDetails
291
+ include ::Google::Protobuf::MessageExts
292
+ extend ::Google::Protobuf::MessageExts::ClassMethods
293
+ end
294
+
295
+ # A public key certificate format and data.
296
+ # @!attribute [rw] format
297
+ # @return [::Google::Cloud::Iot::V1::PublicKeyCertificateFormat]
298
+ # The certificate format.
299
+ # @!attribute [rw] certificate
300
+ # @return [::String]
301
+ # The certificate data.
302
+ # @!attribute [rw] x509_details
303
+ # @return [::Google::Cloud::Iot::V1::X509CertificateDetails]
304
+ # [Output only] The certificate details. Used only for X.509 certificates.
305
+ class PublicKeyCertificate
306
+ include ::Google::Protobuf::MessageExts
307
+ extend ::Google::Protobuf::MessageExts::ClassMethods
308
+ end
309
+
310
+ # A server-stored device credential used for authentication.
311
+ # @!attribute [rw] public_key
312
+ # @return [::Google::Cloud::Iot::V1::PublicKeyCredential]
313
+ # A public key used to verify the signature of JSON Web Tokens (JWTs).
314
+ # When adding a new device credential, either via device creation or via
315
+ # modifications, this public key credential may be required to be signed by
316
+ # one of the registry level certificates. More specifically, if the
317
+ # registry contains at least one certificate, any new device credential
318
+ # must be signed by one of the registry certificates. As a result,
319
+ # when the registry contains certificates, only X.509 certificates are
320
+ # accepted as device credentials. However, if the registry does
321
+ # not contain a certificate, self-signed certificates and public keys will
322
+ # be accepted. New device credentials must be different from every
323
+ # registry-level certificate.
324
+ # @!attribute [rw] expiration_time
325
+ # @return [::Google::Protobuf::Timestamp]
326
+ # [Optional] The time at which this credential becomes invalid. This
327
+ # credential will be ignored for new client authentication requests after
328
+ # this timestamp; however, it will not be automatically deleted.
329
+ class DeviceCredential
330
+ include ::Google::Protobuf::MessageExts
331
+ extend ::Google::Protobuf::MessageExts::ClassMethods
332
+ end
333
+
334
+ # A public key format and data.
335
+ # @!attribute [rw] format
336
+ # @return [::Google::Cloud::Iot::V1::PublicKeyFormat]
337
+ # The format of the key.
338
+ # @!attribute [rw] key
339
+ # @return [::String]
340
+ # The key data.
341
+ class PublicKeyCredential
342
+ include ::Google::Protobuf::MessageExts
343
+ extend ::Google::Protobuf::MessageExts::ClassMethods
344
+ end
345
+
346
+ # The device configuration. Eventually delivered to devices.
347
+ # @!attribute [rw] version
348
+ # @return [::Integer]
349
+ # [Output only] The version of this update. The version number is assigned by
350
+ # the server, and is always greater than 0 after device creation. The
351
+ # version must be 0 on the `CreateDevice` request if a `config` is
352
+ # specified; the response of `CreateDevice` will always have a value of 1.
353
+ # @!attribute [rw] cloud_update_time
354
+ # @return [::Google::Protobuf::Timestamp]
355
+ # [Output only] The time at which this configuration version was updated in
356
+ # Cloud IoT Core. This timestamp is set by the server.
357
+ # @!attribute [rw] device_ack_time
358
+ # @return [::Google::Protobuf::Timestamp]
359
+ # [Output only] The time at which Cloud IoT Core received the
360
+ # acknowledgment from the device, indicating that the device has received
361
+ # this configuration version. If this field is not present, the device has
362
+ # not yet acknowledged that it received this version. Note that when
363
+ # the config was sent to the device, many config versions may have been
364
+ # available in Cloud IoT Core while the device was disconnected, and on
365
+ # connection, only the latest version is sent to the device. Some
366
+ # versions may never be sent to the device, and therefore are never
367
+ # acknowledged. This timestamp is set by Cloud IoT Core.
368
+ # @!attribute [rw] binary_data
369
+ # @return [::String]
370
+ # The device configuration data.
371
+ class DeviceConfig
372
+ include ::Google::Protobuf::MessageExts
373
+ extend ::Google::Protobuf::MessageExts::ClassMethods
374
+ end
375
+
376
+ # The device state, as reported by the device.
377
+ # @!attribute [rw] update_time
378
+ # @return [::Google::Protobuf::Timestamp]
379
+ # [Output only] The time at which this state version was updated in Cloud
380
+ # IoT Core.
381
+ # @!attribute [rw] binary_data
382
+ # @return [::String]
383
+ # The device state data.
384
+ class DeviceState
385
+ include ::Google::Protobuf::MessageExts
386
+ extend ::Google::Protobuf::MessageExts::ClassMethods
387
+ end
388
+
389
+ # Indicates whether an MQTT connection is enabled or disabled. See the field
390
+ # description for details.
391
+ module MqttState
392
+ # No MQTT state specified. If not specified, MQTT will be enabled by default.
393
+ MQTT_STATE_UNSPECIFIED = 0
394
+
395
+ # Enables a MQTT connection.
396
+ MQTT_ENABLED = 1
397
+
398
+ # Disables a MQTT connection.
399
+ MQTT_DISABLED = 2
400
+ end
401
+
402
+ # Indicates whether DeviceService (HTTP) is enabled or disabled for the
403
+ # registry. See the field description for details.
404
+ module HttpState
405
+ # No HTTP state specified. If not specified, DeviceService will be
406
+ # enabled by default.
407
+ HTTP_STATE_UNSPECIFIED = 0
408
+
409
+ # Enables DeviceService (HTTP) service for the registry.
410
+ HTTP_ENABLED = 1
411
+
412
+ # Disables DeviceService (HTTP) service for the registry.
413
+ HTTP_DISABLED = 2
414
+ end
415
+
416
+ # **Beta Feature**
417
+ #
418
+ # The logging verbosity for device activity. Specifies which events should be
419
+ # written to logs. For example, if the LogLevel is ERROR, only events that
420
+ # terminate in errors will be logged. LogLevel is inclusive; enabling INFO
421
+ # logging will also enable ERROR logging.
422
+ module LogLevel
423
+ # No logging specified. If not specified, logging will be disabled.
424
+ LOG_LEVEL_UNSPECIFIED = 0
425
+
426
+ # Disables logging.
427
+ NONE = 10
428
+
429
+ # Error events will be logged.
430
+ ERROR = 20
431
+
432
+ # Informational events will be logged, such as connections and
433
+ # disconnections.
434
+ INFO = 30
435
+
436
+ # All events will be logged.
437
+ DEBUG = 40
438
+ end
439
+
440
+ # Gateway type.
441
+ module GatewayType
442
+ # If unspecified, the device is considered a non-gateway device.
443
+ GATEWAY_TYPE_UNSPECIFIED = 0
444
+
445
+ # The device is a gateway.
446
+ GATEWAY = 1
447
+
448
+ # The device is not a gateway.
449
+ NON_GATEWAY = 2
450
+ end
451
+
452
+ # The gateway authorization/authentication method. This setting determines how
453
+ # Cloud IoT Core authorizes/authenticate devices to access the gateway.
454
+ module GatewayAuthMethod
455
+ # No authentication/authorization method specified. No devices are allowed to
456
+ # access the gateway.
457
+ GATEWAY_AUTH_METHOD_UNSPECIFIED = 0
458
+
459
+ # The device is authenticated through the gateway association only. Device
460
+ # credentials are ignored even if provided.
461
+ ASSOCIATION_ONLY = 1
462
+
463
+ # The device is authenticated through its own credentials. Gateway
464
+ # association is not checked.
465
+ DEVICE_AUTH_TOKEN_ONLY = 2
466
+
467
+ # The device is authenticated through both device credentials and gateway
468
+ # association. The device must be bound to the gateway and must provide its
469
+ # own credentials.
470
+ ASSOCIATION_AND_DEVICE_AUTH_TOKEN = 3
471
+ end
472
+
473
+ # The supported formats for the public key.
474
+ module PublicKeyCertificateFormat
475
+ # The format has not been specified. This is an invalid default value and
476
+ # must not be used.
477
+ UNSPECIFIED_PUBLIC_KEY_CERTIFICATE_FORMAT = 0
478
+
479
+ # An X.509v3 certificate ([RFC5280](https://www.ietf.org/rfc/rfc5280.txt)),
480
+ # encoded in base64, and wrapped by `-----BEGIN CERTIFICATE-----` and
481
+ # `-----END CERTIFICATE-----`.
482
+ X509_CERTIFICATE_PEM = 1
483
+ end
484
+
485
+ # The supported formats for the public key.
486
+ module PublicKeyFormat
487
+ # The format has not been specified. This is an invalid default value and
488
+ # must not be used.
489
+ UNSPECIFIED_PUBLIC_KEY_FORMAT = 0
490
+
491
+ # An RSA public key encoded in base64, and wrapped by
492
+ # `-----BEGIN PUBLIC KEY-----` and `-----END PUBLIC KEY-----`. This can be
493
+ # used to verify `RS256` signatures in JWT tokens ([RFC7518](
494
+ # https://www.ietf.org/rfc/rfc7518.txt)).
495
+ RSA_PEM = 3
496
+
497
+ # As RSA_PEM, but wrapped in an X.509v3 certificate ([RFC5280](
498
+ # https://www.ietf.org/rfc/rfc5280.txt)), encoded in base64, and wrapped by
499
+ # `-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`.
500
+ RSA_X509_PEM = 1
501
+
502
+ # Public key for the ECDSA algorithm using P-256 and SHA-256, encoded in
503
+ # base64, and wrapped by `-----BEGIN PUBLIC KEY-----` and `-----END
504
+ # PUBLIC KEY-----`. This can be used to verify JWT tokens with the `ES256`
505
+ # algorithm ([RFC7518](https://www.ietf.org/rfc/rfc7518.txt)). This curve is
506
+ # defined in [OpenSSL](https://www.openssl.org/) as the `prime256v1` curve.
507
+ ES256_PEM = 2
508
+
509
+ # As ES256_PEM, but wrapped in an X.509v3 certificate ([RFC5280](
510
+ # https://www.ietf.org/rfc/rfc5280.txt)), encoded in base64, and wrapped by
511
+ # `-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`.
512
+ ES256_X509_PEM = 4
513
+ end
514
+ end
515
+ end
516
+ end
517
+ end