นี่คือคำสั่ง mcrypt ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
crypt, mcrypt, mdecrypt - เข้ารหัสหรือถอดรหัสไฟล์
เรื่องย่อ
mcrypt [ -dLFubhvrzp ] [-a ขั้นตอนวิธี] [-c config_file] [-m โหมด] [-s ขนาดกุญแจ] [-o โหมดคีย์]
[-k key1 key2 ...] [-f ไฟล์คีย์] [ ชื่อไฟล์ ... ]
ถอดรหัส [ -LFusbhvzp ] [-a ขั้นตอนวิธี] [-c config_file] [-m โหมด] [-s ขนาดกุญแจ]
[-o โหมดคีย์] [-k key1 key2 ...] [-f ไฟล์คีย์] [ ชื่อไฟล์ ... ]
DESCRIPTION
เอ็มคริป เป็นโปรแกรมเข้ารหัสอย่างง่าย แทนที่ unix . ตัวเก่า ฝังศพใต้ถุนโบสถ์(1). เมื่อ
การเข้ารหัสหรือถอดรหัสไฟล์ ไฟล์ใหม่จะถูกสร้างขึ้นด้วยนามสกุล .nc และโหมด
0600 ไฟล์ใหม่เก็บวันที่แก้ไขของต้นฉบับ ไฟล์ต้นฉบับอาจเป็น
ลบโดยระบุพารามิเตอร์ -u หากไม่มีการระบุไฟล์ อินพุตมาตรฐานคือ
เข้ารหัสไปยังเอาต์พุตมาตรฐาน
เอ็มคริป ใช้อัลกอริธึมสมมาตรทั้งหมดที่รวมอยู่ใน libmcrypt
ฝังศพใต้ถุนโบสถ์ เป็นเครื่องห่อเปลือกหอยเล็กๆ รอบๆ mcrypt เพื่อจำลองคำสั่ง unix crypt เก่า สำหรับ
ข้อมูลเพิ่มเติม เรียกใช้ crypt --help !
ข้อเสนอแนะ
โดยค่าเริ่มต้น mcrypt เมื่อมีการระบุหนึ่งในอัลกอริธึมเหล่านี้ ให้แจ้งดังนี้:
ใส่ข้อความรหัสผ่าน: ...
จากนั้นคุณควรป้อนข้อความรหัสผ่านที่ยาวเพียงพอ (512 อักขระคือความยาวสูงสุด)
ตอนนี้เพื่อเข้ารหัสไฟล์ วลีรหัสผ่านจะถูกแปลงโดยใช้ที่ระบุ (หรือ
ค่าเริ่มต้น) อัลกอริธึมการสร้างคีย์และเกลือแบบสุ่ม จากนั้นนำมูลค่าที่ผลิตออกมาใช้
เป็นกุญแจสำคัญซึ่งป้อนให้กับอัลกอริธึม
ขั้นตอนวิธี ช่องโหว่: อัลกอริธึมส่วนใหญ่ในปัจจุบันออกแบบมาเพื่อต่อต้านการโจมตีแบบเฉพาะเจาะจง
ไม่มีการพิสูจน์ว่าไม่เสี่ยงต่อการโจมตีบางประเภทที่ยังไม่รู้
การบีบอัด: ด้วยการบีบอัดข้อมูลของคุณก่อนการเข้ารหัส คุณจะได้รับทั้งประสิทธิภาพ
(เข้ารหัสเร็วขึ้น) และความปลอดภัยของข้อมูลของคุณ (ลบความซ้ำซ้อนของภาษา) ข้อเสีย
คือโปรแกรมบีบอัดส่วนใหญ่จะเพิ่มส่วนหัวเฉพาะในไฟล์บีบอัดดังนั้น
ทำให้การโจมตีข้อความธรรมดาที่รู้จักง่ายขึ้น การบีบอัดหลังจากการเข้ารหัสนั้นไร้ประโยชน์และอาจ
ส่งผลให้ไฟล์บีบอัดมีขนาดยาวกว่าต้นฉบับ
ความผิดพลาด การกู้คืน: มีข้อผิดพลาดในการกู้คืนใน mcrypt หากไบต์ถูกลบหรือสูญหายจาก
ไฟล์หรือสตรีมในโหมด ECB, CBC และ OFB นั้นไม่สามารถกู้คืนได้ แม้ว่าโหมด CFB
จะฟื้นตัว หากบางไบต์มีการเปลี่ยนแปลง ข้อความธรรมดาทั้งหมดจะได้รับผลกระทบใน ECB
โหมด สองช่วงตึกในโหมด CBC และ CFB แต่เฉพาะไบต์ที่สอดคล้องกันในโหมด OFB
Mcrypt ใช้ CRC 32 บิตเพื่อตรวจสอบข้อผิดพลาดในไฟล์ที่เข้ารหัส
พิเศษ ความปลอดภัย: สำหรับผู้ที่หวาดระแวงมาก ถ้า mcrypt ถูกเรียกใช้งานด้วย superuser สิทธิ์นั้น
ตรวจสอบให้แน่ใจว่าไม่มีการเขียนข้อมูลสำคัญ (คีย์ ฯลฯ ) ลงดิสก์ เป็นการสลับ ฯลฯ โปรดทราบ
mcrypt นั้นไม่ได้ถูกออกแบบมาให้เป็นโปรแกรม setuid ดังนั้นคุณไม่ควรสร้างมันขึ้นมา
อย่าพึ่งว่าอัลกอริธึมมีขนาดคีย์ใหญ่ลองใช้งานยาวๆ
ข้อความรหัสผ่านและพยายามทำให้คาดเดาไม่ได้
อัลกอริธึมบล็อกทั้งหมดข้างต้นรองรับโหมดการเข้ารหัสเหล่านี้:
ECB: โหมด Electronic CodeBook เป็นโหมดที่ง่ายที่สุดที่จะใช้กับรหัสบล็อก
เข้ารหัสแต่ละบล็อกอย่างอิสระ
CBC: โหมด Cipher Block Chaining ดีกว่า ECB เนื่องจากข้อความธรรมดาคือ XOR'ed
ด้วยรหัสลับก่อนหน้า บล็อกสุ่มถูกวางเป็นบล็อกแรกดังนั้นเหมือนกัน
บล็อกหรือข้อความเข้ารหัสเป็นอย่างอื่นเสมอ (นี่คือโหมดเริ่มต้น)
ซีเอฟบี: โหมด Cipher-Feedback (ใน 8 บิต) นี่คือการเข้ารหัสสตรีมแบบซิงโครไนซ์ตัวเอง
ดำเนินการจากรหัสบล็อก
ออฟบี: โหมดเอาต์พุต - คำติชม (ใน 8 บิต) นี่คือการเข้ารหัสสตรีมแบบซิงโครนัสที่ใช้
จากรหัสบล็อก มีไว้สำหรับใช้ในสายที่มีเสียงดังเพราะ ciphertext เสียหาย
บล็อกไม่ทำลายบล็อกข้อความธรรมดาที่ตามมา ไม่ปลอดภัยเมื่อใช้เข้ารหัส
ข้อมูลจำนวนมาก ดังนั้นฉันจึงไม่แนะนำให้ใช้
นอฟบี: โหมดเอาต์พุต - คำติชม (เป็น nbit) n คือขนาดของบล็อกของอัลกอริทึม
นี่คือรหัสสตรีมแบบซิงโครนัสที่ใช้จากรหัสบล็อก มันมีไว้สำหรับ
ใช้ในบรรทัดที่มีเสียงดังเพราะบล็อก ciphertext ที่เสียหายจะไม่ทำให้ข้อความธรรมดาเสียหาย
บล๊อกที่ตามมา
ไฟล์ที่เข้ารหัสสามารถกู้คืนเป็นรูปแบบดั้งเดิมได้โดยใช้ mcrypt -d or ถอดรหัส
ถอดรหัส รับรายการไฟล์ในบรรทัดคำสั่งและสร้างไฟล์ใหม่สำหรับแต่ละไฟล์
ที่มีชื่อลงท้ายด้วย .nc โดยลบ ".nc" หรือโดยการเพิ่ม ".dc" ต่อท้ายไฟล์
ชื่อ ถ้า .nc ไม่ได้อยู่ในชื่อไฟล์ที่เข้ารหัส
OPTIONS
-F --บังคับ
บังคับเอาต์พุตบนเอาต์พุตมาตรฐานหรืออินพุตจาก stdin หากเป็นเทอร์มินัล โดย
mcrypt เริ่มต้นจะไม่ส่งออกข้อมูลที่เข้ารหัสไปยังเทอร์มินัลหรืออ่านข้อมูลที่เข้ารหัส
จากมัน.
-z --gzip
ใช้ gzip (หากมีอยู่ในระบบของคุณ) เพื่อบีบอัดไฟล์ก่อนการเข้ารหัส ถ้า
ระบุไว้ในเวลาถอดรหัส มันจะขยายไฟล์เหล่านี้
-p --bzip2
ใช้ bzip2 (หากมีอยู่ในระบบของคุณ) เพื่อบีบอัดไฟล์ก่อนการเข้ารหัส ถ้า
ระบุไว้ในเวลาถอดรหัส มันจะขยายไฟล์เหล่านี้
--openpgp-z INT
ตัวเลือกนี้จะเปิดใช้งานการบีบอัดในไฟล์ที่เข้ารหัส OpenPGP (RFC2440)
-d --ถอดรหัส
ถอดรหัส
--ช่วยด้วย
แสดงหน้าจอช่วยเหลือและออก
-v --รุ่น
รุ่น. แสดงหมายเลขเวอร์ชันและออก
-L --ใบอนุญาต
แสดง mcrypt's ใบอนุญาตและลาออก
-o --โหมดคีย์ โหมด
MODE อาจเป็นหนึ่งในโหมดคีย์ที่แสดงโดยพารามิเตอร์ --list-keymodes มัน
อันที่จริงแล้วเป็นการแปลงเป็นคีย์ก่อนที่จะป้อนให้กับอัลกอริธึม มันคือ
แนะนำให้ปล่อยไว้ตามที่เป็นอยู่ถ้าไม่รู้ว่ามันคืออะไร แต่ถ้าคุณยัง
ต้องการใช้ตัวเลือกนี้ คุณอาจต้องการใช้โหมด 'ฐานสิบหก' ซึ่งช่วยให้คุณ
ระบุคีย์ในฐานสิบหก (และจะไม่มีการแปลงโดยนำไปใช้)
-h --กัญชา HASH_ALGORITHM
HASH_ALGORITHM อาจเป็นหนึ่งในอัลกอริทึมที่แสดงโดยพารามิเตอร์ --list-hash
นี่คือไดเจสต์ที่จะต่อท้ายไฟล์ที่จะเข้ารหัสเพื่อ
ตรวจจับความเสียหายของไฟล์ ค่าเริ่มต้นคือการตรวจสอบ CRC32
-s --ขนาดคีย์ ขนาด
SIZE คือขนาดคีย์ของอัลกอริทึมเป็นไบต์ (ไม่ใช่ขนาดของข้อความรหัสผ่าน) มัน
ค่าเริ่มต้นเป็นคีย์สูงสุดที่สนับสนุนโดยอัลกอริทึม ขนาดคีย์สูงสุดของ
อัลกอริทึมสามารถรับได้จากพารามิเตอร์ --list ปลอดภัยอย่าสัมผัส
นี้.
-g --openpgp
ตัวเลือกนี้จะทำให้ mcrypt ใช้รูปแบบไฟล์ OpenPGP (RFC2440) สำหรับการเข้ารหัส
ไฟล์. สิ่งนี้จะทำให้ไฟล์ที่เข้ารหัสโดย mcrypt สามารถเข้าถึงได้จาก OpenPGP
แอปพลิเคชันที่สอดคล้อง
-b --เปลือย
ไม่มีข้อมูลสำคัญ เช่น อัลกอริธึม โหมด โหมดบิต และ crc32 ของ
ไฟล์ต้นฉบับถูกเขียนในไฟล์ที่เข้ารหัส การรักษาความปลอดภัยอยู่ที่
อัลกอริธึมไม่คลุมเครือ ดังนั้นนี่ไม่ใช่ค่าเริ่มต้น แฟล็กนี้จะต้อง .ด้วย
ระบุเมื่อถอดรหัสไฟล์ที่เข้ารหัสเปลือย เมื่อระบุธงเปล่า
การถอดรหัสและการเข้ารหัสทำได้เร็วกว่า สิ่งนี้อาจมีประโยชน์เมื่อใช้ mcrypt to
เข้ารหัสลิงก์หรืออะไรทำนองนั้น
--ล้าง
ล้างเอาต์พุต (ข้อความเข้ารหัสหรือข้อความธรรมดา) ทันที มีประโยชน์หากใช้ mcrypt
ด้วยท่อ
--เวลา พิมพ์ข้อมูลเวลา (ความเร็วในการเข้ารหัส ฯลฯ )
--nodelete
เมื่อระบุตัวเลือกนี้ mcrypt จะไม่ลบไฟล์ที่ส่งออกแม้ว่า
การถอดรหัสล้มเหลว สิ่งนี้มีประโยชน์หากคุณต้องการถอดรหัสไฟล์ที่เสียหาย
-q --เงียบ
ระงับคำเตือนที่ไม่สำคัญบางอย่าง
-u --ยกเลิกการเชื่อมโยง
ยกเลิกการเชื่อมโยง (ลบ) ไฟล์อินพุตหากกระบวนการทั้งหมดของการเข้ารหัส/ถอดรหัส
ประสบความสำเร็จ นี่ไม่ใช่ค่าเริ่มต้นเพื่อใช้โปรแกรมภายนอกเพื่อลบ
ข้อมูลที่ละเอียดอ่อน
--รายการ
แสดงรายการอัลกอริทึมทั้งหมดที่รองรับในปัจจุบัน
--รายการคีย์โหมด
แสดงรายการโหมดหลักทั้งหมดที่รองรับในปัจจุบัน
--รายการแฮช
แสดงรายการอัลกอริธึมแฮชทั้งหมดที่รองรับในปัจจุบัน
-r --สุ่ม
ใช้ / dev /(s)random แทน /dev/urandom อาจต้องป้อนคีย์หรือเมาส์
ย้ายไปดำเนินการ หากระบบของคุณไม่รองรับ /dev/random หรือ /dev/urandom, a
จะใช้ตัวรวบรวมแบบสุ่ม
-k --กุญแจ คีย์ 1 คีย์ 2 ...
ป้อนคำสำคัญผ่านทางบรรทัดคำสั่ง KEY(s) is/are ถูกใช้เป็นคำสำคัญ
แทนที่จะถามหาพวกเขา จำไว้ว่าอาจมีคนเห็นคำสั่งคุณ
กำลังดำเนินการ ดังนั้นคำหลักของคุณ
-c --การกำหนดค่า ไฟล์
ใช้ไฟล์การกำหนดค่าที่ระบุ ค่าเริ่มต้นคือ .mcryptrc ในบ้านของคุณ
ไดเร็กทอรี รูปแบบของไฟล์คอนฟิกูเรชันเหมือนกับพารามิเตอร์ หนึ่ง
ไฟล์ตัวอย่างคือ:
อัลกอริทึมที่ปลอดภัยกว่า+
โหมด cbc
คีย์ a_very_secret_one
-f --ไฟล์คีย์ ไฟล์
ป้อนคำสำคัญผ่านไฟล์ มีการอ่านคำหลักหนึ่งคำต่อบรรทัด คีย์เวิร์ดแรก
read ใช้สำหรับไฟล์แรก ไฟล์ที่สองสำหรับไฟล์ที่สอง เป็นต้น ถ้า
คีย์เวิร์ดน้อยกว่าไฟล์ จากนั้นคีย์เวิร์ดสุดท้ายจะใช้กับคีย์เวิร์ดที่เหลือ NS
ข้อ จำกัด คือคุณไม่สามารถใช้อักขระ NULL (\0) และ Newline (\n) ใน
ที่สำคัญ วิธีแก้ปัญหานี้คือการระบุคีย์เวิร์ดในโหมดฐานสิบหก
-m --โหมด โหมด
โหมดการเข้ารหัสและถอดรหัส ปัจจุบันรองรับโหมดเหล่านี้: ECB, CFB,
OFB, nOFB, CBC และสตรีม CBC เป็นค่าเริ่มต้น เว้นแต่จะระบุแฟล็กเปล่าไว้
ไม่จำเป็นต้องระบุโหมดเหล่านี้สำหรับการถอดรหัส สำหรับอัลกอริธึมการสตรีม
(เช่น WAKE) โหมดควรเป็น STREAM
-a --อัลกอริทึม อัลกอริธึม
อัลกอริทึมที่ใช้ในการเข้ารหัสและถอดรหัส เว้นแต่จะระบุธงเปล่าไว้ที่นั่น
ไม่จำเป็นต้องระบุสิ่งเหล่านี้เพื่อถอดรหัส
อัลกอริทึมที่รองรับในปัจจุบันจะแสดงด้วยพารามิเตอร์ --list
ตัวอย่าง
เพื่อให้ mcrypt เข้ากันได้กับ Solaris ของ(1), จำเป็นต้องใช้พารามิเตอร์ต่อไปนี้:
"mcrypt -a des --keymode pkdes --bare --noiv ชื่อไฟล์"
เพื่อให้ mcrypt เข้ากันได้กับ unix ฝังศพใต้ถุนโบสถ์(1), จำเป็นต้องใช้พารามิเตอร์ต่อไปนี้:
"mcrypt -a enigma --keymode scrypt --bare ชื่อไฟล์"
ในการเข้ารหัสไฟล์โดยใช้อัลกอริธึมสตรีม (เช่น Arcfour) พารามิเตอร์ต่อไปนี้คือ
ต้องการ: "mcrypt -a arcfour --mode stream filename"
และพวกเรา
Mcrypt ใช้ตัวแปรสภาพแวดล้อมต่อไปนี้:
MCRYPT_KEY: เพื่อระบุคีย์
MCRYPT_ALGO: เพื่อระบุอัลกอริทึม
MCRYPT_MODE: เพื่อระบุโหมดของอัลกอริทึม
MCRYPT_KEY_MODE: เพื่อระบุโหมดคีย์
คุณสามารถใช้สิ่งเหล่านี้แทนการใช้บรรทัดคำสั่ง (ซึ่งไม่ปลอดภัย) แต่โปรดทราบว่า
ควรใช้คีย์เดียวเท่านั้นใน MCRYPT_KEY
ใช้ mcrypt ออนไลน์โดยใช้บริการ onworks.net