https://github.com/nir3x/fxms
FNV-XOR-Mask-Shuffle Symmetric Encryption Algorithm
https://github.com/nir3x/fxms
algorithm crypto encryption fnv fxms go golang mask security shuffle symmetric xor
Last synced: 4 months ago
JSON representation
FNV-XOR-Mask-Shuffle Symmetric Encryption Algorithm
- Host: GitHub
- URL: https://github.com/nir3x/fxms
- Owner: NIR3X
- License: agpl-3.0
- Created: 2024-01-10T11:43:05.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-16T04:03:24.000Z (over 1 year ago)
- Last Synced: 2024-02-16T05:22:50.650Z (over 1 year ago)
- Topics: algorithm, crypto, encryption, fnv, fxms, go, golang, mask, security, shuffle, symmetric, xor
- Language: Go
- Homepage:
- Size: 16.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FNV-XOR-Mask-Shuffle Symmetric Encryption Algorithm
This is a Go package that implements the FNV-XOR-Mask-Shuffle symmetric encryption algorithm. This algorithm is a combination of several cryptographic techniques that make it difficult for an attacker to decrypt the data.
## Installation
To use this package, you can install it using go get command:
```bash
go get -u github.com/NIR3X/fxms
```## Usage
Here is an example of how to use this package:
```go
package mainimport (
"fmt"
"github.com/NIR3X/fxms"
)func main() {
// Generate a random key
key := fxms.GenKey()// Data to encrypt
data := []uint8("Hello, World!")// Encrypt the data
encrypted, err := fxms.Encrypt(key, data, fxms.OptimizeDecryption)
if err != nil {
panic(err)
}// Decrypt the data
decrypted, ok, err := fxms.Decrypt(key, encrypted, fxms.OptimizeDecryption)
if err != nil {
panic(err)
}if !ok {
panic("Decryption failed")
}// Print the decrypted data
fmt.Printf("%s\n", decrypted)
}
```## License
[](https://www.gnu.org/licenses/agpl-3.0.html)
This program is Free Software: You can use, study share and improve it at your
will. Specifically you can redistribute and/or modify it under the terms of the
[GNU Affero General Public License](https://www.gnu.org/licenses/agpl-3.0.html) as
published by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.