Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions src/build-data/ec_groups.txt
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,16 @@ X = 0x8BD2AEB9CB7E57CB2C4B482FFC81B7AFB9DE27E1E3BD23C23A4453BD9ACE3262
Y = 0x547EF835C3DAC4FD97F8461A14611DC9C27745132DED8E545C1D54C72F046997
N = 0xA9FB57DBA1EEA9BC3E660A909D838D718C397AA3B561A6F7901E0E82974856A7

Name = brainpool256t1
OID = 1.3.36.3.3.2.8.1.1.8
Impl = pcurve generic legacy
P = 0xA9FB57DBA1EEA9BC3E660A909D838D726E3BF623D52620282013481D1F6E5377
A = 0xA9FB57DBA1EEA9BC3E660A909D838D726E3BF623D52620282013481D1F6E5374
B = 0x662C61C430D84EA4FE66A7733D0B76B7BF93EBC4AF2F49256AE58101FEE92B04
X = 0xA3E8EB3CC1CFE7B7732213B23A656149AFA142C47AAFBC2B79A191562E1305F4
Y = 0x2D996C823439C56D7F7B22E14644417E69BCB6DE39D027001DABE8F35B25C9BE
N = 0xA9FB57DBA1EEA9BC3E660A909D838D718C397AA3B561A6F7901E0E82974856A7

Name = brainpool320r1
OID = 1.3.36.3.3.2.8.1.1.9
Impl = generic legacy
Expand All @@ -88,6 +98,16 @@ X = 0x1D1C64F068CF45FFA2A63A81B7C13F6B8847A3E77EF14FE3DB7FCAFE0CBD10E8E826E03436
Y = 0x8ABE1D7520F9C2A45CB1EB8E95CFD55262B70B29FEEC5864E19C054FF99129280E4646217791811142820341263C5315
N = 0x8CB91E82A3386D280F5D6F7E50E641DF152F7109ED5456B31F166E6CAC0425A7CF3AB6AF6B7FC3103B883202E9046565

Name = brainpool384t1
OID = 1.3.36.3.3.2.8.1.1.12
Impl = pcurve generic legacy
P = 0x8CB91E82A3386D280F5D6F7E50E641DF152F7109ED5456B412B1DA197FB71123ACD3A729901D1A71874700133107EC53
A = 0x8CB91E82A3386D280F5D6F7E50E641DF152F7109ED5456B412B1DA197FB71123ACD3A729901D1A71874700133107EC50
B = 0x7F519EADA7BDA81BD826DBA647910F8C4B9346ED8CCDC64E4B1ABD11756DCE1D2074AA263B88805CED70355A33B471EE
X = 0x18DE98B02DB9A306F2AFCD7235F72A819B80AB12EBD653172476FECD462AABFFC4FF191B946A5F54D8D0AA2F418808CC
Y = 0x25AB056962D30651A114AFD2755AD336747F93475B7A1FCA3B88F2B6A208CCFE469408584DC2B2912675BF5B9E582928
N = 0x8CB91E82A3386D280F5D6F7E50E641DF152F7109ED5456B31F166E6CAC0425A7CF3AB6AF6B7FC3103B883202E9046565

Name = brainpool512r1
OID = 1.3.36.3.3.2.8.1.1.13
Impl = pcurve generic legacy
Expand All @@ -98,6 +118,16 @@ X = 0x81AEE4BDD82ED9645A21322E9C4C6A9385ED9F70B5D916C1B43B62EEF4D0098EFF3B1F78E2
Y = 0x7DDE385D566332ECC0EABFA9CF7822FDF209F70024A57B1AA000C55B881F8111B2DCDE494A5F485E5BCA4BD88A2763AED1CA2B2FA8F0540678CD1E0F3AD80892
N = 0xAADD9DB8DBE9C48B3FD4E6AE33C9FC07CB308DB3B3C9D20ED6639CCA70330870553E5C414CA92619418661197FAC10471DB1D381085DDADDB58796829CA90069

Name = brainpool512t1
OID = 1.3.36.3.3.2.8.1.1.14
Impl = pcurve generic legacy
P = 0xAADD9DB8DBE9C48B3FD4E6AE33C9FC07CB308DB3B3C9D20ED6639CCA703308717D4D9B009BC66842AECDA12AE6A380E62881FF2F2D82C68528AA6056583A48F3
A = 0xAADD9DB8DBE9C48B3FD4E6AE33C9FC07CB308DB3B3C9D20ED6639CCA703308717D4D9B009BC66842AECDA12AE6A380E62881FF2F2D82C68528AA6056583A48F0
B = 0x7CBBBCF9441CFAB76E1890E46884EAE321F70C0BCB4981527897504BEC3E36A62BCDFA2304976540F6450085F2DAE145C22553B465763689180EA2571867423E
X = 0x640ECE5C12788717B9C1BA06CBC2A6FEBA85842458C56DDE9DB1758D39C0313D82BA51735CDB3EA499AA77A7D6943A64F7A3F25FE26F06B51BAA2696FA9035DA
Y = 0x5B534BD595F5AF0FA2C892376C84ACE1BB4E3019B71634C01131159CAE03CEE9D9932184BEEF216BD71DF2DADF86A627306ECFF96DBB8BACE198B61E00F8B332
N = 0xAADD9DB8DBE9C48B3FD4E6AE33C9FC07CB308DB3B3C9D20ED6639CCA70330870553E5C414CA92619418661197FAC10471DB1D381085DDADDB58796829CA90069

Name = frp256v1
OID = 1.2.250.1.223.101.256.1
Impl = pcurve generic legacy
Expand Down
3 changes: 3 additions & 0 deletions src/build-data/oids.txt
Original file line number Diff line number Diff line change
Expand Up @@ -475,9 +475,12 @@
1.3.36.3.3.2.8.1.1.3 = brainpool192r1
1.3.36.3.3.2.8.1.1.5 = brainpool224r1
1.3.36.3.3.2.8.1.1.7 = brainpool256r1
1.3.36.3.3.2.8.1.1.8 = brainpool256t1
1.3.36.3.3.2.8.1.1.9 = brainpool320r1
1.3.36.3.3.2.8.1.1.11 = brainpool384r1
1.3.36.3.3.2.8.1.1.12 = brainpool384t1
1.3.36.3.3.2.8.1.1.13 = brainpool512r1
1.3.36.3.3.2.8.1.1.14 = brainpool512t1

1.2.250.1.223.101.256.1 = frp256v1

Expand Down
14 changes: 13 additions & 1 deletion src/lib/asn1/static_oids.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* This file was automatically generated by ./src/scripts/dev_tools/gen_oids.py on 2026-04-24
* This file was automatically generated by ./src/scripts/dev_tools/gen_oids.py on 2026-05-08
* All manual changes will be lost. Edit the script instead.
*
* Botan is released under the Simplified BSD License (see license.txt)
Expand Down Expand Up @@ -603,12 +603,18 @@ std::optional<std::string_view> OID_Map::lookup_static_oid(const OID& oid) {
return if_match(oid, {1, 3, 36, 3, 3, 2, 8, 1, 1, 5}, "brainpool224r1");
case 0x9A00E:
return if_match(oid, {1, 3, 36, 3, 3, 2, 8, 1, 1, 7}, "brainpool256r1");
case 0x9A00F:
return if_match(oid, {1, 3, 36, 3, 3, 2, 8, 1, 1, 8}, "brainpool256t1");
case 0x9A010:
return if_match(oid, {1, 3, 36, 3, 3, 2, 8, 1, 1, 9}, "brainpool320r1");
case 0x9A012:
return if_match(oid, {1, 3, 36, 3, 3, 2, 8, 1, 1, 11}, "brainpool384r1");
case 0x9A013:
return if_match(oid, {1, 3, 36, 3, 3, 2, 8, 1, 1, 12}, "brainpool384t1");
case 0x9A014:
return if_match(oid, {1, 3, 36, 3, 3, 2, 8, 1, 1, 13}, "brainpool512r1");
case 0x9A015:
return if_match(oid, {1, 3, 36, 3, 3, 2, 8, 1, 1, 14}, "brainpool512t1");
case 0xA0D61:
return if_match(oid, {1, 3, 6, 1, 4, 1, 25258, 1, 3}, "McEliece");
case 0xA0D63:
Expand Down Expand Up @@ -1117,6 +1123,8 @@ std::optional<OID> OID_Map::lookup_static_oid_name(std::string_view req) {
return if_match(req, "PKIX.AuthorityInformationAccess", {1, 3, 6, 1, 5, 5, 7, 1, 1});
case 0x70BB6:
return if_match(req, "brainpool384r1", {1, 3, 36, 3, 3, 2, 8, 1, 1, 11});
case 0x70DAC:
return if_match(req, "brainpool384t1", {1, 3, 36, 3, 3, 2, 8, 1, 1, 12});
case 0x70EA6:
return if_match(req, "PKCS12.PKCS8ShroudedKeyBag", {1, 2, 840, 113549, 1, 12, 10, 1, 2});
case 0x71EB3:
Expand All @@ -1143,6 +1151,8 @@ std::optional<OID> OID_Map::lookup_static_oid_name(std::string_view req) {
return if_match(req, "PKCS9.LocalKeyId", {1, 2, 840, 113549, 1, 9, 21});
case 0x76A19:
return if_match(req, "brainpool512r1", {1, 3, 36, 3, 3, 2, 8, 1, 1, 13});
case 0x76C0F:
return if_match(req, "brainpool512t1", {1, 3, 36, 3, 3, 2, 8, 1, 1, 14});
case 0x77254:
return if_match(req, "SphincsPlus-haraka-256s-r3.1", {1, 3, 6, 1, 4, 1, 25258, 1, 12, 3, 5});
case 0x77ADC:
Expand Down Expand Up @@ -1419,6 +1429,8 @@ std::optional<OID> OID_Map::lookup_static_oid_name(std::string_view req) {
return if_match(req, "PKIX.OCSPSigning", {1, 3, 6, 1, 5, 5, 7, 3, 9});
case 0xC42CA:
return if_match(req, "brainpool256r1", {1, 3, 36, 3, 3, 2, 8, 1, 1, 7});
case 0xC44C0:
return if_match(req, "brainpool256t1", {1, 3, 36, 3, 3, 2, 8, 1, 1, 8});
default:
return {};
}
Expand Down
20 changes: 19 additions & 1 deletion src/lib/math/pcurves/pcurves.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* This file was automatically generated by ./src/scripts/dev_tools/gen_ec_groups.py on 2026-04-24
* This file was automatically generated by ./src/scripts/dev_tools/gen_ec_groups.py on 2026-05-08
* All manual changes will be lost. Edit the script instead.
*
* Botan is released under the Simplified BSD License (see license.txt)
Expand Down Expand Up @@ -54,18 +54,36 @@ std::shared_ptr<const PrimeOrderCurve> PrimeOrderCurve::for_named_curve(std::str
}
#endif

#if defined(BOTAN_HAS_PCURVES_BRAINPOOL256T1)
if(name == "brainpool256t1") {
return PCurveInstance::brainpool256t1();
}
#endif

#if defined(BOTAN_HAS_PCURVES_BRAINPOOL384R1)
if(name == "brainpool384r1") {
return PCurveInstance::brainpool384r1();
}
#endif

#if defined(BOTAN_HAS_PCURVES_BRAINPOOL384T1)
if(name == "brainpool384t1") {
return PCurveInstance::brainpool384t1();
}
#endif

#if defined(BOTAN_HAS_PCURVES_BRAINPOOL512R1)
if(name == "brainpool512r1") {
return PCurveInstance::brainpool512r1();
}
#endif

#if defined(BOTAN_HAS_PCURVES_BRAINPOOL512T1)
if(name == "brainpool512t1") {
return PCurveInstance::brainpool512t1();
}
#endif

#if defined(BOTAN_HAS_PCURVES_FRP256V1)
if(name == "frp256v1") {
return PCurveInstance::frp256v1();
Expand Down
11 changes: 11 additions & 0 deletions src/lib/math/pcurves/pcurves_brainpool256t1/info.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<internal_defines>
PCURVES_BRAINPOOL256T1 -> 20260430
</internal_defines>

<module_info>
name -> "PCurve brainpool256t1"
</module_info>

<requires>
pcurves_impl
</requires>
Loading
Loading