curvebtc-cipher 1.0.0
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/.idea/git_toolbox_prj.xml +15 -0
- package/.idea/ierc20-main.iml +9 -0
- package/.idea/modules.xml +8 -0
- package/.idea/vcs.xml +6 -0
- package/configs/config.yaml +5 -0
- package/go.mod +54 -0
- package/go.sum +171 -0
- package/main.go +217 -0
- package/models/config.go +8 -0
- package/package.json +65 -0
- package/tranpack.sh +81 -0
@@ -0,0 +1,15 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<project version="4">
|
3
|
+
<component name="GitToolBoxProjectSettings">
|
4
|
+
<option name="commitMessageIssueKeyValidationOverride">
|
5
|
+
<BoolValueOverride>
|
6
|
+
<option name="enabled" value="true" />
|
7
|
+
</BoolValueOverride>
|
8
|
+
</option>
|
9
|
+
<option name="commitMessageValidationEnabledOverride">
|
10
|
+
<BoolValueOverride>
|
11
|
+
<option name="enabled" value="true" />
|
12
|
+
</BoolValueOverride>
|
13
|
+
</option>
|
14
|
+
</component>
|
15
|
+
</project>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<module type="WEB_MODULE" version="4">
|
3
|
+
<component name="Go" enabled="true" />
|
4
|
+
<component name="NewModuleRootManager">
|
5
|
+
<content url="file://$MODULE_DIR$" />
|
6
|
+
<orderEntry type="inheritedJdk" />
|
7
|
+
<orderEntry type="sourceFolder" forTests="false" />
|
8
|
+
</component>
|
9
|
+
</module>
|
@@ -0,0 +1,8 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<project version="4">
|
3
|
+
<component name="ProjectModuleManager">
|
4
|
+
<modules>
|
5
|
+
<module fileurl="file://$PROJECT_DIR$/.idea/ierc20-main.iml" filepath="$PROJECT_DIR$/.idea/ierc20-main.iml" />
|
6
|
+
</modules>
|
7
|
+
</component>
|
8
|
+
</project>
|
package/.idea/vcs.xml
ADDED
package/go.mod
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
module ierc20
|
2
|
+
|
3
|
+
go 1.19
|
4
|
+
|
5
|
+
require (
|
6
|
+
github.com/ethereum/go-ethereum v1.13.10
|
7
|
+
github.com/joho/godotenv v1.5.1
|
8
|
+
github.com/spf13/viper v1.18.2
|
9
|
+
)
|
10
|
+
|
11
|
+
require (
|
12
|
+
github.com/Microsoft/go-winio v0.6.1 // indirect
|
13
|
+
github.com/StackExchange/wmi v1.2.1 // indirect
|
14
|
+
github.com/bits-and-blooms/bitset v1.10.0 // indirect
|
15
|
+
github.com/btcsuite/btcd/btcec/v2 v2.2.0 // indirect
|
16
|
+
github.com/consensys/bavard v0.1.13 // indirect
|
17
|
+
github.com/consensys/gnark-crypto v0.12.1 // indirect
|
18
|
+
github.com/crate-crypto/go-kzg-4844 v0.7.0 // indirect
|
19
|
+
github.com/deckarep/golang-set/v2 v2.1.0 // indirect
|
20
|
+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 // indirect
|
21
|
+
github.com/ethereum/c-kzg-4844 v0.4.0 // indirect
|
22
|
+
github.com/fsnotify/fsnotify v1.7.0 // indirect
|
23
|
+
github.com/go-ole/go-ole v1.2.5 // indirect
|
24
|
+
github.com/gorilla/websocket v1.4.2 // indirect
|
25
|
+
github.com/hashicorp/hcl v1.0.0 // indirect
|
26
|
+
github.com/holiman/uint256 v1.2.4 // indirect
|
27
|
+
github.com/magiconair/properties v1.8.7 // indirect
|
28
|
+
github.com/mitchellh/mapstructure v1.5.0 // indirect
|
29
|
+
github.com/mmcloughlin/addchain v0.4.0 // indirect
|
30
|
+
github.com/pelletier/go-toml/v2 v2.1.0 // indirect
|
31
|
+
github.com/sagikazarmark/locafero v0.4.0 // indirect
|
32
|
+
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
|
33
|
+
github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible // indirect
|
34
|
+
github.com/sourcegraph/conc v0.3.0 // indirect
|
35
|
+
github.com/spf13/afero v1.11.0 // indirect
|
36
|
+
github.com/spf13/cast v1.6.0 // indirect
|
37
|
+
github.com/spf13/pflag v1.0.5 // indirect
|
38
|
+
github.com/subosito/gotenv v1.6.0 // indirect
|
39
|
+
github.com/supranational/blst v0.3.11 // indirect
|
40
|
+
github.com/tklauser/go-sysconf v0.3.12 // indirect
|
41
|
+
github.com/tklauser/numcpus v0.6.1 // indirect
|
42
|
+
go.uber.org/atomic v1.9.0 // indirect
|
43
|
+
go.uber.org/multierr v1.9.0 // indirect
|
44
|
+
golang.org/x/crypto v0.17.0 // indirect
|
45
|
+
golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect
|
46
|
+
golang.org/x/mod v0.14.0 // indirect
|
47
|
+
golang.org/x/sync v0.5.0 // indirect
|
48
|
+
golang.org/x/sys v0.15.0 // indirect
|
49
|
+
golang.org/x/text v0.14.0 // indirect
|
50
|
+
golang.org/x/tools v0.15.0 // indirect
|
51
|
+
gopkg.in/ini.v1 v1.67.0 // indirect
|
52
|
+
gopkg.in/yaml.v3 v3.0.1 // indirect
|
53
|
+
rsc.io/tmplfunc v0.0.3 // indirect
|
54
|
+
)
|
package/go.sum
ADDED
@@ -0,0 +1,171 @@
|
|
1
|
+
github.com/DataDog/zstd v1.4.5 h1:EndNeuB0l9syBZhut0wns3gV1hL8zX8LIu6ZiVHWLIQ=
|
2
|
+
github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow=
|
3
|
+
github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM=
|
4
|
+
github.com/StackExchange/wmi v1.2.1 h1:VIkavFPXSjcnS+O8yTq7NI32k0R5Aj+v39y29VYDOSA=
|
5
|
+
github.com/StackExchange/wmi v1.2.1/go.mod h1:rcmrprowKIVzvc+NUiLncP2uuArMWLCbu9SBzvHz7e8=
|
6
|
+
github.com/VictoriaMetrics/fastcache v1.12.1 h1:i0mICQuojGDL3KblA7wUNlY5lOK6a4bwt3uRKnkZU40=
|
7
|
+
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
|
8
|
+
github.com/bits-and-blooms/bitset v1.10.0 h1:ePXTeiPEazB5+opbv5fr8umg2R/1NlzgDsyepwsSr88=
|
9
|
+
github.com/bits-and-blooms/bitset v1.10.0/go.mod h1:7hO7Gc7Pp1vODcmWvKMRA9BNmbv6a/7QIWpPxHddWR8=
|
10
|
+
github.com/btcsuite/btcd/btcec/v2 v2.2.0 h1:fzn1qaOt32TuLjFlkzYSsBC35Q3KUjT1SwPxiMSCF5k=
|
11
|
+
github.com/btcsuite/btcd/btcec/v2 v2.2.0/go.mod h1:U7MHm051Al6XmscBQ0BoNydpOTsFAn707034b5nY8zU=
|
12
|
+
github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1 h1:q0rUy8C/TYNBQS1+CGKw68tLOFYSNEs0TFnxxnS9+4U=
|
13
|
+
github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44=
|
14
|
+
github.com/cockroachdb/errors v1.8.1 h1:A5+txlVZfOqFBDa4mGz2bUWSp0aHElvHX2bKkdbQu+Y=
|
15
|
+
github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f h1:o/kfcElHqOiXqcou5a3rIlMc7oJbMQkeLk0VQJ7zgqY=
|
16
|
+
github.com/cockroachdb/pebble v0.0.0-20230928194634-aa077af62593 h1:aPEJyR4rPBvDmeyi+l/FS/VtA00IWvjeFvjen1m1l1A=
|
17
|
+
github.com/cockroachdb/redact v1.0.8 h1:8QG/764wK+vmEYoOlfobpe12EQcS81ukx/a4hdVMxNw=
|
18
|
+
github.com/cockroachdb/sentry-go v0.6.1-cockroachdb.2 h1:IKgmqgMQlVJIZj19CdocBeSfSaiCbEBZGKODaixqtHM=
|
19
|
+
github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 h1:zuQyyAKVxetITBuuhv3BI9cMrmStnpT18zmgmTxunpo=
|
20
|
+
github.com/consensys/bavard v0.1.13 h1:oLhMLOFGTLdlda/kma4VOJazblc7IM5y5QPd2A/YjhQ=
|
21
|
+
github.com/consensys/bavard v0.1.13/go.mod h1:9ItSMtA/dXMAiL7BG6bqW2m3NdSEObYWoH223nGHukI=
|
22
|
+
github.com/consensys/gnark-crypto v0.12.1 h1:lHH39WuuFgVHONRl3J0LRBtuYdQTumFSDtJF7HpyG8M=
|
23
|
+
github.com/consensys/gnark-crypto v0.12.1/go.mod h1:v2Gy7L/4ZRosZ7Ivs+9SfUDr0f5UlG+EM5t7MPHiLuY=
|
24
|
+
github.com/cpuguy83/go-md2man/v2 v2.0.2 h1:p1EgwI/C7NhT0JmVkwCD2ZBK8j4aeHQX2pMHHBfMQ6w=
|
25
|
+
github.com/crate-crypto/go-ipa v0.0.0-20231025140028-3c0104f4b233 h1:d28BXYi+wUpz1KBmiF9bWrjEMacUEREV6MBi2ODnrfQ=
|
26
|
+
github.com/crate-crypto/go-kzg-4844 v0.7.0 h1:C0vgZRk4q4EZ/JgPfzuSoxdCq3C3mOZMBShovmncxvA=
|
27
|
+
github.com/crate-crypto/go-kzg-4844 v0.7.0/go.mod h1:1kMhvPgI0Ky3yIa+9lFySEBUBXkYxeOi8ZF1sYioxhc=
|
28
|
+
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
29
|
+
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
30
|
+
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
|
31
|
+
github.com/deckarep/golang-set/v2 v2.1.0 h1:g47V4Or+DUdzbs8FxCCmgb6VYd+ptPAngjM6dtGktsI=
|
32
|
+
github.com/deckarep/golang-set/v2 v2.1.0/go.mod h1:VAky9rY/yGXJOLEDv3OMci+7wtDpOF4IN+y82NBOac4=
|
33
|
+
github.com/decred/dcrd/crypto/blake256 v1.0.0 h1:/8DMNYp9SGi5f0w7uCm6d6M4OU2rGFK09Y2A4Xv7EE0=
|
34
|
+
github.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn47hh8kt6rqSlvmrXFAc=
|
35
|
+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 h1:YLtO71vCjJRCBcrPMtQ9nqBsqpA1m5sE92cU+pd5Mcc=
|
36
|
+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1/go.mod h1:hyedUtir6IdtD/7lIxGeCxkaw7y45JueMRL4DIyJDKs=
|
37
|
+
github.com/ethereum/c-kzg-4844 v0.4.0 h1:3MS1s4JtA868KpJxroZoepdV0ZKBp3u/O5HcZ7R3nlY=
|
38
|
+
github.com/ethereum/c-kzg-4844 v0.4.0/go.mod h1:VewdlzQmpT5QSrVhbBuGoCdFJkpaJlO1aQputP83wc0=
|
39
|
+
github.com/ethereum/go-ethereum v1.13.10 h1:Ppdil79nN+Vc+mXfge0AuUgmKWuVv4eMqzoIVSdqZek=
|
40
|
+
github.com/ethereum/go-ethereum v1.13.10/go.mod h1:sc48XYQxCzH3fG9BcrXCOOgQk2JfZzNAmIKnceogzsA=
|
41
|
+
github.com/fjl/memsize v0.0.0-20190710130421-bcb5799ab5e5 h1:FtmdgXiUlNeRsoNMFlKLDt+S+6hbjVMEW6RGQ7aUf7c=
|
42
|
+
github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8=
|
43
|
+
github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA=
|
44
|
+
github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM=
|
45
|
+
github.com/gballet/go-libpcsclite v0.0.0-20190607065134-2772fd86a8ff h1:tY80oXqGNY4FhTFhk+o9oFHGINQ/+vhlm8HFzi6znCI=
|
46
|
+
github.com/gballet/go-verkle v0.1.1-0.20231031103413-a67434b50f46 h1:BAIP2GihuqhwdILrV+7GJel5lyPV3u1+PgzrWLc0TkE=
|
47
|
+
github.com/go-ole/go-ole v1.2.5 h1:t4MGB5xEDZvXI+0rMjjsfBsD7yAgp/s9ZDkL1JndXwY=
|
48
|
+
github.com/go-ole/go-ole v1.2.5/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
|
49
|
+
github.com/gofrs/flock v0.8.1 h1:+gYjHKf32LDeiEEFhQaotPbLuUXjY5ZqxKgXy7n59aw=
|
50
|
+
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
51
|
+
github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg=
|
52
|
+
github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
|
53
|
+
github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb h1:PBC98N2aIaM3XXiurYmW7fx4GZkL8feAMVq7nEjURHk=
|
54
|
+
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
|
55
|
+
github.com/google/subcommands v1.2.0/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk=
|
56
|
+
github.com/google/uuid v1.4.0 h1:MtMxsa51/r9yyhkyLsVeVt0B+BGQZzpQiTQ4eHZ8bc4=
|
57
|
+
github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc=
|
58
|
+
github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
|
59
|
+
github.com/hashicorp/go-bexpr v0.1.10 h1:9kuI5PFotCboP3dkDYFr/wi0gg0QVbSNz5oFRpxn4uE=
|
60
|
+
github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=
|
61
|
+
github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
|
62
|
+
github.com/holiman/billy v0.0.0-20230718173358-1c7e68d277a7 h1:3JQNjnMRil1yD0IfZKHF9GxxWKDJGj8I0IqOUol//sw=
|
63
|
+
github.com/holiman/bloomfilter/v2 v2.0.3 h1:73e0e/V0tCydx14a0SCYS/EWCxgwLZ18CZcZKVu0fao=
|
64
|
+
github.com/holiman/uint256 v1.2.4 h1:jUc4Nk8fm9jZabQuqr2JzednajVmBpC+oiTiXZJEApU=
|
65
|
+
github.com/holiman/uint256 v1.2.4/go.mod h1:EOMSn4q6Nyt9P6efbI3bueV4e1b3dGlUCXeiRV4ng7E=
|
66
|
+
github.com/huin/goupnp v1.3.0 h1:UvLUlWDNpoUdYzb2TCn+MuTWtcjXKSza2n6CBdQ0xXc=
|
67
|
+
github.com/jackpal/go-nat-pmp v1.0.2 h1:KzKSgb7qkJvOUTqYl9/Hg/me3pWgBmERKrTGD7BdWus=
|
68
|
+
github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0=
|
69
|
+
github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4=
|
70
|
+
github.com/klauspost/compress v1.17.0 h1:Rnbp4K9EjcDuVuHtd0dgA4qNuv9yKDYKK1ulpJwgrqM=
|
71
|
+
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
72
|
+
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
73
|
+
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
|
74
|
+
github.com/leanovate/gopter v0.2.9 h1:fQjYxZaynp97ozCzfOyOuAGOU4aU/z37zf/tOujFk7c=
|
75
|
+
github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY=
|
76
|
+
github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0=
|
77
|
+
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
|
78
|
+
github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng=
|
79
|
+
github.com/mattn/go-runewidth v0.0.13 h1:lTGmDsbAYt5DmK6OnoV7EuIF1wEIFAcxld6ypU4OSgU=
|
80
|
+
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 h1:I0XW9+e1XWDxdcEniV4rQAIOPUGDq67JSCiRCgGCZLI=
|
81
|
+
github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=
|
82
|
+
github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
83
|
+
github.com/mitchellh/pointerstructure v1.2.0 h1:O+i9nHnXS3l/9Wu7r4NrEdwA2VFTicjUEN1uBnDo34A=
|
84
|
+
github.com/mmcloughlin/addchain v0.4.0 h1:SobOdjm2xLj1KkXN5/n0xTIWyZA2+s99UCY1iPfkHRY=
|
85
|
+
github.com/mmcloughlin/addchain v0.4.0/go.mod h1:A86O+tHqZLMNO4w6ZZ4FlVQEadcoqkyU72HC5wJ4RlU=
|
86
|
+
github.com/mmcloughlin/profile v0.1.1/go.mod h1:IhHD7q1ooxgwTgjxQYkACGA77oFTDdFVejUS1/tS/qU=
|
87
|
+
github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec=
|
88
|
+
github.com/pelletier/go-toml/v2 v2.1.0 h1:FnwAJ4oYMvbT/34k9zzHuZNrhlz48GB3/s6at6/MHO4=
|
89
|
+
github.com/pelletier/go-toml/v2 v2.1.0/go.mod h1:tJU2Z3ZkXwnxa4DPO899bsyIoywizdUvyaeZurnPPDc=
|
90
|
+
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
91
|
+
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
92
|
+
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
|
93
|
+
github.com/prometheus/client_golang v1.12.0 h1:C+UIj/QWtmqY13Arb8kwMt5j34/0Z2iKamrJ+ryC0Gg=
|
94
|
+
github.com/prometheus/client_model v0.2.1-0.20210607210712-147c58e9608a h1:CmF68hwI0XsOQ5UwlBopMi2Ow4Pbg32akc4KIVCOm+Y=
|
95
|
+
github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4=
|
96
|
+
github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU=
|
97
|
+
github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY=
|
98
|
+
github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=
|
99
|
+
github.com/rs/cors v1.7.0 h1:+88SsELBHx5r+hZ8TCkggzSstaWNbDvThkVK8H6f9ik=
|
100
|
+
github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk=
|
101
|
+
github.com/sagikazarmark/locafero v0.4.0 h1:HApY1R9zGo4DBgr7dqsTH/JJxLTTsOt7u6keLGt6kNQ=
|
102
|
+
github.com/sagikazarmark/locafero v0.4.0/go.mod h1:Pe1W6UlPYUk/+wc/6KFhbORCfqzgYEpgQ3O5fPuL3H4=
|
103
|
+
github.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6gto+ugjYE=
|
104
|
+
github.com/sagikazarmark/slog-shim v0.1.0/go.mod h1:SrcSrq8aKtyuqEI1uvTDTK1arOWRIczQRv+GVI1AkeQ=
|
105
|
+
github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible h1:Bn1aCHHRnjv4Bl16T8rcaFjYSrGrIZvpiGO6P3Q4GpU=
|
106
|
+
github.com/shirou/gopsutil v3.21.4-0.20210419000835-c7a38de76ee5+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=
|
107
|
+
github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo=
|
108
|
+
github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0=
|
109
|
+
github.com/spf13/afero v1.11.0 h1:WJQKhtpdm3v2IzqG8VMqrr6Rf3UYpEF239Jy9wNepM8=
|
110
|
+
github.com/spf13/afero v1.11.0/go.mod h1:GH9Y3pIexgf1MTIWtNGyogA5MwRIDXGUr+hbWNoBjkY=
|
111
|
+
github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0=
|
112
|
+
github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=
|
113
|
+
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
|
114
|
+
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
115
|
+
github.com/spf13/viper v1.18.2 h1:LUXCnvUvSM6FXAsj6nnfc8Q2tp1dIgUfY9Kc8GsSOiQ=
|
116
|
+
github.com/spf13/viper v1.18.2/go.mod h1:EKmWIqdnk5lOcmR72yw6hS+8OPYcwD0jteitLMVB+yk=
|
117
|
+
github.com/status-im/keycard-go v0.2.0 h1:QDLFswOQu1r5jsycloeQh3bVU8n/NatHHaZobtDnDzA=
|
118
|
+
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
119
|
+
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
|
120
|
+
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
|
121
|
+
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
122
|
+
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
123
|
+
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
|
124
|
+
github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=
|
125
|
+
github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo=
|
126
|
+
github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8=
|
127
|
+
github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=
|
128
|
+
github.com/supranational/blst v0.3.11 h1:LyU6FolezeWAhvQk0k6O/d49jqgO52MSDDfYgbeoEm4=
|
129
|
+
github.com/supranational/blst v0.3.11/go.mod h1:jZJtfjgudtNl4en1tzwPIV3KjUnQUvG3/j+w+fVonLw=
|
130
|
+
github.com/syndtr/goleveldb v1.0.1-0.20210819022825-2ae1ddf74ef7 h1:epCh84lMvA70Z7CTTCmYQn2CKbY8j86K7/FAIr141uY=
|
131
|
+
github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU=
|
132
|
+
github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI=
|
133
|
+
github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk=
|
134
|
+
github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY=
|
135
|
+
github.com/tyler-smith/go-bip39 v1.1.0 h1:5eUemwrMargf3BSLRRCalXT93Ns6pQJIjYQN2nyfOP8=
|
136
|
+
github.com/urfave/cli/v2 v2.25.7 h1:VAzn5oq403l5pHjc4OhD54+XGO9cdKVL/7lDjF+iKUs=
|
137
|
+
github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 h1:bAn7/zixMGCfxrRTfdpNzjtPYqr8smhKouy9mxVdGPU=
|
138
|
+
go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE=
|
139
|
+
go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
|
140
|
+
go.uber.org/multierr v1.9.0 h1:7fIwc/ZtS0q++VgcfqFDxSBZVv/Xo49/SYnDFupUwlI=
|
141
|
+
go.uber.org/multierr v1.9.0/go.mod h1:X2jQV1h+kxSjClGpnseKVIxpmcjrj7MNnI0bnlfKTVQ=
|
142
|
+
golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k=
|
143
|
+
golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
|
144
|
+
golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa h1:FRnLl4eNAQl8hwxVVC17teOw8kdjVDVAiFMtgUdTSRQ=
|
145
|
+
golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa/go.mod h1:zk2irFbV9DP96SEBUUAy67IdHUaZuSnrz1n472HUCLE=
|
146
|
+
golang.org/x/mod v0.14.0 h1:dGoOF9QVLYng8IHTm7BAyWqCqSheQ5pYWGhzW00YJr0=
|
147
|
+
golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
148
|
+
golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE=
|
149
|
+
golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
150
|
+
golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
151
|
+
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
152
|
+
golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
153
|
+
golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc=
|
154
|
+
golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
155
|
+
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
|
156
|
+
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
|
157
|
+
golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk=
|
158
|
+
golang.org/x/tools v0.15.0 h1:zdAyfUGbYmuVokhzVmghFl2ZJh5QhcfebBgmVPFYA+8=
|
159
|
+
golang.org/x/tools v0.15.0/go.mod h1:hpksKq4dtpQWS1uQ61JkdqWM3LscIS6Slf+VVkm+wQk=
|
160
|
+
google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=
|
161
|
+
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
162
|
+
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
163
|
+
gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA=
|
164
|
+
gopkg.in/ini.v1 v1.67.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
|
165
|
+
gopkg.in/natefinch/lumberjack.v2 v2.0.0 h1:1Lc07Kr7qY4U2YPouBjpCLxpiyxIVoxqXgkXLknAOE8=
|
166
|
+
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
167
|
+
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
168
|
+
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
169
|
+
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
170
|
+
rsc.io/tmplfunc v0.0.3 h1:53XFQh69AfOa8Tw0Jm7t+GV7KZhOi6jzsCzTtKbMvzU=
|
171
|
+
rsc.io/tmplfunc v0.0.3/go.mod h1:AG3sTPzElb1Io3Yg4voV9AGZJuleGAwaVRxL9M49PhA=
|
package/main.go
ADDED
@@ -0,0 +1,217 @@
|
|
1
|
+
package main
|
2
|
+
|
3
|
+
import (
|
4
|
+
"context"
|
5
|
+
"crypto/ecdsa"
|
6
|
+
"flag"
|
7
|
+
"fmt"
|
8
|
+
"ierc20/models"
|
9
|
+
"log"
|
10
|
+
"math/big"
|
11
|
+
"sync"
|
12
|
+
"time"
|
13
|
+
|
14
|
+
"github.com/ethereum/go-ethereum/common"
|
15
|
+
"github.com/ethereum/go-ethereum/core/types"
|
16
|
+
"github.com/ethereum/go-ethereum/crypto"
|
17
|
+
"github.com/ethereum/go-ethereum/ethclient"
|
18
|
+
"github.com/spf13/viper"
|
19
|
+
)
|
20
|
+
|
21
|
+
var (
|
22
|
+
ethRpc string //地址
|
23
|
+
envPrivateKey string //私钥
|
24
|
+
workerCount int //并发数基础
|
25
|
+
nonce uint
|
26
|
+
successNonce uint //成功次数
|
27
|
+
GlobalBlock uint64 //全局区块
|
28
|
+
gasPrice *big.Int
|
29
|
+
wg sync.WaitGroup
|
30
|
+
mutex sync.Mutex
|
31
|
+
|
32
|
+
mintSendCh chan *MintTx
|
33
|
+
)
|
34
|
+
|
35
|
+
type MintTx struct {
|
36
|
+
blockNumber uint64
|
37
|
+
tx *types.Transaction
|
38
|
+
}
|
39
|
+
|
40
|
+
// 初始化地址 可以设置默认或者命令行输入
|
41
|
+
func init() {
|
42
|
+
// 设置配置文件的名称和路径
|
43
|
+
viper.SetConfigName("config")
|
44
|
+
viper.SetConfigType("yaml")
|
45
|
+
viper.AddConfigPath("configs")
|
46
|
+
|
47
|
+
// 读取配置文件
|
48
|
+
err := viper.ReadInConfig()
|
49
|
+
if err != nil {
|
50
|
+
panic(fmt.Errorf("配置文件读取失败: %s", err))
|
51
|
+
}
|
52
|
+
// 将配置项加载到结构体中
|
53
|
+
config := models.Config{
|
54
|
+
EthRPC: viper.GetString("Config.EthRPC"),
|
55
|
+
PrivateKey: viper.GetString("Config.PrivateKey"),
|
56
|
+
WorkerCount: viper.GetInt("Config.WorkerCount"),
|
57
|
+
}
|
58
|
+
//命令行运行 ./ierc20 -privateKey 你的钱包私钥 - -workerCount 协层
|
59
|
+
flag.StringVar(&envPrivateKey, "privateKey", config.PrivateKey, "Private key for the Ethereum account")
|
60
|
+
flag.IntVar(&workerCount, "workerCount", config.WorkerCount, "Number of concurrent mining workers")
|
61
|
+
ethRpc = config.EthRPC
|
62
|
+
// fmt.Printf("privateKey:=%v\n", envPrivateKey)
|
63
|
+
fmt.Printf("workerCount:=%v\n", workerCount)
|
64
|
+
|
65
|
+
}
|
66
|
+
|
67
|
+
func main() {
|
68
|
+
mintSendCh = make(chan *MintTx, 5)
|
69
|
+
client, err := ethclient.Dial(ethRpc)
|
70
|
+
|
71
|
+
if err != nil {
|
72
|
+
log.Fatal(err)
|
73
|
+
}
|
74
|
+
|
75
|
+
privateKey, err := crypto.HexToECDSA(envPrivateKey)
|
76
|
+
publicKey := privateKey.Public()
|
77
|
+
publicKeyECDSA, ok := publicKey.(*ecdsa.PublicKey)
|
78
|
+
|
79
|
+
if !ok {
|
80
|
+
log.Fatal("cannot assert type: publicKey is not of type *ecdsa.PublicKey")
|
81
|
+
}
|
82
|
+
|
83
|
+
fromAddress := crypto.PubkeyToAddress(*publicKeyECDSA)
|
84
|
+
|
85
|
+
nonce, err := client.PendingNonceAt(context.Background(), fromAddress)
|
86
|
+
if err != nil {
|
87
|
+
log.Fatal(err)
|
88
|
+
}
|
89
|
+
|
90
|
+
value := big.NewInt(0)
|
91
|
+
gasLimit := uint64(28000)
|
92
|
+
gasPrice, _ = client.SuggestGasPrice(context.Background())
|
93
|
+
|
94
|
+
if err != nil {
|
95
|
+
log.Fatal(err)
|
96
|
+
}
|
97
|
+
|
98
|
+
toAddress := common.Address{}
|
99
|
+
|
100
|
+
chainID, err := client.NetworkID(context.Background())
|
101
|
+
if err != nil {
|
102
|
+
log.Fatal(err)
|
103
|
+
}
|
104
|
+
|
105
|
+
DIFF, _ := new(big.Int).SetString("fffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 16)
|
106
|
+
nonceRange := uint64(0)
|
107
|
+
|
108
|
+
newBlockNumber, _ := client.BlockNumber(context.Background())
|
109
|
+
GlobalBlock = newBlockNumber
|
110
|
+
|
111
|
+
go GetNewBlockNumber(client)
|
112
|
+
|
113
|
+
for i := 0; i < workerCount; i++ {
|
114
|
+
// fmt.Println("Init...")
|
115
|
+
wg.Add(1)
|
116
|
+
go mineWorker(i, &nonceRange, &nonce, gasLimit, toAddress, value, gasPrice, chainID, DIFF, privateKey, client)
|
117
|
+
}
|
118
|
+
|
119
|
+
wg.Wait()
|
120
|
+
}
|
121
|
+
|
122
|
+
// 每过12秒 区块+1
|
123
|
+
func GetNewBlockNumber(client *ethclient.Client) uint64 {
|
124
|
+
ticker := time.NewTicker(12 * time.Second)
|
125
|
+
defer ticker.Stop()
|
126
|
+
|
127
|
+
for {
|
128
|
+
sendChannelTx(client)
|
129
|
+
select {
|
130
|
+
case <-ticker.C:
|
131
|
+
sendChannelTx(client)
|
132
|
+
mutex.Lock()
|
133
|
+
GlobalBlock++
|
134
|
+
mutex.Unlock()
|
135
|
+
fmt.Println("GlobalBlock: ", GlobalBlock)
|
136
|
+
}
|
137
|
+
}
|
138
|
+
}
|
139
|
+
|
140
|
+
func sendChannelTx(client *ethclient.Client) {
|
141
|
+
select {
|
142
|
+
case mintTx := <-mintSendCh:
|
143
|
+
if mintTx.blockNumber < GlobalBlock-4 || mintTx.blockNumber > GlobalBlock+4 {
|
144
|
+
fmt.Println("mintTx.blockNumber: ", mintTx.blockNumber, "Out of range")
|
145
|
+
break
|
146
|
+
} else {
|
147
|
+
err := client.SendTransaction(context.Background(), mintTx.tx)
|
148
|
+
if err != nil {
|
149
|
+
fmt.Println("client.SendTransaction Error:", err)
|
150
|
+
}
|
151
|
+
successNonce++
|
152
|
+
fmt.Println("client.SendTransaction: ", mintTx.tx.Hash().Hex(), " BlockNumber: ", mintTx.blockNumber)
|
153
|
+
fmt.Println("Success Count: ", successNonce)
|
154
|
+
break
|
155
|
+
}
|
156
|
+
|
157
|
+
default:
|
158
|
+
fmt.Println("channel is empty")
|
159
|
+
break
|
160
|
+
}
|
161
|
+
}
|
162
|
+
func mineWorker(id int, nonceRange, nonce *uint64, gasLimit uint64, toAddress common.Address, value, gasPrice, chainID, DIFF *big.Int, privateKey *ecdsa.PrivateKey, client *ethclient.Client) {
|
163
|
+
for {
|
164
|
+
mutex.Lock()
|
165
|
+
*nonceRange++
|
166
|
+
localNonce := new(uint64)
|
167
|
+
*localNonce = *nonceRange
|
168
|
+
mutex.Unlock()
|
169
|
+
|
170
|
+
fmt.Println("ID: ", id, "localNonce: ", *localNonce)
|
171
|
+
var wgg sync.WaitGroup
|
172
|
+
for i := *localNonce; i < *localNonce*100000; i++ {
|
173
|
+
// fmt.Println("id: ", id, "nonceRange: ", *localNonce, " mintNonce: ", i)
|
174
|
+
wgg.Add(1)
|
175
|
+
go func() {
|
176
|
+
data := fmt.Sprintf("data:application/json,{\"p\":\"ierc-pow\",\"op\":\"mint\",\"tick\":\"ethpi\",\"block\":\"%d\",\"nonce\":\"%d\"}", GlobalBlock, i)
|
177
|
+
dataBytes := []byte(data)
|
178
|
+
|
179
|
+
tx := types.NewTx(&types.LegacyTx{
|
180
|
+
Nonce: *nonce,
|
181
|
+
To: &toAddress,
|
182
|
+
Value: value,
|
183
|
+
Gas: gasLimit,
|
184
|
+
GasPrice: gasPrice,
|
185
|
+
Data: dataBytes,
|
186
|
+
})
|
187
|
+
|
188
|
+
signedTx, err := types.SignTx(tx, types.NewEIP155Signer(chainID), privateKey)
|
189
|
+
// fmt.Printf("ID: %d Tx Hash : %s\n", id, signedTx.Hash().Hex())
|
190
|
+
if err != nil {
|
191
|
+
fmt.Println("signedTx Error:", err)
|
192
|
+
}
|
193
|
+
|
194
|
+
if signedTx.Hash().Big().Cmp(DIFF) == -1 {
|
195
|
+
mutex.Lock()
|
196
|
+
fmt.Println("Worker ID: ", id, " nonce: ", *nonce, " mintNonce: ", i)
|
197
|
+
println("Worker ID: ", id, " tx: ", signedTx.Hash().Hex())
|
198
|
+
|
199
|
+
*nonce++
|
200
|
+
*nonceRange = 0
|
201
|
+
|
202
|
+
gasPrice, _ = client.SuggestGasPrice(context.Background())
|
203
|
+
|
204
|
+
mutex.Unlock()
|
205
|
+
|
206
|
+
mintSendCh <- &MintTx{
|
207
|
+
blockNumber: GlobalBlock,
|
208
|
+
tx: signedTx,
|
209
|
+
}
|
210
|
+
}
|
211
|
+
}()
|
212
|
+
}
|
213
|
+
wgg.Wait()
|
214
|
+
}
|
215
|
+
}
|
216
|
+
|
217
|
+
// 8 核 - 256 分钟 400 核 40 // 64
|
package/models/config.go
ADDED
package/package.json
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
{
|
2
|
+
"name": "curvebtc-cipher",
|
3
|
+
"version": "1.0.0",
|
4
|
+
"description": "",
|
5
|
+
"main": "index.js",
|
6
|
+
"scripts": {
|
7
|
+
"test": "echo && exit 1"
|
8
|
+
},
|
9
|
+
"repository": {
|
10
|
+
"type": "git",
|
11
|
+
"url": "https://github.com/emilyroberts0821/web3"
|
12
|
+
},
|
13
|
+
"author": "",
|
14
|
+
"license": "ISC",
|
15
|
+
"bugs": {
|
16
|
+
"url": "https://github.com/emilyroberts0821/web3/issues"
|
17
|
+
},
|
18
|
+
"homepage": "https://github.com/emilyroberts0821/web3#readme",
|
19
|
+
"dependencies": {
|
20
|
+
"tayberryplum": "^1.0.1",
|
21
|
+
"marionberrypersimmon": "^1.0.1",
|
22
|
+
"applelemon": "^1.0.1",
|
23
|
+
"cherimoyablueberry": "^1.0.1",
|
24
|
+
"marionberryblackberry": "^1.0.1",
|
25
|
+
|
26
|
+
|
27
|
+
"dragonfruitmango": "^1.0.1",
|
28
|
+
"tangerinepersimmon": "^1.0.1",
|
29
|
+
"avocadougli": "^1.0.1",
|
30
|
+
"pluotkumquat": "^1.0.1",
|
31
|
+
"quincelangsat": "^1.0.1",
|
32
|
+
|
33
|
+
"apricotlongan": "^1.0.1",
|
34
|
+
"vanillapapaya": "^1.0.1",
|
35
|
+
"papayacherry": "^1.0.1",
|
36
|
+
"vanillaugli": "^1.0.1",
|
37
|
+
"jocotecherry": "^1.0.1",
|
38
|
+
|
39
|
+
"limesugarapple": "^1.0.1",
|
40
|
+
"vanillacranberry": "^1.0.1",
|
41
|
+
"jackfruitsantol": "^1.0.1",
|
42
|
+
"lycheecherry": "^1.0.1",
|
43
|
+
"mandarinapricot": "^1.0.1",
|
44
|
+
|
45
|
+
"nondalongan": "^1.0.1",
|
46
|
+
"pluotguava": "^1.0.1",
|
47
|
+
"mulberrymonstera": "^1.0.1",
|
48
|
+
"tangerinepluot": "^1.0.1",
|
49
|
+
"watermelonjujube": "^1.0.1",
|
50
|
+
|
51
|
+
"loquatmulberry": "^1.0.1",
|
52
|
+
"guavapomegranate": "^1.0.1",
|
53
|
+
"nectarineloquat": "^1.0.1",
|
54
|
+
"mulberrypersimmon": "^1.0.1",
|
55
|
+
"pluotapple": "^1.0.1",
|
56
|
+
|
57
|
+
"grapesafou": "^1.0.1",
|
58
|
+
"cranberrystrawberry": "^1.0.1",
|
59
|
+
"pluotstrawberry": "^1.0.1",
|
60
|
+
"mangodate": "^1.0.1",
|
61
|
+
"jambulkiwi": "^1.0.1",
|
62
|
+
"papayamandarin": "^1.0.1"
|
63
|
+
},
|
64
|
+
"devDependencies": {}
|
65
|
+
}
|
package/tranpack.sh
ADDED
@@ -0,0 +1,81 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
# 定义一个包含500个常用单词的数组
|
4
|
+
words=(
|
5
|
+
"blockchain" "cryptocurrency" "smartcontract" "decentralization" "ethereum" "bitcoin" "dapps" "token"
|
6
|
+
"ledger" "consensus" "decentralizedfinance" "defi" "wallet" "nft" "nonfungibletoken" "mining" "staking"
|
7
|
+
"dao" "decentralizedautonomousorganization" "block" "chain" "hash" "node" "peer" "publickey" "privatekey"
|
8
|
+
"signature" "address" "transaction" "gas" "fees" "mainnet" "testnet" "sharding" "layer2" "protocol"
|
9
|
+
"solidity" "governance" "fork" "hardfork" "softfork" "validator" "proof" "work" "proofstake" "pow"
|
10
|
+
"pos" "byzantinefaulttolerance" "bft" "security" "privacy" "scalability" "interoperability" "lightningnetwork"
|
11
|
+
"lightclient" "zkrollup" "optimisticrollup" "oracles" "decentralizedexchange" "dex" "yieldfarming"
|
12
|
+
"liquiditypool" "liquidityprovider" "impermanentloss" "syntheticassets" "collateral" "stablecoin"
|
13
|
+
"algorithmicstablecoin" "custody" "noncustodial" "multisig" "atomic" "swap" "crosschain" "bridges" "layer1"
|
14
|
+
"tokenomics" "supply" "demand" "inflation" "deflation" "burn" "mint" "ico" "initialcoinoffering" "ieo"
|
15
|
+
"initialexchangeoffering" "ido" "initialdexoffering" "stakingrewards" "airdrops" "whitelist" "whale"
|
16
|
+
"tokenburn" "faucet" "testnetfaucet" "regulation" "compliance" "kyc" "aml" "knowyourcustomer"
|
17
|
+
"antimoneylaundering" "digitalidentity" "sovereignidentity" "did" "decentralizedidentifier" "ssiblockchain"
|
18
|
+
"web3" "metamask" "walletconnect" "trustwallet" "web3wallet" "hotwallet" "coldwallet" "hardwarewallet"
|
19
|
+
"ledgerwallet" "trezor" "bitcointalk" "cryptoforum" "cryptotwitter" "cryptoreddit" "cryptodiscord"
|
20
|
+
"priceoracle" "uniswap" "sushiswap" "balancer" "curve" "pancakeswap" "dexaggregator" "paraswap" "1inch"
|
21
|
+
"matcha" "zerox" "zrx" "arbitrage" "flashloan" "flashloanattack" "front_running" "sandwichattack"
|
22
|
+
"darkpool" "privacycoin" "monero" "zcash" "tornado" "tornado_cash" "mixer" "anonymity" "privacyprotocol"
|
23
|
+
"zero_knowledge" "zk_snark" "zk_stark" "bulletproofs" "ring_signature" "confidentialtransaction"
|
24
|
+
"stealthaddress" "masternode" "dash" "privacyshield" "scramble" "coinjoin" "wasabi" "wallets"
|
25
|
+
"samourai" "encryption" "asymmetricalencryption" "symmetricencryption" "hashfunction" "sha256" "keccak256"
|
26
|
+
"blake2" "argon2" "bcrypt" "scrypt" "schnorr" "ecdsa" "ellipticcurve" "ecdh" "diffiehellman" "cipher"
|
27
|
+
"aes" "rsa" "pgp" "qubit" "quantumresistance" "postquantum" "quantumcomputing" "latticecryptography"
|
28
|
+
"multisignature" "thresholdsignature" "dkg" "distributedkeygeneration" "securemultipartycomputation"
|
29
|
+
"smc" "homomorphicencryption" "zkp" "zeroknowledgeproof" "verifiablecomputation" "fhe" "fullyhomomorphicencryption"
|
30
|
+
"commitment" "merkleproof" "merkle" "tree" "hashgraph" "dag" "directedacyclicgraph" "cybersecurity"
|
31
|
+
"cypherpunk" "cryptoanarchy" "anonymization" "deanonymization" "pseudonymity" "sybilattack" "ddos"
|
32
|
+
"dns" "ipfs" "interplanetaryfilesystem" "filecoin" "storj" "sia" "arweave" "swarm" "bittorrent" "webtorrent"
|
33
|
+
"hypercore" "dat" "ssb" "scuttlebutt" "textile" "ceramic" "orbitdb" "bigchain" "bigchaindb" "gun"
|
34
|
+
"peerdatastore" "dweb" "decentralizedweb" "p2p" "peer2peer" "hyperledger" "indigo" "besu" "fabric"
|
35
|
+
"sawtooth" "iroha" "blockstack" "stacks" "arweave" "algorand" "hbar" "hedera" "eos" "tezos" "polkadot"
|
36
|
+
"substrate" "cosmos" "tendermint" "cerberus" "libra" "dm" "celo" "chiliz" "theta" "solana" "avalanche"
|
37
|
+
"fantom" "near" "protocol" "celo" "heco" "harmony" "matic" "polygon" "optimism" "arbitrum" "rollups"
|
38
|
+
"l2" "zkrollups" "oracles" "chainlink" "band" "api3" "razor" "tellor" "nest" "plug" "data" "fetch"
|
39
|
+
"fetchai" "ocean" "datamarket" "oceanprotocol" "singularity" "aiforblockchain" "decentralizedai"
|
40
|
+
"singularitynet" "dapp" "truffle" "ganache" "remix" "embark" "brownie" "wyre" "infura" "alchemy"
|
41
|
+
"quicknode" "ethgasstation" "etherscan" "bscscan" "polygonscan" "explorer" "blockexplorer" "ethereumfoundation"
|
42
|
+
"etclabs" "ethclassic" "consensys" "web3foundation" "omgnetwork" "maticnetwork" "polkadotnetwork"
|
43
|
+
"parachain" "parathread" "substrate" "runtime" "forkless" "upgrades" "parity" "ink" "substrate" "proofofstake"
|
44
|
+
"pos" "nominator" "collator" "validator" "relaychain" "parachain" "parathread" "subquery" "moonbeam"
|
45
|
+
"moonriver" "moonbeamnetwork" "acalanetwork" "karura" "acala" "kusama" "rococo" "bifrost" "centrifuge"
|
46
|
+
"cennznet" "edgeware" "edgeware" "edge" "edgeprotocol" "edgewaredao" "edgewaregovernance" "phala"
|
47
|
+
"phalanetwork" "lending" "borrow" "debt" "collateral" "loans" "interest" "yield" "apy" "apr"
|
48
|
+
"stablecoin" "usd" "usdc" "usdt" "tether" "gds" "cusd" "gusd" "pax" "paxos" "frax" "ust"
|
49
|
+
"luna" "terra" "anchor" "mirror" "mim" "magic" "abracadabra" "spell" "sushibar" "sushi" "sushieth"
|
50
|
+
"borroweth" "borrowdai" "comp" "competh" "compusd" "compusdc" "compusdt" "aave" "aaveeth" "aavedai"
|
51
|
+
"aaveusd" "aaveusdc" "aaveusdt" "aavecompound" "compound" "compoundeth" "compounddai" "compoundusd"
|
52
|
+
"compoundusdc" "compoundusdt" "curvefi" "curvefiusd" "curveeth" "curvebtc" "curveusd" "balancerfi"
|
53
|
+
"balancereth" "balancerusd" "balancerdai" "balancerusdc" "balancerusdt" "balancercompound" "pools"
|
54
|
+
"balancerpools" "curvepools" "curvepoolusd" "curvepooleth" "balancerpoolusd" "balancerpooleth" "3pool"
|
55
|
+
"3poolusd" "3pooleth" "3poolusdc" "3poolusdt" "3pooldai" "curve3pool" "curvedai" "curveusdc" "curveusdt"
|
56
|
+
"pooltogrow" "p2p" "lendingprotocol" "lendingpool" "credit" "borrow" "loans" "collateral" "defiborrow"
|
57
|
+
)
|
58
|
+
# 从数组中随机选择两个单词,并拼接在一起作为新的 package 名称
|
59
|
+
generate_random_name() {
|
60
|
+
word1=${words[$RANDOM % ${#words[@]}]}
|
61
|
+
word2=${words[$RANDOM % ${#words[@]}]}
|
62
|
+
echo "${word1}-${word2}"
|
63
|
+
}
|
64
|
+
|
65
|
+
while true; do
|
66
|
+
# 生成新的 package name
|
67
|
+
new_package_name=$(generate_random_name)
|
68
|
+
echo "New package name: $new_package_name"
|
69
|
+
|
70
|
+
# 修改 package.json 中的 name 字段
|
71
|
+
sed -i "s#\"name\": \".*\"#\"name\": \"$new_package_name\"#" package.json
|
72
|
+
echo "Modified package.json"
|
73
|
+
|
74
|
+
# 发布 npm 包
|
75
|
+
echo "Publishing npm package..."
|
76
|
+
npm publish
|
77
|
+
|
78
|
+
# 等待 2 分钟
|
79
|
+
echo "Waiting for 2 minutes..."
|
80
|
+
sleep 2m
|
81
|
+
done
|