ความแตกต่างระหว่าง SHA-256 และ SHA-1 (พร้อมตาราง)

สารบัญ:

Anonim

SHA-256 ย่อมาจาก “Secure Hash Algorithm 256bit” และ SHA-1 ย่อมาจาก “Secure Hash Algorithm 1” ซึ่งเป็นฟังก์ชันเข้ารหัสที่ออกแบบโดยหน่วยงานความมั่นคงแห่งชาติของสหรัฐอเมริกาซึ่งใช้ในระบบต่างๆ มากมายพร้อมการใช้งานที่แตกต่างกันมากมาย ทั้ง SHA-256 และ SHA-1 เป็นฟังก์ชันแฮชที่คล้ายคลึงกันอย่างมาก แต่ก็ต่างกันด้วย

SHA-256 กับ SHA-1

ความแตกต่างระหว่าง SHA-256 และ SHA-1 คือ SHA-256 เป็นอัลกอริธึมที่ใหม่กว่า แข็งแกร่งกว่า และล้ำหน้ากว่า มักใช้โดยผู้ขุด bitcoin เนื่องจากมีปัญหาในการถอดรหัส ในทางกลับกัน SHA-1 เป็นอัลกอริทึมรุ่นเก่าที่ไม่แข็งแรงหรือปลอดภัยเท่ากับ SHA-256 บางครั้งผู้คนใช้มันเพื่อเก็บรหัสผ่านเพราะการเข้ารหัสนั้นง่ายต่อการถอดรหัส

SHA-256 เป็นฟังก์ชันการเข้ารหัสที่สร้างสตริงอักขระที่แทบจะคาดเดาไม่ได้ตามอินพุต ยิ่งไปกว่านั้น SHA-256 ยังเป็นอัลกอริธึมที่ใหม่กว่า แข็งแกร่งกว่า และล้ำหน้ากว่า ซึ่งใช้ในระบบต่างๆ มากมายที่มีการใช้งานที่แตกต่างกันมากมาย อย่างไรก็ตาม SHA-256 มักถูกใช้โดยนักขุด bitcoin

SHA-1 เป็นฟังก์ชันเข้ารหัสที่รับข้อความที่มีความยาวเท่าใดก็ได้เป็นอินพุตและสร้างสตริง 160 บิต นอกจากนี้ SHA-1 ยังเป็นอัลกอริธึมที่เก่ากว่าและช้ากว่าซึ่งมีอัตราประสิทธิภาพต่ำมากและมักใช้ในการจัดเก็บรหัสผ่านเนื่องจากการเข้ารหัสสามารถถอดรหัสได้ง่ายกว่า

ตารางเปรียบเทียบระหว่าง SHA-256 และ SHA-1

พารามิเตอร์ของการเปรียบเทียบ

SHA-256

SHA-1

กองหลัง

SHA-25 เป็นฟังก์ชันการเข้ารหัสที่มีอัลกอริธึมที่ใหม่กว่า แข็งแกร่งกว่า และล้ำหน้ากว่า SHA-1 เป็นฟังก์ชันการเข้ารหัสที่มีอัลกอริธึมที่เก่ากว่า
เวลาแสดง

เวลาที่ใช้ในการคำนวณค่าแฮช SHA-256 นั้นยาวนานกว่ามาก เวลาที่ใช้ในการคำนวณค่าแฮช SHA-1 จะน้อยกว่า
ช่องว่าง

อัลกอริทึม SHA-256 ต้องการพื้นที่มากขึ้นในการจัดเก็บค่าแฮชในหน่วยความจำหรือบนดิสก์ อัลกอริทึม SHA-1 ต้องการพื้นที่น้อยลงในการจัดเก็บค่าแฮชในหน่วยความจำหรือบนดิสก์
ความเร็ว

ประสิทธิภาพของอัลกอริทึม SHA-256 นั้นเร็วกว่า ประสิทธิภาพของอัลกอริทึม SHA-1 นั้นช้าลง
ความปลอดภัย

อัลกอริทึม SHA-256 มีความปลอดภัยมากขึ้น อัลกอริทึม SHA-1 มีความปลอดภัยน้อยกว่า

SHA-256 คืออะไร?

SHA-256 ใช้ในธุรกรรม Bitcoin เพื่อตรวจสอบธุรกรรมและสร้างคีย์สาธารณะสำหรับเจ้าของเหรียญแต่ละคน นอกจากนี้ SHA-256 ยังสามารถใช้ได้ในโปรโตคอลการตรวจสอบรหัสผ่านบางประเภทเมื่อรวมกับฟังก์ชันอื่นเพื่อให้แน่ใจว่ารหัสผ่านนั้นยากต่อการได้รับจากการโจมตีด้วยกำลังเดรัจฉานของคอมพิวเตอร์หรือวิธีการอื่นๆ

SHA-256 ใช้ในการขุด Bitcoin, การตรวจสอบไฟล์ในไคลเอนต์ BitTorrent, การรับรองความถูกต้องอย่างเข้มงวดบนเครือข่ายไร้สายบางเครือข่าย, การแฮชการเข้ารหัสสำหรับลายเซ็นดิจิทัล และการตรวจสอบรหัสผ่านในโปรแกรมถ่ายโอนไฟล์ เช่น FileZilla ตัวอย่างเช่น เมื่อคุณเข้าสู่ระบบเว็บไซต์ของธนาคารเพื่อตั้งค่าบัญชีหรือโอนเงินระหว่างบัญชี คุณกำลังเข้าสู่ระบบเซิร์ฟเวอร์ของธนาคารด้วยรหัสลับที่ใช้ร่วมกันซึ่งสร้างขึ้นด้วยความช่วยเหลือของ SHA-256

SHA-256 เป็นฟังก์ชันการเข้ารหัสที่สร้างการคาดเดาสตริงของอักขระหรือแฮชตามฟังก์ชันอินพุตที่แทบจะเป็นไปไม่ได้ อัลกอริทึม SHA-256 ต้องการพื้นที่มากขึ้นในการจัดเก็บค่าแฮชในหน่วยความจำหรือบนดิสก์ นอกจากนี้ยังส่งผลต่อพื้นที่ที่ระบบรักษาความปลอดภัยเครือข่ายของคุณจะต้องจัดเก็บค่าที่แฮชไว้จำนวนหนึ่ง

ในบางโปรโตคอล SHA-256 จะเรียกว่าฟังก์ชันแฮชแทนที่จะเป็นฟังก์ชันแฮช และนั่นเป็นเพราะว่า SHA-256 นั้นเร็วมากและมีความปลอดภัยสูงมาก นอกจากนี้ SHA-256 ยังเป็นฟังก์ชันแฮชเริ่มต้นในหลายโปรแกรมและได้รับการพิสูจน์แล้วว่าใช้งานได้หลายปี บริการอินเทอร์เน็ตจำนวนมากใช้ SHA-256 เพื่อจุดประสงค์นี้ ซึ่งรวมถึง OpenSSH, เว็บเซิร์ฟเวอร์ Apache, ฐานข้อมูล MySQL, Tomcat, เซิร์ฟเวอร์อีเมล Postfix และอื่นๆ อีกมากมาย

SHA-1 คืออะไร?

SHA-1 ได้รับการออกแบบโดย National Security Agency ซึ่งสร้างไดเจสต์ข้อความ 160 บิตสำหรับข้อความอินพุตที่กำหนด โดยทั่วไปจะใช้เพื่อตรวจสอบความสมบูรณ์ของข้อมูลและเพื่อสร้างลายเซ็นดิจิทัลด้วยคีย์ส่วนตัว และใช้การเข้ารหัสคีย์สาธารณะ

SHA-1 เป็นอัลกอริธึมที่เก่ากว่าซึ่งมีความปลอดภัย พื้นที่น้อยลง และประสิทธิภาพต่ำ ซึ่งไม่ใช่อัลกอริธึมการเข้ารหัส แต่สร้างเฉพาะข้อความย่อยที่สามารถใช้เป็นส่วนหนึ่งของอัลกอริธึมการเข้ารหัสและโปรโตคอลต่างๆ ที่ใช้การแฮชเพื่อความปลอดภัย อย่างไรก็ตาม SHA-1 มักใช้ในการจัดเก็บรหัสผ่านเนื่องจากการเข้ารหัสสามารถถอดรหัสได้ง่ายกว่า

แฮช SHA-1 มักพบเป็นลำดับเลขฐานสิบหก 40 หลัก ซึ่งมักจะแสดงเป็นกลุ่มตัวเลขสี่หลักจากซ้ายไปขวา ตัวเลขสิบสี่ตัวแรกของตัวเลขเหล่านี้ ซึ่งแทน 40 บิตแรกของข้อความคือ "สรุปข้อความ" ตัวเลข 20 หลักต่อมาแสดงถึง “รหัสตรวจสอบข้อความเฉพาะโปรโตคอล” ที่เรียกกันทั่วไปว่า “ลายเซ็น” ซึ่งพิสูจน์เอกลักษณ์ของการใช้ SHA-1 แบบเข้ารหัส และความสมบูรณ์ของข้อความภายใต้ฟังก์ชันแฮชเข้ารหัส

พบว่า SHA-1 มีความเสี่ยงต่อการโจมตีที่สามารถลดความยาวคีย์ที่มีประสิทธิภาพจาก 448 บิตเหลือเพียง 256 บิต แม้ว่า SHA-1 จะได้รับการอัปเกรดในภายหลังเพื่อใช้คีย์ที่ใหญ่ขึ้นอย่างเห็นได้ชัด แต่ก็ไม่มีการโจมตีใด ๆ ที่เป็นที่รู้จักในฟังก์ชันแฮชที่เผยแพร่ซึ่งทำลายความปลอดภัยของ SHA-1 โดยสิ้นเชิง อย่างไรก็ตาม มีการโจมตีที่ทราบกันดีอยู่แล้วซึ่งทำให้ความปลอดภัยของ SHA-1 ลดลงอย่างมาก ที่เรียกว่า "การโจมตีแบบชนกัน" เหล่านี้ไม่เกี่ยวข้องโดยตรงกับจุดอ่อนในการเข้ารหัสของ SHA-1

ความแตกต่างหลักระหว่าง SHA-256 และ SHA-1

บทสรุป

SHA-256 และ SHA-1 เป็นฟังก์ชันแฮชเข้ารหัสที่ออกแบบโดยหน่วยงานความมั่นคงแห่งชาติของสหรัฐอเมริกา SHA-256 เป็นเทคโนโลยีใหม่ที่สามารถเปลี่ยนหรือเสริมโปรโตคอลความปลอดภัยที่มีอยู่ของคุณได้ นอกจากนี้ อัลกอริทึม SHA-256 ยังถอดรหัสได้ยากขึ้น ทำให้แฮ็กเกอร์รับข้อมูลของคุณได้ยาก แม้ว่าพวกเขาจะค้นพบรหัสผ่านของคุณก็ตาม SHA-1 ไม่ใช่อัลกอริธึมการเข้ารหัส อย่างไรก็ตาม มันสร้างไดเจสต์ข้อความที่สามารถใช้เป็นส่วนหนึ่งของอัลกอริธึมการเข้ารหัสและโปรโตคอลต่างๆ เท่านั้น ซึ่งใช้สำหรับวัตถุประสงค์ในการแฮชและความปลอดภัย

อ้างอิง

ความแตกต่างระหว่าง SHA-256 และ SHA-1 (พร้อมตาราง)