Từ khoá: Số Hiệu, Tiêu đề hoặc Nội dung ngắn gọn của Văn Bản...

Đăng nhập

Đang tải văn bản...

Tiêu chuẩn quốc gia TCVN 11367-4:2016 về Công nghệ thông tin – Các kỹ thuật an toàn – Thuật toán mật mã dòng

Số hiệu: TCVN11367-4:2016 Loại văn bản: Tiêu chuẩn Việt Nam
Nơi ban hành: *** Người ký: ***
Ngày ban hành: Năm 2016 Ngày hiệu lực:
ICS:35.040 Tình trạng: Đã biết

0x

Tiền tố cho các giá trị thập lục phân.

0(n)

Biến n-bit mà 0 được gán cho mỗi bit.

AND

Phép toán logic AND từng bit.

Am(i)[Y]

Bit thứ Y của thanh ghi Am(i) trong KCipher-2 (K2).

ai

Các biến trong trạng thái trong của bộ tạo khóa dòng.

bi

Các biến trong trạng thái trong của bộ tạo khóa dòng.

CFB

Chế độ phản hồi mã khối

CTR

Chế độ bộ đếm của mã khối.

Ci

Khối bản mã.

Di

Hằng số 64-bit được sử dụng cho MUGI.

eK

Hàm mã hóa mã khối đối xứng sử dụng khóa bí mật K.

F

Hàm con được sử dụng cho MUGI.

FSM

Hàm con được sử dụng cho SNOW 2.0.

GF(2n)

Trưng hữu hạn gồm có 2n phần tử.

GF(2n)[x]

Vành đa thức trên trường hữu hạn GF(2n)

Init

Hàm tạo trạng thái khởi tạo trong của bộ tạo khóa dòng

IV

Véc tơ khởi tạo.

IK

Khóa trong được sử dụng cho KCipher-2 (K2).

K

Khóa

M

Hàm con được sử dụng cho MUGI.

Next

Hàm chuyển trạng thái tiếp theo của bộ tạo khóa dòng.

NLF

Hàm phi tuyến sử dụng cho KCipher-2 (K2).

n

Độ dài khối.

OFB

Chế độ phn hồi đu ra mã khối.

OR

Phép toán logic OR từng bit.

Out

Hàm đầu ra kết hợp khóa dòng và bản rõ để tạo bản mã.

P

Bản rõ.

Pi

Khối bản rõ.

R

Đầu vào bổ sung cho biến Out.

SR

Hàm con đưc sử dụng cho MUGI.

Strm

Hàm khóa dòng của bộ tạo khóa dòng.

SUB

Bảng tra cứu sử dụng cho MUGI và SNOW 2.0.

SubK2

Hàm con được sử dụng cho KCipher-2 (K2).

Si

Trạng thái trong của bộ tạo khóa dòng.

T

Hàm con được sử dụng cho SNOW 2.0.

Z

Khóa dòng.

Zi

Khối khóa dòng.

aMUL

Bảng tra cứu đưc sử dụng cho SNOW 2.0.

aMUL0

Bảng tra cứu với ch số 0 được sử dụng cho KCipher-2 (K2).

aMUL1

Bảng tra cứu với chỉ số 1 được sử dụng cho KCipher-2 (K2).

aMUL2

Bảng tra cứu với chỉ số 2 được sử dụng cho KCipher-2 (K2).

aMUL3

Bảng tra cứu với chỉ số 3 được sử dụng cho KCipher-2 (K2).

ainv_MUL

Bảng tra cứu nghịch đảo được sử dụng cho SNOW 2.0.

rl

Hàm con được sử dụng cho MUGI.

ll

Hàm con được sử dụng cho MUGI.

[x]

Các số nguyên nhỏ nhất lớn hơn hoặc bằng số thực.

­

Phép toán bù từng bit.

.

Phép nhân đa thức.

||

Phép ghép các xâu bit.

+m

Phép cộng số nguyên modulo 2m.

Å

Phép toán XOR (OR loại trừ) từng bit.

Ä

Phép nhân các phần tử trong trưng hữu hạn GF(2n).

Phép cộng modulo

<<n t

Phép dịch trái t-bit trong thanh ghi n-bit.

>>n t

Phép dịch phải t-bit trong thanh ghi n-bit.

<<<n t

Phép dịch vòng sang trái t- bit trong thanh ghi n-bit.

>>>n t

Phép dịch vòng sang phải t- bit trong thanh ghi n-bit.

 

4.2. Các hàm

4.2.1. Hàm cắt trái các bit

Phép toán lựa chọn j bít bên trái của mảng A = (a0, a1, … ,am-1) để bạo ra một mảng j-bit và được viết

(j~A) = (a0 , a1, … , aj-1)

Phép toán xác định với 1 £ j £ m.

Xem trong ISO/IEC 10116:2006.

4.2.2. Phép toán dịch

Phép toán dịch được xác định như sau: Cho một biến n-bit X và biến k-bit V trong đó 1 £ k £ n, tác dụng của hàm dch để tạo ra biến n-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

(k < n)

Shiftk(X\V) = (v0, v1,...,vk-1)

(k = n)

Kết quả sự dịch chuyển các bit của mảng X sang trái k vị trí, bỏ đi x0, x1 ,... ,xk-1 và đưa vào bên phải nhất mng V k vị trí của X. Khi k = n thì hoàn toàn thay thế X bởi V.

Xem ISO/IEC 10116:2006.

4.2.3. Biến I(k)

Biến l(k) là một biến k-bit mà mỗi bit được gán giá trị 1.

5. Khung cho mã dòng

Điều này bao gồm mô tả mức cao nhất của khung cho mã dòng được quy định trong phần này của bộ TCVN 11367 (ISO/IEC 18033). Mô tả chi tiết của mô hình tổng quát cho mã dòng được quy định tại điều 6. Mã dòng được quy định trong tiêu chuẩn này của bộ TCVN 11367 (ISO/IEC 18033) được xác định bởi các đặc t của các quy trình sau:

...

...

...

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ộ tạo khóa dòng đồng bộ, hoặc

- Bộ tạo khóa dòng tự đồng bộ.

CHÚ THÍCH 1 Các Chế độ hoạt động của mã khối là phương pháp mà mã khối có thể được sử dụng đ xây dựng một bộ tạo khóa dòng. Các chế độ này được chuẩn hóa trong tiêu chuẩn ISO/IEC 10116 và ý nghĩa của các hàm được sử dụng trong đặc tả được xác định trong 6.2.16.2.2.

CHÚ THÍCH 2 Mã khi được định nghĩa trong tiêu chuẩn này của bộ TCVN 11367 (ISO/IEC 18033).

b) Hàm đầu ra, có thể là:

- Hàm đầu ra cộng nhị phân, hoặc

- Hàm đầu ra MULTI-S01.

6. Mô hình tổng quát của mã dòng

6.1. Các bộ tạo khóa dò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

Bộ tạo khóa dòng đồng bộ là máy trạng thái hữu hạn được định nghĩa như sau:

a) Một hàm khởi tạo, Init, nhận đầu vào khóa K và véc tơ khởi tạo IV và cho đầu ra một trạng thái khởi tạo S0 cho bộ tạo khóa dòng. Véc tơ khởi tạo cần được lựa chọn để không bao giờ có hai thông báo được mã hóa sử dụng cùng khóa và cùng véc tơ khởi tạo IV.

b) Hàm chuyển trạng thái tiếp theo, Next, nhận đầu vào là trạng thái hiện tại của bộ tạo khóa dòng Si, và đưa ra trạng thái tiếp theo của bộ tạo khóa dòng Si+1.

c) Hàm khóa dòng, Strm, nhận đầu vào là trạng thái của bộ tạo khóa dòng Si, và đưa ra khối khóa dòng Zi.

Khi bộ tạo khóa dòng đồng bộ lần đầu khởi tạo, nó sẽ nhập vào một trạng thái khởi tạo S0 được xác định bởi:

S0 = Init(IV,K)

Theo nhu cầu bộ tạo khóa dòng đồng bộ sẽ, với i = 0, 1,...

a) Đưa ra khối khóa dòng Zi = Strm(Si, K).

b) Cập nhật trạng thái máy Si+1 = Next(Si, K).

...

...

...

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.2. Bộ tạo khóa dòng tự đng bộ

Việc tạo ra khóa dòng cho mã dòng tự đồng bộ chỉ phụ thuộc vào bản mã trước, khóa và véc tơ khi tạo. Mô hình tổng quát cho bộ tạo khóa dòng cho mã dòng tự đồng bộ được xác định:

a) Hàm khởi tạo, Init, nhận đầu vào là khóa K và véc tơ khởi tạo IV và đưa ra đầu vào trong cho bộ tạo khóa dòng S và khối bản mã giả r C-1, C-2, … , C-r.

b) Hàm khóa dòng, Strm, nhận đầu vào S và khối bản mã r C-1, C-2,...,C-r và đưa ra khối khóa dòng Zi.

Để xác định bộ tạo khóa dòng tự đồng bộ ch cần thiết xác định số lượng các khối phản hồi r và hàm Init và hàm Strm.

CHÚ THÍCH Mã dòng tự đng bộ khác với mã dòng đồng bộ chỗ khóa dòng ch phụ thuộc vào bn mã trước, véc tơ khởi tạo và khóa, nghĩa là bộ tạo khóa dòng hoạt động trong kiểu không trạng thái. Kết quả là, sự giải mã cho mật mã như vậy có thể khôi phục từ sự mt mát của đồng bộ hóa sau khi nhận được đầy đ các khối bản mã. Điều này cũng có nghĩa là các phương pháp tạo khóa dòng phụ thuộc vào hàm đầu ra được lựa chn Out, mà điển hình là phép toán XOR từng bit.

6.2. Các hàm đầu ra

6.2.1. Mô hình tổng quát của hàm đầu ra

Điều 6.2 chỉ rõ hai hàm đầu ra mã dòng, nghĩa là các kỹ thuật được sử dụng trong mã dòng để kết hợp khóa dòng với bản rõ để nhận được bản 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

Mã hóa khối bản rõ Pi bằng khối khóa dòng Zi xác định như sau:

Ci = Out(Pi, Zi, R)

Và giải mã khối bản mã Ci bng khối khóa dòng Zi xác định như sau:

Pi = Out-1(Pi, Zi, R).

Hàm đầu ra phải đáp ứng cho bất kỳ khối khóa dòng Zi, khối bản rõ Pi và đầu vào khác R,

Pi = Out-1(Out(Pi, Zi, R), Zi, R).

6.2.2. Hàm đu ra cộng nhị phân

Mã dòng cộng nh phân là mã dòng trong đó khối khóa dòng, khối bản rõ và khi bản mã là các xâu các số nhị phân và phép toán đ kết hợp bản rõ với khóa dòng là phép toán XOR từng bit. Phép toán Out có hai đầu vào và không sử dụng bất kỳ thông tin b sung R đ tính toán. Cho n là độ dài bit của Pi. Hàm này xác định như sau:

Out(Pi, Zi, R) = PiÅZi

...

...

...

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

Out-1(Ci, Zi, R) = CiÅZi

CHÚ THÍCH Hệ mã dòng cộng nh phân không cung cp bt kỳ tính bảo vệ tính toàn vẹn cho dữ liệu được mã hóa. Nếu có yêu cầu tính toàn vẹn cho dữ liệu thì hoặc là sử dụng hàm đầu ra MULTI-S01 hoặc có cơ chế toàn vẹn riêng biệt, chng hạn MAC, nghĩa là Mã xác thực thông báo (cơ chế này được quy định trong tiêu chuẩn ISO/IEC 9797).

6.2.3. Hàm đu ra MULTI-S01

a) Mô hình tổng quát của MUTIL-S01

MULTI-S01 là hàm đu ra cho mã dòng đồng bộ hỗ trợ cả tính toàn vn và tính bí mật của dữ liệu. Phép toán mã hóa MULTI-S01 phù hợp để sử dụng trong môi trường trực tuyến. Tuy nhiên, phép toán giải mã của MULTI-S01 có th chỉ thực hiện trong tình huống ngoại tuyến, như kiểm tra tính toàn vẹn ch được thực hiện sau khi nhận được tất c các khối bản mã. MULTI-S01 có một tham số an toàn n. Việc tính toán đu ra phụ thuộc vào sự lựa chọn trường GF(2n), tức là phụ thuộc vào lựa chọn đa thức bất khả quy bậc n trên trường GF(2n). Hàm MULTI-S01 chỉ chấp nhận thông báo có chiều dài là bội số của n. Để mã hóa thông điệp có chiều dài không phải là bội của n, yêu cầu sử dụng thêm cơ chế đệm Pad(M).

CHÚ THÍCH Việc dư thừa R được tạo ra theo cách mà người gửi và người nhn chia sẻ nó. R có thể là một giá trị công khai c định như 0x00...0.

b) Hàm mã hóa Out(P, R, Z)

Đầu vào: bản rõ P n.u- bit, khóa dòng Z = (Z0, Z1,...), Trong đó Zi là các khối n-bit, dư thừa R n-bit.

Đầu ra: Bản mã 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

2) Lấy (P0, P1, Pu-1) = P, trong đó Pi là khối n-bit

3) Đặt Pu = Zt+u+3.

4) Đặt Pu+1 = R.

5) Đối với mỗi Pi, thực hiện các phép tính sau (với i = 0,1,...,u+1).

- Lấy W = PiÅZt+i+1.

- Lấy Xi = ZtÄWi (trong trường GF(2n)).

- Lấy Ci = iÄi-1  trong đó Wi-1 là giá trị W của khối i-1 trước đó và W-1 = 0(n)

- Đặt C = C0 || C1 || ||| Cu+1.

- Đưa ra 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

Hình 1 - Hàm Out của chế độ MUTIL-S01

CHÚ THÍCH 2 Đa thức bất khả quy được sử dụng để xác định phép nhân trong trường phụ thuộc vào n. Ví dụ, trong trưng hợp n =64 và 128, có thể sử dụng đa thức bt khả quy x64 + x4 +x3 + x +1 và x128 + X7 +x2 + x + 1.

c) Hàm giải mã Out-1 (P,Z,R)

Đầu vào: bản mã C độ dài n.v-bit khóa dòng Z, dư thừa R độ dài n-bit.

Đầu ra: bản rõ P hoặc từ chối”.

1) Lấy t là giá trị thấp nhất của i (i ³ 0) sao cho Zi ¹ 0(n).

2) Lấy (C0, C1,...Cv-1) = C, trong đó Ci là khối n-bit

3) Đối với mỗi Ci, thực hiện các phép tính sau (với i=0,1,...,v-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

- Lấy Wi = t-1Äi (trong trường GF(2n)).

- Lấy Pi = WiÅZt+i+1.

4) Nếu Pv-2 = Zt+v+1 và Pv-1 = R, đưa ra P = P0 || P1 || || Pv-3 là bản rõ. Nếu không, đưa ra biểu tượng đặc biệt nghĩa là từ chi mà không có bất kỳ văn bản nào.

Hình 2 mô t sơ đồ khối của hàm Out-1

Hình 2 - Hàm Out-1 của chế độ MULTI-S01

d) Cơ chế đệm Pad(M)

Chỉ khi độ dài của thông báo đầu vào không phải là bội số của n, cơ chế đệm Pad(M) sau đây được thực thi:

Đầu vào: Xâu M độ dài (nv+c)-bit, trong đó v là số nguyên không âm và 0 £ c < 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

1) Đệm xâu bit “1 vào cuối thông báo.

2) Đệm xâu 0(n-c-1) độ dài (n-c-1)-bit vào xâu được tạo bởi bước a).

3) Đưa ra toàn bộ xâu có độ dài (nv+n)-bit.

CHÚ THÍCH 3 Nếu độ dài của thông báo là bội số của n, trong mỗi trường độ dài không phải là nhất định như vậy, cơ chế đệm này được khuyến khích.

CHÚ THÍCH 4 Đ bỏ đệm của thông báo, loại b liên tiếp bit 0 ở phần cuối của dữ liệu và loại b các bit 1.

7. Xây dựng bộ tạo khóa dòng từ mã khối

7.1. Các chế độ mã khối cho bộ tạo khóa dòng đng bộ

7.1.1. Chế độ OFB (Đầu ra phản hồi) và CTR (Bộ đếm)

Điều 7.1 quy định hai chế độ n-mã khối cho bộ tạo khóa dòng đồng bộ. Đó là, chế độ OFB (Đầu ra phản hồi) và chế độ CTR (Bộ đếm) của mã khối eK n-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

Chế độ OFB được xác định bởi một tham số r, 1 £ r £ n, là kích thước của khối bản rõ và bản mã.

Véc tơ khởi tạo IV à xâu n-bit. IV sẽ được tạo ra khác nhau cho hai quá trình mã hóa với cùng một khóa K. Hàm Init, Next Strm được quy định như sau:

- Init(IV,K)=IV.

- Next(Si, K) = eK(Si)

- Strm(Si) = (r ~ Si).

CHÚ THÍCH Init(IV,K) = IV tương đương với S0 = IV.

Trong trường hợp của chế độ OFB, hàm đầu ra cộng nhị phân được xác định trong 6.2.2 được sử dụng. Hình 3 mô tả sơ đồ khối của bộ tạo khóa dòng dựa trên chế độ CFB.

Hình 3 - Tạo khóa dòng dựa trên chế độ OFB

...

...

...

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ế độ CTR được xác định bằng một tham số r, 1 £ r £ n, là kích thước của khối bản rõ và bản mã.

Véc tơ khởi tạo IV là xâu n-bit cần được đảm bảo rằng Si ¹ S’j cho hai khóa dòng S0, S1, S2, … S0, S1, S2,... được tạo ra với cùng một khóa K. Hàm Init, Next Strm được xác định như sau:

- Init(IV, K) = IV.

- Next(Si, K) = Si + 1 mod 2n.

- Strm(Si, K) = (r ~ eK(Si)).

CHÚ THÍCH Init(IV, K) = IV tương đương vi S0 = IV.

Trong trường hợp của chế độ CTR, hàm đầu ra cộng nhị phân được xác định trong 6.2.2 được sử dụng. Hình 4 mô tả sơ đồ khối của bộ tạo khóa dòng dựa trên chế độ CFB.

Hình 4 - Tạo khóa dòng dựa trên chế độ CTR

...

...

...

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.2.1. Giới thiệu chế độ CFB

Chế độ CFB của mã khối n-bit là mã dòng tự đồng bộ.

7.2.2. Chế độ CFB

Chế độ CFB (Phản hồi mã) được xác định với 3 tham số, tức là kích thước j của bộ đệm phản hồi Si, trong đó n £ j £ 1024n, kích thước biến phản hồi b, trong đó 1 £ b £ n và khi đầu ra có kích thước r, trong đó 1 £ r £ b.

CHÚ THÍCH 1 Giá trị b-r cn nhỏ hơn b

Véc tơ khởi tạo IV cần được tạo ngẫu nhiên xâu j-bit và cũng cần được tạo ra khác nhau cho hai mã hóa với cùng một khóa K. Hàm Init, Next và Strm được xác định như sau:

- Init(IV, K) = IV.

- Next(S) = Shiftb(S|Shiftr(I(b)|Ci)).

- Strm(S, K) = (r ~ eK((n ~ S))).

...

...

...

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 trường hợp của chế độ CFB, hàm đầu ra cộng nhị phân được xác định trong 6.2.2 được sử dụng. Hình 5 mô tả sơ đồ khối của bộ tạo khóa dòng dựa trên chế độ CFP.

Hình 5 - Tạo khóa dòng dựa trên chế độ CFB

8. Bộ tạo khóa dòng chuyên dụng

8.1. Bộ tạo khóa dòng MUGI

8.1.1. Giới thiệu MUGI

MUGl là bộ tạo khóa dòng sử dụng khóa bí mật K 128-bit, véc tơ khởi tạo IV 28-bit và biến trạng thái Si (i ³ 0) bao gồm 19 khối 64-bit (lưu ý rằng mỗi khối được sử dụng thông qua đặc tả của MUGI cho mỗi khối 64-bit) và đưa ra khối khóa dòng Zi tại mỗi lần lặp của hàm Strm.

CHÚ THÍCH Bộ tạo khóa ng này ban đầu được đ xuất trong [17].

Biến trạng thái được chia nh thành kết hợp của biến 3-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

Trong đó  là khối (với j = 0, 1, 2) và biến 16-khối

b(i) = ,

Trong đó  là khối (với j = 0, 1,..., 15)

Hàm Init, được xác định chi tiết trong 8.1.2, nhận đầu vào khóa K độ dài 128-bit và véc tơ khởi tạo IV độ dài 128-bit và tạo giá trị ban đầu của biến trạng thái S0 = (a(0), b(0)),

Hàm Next, được xác định chi tiết trong 8.1.3, nhận đầu vào biến trạng thái 19-khối Si = (a(i), b(i)) và đầu ra là giá trị tiếp theo của biến trạng thái Si+1 = (a(i+1), b(i+1)).

Hàm Strm, được xác định chi tiết trong 8.1.4, nhận đầu vào biến trng thái 19-khối Si = (a(i), b(i)) đầu ra là khối khóa dòng Zi.

Lưu ý rằng hàm Next được xác đnh trong các số hạng của r1 l1 được xác định tương ứng trong 8-1.5 và 8.1.6. Hàm r1 được xác định trong số hạng của hàm r1 được xác định trong 8.1.7

Có 3 hằng số được sử dụng trong MUGI, D0 trong hàm khởi tạo Init, và D1, D2 trong r1. Chúng xác định bởi:

D0 = 0x6A09E667F3BCC908,

...

...

...

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

D2 = 0x3C6EF372FE94F82B.

8.1.2. Hàm khi tạo Init

Việc khởi tạo MUGI được chia ra thành 8 bước. Các khối nửa trái và nửa phải của K được biểu diễn tương ứng bng K0K1. IV0IV1 được xác định theo cách tương tự. Hàm khởi tạo Init như sau:

Đầu vào: Khóa K128-bit, véc tơ khởi tạo IV độ dài 128-bit.

Đầu ra: Giá trị khởi tạo của biến trạng thái S0 = (a(0),b(0))

a) Đặt khóa K vào thành phn của biến trạng thái a(-49) như sau:

- Đặt (K0, K1) = K, trong đó Ki là 64 bit với i = 0, 1

- Đặt  = K0.

- Đặt  = K1.

...

...

...

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

D0 trong biểu thức trên là hằng số (xem 8.1).

b) Với i = -49, -48,..., -34 đặt a(i+1) = r1(a(i), 0(64), 0(64)). Mô tả của r xem 8.1.5.

c) Với i = 0, 1,…, 15 đặt = a0(i-48)

d) Thêm véc tơ khởi tạo IV vào trạng thái như sau:

- Đặt IV0||IV1=IV, trong đó IVi là khối

- Đặt  = Å IV0.

- Đặt  = Å IV1.

- Đặt  = Å(IV0 <<<64 7)Å(IV1 >>>64 7)ÅD0.

e) Với i = -32, -31,..., -17, đặt a(i+1) = r1(a(i), 0(64), 0(64))

...

...

...

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

g) Lặp hàm cập nhật Next 16 lần:

Đặt S0 = Next16(S-16)

Trong đó Next 16 đại diện cho 16 lần lặp của hàm chuyển trạng thái theo Next

h) Đưa ra S0.

8.1.3. Hàm chuyn trạng thái theo Next

Hàm chuyển trạng thái theo của MUGI được xác định là sự kết hợp của r1 l1. Hàm chuyển trạng thái theo của MUGI như sau:

Đầu vào: Biến trạng thái Si = (a(i), b(i)).

Đầu ra: Trạng thái tiếp theo của biến trạng thái Si+1 = (a(i+1), b(i+1)).

- Đặt a(i+1) = r1(ai, , ). Mô tả chi tiết của hàm r1 được đưa ra trong 8.1.5.

...

...

...

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 Si+i = (a(i+1), b(i+1))

- Đưa ra Si+1.

8.1.4. Hàm khóa dòng Strm

Hàm khóa dòng Strm như sau:

Đầu vào: Biến trạng thái Si.

Đầu ra: Khối khóa dòng Zi.

- Đặt Zi =

- Đưa ra Zi.

8.1.5. Hàm r1

...

...

...

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 vào: Biến trạng thái a(i), hai tham số độ dài 64-bit w1, w2.

Đầu ra: Giá trị tiếp theo của biến trạng thái a(i+1)

- Đặt

-Đặt Å F(,w1) Å D1.

- Đặt Å F (, (w2 <<<64 17) Å D2.

- Đưa ra a(i+1).

D1, D2 là hằng số (xem thêm chi tiết tại 8.1).

Hình 6 mô tả sơ đồ khi của hàm r1. Mô tả chi tiết của hàm F được đưa ra trong 8.1.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

8.1.6. Hàm l1

Hàm l1 như sau:

Đầu vào: Biến trạng thái b(i), tham số a' độ dài 64-bit.

Đầu ra: Giá tr tiếp theo của biến trạng thái b(i+1)

- Đặt  với j ¹ 0, 4, 10.

- Đt Å a'.

- Đặt

- Đặt  <<<64 32)

Đưa ra b(t+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

Hàm F dùng phép toán trên trường hữu hạn GF(28). Trong biểu diễn đa thức, GF(28) được thực hiện như GF(2)[x]/ f(x), trong đó f(x) là đa thức bất khả quy bậc 8 được xác định trên trường GF(2). Bộ tạo khóa dòng MUGI sử dụng đa thức bất khả quy sau:

f(x) = x8 + x4 + x3 + x + 1.

Hàm F là kết hợp của phép cộng khóa (việc bổ sung dữ liệu từ một phần của biến trạng thái b), phép biến đi phi tuyến sử dụng hàm SR, biến đi tuyến tính sử dụng ma trận M và phép xáo trộn byte (xem Hình 7).

Chúng ta biểu diễn đầu vào và đầu ra cho hàm F tương ứng là X Y. Khi đó, hàm F xác định như sau: Đầu vào: hai xâu X T độ dài 64-bit.

Đầu ra: xâu Y độ dài 64-bit.

- X' = X Å T

- Đặt (X0, X1, X2, X3, X4, X5, X6, X7) = X' trong đó Xi là xâu có độ dài 8-bit

- Đặt Pi = SR(Xi) với i = 0,1, …, 7.

- Đặt PL = P0 || P1 || P2 || P3.

...

...

...

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 QL = M(PL).

- Đặt QR = M(PR).

- Đặt (Q0, Q1, Q2, Q3) = QL.

- Đặt (Q4, Q5, Q6, Q7 ) = QR .,

- Đặt Y = Q4 || Q5 || Q2 || Q3 || Q0 || Q1 || Q6 || Q7.

- Đưa ra Y.

Hình 7 mô t sơ đồ khối của hàm F

Hình 7 - Hàm F của MUGI

...

...

...

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

Hàm SR là hàm nội tại của hàm F. Hàm SR có thể được mô tả bằng cách sử dụng bảng thay thế. Trong trường hợp này, hàm SR như sau:

Đầu vào: xâu x độ dài 8-bit

Đầu ra: xâu độ dài 8-bit.

- Đặt y = SUB[x]

- Đưa ra y.

SUB sử dụng trong hàm SR là thay thế như sau:

8.1.9. Hàm M

Hàm M là hàm nội tại của hàm F. Hàm M như sau:

...

...

...

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: xâu Y có độ dài 32-bit

- Đặt (x0, x1, x2, x3) = X, trong đó xi là xâu có độ dài 8-bit và là phần tử của GF(28).

- Đặt

Trong đó 0x01, 0x02 và 0x03 là biểu diễn thập lục phân của các phần tử của trưng GF(28).

- Đặt Y = y0 || y1 || y2 || y3.

- Đưa ra Y.

8.2. Bộ tạo khóa dòng SNOW 2.0

8.2.1. Giới thiệu SNOW 2.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

Biến trạng thái SNOW Si bao gồm hai phần. Phần thứ nhất, 16 biến có độ dài 32-bit:

thực hiện một thanh ghi dịch phn hồi tuyến tính (LFSR). Phn thứ hai, 2 biến có độ dài 32-bit:

duy trì trạng thái của máy trạng thái hữu hạn (FSM). SNOW được hiểu là tốt nhất với tham chiếu trong Hình 8, trong đó cho thy một ảnh chụp, tại thời điểm i, b qua biến phụ thuộc thời gian (i)

Hình 8 - Biểu đ của SNOW

Phép toán SNOW được xác định:

Hàm Init, xác định chi tiết trong 8.2.2, nhận đầu vào khóa K có độ dài 128 hoặc 256-bit và véc tơ khởi tạo IV có độ dài 128-bit và tạo giá trị khởi tạo của biến trạng thái S0 = (a(0), b(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

Hàm Strm, được xác định chi tiết trong 8.2.4 nhận đầu vào là 18 biến trng thái có độ dài 32-bit Si = (a(i), b(i)) và tạo ra như là đầu ra khóa dòng Zi có độ dài 32-bit.

CHÚ THÍCH 1 Đối với SNOW, khuyến nghị số lượng tối đa khóa dòng được tạo ra từ (K,IV) là 250 khóa có độ dài 32-bit. Gii hạn này đã được lựa chọn để cung cp biên an toàn tt nhất đối với việc thám mã và ngụ ý không có giới hạn thực tế áp dụng các thuật toán.

CHÚ THÍCH 2 Bài viết [10] được tham chiếu cho lý thuyết nn tảng v lý do căn bản thiết kế cho SNOW.

8.2.2. Hàm khởi tạo Init

Hàm khi tạo Init như sau.

Đầu vào: Khóa K độ dài 128 hoặc 256-bit, Véc tơ khởi tạo IV có độ dài 128-bit.

Đầu ra: Giá trị khởi tạo của biến trạng thái S0 = (a(0), b(0)).

a) Khởi tạo thanh ghi bằng thông tin khóa.

- Đi với khóa có độ dài 128-bit, Đặt (K3, K2, K1, K0) = K,  và  = K3-j

...

...

...

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 khóa có độ dài 256-bit, Đặt (K7, K6, ..., K0) =  và  = Ø­(K7-j) với j = 0, 1, …,7.

b) Đặt S-33 = (a(-33), b(-33)) bằng

- Đặt (IV3, IV2, IV1, IV0) = IV.

- Đặt  =  với i = 0, 1, 2, 3, 4, 5, 6, 7, 8, 11, 13,14.

-Đặt

- Đặt .

- Đặt S-1 = Next32(S-33, INIT), trong đó Next32 biểu diễn cho 32 lần lặp của hàm Next

d) S0 = Next(S-1).

e) Đưa ra S0.

...

...

...

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

SNOW có hai chế độ với hàm Next

Đầu vào: Biến trạng thái Si = (a(i), b(i)) mode = {INIT,null}.

Đầu ra: Giá trị tiếp theo của biến trạng thái Si+1 = (a(i+1), b(i+1)).

a) Đặt  = T ().

b) Đặt  = ).

c) Với j = 0,1, …, 14 đặt

d) Nếu chế độ INIT, đặt . Nếu không thì, đặt

e) Si+1 = (a(i+1), b(i+1))

f) Đưa ra Si+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

CHÚ THÍCH Hình 9 mô tả sơ đồ khối của chế độ INIT của hàm Next

Hình 9 - Chế độ INIT của hàm Next

Định nghĩa của hàn FSM đề cập trong điều 8.2.8.

8.2.4. Hàm khóa dòng Strm

Hàm khóa dòng Strm như sau:

Đầu vào: Biến trạng thái Si

Đầu ra: Khóa dòng Zi có độ dài 32-bit

a) Đặt Zi = FSM ().

...

...

...

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

8.2.5. Hàm T

Hàm T là hàm thay thế, đặc biệt là hoán v trên trường GF(232) dựa trên các thành phần từ Chuẩn mã hóa tiên tiến (AES), TCVN 11367-3:2016 (ISO/IEC 18033-3). Cuối cùng trường hữu hạn GF(28) được sử dụng như là trường GF(2)[x] modulo với đa thức bất khả quy.

f(x) = x8 + x4 + x3 + x + 1.

Và vành đa thức GF(28)[y] mdulo (y4 +1).

Đầu vào: xâu w có độ dài 32-bit

Đầu ra: xâu q = T(w) có độ dài 32-bit

a) Đặt (w3, w2, w1, w0 = w) trong đó mỗi wj có độ dài 8 bit.

b) Với j = 0,1, 2, 3 đặt tj = SUB[wj].

c) Lấy t(y) là đa thức t(y) = t3y3 + t2y2 + t1y + t0 trên trường GF(28)[y], trong đó tj được hiểu như là một phn tử của GF(28) theo cách tự nhiên tj = tj,7x7 + + tj,1x + tj,0, tj,k trong trường GF(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

e) Kết hợp xâu q = (q3, q2, q1, q0) 32-bit với kết quả trên, q(y) = q3y3 + q2y2 + q1y + q0

f) Đưa ra q.

Lưu ý rằng trong bước c), hai đa thức được nhân với nhau trong đó các phép toán hệ s-nhân-hệ số thực hiện trong trường GF(28) được xác định bởi hàm f(x) ở trên. Sau đó kết quả được rút gọn theo modulo y4 +1.

CHÚ THÍCH 1 Hộp thế S-box của AES được m thấy trong 8.1.8

CHÚ THÍCH 2 Tham khảo chi tiết tối ưu hóa này và một số vn đ khác tại bài báo [10].

8.2.6. Phép nhân a trong s học trường hữu hạn

Đu vào: Xâu w có độ dài 32-bit, đại diện cho phần tử của GF(232).

Đầu ra: Xâu w' có độ dài 32-bit, đại diện cho µ Äw trong trường GF(232).

a) Đặt w' = (w <<32 8) Å aMUL [w >>3224]

...

...

...

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

Hàm aMUL được xác định như sau:

aMUL[256] = {

8.2.7. Phép nhân a-1 trong số học trường hữu hạn

Đầu vào: Xâu y có độ dài 32-bit, đại diện cho phần tử của GF(232).

Đầu ra: Xâu y có độ dài 32-bit, đại diện cho a-1Äy trong trường GF(232).

a) Đặt y' = (y >>32 8) Å ainv_MUL(y mod 256]

b) Đưa ra 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

ainv_MUL [256] = {

8.2.8. Hàm FSM(x, y, z)

Đầu vào: 3 xâu có độ dài 32-bit, x,yz

Đầu ra: xâu q có độ dài 32-bit

a) Đặt q = (x +32 y) Å z.

b) Đưa ra q.

8.3. Bộ tạo khóa dòng Rabbit

...

...

...

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

Rabbit là bộ tạo khóa dòng sử dụng khóa bí mật K có độ dài 128-bit, véc tơ khởi tạo IV có độ dài 64-bit và biến trạng thái trong Si (i ³ 0) có độ dài 513-bit. Rabbit đưa ra khối khóa dòng Zi có độ dài 128-bit tại mỗi lần lặp hàm Strm.

513-bit của trạng thái trong Si được chia giữa 8 biến trạng thái có độ dài 32-bit , 8 biến đếm , và 1 bit nhớ bộ đếm b(i).

Mô tả sử dụng các ký hiệu đưa ra tại Điều 4 của tiêu chuẩn này của bộ TCVN 11367 (ISO/IEC 18033). Ngoài ra, ký hiệu đặc biệt cho mảng bit được sử dụng để tăng cường khả năng đc: Khi ghi nhãn các bit của một biến A, bit có trọng số thấp nhất được ký hiệu là A(0). Ký hiệu A[h..g] mô tả các bit từ h cho đến g của biến A, trong đó bit có v trí h là bit có trọng số cao hơn bit ở vị trí g.

CHÚ THÍCH 1 Đi vi bộ sinh khóa dòng Rabbit, khuyến ngh số lượng khóa dòng tối đa được tạo ra t một khóa K cho trước là 264 khối khóa dòng. Giới hạn này đã được lựa chọn để cung cấp biến an toàn tốt nht đối với việc phân tích mã và đồng thi ngụ ý không có giới hạn thực tế về khả năng áp dụng các thuật toán.

CHÚ THÍCH 2 Bài báo [8] được tham chiếu cho đề xuất ban đầu của mật mã và bài báo [9] được tham chiếu đến tổng quan v an toàn mật mã của nó.

8.3.2. Các biến bổ sung và ký hiệu

Đối với bộ tạo khóa dòng Rabbit, các ký hiệu sau đây được sử dụng thêm:

A

Hằng số cho Rabbit

...

...

...

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ít nhớ cho Rabbit

C

Biến đếm cho Rabbit

g

Hàm con được sử dụng cho Rabbit

X

Biến trạng thái trong cho Rabbit

Ngoài ra, một s ký hiệu được sử dụng cho các biến phụ cục bộ trong mô tả các thuật toán. Những biểu tượng này ch xảy ra trong đặc t hàm đưa ra và không có nghĩa toàn cục. Các biến này được mô tả trong phần khai báo của hàm.

8.3.3. Hàm khởi tạo Init

...

...

...

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 vào: Khóa K có độ dài 128-bit, véc tơ khởi tạo IV có độ dài 64-bit.

Đầu ra: Giá trị khởi tạo của biến trạng thái S0 = .

Biến cục bộ: biến đếm i, j

a) Lấy K0 = K[15..0], K1 = K[31...16] ,…, K7 = K[127..112]

b) Đặt S-9, như sau:

1) Đặt b(-9) = 0.

2) Với j = 0,1, …, 7:

- Nếu j là chẵn, đặt  = K(j+1 mod 8) || Kj = K(j+4 mod 8)) || K(j+5 mod 8).

- Ngược lại j lẻ đặt  = K(j+5 mod 8) || K(j+4 mod 8)) và  = K(j+1 mod 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

d) Đặt S-4 như sau:

1) Thay đổi các biến đếm như sau:

2)

e) Lặp lại hàm chuyn trạng thái theo Next 4 lần: đặt Si = Next(Si-1) với i = -3, -2, -1,0

f) Đưa ra S0 =

CHÚ THÍCH Véc tơ khi tạo IV được trộn vào trạng thái trong ở bước d) và e) của thut toán. Nếu các ứng dụng yêu cầu tái khởi tạo thường xuyên với cùng một khóa, điều này có nghĩa đ lưu trữ trạng thái trong sau bước c) như trạng thái ch và đthực thi ch bước d) ti bước f) cho tái khởi tạo.

8.3.4. Hàm chuyn trạng thái theo Next

Hàm chuyển trạng thái theo Next cho Rabbit được quy định như sau:

...

...

...

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: Biến trạng thái Si+1 = .

Biến cục bộ: biến đếm j, biến tạm là số nguyên dương có độ dài 32-bit

a) Đặt hng s A0, ...A7 như sau:

b) Lấy  = bi

c) Với j = 0, 1, 2, … , 7:

- Lấy temp = ; kết quả này là giá trị có độ dài 33-bit

- Lấy  = temp[32]

- Ly  = temp[310]

...

...

...

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

e) Với j = 0, 1, … , 7, lấy Gj = g(), trong đó hàm g được đưa ra trong 8.3.6.

f) Thay đổi trạng thái trong như sau:

g) Đưa ra Si+1 = (b(i+1), )

8.3.5. Hàm khóa dòng Strm

Hàm khóa dòng Strm cho Rabbit được quy định như sau:

Đầu vào: Biến trạng thái Si = (b(i), ).

Đầu ra: Khối khóa dòng Zi.

a) Đặt Zi như sau:

...

...

...

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

=

 [15. .0]

Å

[31. .16]

Zi[31. .16]

=

[31..16]

Å

[15. .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

=

[15. .0]

Å

[31. .16]

Zi[63. .48] =

=

[31. .16]

Å

[15. .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

=

[15. .0]

Å

[31. .16]

Zi[95. .80] =

=

[31. .16]

Å

[15. .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

=

[15. .0]

Å

[31. .16]

Zi[127. .112] =

=

[31. .16]

Å

[15. .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

8.3.6. Hàm g

Hàm g đưc quy định như sau:

Đầu vào: 2 tham số uv có độ dài 32-bit

Đầu ra: kết qu hàm g(u, v) có độ dài 32-bit

Biến cục bộ: temp số nguyên dương có độ dài 32-bit

a) Lấy temp = (u+32 v)2; kết quả là giá trị có độ dài 64-bit.

b) Lấy g(u, v) = temp[31..0] Å temp[63..32]

c) Đưa ra g(u, v)

8.4. Bộ tạo khóa dòng Decimv2

...

...

...

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

DECIMv2 là bộ tạo khóa dòng trong đó sử dụng khóa bí mật K có độ dài 80-bit và véc tơ khi tạo IV có độ dài 64-bit. DECIMv2 bao gồm thanh ghi dịch phản hồi tuyến tính A có độ dài tối đa 192-bit, được lọc bởi hàm Boolean LF 14-biến. Trong chế độ tạo khóa dòng, đu ra của LF được sử dụng đ nuôi một khối nén là hàm được gọi là ABSG, mà đầu cuối đi qua một bộ đệm B dài 32-bit để điều chỉnh tốc độ đầu ra khóa dòng.

DECIMv2 được mô tả trong Hình 10, trong đó mô tả ảnh chụp, đúng thời điểm, bỏ qua biến phụ thuộc thời gian (i) từ các ký hiệu.

CHÚ THÍCH 1 Bài báo [6] được tham chiếu cho lý thuyết nền tảng v lý do căn bản thiết kế của DECIMv2.

Biến trạng thái Si của DECIMv2 bao gồm giá trị độ dài 192-bit của thanh ghi ai =  và biến Ti độ dài 3-bit tương ứng với trạng thái của hàm nén ABSG, 32-bit bi =  trong bộ đệm B, và số lượng I(i) bit trong bộ đệm B đã sẵn sàng đưa ra.

Hình 10 - Sơ đồ của DECIMv2

Hàm Init, được xác định chi tiết trong 8.4.3, nhận đầu vào là khóa K độ dài 80-bit và véc tơ khởi tạo IV độ dài 64-bit và tạo ra giá trị khởi tạo của biến trạng thái S0 = (a(0), T(0), b(0), I(00).

Hàm Next, được xác định chi tiết trong 8.4.5, nhận đầu vào là giá trị các biến trạng thái Si = (a(i), T(i), b(i), I(i) và tạo ra đầu ra là giá trị tiếp của biến trạng thái Si+1 = (a(i+1), T(i+1), b(i+1), I(i+1)). Hàm Next chạy trong 3 chế độ, tùy thuộc vào việc thực hiện lặp lại là một phn của khởi tạo thanh ghi, khởi tạo của bộ đệm hoặc bộ tạo khóa dòng tuần tự.

Hàm Strm, được xác định chi tiết trong 8.4.6 nhận đầu vào là giá tr của các biến trạng thái Si = (a(i), T(i), b(i), I(i) và tạo ra đu ra là bit khóa dòng Zi.

...

...

...

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 3 Hàm nén của DECIMv2 có tốc độ đầu ra thay đổi, bằng 1/3 mức trung bình. Vì vậy, một cơ chế đệm được sử dụng để đảm bo tốc độ đầu ra cố định. Sự khác biệt giữa tốc độ đầu ra bộ đệm và tốc độ đầu ra hàm nén, cũng như độ dài bộ đệm, đã đưc lựa chn đ đm bảo rằng các bộ đệm luôn luôn có các chức năng như mong muốn với xác suất đa s, như mô tả trong 8.4.3.

CHÚ THÍCH 4 DECIMv2 kháng các tấn công như mô tả trong [18].

8.4.2. Các biến b sung và ký hiệu

Đối với bộ tạo khóa dòng Decimv2, các ký hiệu sau đây được sử dụng thêm:

a

Biến trạng thái trong cho Decimv2

ABSG

Hàm nén được sử dụng cho Decimv2

b, 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

B

Hàm đệm được sử dụng cho Decimv2

F

Hàm phn hồi tuyến tính cho Decimv2

I, I'

Biến trạng thái trong cho Decimv2

LF

Hàm lọc được sử dụng cho Decimv2

T, T’

...

...

...

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

Y

Hàm Boolean được sử dụng cho Decimv2

Ngoài ra, một số ký hiệu được sử dụng cho các biến phụ cục bộ trong mô tả các thuật toán. Những biểu tượng này chỉ xảy ra trong đặc tả hàm đưa ra và không có nghĩa toàn cục. Các biến này được mô tả trong phần khai báo của hàm.

8.4.3. Hàm khởi tạo Init

Hàm khởi tạo Init được xác định như sau:

Đầu vào: Khóa K độ dài 80-bit và véc tơ khởi tạo IV độ dài 64-bit.

Đầu ra: Giá trị khởi tạo của biến trạng thái S0 = (a(0), T(0), b(0), I(0)).

Biến cục bộ: biến đếm i, j

a) Khởi tạo thanh ghi với khóa K và véc tơ khởi tạo IV.

...

...

...

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  = Kj-80ÅIVj-80 với j= 80, 81, …, 143

- Đặt  = Kj-80ÅIVj-144ÅIVj-128ÅIVj-112ÅIVj-196 với j= 144,145, ...,159

- Đặt  = Kj-160ÅIVj-128Å1 với j= 160, 161, …, 191

b) Khởi tạo bộ đệm và hàm nén:

- Đặt T(-256) = 000

- Đặt  = 0 với j= 0, 1, 2,…,31

- Đặt I(-256) = 0

c) Đặt S-64 = InitNext192(S-256, LFSR)

d) Đặt i = -64

...

...

...

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

f) Đặt S0 = Si.

g) Đưa ra S0.

CHÚ THÍCH Các bước d), e) và f) của khởi tạo DECIMv2 liên quan đến việc làm đy bộ đệm trước khi bắt đu đưa ra khóa dòng. Khi tốc độ đầu ra của hàm nén thay đổi, số lượng các bước yêu cầu để làm đy bộ đệm có th thay đi. Trong bước e) hàm InitNext(Si, BUFF) được lặp lại nhiều nht 64 ln, đảm bảo rằng bộ đệm đầy với xác sut lớn hơn 1 - 2-97. Tính trung bình, bộ đm đầy sau 24 ln lặp lại.

Hình 11 - Chế độ LFSR của khởi tạo hàm chuyển trạng thái theo InitNext

8.4.4. Khởi tạo hàm chuyển trạng thái theo InitNext

Decimv2 có hai chế độ hoạt động cho hàm InitNext: một chế độ được sử dụng trong quá trình khởi tạo thanh ghi A và chế độ thứ 2 trong quá trình khởi tạo làm đầy bộ đệm.

Đầu vào: Biến trạng thái Si = (a(i), T(i), b(i), I(i), mode є {LFSR, BUFF}

Đầu ra: Giá trị tiếp theo của biến trạng thái Si+1 = (a(i+1), T(i+1), b(i+1), I(i+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

Chế độ LFSR (thực thi nếu mode = LFSR):

a) Cập nhật trạng thái của thanh ghi A với các bước sau:

1) Đặt a(0) = a(i)

2) Với k = 0,1,2,3:

- Đặt fk = LF(a (k))r = L(a(k)) Å fk.

- Với i = 0,1, ...,190 đặt

- Đặt  = r

3) Đặt a(i+1) = a(4)

Hình 11 mô tả sơ đồ khối của chế độ LFSR của hàm InitNext.

...

...

...

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) Cập nhật trạng thái của thanh ghi A với các bước sau:

4) Đặt a(0) = a(i)

5) Với k = 0, 1, 2, 3:

- Đặt fk = a(k) ÅLF(a(k)) và r = L(a(k))

- Với j = 0,1, …, 190 đặt

- Đặt  = r

6) Đặt a(i+1) = a (4)

b) Đặt t(0) = T(i), b 0,= bi, i(0) = I(i)

c) Với k = 0,1,2,3:

...

...

...

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 c = fk Å

- Đặt t(k+1) = ABSG(t(k), fk)

- Nếu  = 0, đặt output = TRUE, ngược lại đặt output = FALSE

2) Cập nhật trạng thái của bộ đệm bởi (b (k+1), i(k+1)) = b (k), i(k) đầu ra, c)

d) Đặt T(i+1) = t(4)

e) Đặt b(i+1) = b (4)I(i+1) = i(4)

8.4.5. Hàm chuyển trạng thái theo Next

Đầu vào: Biến trạng thái Si = (a(i), T(i), b(i), I(i)).

Đầu ra: Giá trị tiếp theo của biến trạng thái Si+1 = (a(i+1), T(i+1), b(i+1), I(i+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(0), …, a(4), t(0),…, t(4), b(0) ,..., b(4), i(0),..., i(4).

a) Cập nhật trạng thái của thanh ghi A với các bước sau:

7) Đặt a(0) = a(i)

8) Với k = 0,1,2,3:

- Đặt fk =  Å LF(a (k)) và r = L(a(k))

- Với j = 0,1, …, 190 đặt

- Đặt  = r

9) Đặt a(i+1) = a(4)

b) Đặt t(0) = T(i), b (0) = bi, i(0) = I(i) - 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

d) Với k = 0,1,2,3:

1) nếu i(0) = 0, đặt t(k+1) = t(k), output = TRUE và c=fk, ngược lại cập nhật trạng thái của khối nén với các bước sau:

- Đặt c =

- Đặt t(k+1) = ABSG(t(k), fk)

- Nếu  = 0, đặt output = TRUE, ngược lại đặt output = FALSE.

2) Cập nhật trạng thái của bộ đệm bởi (b(k+1), i(k+1)) = B(b(k), i(k), đầu ra, c)

e) Đặt T(i+1) = t(4), b(i+1) = b(4) I(i+1) = i(4)

CHÚ THÍCH 1 Điều kiện t(0) = 0 trong bước 1) của bước d) không bao giờ thỏa mãn: Nếu điều kiện thỏa mãn, điều này có nghĩa bộ đệm tr nên rỗng trong quá trình tạo khóa dòng. Điều này xảy ra với xác suất nhỏ hơn 2-80 tại mỗi trạng thái cp nhật, xem chi tiết hơn trong [8]. Ngoài ra, xác suất này cao hơn nếu bộ đệm là không đầy sau hàm khởi tạo Init, nhưng, như đã đ cập trong 8.4.3 (CHÚ THÍCH), điều này cũng xảy ra với xác sut không đáng kể.

CHÚ THÍCH 2 Hàm InitNext và hàm Next cùng chia sẻ nhiu bước tính toán. Thật vậy, chế độ LFSR của hàm InitNext ch yếu bao gồm cập nhật LFSR trong chế độ BUFF và của hàm Next sự khác biệt duy nhất là đầu ra hàm Boolean được thêm bit phản hi. Chế độ BUFF của hàm InitNext và hàm Next chỉ khác nhau ở bộ đệm B ch được dch chuyển muộn hơ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

Đầu vào: Biến trạng thái Si = (a(i), T(i), b(i), I(i)).

Đầu ra: Bit khóa dòng Zi.

a) Đặt Zi =

b) Đưa ra Zi

8.4.7. Hàm phản hồi tuyến tính L

Đầu vào: xâu w = (w0, w1, …, w191) có độ dài 192-bit

Đầu ra: Bit q = L(w)

Đặt q = w0 Å w3 Å w4 Å w23 Å w36 Å w37 Å w60 Å w61 Å w98 Å w115 Å w146 Å w175 Å w176 Å w187

8.4.8. Hàm trích lọc LF

...

...

...

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: Bit q = LF(w)

Đặt q = L(w). Đặt q = Y(w13, w28, w45, w54, w65, w104, w111, w144, w162, w172, w178, w186, w191))

8.4.6. Hàm Boolean Y

Đầu vào: xâu w = (w0, w1,...,w12) có độ dài 13-bit

Đầu ra: Bit q = Y(w)

Đặt q = (Å0£j£12wj) Å (Å0£j£12wjwk)

CHÚ THÍCH Tương ứng, q được cho bởi q = 0 niếu X = 0 hoặc X = 3 và q = 1 trong trường hợp ngược lại với X = w0 + w1 + + w12 mod 4

8.4.10. Hàm nén ABSG

Đầu vào: 3-bit trạng thái T, đưa vào bit 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

a) Nếu T0 = 1, đặt T1 = T1, ngược lại T1 = c.

b) Đặt T’2 = T0 VÀ (T1 Å c)

c) Đặt T0 = (T0 Å 1) HOẶC T2

8.4.11. Hàm bộ đệm B

Đầu vào: xâu b = (b0, b1, ..., b31) có độ dài 32-bit, chỉ số I, Boolean output, nhập vào bit c.

Đầu ra: xâu b' = (b0, b1,…, b32) có độ dài 32-bit, chỉ số I’.

a) Đặt I’ = I, b’ = b.

b) Nếu output = TRUE, và I’ < 32, thực hiện như sau:

- Đặt bI = 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

c) Đầu ra B(b, i, output, c) = (b,I)

8.5. bộ tạo khóa dòng KCipher-2 (K2)

8.5.1. Giới thiệu KCipher-2 (K2)

KCipher-2 (K2) là bộ tạo khóa dòng trong đó sử dụng đầu vào là khóa bí mật K độ dài 128-bit và véc tơ khởi tạo IV độ dài 128-bit. Khóa bí mật và Véc tơ khởi tạo được sử dụng để khi tạo biến trạng thái Si (i ³ 0) bao gồm 20 khối 32-bit, trong đó Si biểu diễn trạng thái trong của K2 tại chu kỳ i. Thứ tự bit/byte là big-endian, tức là nếu khóa và véc tơ khởi tạo được cho dưới dạng dãy các bit/byte, Thứ nht/tận cùng bên trái của bit/byte có trọng số cao nhất của dữ liệu tương ứng. Đối với mỗi lần lặp của hàm Strm, 64-bit khóa dòng Zi được tạo coi như đu ra.

Biến trạng thái Si của K2 bao gồm 3 thành phần. Thành phần đầu tiên bao gồm 5 biến 32-bit tuần tự:

 trên trường GF(232), m ³ 0)

Dạng trạng thái của thanh ghi dịch phản hồi (FSR) A. Thành phần thứ hai B(i) bao gồm 11 biến 32-bit tuần tự:

B(i) = trên trường GF(232), m ³ 0)

Dạng trạng thái cho thanh ghi dịch phản hồi (FSR) B. Thành phần thứ ba bao gồm bộ 4 biến 32-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

duy trì trạng thái của hàm phi tuyến. Phép toán của K2 được tóm tắt trong Hình 12 và 13, trong đó mô tả một bn chụp các phép toán, tại thời điểm I, bỏ qua biến phụ thuộc thời gian (i).

Hình 12- Biểu đồ của K2

Hoạt động của K2 được xác định bởi ba hàm sau đây:

Hàm Init, được xác định trong 8.5.2, nhận giá tr đầu vào là khóa K độ dài 128-bit và véc tơ khởi tạo IV độ dài 128-bit để tạo ra trạng thái khởi tạo S0 = (A(0), B(0), R1(0), L1(0), R2(0), L2(0)).

Hàm Next, được xác định trong 8.5.3, nhận giá trị đầu vào là trạng thái trong Si = (A(i), B(i), R1(i), L1(i), R2(i), L2(i)) và tạo như đầu ra giá trị tiếp theo của biến trạng thái Si+1 = (A(i+1), B(i+1), R1(i+1), L1(i+1), R2(i+1), L2(i+1)). Hàm Next chạy trong hai chế độ, tùy vào phép lặp thực thi là một phần của khởi tạo hoặc trong chế độ tạo đầu ra thông thường.

Hàm Strm, được xác định trong 8.5.4, nhận giá trị đầu vào là trạng thái trong, Si = (A(i), B(i), R1(i), L1(i), R2(i), L2(i)) và tạo như đầu ra khóa dòng Zi = .

CHÚ THÍCH 1 Số lượng khóa dòng tối đa được khuyến nghị của bít khóa dòng không có hoặc tạo khóa mới hoặc tái khởi tạo với véc tơ khởi tạo IV mi là 264 bit.

CHÚ THÍCH 2 Đối với những cơ s thiết kế cho K2, tham khảo [12], [13], [14].

...

...

...

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

Hình 13- Hàm phi tuyến của K2

8.5.2. Hàm khi tạo Init

Hàm khởi tạo hút hoạt động như sau:

Đu vào: Khóa K độ dài 128-bit và véc tơ khởi tạo IV độ dài 128-bit.

Đầu ra: Giá trị khởi tạo của biến trạng thái S0 = (A(0), B(0), R1(0), L1(0), R2(0), L2(0)).

Biến cục bộ: biến đếm m

a) Mở rộng khóa K = (K0, K1, K2, K3) độ dài 128-bit thành khóa trong IK = (IK0, IK1,...,IK11) độ dài 384-bit như sau:

1) Với m = 0, 1, 2, 3 đặt IKm = Km.

2) Với m = 4, 5,...11,

...

...

...

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 m = 4, đặt Rcon[0] = (0x01,0x00,0x00,0x00) và

IKm = IKm-4ÅSubk2Å(IKm-1 <<32 8)Å(IKm-1 >>32 24))ÅRcon[ - 1]. Hàm SubK2 được đề cập đến trong 8.5.5

- Nếu m = 8, đặt Rcon[1] = (0x02,0x00,0x00,0x00) và

IKm = IKm-4ÅSubK2(IKm-1 <<32 8)Å(IKm-1 >>32 24))ÅRcon[ - 1]. Hàm SubK2 được đề cập đến trong 8.5.5

b) Khởi tạo các thanh ghi với khóa trong IK IV = (IV0, IV1, IV2, IV3).

- Với m = 0, 1, 2, 3, 4 đặt  = IK4-m.

- Đặt thanh ghi trong FSR-B như sau.

- Đặt thanh ghi trong hàm phi tuyến như sau.

...

...

...

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) Đặt S0 = Next24(S-24, INIT), trong đó Next24 biểu diễn 24 lần lặp của hàm Next

d) Đưa ra S0

Chúng ta tham khảo 8.5.5 cho mô tả hàm SubK2.

8.5.3. Hàm chuyển trạng thái theo Next

K2 có 2 chế độ cho hàm Next

Đầu vào: Biến trạng thái Si = (A(i), B(i), R1(i), L1(i), R2(i), L2(i)), mode = {INIT, null}.

Đầu ra: Giá trị tiếp theo của biến trạng thái Si+1 = (A(i+1), B(i+1), R1(i+1), L1(i+1), R2(i+1), L2(i+1)).

Biến cục bộ: biến đếm m

a) Đặt biến trong hàm phi tuyến như sau.

...

...

...

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) Với m = 0, 1, 2, 3, đặt

c) Với m = 0, 1, 2 9, đặt

d) Với chế độ INIT, đặt

với chế độ null, đặt đặt

e) Với chế độ INIT, đặt

với chế độ null, đặt

f) Đặt Si+1 = (A(i+1), B(i+1), R1(i+1), L1(i+1), R2(i+1), L2(i+1)).

g) Đưa ra Si+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

Hình 14 là sơ đồ khối của chế độ INIT của hàm Next.

Hình 14 - Chế độ INIT của hàm Next

8.5.4. Hàm khóa dòng Strm

Hàm khóa dòng Strm hoạt động như sau.

Đầu vào: Biến trạng thái Si = (A(i), B(i), R1(i), L1(i), R2(i), L2(i)).

Đầu ra: Khóa dòng Zi = () độ dài 64-bit.

a) Đặt  = NLF)

b) Đặt  = NLF

...

...

...

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

d) Đưa ra Zi.

Hàm NLF được định nghĩa trong 8.5.10.

8.5.5. Hàm SubK2

Hàm SubK2 là một hoán vị trong trường GF(232), dựa trên các thành phần t chuẩn mã hóa tiên tiến (AES) [TCVN 11367-3:2016 ISO/IEC 18033-3]. Trong hàm SubK2, giá trị đầu vào 32-bit được chia thành 4 xâu 1-byte và một hoán v phi tuyến được áp dụng cho mỗi byte sử dụng hàm hay thế 8x8 bit (SBox) tiếp sau một hoán vị tuyến tính 32x32 bit. Các hàm SBox là giống như SBox của AES, và hoán v ging như phép toán Mix Column của AES.

CHÚ THÍCH 1 Hàm SBox AES, SBox, có thể được tìm thy trong 8.1.8 là hàm SUB.

CHÚ THÍCH 2 Hàm SubK2 tạo ra đầu ra tương tự như hàm T của 8.2.5.

Đầu vào: Một giá trị w độ dài 32-bit biu diễn cho một phần tử trên trường GF(232).

Đầu ra: Một xâu q = SubK2(w) độ dài 32-bit.

Biến cục bộ: biến đếm 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

b) Với mỗi m = 0, 1, 2, 3, đặt tm = SBox(wm).

c) Đặt q = (q3, q2, q1, q0) như sau

Phép nhân các phần tử ti được thực hiện trong trường GF(28) dùng đa thức bất khả quy f(x) = x8 + x4+x3+ x + 1.

d) Đưa ra q.

8.5.6. Phép nhân của a0 trong trường GF(232)

Đầu vào: Một giá trị w độ dài 32-bit, biểu diễn cho 1 phần tử trên trường GF(232).

Đầu ra: Một xâu w’ độ dài 32-bit, biu diễn cho a0 Ä w trên trường GF(232).

a) Đặt w = (w <<32 8)ÅaMUL0[w >>32 24].

...

...

...

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

Hàm aMUL0 được định nghĩa như sau:

8.5.7. Phép nhân của a­1 trong trường GF(232)

Đầu vào: Một giá trị w độ dài 32-bit, biểu diễn cho 1 phần tử trên trường GF(232).

Đầu ra: Một xâu w’ độ dài 32-bit, biểu diễn a1 Ä w trên trưng GF(232).

a) Đặt w = (w <<32 8)ÅaMUL1[w >>32 24].

b) Đưa ra w’.

Hàm aMUL1 được định nghĩa như sau:

...

...

...

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 vào: Một giá trị w độ dài 32-bit, biểu diễn cho 1 phần t trên trường GF(232).

Đầu ra: Một xâu w’ độ dài 32-bit, biểu diễn cho a2 Ä w trên trường GF(232).

a) Đặt w’ = (w <<32 8)ÅaMUL2 [w >>32 24].

b) Đưa ra w’.

Hàm aMUL2 được định nghĩa như sau:

8.5.9. Phép nhân của a3 trong trường GF(232)

Đu vào: Một giá trị w độ dài 32-bit, biểu diễn cho 1 phần tử trên trường GF(232).

...

...

...

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) Đặt w’ = (w <<32 8)ÅaMUL3 [w >>32 24].

b) Đưa ra w’.

Hàm aMUL3 được định nghĩa như sau:

8.5.10. Hàm NLF(a, b, c, d)

Đầu vào: 4 giá trị độ dài 32-bit a, b, c d.

Đầu ra: Một xâu q độ dài 32-bit

a) Đặt q = (a +32b)Åc Å 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

 

PHỤ LỤC A

(Quy định)

ĐỊNH DANH ĐỐI TƯỢNG

Phụ lục này liệt kê các định danh đối tượng gán cho các thuật toán được đặc tả trong bộ TCVN 11367 (ISO/IEC 18033) và xác đnh các cấu trúc tham số thuật toán. Vui lòng tham khảo tiêu chuẩn TCVN 11367-3:2016 (ISO/IEC18033-3) về các ID của đối tượng cho các chế độ hoạt động của mã khối.

PHỤ LỤC B

(Tham khả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

Đối với bất kỳ số nguyên dương n tn tại một trường hữu hạn gồm có 2n phần tử. Trường hữu hạn này duy nhất trên phép đng cu và trong tiêu chuẩn này của bộ TCVN 11367 (ISO/IEC 18033) nó được gọi là trường hữu hạn GF(2n).

Trong mô tả đa thức, mỗi phần tử của GF(2n) được mô t bởi một đa thức nhị phân có bậc nh hơn n. Một cách rõ ràng hơn, xâu bit a = an-1 ..., a2a1a0 được thực hiện để đại diện cho đa thức nh phân a(x) = an-1xn-1+ + a2x2 + a1x + a0. Cơ sở của đa thức là tập hợp B = (xn-1, ..., x2, x, 1). Đối với 2 xâu bit a = an-1…, a2a1a0b = bn-1...b2b1b0, tổng là c = aÅb = cn-1 ... c2c1c0, trong đó ci = aiÅbi.

Phép nhân trong trưng hữu hạn, được viết là aÄb tương ứng với phép nhân hai đa thức a(x)b(x) modulo với một đa thức bt khả quy nh phân p(x) bậc n. Một đa thức là bất khả quy nếu nó không có ước số tầm thường.

GF(2n)\{0} ký hiệu là GF(2n)* là một nhóm abel đối với phép nhân và phần tử đơn vị là 1. Đối với bất kỳ đa thức nh phân khác không b(x) bậc nhỏ hơn n, các nghịch đảo của b(x) ký hiệu là b-1(x), có thể được tính như sau: sử dụng thuật toán Euclid mở rộng để tính toán đa thức a(x)c(x) sao cho b(x). a(x) + p(x). c(x) = 1. Do đó, a(x).b(x) mod p(x) = 1, có nghĩa là b-1(x) = a(x) mod p(x). Thuật toán Euclid mở rộng được mô tả trong [15].

 

PHỤ LỤC C

(Tham khảo)

CÁC VÍ DỤ

C.1. Ví dụ cho MUGI

...

...

...

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.1.2. Ví dụ các trạng thái trong

...

...

...

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.2. Ví dụ khóa 128 bit cho SNOW 2.0

C.2.1. Khóa, véc tơ khởi tạo và bộ ba khóa dòng

C.2.2. Ví dụ các trạng thái trong

...

...

...

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.3. Ví dụ khóa 256 bit cho SNOW 2.0

C.3.1. Khóa, véc tơ khởi tạo và bộ ba khóa dòng

C.3.2. Ví dụ các trạng thái trong

...

...

...

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.4. Ví dụ cho Rabbit

C.4.1. Giới thiệu

Tất cả các véc tơ kiểm tra cho Rabbit được đưa ra trong ký hiệu little-endian, tức là cho số nhiu byte, các byte có trọng số cao nhất được lưu trữ tại các địa ch bộ nhớ cao nhất.

C.4.2. Khóa, véc tơ kim tra và bộ ba khóa dòng

C.4.3. Ví dụ các trạng thái trong

...

...

...

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.5. Ví dụ cho Decimv2

C.5.1. Giới thiu ví dụ Decimv2

Các giá trị byte và phân tích nh phân của các byte theo ký hiệu big-endian, tức là với số nhiều byte, byte có trọng số cao nht được lưu trữ tại địa chỉ bộ nhớ thp nhất. Đặc biệt, lưu tr khóa, IV, khóa dòng, thanh ghi và bộ đệm byte và giá tr nh phân đưa ra dưới đây.

K = K79 ... K0

IV = IV63 ...IV0

Z = Zn ... Z0

a = a191 ... a0

...

...

...

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 = T2T1T0

và, ví dụ đưa ra khóa

K = de aa 00 40 30 00 0f 08 80

Mỗi thanh ghi được xác định:

[K79... K72] = de, [K71... K64] = aa... [K7K0] = 80

Với phân tích bit như sau:

C.5.2. Khóa, véc tơ khởi tạo và bộ ba khóa dò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

C.5.3. Ví dụ trạng thái trong

Các tương đương nhị phân của trạng thái trong cho các giai đoạn khóa, cụ thể được cung cấp tại thời điểm -256, thời điểm -64, thời đim 0 và thời điểm 193.

Từ -256 đến -64 (thực thi của InitNext(S,LRSR), các biến trạng thái trong T, b I có giá trị sau:

...

...

...

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ạ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ạ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.6. Các ví dụ cho Kcipher-2(K2)

C.6.1. Khóa, véc tơ khởi tạo và bộ ba khóa dò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

 

PHỤ LỤC 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ÔNG TIN AN TOÀN

D.1. Mức độ an toàn của mã dòng

Phụ lục này liệt kê mức độ an toàn của mã dòng được mô tả trong tiêu chuẩn này của bộ TCVN 11367 (ISO/IEC 18033).

Bảng D.1-Mức độ an toàn của các chế độ mã dòng

Hàm đầu ra

Bí mật dữ liệu

Toàn vẹn dữ liệu

Chế độ cộng nh phân

Một cơ chế mã hóa dựa trên các hàm đầu ra là an toàn miễn là bộ tạo khóa dòng an toàn. Điều này được chứng minh bằng toán họ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

Chế độ MULTI-S01

Việc an toàn liên quan đến toàn vẹn dữ liệu thông thường an toàn như bộ tạo khóa dòng. Tuy nhiên mức độ an toàn luôn luôn bị chặn trên bởi chiều dài của thông báo giả mạo. Một thông báo giả mạo có chiều dài là un bit có th được chấp nhận với xác suất thành công (u - 2)2-n, trong đó n là tham số an toàn của chế độ này.

Bảng D.2-Mức độ an toàn của bộ tạo khóa dòng chuyên dụng

Bộ tạo khóa dòng

Tuyên b an toàn

Độ dài khóa

Độ phức tạp tính toàn của tn công tt nhất được biết đến

Chế độ CFB, OFB, CTR với mã khối n-bit với độ dài khóa k-bit

Gi s rằng các mã khối về cơ bản là an toàn, nói chung không thể phân biệt chế độ CFB, OFB và CTR từ một chuỗi ngẫu nhiên. Tuy nhiên, nếu số lượng các khối được xử lý vượt quá khoảng 2n/2 thì xác suất của phân biệt giữa khóa dòng và chuỗi ngẫu nhiên trở nên đáng kể. Sự an toàn của khóa dòng được chặn trên bởi an toàn của mã khối, chẳng hạn độ dài khóa và mức độ mật mã có thể được phân tích 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

2n/ 2

MUGI

Không có một tấn công phân tích mã nào được biết đến đối với MUGI nhanh hơn so với tn công vét cạn khóa. MUGI có độ dài khóa là 128- bit.

128-bit

2128

SNOW 2.0

Đối với chế độ 256-bit, các thuật toán phân biệt đã được phân biệt đầu ra của SNOW 2.0 từ một chuỗi ngẫu nhiên. Cách tốt nhất để ước tính và cần biết khoảng 2174-bit khóa dòng. Điều này hầu như không vi phạm mức độ an toàn trên lý thuyết, có thể được suy ra từ độ dài khóa, 256-bit. Tuy nhiên, bt kỳ tấn công nào liên quan đến phân biệt đã biết sẽ không có mối đe dọa nào với sử dụng thực tế.

128 hoặc 256-bit

2174

...

...

...

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ông có tấn công phân biệt nào được biết đến đối với với Rabbit nhanh hơn so với tấn công vét cạn khóa, miễn là không quá 264 khối khóa dòng được tạo ra sử dụng một khóa.

128 bit

2128

Decimv2

Không có một tn công phân tích mã nào được biết đến đối với Decimv2 nhanh hơn so với tấn công vét cạn khóa.

80 bit

280

KCipher-2 (K2)

Không có một tấn công phân tích mã nào được biết đến đối với K2 nhanh hơn so với tấn công vét cạn khóa. K2 có độ dài khóa là 128-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

2128

D.2. An toàn hiệu quả đánh đổi trong MULTI-S01

Cho n là kích thước khối của hàm đầu ra MULTI-S01. Với thông báo n.u-bit, hàm đu ra MULTI-S01 lặp xử lý khối u+2 lần. Trong c hai phần mềm và phần cứng thực hiện, việc tính toán chi phối là các phép nhân trong trường hữu hạn GF(2n).

Nếu hai thực thi, giữa kích thước khối n khác nhau, được so sánh, việc thực thi với n nhỏ hơn nói chung là nhanh hơn khối khác - mặc dù việc thực hiện với giá trị n nhỏ hơn lặp nhiều lần hơn, mỗi lần nhân có thể được tính trong thời gian ít hơn và sử dụng không gian nhỏ hơn. Các yếu tố mà việc tính toán tăng tốc độ lên phụ thuộc vào thuật toán và nền tng được sử dụng đ thực thi nó.

Bảng D.3 - cho thấy một số kết quả thực nghiệm của việc thực thi MULTI-S01 với n = 64.

Bảng D.3 - Kết quả thực nghiệm của việc thực thi chế độ MULTI-S01 không có bộ tạo khóa dòng (n = 64)

Chọn lựa

Tốc độ/Kích thưc

Đặc tả nền tả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

5.1 Gbps@80MHz, 25.7 K Cổng

ASIC sử dụng thư viện ngăn Hitachi HG73C (0.35 mm)

ASIC kích thước nh

2.0 K Cổng, 100Mbps@100MHz

Phần mềm

10 chu kỳ/byte (hoặc tương đương 520 bps@650 MHz)

Intel Pentium III 650 MHz (Coppermine), Windows98 SE, RAM 64MB, Visual C++ Ver.6.0 Service Pack 3.

D.3. Hướng dẫn v mã dòng

Phụ lục này lit kê các tính năng của mã dòng được mô tả trong tiêu chuẩn này của bộ TCVN 11367 (ISO/IEC 18033).

...

...

...

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ộ tạo khóa dòng

Phát biểu thuộc tính

Chế độ CFB, OFB, CTR với mã khối n-bit với độ dài khóa k-bit

Thuận lợi của 3 chế độ này là chúng chia sẻ các thành phần với các chế độ khác của mã khối. Các chế độ này có thể được sử dụng cho bản rõ có độ dài bt kỳ trên một vài kiến trúc, và OFB và CTR là hai chế độ phù hợp cho việc mã hóa và giải mã bản rõ độ dài nx-bit. CFB có thể khôi phục lỗi đồng bộ và hiệu năng của nó phụ thuộc vào độ dài khóa dòng. CTR chấp nhận truy cập ngẫu nhiên đến bản mã.

MUGI

MUGI sử dụng véc tơ khởi tạo độ dài 128-bit. Nó bao gồm các phép toán 64-bit và tạo ra 64-bit khóa dòng cho mỗi lần thực hiện. Mật mã có thể được sử dụng cho bn rõ có độ dài bất kỳ trên một số kiến trúc, và nó hiệu quả hơn cho kiến trúc CPU 64-bit và mã hóa/gii mã bản rõ độ dài 64x.

SNOW 2.0

SNOW 2.0 sử dụng véc tơ khởi tạo độ dài 128-bit. Nó bao gồm các phép toán 32-bit và tạo ra 32-bit khóa dòng cho mỗi lần thực hiện. Mật mã có thể được sử dụng cho bản rõ có độ dài bất kỳ trên một s kiến trúc và nó hiệu quả hơn cho kiến trúc CPU 32-bit và mã hóa/giải mã bản rõ độ dài 32x.

Rabbit

...

...

...

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

Decimv2

Decimv2 sử dụng véc tơ khởi tạo độ dài 64-bit. Nó bao gồm các phép toán từng bit và tạo ra 1-bit khóa dòng cho mi lần thực hiện. Mật mã có thể được sử dụng cho bản rõ có độ dài bất kỳ trên một số kiến trúc và nó hiệu qu hơn cho thực hiện phn cứng trên các thiết bị có tài nguyên hạn chế.

KCipher-2 (K2)

KCipher-2 sử dụng véc tơ khởi tạo độ dài 128-bit. Nó bao gồm các phép toán 32-bit và tạo ra 64-bit khóa dòng cho mỗi lần thực hiện. Mật mã có thể được sử dụng cho bn rõ có độ dài bất kỳ trên một số kiến trúc, và nó hiệu quả hơn cho kiến trúc CPU 32-bit và mã hóa/giải mã bản rõ độ dài 64x.

 

THƯ MỤC TÀI LIỆU THAM KHẢO

[1] ISO/IEC 9797-1:2011, Information technology - Security techniques - Message Authentication Codes (MACs) - Part 1: Mechanisms using a block cipher

[2] ISO/IEC 10116:2006, Information technology - Security techniques - Modes of operation for an n-bit block cipher

[3] ISO/IEC 10118-1:2000, lnformation technology - Security techniques - Hash-functions - Part 1: General

...

...

...

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] ISO/IEC 11770-3:2008, Information technology - Security techniques - Key management - Part 3: Mechanisms using asymmetric techniques

[6] Berbain, C., Billet, O., Canteaut, A., Courtois, N., Debraize. B., Gilbert, H., Goubin, L., Gouget, A., Granboulan, L., Lauradoux, C., Minier, M., Pornin, T. and Sibert, H., DECIMv2, a compact hardware- oriented stream cipher, SASC 2006 - Stream Ciphers revisited Workshop, Leuven, Belgium, 2006

[7] Biryukov, A. and Shamir, A., Cryptanalytic Time/Memory/Data Tradeoffs for Stream Ciphers, Advances in Cryptology - ASIACRYPT 2000, 6th International Conference on the Theory and Application of Cryptology and Information Security, Kyoto, Japan, December 2000, Proceedings, ed. Okamoto, T., Lecture Notes in Computer Science vol. 1976, Springer-Verlag, pp.1-13, 2000

[8] Boesgaard, M., Vesterager, M., Pedersen, T., Christiansen, J., and Scavenius, O., Rabbit: A new high- performance stream cipher. In T. Johansson, editor, Proc. Fast Software Encryption 2003, Lecture Notes in Computer Science vol.2887, Springer-Verlag, pp.307-329, 2003

[9] Boesgaard, M.(Vesterager, M.t Christensen, T., Zenner, E., The Rabbit stream cipher - design and security analysis. Available from <http://www.cryptico.com/files/filer/rabbit sasc.final.pdf>

[10] Ekdahl, P. and Johansson, T., A new version of the stream cipher SNOW, Selected Areas in Cryptography, 9th Annual Workshop, SAC 2002, St. John's, Newfoundland, Canada, Aug. 2002, Revised Papers, eds. Nyberg, K. and Heys, H., Lecture Notes in Computer Science vol. 2595, Springer- Verlag, pp.47-61, 2002

[11] Furuya, S., Watanabe, D., Seto, Y., and Takaragi, K., Integrity-Aware Mode of Stream Cipher, IEICE Transactions on Fundamentals of Electronics, Communications and Computer Science vol. E85-A No.1, pp.58-65, 2002

[12] Kiyomoto, S., Tanaka, T., and Sakurai, K., A Word-Oriented Stream Cipher Using Clock Control, In SASC 2007 Workshop Record, pp.260-274, January, 2007

[13] Kiyomoto, S., Tanaka, T., and Sakurai, K., K2: A Stream Cipher Algorithm Using Dynamic Feedback Control, In Proc. of SECRYPT 2007, pp.204-213, July, 2007

...

...

...

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

[15] Menezes, A.J., van Oorschot, P.C., and Vanstone, SA, Handbook of Applied Cryptography, CRC Press, 1996

[16] Nyberg, K., Wallen, J., Improved Linear Distinguishers for SNOW 2.0, FSE 2006, Lecture Notes in Computer Science vol.4047, Springer-Verlag, pp.44-162, 2006

[17] Watanabe, D., Furuya, S., Yoshida, H., Takaragi, K., and Preneel, B.t A New Key Stream Generator MUGI, Fast Software Encryption, 9th International Workshop, FSE 2002, Leuven, Belgium, February 4-6, 2002, Revised Papers, eds. Daemen, J. and Rijmen, V., Lecture Notes in Computer Science vol.2365, Springer-Verlag, pp.179-194, 2002

[18] Wu, H. and Preneel, B„ Cryptanalysis of the stream Cipher DECIM, Proc. FSE 2006, Lecture Notes in Computer Science vol. 4047, Springer-Verlag, pp.30-40, 2006

[19] ISO/IEC 9834 (all parts), lnformation technology - Open Systems Interconnection - Procedures for the operation of OS I Registration Authorities

 

MỤC LỤC

Lời nói đầu

Giới thiệ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

2. Tài liệu viện dẫn

3. Thuật ngữ và định nghĩa

4. Ký hiệu và từ viết tắt

4.1. Ký hiệu

4.2. Các hàm

5. Khung cho mã dòng

6. Mô hình tổng quát của mã dòng

6.1. Các bộ tạo khóa dòng

6.2. Các hàm đầu ra

...

...

...

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. Xây dựng bộ tạo khóa dòng từ mã khối

7.1. Các chế độ mã khối cho bộ tạo khóa dòng đồng bộ

7.2. Chế độ mã khối cho bộ tạo khóa dòng tự đồng bộ

8. Bộ tạo khóa dòng chuyên dụng

8.1. Bộ tạo khóa dòng MUGI

8.2. Bộ tạo khóa dòng SNOW 2.0

8.3. Bộ tạo khóa dòng Rabbit 32

8.4. Bộ tạo khóa dòng Decimv2

8.5. Bộ tạo khóa dòng KCipher-2 (K2)

...

...

...

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 B (Tham khảo) Các phép toán trên trường hữu hạn GF(2n)

Phụ lục C (Tham khảo) Các ví dụ

Phụ lục D (Tham khảo) Thông tin an toàn

Thư mục tài liệu tham khảo

Văn bản này chưa cập nhật nội dung Tiếng Anh

Bạn Chưa Đăng Nhập Thành Viên!


Vì chưa Đăng Nhập nên Bạn chỉ xem được Thuộc tính của văn bản.
Bạn chưa xem được Hiệu lực của Văn bản, Văn bản liên quan, Văn bản thay thế, Văn bản gốc, Văn bản tiếng Anh,...


Nếu chưa là Thành Viên, mời Bạn Đăng ký Thành viên tại đây


Bạn Chưa Đăng Nhập Thành Viên!


Vì chưa Đăng Nhập nên Bạn chỉ xem được Thuộc tính của văn bản.
Bạn chưa xem được Hiệu lực của Văn bản, Văn bản liên quan, Văn bản thay thế, Văn bản gốc, Văn bản tiếng Anh,...


Nếu chưa là Thành Viên, mời Bạn Đăng ký Thành viên tại đây


Bạn Chưa Đăng Nhập Thành Viên!


Vì chưa Đăng Nhập nên Bạn chỉ xem được Thuộc tính của văn bản.
Bạn chưa xem được Hiệu lực của Văn bản, Văn bản liên quan, Văn bản thay thế, Văn bản gốc, Văn bản tiếng Anh,...


Nếu chưa là Thành Viên, mời Bạn Đăng ký Thành viên tại đây


Bạn Chưa Đăng Nhập Thành Viên!


Vì chưa Đăng Nhập nên Bạn chỉ xem được Thuộc tính của văn bản.
Bạn chưa xem được Hiệu lực của Văn bản, Văn bản liên quan, Văn bản thay thế, Văn bản gốc, Văn bản tiếng Anh,...


Nếu chưa là Thành Viên, mời Bạn Đăng ký Thành viên tại đây


Tiêu chuẩn quốc gia TCVN 11367-4:2016 (ISO/IEC 18033-4:2011) về Công nghệ thông tin – Các kỹ thuật an toàn – Thuật toán mật mã – Phần 4: Mã dòng

Bạn Chưa Đăng Nhập Thành Viên!


Vì chưa Đăng Nhập nên Bạn chỉ xem được Thuộc tính của văn bản.
Bạn chưa xem được Hiệu lực của Văn bản, Văn bản liên quan, Văn bản thay thế, Văn bản gốc, Văn bản tiếng Anh,...


Nếu chưa là Thành Viên, mời Bạn Đăng ký Thành viên tại đây


2.056

DMCA.com Protection Status
IP: 3.17.154.171
Hãy để chúng tôi hỗ trợ bạn!