File tree Expand file tree Collapse file tree 4 files changed +16
-3
lines changed Expand file tree Collapse file tree 4 files changed +16
-3
lines changed Original file line number Diff line number Diff line change @@ -30,6 +30,7 @@ script:
30
30
- cargo build --verbose --no-default-features --features="rand"
31
31
- cargo build --verbose --no-default-features --features="rand serde recovery endomorphism"
32
32
- cargo build --verbose --no-default-features --features="fuzztarget recovery"
33
+ - cargo build --verbose --no-default-features --features="lowmemory"
33
34
- cargo build --verbose
34
35
- cargo test --verbose
35
36
- cargo build --release
Original file line number Diff line number Diff line change
1
+ # 0.15.2 - 2019-08-08
2
+
3
+ - Add feature ` lowmemory ` that reduces the EC mult window size to require
4
+ significantly less memory for the validation context (~ 680B instead of
5
+ ~ 520kB), at the cost of slower validation. It does not affect the speed of
6
+ signing, nor the size of the signing context.
7
+
1
8
# 0.15.0 - 2019-07-25
2
9
3
10
* Implement hex human-readable serde for PublicKey
Original file line number Diff line number Diff line change 1
1
[package ]
2
2
3
3
name = " secp256k1"
4
- version = " 0.15.1 "
4
+ version = " 0.15.2 "
5
5
authors = [ " Dawid Ciężarkiewicz <dpc@ucore.info>" ,
6
6
" Andrew Poelstra <apoelstra@wpsoftware.net>" ]
7
7
license = " CC0-1.0"
@@ -32,6 +32,7 @@ fuzztarget = []
32
32
std = [" rand/std" ]
33
33
recovery = []
34
34
endomorphism = []
35
+ lowmemory = []
35
36
36
37
[dev-dependencies ]
37
38
rand = " 0.6"
Original file line number Diff line number Diff line change @@ -53,9 +53,13 @@ fn main() {
53
53
. define ( "USE_FIELD_INV_BUILTIN" , Some ( "1" ) )
54
54
. define ( "USE_SCALAR_INV_BUILTIN" , Some ( "1" ) )
55
55
. define ( "ENABLE_MODULE_ECDH" , Some ( "1" ) )
56
- . define ( "USE_EXTERNAL_DEFAULT_CALLBACKS" , Some ( "1" ) )
57
- . define ( "ECMULT_WINDOW_SIZE" , Some ( "15" ) ) ; // This is the default in the configure file (`auto`)
56
+ . define ( "USE_EXTERNAL_DEFAULT_CALLBACKS" , Some ( "1" ) ) ;
58
57
58
+ if cfg ! ( feature = "lowmemory" ) {
59
+ base_config. define ( "ECMULT_WINDOW_SIZE" , Some ( "4" ) ) ; // A low-enough value to consume neglible memory
60
+ } else {
61
+ base_config. define ( "ECMULT_WINDOW_SIZE" , Some ( "15" ) ) ; // This is the default in the configure file (`auto`)
62
+ }
59
63
#[ cfg( feature = "endomorphism" ) ]
60
64
base_config. define ( "USE_ENDOMORPHISM" , Some ( "1" ) ) ;
61
65
#[ cfg( feature = "recovery" ) ]
You can’t perform that action at this time.
0 commit comments