CHƯƠNG I: GIỚI THIỆU KHÁI QUÁT VỀ XÁC THỰC 1. Định nghĩa xác thực Xác thực (tiếng anh: Authentication = thật hoặc chính cống) là một hành động nhằm thiết lập hoặc chứng thực một cái gì đó (hoặc một người nào đó) đáng tin cậy, có nghĩa là những lời khai báo do người đó đưa ra hoặc về vật đó là sự thật. Xác thực một đối tượng còn có nghĩa là công nhận nguồn gốc của đối tượng, trong khi, xác thực một người thường bao gồm việc thẩm tra nhận dạng của họ. Việc xác thực thường phụ thuộc vào một hoặc nhiều nhân tố xác thực để minh chứng cụ thể.
Xác thực là đặc biệt quan trọng để cho sự hoạt động của hệ thống được an toàn. Hệ thống luôn luôn trước tiên xác thực một thực thể khi nó cố thử thiết lập sự liên lạc. Khi đó nét nhận dạng của thực thể được dùng để xác định sự truy nhập của nó như một đặc quyền hoặc để đạt được sự sẵn sàng phục vụ. Suốt quá trình thực hiện giao thức xác thực, hai bên luôn luôn trao đổi bí mật chung, mà nó sẽ được dùng để đưa đến sự bảo mật và toàn vẹn.
Vấn đề xác thực người dùng và tầm quan trọng của nó Hệ thống xác thực người dùng đóng vai trò hết sức to lớn trong việc bảo mật thông tin của người dùng trong thời kì hiện đại hoá ngày nay. Các bạn đã bao giờ đặt ra câu hỏi nếu không có hệ thống xác thực người dùng thì làm sao giữ an toàn được những thông tin bí mật hoặc làm sao quản lý được các bí mật trong kinh doanh, thương mại và tài khoản ở ngân hàng hoặc những nguồn tài nguyên được chia sẻ ở trên mạng từ một máy chủ? Với tên và mật khẩu chính xác bạn có thể truy cập vào các tệp tin, thư điện tử, tài khoản của bạn ở ngân hàng hay những thông tin cá nhân của bạn…Mà bạn không muốn một người dùng nào khác biết được. Vì vậy có thể nói lợi ích do hệ thống này mang lại là rất lớn đối với cuôc sống hiện đại ngày nay. Nhưng các hệ thống xác thực người dùng hiện nay cũng gặp phải không ít những vấn đề khó khăn: Mật khẩu của bạn có thể bị đánh cắp bởi những người dùng trên mạng internet.
Những hacker có rất nhiều công cụ để có thể lấy được mật khẩu của -9- LUAN VAN CHAT LUONG download : add luanvanchat@agmail. Do đó đối với hệ thống xác thực người dùng để đảm bảo an toàn thì người dùng phải thay đổi mật khẩu thường xuyên, do đó sẽ làm cho người dùng khó nhớ. Trên thế giới hiện nay phương thức xác thực phổ biến vẫn là sử dụng các ký tự làm mật khẩu và xu hướng đặt mật khẩu của người dùng có thể là sở thích, tên một nhân vật nổi tiếng ưa thích, hoặc ngày sinh nhật… Sẽ làm cho kẻ tấn công sẽ dự đoán được. Đối với những mật khẩu thông thường thì người dùng có thể mô tả được hoặc ghi lại được vì vậy rất dễ bị lộ.
Để giải quyết những vấn đề trên trong tài liệu này chúng tôi tập trung trình bày về một hệ thống xác thực còn khá mới mẻ đối với Việt Nam nhưng yêu cầu đảm bảo thông tin an toàn của hệ thống này là rất cao. Đó chính là hệ thống xác thực người dùng bằng sinh trắc học. Hệ thống này sẽ được đề cập ở các chương sau. Các dạng xác thực - Căn cứ vào tính chất và đặc điểm của các thành phần xác thực người ta phân ra làm hai dạng xác thực sau: + Sự xác thực thực thể.
+ Sự xác thực trách nhiệm văn bản gốc. Trong sự xác thực thực thể, người dùng yêu cầu được chấp nhận là người chính thức hợp pháp của hệ thống. Dịch vụ xác thực thực thể đem đến sự đảm bảo sự công nhận hoặc bác bỏ nét nhận dạng của người truy nhập. Sự xác thực thực thể có thể một phía hoặc nhiều phía: + Trong sự xác thực một phía, chỉ một phía thực hiện sự xác thực tự bản thân mình khi liên lạc.
+ Trong sự xác thực thực thể đồng thời, cả hai bên phải xác thực lẫn nhau. Sự xác thực trách văn bản gốc cung cấp bằng chứng để một đoạn dữ liệu, cũng như một thư điện tử, trong thực tế được tạo bởi người sử dụng chính thức. Các giao thức xác thực Sức mạnh của một hệ xác thực phụ thuộc khả năng của hạ tầng, hỗ trợ để lưu giữ khóa mật mã dài và thực hiện các phép toán mật mã. Con người không có cả hai khả năng này.
Trừ khi hạ tầng bổ sung thêm các đại lượng này cho - 10 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com người dùng, và hệ thống xác thực cần phải dựa vào mật khẩu ngắn để kiểm tra nhận dạng của người dùng. Điện thoại và thiết bị không kêu (dumb terminals) là những ví dụ về hạ tầng không có khả năng này. Nếu một người truy nhập đến một thiết bị thông minh, ví như máy tính hoặc Smart card, bằng bất cứ cách nào, hệ thống xác thực hứa hẹn một giao thức xác thực tỉ mỉ hơn với thiết bị kiểm tra nét nhận dạng của người truy nhập. Các giao thức này có thể thúc đẩy các phép toán mật mã tổng hợp và dùng khóa mật mã dài để phá vỡ nhiều dạng tấn công thông tin.
+ Giao thức thử thách và trả lời : Giao thức thử thách và trả lời cho phép người truy nhập tự xác thực mình với hệ thống bằng cách chứng minh hiểu biết của mình về giá trị mật mã bí mật mà không yêu cầu người truy nhập tiết lộ bí mật. Hệ thống xác thực đưa ra cho người truy nhập một số được tạo ra một cách ngẫu nhiên được gọi là thử thách. Người truy nhập nhập số thử thách và giá trị mật để hàm mật mã tính ra câu trả lời. Hệ thống xác thực nét nhận dạng của người truy nhập nếu câu trả lời là giá trị mong đợi.
Bởi vì thử thách là một số ngẫu nhiên, giao thức thử thách – trả lời cung cấp một lá chắn có hiệu quả chống lại sự tấn công lặp lại.1: Mô hình quá trình xác thực người dùng. Hầu hết các hệ thống xác thực người dùng hiện nay người dùng muốn đăng nhập đều phải nhập tên và mật khẩu. Trong đó tên và mật khẩu là do người dùng tạo ra. Tên và mật khẩu của người dùng sẽ được hệ thống mã hoá và lưu vào cơ sở dữ liệu.
Mật khẩu của người dùng phải được các hệ thống xác thực mã hoá để - 11 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com đảm bảo an toàn bằng những thuật toán mã hoá khác nhau. Đặc biệt là các hệ thống máy tính mật khẩu của người dùng phải được mã hoá bằng những thuật toán đặc biệt, ví dụ như hệ điều hành Linux hay Unix sử dụng các thuật toán DES, MD5, hay Blowfish để mã hoá mật khẩu thành hàm băm trước khi lưu vào cơ sở dữ liệu, hay WindowNT sử dụng MD4 và DES để mã hoã mật khẩu. Khi đăng nhập vào hệ thống thì người dùng phải nhập lại tên và mật khẩu mà người dùng đã đăng kí. Hệ thống sẽ so sánh tên và mật khẩu mà người dùng nhập với mật khẩu đã đăng kí.
Nếu đúng người dùng đăng nhập thành công, ngược lại người dùng sẽ phải đăng nhập lại. Hệ thống sẽ từ chối nếu sau một vài lần đăng nhập không thành công.1 mô tả quá trình xác thực người dùng. Trên thế giới hiện nay các hệ thống xác thực người dùng phổ biến vẫn là sử dụng các kí tự làm mật khẩu ví dụ như các hệ thống thư điện tử của yahoo hoặc gmail, ATM… Hinh 1.2: Hệ thống xác thực người dùng của Gmail. + Giao thức mật khẩu được chuyển đổi : Trong giao thức này, người truy nhập chế biến mật khẩu của mình qua hàm băm rồi gửi kết quả tới hệ thống xác thực.
Hệ thống so sánh giá trị băm với giá trị băm chính xác của mình và xác thực nét nhận dạng của người sử dụng nếu hai giá trị như nhau. Nếu hệ thống lưu giữ mật khẩu thay vì giá trị băm của chúng, hệ thống sẽ tính giá trị băm của mật khẩu trước khi đưa ra so sánh. Giao thức mật khẩu được chuyển đổi thể hiện mật khẩu dưới dạng hiện, nên nó dễ bị tổn thương trước sự tấn công lặp lại. + Giao thức mật khẩu sử dụng một lần : Giao thức mật khẩu sử dụng một lần là một dạng quan trọng của giao thức mật khẩu được chuyển đổi để che chắn - 12 - LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com chống lại sự tấn công lặp lại được thực hiện bởi kẻ nghe trộm.
Giao thức này yêu cầu người truy nhập và hệ thống xác thực chia một số bí mật nhỏ n. Người truy nhập băm mật khẩu của mình n lần để tạo ra mật khẩu sử dụng một lần và xác thực người truy nhập nếu hai kết quả là như nhau. Trên cơ sở của sự xác thực thành công, cả hai bên giảm lượng n. Một kẻ trộm không thể thực hiện việc tấn công lặp lại bởi vì mật khẩu sử dụng một lần tiếp theo là khác và nó không thể xác định từ giá trị trước đó.
Trong giao thức này, cần phải thay đổi mật khẩu của người dùng và lập lại n khi n tiến tới 0. + Giao thức chứng chỉ số : Giao thức chứng chỉ số là một dạng của giao thức thử thách – trả lời mà ở đó giá trị mật mã bí mật là một khóa riêng và hệ thống xác thực dùng khóa công khai tương ứng với khóa riêng để xác thực câu trả lời. + Giao thức nhận dạng sinh trắc học: Khi người dùng đăng nhập mật khẩu của người dùng sẽ được so sánh với mật khẩu đã lưu trong cơ sở dữ liệu thông qua mạng máy tính. Nếu đúng quá trình xác thực thành công.
Giao thức này có độ bảo mật cao. Các phương thức về xác thực Phần này sẽ trình bày chi tiết về các phương thức xác thực truyền thống đó là: Giới thiệu xác thực theo thẻ, xác thực dựa theo nhân trắc quan và xác thực dựa trên ý thức. Qua đó đưa ra ưu, nhược điểm cũng như ứng dụng của các phuơng thức của các hệ thống trong thực tế. Xác thực theo thẻ Xác thực theo thẻ, là công nghệ để xác thực người dùng muốn đăng nhập vào một hệ thống, mạng hay máy chủ, được sử dụng khá phổ biến hiện nay trên thế giới cũng như ở Việt Nam.
Ví dụ như : key card, bank card, smart card, ATM card… Mật khẩu mà người dùng phải nhớ đó là số PIN.