Một số vấn đề về Tiêu chuẩn Yêu cầu an toàn cho Môđun Mật mã

13:44 | 23/06/2016

Trong lĩnh vực công nghệ thông tin, nhu cầu sử dụng các cơ chế mật mã để bảo vệ thông tin liên tục gia tăng. Tính an toàn và tin cậy của các cơ chế như vậy phụ thuộc trực tiếp vào các môđun mật mã, trong đó các cơ chế này được thực thi. Trước yêu cầu này, Tiêu chuẩn Quốc gia Việt Nam TCVN 11295:2016 ISO/IEC 19790:2012 “Công nghệ thông tin - Các kỹ thuật an toàn - Yêu cầu an toàn cho môđun mật mã” đã được công bố theo đề nghị của Ban Cơ yếu Chính phủ. Tiêu chuẩn này đã bước đầu đáp ứng cho công tác tiêu chuẩn, kiểm định, đánh giá trong lĩnh vực mật mã. Bài viết dưới đây sẽ phân tích một số vấn đề liên quan đến việc triển khai tiêu chuẩn mới này.

Tiêu chuẩn TCVN 11295 quy định các yêu cầu an toàn cho môđun mật mã được sử dụng để bảo vệ thông tin nhạy cảm trong các hệ thống viễn thông và máy tính. Tiêu chuẩn này xác định bốn mức an toàn cho các môđun mật mã để bảo vệ các loại dữ liệu có mức độ nhạy cảm khác nhau, trên nhiều môi trường ứng dụng với mỗi mức an toàn sau cao hơn so với mức an toàn trước đó. 

Tiêu chuẩn cũng quy định các yêu cầu an toàn được cụ thể hóa, hướng đến duy trì độ an toàn của môđun mật mã và việc tuân thủ theo tiêu chuẩn này là chưa đủ để đảm bảo rằng môđun cụ thể là an toàn hoặc độ an toàn cung cấp bởi môđun đó là đủ và chấp nhận được đối với chủ sở hữu thông tin mà nó đang được bảo vệ.



Về nội dung, Tiêu chuẩn cung cấp bốn mức định tính tăng dần của các yêu cầu an toàn nhằm bao quát một dải rộng các ứng dụng và các môi trường tiềm năng. Các kỹ thuật mật mã được xem xét như nhau cho cả bốn mức an toàn này. Các yêu cầu an toàn còn bao quát cả những lĩnh vực liên quan tới thiết kế và thực thi của môđun mật mã. Các lĩnh vực này bao gồm: đặc tả về môđun mật mã; các giao diện của môđun mật mã; các vai trò, dịch vụ và xác thực; an toàn phần mềm, phần sụn; môi trường hoạt động; an toàn vật lý; an toàn không xâm lấn; quản lý tham số an toàn nhạy cảm; các thủ tục tự kiểm tra; đảm bảo vòng đời; khả năng giảm thiểu một số tấn công khác. 

Tiêu chuẩn này hoàn toàn tương đương với tiêu chuẩn quốc tế ISO/IEC 19790 ban hành năm 2012. Nội dung chính của nó cũng tương đương với tiêu chuẩn FIPS140-2 do Mỹ ban hành năm 2002. Do FIPS140-2 đã được ban hành trong thời gian dài, việc nghiên cứu về tiêu chuẩn này đã được xem xét khá kỹ lưỡng, nên chúng ta có thể phân tích một số vấn đề khi triển khai thực tế liên quan đến TCVN 11295 dựa trên các nội dung, chương trình mà FIPS140 đã ban hành. Cụ thể, ở đây sẽ phân tích một số vấn đề liên quan đến ba chủ thể là: tổ chức phát triển sản phẩm, tổ chức kiểm định sản phẩm và cơ quan quản lý nhà nước.

Triển khai thực tế tiêu chuẩn Yêu cầu an toàn cho môđun Mật mã 

Đối với tổ chức phát triển sản phẩm

Việc áp dụng tiêu chuẩn TCVN 11295 làm chỉ tiêu chất lượng sẽ giúp nhà phát triển nghiên cứu, thiết kế được những sản phẩm mật mã đảm bảo chất lượng. Để đạt được chứng nhận theo Tiêu chuẩn này, các nhà phát triển sản phẩm cần lưu ý các vấn đề sau:

Thứ nhất, TCVN 11295 là tiêu chuẩn chỉ áp dụng riêng cho môđun mật mã chứ không phải toàn bộ sản phẩm. Các nhà thiết kế nội dung FIPS140-2 không đưa các mục nội dung yêu cầu đối với toàn bộ sản phẩm CNTT vào tiêu chuẩn của họ, vì vấn đề này “mặc định” được đánh giá bởi Tiêu chí chung CC (Common Criterial of Infomation Technology Security Evaluation) với nội dung khá đầy đủ và được ra đời trước đó (CC đã trở thành tiêu chuẩn ISO/IEC 15408 năm 1999; TCVN 8709 năm 2011). 

Tiêu chuẩn CC được dùng để đánh giá sản phẩm và hệ thống công nghệ thông tin, nội dung CC chia thành hai loại yêu cầu là: yêu cầu bảo đảm chất lượng và yêu cầu về chức năng. Trong đó, yêu cầu bảo đảm chất lượng bao gồm các nội dung từ giai đoạn phân tích rủi ro, đặc tả thiết kế, thực thi cho đến phân phối, triển khai, duy trì sản phẩm. Các yêu cầu bảo đảm cũng là cơ sở của 07 mức chất lượng theo quy định của CC. Các yêu cầu về mặt chức năng bao gồm toàn bộ chức năng của sản phẩm kể cả chức năng mật mã như thực hiện mã hoá, xác thực, toàn vẹn dữ liệu. Tuy nhiên, từ thời điểm ban hành đến nay, nội dung yêu cầu chức năng mật mã của CC không có các yêu cầu mang tính đặc thù nghiệp vụ mật mã, như môi trường triển khai, an toàn không xâm lấn, quản lý tham số bảo mật, an toàn vật lý.... Cho nên, FIPS 140-2 ban hành sau CC đã bổ sung các khuyết thiếu đó của CC và hoàn thiện nội dung để trở thành tiêu chuẩn chỉ áp dụng cho môđun mật mã. 

Chính vì tính bổ sung cho nhau nên một số nội dung của hai tiêu chuẩn nêu trên có sự tham chiếu lẫn nhau. Ở đây, nhà phát triển cần chú ý rằng, yêu cầu trong các mức chất lượng của hai tiêu chuẩn là khác nhau nên hai loại chứng nhận chất lượng là khác nhau và không thể tương đồng. Chứng nhận chất lượng sản phẩm của CC không thay thế cho chứng nhận chất lượng môđun mật mã thực thi an toàn của TCVN 11295 (hay FIPS140-2) và ngược lại. Bởi vậy, tổ chức phát triển sản phẩm muốn đạt được chứng nhận chất lượng cho toàn bộ sản phẩm thì chọn CC, còn trường hợp muốn chứng nhận chất lượng cho phần thực thi chức năng mật mã thì chọn TCVN 11295 để áp dụng. Một sản phẩm hoàn toàn có thể được đánh giá theo cả hai tiêu chuẩn để có cả hai loại chứng nhận. Bên cạnh đó, một sản phẩm có nhiều môđun mật mã có thể đạt chứng nhận TCVN 11925. 

Thứ hai, các nhà phát triển sản phẩm cần nắm vững khái niệm đối tượng “môđun mật mã” và “ranh giới mật mã” để thực thi đúng. Theo TCVN 11295 các khái niệm này được định nghĩa như sau:

“Môđun mật mã là một tập hợp phần cứng (hardware), phần mềm (software), phần sụn (firmware) hoặc một tổ hợp trong số đó thực thi ít nhất một dịch vụ mật mã được xác định sử dụng một chức năng an toàn, thuật toán mật mã đã được phê duyệt và được chứa bên trong một ranh giới mật mã xác định”

Môđun mật mã phải thực thi ít nhất một chức năng hay thuật toán đã được tổ chức có thẩm quyền phê duyệt, nếu không đạt yêu cầu đó thì không thể được cấp chứng nhận theo tiêu chuẩn này. Ngoài ra, TCVN 11295 cũng chỉ rõ các chức năng mật mã khác chưa được phê duyệt vẫn có thể được đưa vào sử dụng và hoạt động theo một chế độ “chưa được phê duyệt”. Tuy nhiên, người vận hành phải có khả năng xác định được việc chuyển đổi sang chế độ hoạt động đã được phê duyệt cho môđun mật mã. 

“Ranh giới mật mã là đường bao kín liên tục, xác định một cách rõ ràng, thiết lập các ranh giới logic và/hoặc vật lý của môđun mật mã và chứa tất cả các thành phần, phần cứng, phần mềm và hoặc phần sụn của mô đung mật mã”. Nếu môđun mật mã có các thành phần là phần mềm hoặc phần sụn thì ranh giới mật mã sẽ bao gồm bộ xử lý hoặc các phần cứng lưu trữ và bảo vệ các phần mềm, phần sụn đó (như bộ nhớ RAM, ROM hay Flash). Các phần cứng, phần mềm và phần sụn không được đưa vào ranh giới mật mã nếu chúng không ảnh hưởng đến tính an toàn của môđun mật mã.

Thứ ba là chọn mức an toàn, nếu môđun mật mã chỉ bao gồm phần mềm, thì cơ bản chỉ kiểm định được đến mức 2 của TCVN 11295, vì một số yêu cầu của mức 3 và 4 không dành cho môđun phần mềm như: an toàn vật lý, tự huỷ tham số mật mã khi có can thiệp vật lý vào môđun mật mã, chức năng xác thực cần thêm yếu tố vật lý hay sinh trắc học… (khi đó môđun mật mã phần mềm chỉ có thể đạt mức 3, 4 ở một số chỉ tiêu thành phần).

Đối với tổ chức kiểm định sản phẩm

Việc áp dụng tiêu chuẩn kiểm định TCVN 11295 sẽ giúp cho các đơn vị kiểm định sản phẩm mật mã trở nên chuyên nghiệp hơn. Tuy nhiên, nếu chỉ ban hành nội dung của tiêu chuẩn mà không ban hành kèm các tài liệu phương pháp kiểm định theo tiêu chuẩn thì sẽ gây ít nhiều khó khăn cho các đơn vị kiểm định. Điều đó cũng giống như cho đề bài thi mà không đưa đáp án chấm điểm cụ thể. Thông thường, một tiêu chuẩn kiểm định được ban hành sẽ đi kèm với một tài liệu có nội dung hướng dẫn phương pháp kiểm định theo tiêu chuẩn đó. Để kiểm định theo CC, nhà kiểm định cần phải nghiên cứu tài liệu Phương pháp kiểm định CEM đi kèm với CC. Còn để kiểm định theo FIPS140-2, thì các đơn vị kiểm định cần nghiên cứu tài liệu hướng dẫn kiểm định DTR Drive Test Requirement đi kèm với FIPS140-2. 

Đối với cơ quan quản lý 

Công tác quản lý chất lượng, đánh giá và cấp chứng nhận cho các sản phẩm mật mã là hết sức cần thiết để góp phần thực hiện quản lý nhà nước về mật mã, cũng như nâng cao độ tin cậy trong các sản phẩm và hệ thống bảo đảm an toàn thông tin ở Việt Nam. Ngoài ra, xu hướng hội nhập quốc tế và công nhận lẫn nhau giữa các Tổ chức cấp chứng nhận của các quốc gia cũng đòi hỏi chúng ta phải tuân thủ các quy định, tiêu chuẩn, quy chuẩn kỹ thuật theo yêu cầu. Với vai trò của cơ quan quản lý, có hai vấn đề cần xem xét:

Thứ nhất là việc chứng nhận năng lực của các tổ chức kiểm định, hay nói cách khác là chứng nhận về cơ sở vật chất và trình độ nhân lực của tổ chức kiểm định. Không phải đơn vị nào cũng có khả năng kiểm định về lĩnh vực mật mã. Nội dung TCVN 11295 đã đề cập chuyên sâu về lĩnh vực mật mã, nên năng lực của tổ chức kiểm định cũng cần đạt các tiêu chí tương ứng về nhân lực và cơ sở vật chất kỹ thuật. Để công nhận năng lực và chỉ định các đơn vị kiểm định về lĩnh vực mật mã, cơ quan quản lý có thể xem xét áp dụng các tiêu chuẩn đã được dùng trong chương trình kiểm định và cấp chứng nhận theo FIPS140-2, bao gồm: Handbook 150-2007 và Handbook 150-17-2008 của Viện tiêu chuẩn công nghệ quốc gia Mỹ (NIST); CAN-P-4E-2005-11-01, CAN-P-1591B-2006-11 và CAN-P-1621-2006-11 của Hội đồng tiêu chuẩn Canada (SCC). Ngoài ra, có thể xem xét áp dụng tiêu chuẩn ISO/IEC 17025 đối với các phòng LAB của đơn vị kiểm định.

Thứ haiviệc phê duyệt và công nhận các thuật toán mật mã, cũng như giải pháp nghiệp vụ mật mã để làm nền tảng cho công tác kiểm định theo TCVN 11295 có thể đi vào hoạt động là một công việc đòi hỏi nhiều thời gian nếu tiến hành theo hướng dẫn của FIPS140-2. Cụ thể, hai cơ quản quản lý là NIST và Cơ quan an toàn thông tin Canada (CSEC) đã thiết kế chương trình CAVP để phê duyệt các thuật toán mật mã sử dụng cho tiêu chuẩn FIPS140-2 (danh sách thuật toán được phê duyệt tại địa chỉ: http://csrc. nist.gov/groups/STM/cavp/). Trong đó, quy trình phê duyệt gồm có ba bên tham gia: bên cung cấp thuật toán, bên kiểm định thuật toán và bên quản lý thuật toán.
 
Quy trình đánh giá các thuật toán để được phê duyệt có nhiều bước, có thể tóm lược các bước chủ yếu như sau:

Bước 1: Bên cung cấp thuật toán gửi toàn bộ đặc tả thuật toán cho bên kiểm định.

Bước 2: Bên kiểm định độc lập thiết kế ra công cụ kiểm tra và các bộ kiểm tra thuật toán, tiến hành kiểm tra đồng thời gửi các bộ kiểm tra cho bên cung cấp thuật toán.

Bước 3: Bên cung cấp thuật toán dùng các bộ kiểm tra ở Bước 2 làm đầu vào cho công cụ kiểm tra của mình và gửi kết quả cho bên kiểm định. 

Bước 4: Bên kiểm định tiến hành so sánh hai kết quả thu được, nếu hai kết quả trùng khớp thì gửi thông tin chi tiết cho bên quản lý thuật toán để phê duyệt và đưa vào danh mục chuẩn.

Việc công bố công khai thông tin về danh mục thuật toán, giải pháp mật mã và chi tiết các kết quả kiểm tra sản phẩm sẽ giúp ích rất nhiều cho các nhà phát triển sản phẩm trong quá trình tích hợp các chức năng an toàn theo tiêu chuẩn. Đồng thời cũng giúp cho công tác quản lý chất lượng và kiểm định sản phẩm chặt chẽ hơn.

Kết luận

Có thể thấy rằng, việc xây dựng một tiêu chuẩn mật mã quốc gia dựa trên tiêu chuẩn quốc tế như TCVN 11295 là hoàn toàn phù hợp đối với các nước đang phát triển như Việt Nam. Tuy nhiên, để tiêu chuẩn quốc gia có thể áp dụng vào thực tế thì cần phải giải quyết các vấn đề về mặt kỹ thuật và quản lý. Việc đầu tư xây dựng tổ chức cấp chứng nhận, kiểm định trong lĩnh vực mật mã là nhu cầu cấp thiết để phục vụ cho công tác quản lý nhà nước về mật mã dân sự trong giai đoạn hiện nay.