ufsecp 3.13.1 → 3.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -14
- package/package.json +2 -2
- package/prebuilds/darwin-arm64/libufsecp.dylib +0 -0
- package/prebuilds/linux-arm64/libufsecp.so +0 -0
- package/prebuilds/linux-arm64/libufsecp.so.3 +0 -0
- package/prebuilds/linux-arm64/libufsecp.so.3.15.2 +0 -0
- package/prebuilds/linux-x64/libufsecp.so +0 -0
- package/prebuilds/linux-x64/libufsecp.so.3 +0 -0
- package/prebuilds/linux-x64/libufsecp.so.3.15.2 +0 -0
- package/prebuilds/win32-x64/ufsecp.dll +0 -0
- package/prebuilds/linux-arm64/libufsecp.so.3.13.1 +0 -0
- package/prebuilds/linux-x64/libufsecp.so.3.13.1 +0 -0
package/README.md
CHANGED
|
@@ -4,15 +4,14 @@ High-performance Node.js native addon for secp256k1 elliptic curve cryptography,
|
|
|
4
4
|
|
|
5
5
|
## Features
|
|
6
6
|
|
|
7
|
-
- **ECDSA**
|
|
8
|
-
- **Schnorr**
|
|
9
|
-
- **ECDH**
|
|
10
|
-
- **BIP-32**
|
|
11
|
-
- **Taproot**
|
|
12
|
-
- **Addresses**
|
|
13
|
-
- **WIF**
|
|
14
|
-
- **Hashing**
|
|
15
|
-
- **Constant-time** — all secret-key operations use CT layer automatically
|
|
7
|
+
- **ECDSA** -- sign, verify, recover, DER serialization (RFC 6979)
|
|
8
|
+
- **Schnorr** -- BIP-340 sign/verify
|
|
9
|
+
- **ECDH** -- compressed, x-only, raw shared secret
|
|
10
|
+
- **BIP-32** -- HD key derivation
|
|
11
|
+
- **Taproot** -- output key tweaking (BIP-341)
|
|
12
|
+
- **Addresses** -- P2PKH, P2WPKH, P2TR
|
|
13
|
+
- **WIF** -- encode/decode
|
|
14
|
+
- **Hashing** -- SHA-256 (hardware-accelerated), HASH160, tagged hash
|
|
16
15
|
|
|
17
16
|
## Install
|
|
18
17
|
|
|
@@ -111,15 +110,15 @@ const { outputKeyX, parity } = secp.taprootOutputKey(xOnlyPub);
|
|
|
111
110
|
const tweakedPriv = secp.taprootTweakPrivkey(privkey);
|
|
112
111
|
```
|
|
113
112
|
|
|
114
|
-
##
|
|
113
|
+
## Architecture Note
|
|
115
114
|
|
|
116
|
-
Built on hand-optimized C/C++ with platform-specific acceleration (AVX2, SHA-NI, BMI2 on x86; NEON on ARM).
|
|
115
|
+
Built on hand-optimized C/C++ with platform-specific acceleration (AVX2, SHA-NI, BMI2 on x86; NEON on ARM). The C ABI layer uses the **fast** (variable-time) implementation for maximum throughput. A constant-time (CT) layer with identical mathematical operations is available via the C++ headers for applications requiring timing-attack resistance.
|
|
117
116
|
|
|
118
117
|
| Operation | x86-64 | ARM64 | RISC-V |
|
|
119
118
|
|-----------|--------|-------|--------|
|
|
120
|
-
| ECDSA Sign | 8
|
|
121
|
-
| kG (generator mul) | 5
|
|
122
|
-
| kP (arbitrary mul) | 25
|
|
119
|
+
| ECDSA Sign | 8 us | 30 us | -- |
|
|
120
|
+
| kG (generator mul) | 5 us | 14 us | 33 us |
|
|
121
|
+
| kP (arbitrary mul) | 25 us | 131 us | 154 us |
|
|
123
122
|
|
|
124
123
|
## License
|
|
125
124
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ufsecp",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.15.2",
|
|
4
4
|
"description": "Node.js bindings for UltrafastSecp256k1 — high-performance secp256k1 ECC (ufsecp C ABI v1)",
|
|
5
5
|
"main": "lib/ufsecp.js",
|
|
6
6
|
"files": ["lib/ufsecp.js", "prebuilds/", "README.md"],
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"secp256k1", "ecdsa", "schnorr", "bitcoin", "cryptography",
|
|
16
16
|
"elliptic-curve", "taproot", "bip32", "ecdh", "ufsecp"
|
|
17
17
|
],
|
|
18
|
-
"license": "
|
|
18
|
+
"license": "MIT",
|
|
19
19
|
"repository": {
|
|
20
20
|
"type": "git",
|
|
21
21
|
"url": "https://github.com/shrec/UltrafastSecp256k1"
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|