TIÊU CHUẨN QUỐC GIA TCVN 7817-4:2010 (ISO/IEC 11770-4:2006) VỀ CÔNG NGHỆ THÔNG TIN – KỸ THUẬT AN NINH QUẢN LÝ KHOÁ – PHẦN 4: CƠ CHẾ DỰA TRÊN BÍ MẬT YẾU

Hiệu lực: Còn hiệu lực Ngày có hiệu lực: 31/12/2010

TIÊU CHUẨN QUỐC GIA

TCVN 7817-4:2010

ISO/IEC 11770-4:2006

CÔNG NGHỆ THÔNG TIN – KỸ THUẬT AN NINH – QUẢN LÝ KHÓA – PHẦN 4: CƠ CHẾ DỰA TRÊN BÍ MẬT YẾU

Information technology – Security techniques – Key management – Part 4: Mechanisms based on weak secrets

Lời nói đầu

TCVN 78174 : 2010 hoàn toàn tương đương với ISO/IEC 11770-4 : 2006.

TCVN 7817-4 : 2010 do Tiểu ban Kỹ thuật Tiêu chuẩn quốc gia TCVN/JTC1/SC27 “Kỹ thuật mật mã” biên soạn, Tổng cục Tiêu chun Đo lường Chất lượng đề nghị, Bộ Khoa học và Công nghệ công bố.

Bộ tiêu chun TCVN 7817 bao gồm các TCVN sau:

– TCVN 7817-1:2007 Công nghệ thông tin – Kỹ thuật mật mã – Quản lý khóa, phần 1: Khung tng quát.

– TCVN 7817-2:2010 Công nghệ thông tin – Kỹ thuật an ninh – Quản lý khóa, phần 2: Cơ chế sử dụng kỹ thuật đối xứng.

– TCVN 7817-3:2007 Công nghệ thông tin – Kỹ thuật mật mã – Quản lý khóa, phần 3: Các cơ chế sử dụng kỹ thuật không đi xứng.

– TCVN 7817-4:2010 Công nghệ thông tin – Kỹ thuật an ninh – Quản lý khóa, phần 4: Cơ chế dựa trên bí mật yếu.

 

CÔNG NGHỆ THÔNG TIN – KỸ THUẬT AN NINH – QUN LÝ KHÓA – PHN 4:  CHẾ DỰA TRÊN BÍ MẬT YU

Information technology – Security techniques – Key management – Part 4: Mechanisms based on weak secrets

1. Phạm vi áp dụng

Tiêu chuẩn này quy định các cơ chế thiết lập khóa dựa trên bí mật yếu, tức là bí mật được con người ghi nhớ dễ dàng và do đó nó được chọn từ tập các khả năng khá nhỏ. Tiêu chuẩn này quy định các kỹ thuật mật mã thiết lập một hoặc nhiều khóa bí mật dựa trên bí mật yếu dẫn xuất từ một mật khẩu đã nhớ, trong khi ngăn chặn tấn công vét cạn ngoại tuyến liên quan đến bí mật yếu. Cụ thể là các cơ chế này được thiết kế để đạt được một trong ba mục đích sau:

1) Thỏa thuận khóa được xác thực bằng mật khẩu cân bằng: thiết lập một hoặc nhiều khóa bí mật giữa hai thực thể dùng chung bí mật yếu. Tại cơ chế thỏa thuận khóa được xác thực bằng mật khẩu cân bằng, các khóa bí mật dùng chung là kết quả của việc trao đổi dữ liệu giữa hai thực thể, tại đó khóa bí mật dùng chung được thiết lập với điều kiện hai thực thể sử dụng cùng bí mật yếu và không có thực thể nào trong hai thực thể đó biết trước được giá trị của khóa bí mật dùng chung.

2) Thỏa thuận khóa được xác thực bằng mật khẩu tăng cường: thiết lập một hoặc nhiều khóa bí mật giữa hai thực thể A và B, trong đó A dùng bí mật yếu và B có dữ liệu xác minh bắt nguồn từ hàm một chiều của bí mật yếu mà A đang dùng. Trong cơ chế tha thuận khóa được xác thực bằng mật khu tăng cường, các khóa bí mật dùng chung là kết quả của việc trao đổi dữ liệu giữa hai thực thể, tại đó khóa bí mật dùng chung được thiết lập với điều kiện hai thực thể sử dụng cùng bí mật yếu và các dữ liệu đã xác minh tương ứng và không có thực thể nào trong hai thực thể biết trước được giá trị của khóa bí mật dùng chung.

CHÚ THÍCH: Kiểu cơ chế tha thuận khóa này không có khả năng bảo vệ bí mật yếu của thực thể A khỏi sự thăm dò từ thực thể B, nhưng lại tăng phí tổn cho kẻ tấn công muốn biết bí mật yếu ca A từ B. Do đó, kiu cơ chế này thường được dùng cho giao tiếp giữa máy trạm (A) và máy chủ (B).

3) Lấy lại khóa được xác thực bằng mật khẩu: thiết lập một hoặc nhiều khóa bí mật cho một thực thể (A) liên kết với một thực thể khác (B), trong đó A dùng bí mật yếu và B sử dụng bí mật mạnh liên kết với bí mật yếu ca A. Trong cơ chế lấy lại khóa được xác thực bằng mật khẩu, các khóa bí mật có thể lấy lại được bi A (không nhất thiết phải nhận từ B), là kết quả của việc trao đổi dữ liệu giữa hai thực thể. Trong đó khóa bí mật được thiết lập với điều kiện hai thực thể cùng dùng bí mật yếu và liên kết với bí mật mạnh. Tuy nhiên, mặc dù bí mật mạnh của B liên kết với bí mật yếu của A, thì bí mật mạnh (bản thân nó) không chứa thông tin đầy đủ cho phép xác định phép bí mật yếu hoặc khóa bí mật thiết lập trong cơ chế.

CHÚ THÍCH: Kiu cơ chế lấy lại khóa này được sử dụng khi A không có bộ lưu trữ an toàn cho bí mật mạnh và yêu cầu sự hỗ trợ từ B để lấy lại bí mật mạnh. Kiểu cơ chế này thưng được sử dụng cho giao tiếp giữa máy trạm (A) và máy chủ (B).

Tiêu chuẩn này không bao gồm các vấn đề chủ chốt khác như:

– Quản lý vòng đời của bí mật yếu, bí mật mạnh và khóa bí mật đã thiết lập.

– Các cơ chế để lưu trữ, nén, xóa, hủy,… bí mật yếu, bí mật mạnh và các khóa bí mật đã thiết lập.

CHÚ THÍCH: Các khóa được tạo hoặc lấy lại thông qua việc sử dụng bí mật yếu không thể an toàn hơn khi dựa vào tổng số các bí mật yếu mà chúng có. Vì vậy các cơ chế quy định trong tiêu chuẩn này được khuyến khích sử dụng trong môi trường an ninh thấp.

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

Các tài liệu viện dẫn dưới đây rất cần thiết cho việc áp dụng tiêu chuẩn này. Đối với các tài liệu ghi năm công bố thì áp dụng phiên bản được nêu. Đối với các tài liệu không ghi năm công b thì áp dụng phiên bản mới nht, bao gồm cả các sửa đổi.

TCVN 7817-1:2007, Công nghệ thông tin – Kỹ thuật mật mã – Quản lý khóa – Phần 1: Khung tổng quát.

ISO/IEC 10118-3:2004, Information technology – Security techniques – Hash-functions – Part 3: Dedicated hash-functions. (Công nghệ thông tin – Kỹ thuật an ninh – Hàm băm – Phần 3: Các hàm băm dành riêng).

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

Tiêu chuẩn này sử dụng các định nghĩa sau:

3.1. Thỏa thuận khóa được xác thực bằng mật khu tăng cường (augmented password-authenticated key agreement)

Thỏa thuận khóa được xác thực bằng mật khu tăng cường trong đó thực thể A sử dụng mật khẩu dựa trên bí mật yếu và thực thể B xác minh dữ liệu nhận được từ hàm một chiều của bí mật yếu mà A đang dùng để thỏa thuận và xác thực một hoặc nhiều khóa bí mật dùng chung.

3.2. Thỏa thuận khóa được xác thực bằng mật khẩu cân bằng (balanced password-authenticated key agreement)

Thỏa thuận khóa được xác thực bằng mật khẩu cân bằng trong đó thực thể A và B cùng chia sẻ một bí mật yếu dựa trên mật khẩu chung để tha thuận và xác thực một hoặc nhiều khóa bí mật dùng chung.

3.3. Tấn công vét cạn (brute-force attack)

Kiểu tấn công vào hệ thống mật mã sử dụng phép vét cạn tập các khóa, mật khu hoặc dữ liệu khác.

3.4. Hàm băm kháng xung đột (collision-resistant hash-function)

Hàm băm thỏa mãn các đặc tính sau: không thể tính toán để tìm ra hai đầu vào khác nhau mà ánh xạ tới cùng một đầu ra.

CHÚ THÍCH: Khả năng tính toán phụ thuộc vào môi trường và yêu cầu bảo mật cụ thể.

[ISO/IEC 10118-1:2000]

3.5. Tấn công theo từ điển (trên hệ thống mật khẩu) (dictionary attack (on a password – based system))

Tấn công vào hệ thống mật mã sử dụng phép tìm kiếm danh mục mật khẩu.

CHÚ THÍCH: Tn công theo từ điển trên hệ thống mật khẩu sử dụng danh sách các giá trị mật khẩu đã lưu hoặc danh sách các từ ngữ được lấy trong từ điển ngôn ngữ tự nhiên.

3.6. Tham số miền (domain parameter)

Mục dữ liệu chung và được nhận biết bi hoặc có thể truy cập tới tất cả các thực thể trong miền.

CHÚ THÍCH: Tập tham số miền có thể chứa các mục dữ liệu như thẻ định danh hàm băm, độ dài th băm, độ dài của phần thông điệp phản hồi, tham số trường hữu hạn, tham số đường cong elliptic, hoặc các tham số khác quy định cho các vấn đề an ninh của tên miền.

[ISO/IEC 9796-3:2000]

3.7. Xác thực khóa tường minh từ A tới B (explicit key authentication from A to B)

Đảm bảo cho thực thể B rằng A là thực thể duy nhất khác B có quyền s hữu khóa đúng.

CHÚ THÍCH: Xác thực khóa không tường minh từ A tới B và xác nhận khóa từ A tới B kết hợp với nhau suy ra xác thực khóa tường minh từ A tới B.

[TCVN 7817-3:2007]

3.8. Hàm băm (hash tunction)

Hàm ánh xạ các chuỗi bit thành các chuỗi bit có độ dài cố định, thỏa mãn hai tính chất sau đây:

– Không có khả năng tính toán được đầu vào từ một đầu ra cho trước;

– Không có khả năng tính toán được đầu vào nào khác đầu vào cho trước mà lại có chung đầu ra.

CHÚ THÍCH: Khả năng tính toán phụ thuộc vào môi trường và yêu cầu bảo mt cụ th.

[ISO/IEC 10118-1:2000]

3.9. Mật khẩu băm (hashed password)

Kết quả của việc áp dụng hàm băm cho mật khẩu.

3.10Xác thực khóa không tường minh từ A tới B (implicit key authentication from A to B)

Đảm bảo cho thực thể B rằng A là thực thể duy nhất khác B có khả năng có quyền s hữu khóa đúng.

[TCVN 7817-3:2007]

3.11Khóa (key)

Chuỗi biểu tượng điều khiển các thao tác của phép biến đổi mật mã (ví dụ như mã hóa, giải mã, tính toán hàm kiểm tra mật mã hoặc xác minh chữ ký).

[TCVN 7817-3:2007]

3.12. Thỏa thuận khóa (key agreement)

Quá trình thiết lập khóa bí mật dùng chung giữa các thực thể theo cách mà không thực thể nào có thể xác định trước giá trị của khóa đó.

[TCVN 7817-1:2007]

3.13. Xác nhận khóa từ A tới B (key confirmation from A to B)

Đảm bảo đối với thực thể B rằng thực thể A là có quyền s hữu khóa đúng.

[TCVN 7817-3:2007]

3.14. Kiểm soát khóa (key control)

Khả năng lựa chọn khóa hoặc các tham số sử dụng trong việc tính toán khóa.

[TCVN 7817-1:2007]

3.15. Hàm dẫn xuất khóa (key derivation function)

Hàm sử dụng các bí mật dùng chung hoặc các tham số đã biết khác nhau làm đầu vào và cho đầu ra  một hay nhiều bí mật dùng chung mà có thể được sử dụng làm khóa.

3.16Thiết lập khóa (key establishment)

Quá trình tạo sẵn khóa bí mật dùng chung cho một hoặc nhiều thực thể, thiết lập khóa bao gồm thỏa thuận khóa, chuyển khóa và lấy lại khóa.

3.17Quản lý khóa (key management)

Quản trị và sử dụng để tạo ra, đăng ký, chứng thực, hủy bỏ, phân bổ, cài đặt, lưu trữ, nén, thhồi, dẫn xuất và phá hủy vật liệu khóa theo quy định an ninh.

[TCVN 7817-1:2007]

3.18Lấy lại khóa (key retrieval)

Quá trình thiết lập khóa cho một hoặc nhiều thực thể (được gọi là thực thể lấy khóa) với một hoặc nhiều thực thể khác (không bắt buộc có khả năng tiếp cận khóa sau khi quá trình kết thúc) và quá trình này thường đòi hi việc xác thực đối với thực thể lấy lại khóa bởi các khóa kia.

3.19Thẻ khóa (key token)

Thông điệp thiết lập khóa gửi từ thực thể này đến thực thể khác trong suốt quá trình thực hiện cơ chế thiết lập khóa.

3.20Hàm kiểm tra th khóa (key token check function)

Hàm sử dụng thẻ khóa và các tham số đã được công khai là đầu vào và đầu ra là một giá trị Boolean trong suốt quá trình thực hiện cơ chế thiết lập khóa.

3.21. Hệ số thẻ khóa (Key token factor)

Giá trị được giữ bí mật và có thể được sử dụng kết hợp với bí mật yếu để tạo ra thẻ khóa.

3.22. Hàm tạo th khóa (key token generation function)

Hàm tận dụng hệ số thẻ khóa và các số tham số khác làm đầu vào, đầu ra là thẻ khóa trong suốt quá trình thiết lập khóa.

3.23Xác thực khóa hai chiều (mutual key authentication)

Đảm bảo cho mỗi trong hai thực thể rằng chỉ có thực thể kia có khả năng có quyền s hữu khóa đúng.

3.24Hàm một chiều (one-way function)

Hàm với đặc tính là dễ dàng tính toán đầu ra với đầu vào cho trước nhưng không  khả năng tính toán đầu vào với đầu ra cho trước.

[TCVN 7817-3:2007]

3.25Mật khẩu (password)

Chuỗi các từ, cụm từ, số hoặc ký tự bí mật để sử dụng xác thực thực thể và là bí mật yếu dễ nhớ.

3.26Tha thuận khóa được xác thực bằng mật khu (password-authenticated key agreement)

Quá trình thiết lập một hoặc nhiều khóa bí mật dùng chung giữa hai thực thể sử dụng phần thông tin dựa trên mật khẩu chia sẻ (có nghĩa là c hai cùng chia sẻ mật khẩu hoặc một thực thể có mật khu và thực thể còn lại có dữ liệu xác minh mt khẩu) và không thực thể nào có thể đoán trước được giá trị các khóa bí mật dùng chung.

3.27Ly lại khóa được xác thực bằng mật khẩu (password-authenticated key retrieval)

Quá trình lấy lại khóa trong đó thực th A dùng bí mật yếu bằng mật khẩu và thực thể B s hữu bí mật mạnh liên kết với bí mật yếu từ A. Hai thực thể đó s dụng các bí mật riêng của chúng, thỏa thuận khóa bí mật mã khóa đó có thể lấy lại lại từ A (không nhất thiết phải nhận từ B).

3.28Th khóa được làm rối bằng mật khẩu (password-entangled key token)

Thẻ khóa được sinh ra từ bí mật yếu và hệ số thẻ khóa.

3.29Dữ liệu xác minh mật khẩu (password verification data)

Dữ liệu mà được dùng để xác minh các thông tin về thực thể của một mật khẩu cụ thể.

3.30Hàm dẫn xuất phần tử ngẫu nhiên (random element derivation function)

Hàm sử dụng mật khẩu và các tham số khác làm đầu vào và đầu ra là phần tử ngẫu nhiên.

3.31. Salt

Biến ngẫu nhiên được thêm vào như là đầu vào thứ hai cho hàm mã hóa hoặc hàm một chiều, để tạo ra dữ liệu xác minh mật khẩu.

3.32. Bí mật (secret)

Giá trị mà ch có thực thể tạo ra giá trị đó biết.

3.33. Hàm dẫn xuất giá trị bí mật (Secret value derivation function)

Hàm sử dụng hệ số thẻ khóa, thẻ khóa và vài tham số khác làm đầu vào và đầu ra là một giá trị bí mật (để tính một hoặc nhiều khóa bí mật).

3.34Khóa bí mật (secret key)

Khóa được sử dụng trong kỹ thuật mã hóa đối xứng bởi một tập các thực thể xác định.

3.35Bí mật mạnh (Strong secret)

Bí mật với mức độ thích hợp của entropy để việc dò soát kiểu vét cạn bí mật này là không khả thi, thậm chí với các dữ liệu cho trước cho phép đoán trưc chính xác bí mật để phân biệt với các giả định sai.

CHÚ THÍCH: Điều này là có thể, ví dụ: bằng cách sử dụng ngẫu nhiên các bí mật từ một tập các giá trị có độ lớn thích hợp với phân bố xác sut đều đặn.

3.36Bí mật yếu (Weak secret)

Bí mật mà con người có thể ghi nhớ dễ dàng, đặc trưng của phương pháp này là entropy của bí mật bị giới hạn, vì vậy việc dò soát kiểu vét cạn bí mật này là khả thi, các dữ liệu cho trước cho phép phán đoán chính xác bí mật để phân biệt với các giả định sai.

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

a1a2 Hệ số đường cong elliptic

A,B Định danh phân biệt ca thực thể

b, bi bit (tức là 0 hoặc 1)

BS2I Hàm biến đổi chuỗi bit thành số nguyên

S nguyên xác định trong 1  c ≤ q – 1

C,CDL,CEC Hàm tạo ra thẻ khóa dựa trên mật khẩu và hệ số thẻ khóa

D,DDL,DEC Hàm tạo ra thẻ khóa chỉ dựa trên duy nhất hệ số thẻ khóa

Đường cong elliptic được xác định bi hai hệ số đường cong elliptic a1 và a2

F(q) Trường hữu hạn có q phần tử

FE2I Hàm biến đổi phần tử trường thành số nguyên

FE2OS Hàm biến đổi phần tử trường thành chuỗi octet

g,g1,ga,gb Các phần tử có bậc nhân r trong F(q)

G,Ga,Gb Các điểm có bậc r trên E thuộc trường F(q)

gq-1 Phần tử có bậc nhân là q-1 trong F(q)

GE2OSx Hàm có khả năng chuyển đổi phần tử nhóm thành chuỗi octet, khi phần t nhóm đó là một điểm trên E, thì hàm này sẽ chuyển tọa độ x của điểm đó thành chuỗi octet mà bỏ qua tọa độ y.

Hàm băm ly chuỗi octet làm đầu vào và cho đầu ra là chuỗi bit. Ví dụ: hàm băm được định nghĩa trong ISO/IEC 10118-3

h(x, LK) Hàm băm lấy chuỗi octet x và s nguyên Lk (ch ra độ dài theo bit của đầu ra) làm đầu vào và cho đầu ra là chuỗi bit có độ dài Lk. Ví dụ: hàm băm được định nghĩa trong ISO/IEC 10118-3.

I2FE Hàm biến đổi số nguyên thành phần tử trường

I2OS Hàm biến đổi số nguyên thành chuỗi octet

I2P Hàm biến đổi số nguyên thành điểm trên đường cong E

J,JDL,JEC Hàm tạo ra phần tử xác minh mật khẩu từ mật khẩu

k Phần phụ đại số hoặc là tỉ số (q-1)/r trong các tham số miền DL hoặc tỉ số #E/r trong các tham số miền EC

Hàm dẫn xuất khóa từ giá trị bí mật và tham số dẫn xuất khóa

K1,K2,.. Các khóa bí mật được thiết lập trong một cơ chế thiết lập khóa

LK Độ dài (tính bằng bit) khóa bí mật đã được thiết lập

Một số nguyên

Mi Một octet được biểu diễn giá trị mã hex từ 00 đến FF

mod Phép toán đồng dư, trong đó y = a mod b là định nghĩa cho số nguyên duy nhất y trong 0 ≤ y < b và (a -y) là một bội số nguyên ca b

Một số nguyên

oA­, oA‘, oB­, oB Chuỗi bit, dùng để xác định một quá trình xác nhận khóa

OS2I Hàm biến đổi chuỗi octet thành số nguyên

p,pi Số nguyên tố l

P1,P2,… Chuỗi octet tham số dẫn xuất khóa

Số phần tử trong trường hữu hạn F(q). Trong cấu hình EC, q hoặc là p hoặc là 2m đối với các số nguyên m  1. Trong cấu hình DL, q chính là p.

CHÚ THÍCH: Tiêu chuẩn này chỉ áp dụng cho trường nguyên tố hoặc trường nhị phân trong cấu hình EC và ch trường nguyên tố trong cu hình DL, bởi vì các trường hợp này được sử dụng rộng rãi và chúng có các đặc tính bo mật cao được nghiên cu kỹ lưỡng.

Bậc của nhóm sẽ được sử dụng (là số nguyên tố hoặc chia hết cho (q-1) trong cấu hình DL và chia hết cho #E trong cấu hình EC)

R, R1DL, R1EC, R2DL, R2EC  Các hàm dẫn xuất phần tử ngẫu nhiên từ mật khẩu.

sA, sCác hệ số th khóa ca thực thể A và B tương ứng với các thẻ khóa wA và wB

CHÚ THÍCH: Các hệ số thẻ khóa nên được tạo một cách ngẫu nhiên từ một tập các chọn lựa làm cho tối đa hóa độ khó trong việc lấy lại hệ số thẻ khóa bi các phương pháp tìm kiếm xung đột. Các phương pháp tạo số ngẫu nhiên được quy định trong ISO/IEC 18031.

Hàm kiểm tra tính hợp lệ của thẻ khóa

V, VA, VB, VADL, VAEC, VBDL, VBEC Hàm tạo các giá trị bí mật

wA, wB Các thẻ khóa hoặc các thẻ khóa đã được làm rối bằng mật khẩu của các thực thể A và B, tương ứng với các hệ số thẻ khóa sA và sB; chúng là các số nguyên trong cấu hình DL và các điểm trong cu hình EC.

[x] x Y Toán tử nhân trong cấu hình EC có đầu vào là một số nguyên X và một điểm Y trên đường cong E và tạo ra một điểm Z trên đường cong E, trong đó Z = [x] + Y = Y + Y + … + Y, với x-1 lần số hạng Y nếu x là dương. Các toán tử tha mãn [0] x Y = 0E (điểm  vô cực) và [-xx Y = [x] (-Y).

z Giá trị bí mật được sử dụng để dẫn xuất khóa, đây là một số nguyên trong cấu hình DL và là một điểm trong cấu hình EC

{bm-1bm-2, …, b0Các phần tử của trường F(sm), trong đó s hoặc là p hoặc là 2 và βi là một số nguyên thỏa mãn 0 ≤ βi ≤ s – 1

p Một chuỗi octet dựa trên mật khẩu thường bắt nguồn từ một mật khẩu hoặc một mật khẩu băm, các th định danh của một hoặc nhiều thực thể, thẻ định danh của mỗi phiên giao tiếp nếu nhiều hơn một phiên được thực hiện đồng thời, tùy chọn các giá trị Salt và các dữ liệu khác.

CHÚ THÍCHYêu cầu cần thiết là đưa một hay nhiều định danh thực thể và một định danh của phiên liên lạc vào giá trị p, điều này tránh được cơ chế thiết lập khóa bị hư hỏng bi kiểu tấn công chia sẻ khóa chưa biết được trình bày trong [TC05].

#E Số điểm trên đường cong elliptic E

|| Toán tử ghép nối được áp dụng cho chuỗi octet

0E Điểm vô cực trên đường cong elliptic E

5. Các yêu cầu

Giả thiết rng các thực thể nhận biết được định danh của các thực thể khác. Điều này có thể thực hiện bằng cách lồng định danh vào trong thông tin trao đổi giữa hai thực thể, hoặc có thể nhận ra ngay từ ngữ cảnh sử dụng cơ chế.

Giả thiết rằng các thực thể nhận biết được tập các tham số miền chung được sử dụng để tính toán ra tập các hàm trong cơ chế thiết lập khóa. Mỗi cơ chế có thể sử dụng với một trong hai tập tham số miền khác nhau, tùy thuộc vào việc cơ chế vận hành trên nhóm giá trị nhân trong dãy F(q) hoặc trên nhóm phần tử cộng trong đường cong elliptic xác định trên dãy F(q). Trong trưng hợp đầu, cơ chế được cho là hoạt động trong cấu hình DL (lôgarit rời rạc) và trong trường hợp thứ hai, cơ chế được cho là hoạt động trong cu hình EC (đường cong elliptic).

CHÚ THÍCH: Điều quan trọng cơ bản đ thực hiện chính xác thao tác trong các cơ chế là bất kỳ tham số miền nào đều được giữ chính xác bi mỗi bên tham gia. Khi bất kỳ bên tham gia nào vô tình hay cố ý sử dụng tham số miền bị lỗi có thể tạo lỗi trong các cơ chế, kéo theo bên thứ ba khám phá ra được khóa bí mật đã thiết lp.

Hai tập tham số miền là:

Tập các tham số miền DL bao gồm:

F(q) – Trường hữu hạn trên q phần tử.

q – Số phần tử trong F(q), đây  một số nguyên tố.

r – Bậc của nhóm phn tử sẽ được sử dụng thuộc trường hữu hạn, đây là ước số nguyên của q-1.

g – Phần tử nhân bậc r thuộc F(q) (g gọi  phần tử sinh của nhóm con gồm r phần tử trong F(q)).

gq-1 – Phần tử nhân bậc q-1 thuộc F(q).

CHÚ THÍCH: Phương pháp tạo gq-1 có thể tìm thấy trong chương 4 của [MvV96] và [Ka86].

k – Giá tr bng (q1)/r, được gọi là phần phụ đại số, thỏa mãn k = 2 pp2 … pt trong đó số nguyên tố p> r và i = 1, 2,..., t. (Khi t = 0 thì k = 2).

Tập các tham s miền EC bao gồm:

F(q) – Trường hữu hạn trên q phần tử.

q – Số phần tử trong F(q), có giá trị

– p nếu là số nguyên tố l; hoặc,

– 2m đối với số nguyên dương m ≥ 1.

a1, a2 – Hai hệ số đường cong, các phần tử F(q) được xác định trên đường cong elliptic E.

E – Đường cong elliptic xác định bởi hệ số đường cong elliptic a1, a2. Và được xác định bi một trong hai phương trình sau cùng với điểm 0E gọi là điểm vô cực:

– Y2 = X3 + a1X + a2 trên trường F(p),

– Y2 + XY = X3 + a1X2 + a2 trên trường F(2m),

#E – Số các điểm trên E.

r – Bậc ca nhóm mong muốn, đó là số nguyên chia hết cho #E.

G – Một điểm trên đường cong bậc r (G gọi là phần tử sinh của nhóm con gồm r điểm trên E).

k – Giá trị bằng #E/r, được gọi là phần phụ đại số, thỏa mãn k = 2n p1 p2…pt trong đó n = {0, 1, 2} và số nguyên tố pi > r và i = 1, 2,…, t. (Khi t = 0 thì k = 2n).

Khi các thực thể sử dụng một cơ chế cụ thể trong cấu hình EC, giả định rằng các thực thể nhận biết được hình thức biểu diễn điểm, nghĩa là điểm được biểu diễn dưới dạng nén hoặc không nén hoặc dạng mẫu lai. Các quy định kỹ thuật về biểu diễn điểm xem thêm trong ISO/IEC 18033-2.

Trong đặc tả kỹ thuật các cơ chế của tiêu chuẩn này, phương pháp tạo số ngẫu nhiên tuân theo ISO/IEC 18031 và phương pháp tạo số nguyên tố tuân theo ISO/IEC 18032.

Cũng giả thiết rng các thực thể nhận biết được một hàm băm H chung, ví dụ: hàm băm riêng được quy định trong ISO/IEC 10118-3.

6. Thỏa thuận khóa được xác thực bằng mật khẩu

Điều khoản này quy định ba cơ chế thỏa thuận khóa được xác thực bng mật khu. Cơ chế đầu tiên quy định trong điều 6.1 là cơ chế thỏa thuận khóa được xác thực bng mật khẩu cân bng đòi hỏi hai thực th dùng chung một bí mật yếu. Các cơ chế thứ hai và thứ ba, quy định tại điều 6.2 và 6.3 là các cơ chế thỏa thuận khóa được xác thực bằng mật khẩu tăng cường đòi hi một trong hai thực th có dữ liệu xác minh bí mật yếu từ thực thể khác.

Tất cả ba cơ chế thỏa thuận khóa được xác thực bng mật khu đều được thực hiện tiếp theo sau quá trình khi tạo và quá trình thiết lập khóa.

Quá trình khi tạo: Hai thực th tham gia đồng ý sử dụng một tập các tham số miền hợp lệ, một tập các tham số dẫn xuất khóa và một tập các hàm, tất cả đều được công khai. Hai thực thể cũng đồng ý sử dụng hoặc bí mật yếu dựa trên mật khu chia sẻ mà chỉ họ biết hoặc thông tin dựa trên mật khẩu chia sẻ, nghĩa là một thực th có bí mật yếu dựa trên mật khẩu và thực thể còn lại có dữ liệu xác minh mật khẩu tương ứng.

Quá trình thiết lập khóa:

1) Tạo và trao đổi thẻ khóa: từng thực thể trong hai thực thể liên quan lựa chọn ngẫu nhiên một hoặc nhiều hệ số th khóa liên kết với các tham số miền, tạo ra các thẻ khóa tương ứng mà có thể liên kết được với mật khẩu hoặc dữ liệu xác minh mật khu (thẻ này được gọi là thẻ được làm rối bằng mật khẩu) và sau đó tạo ra các thẻ khóa cho thực thể còn lại.

2) Kiểm tra tính hợp lệ của thẻ khóa: tùy thuộc vào các thao tác trong quá trình sản xuất thẻ khóa  bước 1, từng thực thể liên quan lựa chọn một phương pháp thích hợp để xác nhận là đã nhận được các th khóa dựa trên tham số miền. Nếu có bất kỳ xác nhận nào thất bại, đầu ra sẽ là “không hợp lệ” và quá trình dừng lại.

3) Thu được khóa bí mật dùng chung: từng thực thể trong hai thực thể liên quan áp dụng một hàm dẫn xuất giá trị bí mật nhất định để s hữu riêng hệ số thẻ khóa, các th khóa và/hoặc mật khẩu chia sẻ hoặc dữ liệu xác minh mật khẩu của thực thể khác nhằm tạo ra được giá trị chia s bí mật. Mỗi thực th áp dụng thêm một hàm dẫn xuất khóa với giá tr chia sẻ bí mật và các tham số dẫn xuất khóa để thu được một hoặc nhiều khóa bí mật dùng chung.

4) Kiểm tra xác minh khóa: hai thực thể liên quan sử dụng thiết lp khóa bí mật dùng chung với các bước trên thì nhận được khóa cho mỗi bên. Bước này là tùy chọn trong cơ chế 1 nhưng bắt buộc trong cơ chế 2 và 3.

6.1. Cơ chế thỏa thuận khóa 1

Đây là cơ chế thỏa thuận khóa được thiết kế theo thỏa thuận khóa được xác thực bằng mật khẩu cân bằng trong đó thiết lập một hay nhiều khóa bí mật dùng chung giữa hai thực thể A và B với kiểm soát khóa kết nối và chia sẻ đầu tiên chuỗi octet dựa trên mật khẩu p. Cơ chế này cung cấp xác thực khóa không tường minh hai chiều và tùy chọn xác nhận khóa tường minh hai chiều.

Cơ chế này làm việc được trên cả hai cấu hình DL và EC.

CHÚ THÍCH: Cơ chế này dựa trên [Jab96] và cơ chế được gọi là {DL,EC}BPKAS-SPEKE trong [IEEEP1363.2].

6.1.1. Tham số được chia s trước

Thỏa thuận khóa giữa hai thực thể A và B diễn ra trong môi trường chứa các tham số sau đây:

– Chuỗi octet dựa trên mt khẩu p dùng chung.

– Tập các tham số miền hợp lệ (tham số miền DL hoặc tham số miền EC) quy định trong Điều 5.

– Hàm dẫn xuất phần tử ngẫu nhiên, R.

– Hàm tạo thẻ khóa, D.

– Hàm kiểm tra thẻ khóa, T.

– Hàm dẫn xuất giá trị bí mật, V.

– Hàm dẫn xuất khóa, K.

– Giá trị Boolean b cho biết liệu phép nhân phần phụ đại số có được yêu cầu hay không. Nếu b=1, thì phép nhân phần phụ đại số được yêu cầu, nếu khác thì không được yêu cầu.

– Một hoặc nhiều chuỗi octet tham số dẫn xuất khóa {P1P2, …}, trong đó A và B phải cùng chấp nhận sử dụng giá trị P.

– Độ dài của khóa bí mật dùng chung, LK.

CHÚ THÍCH: Phép nhân phần phụ đại số được sử dụng để ánh xạ các th khóa nhận được thành một phần tử nhóm hợp lệ, tức là một phần tử trong nhóm con đã chọn bậc r. Trường hợp b=0 ch được dùng trong các cơ chế mà trong đó được đảm bảo rng nhận được thẻ khóa là phần tử nhóm hợp lệ. Xem chi tiết hơn về phép nhân phần phụ đại số trong [ISO/IEC 15946-3:2002].

6.1.2. Các hàm

6.1.2.1. Hàm dẫn xuất phần tử ngẫu nhiên R

Hàm dẫn xuất phần tử ngẫu nhiên R lấy chuỗi octet x làm đầu vào và tạo ra đầu ra là phần tử nhóm được chọn R(x). Cơ chế thỏa thuận khóa 1 có thể sử dụng bất kỳ một trong bốn hàm R sau: R1DL, R1EC, R2DL và R2EC.

– R1DL tương ứng khi cơ chế sử dụng tham số miền DL, tức là hoạt động trên nhóm phần tử nhân xác định trên F(q). Với tham số miền DL cho trước (bao gồm k và q) và chuỗi octet x làm đầu vào thì ta có R1DL:

R1DL(x) = (BS2l(H(x)))k mod q.

– R1EC tương ứng khi cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm phần tử cộng thuộc đường cong elliptic xác định trên F(q). Với tham số miền EC cho trước (bao gồm k) và chuỗi octet x làm đầu vào thì ta có R1EC:

R1EC(x) = [k] x l2P(BS2l(H(x))).

– R2DL tương ứng khi cơ chế sử dụng tham số miền DL, tức là hoạt động trên nhóm phần t nhân xác định trên F(q). Với tham số miền DL cho trước (bao gồm q), hai phần tử ngẫu nhiên thuộc nhóm con bậc r trong F(q) là ga và gb và chuỗi octet x làm đầu vào thì ta có R2DL:

R2DL(x) = ga * gb BS2I(H(x)) mod q.

– R2EC tương ứng khi cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm phần tử cộng thuộc đường cong elliptic xác định trên F(q). Với tham số miền EC cho trước, hai phần tử ngẫu nhiên thuộc nhóm con bậc r trên E là Ga và Gb và chuỗi octet x làm đầu vào thì ta có R2EC:

R2EC(x) = Ga + [BS2l(H(x))] x Gb.

Hàm BS2I (chuyển chuỗi bit thành số nguyên) và I2P (chuyển số nguyên thành điểm) được miêu tả trong Phụ lục A.

CHÚ THÍCH 1: Bốn lựa chọn cho hàm R có các đặc điểm hiệu suất và giả thiết bảo mật khác nhau. Về hiệu suất, R2 được sử dụng khi k >> r, nhưng khi sử dụng phần phụ đại số k nhỏ, R1 lại nhanh hơn R2.

CHÚ THÍCH 2: Khuyến cáo rng nếu kết quả của R1DL(x) hoặc R2DL(x) là 1, hoặc nếu kết quả của R1EC(x) hoặc R2EC(x) là 0E, thì đầu ra là “không hợp lệ” và quá trình dừng lại. Căn cứ vào đặc tính ngẫu nhiên ca hàm băm H, xác suxảy ra trường hợp này là rất ít. Tuy nhiên không đim yếu bảo mật nào bị phát hiện, bởi vì nếu hàm R cho đầu ra không ngừng có giá trị 1 trong cấu hình DL hoặc điểm 0E trong cấu hình EC, thì giao thức sẽ hy bỏ khi chạy m kiểm tra thẻ khóa T.

6.1.2.2. Hàm tạo th khóa D

Hàm tạo th khóa D lấy số nguyên x và phần tử nhóm y làm đầu vào và tạo ra đầu ra là nhóm phần tử D(x, y). Cơ chế thiết lập khóa 1 có thể được sử dụng một trong các hàm D sau: DDL và DEC:

– DDL tương ứng với cơ chế sử dụng các tham số miền DL, tức là hoạt động trên nhóm phần tử nhân xác định trên F(q). Cho trước tham số miền DL (bao gồm q) và hai đầu vào x từ {1,.., r-1} và số nguyên y là đầu ra hàm R, trong đó DDL  tính như sau:

DDL(x, y) = yx mod q.

– DEC tương ứng với cơ chế sử dụng các tham số miền EC, tức là hoạt động trên nhóm phn tử cộng thuộc đường cong elliptic xác định trên F(q). Cho trước tham số miền EC và hai đầu vào x từ {1,…, r  1} và điểm Y là đầu ra hàm R, trong đó DEC tính như sau:

DEC(x, Y) = [xx Y.

6.1.2.3. Hàm kiểm tra th khóa T

Hàm kiểm tra th khóa T lấy phần tử nhóm x làm đầu vào và tạo ra đầu ra là giá trị Boolean T(x). Cơ chế thỏa thuận khóa 1 sử dụng một trong các hàm T sau, TDL và TEC:

– TDL tương ứng với cơ chế sử dụng các tham số miền DL, tức là hoạt động trên nhóm phần tử nhân thuộc F(q). Cho trước tham số miền DL (bao gồm q) và chuỗi dữ liệu x, trong đó TDL được xác định như sau:

– Nếu x không biểu diễn số nguyên, TDL(x) = 0,

– Nếu x ≤ 1, TDL(x) = 0,

– Nếu  q -1, TDL(x) = 0.

– Trường hợp còn lại, TDL(x) = 1.

– TEC tương ứng với cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm phần tử cộng thuộc đường cong elliptic xác định trên F(q). Với tham số miền EC (bao gồm 0E) cho trước, giá trị n Î {0, 1, 2}, cho k = 2n p1 p2 … pt và chuỗi dữ liệu X, TEC được xác định như sau:

– Nếu X không biểu diễn một điểm trên E, TEC(X) = 0,

– Nếu [2n] x X = 0E, TEC(X) = 0.

– Trường hợp còn lại, TEC(X) = 1.

6.1.2.4. Hàm dẫn xuất giá trị bí mật V

Hàm dẫn xut giá trị bí mật V hoạt động trên số nguyên x và phần tử nhóm đã chọn y với giá trị Boolean b làm đầu vào và tạo ra đầu ra là phần tử nhóm V(x, y, b). Cơ chế thỏa thuận khóa 1 có thể chọn một trong các hàm V sau, VDLvà VEC:

– VDL tương ứng với cơ chế s dụng tham số miền DL, tức là hoạt động trên nhóm phần t nhân trên F(q). Cho trước tham số miền DL (bao gồm k và q) với ba đầu vào: x từ {1,…, r – 1}, y từ {2,…, q – 2} và b từ {0, 1}, VDL được xác định như sau:

VDL (x, y, b)  moq

– VEC tương ứng với cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm phần tử cộng thuộc đường cong elliptic trên F(q). Cho trước tham số miền EC (bao gồm k) và ba đầu vào: x từ {1,…,  1} điểm Y ¹ 0E và b từ {0, 1}, VEC được xác định như sau:

VEC(x, Y, b) = [k* x] x Y.

6.1.2.5. Hàm dẫn xuất khóa K

Hàm dẫn xuất khóa K thao tác trên chuỗi octet x, độ dài (tính bằng bit) LK của đầu ra hàm K và chuỗi octet tham số dẫn xuất khóa P từ {P1P2, …} làm đầu vào, tạo ra đầu ra là chuỗi bit K(x, P, Lk). Cơ chế tha thuận khóa 1 sử dụng hàm một chiều là hàm K:

K(x,P,LK) = h(x || P,LK).

CHÚ THÍCH 1: Việc chuyển đổi đầu ra cho hàm băm được quy định trong ISO/IEC 10118 – 3 là mã băm H với chiều dài bit cho trước. Xem ISO/IEC 10118 – 3 để biết thêm chi tiết.

CHÚ THÍCH 2: Giá trị ca LK phụ thuộc vào ứng dụng sử dụng khóa dẫn xuất. Nếu đầu ra của hàm dẫn xuất khóa K là một khóa mã hóa đối xứng, thì LK là giá trị của chiều dài khóa ca cơ chế mã hóa đối xứng cụ th.

6.1.3. Thao tác thỏa thuận khóa

Cơ chế này yêu cầu cả hai A và B chấp nhận một dãy bốn bước, từ A1 – A4  B1  B4 (các bước tương ứng với A và B). Các bước tùy chọn là A3, A4, B3 và B4.

Xây dựng thẻ khóa (A1)

A tiến hành các bước sau:

– Tính g1 = R(p) làm cơ sở cho thẻ khóa.

– Chọn một số nguyên sA ngẫu nhiên từ {1,…, r  1} làm hệ số thẻ khóa.

– Tính wA = D(sA, g1) là thẻ khóa.

– Chuyển wA cho B.

Xây dựng thẻ khóa (B1)

B tiến hành các bước sau:

– Tính g1 = R(p) làm cơ sở cho thẻ khóa.

– Chọn một số nguyên sB ngẫu nhiên từ {1,…, r  1} làm hệ số thẻ khóa.

– Tính wB = D(sB, g1) là thẻ khóa.

– Chuyển wB cho A.

Thu được khóa bí mật dùng chung (A2)

A tiến hành các bước sau:

– Nhận wB từ B.

– Kiểm tra tính hợp lệ của wB bằng T(wB): Nếu T(wB) = 0, đầu ra sẽ “không hợp lệ” và quá trình dừng lại; nếu không thì:

– Tính z = V(sA, wB, b) là giá trị bí mật dùng chung.

– Tính Ki = K(GE2OSx(z), Pi, LK) cho từng tham số dẫn xuất khóa Pi là khóa bí mật dùng chung.

Thu được khóa bí mật dùng chung (B2)

B tiến hành các bước sau:

– Nhận wA từ A.

– Kiểm tra tính hợp lệ của wA bằng T(wA): Nếu T(wA) = 0, đầu ra sẽ “không hợp lệ” và quá trình dừng lại; nếu không thì:

– Tính z = V(sB, wA, b) là giá trị bí mật dùng chung.

– Tính Ki = K(GE2OSx(z), Pi, Lk) cho từng tham số dẫn xuất khóa Pi là khóa bí mật dùng chung.

CHÚ THÍCH: Cơ chế không quy định thứ tự nào giữa A1 và B1 hoặc A2 và B2ngoài ra theo tính logic yêu cầu cần tính toán giá trị trước khi sử dụng giá trị đó nên A1 và B1 phải xuất hiện trước A2 và B2.

Xác minh khóa (A3 và B3) (tùy chọn)

A thực hiện các bước sau (A3):

– Tính oA = H(hex(03) II GE2OSx(wA) II GE2OSx(wB) II GE2OSx(z) II GE2OSX(g1)) và

– Chuyển oA cho B.

B thực hiện các bước sau (B3):

– Nhận oA từ A.

– Tính o’A = H(hex(03) II GE2OSx(wA) II GE2OSx(wB) II GE2OSx(z) II GE2OSX(g1)) và

– Nếu oA ¹ o’A thì đầu ra là “không hợp lệ”, quá trình dừng lại.

Xác minh khóa (B4 và A4) (tùy chọn)

B thực hiện các bước sau (B4):

– Tính oB = H(hex(04) II GE2OSx(wA) II GE2OSx(wB) II GE2OSx(z) II GE2OSX(g1)) và

– Chuyển oB cho A.

A thực hiện các bước sau (A4):

– Nhận oB từ B.

– Tính o’B= H(hex(04) II GE2OSx(wA) II GE2OSx(wB) II GE2OSx(z) II GE2OSX(g1)) và

– Nếu o¹ o’B thì đầu ra là “không hợp lệ”, quá trình dừng lại.

CHÚ THÍCH: Các thực thể A và B có thể tự do chọn A3 và B3 hoặc A4 và B4. Tuy nhiên B3 phải xut hiện sau A3 hoặc A4 phải xut hiện sau B4.

Hàm GE2OSX (chuyển nhóm phần tử thành chuỗi octet) được mô tả trong Phụ lục A.

CHÚ THÍCH: Phần tử nhóm trong cơ chế này là điểm trên đường cong E trong cấu hình EC, hoặc một số nguyên trong dãy [1, q – 1] thuộc cấu hình DL.

6.2. Cơ chế thỏa thuận khóa 2

Đây là cơ chế tha thuận khóa được thiết kế theo thỏa thuận khóa được xác thực bng mật khẩu tăng cường, trong đó thiết lập một hay nhiều khóa bí mật dùng chung giữa hai thực thể A và B với việc kiểm soát khóa kết nối. Trong cơ chế này, A có chuỗi octet dựa trên mật khẩu p và B có dữ liệu xác minh mật khv tương ứng với p. Cơ chế này cung cấp thỏa thuận khóa tường minh một chiều và tùy chọn xác nhận khóa hai chiều.

Cơ chế này làm việc trên cấu hình DL.

CHÚ THÍCH 1: Trong ứng dụng sử dụng thỏa thuận khóa được xác thực bằng mt khu tăng cường, A đóng vai trò máy trạm và B đóng vai trò máy chủ.

CHÚ THÍCH 2: Cơ chế này dựa trên [Wu02] và cơ chế được gọi là DLAPKAS-SRP6 trong [IEEEP1363.2].

6.2.1. Tham số được chia sẻ trước

Thỏa thuận khóa giữa hai thực th A và B diễn ra trong một môi trường bao gồm các tham số sau:

– Tập các tham số miền DL, bao gồm gq-1 và q, xác định trong Điều 5.

– Chuỗi octet dựa trên mật khẩu p, sử dụng bi A.

– Phần tử xác minh mật khẩu v = J(p) sử dụng bi B, trong đó là hàm dẫn xuất phần tử xác minh mật khu.

– Hàm tạo thẻ khóa D, sử dụng bi A.

– Hàm tạo thẻ khóa được làm rối bằng mật khẩu C, sử dụng bi B.

– Hai hàm dẫn xuất giá trị bí mật, VA và VB tương ứng với từng thực thể.

– Hàm dẫn xut khóa, K.

– Một hoặc nhiều chuỗi octet tham số dẫn xuất khóa {P1, P2, …}, trong đó A và B phải tha thuận cùng sử dụng giá trị Pi.

– Số nguyên c sao cho c = (BS2l(H(l2OS(gq  1II l2OS(q))) mod q.

– Độ dài của khóa bí mật dùng chung LK.

Hàm BS2I (chuyển chuỗi bit thành số nguyên) và I2OS (chuyển số nguyên thành chuỗi octet) xác định trong Phụ lục A.

6.2.2. Các hàm

6.2.2.1. Hàm dẫn xuất phần tử xác minh mật khẩu J

Hàm dẫn xuất phần tử xác minh mật khẩu J hoạt động trên chuỗi octet dựa trên mật khẩu p làm đầu vào và tạo ra đầu ra là số nguyên J(p). Cơ chế thỏa thuận khóa 2 sử dụng hàm như sau:

– Cho trước tham số miền DL (bao gồm c gq-1 và q) và chuỗi octet dựa trên mật khẩu p làm đầu vào thì J được tính như sau:

J(p) = gq-1BS2I(H(p)) mod q.

Hàm BS2I (chuyển chuỗi bit thành số nguyên) được xác định trong phụ lục A.

6.2.2.2. Hàm tạo thẻ khóa D

Hàm tạo th khóa D lấy số nguyên x từ {1, …. q – 2} làm đầu vào và tạo ra đầu ra là số nguyên D(x). Cơ chế tha thuận khóa 2 sử dụng hàm D như sau:

– Cho trước tham số miền DL (bao gồm gq-1 và q) và đầu vào x từ {1,…,q – 2} thì D được tính như sau:

D(x) = gq-1x mod q.

6.2.2.3. Hàm tạo thẻ khóa được làm rối bằng mật khẩu C

Hàm tạo thẻ khóa được làm rối bằng mật khC hoạt động trên ba đầu vào: số nguyên c, số nguyên từ {1,…, q – 2} và đầu ra của hàm dẫn xuất phần tử xác minh mật khu v = J(p) và tạo ra đầu ra là số nguyên C(x, v, c). Cơ chế thỏa thuận khóa 2 s dụng hàm C như sau:

– Cho trước tham số miền DL (bao gồm cả gq-1 và q) và ba đầu vào: số nguyên cx từ {1,…,q – 2} và đầu ra v của hàm J, khi đó C được tính như sau:

C(x, v, c) = v * c + gq – 1x mod q.

6.2.2.4. Hàm dẫn xut giá trị mật VA và VB

1) Hàm dẫn xuất giá trị mật VA hoạt động trên sáu đu vào: số nguyên c, chuỗi octet dựa trên mật khẩu p, số nguyên xtừ {1,…,q-2}, số nguyên v là đầu ra của hàm dẫn xuất phần t xác minh mật khẩu J, số nguyên yA là đầu ra của hàm tạo thẻ khóa D, số nguyên yB là đầu ra của hàm tạo thẻ khóa được làm rối bằng mật khẩu C và tạo ra đầu ra là số nguyên VA(c, pxAv, yA, yB).

2) Hàm dẫn xuất giá trị mật VB hoạt động trên bốn đầu vào: số nguyên xB từ {1,…, q-2}, số nguyên v là đầu ra ca hàm dẫn xuất phần tử xác minh mật khẩu J, số nguyên yA là đầu ra của hàm tạo thẻ khóa D, số nguyên yB là đầu ra của hàm tạo thẻ khóa được làm rối bằng mật khẩu C và tạo ra đầu ra  số nguyên VB(xBvyA, yB).

3) VA và VB thỏa mãn điều kiện VA(c, pxAv, yA, yB) = VB(xBv, yA, yB).

Cơ chế thỏa mãn khóa 2 có thể sử dụng VA và VB theo sau:

1) Cho trước tham số miền DL (bao gồm gq-1 và q), số nguyên c, chuỗi octet dựa trên mật khp, số nguyên xA từ {1,…, q – 2}, đầu ra v của hàm J, đầu ra yA  của hàm D, đầu ra yB ca hàm C, khi đó VA được tính như sau:

– Tính u1 = BS2l(H(p)),

– Tính u2 = BS2l(H(I2OS(yAII l2OS(yB))) và

– Tính VA(c, p, xA, v, yA, yB) =  mod q.

2) Cho trước tham số miền DL (bao gồm gq-1 và q), số nguyên xB từ {1,…,q – 2}, đầu ra v của hàm J, đu ra yA của hàm D, đầu ra yB ca hàm C thì khi đó VB được tính như sau:

– Tính u = BS2l(H(l2OS(yA) II l2OS(yB))) và

– Tính VB (xB, v, yA,  yB) = mod q.

Hàm I2OS (chuyển số nguyên thành chuỗi octet) và BS2I (chuyển chuỗi bit thành số nguyên) được miêu tả trong Phụ lục A.

6.2.2.5. Hàm dẫn xuất khóa K

Hàm dẫn xuất khóa K tương tự như đã xác định trong Điều 6.1.2.5.

6.2.3. Thao tác tha thuận khóa

Cơ chế này yêu cầu cả hai A và B chấp nhận dãy bốn bước, từ A1 – A4 và B1 – B4 (các bước tương ứng với A và B). Các bước tùy chọn là A4 và B4.

Xây dựng thẻ khóa (A1)

A tiến hành các bước sau:

– Chọn số nguyên sA ngẫu nhiên từ {1,…, q – 2} là hệ số thẻ khóa.

– Tính wA = D(sA) là thẻ khóa.

– Chuyển wA cho B.

Xây dựng thẻ khóa được làm rối bằng mật khẩu (B1)

B tiến hành các bước sau:

– Nhận wA từ A.

– Kiểm tra nếu 1 < wA < q-1, nếu không đúng thì đầu ra là “không hp lệ”, quá trình dừng lại, nếu đúng thì tiếp tục,

– Chọn số nguyên sA ngẫu nhiên từ {1,…. q  2} là hệ số thẻ khóa.

– Tính wB = C(sBv, c) là thẻ khóa được làm rối bằng mật khẩu.

– Chuyển wA cho A.

Thu được khóa bí mật dùng chung (A2)

A tiến hành các bước sau:

Nhận wtừ B.

Kiểm tra nếu 1 wB < q-1, nếu không đúng thì đầu ra là “không hợp lệ”, quá trình dừng lại, nếu đúng thì tiếp tục,

– Tính z = VA (c, psAv, wA, wB) là giá trị thỏa thuận bí mật.

– Tính Ki = K (I2OS(z), Pi, LK) là khóa bí mật dùng chung cho từng tham số dẫn xuất khóa Pi.

Thu được khóa bí mật dùng chung (B2)

B tiến hành các bước sau:

– Tính z = VB (sBvwAwB) là giá trị tha thuận bí mật.

– Tính Ki = K(l2OS(z), Pi, LKlà khóa bí mật dùng chung cho từng tham số dẫn xuất khóa Pi.

Xác minh khóa (A3 và B3) (bắt buộc)

A thực hiện các bước sau (A3):

– Tính oA = H(hex(04) II I2OS(wAII I2OS(wBII I2OS(z) II I2OS(v)) và

– Chuyển oA cho B.

B thực hiện các bước sau (B3):

– Nhận oA từ A.

– Tính o’A = H(hex(04) II I2OS(wAII I2OS(wB) II I2OS(z) II I2OS(v)) 

– Nếu o¹ oA thì đầu ra là “không hợp lệ”, quá trình dừng lại.

Xác minh khóa (B4 và A4) (tùy chọn)

B thực hiện các bước sau (B4):

– Tính oB = H(hex(03) II I2OS(WAII I2OS(wBII I2OS(z) II I2OS(v)) và

– Chuyển oB cho A.

A thực hiện các bước sau (A4):

– Nhận oB từ B.

– Tính o’H(hex(03) II I2OS(WAII I2OS(wB) II I2OS(z) II I2OS(v)) và

– Nếu o¹ o’B thì đầu ra là “không hợp lệ”, quá trình dừng lại.

Hàm I2OS (chuyển số nguyên thành chuỗi octet) được miêu tả trong Phụ lục A.

CHÚ THÍCH: Thực thể B phải xác minh bằng chứng của thực thể A về khóa thỏa thuận trước khi nhận bất kỳ thông tin nào thu được từ khóa thỏa thuận. Do đó A3/B3 phải thực hiện trước A4/B4.

6.3. Cơ chế thỏa thuận khóa 3

Đây là cơ chế thỏa thuận khóa được thiết kế theo thỏa thuận khóa được xác thực bng mật khẩu tăng cường, trong đó thiết lập một hay nhiều khóa bí mật dùng chung giữa hai thực thể A và B với kiểm soát khóa kết nối. Trong cơ chế này, A có chuỗi octet dựa trên mật khp và B có dữ liệu xác minh mật khẩu v tương ứng với p. Cơ chế này cung cấp tha thuận khóa tường minh một chiều và tùy chọn xác nhận khóa hai chiều.

Cơ chế này làm việc được trên cu hình DL và cấu hình EC.

CHÚ THÍCH 1: Trong các ứng dụng sử dụng tha thuận khóa được xác thực bng mật khẩu tăng cường, thực th A phải đóng vai trò máy trạm và thc th B phải đóng vai trò máy chủ.

CHÚ THÍCH 2: Cơ chế này dựa trên [Kw00] và [Kw03] và cơ chế được gọi là {DL, EC}APKAS-AMP trong [IEEEP1363.2).

6.3.1. Tham số được chia s trước

Thỏa thuận khóa giữa hai thực thể A và B diễn ra trong một môi trường chứa các tham số sau:

– Chuỗi octet dựa trên mật khẩu p được sử dụng bi A.

– Tập các tham số miền hợp lệ (tham số miền DL hoặc tham số miền EC) xác định trong Điều 5.

– Phần t xác minh mật khẩu v = J(p) sử dụng bi B, trong đó J là hàm dẫn xuất phần tử xác minh mật khu.

– Hàm tạo thẻ khóa D, sử dụng bi A.

– Hàm tạo th khóa được làm rối bng mật khẩu C, được sử dụng bởi B.

– Hàm kiểm tra thẻ khóa T.

– Hai hàm dẫn xuất giá trị bí mật VA và VB tương ứng với từng thực thể.

– Hàm dẫn xut khóa K.

– Một hoặc nhiều chuỗi octet tham số dẫn xut khóa {P1P2,…}, trong đó A và B phải cùng chấp nhận sử dụng giá trị Pi.

– Độ dài của khóa bí mật dùng chung, LK.

6.3.2. Các hàm

6.3.2.1. Hàm dẫn xuất phần tử xác minh mật khẩu J

Hàm dẫn xut phần tử xác minh mật khly chuỗi octet dựa trên mật khẩu p làm đầu vào và tạo ra đầu ra là phần tử nhóm được chọn J(p) xác định trên F(q). Cơ chế thỏa thuận khóa 3 có   thể sử dụng một trong các hàm JDL và JEC sau:

– JDL thỏa mãn sao cho cơ chế sử dụng các tham số miền DL, tức là hoạt động trên nhóm phần tử nhân trên F(q). Cho trước các tham số miền DL (bao gồm g và q) và chuỗi octet dựa trên mật khẩu p thì JDL được tính như sau:

JDL(p) = g BS2I(H(p)) mod q.

– JEC thỏa mãn sao cho cơ chế sử dụng các tham số miền EC, tức là hoạt động trên nhóm phần tử cộng thuộc đường cong elliptic trên F(q). Cho trước các tham số miền EC (bao gồm G) và chuỗi octet dựa trên mật khẩu p thì JEC được tính như sau:

JEC(p) = [BS2l(H(p))] x G.

Hàm BS2I (chuyển chuỗi bit thành số nguyên) được xác định trong Phụ lục A.

6.3.2.2. Hàm tạo thẻ khóa D

Hàm tạo thẻ khóa D hoạt động trên số nguyên x từ {1,…, r – 1} làm đầu vào và tạo ra đầu ra là nhóm phần tử D(x) đã chọn. Cơ chế thỏa thuận khóa 3 có thể sử dụng một trong hai hàm DDL và DEC:

– DDL tương ứng với cơ chế sử dụng tham số miền DL, tức là hoạt động trên nhóm phần tử nhân xác định trên F(q). Cho trước tham số miền DL (bao gồm g và q) và đầu vào x từ {1,…, r – 1}, trong đó DDL tính như sau:

DDL(x) = gx mod q.

– DEC tương ứng với cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm phần tử cộng thuộc đường cong elliptic xác định trên F(q). Cho trước tham số miền EC (bao gồm G) và đầu vào x từ {1,…,  1}, trong đó DEC tính như sau:

DEC(x) = [x] x G.

6.3.2.3. Hàm tạo thẻ khóa được làm rối bằng mật khẩu C

Hàm tạo thẻ khóa được làm rối bằng mật khẩu C hoạt động trên ba đầu vào: số nguyên x từ {1,…,r-1} và đầu ra v (hoặc V) của hàm J và đầu ra y (hoặc Y) của hàm và tạo ra đầu ra là phần tử nhóm được chọn C(x, v, y). Cơ chế thỏa thuận khóa 3 có thể sử dụng một trong hai hàm CDL và CEC:

– CDL tương ứng với cơ chế sử dụng tham số miền DL, tức là hoạt động trên nhóm phần tử nhân xác định trên F(q). Cho trước tham số miền DL (bao gồm q) và ba đầu vào bao gồm: số nguyên x từ {1,…,r- 1} và đầu ra v ca hàm J, đầu ra y của hàm D, khi đó CDL được tính như sau:

– Tính e = BS2I(H(I2OS(1) II GE2OSX (y))),

– Tính CDL(x,v,y) = (v*ye)x mod q,

– Kiểm tra CDL(x,v,y) bằng 1 hoặc (q – 1) thì đầu ra  “không hợp lệ”, quá trình sẽ dừng lại. Nếu không thì CDL(x,v,y) là giá trị cần.

– CEC tương ứng với cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm phần tử cộng thuộc đường cong elliptic xác định trên F(q). Cho trước tham số miền EC và ba đầu vào: số nguyên x từ {1,…,r – 1} và đầu ra V của hàm J, đầu ra Y của hàm D, khi đó CEC tính như sau:

– Tính e = BS2I(H(I2OS(1) II GE2OSx (Y))),

– Tính CEC(x,V ,Y) =[x] x (V + [e] x Y),

– Kiểm tra nếu [4] x CEC(x, V, Y) = 0E thì đầu ra là “không hợp lệ”, quá trình sẽ dừng lại. Nếu không thì CEC(x,V,Y) là giá trị cần.

Hàm BS2I (chuyển chuỗi bit thành số nguyên) và hàm I2OS (chuyển số nguyên thành chuỗi octet)  hàm GE2OSx (chuyển phần tử nhóm thành chuỗi octet) được miêu tả trong Phụ lục A.

6.3.2.4. Hàm kiểm tra th khóa T

Hàm kiểm tra thẻ khóa T tương tự đã xác định trong Điều 6.1.2.3.

6.3.2.5. Hàm dẫn xuất giá trị mật VA và VB

1) Hàm dẫn xuất giá trị mật VA hoạt động trên bốn đầu vào: chuỗi octet dựa trên mật khẩu p, số nguyên xA từ {1,…,r-1}, yA(hoặc yA) của hàm D, số yB(hoặc YB) của hàm C và tạo ra đầu ra là phần tử nhóm VA(pxAyAyB)

2) Hàm dẫn xuất giá trị mật \/B hoạt động trên ba đầu vào: số nguyên xB từ {1,…, r-1}, yA(hoặc yA) của hàm D, số yB (hoặc YB) của hàm C và tạo ra đầu ra là phần tử nhóm VB(xB, yA, yB).

3) VA và Vtha mãn điều kiện VA(pxA, yA, yB) = VB(xB, yAyB).

Cơ chế thỏa thuận khóa 3 có thể sử dụng một trong hai hàm VA là: VADL và VAEC và s dụng một trong hai hàm vB là: VBDL và VBEC như sau:

1. VADL thỏa mãn cơ chế sử dụng tham số miền DL, tức là hoạt động trên  nhóm nhân trên F(q). Cho trước tham số miền DL (bao gồm r và q), chuỗi octet dựa trên mật khẩu p, số nguyên xA từ {1,…, r-1}, đầu ra yA từ {2,…, q-2}, đầu ra ytừ {2,…,q-2} thì khi đó VADL được tính như sau:

– Tính e = BS2I(H(I2OS(1) II GE2OSX (yA))),

– Tính d = BS2I(H(I2OS(2) II GE2OSX (yA) II GE2OSX (yB))).

– Tính u = (xA + d)/(xA * e + BS2l(H(p))) mod r,

– Tính VADL(pxA, yA, yB) = yBu mod q.

– Đầu ra VADL(p, xA, yA, yB).

2. VBDL thỏa mãn cơ chế sử dụng tham số miền DL, tức là hoạt động trên nhóm nhân trên F(q). Cho trước tham số miền DL (bao gồm g và q), số nguyên xB từ {1,…, r  1}, đầu ra yA từ (2,…, q – 2}, đầu ra yB từ {2,…,q – 2} thì khi đó VBDL được tính như sau:

– Tính d = BS2I(H(I2OS(2) II GE2OSX (YA) II GE2OSx (yB))).

– Tính VBDL(xB, yA, yB=  mod q.

– Đầu ra VBDL(xB,yA,yB)

3. VAEC thỏa mãn cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm cộng thuộc đường cong elliptic trên F(q). Cho trước tham số miền EC (bao gồm r), chuỗi octet dựa trên mật khẩu p, số nguyên xA từ {1,…,r- 1}, điểm YA (¹0E) trên E, đầu ra YB (¹0E) trên E thì khi đó VAEC được tính như sau:

– Tính e = BS2I(H(I2OS(1) II GE2OS(YA))),

– Tính d = BS2I(H(I2OS(2) II GE2OSx (YA) II GE2OSx (YB))),

– Tính u = (xA + d)/(xA * e + BS2l(H(p))) mod r,

– Tính VAEC (p, xA, YA, YB) = [u] x YB,

– Đầu ra VAEC(p, xA, YA, YB).

4. VBEC thỏa mãn cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm cộng thuộc đường cong elliptic trên F(q). Cho trước tham số miền EC (bao gồm cả G), số nguyên xB từ {1,… r-1}, điểm YA(¹0E) trên E, đầu ra YB (¹0E) trên E thì khi đó VBEC được tính như sau:

– Tính d = BS2I(H(I2OS(2) II GE2OSx (YA) II GE2OSX (YB)))

– Tính VBEC(xB, YA, YB) = [xB] x (YA + [d] x G),

– Đầu ra VBEC (xB, YAYB).

Hàm I2OS (chuyển số nguyên thành chuỗi octet) và BS2I (chuyển chuỗi bit thành số nguyên) và hàm GE2OSx (chuyển phần tử nhóm thành chuỗi octet) được miêu tả trong Phụ lục A.

6.3.2.6. Hàm dẫn xuất khóa K

Hàm dẫn xuất khóa K tương tự đã xác định trong Điều 6.1.2.5.

6.3.3. Thao tác tha thuận khóa

Cơ chế này yêu cầu cả hai A và B chấp nhận dãy bốn bước, từ A1 – A4 và B1 – B4 (các bước tương ứng với A và B). Các bước tùy chọn là A4 và B4.

Xây dựng thẻ khóa (A1)

A tiến hành các bước sau:

– Chọn số nguyên sA ngẫu nhiên từ {1,…, r- 1} là hệ số thẻ khóa.

– Tính wA = D(sA) là thẻ khóa.

 Chuyển wA cho B.

Xây dựng thẻ khóa được làm rối bằng mật khẩu (B1)

B tiến hành các bước sau:

– Nhận wA từ A.

– Kiểm tra tính hợp lệ của wA sử dụng T(wA): nếu T(wA) = 0, thì đầu ra là “không hợp lệ”, quá trình dừng lại, nếu khác thì tiếp tục,

– Chọn số nguyên sB ngẫu nhiên từ {1,…, r-1} làm hệ số thẻ khóa.

– Tính wB = C(sBv, wA) là thẻ khóa được làm rối bằng mật khẩu (nếu đầu ra hàm C là “không hợp lệ” thì quay lại tìm sB khác với giá trị thích hợp), sau đó.

– Chuyển wB cho A.

Thu được khóa bí mật dùng chung (A2)

A tiến hành các bước sau:

– Nhận wB từ B.

– Kiểm tra tính hợp lệ của wB sử dụng T(wB): nếu T(wB) = 0, thì đầu ra là “không hợp lệ”, quá trình dừng lại, nếu khác thì tiếp tục,

– Tính z = VA(psA, wA, wB) là giá trị tha thuận bí mật.

– Tính Ki = K(GE2OSx(z), Pi, Lk) là khóa bí mật dùng chung cho từng tham số dẫn xuất khóa Pi.

Thu được khóa bí mật dùng chung (B2)

B tiến hành các bước sau:

– Tính z = VB(sB, wA, wB) là giá trị tha thuận bí mật.

– Tính Ki = K(GE2OSx(z), Pi, Lk) là khóa bí mật dùng chung cho từng tham số dẫn xuất khóa Pi.

Xác minh khóa (A3 và B3) (bắt buộc)

A thực hiện các bước sau (A3):

– Tính oA = H(I2OS(4) II GE2OSx(wA) II GE2OSx(wB) II GE2OSx(z)) và

– Chuyển oA cho B.

B thực hiện các bước sau (B3):

–  Nhận oA từ A.

– Tính o’A = H(I2OS(4) II GE2OSx(wA) II GE2OSx(wBII GE2OSx(z)) và

– Nếu oA ¹o’A thì đầu ra là “không hợp lệ”, quá trình dừng lại.

Xác minh khóa (B4 và A4) (tùy chọn)

B thực hiện các bước sau (B4):

– Tính oB = H(I2OS(3) II GE2OSx(wA) II GE2OSx(wB) II GE2OSx(z)) và

– Chuyển oB cho A.

A thực hiện các bước sau (A4):

– Nhận oB từ B.

 – Tính o’B = H(I2OS(3) II GE2OSx(wA) II GE2OSx(wB) II GE2OSx(z)) và

 – Nếu oB ¹ o’B thì đầu ra là “không hợp lệ”, quá trình dừng lại.

Hàm GE2OSx (chuyển phần tử nhóm thành chuỗi octet) xác định trong Phụ lục A.

CHÚ THÍCH 1: Phần tử nhóm trong cơ chế này là điểm trên đường cong E trong cấu hình EC, hoặc là số nguyên thuộc dãy [1, q – 1) trong cấu hình DL.

CHÚ THÍCH 2: Thực thể B phải xác minh bằng chứng ca thực thể A về khóa thỏa thuận trước khi nhận bất kỳ thông tin nào thu được từ khóa thỏa thuận. Do đó A3/B3 phải thực hiện trước B4/A4.

CHÚ THÍCH 3: Dựa trên kiểu tấn công phân tích Pohlig-Hellman, giá trị bí mật thấp nhất một hoặc hai bit của B là sB có thể bị nhận ra bi kẻ tấn công, khi k được chia cho 2 hoặc 4.

7. Lấy lại khóa được xác thực bằng mật khẩu

Điều này quy định cơ chế lấy lại khóa được xác thực bằng mật khẩu. Trong cơ chế, thực thể A có bí mật yếu dẫn xuất từ mật khẩu và thực thể còn lại B có bí mật mạnh liên kết với bí mật yếu của A. Sử dụng các bí mật tương ứng của mình, hai thực thể thương lượng một khóa bí mật, có thể lấy lại từ A nhưng không nhất thiết phải nhận từ B.

Kết quả của quá trình này là A có được giá trị của khóa bí mật được dẫn xuất từ bí mật yếu của A và bí mật mạnh ca B. Thực thể B không cần biết bí mật của A hoặc khóa bí mật nhận được. Bí mật của B liên kết với bí mật của A, nhưng (trong chính bản thân nó) không chứa đủ thông tin để cho phép xác định bí mật của A hoặc khóa bí mật đã thiết lập, ngay cả với tấn công vét cạn.

CHÚ THÍCH: Trong ứng dụng sử dụng lấy lại khóa được xác thực bằng mật khẩu, A đóng vai trò máy khách và B đóng vai trò máy chủ.

Thao tác lấy lại khóa được xác thực bằng mật khu được thực hiện tiếp theo sau quá trình khởi tạo và quá trình thiết lập khóa

Quá trình khi tạo: Hai thực thể tham gia đồng ý sử dụng tập các tham số miền hợp lệ và tập các hàm, tất cả đều được công khai. Thực thể A thiết lập một bí mật yếu dựa trên mật khẩu và thực thể còn lại B thiết lập một bí mật mạnh liên kết với bí mật yếu của A.

Quá trình thiết lập khóa:

1) Tạo và trao đổi thẻ khóa: Thực thể A lựa chọn một hệ số thẻ khóa, kiến tạo thẻ khóa được làm rối bằng mật khẩu và chuyển thẻ khóa đó cho thực thể B. Sau khi nhận được thẻ khóa được làm rối bng mật khẩu từ A, thực thể B kiến tạo một thẻ khóa và chuyển nó cho A.

2) Kiểm tra tính hợp lệ của thẻ khóa (tùy chọn): tùy thuộc vào các thao tác trong quá trình tạo ra thẻ khóa, từng thực thể liên quan lựa chọn một phương pháp thích hợp để chấp nhận các đóng góp khóa đã nhận và tham số miền. Nếu bất kỳ chấp nhn nào thất bại, đầu ra sẽ là “không hợp lệ” và chấm dứt quá trình.

3) Thu được khóa bí mật dùng chung: A áp dụng các thao tác giải mã trên chính hệ số thẻ khóa ca A và thẻ khóa của B để tạo ra được giá trị bí mật và có thể áp dụng thêm một hàm dẫn xuất khóa với giá trị bí mt và một hoặc nhiều tham số dẫn xuất khóa để thu được một hoặc nhiều khóa bí mt dùng chung.

7.1. Cơ chế lấy lại khóa 1

Cơ chế lấy lại khóa này được thiết lập giống khi lấy lại khóa được xác thực bằng mật khẩu. Nó sử dụng mật khẩu được dẫn xuất từ bên khởi tạo cho các dạng thay đổi của thỏa thuận khóa Diffie- Hellma. Thực thể B xác định khóa và phân phối nó cho A.

Cơ chế làm việc trên cả cấu hình DL và cấu hình EC.

CHÚ THÍCH: Cơ chế dựa trên [FK00] và cơ chế được gọi là {DL,EC}PKRS-1 trong [IEEEP1363.2].

7.1.1. Tham số được chia s trước

Thao tác lấy lại khóa yêu cầu hai thực thể A và B thực hiện trong môi trường bao gồm các tham số:

– Tập các tham số miền hợp lệ (tham số miền DL hoặc tham số miền EC) xác định trong Điều 5.

– Chuỗi octet dựa trên mật khp chỉ A biết.

– Số nguyên bí mật sB trong {1,…, r – 1} được sử dụng cho hệ số thẻ khóa của B và chỉ B biết.

– Hàm dẫn xuất phần tử ngẫu nhiên R, sử dụng bởi A.

– Hàm tạo thẻ khóa D, sử dụng bi cả A và B.

– Hàm kiểm tra th khóa, T.

– Hàm dẫn xuất giá trị bí mật V, sử dụng bi A.

– Hàm dẫn xuất khóa K, sử dụng bi A.

– Một hoặc nhiều chuỗi octet tham s dẫn xuất khóa {P1P2,…},

– Độ dài của khóa bí mật, LK.

7.1.2. Các hàm

7.1.2.1. Hàm dẫn xuất phần tử ngẫu nhiên R

Đây là các hàm R1DL hoặc R1EC đã được xác định trong Điều 6.1.2.1.

7.1.2.2. Hàm tạo thẻ khóa D

Hàm tạo thẻ khóa D giống như quy định trong Điều 6.1.2.2.

7.1.2.3. Hàm kiểm tra thẻ khóa T

Hàm kiểm tra thẻ khóa T giống như quy định trong Điều 6.1.2.3.

7.1.2.4. Hàm dẫn xuất giá trị bí mật V

Hàm dẫn xuất giá trị bí mật V lấy số nguyên x và phần tử nhóm được chọn y làm đầu vào và tạo ra đầu ra là phần tử nhóm V(x, y). Cơ chế lấy lại khóa 1 sử dụng một trong hai hàm V sau: VDL và VEC.

– VDL thích hợp với cơ chế sử dụng tham số miền DL, tức là hoạt động trên nhóm phần tử nhân xác định trên F(q). Cho trước tham số miền DL (bao gồm và q), hai đầu vào: x từ {1,…,r-1} và y từ {2,…,q-2}, khi đó VDL được tính như sau:

VDL(x,y) =  mod q.

– VEC thích hợp với cơ chế sử dụng tham số miền EC, tức là hoạt động trên nhóm phần tử cộng thuộc đường cong elliptic xác định trên F(q). Cho trước tham số miền EC (bao gồm r), hai đầu vào: x từ {1,… ,r-1} và điểm Y ¹ 0E, khi đó VEC được tính như sau:

VEC(x, Y) = [x-1 mod r] x Y.

7.1.2.5. Hàm dẫn xuất khóa K

Đây là hàm giống như hàm đã quy định trong Điều 6.1.2.5.

7.1.3. Thao tác lấy lại khóa

Cơ chế này yêu cầu thực thể A phải thực hiện hai bước A1 và A2, còn thực thể B thực hiện 1 bước B1.

Xây dựng thẻ khóa (A1)

A thực hiện các bưc sau:

– Tính g1 = R(p) làm phần tử cơ sở của thẻ khóa,

– Chọn ngẫu nhiên sA từ {1,…,r – 1} làm hệ số thẻ khóa,

– Thẻ khóa là wA = D(sA, g1)

– Gửi wA cho thực thể B.

Xây dựng thẻ khóa (B1)

B thực hiện các bước sau:

– Nhận wA từ thực thể A,

– Kiểm tra tính hợp lệ của wA với T(wA): nếu T(wA) = 0 thì đầu ra “không hợp lệ”, quá trình dừng lại, nếu khác thì tiếp tục,

– Thẻ khóa là wB = D(sB, wA)

– Gửi wB cho thực thể A.

Dn xuất khóa bí mật (A2)

A thực hiện các bước sau:

– Nhận được wB từ thực thể B.

– Kiểm tra tính hợp lệ của wB với T(wB): nếu T(wB) = 0 thì đầu ra “không hợp lệ”, quá trình dừng lại, nếu khác thì tiếp tục,

 – Tính z = V(sAwB) là mã hóa cứng.

– Tính khóa bí mt K= K(GE2OSx(z), Pi, Lk) cho từng chuỗi octet tham số dẫn xuất khóa Pi trong {P1, P2,…}

Hàm GE2OSx (chuyển phần tử nhóm thành chuỗi octet) được xác định trong Phụ lục A.

CHÚ THÍCH 1: Phần tử nhóm trong cơ chế này là điểm thuộc đường cong E trong cấu hình EC, hoặc là số nguyên thuộc dãy [1, q – 1] trong cấu hình DL.

CHÚ THÍCH 2: Dựa trên kiểu tn công phân tích Pohlig-Hellman, một hoặc hai bit thấp nhất ca giá trị bí mật sB của thực thể B có thể bị nhận ra bi người tấn công, khi k chia hết cho 2 hoặc 4.

 

Phụ lục A

(quy định)

Hàm chuyển đổi kiểu dữ liệu

Phụ lục này quy định hàm chuyển đổi kiểu dữ liệu được sử dụng bi các cơ chế thiết lập khóa trong tiêu chuẩn này.

A.1 I2OS & OS2I

Mục này quy định hàm I2OS (chuyển đổi số nguyên thành chuỗi octet) và OS2I (chuyển đổi chuỗi octet thành số nguyên).

Hàm I2OS lấy đầu vào là số nguyên không âm x và tạo ra đầu ra duy nhất là chuỗi octet Ml-1, Ml-2…M0 với chiều dài l. Trong đó l = [log256(x + 1)] là chiều dài của tính bằng octet. Khi đó I2Ođược tính như sau:

1. Viết x dưới dạng biểu diễn chuỗi đơn chữ s 256 bit:

x = xl-1 256 l-1  + xl-2256 l-2 + … + x1 256 + x0,

trong đó 0 ≤ xi < 256.

2. Giả s octet Mi có giá trị xi với 0 ≤ i  l – 1.

3. Đầu ra sẽ là chuỗi octet Ml-1, Ml-2,… M0.

Cho ví dụ: l2OS(10945) = 2A C1.

Hàm OS2I lấy chuỗi octet Ml-1Ml-2 …M0 làm đầu vào và tạo ra đầu ra là một số nguyên không âm y. Hàm được tính như sau:

1. Lấy số nguyên yi  có giá tr của octet Mi với 0 ≤ i ≤  1.

2. Tính số nguyên y = yl-1256 l-1 + yl-2256 l-2 + … + y1 256 + y0.

3. Đầu ra là y.

Cho ví dụ: OS2l(2A C1) = 10945.

Chú ý rng chuỗi octet có chiều dài bằng 0 (chuỗi octet rỗng) chuyển thành s nguyên 0 và ngược lại.

A.2 BS2I

Mục này xác định hàm BS2I (chuyển chuỗi bit thành số nguyên):

Hàm BS2I sử dụng chuỗi bit bl-1 bl-2 …b0 làm đầu vào và tạo ra đầu ra là số nguyên không âm. Hàm được tính như sau:

1. Lấy số nguyên yi có giá trị của bit bi với 0 ≤ i ≤ l  1.

2. Tính số nguyên y = yl-2l-1 + yl-2 2 l-2 + … + y1 2 + y0.

3. Đầu ra là y.

Ví dụ: nếu = 19, BS2l(000 0010 1010 1100 0001) = 10945.

Chú ý rằng chuỗi bit có độ dài bng 0 (chuỗi bit rỗng) thì sẽ chuyển thành số nguyên 0.

A.3 FE2I & I2FE

Mục này xác định hàm FE2I (chuyển phần tử trường thành số nguyên) và hàm I2FE (chuyển số nguyên thành phần tử trường).

Lấy một phần t thuộc trường hữu hạn F(sm) (trong đó s hoặc là p hoặc là 2) được biểu diễn bởi dãy {βm-1, βm-2, …. β0} trong đó βi là số nguyên thỏa mãn 0 ≤ βi ≤ s – 1.

Hàm FE2I sử đụng phần tử trường {βm-1, βm-2, …. β0} làm đầu vào và đu ra là số nguyên không âm. Hàm được xác định như sau:

1. Lấy số nguyên yi có giá trị cβi với 0 ≤ i  m  1.

2. Tính số nguyên y = ym-1m-1 + ym-2 m-2 + … + y1 s + y0.

3. Đầu ra là y.

Hàm I2FE lấy số nguyên không âm x làm đầu vào và đầu ra là trường phần tử {βm-1, βm-2, …. β0}. Hàm được xác định như sau:

1. Viết x dưới dạng dãy s với m chữ số và được biểu diễn như sau:

x = xm-m-1 + xm-2 m2 + … + x1s + x0

trong đó 0 ≤ xi < s (chú ý rằng một hoặc nhiều số đầu bằng 0 nếu x < sm1).

2. Lấy βi có giá trị xi với 0 ≤ i ≤ m – 1.

3. Đầu ra là {βm-1, βm-2, …. β0}

A.4 FE2OS

Mục này xác định hàm FE2O(chuyển phần tử trường thành chuỗi octet).

Hàm FE2OS sử dụng dãy phần tử {βm-1, βm-2, …. β0} làm đầu vào và tạo ra đu ra  chuỗi octet y. Hàm được xác định như sau:

1. Chuyển dãy {βm-1, βm-2, …. β0} thành số nguyên bằng hàm FE2I.

2. Chuyển x thành chuỗi octet y bằng hàm I2OS.

A.5 GE2OSx

Mục này xác định hàm GE2OS(chuyển phần tử nhóm thành chuỗi octet).

Hàm GE2OSx sử dụng phần tử nhóm làm đầu vào và tạo ra đầu ra là chuỗi octet. Hàm được định nghĩa như sau:

Trong cấu hình DL, phần tử nhóm là phần tử trong F(q). Cho u là một phần tử nhóm, đầu ra sẽ là GE2OSx(u):

1. Biểu diễn u dưới dạng phần tử trường.

2. Chuyển kết quả của bước (1) thành chuỗi octet bằng hàm FE2OS.

3. Đầu ra là kết quả của bước (2).

Trong cu hình EC, phần tử nhóm là điểm trên đường cong elliptic E. Cho Q = (xQ, yQ) là một điểm trên E, trong đó xQ là hoành độ x của Q và yQ là tung độ y của Q; và c hai xQ và yQ đều trong F(q). Với mục đích của cơ chế quy định trong tiêu chuẩn này thì hàm GE2OSx(Q) chuyển hoành độ x của Q thành chuỗi octet và bỏ qua tung độ y của Q. Đầu ra của hàm GE2OSx(Q) xác định như sau:

1. Biểu diễn xQ dưới dạng phần tử trường.

2. Chuyển kết quả của bước (1) thành chuỗi octet bng hàm FE2OS.

3. Đầu ra là kết quả của bước (2).

CHÚ THÍCH: Phép chuyển đổi không phải là ánh xạ 1 – 1. Ví dụ: phép chuyển đổi trên sẽ liên kết các điểm đường cong elliptic  -Q với cùng một chuỗi octet.

A.6 I2P

Mục này xác định hàm I2P (chuyển số nguyên thành điểm).

Cho trước tập tham số miền EC là (E, q, p, m, r, k, a1, a2), hàm I2P lấy số nguyên u làm đầu vào và tạo ra đầu ra là điểm T thuộc đường cong E trên F(q), trong đó T = l2P(u). Trong những quy định dưới đây, các toán tử cộng và nhân giữa các phần tử trường hữu hạn theo quy định trong ISO/IEC 15946-1.

1. Thiết lập v = BS2I(H(I2OS(u))) mod q.

– Nếu v = 0, đầu ra là “không hợp lệ”, quá trình dừng lại.

2. Thiết lập l = u mod 2.

3. Nếu q là số nguyên tố (q = p) và đường cong E là Y2 = X3 + a1X + a2 thuộc F(q). Điểm T được xác định như sau:

(a) Thiết lập x = v.

(b) Tính toán trường phần tử a = x3 + a1x + a2 mod p.

– Nếu a = 0, đầu ra là “không hợp lệ” quá trình phi ngừng lại.

(c) Tìm căn bậc hai β của a mod p (tức là một số nguyên β với 0 < β p sao cho β2 = a mod p) hoặc chứng minh không tồn tại căn bậc hai,

– Để kiểm tra tính tồn tại của căn bậc hai, tính d = a(p1)/2 mod p. Nếu thu được d = 1, thì β tồn tại. Ngược lại thì β không tồn tại.

– Nếu d ¹ 1 ta lập lại bước 1 với u = u + 1 mod p.

– Nếu d = 1, thì tìm β.

CHÚ THÍCH: Các thao tác tìm phần tử trường β sao cho β2 = a mod p được quy định trong [ANSI X9.62] và [IEEE P1363].

(d) Thiết lập y = (p  1)l x β.

(e) Thiết lập điểm T = (x, y) là đầu ra.

4. Nếu q là chẵn (q = 2m) và đường cong E là Y2 + XY = X3 + a1X2 + a2 trên F(2m). Điểm T được xác định như sau:

(a) Thiết lập x = l2FE(v).

(b) Thiết lập a = x + a1 + a2x (-2) trong F(2m).

(c) Tìm phần tử trường β sao cho β2 + β º a trong F(2m) hoặc xác minh rng không tồn tại. Nếu không tồn tại thì cho u = u + 1 mod q và quay lại bước 1.

CHÚ THÍCH: Các thao tác xác minh tồn tại và tìm phần tử trường β sao cho β2 + β  = a trong F(2m) được quy định trong [ANSI X9.62] và [IEEE P1363].

(d) Thiết lập y = (β + I2FE(l)) x x.

(e) Thiết lập điểm T = (x, y) làm đầu ra.

 

Phụ lục B

(quy định)

Mô đun ASN.1

Sau đây là các mô đun ASN.1 dành cho các cơ chế quản lý khóa được quy định trong tiêu chuẩn này.

 

Phụ lục C

(tham khảo)

Hướng dẫn lựa chọn tham số

Sau đây là hướng dẫn lựa chọn tham số cho các cơ chế quản lý khóa trong tiêu chuẩn này.

C.1 Tham số q, r và k

Như đã đề cập tại Điều 4, tiêu chuẩn này ch xử lý trường số nguyên tố F(q) hoặc trường nh phân F(2m) trong cấu hình EC và ch xử lý trường số nguyên tố trong cấu hình DL, bi vì các trường hợp này được sử dụng khá rộng rãi và các đặc tính bảo mật của chúng rất tốt.

Trong cấu hình DL, được kiến nghị rằng:

– q là số nguyên tố lớn, với độ lớn ít nhất là 1024 bit.

– r là ước số nguyên tố lớn ca q-1, với độ lớn ít nhất là 160 bit.

– k = (q-1)/r. Để giảm độ phức tạp trong việc kiểm tra tính hợp lệ của thông điệp nhận được trong cơ chế thiết lập khóa được quy định trong tiêu chuẩn này, yêu cầu thỏa mãn k = 2p1p2… pt, với số nguyên tố pi > r, i = 1, 2,…, t. Tùy chọn k = 2, trong trường hợp này, q = 2r + 1 là số nguyên tố an toàn.

Trong cấu hình EC, được kiến nghị rằng:

– Trong trường số nguyên tố F(q) thì q là số nguyên tố lớn; trong trường số nhị phân F(2m) thì q là 2m , trong đó m ≥ 1 là số nguyên dương.

– r là ước số nguyên tố lớn #E, với độ lớn ít nhất là 160 bit.

– k = #E/r. Để giảm độ phức tạp trong việc kiểm tra tính hợp lệ của thông điệp nhận được trong cơ chế thiết lập khóa được quy định trong tiêu chuẩn này, yêu cầu thỏa mãn k = 2np1 p2 … pt trong đó n = {0, 1, 2}, với số nguyên tố pi > r, i = 1, 2, …, t. Tùy chọn k = 2n.

CHÚ THÍCH: Thông tin chung về đường cong elliptic trên F(q) có thể tìm thấy trong ISO/IEC 15946-1.

C.2 Tham số trong cơ chế lấy lại khóa 1

Điều quan trọng trong cơ chế lấy lại khóa 1 quy định tại Điều 7.1, là cung cấp cơ chế tiên đoán Static Diffie-Hellman (SDH) cho kẻ tấn công đã bị khai thác trong tn công SDH ca [BG04]. Kiểu tấn công này ci thiện đáng kể khả năng của kẻ tấn công nhằm biết được khóa bí mật x của SDH, trước đó đã được chấp nhận truy cập vào th cung cấp gx cho giá trị g. Trong trường hợp “tối ưu”, lực ngoại tuyến của kẻ tấn công là nhỏ nhất, lực này là giảm từ r1/2 xuống r1/3, trong đó r là số bậc của phần tử g.

Tuy nhiên, trong trường hợp “tối ưu” này sử dụng kiểu tấn công SDHP sẽ đòi hỏi tới r1/3 thẻ truy vấn, điều này xem như là không thực tế và đặc biệt là không thực tế đối với phương pháp dùng mật khẩu. Vì vậy, kết quả mới này có nghĩa hay không phụ thuộc vào các tham số miền và cách mà sơ đ này được sử dụng.

Có một số cách lựa chọn giá trị r để tránh kiểu tấn công SDH:

1. Giá trị r được chọn sao cho không tồn tại nghiệm của phương trình r = uv +1 với các nh chất 1 ≤ u < a và 1 ≤ v < b, trong đó a và là các số nguyên nh nhất sao cho lũy thừa a/2 và dẫn chứng b ca cơ chế là được coi không thể tính toán được.

2. Sử dụng nhóm lớn hơn, ví dụ kích thước cr là 240 bit thay vì chỉ lớn hơn 160 bit.

3. Đm bảo rng (r – 1) không có ước số trong khoảng [C, r 1/2] Tại điểm cuối thấp nhất, C là giá trị nhỏ “cắt rời”. Tại điểm cuối cao nhất, r1/2 là hầu như bị phá hủy, nhưng lại dễ nhớ. Khi giá trị (r – 1) không có ước số trong phạm vi này, các cuộc tấn công mới không lợi thế hơn các phương pháp trước đó. Gợi ý là (r – 1)/2 là một số nguyên tố. Chú ý rng điều này khác với trường hợp k = 2 trong cu hình DL.

 

TÀI LIỆU THAM KHẢO

[1] [ANSI X9.62] American National Standards Institute. Public key cryptography for the financial services industry: the elliptic curve digital signature algorithm. ANSI X9.62:1998,January 1999. (ANSI X9.62 của Viện Tiêu chuẩn quốc gia Mỹ. Mật mã hóa khóa công khai cho ngành dịch vụ tài chính: thuật toán ký số đường cong elliptic).

[2] [BG04] D. Brown and R. Gallant, The Static Diffie-Hellman Problem. Cryptology ePrint Archive: Report 2004/306, 15 Nov 2004. (Báo cáo về các cơ chế tiên đoán Static Diffie- Hellman).

[3] [FK00] W. Ford and B. Kaliski. Server-assisted generation of a strong secret from a password. In the Proceedings of the IEEE 9th International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, pp 176 – 180, IEEE, June 2000. (Việc tạo bảo mật mạnh từ mật khẩu trợ giúp cho máy chủ. Báo cáo trong hội thảo quốc tế IEEE lần thứ 9).

[4] [IEEEP1363] IEEE P1363. Standard for public key cryptography, 2000. (Chun về mật mã hóa khóa công khai).

[5] [IEEEP1363a] IEEE 1363A-2004: Standard Specifications For Public Key Cryptography – Amendment 1: Additional Techniques. (Các đặc t cho mật mã hóa khóa công khai – Bổ sung 1: Các kỹ thuật bổ sung).

[6] [IEEEP1363.2] IEEE P1363.2/D21:2005-07-17. Standard specifications for password-based public key cryptographic techniques. (Các đặc tả cho các kỹ thuật mật mã hóa khóa công khai dựa trên mật khẩu).

[7] [ISO/IEC 9796-3:2000] ISO/IEC 9796-3:2000, Information technology – Security techniques – Digital signature schemes giving message recovery – Part 3: Discrete logarithm based mechanisms. (Công nghệ thông tin – Kỹ thuật an ninh – Lược đồ chữ ký số để phục hồi thông điệp – Phần 3: Cơ chế dựa trên logarit rời rạc).

[8] [ISO/IEC 9798-3:1998] ISO/IEC 9798-3:1998, Information technology – Security techniques – Entity authentication – Part 3: Mechanisms using digital signature techniques. (Công nghệ thông tin – Kỹ thuật an ninh – Xác thực thực th – Phần 3: Cơ chế sử dụng kỹ thuật chữ ký số).

[9] [ISO/IEC 10118-1:2000] ISO/IEC 10118-1:2000, Information technology – Security techniques – Hash-functions – Part 1: General. (Công nghệ thông tin – Kỹ thuật an ninh – Hàm băm – Phn 1: Khái quát).

[10] [TCVN 7817-3:2007] TCVN 7817-3:2007 Công nghệ thông tin – Kỹ thuật mật mã – Quản lý khóa, phần 3: Các cơ chế sử dụng kỹ thuật không đối xứng.

[11] [ISO/IEC 15946-1:2002] ISO/IEC 15946-1:2002, Information technology – Security techniques – Cryptographic techniques based on elliptic curves – Part 1: General. (Công nghệ thông tin – Kỹ thuật an ninh – Kỹ thuật mật mã hóa dựa trên đường cong elliptic).

[12]  [ISO/IEC 15946-3:2002] ISO/IEC 15946-3:2002, Information technology – Security techniques – Cryptographic techniques based on elliptic curves – Part 3: Key establishment. (Công nghệ thông tin – Kỹ thuật an ninh – Kỹ thuật mật mã hóa dựa trên đường cong elliptic – Phẩn 3: Thiết lập khóa).

[13] [ISO/IEC 18031:2005] ISO/IEC 18031:2005, Information technology – Security techniques – Random bit generation. (Công nghệ thông tin – Kỹ thuật an ninh – Tạo bit ngẫu nhiên).

[14] [ISO/IEC 18032:2005] ISO/IEC 18032:2005, Information technology – Security techniques – Prime number generation. (Công nghệ thông tin – Kỹ thuật an ninh – Tạo số nguyên tố).

[15] [ISO/IEC 18033-1:2005] ISO/IEC 18033-1:2005, Information technology – Security techniques – Encryption algorithms – Part 1: General. (Công nghệ thông tin – Kỹ thuật an ninh – Thuật toán mã hóa – Phần 1: Khái quát).

[16] [ISO/IEC 18033-2] ISO/IEC 18033-2, Information technology – Security techniques – Encryption algorithms – Part 2: Asymmetric ciphers. (Công nghệ thông tin – Kỹ thuật an ninh Thuật toán mã hóa – Phần 3: Mật mã phi đối xứng).

[17] [Jab96] D. Jablon. Strong password-only authenticated key exchange. Computer Communication Review, ACM SIGCOMM, 26(5):5-26, October 1996. (Trao đổi khóa xác thực bằng mật khẩu mạnh).

[18] [Ka86] B. Kaliski. A pseudo random bit generator based on elliptic logarithms. In Advances in Cryptology -CRYPTO ’86, A. M. Odlyzko, Ed., vol. 263 of Lecture Notes in Computer Science, pp. 84-103, Springer-Verlag, 1987. (Bộ tạo bit giả ngẫu nhiên dựa trên thuật toán logarit elliptic).

[19] [Kw00) T. Kwon. Ultimate solution to authentication via memorable password. Submission to the IEEE P1363 study group for future PKC standards, May 30, 2000. (Giải pháp xác thực thông qua mật khẩu có thể nhớ).

[20] [Kw03] T. Kwon. Addendum to summary of AMP. Submission to the IEEE P1363 study group for future PKC standards, November 19, 2003. (Các phần b sung cho AMP).

[21] [MvV96] A. J. Menezes, PC. van Oorschot and S. A. Vanstone. Handbook of Applied Cryptography. CRC Press, 1996. (Hướng dẫn áp dụng mật mã hóa).

[22] [TC05] Q. Tang and C. Mitchell. On the security of some password-based key agreement schemes. Cryptology ePrint Archive: Report 2005/156. (Các vấn đề an ninh về lược đồ thỏa thuận khóa dựa trên mật khẩu).

[23] [Wu02] T. Wu. SRP-6: improvements and refinements to the secure remote password protocol. Submission to IEEE P1363 Working Group, October 29, 2002. (Tăng cường và tinh chỉnh cho các giao thc đm bảo mật khẩu từ xa).

 

MỤC LỤC

Lời nói đầu

Phạm vi áp dụng

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

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

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

Các yêu cầu

Thỏa thuận khóa được xác thực bằng mật khẩu

6.1 Cơ chế thỏa thuận khóa 1

6.2 Cơ chế thỏa thuận khóa 2

6.3 Cơ chế tha thuận khóa 3

Lấy lại khóa được xác thực bằng mật khu

7.1 Cơ chế lấy lại khóa 1

Phụ lục A

A.1 I2OS & OS2I

A.2 BS2I

A.3 FE2I & I2FE

A.4 FE2OS

A.5 GE2OSx

A.6 I2P

Phụ lục B

Phụ lục C

C.1 Tham số q, r và k

C.2 Tham số trong cơ chế lấy lại khóa 1

Tài liệu tham khảo

TIÊU CHUẨN QUỐC GIA TCVN 7817-4:2010 (ISO/IEC 11770-4:2006) VỀ CÔNG NGHỆ THÔNG TIN – KỸ THUẬT AN NINH QUẢN LÝ KHOÁ – PHẦN 4: CƠ CHẾ DỰA TRÊN BÍ MẬT YẾU
Số, ký hiệu văn bản TCVN7817-4:2010 Ngày hiệu lực 31/12/2010
Loại văn bản Tiêu chuẩn Việt Nam Ngày đăng công báo
Lĩnh vực Lĩnh vực khác
Ngày ban hành 31/12/2010
Cơ quan ban hành Bộ khoa học và công nghê
Tình trạng Còn hiệu lực

Các văn bản liên kết

Văn bản được hướng dẫn Văn bản hướng dẫn
Văn bản được hợp nhất Văn bản hợp nhất
Văn bản bị sửa đổi, bổ sung Văn bản sửa đổi, bổ sung
Văn bản bị đính chính Văn bản đính chính
Văn bản bị thay thế Văn bản thay thế
Văn bản được dẫn chiếu Văn bản căn cứ

Tải văn bản