HDNF header added
This commit is contained in:
parent
0f63ceedbe
commit
f8e4bbfe64
28
main.go
28
main.go
|
@ -1,6 +1,7 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bytes"
|
||||||
"crypto/aes"
|
"crypto/aes"
|
||||||
"crypto/cipher"
|
"crypto/cipher"
|
||||||
"crypto/md5"
|
"crypto/md5"
|
||||||
|
@ -12,12 +13,13 @@ import (
|
||||||
"regexp"
|
"regexp"
|
||||||
"strings"
|
"strings"
|
||||||
"syscall"
|
"syscall"
|
||||||
"github.com/h2non/filetype"
|
// "github.com/h2non/filetype"
|
||||||
"golang.org/x/crypto/ssh/terminal"
|
"golang.org/x/crypto/ssh/terminal"
|
||||||
)
|
)
|
||||||
|
|
||||||
var debug bool = false
|
var debug bool = true
|
||||||
var FileName string
|
var FileName string
|
||||||
|
var HDNFhead []byte = []byte("HDNF")
|
||||||
|
|
||||||
func checkErr(err error) {
|
func checkErr(err error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -127,21 +129,30 @@ func checkPass() string {
|
||||||
return pw
|
return pw
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func headerAdd(data []byte) []byte {
|
||||||
|
return bytes.Join([][]byte{HDNFhead,data},nil)
|
||||||
|
}
|
||||||
|
|
||||||
|
func headerRemove(data []byte) []byte {
|
||||||
|
return bytes.TrimPrefix(data,HDNFhead)
|
||||||
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
FileName = readFn()
|
FileName = readFn()
|
||||||
fn := FileName
|
fn := FileName
|
||||||
fmt.Println(fn)
|
fmt.Println(fn)
|
||||||
data := file2data(fn)
|
//data := file2data(fn)
|
||||||
fType, _ := filetype.Get(data)
|
//fType, _ := filetype.Get(data)
|
||||||
fmt.Println(fType.Extension)
|
//fmt.Println(fType.Extension)
|
||||||
os.Exit(0)
|
//os.Exit(0)
|
||||||
mode := getMode()
|
mode := getMode()
|
||||||
switch mode {
|
switch mode {
|
||||||
case "h":
|
case "h":
|
||||||
pw := checkPass()
|
pw := checkPass()
|
||||||
key := keyMkr(pw)
|
key := keyMkr(pw)
|
||||||
data := file2data(fn)
|
data := file2data(fn)
|
||||||
secret := encrypt(data,key)
|
secret := headerAdd(encrypt(data,key))
|
||||||
|
//secret = headerAdd(secret)
|
||||||
secretfn := fn + ".hdn"
|
secretfn := fn + ".hdn"
|
||||||
clearfn := fn + ".origin"
|
clearfn := fn + ".origin"
|
||||||
err := os.Rename(fn,clearfn)
|
err := os.Rename(fn,clearfn)
|
||||||
|
@ -153,7 +164,8 @@ func main() {
|
||||||
pw := readPass()
|
pw := readPass()
|
||||||
fmt.Print("\n")
|
fmt.Print("\n")
|
||||||
key := keyMkr(pw)
|
key := keyMkr(pw)
|
||||||
secret := file2data(fn)
|
secret := headerRemove(file2data(fn))
|
||||||
|
//secret := file2data(fn)
|
||||||
datafn := strings.TrimRight(fn,".hdn")
|
datafn := strings.TrimRight(fn,".hdn")
|
||||||
data := decrypt(secret, key)
|
data := decrypt(secret, key)
|
||||||
data2file(datafn, data)
|
data2file(datafn, data)
|
||||||
|
|
Loading…
Reference in New Issue