go-cryptobin is a go encrypt or decrypt library.
English | 中文
Aes, ECB, NoPaddinggo get -u github.com/deatil/go-cryptobin
package main
import (
"fmt"
"github.com/deatil/go-cryptobin/cryptobin/crypto"
)
func main() {
// encrypt
cypten := crypto.
FromString("useData").
SetKey("dfertf12dfertf12").
SetIv("dfertf12dfertf12").
Aes().
CBC().
PKCS7Padding().
Encrypt().
ToBase64String()
// decrypt
cyptde := crypto.
FromBase64String("i3FhtTp5v6aPJx0wTbarwg==").
SetKey("dfertf12dfertf12").
SetIv("dfertf12dfertf12").
Aes().
CBC().
PKCS7Padding().
Decrypt().
ToString()
// i3FhtTp5v6aPJx0wTbarwg==
fmt.Println("encrypt res:", cypt)
fmt.Println("decrypt res:", cyptde)
}
Aes, ECB, NoPadding. default not use padding, input need n*16 length, not right length need other padding// encrypt data
cypt := crypto.
FromString("useData5useData5").
SetKey("dfertf12dfertf12").
Encrypt().
ToBase64String()
// decrypt data
cyptde := crypto.
FromBase64String("eZf7c3fcwKlmrqogiEHbJg==").
SetKey("dfertf12dfertf12").
Decrypt().
ToString()
// Code
// Tips: SetKey,SetIv,Encrypt Type,Mode,Padding at `Action Type` before can move sorts
ret := crypto.
FromString("string"). // Data Src
SetKey("key_string"). // Set Key
SetIv("iv_string"). // Set Iv
Aes(). // Encrypt Type
CBC(). // Mode
PKCS7Padding(). // Padding
Encrypt(). // Action Type
ToBase64String() // To Data Type
FromBytes(data []byte), FromString(data string), FromBase64String(data string), FromHexString(data string)SetKey(data string), WithKey(key []byte)SetIv(data string), WithIv(iv []byte)Aes(), Des(), TripleDes(), Twofish(), Blowfish(), Tea(rounds ...int), Xtea(), Cast5(), RC4(), Idea(), SM4(), Chacha20(counter ...uint32), Chacha20poly1305(additional ...[]byte), Xts(cipher string, sectorNum uint64)ECB(), CBC(), PCBC(), CFB(), OFB(), CTR(), GCM(additional ...[]byte), CCM(additional ...[]byte)NoPadding(), ZeroPadding(), PKCS5Padding(), PKCS7Padding(), X923Padding(), ISO10126Padding(), ISO7816_4Padding(),ISO97971Padding(),PBOC2Padding(), TBCPadding(), PKCS1Padding(bt ...string)Encrypt(), Decrypt(), FuncEncrypt(f func(Cryptobin) Cryptobin), FuncDecrypt(f func(Cryptobin) Cryptobin)To Data Type:
ToBytes(), ToString(), ToBase64String(), ToHexString()
more data docs
Apache2, using the library need keep the LICENSE.$ claude mcp add go-cryptobin \
-- python -m otcore.mcp_server <graph>