mirror of
https://github.com/wyx2685/V2bX.git
synced 2025-01-23 10:28:13 -05:00
add encrypt private command
This commit is contained in:
parent
15efffba0d
commit
97a420f9f3
@ -145,7 +145,7 @@ func (c *Client) GetNodeInfo() (node *NodeInfo, err error) {
|
||||
return nil, fmt.Errorf("decode v2ray extra error: %s", err)
|
||||
}
|
||||
if node.ExtraConfig.RealityConfig.PrivateKey != "" {
|
||||
temp := crypt.GenShaHash([]byte(c.APIHost + c.Token))
|
||||
temp := crypt.GenShaHash([]byte(c.APIHost + c.Token))[:32]
|
||||
temp, err = crypt.AesDecrypt(node.ExtraConfig.RealityConfig.PrivateKey, []byte(temp))
|
||||
node.ExtraConfig.RealityConfig.PrivateKey = temp
|
||||
}
|
||||
|
@ -4,6 +4,9 @@ import (
|
||||
"crypto/rand"
|
||||
"encoding/base64"
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/Yuzuki616/V2bX/common/crypt"
|
||||
|
||||
"github.com/spf13/cobra"
|
||||
"golang.org/x/crypto/curve25519"
|
||||
@ -22,6 +25,19 @@ func init() {
|
||||
}
|
||||
|
||||
func executeX25519() {
|
||||
var yes, key string
|
||||
fmt.Println("要对私钥进行加密吗?(Y/n)")
|
||||
fmt.Scan(&yes)
|
||||
if strings.ToLower(yes) == "y" {
|
||||
var temp string
|
||||
fmt.Println("请输入Api接口地址:")
|
||||
fmt.Scan(&temp)
|
||||
key = temp
|
||||
fmt.Println("请输入Api认证Token:")
|
||||
fmt.Scan(&temp)
|
||||
key += temp
|
||||
key = crypt.GenShaHash([]byte(key))
|
||||
}
|
||||
var output string
|
||||
var err error
|
||||
defer func() {
|
||||
@ -45,9 +61,16 @@ func executeX25519() {
|
||||
output = Err("gen X25519 error: ", err)
|
||||
return
|
||||
}
|
||||
|
||||
p := base64.RawURLEncoding.EncodeToString(privateKey)
|
||||
output = fmt.Sprint("Private key: ",
|
||||
base64.RawURLEncoding.EncodeToString(privateKey),
|
||||
p,
|
||||
"\nPublic key: ",
|
||||
base64.RawURLEncoding.EncodeToString(publicKey))
|
||||
if strings.ToLower(yes) == "y" {
|
||||
key, err = crypt.AesEncrypt([]byte(p), []byte(key[:32]))
|
||||
if err != nil {
|
||||
output = Err("encrypt private key error: ", err)
|
||||
}
|
||||
output += "\n加密后的Private key:" + key
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ func AesEncrypt(data []byte, key []byte) (string, error) {
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
en := make([]byte, 0, len(data))
|
||||
en := make([]byte, len(data))
|
||||
a.Encrypt(en, data)
|
||||
return base64.StdEncoding.EncodeToString(en), nil
|
||||
}
|
||||
@ -24,7 +24,7 @@ func AesDecrypt(data string, key []byte) (string, error) {
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
de := make([]byte, 0, len(data))
|
||||
de := make([]byte, len(data))
|
||||
a.Decrypt(de, d)
|
||||
return string(de), nil
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user