Tưtưởng chính của SHA – 512 +) Một số tính chất của SHA – 512.

Một phần của tài liệu Đề cương ôn thi môn học an toàn thông tin (Trang 25)

- CTR decrytption:

a)Tưtưởng chính của SHA – 512 +) Một số tính chất của SHA – 512.

+) Một số tính chất của SHA – 512.

- Cỡ của thông điệp : 0<= l< 2128 - Cỡ của khối : 1024 bits.

- Cỡ của giá trị băm của thông điệp : 512 bits. - Cỡ của từ: 64 bits.

- Sử dụng 8 biến trung gian, mỗi biến là một từ 64 bits.

* Thuật toán hàm băm SHA-512 gồm 2 bước: tiền xử lý và tính toán giá trị băm.

™ Bước tiền xử lý bao gồm các thao tác: o Mở rộng thông điệp

o Phân tích thông điệp đã mở rộng thành các khối m bit o Khởi tạo giá trị băm ban đầu

™ Bước tính toán giá trị băm bao gồm các thao tác: o Làm N lần các công việc sau:

™ - Tạo bảng phân bố thông điệp (message schedule) từ khối thứ i. ™ - Dùng bảng phân bố thông điệp cùng với các hàm, hằng số, các thao tác trên từ để tạo ra giá trị băm i.

o Sử dụng giá trị băm cuối cùng để tạo thông điệp rút gọn. 1. Tiền xử lý:

+) Padding message(Mở rộng thông điệp):

- Mục đích : Thêm x bits vào thông điệp để được bội của 1024: l+x = N*1024.

- Phương pháp :

+ Thêm bit 1 vào cuối message.

+ Thêm k bit 0 vào cuối, với k là số không âm nhỏ nhất: k+l+1 ≡896 mod 1024(thêm sao cho thiếu 128 bít nữa là bội của 1024).

+ Gắn vào cuối khối 128 bits là biểu diễn nhị phân của l. +) Phân tích thông điệp đã mở rộng thành N khối 1024 bit

- Thông điệp sau khi được độn thêm bit để có độ dài là bội của 1024, sẽ được phân tích thành các khối 1024 bits.

M1 , M2 , M3….Mn-1, Mn.

- 1024 bít của khối dữ liệu đầu vào được biểu diễn bằng 16 từ 64 bit. +) Khởi tạo giá trị băm ban đầu, mỗi giá trị băm có 16 từ:H00, H10, H20, H30, H40, H50, H60, H70

2. Tính toán giá trị băm:Từ khối 16 từ ban đầu mở rộng thành khối 80 từ. Tính giá trị băm thứ i dựa vào trung gian

- Lặp N lần để xử lý lần lượt N khối. - Tại lần lặp thứ i(1≤i≤N):

+ Message schedule: chuyển block thành 80 từ 64-bit. + Thiết lập giá trị cho 8 biến trung gian.

+ Thực hiện vòng lặp để biến đổi giá trị các biến trung gian. + Tính giá trị băm thứ i.

- Giá trị băm thứ N là giá trị băm của thông điệp(Message digest). +) phân bố thông điệp(message schedule).

- Tại lần lặp thứ i:

Tức là: 16 từ đầu tiên của message=16 từ đầu của khối đó, còn các từ còn lại từ 17 đến 80 được tính bằng công thức

+)Thiết lập các biến trung gian - Tại lần lặp thứ i:

a = H0i-1 b= H1i-1 c = H2i-1

tương tự d, e, f , g , h.

+) Biến đổi các biến trung gian.

- Tại lần lặp thứ i For I = 0 to 79 (adsbygoogle = window.adsbygoogle || []).push({});

Trong đó Kt là các hằng số.

- Một số hàm băm đã được sử dụng.

+) tính giá trị băm thứ i: Giá trị băm mới=giá trị băm cũ + trung gián H0i = a+H0i-1.

H1i= b+ H1i-1. H2i = c + H2i-1 Tương tự đến H7i.

b) Khẳng định SHA – 512 được xây dựng dựa trên tư tưởng của Merkle – Damgard’s construction :

Một phần của tài liệu Đề cương ôn thi môn học an toàn thông tin (Trang 25)