Skip to content

Commit 76b545c

Browse files
v1.1.2; 2025-04-08
1 parent 438626c commit 76b545c

File tree

4 files changed

+23
-48
lines changed

4 files changed

+23
-48
lines changed

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
### v1.1.2; 2025-04-08
2+
```
3+
switched base58 lib to "github.com/cyclone-github/base58" for greatly improved base58 performance
4+
```
15
### v1.1.1; 2025-03-20
26
```
37
added mode: yescrypt (https://github.com/cyclone-github/yescrypt_crack)

go.mod

+3-3
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ module hashgen
33
go 1.24.1
44

55
require (
6-
github.com/btcsuite/btcutil v1.0.2
6+
github.com/cyclone-github/base58 v0.0.0-20250408214655-2d469722cb56
77
github.com/openwall/yescrypt-go v1.0.0
8-
golang.org/x/crypto v0.36.0
8+
golang.org/x/crypto v0.37.0
99
)
1010

11-
require golang.org/x/sys v0.31.0 // indirect
11+
require golang.org/x/sys v0.32.0 // indirect

go.sum

+6-39
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,8 @@
1-
github.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII=
2-
github.com/btcsuite/btcd v0.20.1-beta/go.mod h1:wVuoA8VJLEcwgqHBwHmzLRazpKxTv13Px/pDuV7OomQ=
3-
github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA=
4-
github.com/btcsuite/btcutil v0.0.0-20190425235716-9e5f4b9a998d/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg=
5-
github.com/btcsuite/btcutil v1.0.2 h1:9iZ1Terx9fMIOtq1VrwdqfsATL9MC2l8ZrUY6YZ2uts=
6-
github.com/btcsuite/btcutil v1.0.2/go.mod h1:j9HUFwoQRsZL3V4n+qG+CUnEGHOarIxfC3Le2Yhbcts=
7-
github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg=
8-
github.com/btcsuite/goleveldb v0.0.0-20160330041536-7834afc9e8cd/go.mod h1:F+uVaaLLH7j4eDXPRvw78tMflu7Ie2bzYOH4Y8rRKBY=
9-
github.com/btcsuite/snappy-go v0.0.0-20151229074030-0bdef8d06723/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc=
10-
github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY=
11-
github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs=
12-
github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
13-
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
14-
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
15-
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
16-
github.com/jessevdk/go-flags v0.0.0-20141203071132-1679536dcc89/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI=
17-
github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ=
18-
github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4=
19-
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
20-
github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
21-
github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
1+
github.com/cyclone-github/base58 v0.0.0-20250408214655-2d469722cb56 h1:VBlE6ILfgE9R2PtPohJTEemm/mSs7PLa+hAO9r8dbzg=
2+
github.com/cyclone-github/base58 v0.0.0-20250408214655-2d469722cb56/go.mod h1:3SJwoFvv3I+BxJavWGMWsvBfIb0HQ1HrJclPSQecKk8=
223
github.com/openwall/yescrypt-go v1.0.0 h1:jsGk48zkFvtUjGVOhYPGh+CS595JmTRcKnpggK2AON4=
234
github.com/openwall/yescrypt-go v1.0.0/go.mod h1:e6CWtFizUEOUttaOjeVMiv1lJaJie3mfOtLJ9CCD6sA=
24-
golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
25-
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
26-
golang.org/x/crypto v0.0.0-20200115085410-6d4e4cb37c7d/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
27-
golang.org/x/crypto v0.36.0 h1:AnAEvhDddvBdpY+uR+MyHmuZzzNqXSe/GvuDeob5L34=
28-
golang.org/x/crypto v0.36.0/go.mod h1:Y4J0ReaxCR1IMaabaSMugxJES1EpwhBHhv2bDHklZvc=
29-
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
30-
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
31-
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
32-
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
33-
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
34-
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
35-
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
36-
golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
37-
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
38-
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
39-
gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
40-
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
41-
gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
5+
golang.org/x/crypto v0.37.0 h1:kJNSjF/Xp7kU0iB2Z+9viTPMW4EqqsrywMXLJOOsXSE=
6+
golang.org/x/crypto v0.37.0/go.mod h1:vg+k43peMZ0pUMhYmVAWysMK35e6ioLh3wB8ZCAfbVc=
7+
golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20=
8+
golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=

hashgen.go

+10-6
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import (
2525
"time"
2626
"unicode/utf16"
2727

28-
"github.com/btcsuite/btcutil/base58"
28+
"github.com/cyclone-github/base58"
2929
"github.com/openwall/yescrypt-go"
3030
"golang.org/x/crypto/argon2"
3131
"golang.org/x/crypto/bcrypt"
@@ -70,10 +70,12 @@ v1.1.0; 2025-03-19
7070
v1.1.1; 2025-03-20
7171
added mode: yescrypt (https://github.com/cyclone-github/yescrypt_crack)
7272
tweaked read/write buffers for per-CPU thread
73+
v1.1.2; 2025-04-08
74+
switched base58 lib to "github.com/cyclone-github/base58" for greatly improved base58 performance
7375
*/
7476

7577
func versionFunc() {
76-
fmt.Fprintln(os.Stderr, "Cyclone hash generator v1.1.1; 2025-03-20")
78+
fmt.Fprintln(os.Stderr, "Cyclone hash generator v1.1.2; 2025-04-08")
7779
}
7880

7981
// help function
@@ -417,16 +419,18 @@ func hashBytes(hashFunc string, data []byte, cost int) string {
417419
return string(decodedBytes[:n]) // convert the decoded bytes to a string
418420
// base58 encode
419421
case "base58encode", "base58-e", "base58e":
420-
return base58.Encode(data)
422+
return base58.StdEncoding.EncodeToString(data)
423+
421424
// base58 decode
422425
case "base58decode", "base58-d", "base58d":
423426
trimmedData := bytes.TrimSpace(data)
424-
decodedBytes := base58.Decode(string(trimmedData))
425-
if len(decodedBytes) == 0 {
426-
fmt.Fprintln(os.Stderr, "Invalid Base58 string")
427+
decodedBytes, err := base58.StdEncoding.DecodeString(string(trimmedData))
428+
if err != nil {
429+
fmt.Fprintln(os.Stderr, "Invalid Base58 string:", err)
427430
return ""
428431
}
429432
return string(decodedBytes)
433+
430434
// plaintext -m 99999
431435
case "plaintext", "plain", "99999":
432436
return string(data) // convert byte slice to string

0 commit comments

Comments
 (0)