Mô hình kiểm định và đánh giá mô đun mật mã CMVP
Các sản phẩm mật mã được công nhận là phù hợp với FIPS 140-2 theo CMVP sẽ được chấp thuận ở tất cả các cơ quan của chính phủ Mỹ và Canada, được sử dụng để bảo vệ thông tin nhạy cảm của các cơ quan này, thông qua việc kiểm định, đánh giá của các phòng thí nghiệm-CST (Cryptographic and Security Testing) đã được công nhận bởi Chương trình Công nhận các Phòng kiểm thử quốc gia (National Voluntary Laboratory Accreditation Program - NVLAP). Phiên bản mới nhất hiện nay của CMVP là 1.3 được phát hành vào ngày 7/3/2017.
Vai trò và trách nhiệm của các bên tham gia mô hình CMVP
Sơ đồ dưới đây mô tả 4 chủ thể tham gia vào CMVP [1], bao gồm: nhà cung cấp môđun mật mã, phòng thí nghiệm-CST, CMVP và người sử dụng.
Hình 1: Sơ đồ đối tượng tham gia mô hình CMVP
Nhà cung cấp: có vai trò thiết kế và sản xuất các môđun mật mã tuân thủ các yêu cầu được quy định trong FIPS 140-2 và một số tiêu chuẩn khác. Khi một môđun mật mã đã sẵn sàng để kiểm định, nhà cung cấp gửi môđun và tài liệu liên quan tới các CST đã được công nhận theo sự lựa chọn của nhà cung cấp.
Sau khi môđun mật mã được phê duyệt, nhà cung cấp không thể thay đổi phiên bản đã được phê duyệt của môđun. Bất kỳ sự thay đổi nào đối với phiên bản đã được phê duyệt sẽ tạo ra một môđun mới chưa được phê duyệt và cần phải tiến hành kiểm định lại trên môđun mới.
Phòng thí nghiệm-CST: có vai trò kiểm định, đánh giá môđun một cách độc lập theo mức độ an toàn của FIPS 140-2 và đưa ra báo cáo bằng văn bản cho các CMVP dựa trên các kết quả kiểm định. Nếu một môđun mật mã tuân thủ tất cả các yêu cầu của tiêu chuẩn FIPS 140-2, thì CST sẽ nộp một báo cáo bằng văn bản cho CMVP. Nếu một môđun mật mã không đáp ứng được một (hoặc nhiều hơn) yêu cầu, CST sẽ làm việc với nhà cung cấp để giải quyết tất cả các yêu cầu chưa được đáp ứng trước khi nộp bản báo cáo cho CMVP.
Cơ quan CMVP: có vai trò phê duyệt kết quả kiểm tra cho mỗi môđun mật mã. Các kết quả kiểm tra được ghi lại trong gói hồ sơ (do CST chuẩn bị) và được CMVP xem xét đánh giá. Nếu môđun được xác định là đáp ứng các yêu cầu ở một mức an toàn cụ thể theo FIPS 140-2, thì môđun này được công nhận là hợp lệ, một chứng chỉ phê duyệt sẽ được cấp và danh sách kiểm chứng trên trang chủ của NIST được cập nhật.
Trong quá trình xem xét, đánh giá, CMVP sẽ gửi bất kỳ câu hỏi nào đến CST. Các câu hỏi thường mang tính kỹ thuật, để đảm bảo môđun mật mã đáp ứng các yêu cầu của tiêu chuẩn FIPS 140-2 và thông tin được cung cấp là chính xác và đầy đủ.
Người sử dụng: lựa chọn một môđun mật mã mà họ đang cân nhắc mua sắm đáp ứng các yêu cầu của họ và đã được phê duyệt. Việc liệt kê các môđun mật mã phê duyệt được công bố tại trang chủ của NIST.
Quy trình công nhận CST trong mô hình CMVP
Các phòng thí nghiệm nộp đơn xin công nhận phải hoàn thành quy trình công nhận trong vòng một năm kể từ ngày nộp đơn. Các tiêu chí không hoàn thành trong vòng một năm sẽ được gửi lại và quá trình bắt đầu lại từ đầu. Sau khi các phòng thí nghiệm nộp đơn xin công nhận, CMVP sẽ sử dụng tài liệu Sổ tay NIST 150 và NIST 150-17 để làm tài liệu cơ sở cho quy trình công nhận [1]. Quy trình công nhận các CST bao gồm 5 bước cơ bản như sau:
Hình 2: Các bước trong quy trình công nhận các CST
Bước 1: Kiểm tra năng lực của CST
Một bài kiểm tra năng lực của CST được tiến hành bằng hình thức văn bản, bao gồm khoảng 30 câu hỏi liên quan đến các khía cạnh khác nhau của hoạt động CST, tiêu chuẩn FIPS 140-2.... Trong 7 ngày, CST sẽ làm bài kiểm tra và nhóm đánh giá sẽ xác định CST có đủ năng lực hay không.
Bước 2: Trắc nghiệm trình độ của nhân viên CST
Trước khi tiến hành đánh giá tại chỗ, nhóm đánh giá sẽ thực hiện cuộc phỏng vấn kiểm tra năng lực với tất cả nhân viên phòng thí nghiệm để xác định mức độ hiểu biết và đánh giá cách thức mà các nhân viên tương tác khi giải quyết vấn đề. Nhóm đánh giá sẽ đưa ra bài kiểm tra trắc nghiệm và nếu CST được thông qua, sẽ tiến hành bước đánh giá tại chỗ.
Bước 3: Đánh giá tại chỗ
Một đánh giá tại chỗ cho CST được tiến hành để xác định sự phù hợp của CST với các tiêu chuẩn kiểm định. Nhóm đánh giá sẽ tổ chức đánh giá tại chỗ sau khi nhận được khoản thanh toán và CST vượt qua bài kiểm tra năng lực. Việc thực hiện đánh giá thường mất từ 2 đến 3 ngày.
Bước 4: Thử nghiệm kiểm định môđun mật mã
Sau khi đánh giá tại chỗ, nhóm đánh giá sẽ để lại một môđun mật mã và yêu cầu CST kiểm định theo các chính sách của CMVP. Việc kiểm định phải hoàn thành trong vòng 3 tháng. Sau khi hoàn thành, CST phải nộp báo cáo kiểm định cho nhóm đánh giá để xem xét. Sau đó, nhóm sẽ đánh giá năng lực của CST.
Bước 5: Quyết định phê duyệt
Nhóm đánh giá sẽ đề nghị NVLAP chấp nhận hoặc từ chối việc công nhận đối với CST nộp đơn. NVLAP sẽ đánh giá báo cáo kết quả về CST, bao gồm tất cả những thiếu sót và những đáp ứng của CST CST, trước khi thực hiện phê duyệt cuối cùng.
Phương pháp và công cụ kiểm định, đánh giá của CST:
Kèm theo FIPS140-2, Bộ thương mại Hoa Kỳ đã phối hợp với NIST ban hành tài liệu “DTR for FIPS 140-2” (Derived Test Requirements for FIPS 140-2) [2]. Tài liệu này mô tả các phương pháp được các CST sử dụng để kiểm định các môđun mật mã và công nhận môđun mật mã đạt tiêu chuẩn tuân thủ các yêu cầu của FIPS 140-2. Tài liệu này bao gồm các thủ tục kiểm định và kiểm tra chi tiết mà người kiểm định phải thực hiện, các kết quả cần phải đạt được cho môđun mật mã, để đáp ứng các yêu cầu FIPS 140-2. Các phương pháp chi tiết này nhằm đảm bảo mức độ khách quan trong quá trình kiểm định và thống nhất tiêu chí kiểm định giữa các CST được công nhận.
Tài liệu này bao gồm 11 phần, tương ứng với 11 lĩnh vực về an toàn tương ứng của FIPS 140-2. Trong mỗi phần, các yêu cầu an toàn từ FIPS 140-2 được chia thành một tập hợp các xác nhận AS [2](Assertions, nghĩa là các AS phải đúng đối với môđun để đáp ứng yêu cầu an toàn của một lĩnh vực an toàn nhất định ở một mức an toàn cụ thể). Tất cả các AS đều được trích dẫn trực tiếp từ FIPS140-2.
Các công cụ kiểm định được cung cấp bởi NIST và CSE bao gồm CRYPTIK, công cụ kiểm định thuật toán mật mã (CAVS), các công cụ METRIX và tất cả các công cụ khác được phát triển bởi NIST và CSE và được sử dụng bởi CMVP [1]. Người kiểm định hoặc bất kỳ thành viên nào khác của CST sẽ không được phân phối các công cụ kiểm định (được cung cấp bởi NIST và CSE) cho bất kỳ thực thể nào bên ngoài CST.
Quy trình kiểm định, đánh giá môđun mật mã của CMVP
Hình 3: Quy trình kiểm định, đánh giá môđun mật mã của CMVP
Quy trình kiểm định, đánh giá môđun mật mã của CMVP bao gồm các bước cơ bản như sau:
Bước 1: Nhà cung cấp gửi môđun mật mã được yêu cầu kiểm định cho CST được công nhận theo hợp đồng. Kiểm định môđun mật mã được thực hiện bằng cách sử dụng các tài liệu “DTR for FIPS 140-2”, FIP 140-2 và các công cụ kiểm định, đánh giá đi kèm. Nếu CST có bất kỳ câu hỏi hoặc muốn làm rõ bất kỳ yêu cầu cụ thể liên quan đến môđun mật mã, CST có thể gửi yêu cầu tới NIST và CSE.
Bước 2: Khi CST hoàn thành tất cả các yêu cầu kiểm định, sẽ chuẩn bị một tài liệu đánh giá để báo cáo gửi cho CMVP.
Bước 3: CMVP sẽ chỉ định hai người đánh giá để thực hiện việc xem xét ban đầu các tài liệu báo cáo. Sau đó, nhóm đánh giá sẽ phối hợp với CST để giải quyết các nhận xét từ tài liệu.
Bước 4: Quá trình phối hợp giữa CST và CMVP sẽ tiếp tục cho đến khi tất cả các nhận xét hoặc các câu hỏi đã được giải quyết một cách thỏa đáng thì việc đánh giá được hoàn tất.
Bước 5: Khi môđun mật mã được phê duyệt, thông tin phê duyệt sẽ được cập nhật vào danh sách môđun mật mã được phê duyệt theo FIPS 140-2 tại trang chủ của NIST.
Tương ứng với 5 bước thực hiện là 5 giai đoạn của một môđun mật mã trong quá trình kiểm định, đánh giá bao gồm: tiền kiểm định, thực hiện kiểm định, đánh giá, phối hợp, hoàn tất đánh giá và cấp chứng chỉ. Quá trình kiểm định, đánh giá theo FIPS 140-2 là một quá trình lặp.
Khi kết thúc quá trình phê duyệt, NIST và CSE với vai trò là CMVP, sẽ phát hành chứng chỉ, bao gồm số phiên bản của môđun mật mã đã được phê duyệt. Vào cuối mỗi tháng, cơ quan này ký một chứng chỉ phê duyệt hợp nhất để thống kê tất cả các môđun đã được phê duyệt trong tháng.
Đánh giá mô hình CMVP
Từ khi ra đời cho đến nay, mô hình kiểm định, đánh giá môđun mật mã CMVP đã được ứng dụng rộng rãi trong thực tế. Theo danh sách công bố của NIST tính đến ngày 20/7/2017 đã có 2.966 môđun mật mã được đánh giá và cấp chứng nhận, trong đó bao gồm cả môđun phần cứng, phần mềm và phần sụn. Số lượng môđun mật mã được đánh giá trong từng năm không ngừng tăng lên về nhãn hiệu, số lượng và chủng loại. Hầu hết các sản phẩm bảo mật và an toàn thông tin của các hãng có tên tuổi trên thế giới như Cisco, Microsoft,…đều có môđun mật mã được đánh giá theo FIPS140-1/FIPS 140-2. Để kiểm định, đánh giá một môđun mật mã theo tiêu chuẩn FIPS140-2 bắt buộc phải trải qua một quy trình thống nhất bao gồm các bên tham gia từ nhà cung cấp; CST; cơ quan phê duyệt và người sử dụng, trong đó vai trò của CST là trọng tâm.
Phát triển hệ thống kiểm định, cấp chứng nhận cho môđun mật mã là một quá trình lâu dài, cần rất nhiều nguồn tài nguyên và nhân lực. Tùy theo từng giai đoạn phát triển mà các yếu tố chính trong mô hình kiểm định, đánh giá môđun mật mã sẽ được quan tâm, đầu tư ở các mức độ khác nhau theo một lộ trình thống nhất. Tuy nhiên, quá trình đầu tư cho nguồn nhân lực làm công tác kiểm định, đánh giá môđun mật mã cần phải được quan tâm thường xuyên, liên tục, bởi đây là yếu tố quyết định tới kết quả hoạt động kiểm định, đánh giá môđun mật mã.
Trong tương lai, với xu hướng hội nhập quốc tế sâu rộng, ngày càng có nhiều sản phẩm mật mã nhập khẩu vào Việt Nam. Vì vậy, để tăng cường công tác kiểm định, đánh giá và quản lý nhà nước về mật mã, việc sử dụng tiêu chuẩn FIPS 140-2 và mô hình CMVP để kiểm định, đánh giá môđun mật mã ở nước ta là hoàn toàn phù hợp và cần thiết.
Tài liệu tham khảo 1. NIST & CSE,Cryptographic Module Validation Program Management ManualCMVP,Ver 1.3, 2017. 2. CSEC & CMVP Laboratories, Derived Test Requirements for FIPS PUB 140-2, 2011. 3. FIPS 140-2, Security Requirements for Cryptographic Modules, May 25 - 2001; (Change Notice 2, 12/3/2002). |
TS. Hồ Văn Hương, KS. Hoàng Anh Thuận