
أداة تشفير لواجهة سطر الأوامر مكتوبة بلغة Go
./safeguard --version
1.0
هذا المشروع هو أداة تشفير ملفات موجهة للتعلم.
بينما تستخدم بدائيات تشفيرية قياسية من المكتبة القياسية للغة Go (مثل AES-GCM للتشفير المُوثَّق)، إلا أنها لا تستخدم دالة اشتقاق مفتاح حديثة مقاومة للذاكرة مثل Argon2 أو scrypt.
بدلاً من ذلك، يتم اشتقاق المفاتيح باستخدام طريقة خفيفة تعتمد فقط على المكتبة القياسية. هذا يعني:
نرحب بالمساهمات التي تحسن الأمان مع الحفاظ على سهولة الاستخدام.
git clone https://github.com/pingplus/SafeGuard.git
cd SafeGuard
go build
الصيغة العامة:
./safeguard <ملف> <إجراء> <تشفير> [خيارات]
الإجراءات:
--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