You are on page 1of 14

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

VIỆN ĐIỆN TỬ VIỄN THÔNG

_____________________________

LÝ THUYẾT MẬT MÃ
SHA-512
Giảng viên: Hán Trọng Thanh
Nhóm 3:
Nguyễn Thị Hoài Thương 20153727
Lê Xuân Chiến 20150354
Phạm Văn Đoán 20150944
Nguyễn Duy Mạnh 20152400

Hà Nội,2018
Mục lục
LỜI MỞ ĐẦU ............................................................................................................3

GIỚI THIỆU CHUNG ...............................................................................................4

TÍNH CHẤT HÀM BĂM ..........................................................................................5

VAI TRÒ HÀM BĂM ...............................................................................................6

THUẬT TOÁN ..........................................................................................................7

ỨNG DỤNG SHA- 512 .............................................................................................9

ỨNG DỤNG HÀM BĂM SHA-512 ĐỂ BẢO VỆ USB ..........................................9

1) Đặt vấn đề .........................................................................................................9

2) Tổng quan về ứng dụng ....................................................................................9

3) Ý tưởng của nhóm ..........................................................................................10

4) Cách sử dụng ..................................................................................................10

5) Ưu và nhược điểm ..........................................................................................13

KẾT LUẬN ..............................................................................................................14


LỜI MỞ ĐẦU
Khi cuộc sống ngày càng phát triển, công nghệ hiện đại chiếm ưu thế, thời đại số
chiếm lĩnh thị trường thì việc truyền, tải dữ liệu vô cùng quan trọng. Vấn đề bảo mật
dữ liệu của người dùng vô cùng quan trọng.
Trong đề tài này, nhóm em tìm hiểu ứng dụng của hàm băm mật mã SHA-512
trong vấn đề bảo vệ USB tránh việc bị mất cắp cũng như xâm nhập của virut vào
USB.
Nhóm em xin cảm ơn sự chỉ bảo của thầy Hán Trọng Thanh đã giúp nhóm em
hoàn thành bài tập này.
Trong quá trình tìm hiểu nhóm em còn nhiều thiếu xót, mong được sự nhận xét,
đóng góp ý kiến thêm của thầy.
Nhóm em xin chân thành cảm ơn!
GIỚI THIỆU CHUNG
SHA-512 là một hàm băm.
Khái niệm hàm băm đã xuất hiện từ lâu trong lĩnh vực máy tính. Nó ánh xạ một
xâu nhị phân (văn bản, hình ảnh, âm thanh,…) có độ dài bất kỳ thành một xâu có độ
dài cố định. Bản chất của mã băm có thể coi như “dấu vân tay” của một văn bản.
Nhờ có nó ta có thể đảm bảo rằng một văn bản là chính xác và không bị sửa đổi.
Nhờ các đặc điểm của SHA-512 mà được ứng dụng rất nhiều trong vấn đề bảo
mật an toàn thông tin. Trong đề tài này nhóm em nghiên cứu các tính chất vai trò
của SHA-512 đưa ra lớp bảo vệ USB tránh việc sử dụng USB ở nhiều nơi khác nhau
dẫn đến việc USB của người dùng có thể bị mất cắp dự liệu.
TÍNH CHẤT HÀM BĂM
1) Tính kháng tiền ảnh (Tính một chiều)
Với mọi đầu ra cho trước, không thể tìm được bất kì dữ liệu đầu vào nào
 Với thông điệp đầu vào x thu được bản băm z = h(x) là duy nhất.
 Nếu dữ liệu trong thông điệp x thay đổi để thành thông điệp x’ thì h(x’)
 h(x) => Hai thông điệp hoàn toàn khác nhau thì giá trị hàm băm cũng
khác nhau.
 Nội dung của thông điệp gốc không thể bị suy ra từ giá trị hàm băm =>
Với thông điệp x thì dễ dàng tính được z = h(x), nhưng lại không thể (thực
chất là khó) suy ngược lại được x nếu chỉ biết giá trị hàm băm h.
2) Tính kháng tiền ảnh thứ 2 (Tính duy nhất)
Xác suất để hai thông điệp có cùng kết quả hash là cực khó
3) Tính kháng xung đột (Tính hiệu quả)
Không thể sửa được một thông điệp mà không làm thay đổi giá trị băm của
nó.
SHA-512: ánh xạ một xâu có độ dài bất kì thành một xâu có độ dài cố định 512 bit
Đặc điểm:
- Kích thước khối:1024 bits
- Độ dài: 128 bits
- Xung đột: Không
VAI TRÒ HÀM BĂM
- Vai trò hàm băm trong mật mã hiện đại:
 Được dùng để xác thực tính nguyên vẹn dữ liệu
 Được dùng trong quá trình tạo chữ kí số trong giao dịch điện tử.
- Các hàm băm lấy một thông báo đầu vào và tạo một đầu ra được xem như là:
 Mã băm (hash code),
 Kết quả băm (hash result),
 Hoặc giá trị băm (hash value).
- Vai trò cơ bản của các hàm băm mật mã là một giá trị băm coi như ảnh đại
diện thu gọn, đôi khi gọi là một dấu vết (imprint), vân tay số (digital
fingerprint), hoặc tóm lược thông báo (message digest) của một xâu đầu vào,
và có thể được dùng như là một định danh duy nhất với xâu đó.
- Các hàm băm thường được dùng cho toàn vẹn dữ liệu kết hợp với các lược đồ
chữ kí số.
- Một lớp các hàm băm riêng được gọi là mã xác thực thông báo (MAC) cho
phép xác thực thông báo bằng các kĩ thuật mã đối xứng.
THUẬT TOÁN
SHA-512 tạo ra một tiêu chuẩn 512 bit từ một tin nhắn đa khối. Khối dữ liệu đầu
vào có chiều dài tùy ý được phân thành các khối con liên tiếp có độ dài 1024 bit.
Tuy nhiên do chiều dài của đầu vào là tùy ý nên ta phải thêm các bit phụ sao cho các
khối có đầy đủ độ dài 1024 bit.
- Mỗi khối có độ dài 1024 bit.
- Cập nhật bộ đệm 512 bit
- Sử dụng modun 80 vòng.
- Hằng số quay vòng dựa trên căn bậc ba của 80 số nguyên tố đầu tiên.

Hình 1: Thuật toán


- Mỗi vòng cũng sử dụng một hằng số phụ Kt.
- Đầu ra của vòng thứ tám được thêm vào đầu vào vòng đầu tiên để tạo ra giá
trị băm cuối cùng cho khối tin này, tạo thành đầu vào cho lần lặp lại tiếp theo của
chức năng nén này.
Hình 2: Hàm nén SHA-512
a) Cấu trúc 1 vòng
Mỗi từ 64 bit xáo trộn cùng một chỗ và trong một số trường hợp sử dụng một loạt
các hàm logic đơn giản (ANDs, NOTs, ORs, XORs , ROTates), để cung cấp tính
chất sụp đổ và tính hoàn chỉnh của hàm băm.

Hình 3: Cấu trúc 1 vòng


ỨNG DỤNG SHA- 512
1) Tạo ra hệ thống tin cậy trong máy tính
2) Kiểm tra tính toàn vẹn của thông điệp
3) Chữ kí số (Digital Signatures)
4) Xác thực mật khẩu
5) Mã xác thực thông điệp

ỨNG DỤNG HÀM BĂM SHA-512 ĐỂ BẢO VỆ


USB
1) Đặt vấn đề
Từ trước đến nay, USB được biết đến như là một công cụ hữu dụng trong việc
lưu trữ và sao chép dữ liệu, nhưng mặt khác nó cũng có thể là nguyên nhân làm lây
lan, phát tán mã độc từ các máy tính, đe dọa đến sự an toàn, bảo mật của dữ liệu
trong chính chiếc USB, cũng như các dữ liệu khác trong máy tính có sử dụng USB.
Theo thống kê của Bkav, số lượng máy tính bị nhiễm virus tại Việt Nam trong quý
III/2017 vẫn ở mức rất cao, lên tới 15 triệu lượt máy. Trong đó, con đường lây nhiễm
virus chính vẫn là qua USB, chiếm tới hơn 50%.
2) Tổng quan về ứng dụng
Đặc điểm kỹ thuật nổi bật của VS-KEY là không bị lây nhiễm Virus, Spyware,
Worm, Troijan House… khi sử dụng USB để sao lưu dữ liệu giữa các máy vi tính;
chống truy cập trái phép lấy cắp thông tin bởi các chương trình gián điệp (Spyware)
từ USB vào máy vi tính và ngược lại; chương trình thực hiện mã hóa tự động khi lưu
dữ liệu từ máy vi tính vào USB an toàn và giải mã tự động khi copy từ USB an toàn
sang máy vi tính, quá trình mã hóa và giải mã dữ liệu sử dụng thuật toán mã hóa
AES 256; mật khẩu người dùng được mã hóa (SHA-2) và lưu trữ ngay trên USB, nếu
nhập sai mật khẩu 10 lần, USB sẽ bị khóa
<Trích bài báo về USB VS-KEY>
Ở đây đề tài nhóm em làm 1 chức năng trong 3 chức năng là chống truy cập trái
phép lấy cắp thông tin bởi các chương trình gián điệp (Spyware) từ USB vào máy
vi tính và ngược lại.
Trước khi sử dụng để đọc/ghi dữ liệu cần nhập mật khẩu người dùng, mật khẩu
ở đây sử dụng hàm băm SHA-512 để mã hóa, vì có tính 1 chiều nên SHA-512 chỉ
có thể mã hóa mà không giải mã được, phần mềm chỉ cho phép tiếp tục khi xác thực
mật khẩu người dùng đúng, khi đó phần mềm sẽ truy xuất vào vùng chứa mật khẩu
bảo mật để lấy mã khóa truy nhập đồng thời nhận dạng được hệ thống tệp tin (file).
Tại sao lại chọn SHA-512 mà ko phải hệ mật khác????
Bởi vì hệ mật này có tính 1 chiều nên nếu tin tặc có lấy được đoạn mã băm thì
cũng không thể truy xuất giải mã được mật khẩu của người dùng. Trong khi đó,
những hệ mật khác lại có tính 2 chiều nên nếu lấy được đoạn mã hóa của mật khẩu
thì tin tặc dễ dàng truy xuất giải mã lại được mật khẩu nguời dùng
3) Ý tưởng của nhóm
Nhóm còn thiếu xót rất nhiều kiến thức cũng như kinh nghiệm nên dựa trên
ứng dụng đã nêu ra ở trên nhóm đã lên ý tưởng : Tạo 1 giao diện máy tính với các
thư mục trên visual, ngoại trừ ổ D và ổ C ra, thì các ổ khác được mặc định là USB,
khi kích vào USB thì phần mềm yêu cầu đăng nhập mật khẩu, nếu mật khẩu đúng
thì được truy cập, nếu không đúng thì yêu cầu nhập lại mật khẩu.
4) Cách sử dụng
Bước 1: Sau khi chạy ứng dụng sẽ xuất hiện 1 giao diện gồm các thư mục của
máy tính coi như các USB.
Hình 4:Giao diện ứng dụng
Bước 2: Chọn thư mục(trừ ổ D, C) ở mục computer. Chương trình yêu cầu
người dùng nhập mật khẩu. Chúng ta sẽ nhập mật khẩu mặc định đã cài đặt trước.

Hình 5: Giao diện nhập mật khẩu


Bước 3: Sau khi nhập mật khẩu. Hiện giao diện thông báo hỏi người dùng có muốn
đổi mật khẩu hay không?

Hình 6: Giao diễn đổi mật khẩu


Người dùng có thể đổi lại mật khẩu để đảm bảo tính bảo mật an toàn cho USB
Sau khi đăng nhập thành công người dùng có thể thao tác với USB tùy ý.
Hình 7: Truy cập USB thành công
5) Ưu và nhược điểm
a) Ưu điểm
- Tăng tính an toàn cho USB
- Tránh việc mất cắp dữ liệu người dùng
- Dễ sử dụng, tiết kiệm thời gian
b) Nhược điểm
- Còn nhiều thiếu xót về kiến thức nên ứng dụng nhóm đưa ra còn rất nhiều hạn
chế.
KẾT LUẬN
Qua quá trình làm bài tập lớn, cùng với kiến thức trên lớp nhóm em đã hoàn
thành đề tài “ Ứng dụng hệ mật SHA-512 bảo vệ USB”. Nhóm còn thiếu rất nhiều
kiến thức nên đề tài này còn rất nhiều thiếu xót. Mong nhận được những đóng góp,
ý kiến của thầy để nhóm có thể hoàn thành tốt hơn nữa đề tài.
Cuối cùng em xin chân thành cảm ơn thầy Hán Trọng Thanh đã tận tình hướng
dẫn để nhóm có thể hoàn thành tốt bài tập.

You might also like