14
14
15
15
"""Signers and verifiers using elliptic curve keys."""
16
16
17
+ import base64
17
18
import hashlib
18
19
import pathlib
19
20
from typing import Optional
23
24
from cryptography .hazmat .primitives import serialization
24
25
from cryptography .hazmat .primitives .asymmetric import ec
25
26
from google .protobuf import json_format
26
- from sigstore_protobuf_specs . dev . sigstore . bundle import v1 as bundle_pb
27
- from sigstore_protobuf_specs . dev . sigstore . common import v1 as common_pb
28
- from sigstore_protobuf_specs . io import intoto as intoto_pb
27
+ from sigstore_models import intoto as intoto_pb
28
+ from sigstore_models . bundle import v1 as bundle_pb
29
+ from sigstore_models . common import v1 as common_pb
29
30
from typing_extensions import override
30
31
31
32
from model_signing ._signing import sign_sigstore_pb as sigstore_pb
@@ -102,15 +103,17 @@ def sign(self, payload: signing.Payload) -> signing.Signature:
102
103
)
103
104
104
105
raw_signature = intoto_pb .Signature (
105
- sig = self ._private_key .sign (
106
- sigstore_pb .pae (raw_payload ),
107
- ec .ECDSA (get_ec_key_hash (self ._private_key .public_key ())),
106
+ sig = base64 .b64encode (
107
+ self ._private_key .sign (
108
+ sigstore_pb .pae (raw_payload ),
109
+ ec .ECDSA (get_ec_key_hash (self ._private_key .public_key ())),
110
+ )
108
111
),
109
112
keyid = "" ,
110
113
)
111
114
112
115
envelope = intoto_pb .Envelope (
113
- payload = raw_payload ,
116
+ payload = base64 . b64encode ( raw_payload ) ,
114
117
payload_type = signing ._IN_TOTO_JSON_PAYLOAD_TYPE ,
115
118
signatures = [raw_signature ],
116
119
)
@@ -135,7 +138,8 @@ def _get_verification_material(self) -> bundle_pb.VerificationMaterial:
135
138
hash_bytes = hashlib .sha256 (raw_bytes ).digest ().hex ()
136
139
137
140
return bundle_pb .VerificationMaterial (
138
- public_key = common_pb .PublicKeyIdentifier (hint = hash_bytes )
141
+ public_key = common_pb .PublicKeyIdentifier (hint = hash_bytes ),
142
+ tlog_entries = [],
139
143
)
140
144
141
145
0 commit comments