
गो में लिखा गया CLI एन्क्रिप्शन टूल
./safeguard --version
1.0
यह परियोजना एक सीखने-उन्मुख फ़ाइल एन्क्रिप्शन टूल है।
हालांकि यह Go की मानक लाइब्रेरी के मानक क्रिप्टोग्राफ़िक प्रिमिटिव का उपयोग करता है (जैसे AES-GCM प्रमाणित एन्क्रिप्शन के लिए), यह नहीं उपयोग करता है एक आधुनिक, मेमोरी-हार्ड पासवर्ड कुंजी व्युत्पत्ति फ़ंक्शन जैसे Argon2 या scrypt।
इसके बजाय, कुंजियाँ एक हल्की, केवल-मानक-लाइब्रेरी विधि का उपयोग करके व्युत्पन्न की जाती हैं। इसका अर्थ है:
वे योगदान जो सुरक्षा में सुधार करते हैं जबकि उपयोगिता बनाए रखते हैं, स्वागत हैं।
git clone https://github.com/pingplus/SafeGuard.git
cd SafeGuard
go build
सामान्य सिंटैक्स:
./safeguard <file> <action> <cipher> [options]
क्रियाएँ:
--encrypt या e एक फ़ाइल को एन्क्रिप्ट करें--decrypt या d एक फ़ाइल को डिक्रिप्ट करें--decrypt-directory या de एक पूरी निर्देशिका को डिक्रिप्ट करें (निर्देशिका डिक्रिप्ट करना अभी तक उपलब्ध नहीं है, क्षमा करें :( ))विकल्प:
--inplace फ़ाइल को उसी स्थान पर डिक्रिप्ट/एन्क्रिप्ट करें (प्रायोगिक)--key कुंजी जोड़ें--output आउटपुट नाम निर्दिष्ट करेंसमर्थित सिफर:
./safeguard --list-ciphers
[i] उपलब्ध सिफर:
xor
caesar
aes
एक फ़ाइल को एन्क्रिप्ट करें:
./safeguard secret.txt e aes --key "your-strong-password"
# या
./safeguard secret.txt --encrypt aes --key "your-strong-password" --output secret.txt.aes
एक फ़ाइल को डिक्रिप्ट करें:
./safeguard secret.txt d aes --key "your-strong-password"
# या
./safeguard secret.txt --decrypt aes --key "your-strong-password" --output secret.txt.dec
./safeguard secrets.txt e aes --key "123123123123123123123123" --inplace
# -> secrets.txt बनाता है लेकिन एन्क्रिप्टेड
./safeguard secrets.txt.aes d aes --key "123123123123123123123123" --output secrets_decrypted.txt