• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

lightningnetwork / lnd / 12199391122

06 Dec 2024 01:10PM UTC coverage: 49.807% (-9.1%) from 58.933%
12199391122

push

github

web-flow
Merge pull request #9337 from Guayaba221/patch-1

chore: fix typo in ruby.md

100137 of 201051 relevant lines covered (49.81%)

2.07 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

35.85
/keychain/signer.go
1
package keychain
2

3
import (
4
        "github.com/btcsuite/btcd/btcec/v2"
5
        "github.com/btcsuite/btcd/btcec/v2/ecdsa"
6
        "github.com/btcsuite/btcd/chaincfg/chainhash"
7
)
8

9
func NewPubKeyMessageSigner(pubKey *btcec.PublicKey, keyLoc KeyLocator,
10
        signer MessageSignerRing) *PubKeyMessageSigner {
4✔
11

4✔
12
        return &PubKeyMessageSigner{
4✔
13
                pubKey:       pubKey,
4✔
14
                keyLoc:       keyLoc,
4✔
15
                digestSigner: signer,
4✔
16
        }
4✔
17
}
4✔
18

19
type PubKeyMessageSigner struct {
20
        pubKey       *btcec.PublicKey
21
        keyLoc       KeyLocator
22
        digestSigner MessageSignerRing
23
}
24

25
func (p *PubKeyMessageSigner) PubKey() *btcec.PublicKey {
×
26
        return p.pubKey
×
27
}
×
28

29
func (p *PubKeyMessageSigner) KeyLocator() KeyLocator {
4✔
30
        return p.keyLoc
4✔
31
}
4✔
32

33
func (p *PubKeyMessageSigner) SignMessage(message []byte,
34
        doubleHash bool) (*ecdsa.Signature, error) {
4✔
35

4✔
36
        return p.digestSigner.SignMessage(p.keyLoc, message, doubleHash)
4✔
37
}
4✔
38

39
func (p *PubKeyMessageSigner) SignMessageCompact(msg []byte,
40
        doubleHash bool) ([]byte, error) {
4✔
41

4✔
42
        return p.digestSigner.SignMessageCompact(p.keyLoc, msg, doubleHash)
4✔
43
}
4✔
44

45
func NewPrivKeyMessageSigner(privKey *btcec.PrivateKey,
46
        keyLoc KeyLocator) *PrivKeyMessageSigner {
×
47

×
48
        return &PrivKeyMessageSigner{
×
49
                privKey: privKey,
×
50
                keyLoc:  keyLoc,
×
51
        }
×
52
}
×
53

54
type PrivKeyMessageSigner struct {
55
        keyLoc  KeyLocator
56
        privKey *btcec.PrivateKey
57
}
58

59
func (p *PrivKeyMessageSigner) PubKey() *btcec.PublicKey {
×
60
        return p.privKey.PubKey()
×
61
}
×
62

63
func (p *PrivKeyMessageSigner) KeyLocator() KeyLocator {
×
64
        return p.keyLoc
×
65
}
×
66

67
func (p *PrivKeyMessageSigner) SignMessage(msg []byte,
68
        doubleHash bool) (*ecdsa.Signature, error) {
×
69

×
70
        var digest []byte
×
71
        if doubleHash {
×
72
                digest = chainhash.DoubleHashB(msg)
×
73
        } else {
×
74
                digest = chainhash.HashB(msg)
×
75
        }
×
76
        return ecdsa.Sign(p.privKey, digest), nil
×
77
}
78

79
func (p *PrivKeyMessageSigner) SignMessageCompact(msg []byte,
80
        doubleHash bool) ([]byte, error) {
×
81

×
82
        var digest []byte
×
83
        if doubleHash {
×
84
                digest = chainhash.DoubleHashB(msg)
×
85
        } else {
×
86
                digest = chainhash.HashB(msg)
×
87
        }
×
88

89
        return ecdsa.SignCompact(p.privKey, digest, true), nil
×
90
}
91

92
var _ SingleKeyMessageSigner = (*PubKeyMessageSigner)(nil)
93
var _ SingleKeyMessageSigner = (*PrivKeyMessageSigner)(nil)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc