อินเทอร์เน็ตเป็นพื้นที่อันตรายที่ข้อมูลส่วนตัวและเอกสารต่างๆ จะถูกปล่อยทิ้งไว้โดยไม่มีการป้องกัน คุณไม่มีทางรู้เลยว่าเมื่อไหร่จะมีคนขโมยไป
นั่นคือเหตุผลที่เราต้องการการปกป้องเพิ่มเติมอีกชั้นหนึ่ง
ด้วยแอปนี้ คุณสามารถเข้ารหัสไฟล์ทุกประเภทด้วยการเข้ารหัส AES-256 ที่แข็งแกร่งที่สุด!
• เข้ารหัสไฟล์ รูปภาพ วิดีโอ เพลง และไฟล์ประเภทอื่นๆ!
• คุณยังสามารถเข้ารหัสทั้งโฟลเดอร์ และสร้างแพ็กเกจเดียวที่ประกอบด้วยรายการเข้ารหัสหลายรายการ! (บีบอัดโฟลเดอร์ แล้วเข้ารหัสไฟล์ zip)
การเข้ารหัสรหัสผ่าน
เพื่อเพิ่มความปลอดภัยให้กับไฟล์ แอปนี้ยังเข้ารหัสรหัสผ่าน ทำให้การถอดรหัสทำได้ยากยิ่งขึ้น
ด้วยเหตุนี้ โปรดจำรหัสผ่านของคุณไว้ หรืออาจจดบันทึกไว้เพื่อใช้ในภายหลังก็ได้
• หมายเหตุ: หากคุณลืมหรือทำรหัสผ่านหาย คุณจะไม่สามารถเข้าถึงไฟล์ได้อีกครั้ง และอาจสูญเสียรหัสผ่านไปอย่างถาวร!
ด้วยเหตุนี้ โปรดดูแลรหัสผ่านของคุณให้ดี
• โปรโตคอลการเข้ารหัส AES-256 เป็นโปรโตคอลระดับทหาร ทำให้แทบจะเป็นไปไม่ได้เลยที่จะถอดรหัส
ข้อมูลเพิ่มเติมที่:
https://cryptoid.com.br/criptografia/aes-padrao-de-criptografia-avancado-o-que-e-e-como-funciona/
ข้อมูลทางเทคนิค:
1. อัลกอริทึมและกลไกการเข้ารหัส
- การอนุมานคีย์: PBKDF2 พร้อม HmacSHA256, 100,000 รอบ, เกลือ 16 ไบต์
เหมาะสำหรับการอนุมานคีย์ที่ปลอดภัยจากรหัสผ่าน
- การเข้ารหัส: AES-256 ในโหมด CBC พร้อม PKCS5Padding และ IV ขนาด 16 ไบต์ที่สร้างโดย SecureRandom
AES-CBC มีความปลอดภัยเมื่อใช้ร่วมกับการตรวจสอบสิทธิ์ (MAC) รหัสใช้การเข้ารหัสแบบ encrypt-then-MAC อย่างถูกต้อง
- ความสมบูรณ์และความถูกต้อง: HMAC-SHA256 เหนือ salt + IV + ciphertext
รับประกันการป้องกันการแก้ไขและการปลอมแปลง
2. การจัดการรหัสผ่านและคีย์
- อ่านรหัสผ่านจากอินเทอร์เฟซ คัดลอกไปยัง char[] ใช้งาน และล้างทันทีหลังใช้งาน
- คีย์ที่ได้มาแยกเป็นส่วน AES และ HMAC ล้างหลังใช้งาน
- การล้างซ้ำซ้อนในส่วน finally ช่วยป้องกันการรั่วไหลของหน่วยความจำ
- หมายเหตุ: การล้างฟิลด์ Editable ในเธรดพื้นหลังอาจไม่เหมาะสม
3. การเข้ารหัสและโฟลว์การจัดเก็บ
- เขียนลงไฟล์: salt, IV, ข้อมูลที่เข้ารหัส ตามด้วย HMAC
- ปรับสิทธิ์ไฟล์เพื่อจำกัดการเข้าถึง
- ใช้สตรีมอย่างถูกต้องเพื่ออัปเดต HMAC ระหว่างการเขียน
4. สตรีมการถอดรหัสและการตรวจสอบ
- อ่าน salt และ IV, ดึงคีย์, คำนวณ HMAC เพื่อตรวจสอบความสมบูรณ์ก่อนการถอดรหัส
- ใช้ LimitedInputStream เพื่อจำกัดการอ่านให้มีความยาวของข้อความเข้ารหัสที่ถูกต้อง
- ถอดรหัสด้วย CipherInputStream และเขียนลงในไฟล์ชั่วคราว
- ลบไฟล์ชั่วคราวอย่างปลอดภัยหากเกิดข้อผิดพลาด
- ตรวจสอบความสมบูรณ์ก่อนเขียนทับไฟล์สุดท้าย
5. การจัดการข้อยกเว้นและการล้างข้อมูล
- ข้อยกเว้นเฉพาะจะได้รับการจัดการด้วยข้อความที่ชัดเจน
- การล้างข้อมูลตัวแปรที่ละเอียดอ่อนและการปิดสตรีมที่ดำเนินการในส่วนสุดท้าย