Chữ kí số được sử dụng rộng rãi trong thương mại điện tử để thực hiện các giao dịch điện tử, nhằm xác định rõ người ký văn bản, chống chối bỏ nguồn gốc, xác thực nội dung của văn bản ký. Độ an toàn của chữ ký số là rất cao, hiện nay được sử dụng rất phổ biến trong giao dịch điện tử.
Trang 1Bộ giáo dục và đào tạoTrờng đại học dân lập hải phòng
Giáo viên hớng dẫn: ThS Trần Ngọc Thái
Sinh viên: Nguyễn Thị Thu Hằng Mã số: 10388 Lớp: CT 702
Hải Phòng - 2007
Hải Phòng, 8/2007
Trang 2Bộ giáo dục và đào tạo 1
CHứng chỉ số và mô phỏng 1
đồ án tốt nghiệp đại học hệ chính quy 1
Ngành: Công nghệ Thông tin 1
Giáo viên hớng dẫn: ThS Trần Ngọc Thái 1
Hải Phòng - 2007 1
Hải Phòng, 8/2007 1
Trang 3Chương 1 CÁC KHÁI NIỆM CƠ BẢN
Chương 2 XÁC THỰC BẰNG CHỨNG CHỈ SỐ
2.1 Vấn đề an toàn bảo mật thông tin.
Việt Nam là một quốc gia đang trong quá trình hình thành và phát triển thương mạiđiện tử (TMĐT), nghe thì quen, nói thì dễ, nhưng không phải ai cũng nhận biết được tầmquan trọng của TMĐT Báo vnexpress cho biết “Theo thống kê chưa đầy đủ, đến năm
2003, Việt Nam mới có hơn 3.000 doanh nghiệp (trong hơn 132.000 doanh nghiệp đãđăng ký kinh doanh) có website riêng và vài nghìn doanh nghiệp đăng ký quảng cáo trênmạng Internet Trong số đó, cũng chỉ mới có 5% doanh nghiệp quan tâm đến thương mạiđiện tử và khoảng 7-8% doanh nghiệp bắt đầu triển khai” Mặc dù tính tới thời điểm hiệnnay số doanh nghiệp quan tâm tới việc áp dụng cntt vào kinh doanh cũng đã tăng mạnh,nhưng hầu hết chỉ dừng ở mức giới thiệu về doanh nghiệp và sản phẩm, giao dịch trực
tuyến là rất ít Nguyên nhân thì có nhiều, nhưng một lý do quan trọng là chúng ta, cũng
như cả thế giới, đang phải đứng trước những thách thức to lớn về bảo mật khi tham gia
vào quá trình này Nhưng các cơ hội kinh doanh, sự tiện lợi trong đời sống qua trao đổi
thông tin, các giao dịch trên mạng là một sức mạnh ngày càng được khẳng định và khôngthể phủ nhận
Vì vậy càng cần thiết đảm bảo những tính chất quan trọng và cần thiết của thôngtin trong giao dịch trực tuyến như:
+ Tính bí mật (confidentiality) : Thông tin chỉ được tiết lộ cho những ai được phép + Tính toàn vẹn (integrity): Thông tin không thể bị thay đổi mà không bị phát hiện + Tính xác thực (authentication): Chủ thể có thể chứng thực chính bản thân mình + Tính không chối bỏ ( non-repudiation): Người gửi hoặc người nhận sau này
không thể chối bỏ việc đã gửi hoặc nhận thông tin
Trang 42.1.1 Vấn đề mã hóa.
Đứng trước những thách thức về an toàn bảo mật như đã nêu trên, hẳn chúng ta đãnhận ra những nguy cơ to lớn, vì việc truyền thông tin trên mạng hiện nay chủ yếu làtruyền qua các máy trung gian hoặc các mạng riêng biệt Hàng loạt nguy cơ mất an toànthông tin xảy ra như:
+ Bị nghe trộm: Làm mất tính bí mật của thông tin
+ Bị giả mạo: Làm thay đổi nội dung thông tin trước khi tới nơi nhận
+ Bị mạo danh: Mạo nhận mình là người khác hoặc là nói sai sự thực về mình đểlừa thông tin từ người khác
Vì vậy, các thông tin trước khi được truyền đi trên mạng thường được mã hóa vàtại nơi nhận thì thông tin được giải mã để có có một giao dịch an tòan hơn
Có thể nói mã hóa là phương pháp che giấu thông tin, chuyển đồi thông tin từ dạngban đầu có thể hiểu được sang dạng không thể hiểu được Tất nhiên muốn mã hóa hoặcgiải mã thông tin thì cần có khóa Ta hãy tham khảo quy trình mã hóa và giải mã sau:
Sơ đồ mã hóa và giải mã một thông điệp
Mỗi quá trình mã hóa thì đều phải sử dụng tới các thuật toán mã hóa, có thể kể tênmột số thuật toán như:
Thuật toán mã hóa đối xứng:
Thuật toán mã hóa công khai : Trong một hệ mã hoá công khai, các khóa lập mã và giải mã là khác nhau, nhưng
có quan hệ với nhau Trong hai khóa đó, khóa cần phải giữ bí mật là khóa giải mã , còn khóa lập mã có thể được công bố công khai Một thông điệp sau khi được mã hóa bởi chìacông khai sẽ chỉ có thể được giải mã với chìa bí mật tương ứng
Trang 52.1.2 Vấn đề ký số.
Chữ kí số là đoạn dữ liệu gắn liền với văn bản gốc để chứng thực tác giả của văn
bản và giúp người nhận kiểm tra kiểm tra tính toàn vẹn của văn bản gốc, sử dụng côngnghệ khóa công khai PKI (Public Key Infrastructure) Trong đó mỗi người tham gia kýcần một cặp khóa bao gồm một khóa công khai và một khóa bí mật Khóa bí mật dùng đểtạo chữ ký số, khóa công khai dùng để thẩm định, xác thực chữ ký số Chữ kí số được sửdụng rộng rãi trong thương mại điện tử để thực hiện các giao dịch điện tử, nhằm xác định
rõ người ký văn bản, chống chối bỏ nguồn gốc, xác thực nội dung của văn bản ký Độ antoàn của chữ ký số là rất cao, hiện nay được sử dụng rất phổ biến trong giao dịch điện tử
Chữ ký số được tạo ra bằng cách áp dụng thuật toán băm một chiều trên văn bảngốc để tạo ra bản ra bản phân tích văn bản (message digest) hay còn gọi là fingerprint, sau
đó mã hóa bằng khóa bí mật tạo ra chữ ký số đính kèm với văn bản gốc để gửi đi Khinhận, văn bản được tách làm 2 phần, phần văn bản gốc được tính lại fingerprint để sosánh với fingerprint cũ cũng được phục hồi từ việc giải mã chữ ký số Như vậy ta có thểxác định được thông điệp bị gửi không bị sửa đổi hay can thiệp trong quá trình gửi
Quy trình tạo và kiểm tra chữ ký số:
Tạo chữ ký số:
Trang 6Kiểm tra chữ kí sô:
2.1.3 Vấn đề xác thực.
Xác thực là xác minh, kiểm tra một thông tin hay một thực thể nào đó để côngnhận hoặc bác bỏ tính hợp lệ của thông tin hay thực thể đó Đây là yêu cầu rất quan trọngtrong các giao tiếp cần có sự tin cậy
Xác thực bao gồm 2 việc chính:
+ Xác thực tính hợp lệ của các thực thể tham gia giao tiếp
+ Xác thực tính bảo mật của thông tin được trao đổi
Như vậy trên thực tế, chúng ta có thể thấy một số hình thức xác thực thực thể nhưchứng minh thư, giấy phép lái xe, hoặc các giấy tờ cá nhân khác, và xác thực tính an toàncủa thông tin như chữ ký, con dấu Vậy trong thế giới điện tử thì sao?
Trang 7 Xác thực điện tử.
Xác thực điện tử là việc xác minh từ xa bằng các phương tiện điện tử sự tồn tại
chính xác và hợp lệ danh tính của chủ thế nào đó, cũng như lớp thông tin nào đó màkhông cần biết nội dung cụ thể của thông tin và chủ thể đó, bằng cách chỉ thông quathông tin đặc trưng cho chủ thể hoặc thông tin để bảo bảo đảm tính bí mật của chủ thếhoặc thông tin cần chứng minh
Như vậy đã hình thành nhiều phương pháp xác thực điện tử khác nhau Xác thựcthực thể có thể sử dụng các phương pháp nhận dạng sinh học như dấu vân tay, mẫu võngmạc, mẫu giọng nói, chữ ký tay Xác thực thông tin có thể sử dụng mật khẩu, chữ ký số,
sơ đồ định danh…Ta có thể tham khảo ba phương pháp xác thực chính sau đây:
+ Xác thực dựa vào những gì mà ta biết:
Khi xác thực hệ thống yêu cầu chủ thể cung cấp những thông tin mà chủ thể biết.Như mã pin, mật khẩu…
+ Xác thực dựa vào những gì mà ta có:
Khi xác thực hệ thống yêu cầu chủ thế phải sở hữu một vật gì đó có thể xác minhnhư chứng chỉ số, thẻ ATM…
+ Xác thực dựa vào những gì mà ta đại diện:
Việc xác nhận dựa vào việc nhận dạng các dấu hiệu sinh học như dấu vân tay,giọng nói, võng mạc…
Mỗi phương pháp đều có ưu và nhược điểm riêng, vì vậy trên thực tế, việc xácthực thường kết hợp nhiều phương pháp để có kết quả tốt nhất đảm bảo an toàn cho cácgiao dịch Và hiện nay việc xác nhận bằng chứng chỉ số đang được tin cậy sử dụng dokhắc phục những nhược điểm của các phương pháp khác
Trang 82 2 Giới thiệu về chứng chỉ số.
Chứng chỉ số do một tổ chức độc lập, trung lập, có uy tín cấp cho người đăng kí, là mộttệp tin điện tử chứa thông tin cá nhân của người đăng kí, chứa khóa công khai của ngườiđăng kí nhằm mục đích chứng nhận trên mạng đích thực bạn là ai đảm bảo cho các giaodịch trực tuyến an toàn và bảo mật, hoặc để xem xét quyền sử dụng tài nguyên trực tuyếncủa bạn và đây cũng là cơ sở pháp lý khi xảy ra tranh chấp Vậy nói cho cùng, Chứng chỉ
số là một công cụ xác thực
2.2.1 Thời hạn tồn tại và việc thu hồi chứng chỉ.
+ Đăng ký: Khi một chủ thể muốn có một chứng chỉ số thì chủ thể phải đăng kí với
CA và chứng minh được với CA rằng mình là mình Sau khi đã được RA xác minh thì
CA sẽ cấp chứng chỉ số cho chủ thể đó
+ Sau khi đăng kí thì lúc này chủ thể sẽ có 1 khóa cá nhân và 1 khóa công khai.Muốn giao dịch với chủ thể khác thì bắt buộc chủ thể này cũng phải có chứng chỉ số.Khóa công khai lúc này giúp cho chủ thể có thể có những giao dịch an toàn với các chủthể khác
Ví dụ như khi chủ thể A muốn trao đổi thông tin với chủ thể B thì chủ thể A tìmkhóa công khai của chủ thể B Sau khi chắc chắn chìa khóa đó là của B bằng cách kiểmtra chứng chỉ số, A dùng khóa công khai này để mã hóa thông tin đó Thông tin này chỉ cóthể được giải mã bởi khóa bí mật của B, kể cả khóa vừa dùng để mã hóa chúng cũng kothể Khi nhận được thông tin, B dùng khóa bí mật của mình để giải mã thông tin Nếukhóa bí mật của B có thể giải mã được thì thông tin đúng là được gửi cho B Trong trườnghợp này nếu thông tin bị mã hóa trên nếu có rơi vào tay người khác thì cũng không thể bị
dò ra Như vậy ta thấy A và B không nhất thiết phải là người có quen biết trước, chỉ cần
có nhu cầu giao dịch thì thông qua chứng chỉ số họ cũng có thể thực hiện được giao dịchcủa mình mà không hề bị lộ bí mật thông tin
+ Chứng chỉ số không còn hợp lệ và không đáng tin cậy nữa sau khi hết thời hạn.Nhưng cũng có chứng chỉ số bị CA thu hồi trước thời hạn vì có nghi ngờ bị thám mã vàtấn công thỏa hiệp
+ Ta có thể hình dung việc sử dụng chứng chỉ số cho việc giao dịch trực tuyếngiống như là chứng minh thư trong đời sống thực vậy Gồm con dấu của nơi cấp chứngminh thư giống như là chữ ký của CA trên chứng chỉ số, những thông tin nhận dạng củachủ thể như quê quán, họ tên, ngày sinh…trên chứng minh nhân dân là khóa công khai
Trang 9trong chứng chỉ số A giao dịch gửi hàng cho B qua bưu điện được mã hóa bằng tên, tuổingười gửi thì đó là khóa công khai ai cũng biết, nhưng không phải ai cũng lấy được hàngkhi mang chứng minh thư đó tới, mà phải có khóa riêng, tức là có mặt và nhận dạng giốngmiêu tả trong chứng minh thư.
2.2.2 Khuôn dạng chứng chỉ số theo chuẩn X.509
Chứng chỉ số có nội dung thường tuân theo chuẩn nội dung của X509, là chuẩnđược đưa ra bởi Internationnal Telecommunication Union- TelecommunicationStandardization Sector (ITU-T) và Iso/Internationnal Electrotechnical Commission (IEC)
2.2.2.1 Khuôn dạng chứng chỉ số X.509 ver 1, ver 2.
Khuôn dạng chứng chỉ số V1,2Trong đó tên duy nhất của đối tượng và tên CA mới được bổ sung trong V2
Trang 102.2.2.2 Đặt tên trong X.509 ver 1, ver 2.
Thông tin được lưu trữ trong các thư mục X509 gồm một nhiều thực thể, mỗithực thể liên quan tới một đối tượng, mỗi đối tượng có tên rõ ràng gọi là tên phânbiệt Đầu vào thư mục của đối tượng chứa giá trị là tập hợp các thuộc tính gắn liềnvới đối tượng
Trong X509 các đầu vào được tổ chức dưới dạng cây, gọi là cây thông tinthư mục, đỉnh của cây là số đầu vào thư mục, mỗi đỉnh có một tên phân biệt Têncủa một đầu vào được đặt bằng tên của đầu vào cấp trên gần nó nhất cộng với tênphân biệt của nó
Trong X509V2 thì có bổ sung trường tên duy nhất của người phát hành vàtên duy nhất của chủ thế Nhưng đây là phương pháp không hiệu quả vị chúng khóquản lý, có xu hướng bị che giấu và dễ bị quên, bỏ qua khi bổ sung vào X509V1
2.2.2.3 Chứng chỉ X.509 ver 3.
X509V3 được ra đời 6-1996 bổ sung những nhược điểm của V1,2 và được
sử dụng là chuẩn trong chứng chỉ số ngày nay bao gồm các trường chuẩn:
Tên của CA tạo ra chứng nhận ( Issuer )
Ngày hết hạn của chứng nhận ( Period of validity )
Thông tin cá nhân về người được cấp được chứng nhận ( Subject )
Khóa công khai của cá nhân (Public key )
Chữ kí số của CA đảm bảo giá trị của chứng nhận (Signature )
Trang 11Khuôn dạng chứng chỉ số X509V3
Trang 12Chương 3 CHƯƠNG TRÌNH MÔ PHỎNG
3.1 MÔ TẢ BÀI TOÁN.
Trong một cơ quan có rất nhiều người và đảm nhận nhiều công việc chức năng đa dạng, do đặc thù công việc, các thành viên phải đi công tác xa thường xuyên, trong thời gian đó, họ có nhu cầu trao đổi dữ liệu với cơ quan
và với những nhân viên khác ở cơ quan Hiện nay mọi người khi đi công tác, nếu có phát sinh về tài liệu thì phải nhờ người đang ở cơ quan gửi giúp, nếu muốn trao đổi với những nhân viên khác thì chủ yếu là điện thoại Như vậy là rất bất tiện, bị động và rườm rà cho các nhân viên!
Như vậy việc xây dựng một mạng trao đổi thông tin trực tuyến là vấn
đề cần thiết và thiết thực trên nền tảng ứng dụng thành tựu của công nghệ thông tin và truyền thông, giúp nhân viên truy cập thông tin và trao đổi trực tuyến Một số vấn đề xảy ra khi sử dụng một mạng thông tin trực tuyến gồm:
+ Truy cập bất hợp pháp: Một người không phải là người của cơ quan, hoặc không có thẩm quyền muốn xâm nhập vào mạng cơ quan để lấy những thông tin nhạy cảm.
+ Mạo danh: Giả mạo mình là người khác để đối phương nói ra những thông tin mình cần hoặc tạo ra những thông tin giả cho đối phương.
Như vậy, giải pháp cho cơ quan hiện nay là xây dựng một mạng trao đổi thông tin trực tuyến an toàn, trong đó các thành viên được xác nhận chính xác để có thể trao đổi dữ liệu với cơ quan, và với nhau một cách an toàn Một
đề xuất cho mô hình mạng nói trên đó là áp dụng chứng chỉ số:
Trang 133.2 MÔ HÌNH XÁC THỰC SỬ DỤNG CHỨNG CHỈ SỐ
Đề xuất sau đây nhằm mục đích giải quyết bài toán ứng dụng chứng chỉ
số trong mô hình mạng trao đổi an toàn tại cơ quan như đã nêu ở trên.
Để có thể tham gia vào hệ thống trao đổi thông tin mỗi người dùng phải thực hiện 2 giai đoạn:
3.2.1 Xin cấp chứng chỉ số
Với sự hỗ trợ của hạ tầng cơ sở khóa công khai PKI, các nhân viên của
cơ quan gửi yêu cầu cấp chứng chỉ tới một CA để yêu cầu cấp phát một chứng chỉ số Đầu tiên, nhân viên này phải gửi các thông tin cho bộ phận quản lý và xác thực thông tin người dùng RA RA kiểm tra và ra quyết định có cấp chứng chỉ hay không Nếu có, RA gửi một thông báo xác nhận đăng ký cho nhân viên Nhân viên sử dụng smart card để lưu trữ chứng chỉ, lúc này hệ thống sẽ yêu cầu sinh cặp khóa công khai / bí mật và gửi khóa công khai đến CA.
Bộ phận RA kiểm tra tính hợp lệ của các thông tin Nếu tất cả hợp lệ, yêu cầu cấp chứng chỉ sẽ được gửi tới CA và CA sẽ thực hiện việc cấp chứng chỉ cho người dùng
Chứng chỉ số có thời hạn sử dụng nhất định Khi hết hạn người dùng có thể yêu cầu gia hạn hoặc cấp mới Trong trường hợp chứng chỉ bị lộ không còn an toàn nữa hoặc người dùng làm mất chứng chỉ thì họ có thể yêu cầu CA thu hồi và hủy bỏ chứng chỉ đã cấp.
Trang 143.2.1.1 Sơ đồ quá trình xin cấp chứng chỉ số
Sơ đồ quá trình xin cấp chứng chỉ số
Người dùng gửi yêu cầu cấp chứng chỉ số
Người dùng mang theo giấy tờ xác minh cá nhân, tổ chức, hoặc chính quyền sở tại
Bộ phận RA xác thực thông tin của người dùng
Thông tin chính xác
Bộ phận CA cấp chứng chỉ số cho người dùngThông tin sai
Trang 153.2.1.2 Kĩ thuật thực hiện
Trước tiên xây dựng một giao diện để người dùng nhập các thông tin đăng kí theo chuẩn X509 gồm: họ tên, địa chỉ email, đơn vị trực thuộc, tỉnh (thành phố), huyện (quận), quốc tịch và mật khẩu của người dùng Thông tin người dùng đăng kí sẽ được chuyển xử lý tạo mảng để sử dụng.
Tạo một khóa riêng :
Trang 163.2.2 Xác thực từ xa bằng chứng chỉ số
Khi nhân viên đã có chứng chỉ số, họ có thể sử dụng trong các giao dịch Để kiểm tra danh tính của một nhân viên, hệ thống mạng của cơ quan sẽ kiểm tra chứng chỉ có được phát hành bởi CA đã đăng kí không Nếu đúng, hệ thống sẽ gửi một thông tin ngẫu nhiên để người dùng ký mẫu lên thông tin đó Khóa tạo chữ ký điện tử chính là khóa bí mật tương ứng với khóa công khai trên chứng chỉ Nếu chữ ký đúng thì nhân viên tham gia giao dịch chính là chủ sở hữu thực sự của chứng chỉ vì chỉ có họ mới biết khóa bí mật tương ứng với khóa công khai trên chứng chỉ Khi đó, việc xác thực thành công và giao dịch trên một kết nối an toàn được thực hiện.