D
|
Data
|
Dữ liệu
|
H
|
Hash-code
|
Mã băm
|
IV
|
Initializing value
|
Giá trị khởi tạo
|
X Å Y
|
Exclusive-or of strings of bits X
and Y
|
Phép toán XOR của xâu bit X
và Y
|
4.2 Duy nhất cho TCVN 11816-4
Bj
Khối thứ j được chia từ xâu dữ
liệu D sau quá trình đệm, tách và mở rộng.
Dj
Một nửa khối thứ j từ xâu dữ
liệu D sau quá trình đệm và tách. Dq+1 đến Dq+8 là các khối
dữ
liệu
bổ sung được tính toán trong hàm rút gọn.
e
Số mũ được dùng trong hàm vòng.
E
Một khối hằng số tương
đương 4 khối (ở vị trí trái nhất) theo sau Lϕ - 4 số 0.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đầu ra vòng thứ j của hàm vòng. Hj có độ dài Lϕ
LD
Độ dài của xâu đầu vào D tính
theo bit.
Lϕ
Độ dài đầu ra Hj của hàm
vòng ϕ. Nó là bội số nguyên của 16.
LN
Độ dài của số đồng dư N sử dụng
trong hàm vòng.
Lp
Độ dài của số nguyên tố p sử
dụng trong hàm rút gọn.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Nếu Z1 là một số
nguyên và Z2 là một số nguyên dương thì Z1 mod Z2
thì số nguyên duy nhất Z3 thỏa mãn
a)
a) 0 ≤ Z3 < Z2, và
b)
b) Z1 - Z3 là một số
nguyên và là bội của Z2.
N
Một số nguyên hợp số được dùng như số
đồng dư trong hàm vòng.
CHÚ THÍCH: Để xác định giá trị N, xem điều
5.
p
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
CHÚ THÍCH: Để xác định giá trị p, xem điều 5.
q
Số lượng nửa khối trong xâu dữ liệu D
sau các quá trình đệm và tách, và cũng là số các khối sau quá trình đệm,
tách và mở rộng.
RED
Hàm rút gọn, mà được áp dụng như
thao tác cuối cùng của quá trình băm để rút gọn khối Hq có độ dài Lϕ
để nhận được
mã băm H
có chiều dài Lp.
Yj
Xâu con thứ j có độ dài Lϕ/4 bit được
dùng trong hàm rút gọn.
ϕ
Một hàm vòng. Nếu X và Y
biểu thị các xâu Lϕ bit, thì ϕ(X, Y) biểu thị
một xâu Lϕ bit thu được bằng cách áp dụng
ϕ tới
X và Y.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Phép toán OR trên các xâu bit, tức
là nếu X và Y là các xâu
có cùng độ
dài thì XÚY biểu thị
xâu có được là kết quả phép OR của X và Y.
~
Một ký hiệu biểu thị phép toán
cắt. Nếu X là một xâu bit thì X~j biểu thị xâu bit có được là j bit bên
phải tận cùng của X.
:=
Một ký hiệu biểu thị phép toán “thiết
lập bằng”. Nó được sử dụng trong bản đặc tả kỹ thuật theo thủ tục của hàm vòng và của
hàm rút gọn, trong đó nó chỉ ra rằng khối ở bên trái của ký hiệu sẽ được thay
đổi để bằng với giá trị biểu thức ở bên phải của ký hiệu.
X || Y
Phép nối các xâu bit X và Y
theo thứ tự xác định.
5 Các yêu cầu
5.1. Để sử dụng một trong
các hàm băm được đặc tả trong TCVN 11816-4, hai số nguyên sẽ được lựa chọn: số
đồng dư N được sử dụng trong hàm vòng và số nguyên tố p được sử dụng
trong hàm rút gọn.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5.1.1 Việc phân
tích thành thừa số của N được chọn là không khả thi về mặt tính toán.
5.1.2 N được
tạo ra bằng cách duy trì các thừa số bí mật. Điều này có thể được thực hiện bởi
một bên thứ 3 đáng tin cậy hoặc bởi sự tính toán nhiều bên an toàn.
CHÚ THÍCH 1: Việc tạo ra một số N với thuộc tính mà các thừa số
của nó được giữ bí mật có thể được thực hiện bằng việc sử dụng một bên thứ ba đáng tin
cậy, phần cứng đáng tin, và/hoặc sự tính toán nhiều bên an toàn. Các ví dụ có thể được
tìm thấy trong Boneh [1], Cocks [2] và Frankel [3].
CHÚ THÍCH 2: Nếu các thừa số
của số đồng dư được
giữ bí mật, và nếu
kích thước của số nguyên tố p là đủ lớn thì thuật toán tốt nhất để tìm sự va chạm
xấp xỉ 2Lp/2 các ước lượng
của hàm vòng và thuật
toán tốt nhất để tìm một tiền ảnh
thứ 2 cần xấp xỉ 2Lp các ước lượng của hàm vòng. Do vậy, trong
các tình huống đó,
MASH-1 và MASH-2 này được tin tưởng là các hàm băm không va chạm.
5.1.3 Số nguyên tố
p của hàm rút gọn sẽ không phải là một thừa số của N của hàm
vòng.
5.1.4 Độ dài Lp
của số nguyên tố p
lớn nhất là bằng một nửa độ dài của N, Lp ≤ Lϕ/2.
5.1.5 Ba bit bậc
cao của số nguyên tố p phải bao gồm các số 1.
5.2 Để sử dụng một
trong các hàm băm, MASH-1 và MASH-2, người dùng phải chọn một trong hai số mũ e được
dùng trong hàm vòng ϕ.
5.3 MASH-1 và
MASH-2 có thể được áp dụng
cho tất cả các xâu dữ liệu D chứa nhiều nhất 2Lϕ/2 - 1 bit.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6.1 Độ dài của
mã băm và của N
Độ dài của N và độ dài của các
khối Hj có liên quan theo cách thức sau:
Lϕ + 1 ≤ LN
≤
Lϕ
+ 16
Độ dài Lϕ của khối Hq
là bội số nguyên của 16.
CHÚ THÍCH 1: Nếu độ dài Lϕ
được chọn, thì độ dài LN
ràng buộc theo bất đẳng thức ở trên. Nếu độ dài LN được chọn thì độ dài Lϕ sẽ là bội số lớn nhất của 16 mà nhỏ hơn LN.
CHÚ THÍCH 2: Sự hiểu biết về
N đủ để xác định LN
và hệ quả là Lϕ.
6.2 Đồng dư của
hàm vòng
Số đồng dư N được dùng trong
hàm vòng là một số nguyên hợp số được tạo ra bởi một tích của hai số nguyên tố
có cùng độ dài sao cho việc tính toán để tìm thừa số của N là không khả thi.
CHÚ THÍCH 1: Ngoài tính
không khả thi của việc tìm thừa số đồng
dư, độ an toàn của hàm băm MASH được dựa trên một phần độ khó của việc khai căn
các số đồng dư.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6.3 Giá trị khởi tạo
Giá trị khởi tạo IV được định
nghĩa là xâu của Lϕ các số nhị phân 0.
6.4 Số mũ
Đối với MASH-1, giá trị của số mũ e
trong hàm vòng bằng 2. Đối với MASH-2, giá trị của số mũ e trong hàm
vòng bằng 257.
6.5 Số nguyên tố
của hàm rút gọn
Hàm rút gọn được đặc tả trong Điều 7.3
yêu cầu một số nguyên tố p. Độ dài Lp của số nguyên tố
p được xác định bởi các yêu cầu an toàn, và bằng độ dài đầu vào của bất
kỳ cơ chế nào sử dụng mã băm. Độ dài Lp lớn nhất là bằng một
nửa độ dài của N, Lp <Lϕ/2.
CHÚ THÍCH 1: Việc lựa chọn một
số nguyên tố cụ
thể p với độ dài thích hợp nằm ngoài phạm vi của TCVN
11816-4.
CHÚ THÍCH 2: Để tránh các kết
quả không cân bằng bởi rút gọn p,
số nguyên tố p phải được chọn với ba bit cao là các số 1.
7. Quy trình băm
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7.1 Chuẩn bị xâu
dữ liệu
Xâu dữ liệu D được chuyển thành một chuỗi
các khối đầu vào cho hàm vòng ϕ. Việc chuẩn bị gồm việc đệm,
tách và khai triển chi tiết trong các phần sau.
7.1.1 Đệm xâu dữ
liệu
Nếu độ dài LD của xâu dữ
liệu D không phải là một bội số nguyên của Lϕ/2, thì D được đệm bên phải với các bit 0 nhị phân tuân theo phương pháp đệm 1
được mô tả trong Phụ lục B của TCVN 11816-1:2017 (ISO/IEC 10118-1).
7.1.2 Nối thêm độ
dài
Một nửa khối bổ sung là được đệm thêm
bên phải của xâu dữ liệu. Nó bao gồm biểu diễn nhị phân với độ dài LD của xâu dữ
liệu gốc D (chưa đệm thêm), được đệm bên trái với các bit nhị phân 0
(xem 3.3.2).
CHÚ THÍCH: Nếu khối dữ liệu D rỗng, thì chỉ có độ dài khối là đầu vào của quy trình băm.
7.1.3 Tách xâu dữ
liệu
Xâu kết quả được chia thành một chuỗi
các nửa khối q: D1, D2,..,Dq.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mỗi nửa khối Dj, j =
1,2,.....,q được nhân
đôi độ dài từ Lϕ/2 bit thành Lϕ bit. Điều này đạt được
bằng cách chia Dj thành các nửa byte và đặt vào trước
mỗi nửa byte của Dj với một nửa byte gồm 4 bit 1 (1111), cho j =1,2,…., q. Kết quả của
quá trình này khi áp dụng với nửa khối Dj được ký hiệu là Bj, j = 1, 2,.., q.
7.2 Ứng dụng của
hàm vòng
Hàm vòng ϕ, hàm mà các hàm băm
MASH dựa vào để lấy hai khối đầu
vào Hj-1 và Bj, cả hai có độ dài Lϕ.
Nó trả về một khối Hj độ dài Lϕ. Được định nghĩa như sau:
ϕ(Bj, Hj-1) = ((((Hj-1Å Bj) Ú E)e mod N)~Lϕ)Å Hj-1
Hàm vòng được áp dụng lần
lượt liên tục tới các khối dữ liệu Bj như sau:
H0:= IV
Hj:= ϕ(Bj,
Hj-1) j = 1,2,..., q
7.3 Hàm rút gọn
Hàm rút gọn RED gồm tám ứng dụng của
hàm vòng với một đầu vào dữ liệu được lấy từ Hq. Mã băm H
được tính toán bởi bốn bước sau: tách khối Hq, mở rộng xâu dữ
liệu, xử lý các khối dữ liệu bổ sung và rút gọn khối Hq+8.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Khối Hq được chia thành 4 xâu
độ dài Lϕ/4 bit, kí hiệu Hq1, Hq2,
Hq3, Hq4
Hq:= Hq1
|| Hq2
|| Hq3
|| Hq4
7.3.2 Mở rộng xâu dữ
liệu
Định nghĩa Y0 := Hq3, Y1 := Hq1, Y2 := Hq4, và Y3 := Hq2. Với i = 4 tới 15 đặt:
Yi := Yi-1 Å Yi-4
Sau đó xác định 8 nửa khối dữ liệu bổ
sung Dq+1 tới Dq+8 như sau:
Với i = 1 đến 8 đặt
Dq+i := Y2i-2 || Y2i-1
7.3.3 Xử lý các nửa
khối
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7.3.4 Rút gọn
Mã băm H với độ dài Lp
được tính toán như sau:
H:= Hq+8 mod p
8 Các hàm băm
Hai hàm băm được đặc tả trong TCVN
11816-4 khác nhau về giá trị của số mũ e được sử dụng trong hàm vòng ϕ.
8.1 MASH-1
Đối với MASH-1, hàm vòng ϕ đã
quy định trong điều 7 trở thành:
ϕ(Bj, Hj-1) = ((((Hj-1 Å Bj) Ú E)2 mod N) ~ Lϕ) Å Hj-1
Định danh của hàm băm MASH-1 là 41 (hệ
thập lục phân).
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đối với MASH-2, hàm vòng ϕ đã
quy định trong điều 7 trở thành
ϕ(Bj, Hj-1) = ((((Hj-1 Å Bj) Ú E)257 mod N) ~ Lϕ) Å Hj-1
Định danh của hàm băm MASH-2 là 42 (hệ
thập lục phân).
Hình 1: Hàm
băm MASH
Phụ
lục A
(Tham khảo)
Các ví dụ
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Thực tế, xâu dữ liệu có thể được cung
cấp như một luồng. Độ dài tổng thể LD có thể không được
biết trước kết thúc luồng cuối cùng. Khi luồng đi qua, việc tính toán hàm băm
được thực hiện. Để thuận lợi
cho việc mô tả, một hằng số
k = Lϕ/2 được đưa
ra. Chỉ bốn thanh ghi
sau đây được yêu cầu cho các biến: i, A, B, C.
i
bộ đếm bit cho độ dài LD.
A
bộ đệm để lưu giữ mã băm.
B
bộ cộng tích lũy để giữ các kết quả
trung gian.
C
giữ nửa khối dữ liệu
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
A.1.1 Bước 1 (Khởi tạo)
Bộ đệm A được thiết lập về 0:
A:= 0
(giá trị khởi
tạo IV
= H0 = 0)
Bộ cộng tích lũy B được đặt về
0:
B:= 0
Bộ đếm bit được đặt về 0:
i:= 0
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
A.1.2 Bước 2a (Đọc
một khối dữ liệu)
Nếu dữ liệu còn lại ít nhất k
bit, đọc k bit của dữ liệu D vào C. Nếu dữ liệu còn lại là
k’ (với 0 < k’ < k) đọc k’
bit của dữ liệu D vào C và và lấp đầy C với k-k’ các bit 0 nhị
phân vào bên phải. k (tương ứng với k’) được cộng vào i. Nếu không có
thêm dữ liệu nào (k’ = 0) thì đi tới bước 3a.
Bước 2b (Khai triển)
Mỗi byte của C được tách thành
các nửa và mỗi nửa được đứng trước với bốn bit 1 nhị phân. Kết quả được đặt vào
trong bộ cộng tích lũy B.
Bước 2c (Kết hợp với giá trị băm trước
đó)
Tính: B:= B Å A (kết hợp)
Bước 2d
B:= B Ú E (bốn bit giá
trị cao nhất được đặt về 1)
Bước 2e (Nâng lũy thừa)
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bước 2f (Phép cắt)
(Các bit bên trái cùng của C vượt
quá độ dài Lϕ bị xóa)
Bước 2g (Tiếp với giá trị băm trước đó)
Tính: A:= B Å A
Bước 2h: Quay trở lại bước 2a.
A.1.3 Bước 3a (Đọc bộ
đếm độ dài)
C := i
(nội dung của bộ đếm độ dài được đặt
vào trong C).
Số nguyên được biến đổi thành một
xâu như đã quy định ở 3.3.2.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(Băm với bộ đếm độ
dài)
Thực hiện các bước 2b, 2c, 2d,
2e, 2f và 2g, sau đó chuyển sang bước 4.
A.1.4 Bước 4 (Đưa ra kết
quả)
Khối Hq được chứa
trong bộ đệm A là Lϕ các bit tận cùng bên phải.
A.1.5 Quá trình rút gọn
Các thanh ghi sau được yêu cầu cho các
biến: A, B, C, C0, C1, C2, C3,
i.
A
lưu giữ khối Hq để rút gọn.
B
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
C
bộ cộng tích lũy của độ dài Lϕ/2
để lưu giữ nửa khối.
C0, C1, C2,
C3
bốn bộ đệm độ dài Lϕ/4.
i
bộ đếm.
Mã băm H được tính toán theo
các bước sau.
A.1.5.1 Bước 4a (Khởi tạo)
Bộ đếm được đặt về 8: i: = 8 (số nửa khối được
xử lý)
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Khối Hq được chứa trong bộ đệm
A được chia thành 4 phần Hq1, Hq2, Hq3,
Hq4 mỗi phần độ dài Lϕ/4 (xem Hình 1) và
được lưu:
C0 := Hq3
C1 := Hq1
C2 := Hq4
C3 := Hq2
A.1.5.3 Bước 4c (Mở rộng và bước lặp)
Tính
C:= C0 || C1
(phép nối)
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(áp dụng hàm vòng ϕ) (số vòng
q+1)
Tính
i:= i - 1.
giảm bộ đếm
Bước 4d
(Mở rộng và bước
lặp)
Tính
C:=C2
||
C3
(phép nối)
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(áp dụng hàm vòng ϕ) (số vòng
q+2)
Tính
i:= t - 1.
giảm bộ đếm
A.1.5.4 Bước 4e (Kết
hợp, mở rộng và phép
lặp)
Tính
C0 := C0 Å C3
(kết hợp)
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính
C:= C0|| C1
(phép nối)
Và thực hiện các bước 2b tới 2g
(áp dụng hàm vòng ϕ) (số vòng
q+3, q+5, q+7)
Tính
i:= i - 1.
giảm bộ đếm
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(Kết hợp các khối
đã tách)
Tính
C2 := C2
Å C1
(kết hợp)
C3 := C3
Å C2
Tính
C:= C2 || C3
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Và thực hiện các bước 2b tới 2g
(áp dụng hàm vòng ϕ) (số vòng
q+4, q+6, q+8)
Tính
i:= i - 1.
Nếu i khác 0,
quay lại bước 4e.
A.1.6 Bước 5 (Phép
rút gọn cuối cùng)
Tính: A: = A mod p
A.1.7 Bước 6 (Đưa
ra kết quả)
Mã băm H được chứa trong bộ đệm
A là Lp bit ở tận cùng bên phải.
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Trong ví dụ sau, N là một hợp số,
lớn hơn Lϕ 12 bit. Lϕ là một bội số của 16 ngay dưới LN
. Độ dài của số
đồng dư N được chọn chỉ để minh họa quy trình băm từng bước một và không nhất thiết đáp ứng
các
yêu cầu an toàn. Để phân biệt giữa các số thập phân và các số hệ thập lục phân, ký hiệu d
hay h được
thêm vào tương ứng.
Dữ liệu sau được dùng:
Độ dài của số đồng dư N,
LN = 10ch
= 268d
Độ dài của khối Hj,
Lϕ = 100h
= 256d
Độ dài của số nguyên tố p,
Lp = 80h =
128d
Độ dài của mã băm H,
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Xâu dữ liệu D = ‘Now is the
time for all’
Xâu dữ liệu D được mã hóa theo
ISO 646 trong định dạng cơ số 16:
Độ dài của xâu dữ liệu D, LD = c0h = 192d
CHÚ THÍCH: - Mã ISO 646 thường được gọi
chung là mã ASCII vì nó tương
đương với mã ASCII 7
bit. Mã ASCII 7 bit được mở rộng thành 8 bit bằng cách chèn một bit 0 ở vị trí đầu tiên.
Mỗi bước được ghi lại để chỉ ra các giá
trị thay đổi của các biến i, A, B, C và C0, C1,
C2, C3 trong suốt giai đoạn tính toán. Cột đầu tiên
tham chiếu tới các bước được mô tả trong phụ lục A.1.
A.2.1 Ví dụ tính
toán băm dùng MASH-1
Bước khởi tạo:
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B:= 0
i:= 0
Vòng đầu
Vòng thứ 2
Vòng thứ q (Bộ đếm độ dài)
Hàm rút gọn RED
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mở rộng
Vòng thứ q+1
Mở rộng
Vòng thứ q+2
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Vòng thứ q+4
Vòng thứ q+5
Vòng thứ q+6
Vòng thứ q+7
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Rút gọn mod p
A.2.2 Ví dụ tính
giá trị băm sử dụng MASH-2
Bước khởi tạo:
A:= 0
B:= 0
i:= 0
Vòng đầu
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Vòng thứ 2
Vòng thứ q (Bộ đếm độ dài)
Hàm rút gọn RED
Phân tách
Mở rộng
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mở rộng
Vòng thứ q+2
Vòng thứ q+3
Vòng thứ q+4
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Vòng thứ q+6
Vòng thứ q+7
Vòng thứ q+8
Rút gọn mod p
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Theo tính toán của mã băm cho tập hợp
các thông điệp kiểm tra (A.3.1 tới A.3.9), các số nguyên sau đây được
sử dụng:
1) Hợp số đồng dư
2) Số nguyên tố
Chiều dài của số đồng dư N sử dụng
trong hàm vòng là
LN = 780d
= 30Ch
Chiều dài đầu ra của hàm vòng là
Lϕ = 768d
= 300h
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Lp = 160d
= A0h
Chiều dài của mã băm là
Lp = 160d
= A0h
Những nội dung của các trường:
leng of text
Số bit của thông điệp. Được đưa ra
theo dạng thập phân đầu tiên (với kí hiệu là d) tiếp theo
là biểu diễn dạng thập lục phân tương đương (với ký hiệu
là h)
text
Chứa thông điệp sẽ được băm phân định
bởi các dấu ngoặc đơn
text in ASCII
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hq
Chứa đầu ra của hàm vòng theo định dạng
thập lục phân sau q ứng dụng
Hq+8
Chứa đầu ra của hàm vòng theo định dạng
thập lục phân sau q+8 ứng dụng
H
Chứa mã băm theo định dạng thập lục
phân sau phép rút gọn modulo p
A.3.1 Ví dụ 1
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
A.3.3 Ví dụ 3
A.3.4 Ví dụ 4
A.3.5 Ví dụ 5
A.3.6 Ví dụ 6
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
A.3.8 Ví dụ 8
A.3.9 Ví dụ 9
Phụ
lục B
(Tham khảo)
Thông tin bổ sung
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCVN 11816-4 không chỉ rõ các giá trị
sẽ được sử dụng để tiếp cận đến một mức an toàn đã đề ra. Tuy nhiên,
TCVN 11816-4 được đặc tả theo cách để tối thiểu hóa những sự thay đổi yêu cầu trong việc
sử dụng nó nếu một trong các tham số này phải được sửa đổi.
Số nguyên tố p nên được lựa chọn
cẩn thận, vì chiều dài
bit của nó xác định kích cỡ của mã băm.
B.2 Sự khác nhau
giữa MASH-1 và MASH-2
Lý do cho việc giới thiệu một phiên bản
bổ sung của hàm băm với số mũ cao hơn (MASH-2) là để triệt tiêu bất kỳ tính chất
thống kê nào có thể có với MASH-1. Đối với các yêu cầu an toàn rất cao, nên lựa
chọn MASH-2 thay cho MASH-1
B.3 Hàm rút gọn
Hàm rút gọn RED được định nghĩa trong
7.3 để điều chỉnh chiều dài mã băm cho phù hợp với các yêu cầu về ứng
dụng tiếp theo của mã băm H, và để tăng cường mức an toàn.
Phụ
lục C
(Quy định)
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Phụ lục này liệt kê các định danh đối
tượng chỉ định cho hàm băm sử dụng số học đồng dư được đặc tả trong TCVN
11816-4.
Thư mục tài
liệu tham khảo
[1] BONEH D., &
FRANKLIN M. Efficient Generation of Shared RSA Keys. Advances in
Cryptology - CRYPTO '97 (BURTON s., & KALISKI Jr. ed.] Lecture Notes in
Computer Science, Vol, 1294, Springer- Verlag, 1997, pp. 425-439.
[2] COCKS C. Split knowledge
generation of RSA parameters. Cryptography and Coding. (DARELL M. ed.). Lecture
Notes in Computer Science, Vol. 1355, Springer-Verlag, 1997, pp. 89-95.
[3] FRANKEL Y.,MACKENZIE P.D.,YUNG
M.Robustefficientdistributed RSA-keygeneration. Proceedings
of the 30th Annual ACM Symposium on theTheory of Computing [STOC '98], ACM,
1998, pp. 663- 672
MỤC LỤC
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1 Phạm vi áp dụng
2 Tài liệu viện
dẫn
3 Các thuật ngữ
và định nghĩa
3.1 Thuật ngữ từ TCVN 11816-1
3.2 Duy nhất cho
TCVN 11816-4
3.3 Các quy ước
3.4 Các định
danh của hàm băm (hash-function identifier)
4 Các ký hiệu
và các thuật ngữ viết tắt
4.1 Từ TCVN
11816-1:2017 (ISO/IEC 10118-1)
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5 Các yêu cầu
6 Các biến và
giá trị cần thiết
cho phép băm
6.1 Độ dài của
mã băm và của N
6.2 Đồng dư của
hàm vòng
6.3 Giá trị khởi tạo
6.4 Số mũ
6.5 Số nguyên tố
của hàm rút gọn
7. Quy trình băm
7.1 Chuẩn bị xâu
dữ liệu
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7.3 Hàm rút gọn
8 Các hàm băm
8.1 MASH-1
8.2 MASH-2
Phụ lục A (Tham khảo) Các ví dụ
A.1 Quy trình băm
A.2 Các ví dụ
tính toán băm
A.3 Thông điệp
kiểm tra mẫu và giá trị băm của chúng
Phụ lục B (Tham khảo) Thông tin bổ sung
...
...
...
Bạn phải
đăng nhập hoặc
đăng ký Thành Viên
TVPL Pro để sử dụng được đầy đủ các tiện ích gia tăng liên quan đến nội dung TCVN.
Mọi chi tiết xin liên hệ:
ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2 Sự khác nhau
giữa MASH-1 và MASH-2
B.3 Hàm rút gọn
Phụ lục C (Quy định) Định danh đối tượng
Thư mục tài liệu tham khảo