/** * Signing + verifying primitives for the two curves phase 4 uses: * Ed25519 (user keys) and ECDSA-secp256k1-SHA256 (org keys, single-key * and multisig members). * * All inputs and outputs are raw `Uint8Array`s. Hex conversion happens * at the boundary in `sign.ts` / `verify.ts`. */ /** * Sign raw bytes with Ed25519. No prehash — Ed25519 signs the message * directly (per RFC 8032). * * @param privKey 32-byte private key * @param msg bytes to sign * @returns 64-byte signature */ export declare function ed25519Sign(privKey: Uint8Array, msg: Uint8Array): Uint8Array; /** * @param pubKey 32-byte raw public key * @param msg bytes that were signed * @param sig 64-byte signature */ export declare function ed25519Verify(pubKey: Uint8Array, msg: Uint8Array, sig: Uint8Array): boolean; export declare function ed25519PublicKey(privKey: Uint8Array): Uint8Array; /** * Sign with ECDSA over secp256k1. We SHA-256 the message first * (phase 4 requires the prehash), then produce a compact `r||s` * signature with low-s normalization (BIP 62) so two signers * producing "the same" signature produce byte-identical output. * * @param privKey 32-byte private key * @param msg bytes to sign (will be SHA-256'd internally) * @returns 64-byte compact signature (r||s), low-s normalized */ export declare function ecdsaSign(privKey: Uint8Array, msg: Uint8Array): Uint8Array; /** * @param pubKey 33-byte compressed public key * @param msg bytes that were signed (will be SHA-256'd internally) * @param sig 64-byte compact signature (r||s) * @returns true iff signature is valid AND low-s normalized */ export declare function ecdsaVerify(pubKey: Uint8Array, msg: Uint8Array, sig: Uint8Array): boolean; /** * Compressed (33-byte) pubkey from a 32-byte private key. */ export declare function ecdsaPublicKey(privKey: Uint8Array): Uint8Array; //# sourceMappingURL=sigs.d.ts.map