from pygost.asn1schemas.oids import id_ce_subjectKeyIdentifier
from pygost.asn1schemas.oids import id_tc26_gost3410_2012_512
from pygost.asn1schemas.oids import id_tc26_gost3410_2012_512_paramSetA
-from pygost.asn1schemas.oids import id_tc26_gost3411_2012_512
from pygost.asn1schemas.oids import id_tc26_signwithdigest_gost3410_2012_512
from pygost.asn1schemas.prvkey import PrivateKey
from pygost.asn1schemas.prvkey import PrivateKeyAlgorithmIdentifier
def pem(obj):
- return fill(standard_b64encode(obj.encode()).decode('ascii'), 64)
+ return fill(standard_b64encode(obj.encode()).decode("ascii"), 64)
key_params = GostR34102012PublicKeyParameters((
("publicKeyParamSet", id_tc26_gost3410_2012_512_paramSetA),
- ("digestParamSet", id_tc26_gost3411_2012_512),
))
prv_raw = urandom(64)
prv = prv_unmarshal(prv_raw)
curve = CURVES["id-tc26-gost-3410-12-512-paramSetA"]
-pub_raw = pub_marshal(public_key(curve, prv), mode=2012)
+pub_raw = pub_marshal(public_key(curve, prv))
subj = Name(("rdnSequence", RDNSequence([
RelativeDistinguishedName((
AttributeTypeAndValue((
("signatureValue", BitString(sign(
curve,
prv,
- GOST34112012512(tbs.encode()).digest(),
- mode=2012,
+ GOST34112012512(tbs.encode()).digest()[::-1],
))),
))
print("-----BEGIN CERTIFICATE-----")