|
1615 | 1615 | "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$",
|
1616 | 1616 | "required": true,
|
1617 | 1617 | "type": "string"
|
| 1618 | + }, |
| 1619 | + "publicKeyFormat": { |
| 1620 | + "description": "Optional. The PublicKey format specified by the user. This field is required for PQC algorithms. If specified, the public key will be exported through the public_key field in the requested format. Otherwise, the pem field will be populated for non-PQC algorithms, and an error will be returned for PQC algorithms.", |
| 1621 | + "enum": [ |
| 1622 | + "PUBLIC_KEY_FORMAT_UNSPECIFIED", |
| 1623 | + "PEM", |
| 1624 | + "NIST_PQC" |
| 1625 | + ], |
| 1626 | + "enumDescriptions": [ |
| 1627 | + "If the public_key_format field is not specified: - For PQC algorithms, an error will be returned. - For non-PQC algorithms, the default format is PEM, and the field pem will be populated. Otherwise, the public key will be exported through the public_key field in the requested format.", |
| 1628 | + "The returned public key will be encoded in PEM format. See the [RFC7468](https://tools.ietf.org/html/rfc7468) sections for [General Considerations](https://tools.ietf.org/html/rfc7468#section-2) and [Textual Encoding of Subject Public Key Info] (https://tools.ietf.org/html/rfc7468#section-13) for more information.", |
| 1629 | + "This is supported only for PQC algorithms. The key material is returned in the format defined by NIST PQC standards (FIPS 203, FIPS 204, and FIPS 205)." |
| 1630 | + ], |
| 1631 | + "location": "query", |
| 1632 | + "type": "string" |
1618 | 1633 | }
|
1619 | 1634 | },
|
1620 | 1635 | "path": "v1/{+name}/publicKey",
|
|
2137 | 2152 | }
|
2138 | 2153 | }
|
2139 | 2154 | },
|
2140 |
| - "revision": "20250102", |
| 2155 | + "revision": "20250205", |
2141 | 2156 | "rootUrl": "https://cloudkms.googleapis.com/",
|
2142 | 2157 | "schemas": {
|
2143 | 2158 | "AsymmetricDecryptRequest": {
|
|
2456 | 2471 | },
|
2457 | 2472 | "type": "object"
|
2458 | 2473 | },
|
| 2474 | + "ChecksummedData": { |
| 2475 | + "description": "Data with integrity verification field.", |
| 2476 | + "id": "ChecksummedData", |
| 2477 | + "properties": { |
| 2478 | + "crc32cChecksum": { |
| 2479 | + "description": "Integrity verification field. A CRC32C checksum of the returned ChecksummedData.data. An integrity check of ChecksummedData.data can be performed by computing the CRC32C checksum of ChecksummedData.data and comparing your results to this field. Discard the response in case of non-matching checksum values, and perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", |
| 2480 | + "format": "int64", |
| 2481 | + "type": "string" |
| 2482 | + }, |
| 2483 | + "data": { |
| 2484 | + "description": "Raw Data.", |
| 2485 | + "format": "byte", |
| 2486 | + "type": "string" |
| 2487 | + } |
| 2488 | + }, |
| 2489 | + "type": "object" |
| 2490 | + }, |
2459 | 2491 | "CryptoKey": {
|
2460 | 2492 | "description": "A CryptoKey represents a logical key that can be used for cryptographic operations. A CryptoKey is made up of zero or more versions, which represent the actual key material used in cryptographic operations.",
|
2461 | 2493 | "id": "CryptoKey",
|
|
2579 | 2611 | "HMAC_SHA384",
|
2580 | 2612 | "HMAC_SHA512",
|
2581 | 2613 | "HMAC_SHA224",
|
2582 |
| - "EXTERNAL_SYMMETRIC_ENCRYPTION" |
| 2614 | + "EXTERNAL_SYMMETRIC_ENCRYPTION", |
| 2615 | + "PQ_SIGN_ML_DSA_65", |
| 2616 | + "PQ_SIGN_SLH_DSA_SHA2_128S" |
2583 | 2617 | ],
|
2584 | 2618 | "enumDescriptions": [
|
2585 | 2619 | "Not specified.",
|
|
2617 | 2651 | "HMAC-SHA384 signing with a 384 bit key.",
|
2618 | 2652 | "HMAC-SHA512 signing with a 512 bit key.",
|
2619 | 2653 | "HMAC-SHA224 signing with a 224 bit key.",
|
2620 |
| - "Algorithm representing symmetric encryption by an external key manager." |
| 2654 | + "Algorithm representing symmetric encryption by an external key manager.", |
| 2655 | + "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 3. Randomized version.", |
| 2656 | + "The post-quantum stateless hash-based digital signature algorithm, at security level 1. Randomized version." |
2621 | 2657 | ],
|
2622 | 2658 | "readOnly": true,
|
2623 | 2659 | "type": "string"
|
|
2785 | 2821 | "HMAC_SHA384",
|
2786 | 2822 | "HMAC_SHA512",
|
2787 | 2823 | "HMAC_SHA224",
|
2788 |
| - "EXTERNAL_SYMMETRIC_ENCRYPTION" |
| 2824 | + "EXTERNAL_SYMMETRIC_ENCRYPTION", |
| 2825 | + "PQ_SIGN_ML_DSA_65", |
| 2826 | + "PQ_SIGN_SLH_DSA_SHA2_128S" |
2789 | 2827 | ],
|
2790 | 2828 | "enumDescriptions": [
|
2791 | 2829 | "Not specified.",
|
|
2823 | 2861 | "HMAC-SHA384 signing with a 384 bit key.",
|
2824 | 2862 | "HMAC-SHA512 signing with a 512 bit key.",
|
2825 | 2863 | "HMAC-SHA224 signing with a 224 bit key.",
|
2826 |
| - "Algorithm representing symmetric encryption by an external key manager." |
| 2864 | + "Algorithm representing symmetric encryption by an external key manager.", |
| 2865 | + "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 3. Randomized version.", |
| 2866 | + "The post-quantum stateless hash-based digital signature algorithm, at security level 1. Randomized version." |
2827 | 2867 | ],
|
2828 | 2868 | "type": "string"
|
2829 | 2869 | },
|
|
3206 | 3246 | "HMAC_SHA384",
|
3207 | 3247 | "HMAC_SHA512",
|
3208 | 3248 | "HMAC_SHA224",
|
3209 |
| - "EXTERNAL_SYMMETRIC_ENCRYPTION" |
| 3249 | + "EXTERNAL_SYMMETRIC_ENCRYPTION", |
| 3250 | + "PQ_SIGN_ML_DSA_65", |
| 3251 | + "PQ_SIGN_SLH_DSA_SHA2_128S" |
3210 | 3252 | ],
|
3211 | 3253 | "enumDescriptions": [
|
3212 | 3254 | "Not specified.",
|
|
3244 | 3286 | "HMAC-SHA384 signing with a 384 bit key.",
|
3245 | 3287 | "HMAC-SHA512 signing with a 512 bit key.",
|
3246 | 3288 | "HMAC-SHA224 signing with a 224 bit key.",
|
3247 |
| - "Algorithm representing symmetric encryption by an external key manager." |
| 3289 | + "Algorithm representing symmetric encryption by an external key manager.", |
| 3290 | + "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 3. Randomized version.", |
| 3291 | + "The post-quantum stateless hash-based digital signature algorithm, at security level 1. Randomized version." |
3248 | 3292 | ],
|
3249 | 3293 | "type": "string"
|
3250 | 3294 | },
|
|
3925 | 3969 | "HMAC_SHA384",
|
3926 | 3970 | "HMAC_SHA512",
|
3927 | 3971 | "HMAC_SHA224",
|
3928 |
| - "EXTERNAL_SYMMETRIC_ENCRYPTION" |
| 3972 | + "EXTERNAL_SYMMETRIC_ENCRYPTION", |
| 3973 | + "PQ_SIGN_ML_DSA_65", |
| 3974 | + "PQ_SIGN_SLH_DSA_SHA2_128S" |
3929 | 3975 | ],
|
3930 | 3976 | "enumDescriptions": [
|
3931 | 3977 | "Not specified.",
|
|
3963 | 4009 | "HMAC-SHA384 signing with a 384 bit key.",
|
3964 | 4010 | "HMAC-SHA512 signing with a 512 bit key.",
|
3965 | 4011 | "HMAC-SHA224 signing with a 224 bit key.",
|
3966 |
| - "Algorithm representing symmetric encryption by an external key manager." |
| 4012 | + "Algorithm representing symmetric encryption by an external key manager.", |
| 4013 | + "The post-quantum Module-Lattice-Based Digital Signature Algorithm, at security level 3. Randomized version.", |
| 4014 | + "The post-quantum stateless hash-based digital signature algorithm, at security level 1. Randomized version." |
3967 | 4015 | ],
|
3968 | 4016 | "type": "string"
|
3969 | 4017 | },
|
|
3997 | 4045 | "Crypto operations are performed in an EKM-over-VPC backend."
|
3998 | 4046 | ],
|
3999 | 4047 | "type": "string"
|
| 4048 | + }, |
| 4049 | + "publicKey": { |
| 4050 | + "$ref": "ChecksummedData", |
| 4051 | + "description": "This field contains the public key (with integrity verification), formatted according to the public_key_format field." |
| 4052 | + }, |
| 4053 | + "publicKeyFormat": { |
| 4054 | + "description": "The PublicKey format specified by the customer through the public_key_format field.", |
| 4055 | + "enum": [ |
| 4056 | + "PUBLIC_KEY_FORMAT_UNSPECIFIED", |
| 4057 | + "PEM", |
| 4058 | + "NIST_PQC" |
| 4059 | + ], |
| 4060 | + "enumDescriptions": [ |
| 4061 | + "If the public_key_format field is not specified: - For PQC algorithms, an error will be returned. - For non-PQC algorithms, the default format is PEM, and the field pem will be populated. Otherwise, the public key will be exported through the public_key field in the requested format.", |
| 4062 | + "The returned public key will be encoded in PEM format. See the [RFC7468](https://tools.ietf.org/html/rfc7468) sections for [General Considerations](https://tools.ietf.org/html/rfc7468#section-2) and [Textual Encoding of Subject Public Key Info] (https://tools.ietf.org/html/rfc7468#section-13) for more information.", |
| 4063 | + "This is supported only for PQC algorithms. The key material is returned in the format defined by NIST PQC standards (FIPS 203, FIPS 204, and FIPS 205)." |
| 4064 | + ], |
| 4065 | + "type": "string" |
4000 | 4066 | }
|
4001 | 4067 | },
|
4002 | 4068 | "type": "object"
|
|
0 commit comments