SHA (Secure Hashing Algorithm) คืออะไร?
SHA ย่อมาจาก Secure Hashing Algorithm เป็นรุ่นปรับปรุงของ MD5 ใช้ Hashing ข้อมูลและ Certificates Hashing Algorithm บีบอัด Input ให้เล็กลง ไม่สามารถย้อนกลับได้ด้วย Bitwise Operations, Modular Additions, Compression Functions
คุณสมบัติสำคัญ
- ตรวจสอบว่า Original Message ถูกเปลี่ยนแปลงหรือไม่: นำ Original Hash Digest มาเปรียบเทียบ หากต่างแม้แค่ 1 ตัวอักษร Hash Digest จะต่างกันอย่างชัดเจน
- Deterministic: Hash Function เดียวกัน → ทุก Computer/User สร้าง Hash Digest เดียวกันได้ นี่คือเหตุผล SSL Certificates ทุกตัวบน Internet ต้อง Hash ด้วย SHA-2
รุ่นต่างๆ
- SHA-0 (1993): 16-bit Hashing
- SHA-1: 16-bit Hashing (Successor ของ SHA-0)
- SHA-2: ชุด 2 ฟังก์ชัน 256-bit และ 512-bit
- SHA-3 (Keccak): ระดับสูงสุด จาก Crowdsourcing Contest หาอัลกอริทึมใหม่สำหรับ Cybersecurity
บทบาทในความปลอดภัย
Secure Hash Algorithms ทั้งหมดเป็นส่วนของมาตรฐานเข้ารหัสใหม่ รักษาข้อมูลละเอียดอ่อน ป้องกันการโจมตีหลายรูปแบบ พัฒนาโดย NSA, Independent Developers ทั้งหมดเกี่ยวข้องกับ Hash Encryption ปกป้องข้อมูลใน Database/Network ส่งเสริม Information Security ในยุคดิจิทัล
Digital Certificates
Certificate File → Hash → Hashed File → Digitally Sign โดย CA ที่ออก Certificate
Authentication
ส่วนสำคัญของ Digital Communication: ยืนยัน Entity อีกปลายเป็นผู้ที่ต้องการสื่อสารจริง TLS Protocol ใช้ Asymmetric Cryptography เพื่อ Authentication ที่เข้มงวดกว่า