.4 Hình minh họa hàm băm

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu giải pháp tích hợp chữ ký số bảo mật ứng dụng trong hệ điều hành tác nghiệp lotus notes 04 (Trang 31 - 35)

Hàm băm là hàm có tính chất 1 chiều, nó chuyển đổi một thông điệp có độ dài bất kỳ thành một digest là dễ dàng, nhƣng từ một digest khó có thể tìm đƣợc thông điệp ban đầu. Hàm băm xác định đƣợc tính toàn vẹn dữ liệu của thông tin. Mọi thay đổi dù là rất nhỏ trên thông điệp cho trƣớc dù là 1 bit cũng làm thay đổi thông điệp rút gọn tƣơng ứng. Tính chất này hữu ích trong việc kiểm tra chữ ký điện tử, phát sinh số ngẫu nhiên, tạo ra khóa cho quá trình mã hóa,...

2.4.2. Phân loại hàm băm

- Hàm băm một chiều (one-way hash functions): Là hàm băm mang chất với mọi mã băm biết trƣớc, không thể tính toán để tìm đƣợc chuỗi bits đầu vào có mã băm bằng với mã băm đã cho.

- Hàm băm kháng xung đột (collision resistant hash funtions): là hàm băm mang tính chất không thể tính toán để tìm ra hai chuỗi bit có cùng giá trị băm.

2.4.3. Hàm băm SHA

2.4.3.1. Đặc điểm

Thuật toán SHA là thuật toán băm mật đƣợc phát triển bởi cục an ninh quốc gia Mỹ (NSA: National Security Agency) và đƣợc xuất bản thành chuẩn của chính phủ Mỹ bởi viện công nghệ và chuẩn quốc gia Mỹ (NIST: National Institute of Standards and Technology).

Họ hàm băm SHA bao gồm 5 thuật toán băm là: SHA-1, SHA-224, SHA- 256, SHA-384 và SHA-512. Bốn thuật giải sau thƣờng đƣợc gọi chung là SHA- 2. Bảng 2.5 dƣới đây thể hiện các tính chất cơ bản của năm thuật toán băm.

Thuật toán

Kích thƣớc (đơn vị: bit) Độ an toàn (đơn vị: bits)

Thông điệp Khối Thông điệp

rút gọn SHA-1 <264 512 32 160 80 SHA-224 <264 512 32 224 112 SHA-256 <264 512 32 256 128 SHA-384 <2128 1024 64 384 192 SHA-512 <2128 1024 64 512 256

Bảng 2.5: Các tính chất cơ bản của thuật toán băm

2.4.3.2. Nhận xét về họ hàm băm SHA

Ƣu điểm Nhƣợc điểm

+ Cho một giá trị băm nhất định đƣợc tạo nên bởi một trong những thuật giải SHA, việc tìm lại đƣợc đoạn dữ liệu gốc là không khả thi.

+ Việc tìm đƣợc hai đoạn dữ liệu nhất định có cùng kết quả băm tạo ra bởi một trong những thuật giải SHA là không khả thi.

+ Bất cứ thay đổi nào trên đoạn dữ liệu gốc, dù nhỏ, cũng sẽ tạo nên một giá trị băm hoàn toàn khác với xác suất rất cao. + Hàm băm SHA-1 đƣợc sử dụng rộng rãi trong nhiều ứng dụng và giao thức an toàn khác nhau.

+ Hiện nay SHA-1 không còn đƣợc coi là an toàn bởi hiện nay đã phát triển thành công một thuật toán dùng để tìm đƣợc hai đoạn dữ liệu nhất định có cùng kết quả băm tạo ra bởi SHA-1.

+ Mặc dù chƣa có ai làm đƣợc điều tƣơng tự với SHA-2, nhƣng vì thuật toán, SHA-2 không khác biệt mấy so với SHA-1 nên nhiều nhà khoa học đã bắt đầu phát triển một thuật toán khác tốt hơn SHA.

2.5. Chữ ký số 2.5.1. Khái niệm 2.5.1. Khái niệm

Chữ ký số là mô hình sử dụng các kỹ thuật mã hóa để gắn một ngƣời sử dụng một cặp khóa bí mật – công khai và qua đó có thể ký các văn bản điện tử cũng nhƣ trao đổi các thông tin mật. Khóa công khai thƣờng đƣợc phân phối thông qua chứng thực công khai. Quá trình sử dụng chữ ký số bao gồm hai quá trình: tạo chữ ký và kiểm tra chữ ký.

Chữ ký số là một dạng chữ ký điện tử (Electronic signature), là dạng thông tin đi kèm theo dữ liệu (văn bản, hình ảnh, video...) nhằm mục đích xác định ngƣời chủ của dữ liệu đó.

2.5.2. Cách tạo ra chữ ký số

Quá trình sử dụng chữ ký số bao gồm hai quy trình: tạo chữ ký và kiểm tra chữ ký số.

Quy trình tạo chữ ký số

Dùng giải thuật băm để thay đổi thông điệp cần truyền đi, kết quả ta đƣợc một bản tóm lƣợc của thông điệp, trƣờng hợp nếu dùng giải thuật MD5 ta sẽ thu đƣợc bản tóm lƣợc có độ dài 128 bit, nếu dùng giải thuật SHA-1 ta sẽ thu đƣợc bản tóm lƣợc có độ dài 160 bit.

Sử dụng khóa private key của ngƣời ký để mã hóa bản tóm lƣợc ở trên ta thu đƣợc chữ ký số. Chữ ký số đƣợc gắn với thông điệp dữ liệu tạo thành thông điệp dữ liệu đƣợc ký số.

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu giải pháp tích hợp chữ ký số bảo mật ứng dụng trong hệ điều hành tác nghiệp lotus notes 04 (Trang 31 - 35)

Tải bản đầy đủ (PDF)

(63 trang)