Toolonit
  1. หน้าแรก
  2. เข้ารหัสลับ
  3. เข้ารหัส / ถอดรหัส
  4. Serpent

เข้ารหัสและถอดรหัส Serpent

เข้ารหัสและถอดรหัสข้อความด้วย Serpent หนึ่งในผู้เข้ารอบสุดท้ายของการคัดเลือก AES

เข้ารหัสด้วย

ต้องใช้รหัสผ่านนี้อีกครั้งเพื่อถอดรหัส สิ่งที่คุณพิมพ์จะไม่ออกจากหน้านี้

จำนวนรอบ PBKDF2

ค่าเริ่มต้นของ OpenSSL คือ 10,000 ใช้ตัวเลขใดก็ได้ ยิ่งมากยิ่งทำให้เดารหัสผ่านได้ช้าลง และการถอดรหัสต้องใช้จำนวนเดียวกัน

โหมด

ตัวเลือกปกติเมื่อใช้กับ OpenSSL ต้องใช้ IV และเติม padding ให้เต็มบล็อก

ขนาดคีย์
ผลลัพธ์เป็น
ทำแบบเดียวกันด้วย OpenSSL

OpenSSL ไม่มีอัลกอริทึมเข้ารหัส Serpent

Serpent ผลงานของ Ross Anderson, Eli Biham และ Lars Knudsen ได้อันดับสองในการคัดเลือก AES เข้ารหัสทีละบล็อกขนาด 16 ไบต์ด้วยคีย์ 128, 192 หรือ 256 บิตผ่าน 32 รอบ ซึ่งเป็นส่วนเผื่อความปลอดภัยที่ตั้งใจให้กว้าง แลกกับความเร็วที่แพ้ Rijndael ผู้ชนะที่กลายเป็น AES และยังไม่มีการโจมตีที่ใช้ได้จริง ที่นี่คุณเข้ารหัสและถอดรหัสข้อความด้วย Serpent-256 เป็นค่าเริ่มต้น (หรือ 128, 192) ในโหมด CBC, ECB, CTR, CFB หรือ OFB เมื่อใช้รหัสผ่าน คีย์และ IV จะได้จาก PBKDF2-HMAC-SHA256 กับ salt สุ่ม และผลลัพธ์เก็บในรูปแบบ Salted__ ของ openssl enc -pbkdf2 หรือจะใส่คีย์และ IV แบบ hex ของคุณเองก็ได้ ข้อความและคีย์ไม่ออกจากอุปกรณ์ของคุณ เพราะทำงานในเบราว์เซอร์ ใช้ฟรีและไม่ต้องสมัครสมาชิก

วิธีเข้ารหัสข้อความด้วย Serpent

  1. เลือก “เข้ารหัส” หรือ “ถอดรหัส” แล้วพิมพ์ข้อความที่จะเข้ารหัส หรือวางข้อความ Base64 หรือ hex ที่จะถอดรหัส ระบบจะตรวจรูปแบบให้อัตโนมัติ
  2. ใส่รหัสผ่าน (ปุ่ม “สร้าง” จะสร้างรหัสผ่านที่แข็งแรงให้) หรือสลับไปที่ “คีย์และ IV (hex)” แล้วใส่หรือสร้างคีย์และ IV 32 หลัก (ECB ไม่มี IV)
  3. เลือกขนาดคีย์ (ค่าเริ่มต้น 256 บิต) และโหมด (ค่าเริ่มต้น CBC) เวลาถอดรหัสต้องใช้ค่าเดียวกับตอนเข้ารหัสทั้งหมด
  4. คัดลอกหรือดาวน์โหลดผลลัพธ์ หรือกด “สลับ” เพื่อย้ายผลลัพธ์ไปเป็นอินพุตและกลับทิศทาง

ความสามารถ

  • Serpent ด้วยคีย์ 128, 192 หรือ 256 บิต ครบทั้ง 32 รอบ
  • โหมด CBC, ECB, CTR, CFB และ OFB พร้อม padding แบบ PKCS#7 หรือไม่ใช้ padding
  • ลำดับไบต์มาตรฐาน แบบเดียวกับชุดทดสอบ (test vector) ของ NESSIE
  • โหมดรหัสผ่านด้วย PBKDF2-HMAC-SHA256 และส่วนหัว Salted__ ของ openssl enc -pbkdf2
  • โหมดคีย์และ IV ด้วยคีย์และ IV แบบ hex ของคุณเอง หรือที่สุ่มสร้างให้
  • อินพุตและผลลัพธ์เป็น Base64 หรือ hex คัดลอก ดาวน์โหลด หรือ “สลับ” ผลลัพธ์ได้

เป็นส่วนตัวหรือไม่

ใช่ Serpent ทำงานด้วย WebAssembly ภายในเบราว์เซอร์ของคุณ ข้อความ รหัสผ่าน และคีย์ไม่เคยถูกส่งไปยังเซิร์ฟเวอร์หรือบันทึกไว้ในเบราว์เซอร์

คำถามที่พบบ่อย

Serpent ปลอดภัยไหม

ปลอดภัย ยังไม่มีการโจมตีที่ใช้ได้จริงกับ Serpent เต็ม 32 รอบ และถูกออกแบบให้ปลอดภัยต่อไปแม้การโจมตีจะพัฒนาขึ้น โดยแลกกับความเร็ว สำหรับข้อความขนาดทั่วไป ความเร็วที่ต่างกันไม่มีผล AES รองรับแทบทุกที่ จึงเลือก Serpent เมื่อระบบที่คุณแลกเปลี่ยนข้อมูลด้วยใช้ Serpent

OpenSSL ถอดรหัส Serpent ได้ไหม

ไม่ได้ OpenSSL ไม่มี Serpent จึงไม่มีคำสั่ง openssl ใดอ่านผลลัพธ์นี้ได้ หากจะใช้ข้อมูลในโปรแกรมอื่น ให้เลือกโหมดคีย์และ IV แล้วส่งคีย์ IV โหมด และ padding เดียวกันให้โปรแกรมนั้น (PKCS#7 สำหรับ CBC และ ECB)

ทำไมข้อมูล Serpent จากโปรแกรมอื่นจึงถอดรหัสไม่ได้

หากคีย์ IV และโหมดถูกต้อง สาเหตุที่เป็นไปได้คือลำดับไบต์ บางการใช้งานเขียนไบต์ขาเข้าและขาออกของ Serpent กลับด้าน ซึ่ง Bouncy Castle เรียกแบบนี้ว่า Tnepres หน้านี้ใช้ลำดับมาตรฐานตามชุดทดสอบของ NESSIE ข้อมูลจากการใช้งานแบบ Tnepres จึงถอดรหัสที่นี่ไม่ได้

เปิดวอลุ่ม VeraCrypt ที่เข้ารหัสด้วย Serpent ได้ไหม

ไม่ได้ VeraCrypt เข้ารหัสทั้งดิสก์และไฟล์คอนเทนเนอร์ด้วย Serpent ในโหมด XTS ภายใต้ส่วนหัวของตัวเอง ส่วนหน้านี้เข้ารหัสและถอดรหัสข้อความ ให้เปิดวอลุ่ม VeraCrypt ด้วย VeraCrypt และหากต้องการล็อกไฟล์เดียวในเบราว์เซอร์ ให้ใช้เครื่องมือเข้ารหัสไฟล์

เครื่องมือที่เกี่ยวข้อง