@@ -242,7 +242,7 @@ def test_worst_modexp(
242
242
],
243
243
)
244
244
@pytest .mark .parametrize (
245
- "precompile_address,input,length " ,
245
+ "precompile_address,input" ,
246
246
[
247
247
pytest .param (
248
248
0x01 ,
@@ -252,7 +252,6 @@ def test_worst_modexp(
252
252
"38D18ACB67D25C8BB9942764B62F18E17054F66A817BD4295423ADF9ED98873E" ,
253
253
"789D1DD423D25F0772D2748D60F7E4B81BB14D086EBA8E8E8EFB6DCFF8A4AE02" ,
254
254
],
255
- 32 * 4 ,
256
255
id = "ecrecover" ,
257
256
),
258
257
pytest .param (
@@ -263,7 +262,6 @@ def test_worst_modexp(
263
262
"07C2B7F58A84BD6145F00C9C2BC0BB1A187F20FF2C92963A88019E7C6A014EED" ,
264
263
"06614E20C147E940F2D70DA3F74C9A17DF361706A4485C742BD6788478FA17D7" ,
265
264
],
266
- 32 * 4 ,
267
265
id = "bn128_add" ,
268
266
),
269
267
pytest .param (
@@ -273,7 +271,6 @@ def test_worst_modexp(
273
271
"1A2F3C951F6DADCC7EE9007DFF81504B0FCD6D7CF59996EFDC33D92BF7F9F8F6" ,
274
272
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" ,
275
273
],
276
- 32 * 4 ,
277
274
id = "bn128_mul" ,
278
275
),
279
276
pytest .param (
@@ -294,21 +291,17 @@ def test_worst_modexp(
294
291
"090689D0585FF075EC9E99AD690C3395BC4B313370B38EF355ACDADCD122975B" ,
295
292
"12C85EA5DB8C6DEB4AAB71808DCB408FE3D1E7690C43D37B4CE6CC0166FA7DAA" ,
296
293
],
297
- 32 * 2 * 6 ,
298
294
id = "bn128_pairing" ,
299
295
),
300
296
pytest .param (
301
297
0x09 ,
302
298
[
303
299
"0000FFFF" ,
304
300
"48C9BDF267E6096A3BA7CA8485AE67BB2BF894FE72F36E3CF1361D5F3AF54FA5D182E6AD7F520E511F6C3E2B8C68059B6BBD41FBABD9831F79217E1319CDE05B" ,
305
- "61626300000000000000000000000000000000000000000000000000" ,
306
- "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" ,
307
- "000000000300000000000000000000" ,
308
- "00000000010000000000000000000000" ,
309
- "00" ,
301
+ "6162630000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" ,
302
+ "00000000000300000000000000000000" ,
303
+ "01" ,
310
304
],
311
- 213 ,
312
305
id = "blake2f" ,
313
306
),
314
307
pytest .param (
@@ -320,7 +313,6 @@ def test_worst_modexp(
320
313
"8F59A8D2A1A625A17F3FEA0FE5EB8C896DB3764F3185481BC22F91B4AAFFCCA25F26936857BC3A7C2539EA8EC3A952B7" ,
321
314
"873033E038326E87ED3E1276FD140253FA08E9FC25FB2D9A98527FC22A2C9612FBEAFDAD446CBC7BCDBDCD780AF2C16A" ,
322
315
],
323
- 192 ,
324
316
id = "point_evaluation" ,
325
317
),
326
318
pytest .param (
@@ -329,7 +321,6 @@ def test_worst_modexp(
329
321
"000000000000000000000000000000000572CBEA904D67468808C8EB50A9450C9721DB309128012543902D0AC358A62AE28F75BB8F1C7C42C39A8C5529BF0F4E00000000000000000000000000000000166A9D8CABC673A322FDA673779D8E3822BA3ECB8670E461F73BB9021D5FD76A" ,
330
322
"4C56D9D4CD16BD1BBA86881979749D280000000000000000000000000000000009ECE308F9D1F0131765212DECA99697B112D61F9BE9A5F1F3780A51335B3FF981747A0B2CA2179B96D2C0C9024E522400000000000000000000000000000000032B80D3A6F5B09F8A84623389C5F80C" ,
331
323
],
332
- 256 ,
333
324
id = "bls12_g1add" ,
334
325
),
335
326
pytest .param (
@@ -339,7 +330,6 @@ def test_worst_modexp(
339
330
"000000000000000000000000000000000e12039459c60491672b6a6282355d8765ba6272387fb91a3e9604fa2a81450cf16b870bb446fc3a3e0a187fff6f89450000000000000000000000000000000018b6c1ed9f45d3cbc0b01b9d038dcecacbd702eb26469a0eb3905bd421461712f67f782b4735849644c1772c93fe3d090000000000000000000000000000000000000000000000000000000000000033" ,
340
331
"00000000000000000000000000000000147b327c8a15b39634a426af70c062b50632a744eddd41b5a4686414ef4cd9746bb11d0a53c6c2ff21bbcf331e07ac9200000000000000000000000000000000078c2e9782fa5d9ab4e728684382717aa2b8fad61b5f5e7cf3baa0bc9465f57342bb7c6d7b232e70eebcdbf70f903a450000000000000000000000000000000000000000000000000000000000000034" ,
341
332
],
342
- 3 * 160 ,
343
333
id = "bls12_g1msm" ,
344
334
),
345
335
pytest .param (
@@ -348,7 +338,6 @@ def test_worst_modexp(
348
338
"000000000000000000000000000000001638533957d540a9d2370f17cc7ed5863bc0b995b8825e0ee1ea1e1e4d00dbae81f14b0bf3611b78c952aacab827a053000000000000000000000000000000000a4edef9c1ed7f729f520e47730a124fd70662a904ba1074728114d1031e1572c6c886f6b57ec72a6178288c47c33577000000000000000000000000000000000468fb440d82b0630aeb8dca2b5256789a66da69bf91009cbfe6bd221e47aa8ae88dece9764bf3bd999d95d71e4c9899000000000000000000000000000000000f6d4552fa65dd2638b361543f887136a43253d9c66c411697003f7a13c308f5422e1aa0a59c8967acdefd8b6e36ccf3" ,
349
339
"00000000000000000000000000000000122915c824a0857e2ee414a3dccb23ae691ae54329781315a0c75df1c04d6d7a50a030fc866f09d516020ef82324afae0000000000000000000000000000000009380275bbc8e5dcea7dc4dd7e0550ff2ac480905396eda55062650f8d251c96eb480673937cc6d9d6a44aaa56ca66dc000000000000000000000000000000000b21da7955969e61010c7a1abc1a6f0136961d1e3b20b1a7326ac738fef5c721479dfd948b52fdf2455e44813ecfd8920000000000000000000000000000000008f239ba329b3967fe48d718a36cfe5f62a7e42e0bf1c1ed714150a166bfbd6bcf6b3b58b975b9edea56d53f23a0e849" ,
350
340
],
351
- 2 * 256 ,
352
341
id = "bls12_g2add" ,
353
342
),
354
343
pytest .param (
@@ -358,31 +347,27 @@ def test_worst_modexp(
358
347
"0000000000000000000000000000000019d5f05b4f134bb37d89a03e87c8b729e6bdc062f3ae0ddc5265b270e40a6a5691f51ff60b764ea760651caf395101840000000000000000000000000000000015532df6a12b7c160a0831ef8321b18feb6ce7997c0718b205873608085be3afeec5b5d5251a0f85f7f5b7271271e0660000000000000000000000000000000004623ac0df1e019d337dc9488c17ef9e214dc33c63f96a90fea288e836dbd85079cb3cec42ae693e9c16af3c3204d86e0000000000000000000000000000000011ba77f71923c1b6a711a48fa4085c4885290079448a4b597030cc84aa14647136513cec6d11c4453ca74e906bbca1e10000000000000000000000000000000000000000000000000000000000000033" ,
359
348
"00000000000000000000000000000000176a7158b310c9ff1bfc21b81903de99c90440792ebe6d9637652ee34acf53b43c2f31738bbc96d71dcadbbf0e3190af000000000000000000000000000000000a592641967934a97e012f7d6412c4f6ff0f177a1b466b9b49c9deb7498decc80d0c809448aa9fa6fbbb6f537515703000000000000000000000000000000000031d84356ef619e688a10247f122e1aa0d3def3e35f94043f64c634198421487ca96af5f0160384bba92bd5494506c4d000000000000000000000000000000000db8fefe735779489c957785fa8e45d24e086ef0c2aba2e3adba888f0aeee51385a82898524c443f017ee40be635048c0000000000000000000000000000000000000000000000000000000000000034" ,
360
349
],
361
- 3 * 288 ,
362
350
id = "bls12_g2msm" ,
363
351
),
364
352
pytest .param (
365
353
0x0F ,
366
354
[
367
355
"000000000000000000000000000000000572cbea904d67468808c8eb50a9450c9721db309128012543902d0ac358a62ae28f75bb8f1c7c42c39a8c5529bf0f4e00000000000000000000000000000000166a9d8cabc673a322fda673779d8e3822ba3ecb8670e461f73bb9021d5fd76a4c56d9d4cd16bd1bba86881979749d2800000000000000000000000000000000122915c824a0857e2ee414a3dccb23ae691ae54329781315a0c75df1c04d6d7a50a030fc866f09d516020ef82324afae0000000000000000000000000000000009380275bbc8e5dcea7dc4dd7e0550ff2ac480905396eda55062650f8d251c96eb480673937cc6d9d6a44aaa56ca66dc000000000000000000000000000000000b21da7955969e61010c7a1abc1a6f0136961d1e3b20b1a7326ac738fef5c721479dfd948b52fdf2455e44813ecfd8920000000000000000000000000000000008f239ba329b3967fe48d718a36cfe5f62a7e42e0bf1c1ed714150a166bfbd6bcf6b3b58b975b9edea56d53f23a0e8490000000000000000000000000000000006e82f6da4520f85c5d27d8f329eccfa05944fd1096b20734c894966d12a9e2a9a9744529d7212d33883113a0cadb9090000000000000000000000000000000017d81038f7d60bee9110d9c0d6d1102fe2d998c957f28e31ec284cc04134df8e47e8f82ff3af2e60a6d9688a4563477c00000000000000000000000000000000024aa2b2f08f0a91260805272dc51051c6e47ad4fa403b02b4510b647ae3d1770bac0326a805bbefd48056c8c121bdb80000000000000000000000000000000013e02b6052719f607dacd3a088274f65596bd0d09920b61ab5da61bbdc7f5049334cf11213945d57e5ac7d055d042b7e000000000000000000000000000000000d1b3cc2c7027888be51d9ef691d77bcb679afda66c73f17f9ee3837a55024f78c71363275a75d75d86bab79f74782aa0000000000000000000000000000000013fa4d4a0ad8b1ce186ed5061789213d993923066dddaf1040bc3ff59f825c78df74f2d75467e25e0f55f8a00fa030ed"
368
356
],
369
- 384 ,
370
357
id = "bls12_pairing_check" ,
371
358
),
372
359
pytest .param (
373
360
0x10 ,
374
361
[
375
362
"0000000000000000000000000000000014406e5bfb9209256a3820879a29ac2f62d6aca82324bf3ae2aa7d3c54792043bd8c791fccdb080c1a52dc68b8b69350" ,
376
363
],
377
- 64 ,
378
364
id = "bls12_fp_to_g1" ,
379
365
),
380
366
pytest .param (
381
367
0x11 ,
382
368
[
383
369
"0000000000000000000000000000000014406e5bfb9209256a3820879a29ac2f62d6aca82324bf3ae2aa7d3c54792043bd8c791fccdb080c1a52dc68b8b69350000000000000000000000000000000000e885bb33996e12f07da69073e2c0cc880bc8eff26d2a724299eb12d54f4bcf26f4748bb020e80a7e3794a7b0e47a641" ,
384
370
],
385
- 128 ,
386
371
id = "bls12_fp_to_g2" ,
387
372
),
388
373
],
@@ -394,7 +379,6 @@ def test_worst_precompile_fixed_cost(
394
379
gas_limit : int ,
395
380
precompile_address : Address ,
396
381
input : list [str ],
397
- length : int ,
398
382
):
399
383
"""Test running a block filled with a precompile with fixed cost."""
400
384
env = Environment (gas_limit = gas_limit )
@@ -411,7 +395,9 @@ def test_worst_precompile_fixed_cost(
411
395
value_to_store = int .from_bytes (chunk , "big" )
412
396
calldata += Op .MSTORE (i , value_to_store )
413
397
414
- attack_block = Op .POP (Op .STATICCALL (Op .GAS , precompile_address , 0 , length , 0 , 0 ))
398
+ attack_block = Op .POP (
399
+ Op .STATICCALL (Op .GAS , precompile_address , 0 , len (concatenated_bytes ), 0 , 0 )
400
+ )
415
401
code = code_loop_precompile_call (calldata , attack_block )
416
402
code_address = pre .deploy_contract (code = bytes (code ))
417
403
0 commit comments