TÌM HIỂU CHUNG VỀ MÃ HÓA
Khái niệm
Mã hóa là quá trình chuyển đổi dữ liệu thành dạng không thể đọc được, nhằm đảm bảo chỉ những bên liên quan có thể hiểu thông tin trao đổi Về cơ bản, mã hóa biến văn bản gốc thành bản mã thông qua các giá trị toán học được gọi là khóa mã hóa, mà cả người gửi và người nhận đều nắm rõ.
Dữ liệu mã hóa có vẻ ngẫu nhiên, nhưng thực chất được thực hiện theo cách có thể dự đoán, cho phép bên nhận sử dụng khóa để khôi phục dữ liệu gốc Mã hóa an toàn cần phải đủ phức tạp để ngăn chặn việc giải mã từ bên thứ ba bằng phương pháp brute force, tức là không thể chỉ đơn giản là đoán.
Chẳng hạn tôi có một thuật toán rất đơn giản mã hóa thông điệp cần gửi đi như sau : Bước 1 : Thay thế toàn bộ chữ cái “e” thành chữ số “3”.
Bước 2 : Thay thế toàn bộ chữ cái “a” thành chữ số “4”.
Bước 3 : Đảo ngược thông điệp.
Mã hóa (Cryptography) là một quá trình phức tạp và khó diễn tả, không chỉ đơn thuần là một ví dụ đơn giản.
Tại sao mã hóa dữ liệu cần thiết ?
Trong bối cảnh Internet kết nối toàn cầu, việc bảo vệ máy tính khỏi sự xâm nhập của hacker trở nên vô cùng cần thiết Các hacker có thể dễ dàng truy cập vào hệ thống của tổ chức qua mạng, sử dụng các công cụ như telnet để đánh cắp dữ liệu nhạy cảm, bao gồm mật khẩu và thông tin thẻ tín dụng.
Tải TIEU LUAN MOI tại địa chỉ skknchat@gmail.com để nhận tài liệu Việc áp dụng mã hóa là một phương pháp hiệu quả trong việc bảo vệ thông tin khỏi các truy cập trái phép trên mạng Mã hóa giúp biến đổi nội dung thông tin thành dạng không thể đọc được, ngăn chặn những kẻ muốn đánh cắp dữ liệu và gây rối cho hệ thống, từ đó giảm thiểu chi phí phục hồi cho tổ chức.
Mã hóa đảm bảo tính riêng tư bằng cách ngăn chặn mọi đối tượng không mong muốn, như tội phạm mạng, nhà cung cấp dịch vụ Internet và thậm chí chính phủ, đọc thông tin liên lạc hoặc dữ liệu nhạy cảm Chỉ những người nhận dự định hoặc chủ sở hữu dữ liệu mới có quyền truy cập vào thông tin này, từ đó bảo vệ dữ liệu khi đang nghỉ ngơi.
Mã hóa đóng vai trò quan trọng trong việc bảo vệ dữ liệu, giúp ngăn chặn vi phạm dữ liệu cả khi dữ liệu đang di chuyển hay ở trạng thái nghỉ Nếu thiết bị của công ty bị mất hoặc đánh cắp nhưng ổ cứng được mã hóa đúng cách, dữ liệu vẫn có thể được bảo mật Hơn nữa, truyền thông được mã hóa cho phép các bên giao tiếp an toàn khi trao đổi thông tin nhạy cảm mà không lo rò rỉ dữ liệu, đồng thời ngăn chặn các mối đe dọa như tấn công man-in-the-middle.
Xác thực là quá trình quan trọng trong mã hóa khóa công khai, đảm bảo rằng máy chủ gốc của trang web sở hữu khóa riêng và được cấp chứng chỉ SSL hợp pháp.
Các quy định ngành và chính phủ yêu cầu các công ty xử lý dữ liệu người dùng phải mã hóa thông tin này vì nhiều lý do quan trọng Một số tiêu chuẩn quy định và yêu cầu tuân thủ về mã hóa bao gồm HIPAA, PCI-DSS và GDPR.
Phân loại mã hóa
Phân loại theo các phương pháp:
– Mã hóa cổ điển (Classical cryptography)
– Mã hóa đối xứng (Symmetric cryptography).
– Mã hóa bất đổi xứng (Asymmetric cryptography).
– Hàm băm một chiều (Hash function)
Phân lọai theo số lượng khóa:
– Mã hóa khóa bí mật (Private-key Cryptography)
TIEU LUAN MOI download : skknchat@gmail.com
MÃ HÓA KHÓA CÔNG KHAI
Giới thiệu
Mã hóa khóa công khai (Public Key Cryptography) hay còn gọi là mật mã hóa bất đối xứng, là một cơ chế mã hóa sử dụng cả chìa khóa cá nhân và chìa khóa công khai, khác biệt so với chìa khóa đơn trong mật mã hóa đối xứng Việc sử dụng cặp chìa khóa này mang lại cho PKC những đặc điểm và khả năng độc đáo, giúp giải quyết các thách thức tồn tại trong các kỹ thuật mã hóa khác Với vai trò quan trọng trong bảo mật máy tính hiện đại, mã hóa khóa công khai cũng là thành phần then chốt trong sự phát triển của hệ sinh thái tiền điện tử.
Hình 2.1: Cách thức mã hóa công khai
Mã hóa công khai hoạt động như thế nào
TIEU LUAN MOI download : skknchat@gmail.com
Trong sơ đồ mã hóa khóa công khai (PKC), người gửi sử dụng chìa khóa công khai để mã hóa thông tin, trong khi người nhận dùng chìa khóa cá nhân để giải mã Hai chìa khóa này khác nhau, với chìa khóa công khai có thể chia sẻ an toàn mà không làm giảm tính bảo mật của chìa khóa cá nhân Mỗi cặp chìa khóa bất đối xứng là duy nhất, đảm bảo rằng thông điệp mã hóa bằng chìa khóa công khai chỉ có thể được đọc bởi người sở hữu chìa khóa cá nhân tương ứng.
Thuật toán mã hóa bất đối xứng, như RSA, tạo ra các cặp chìa khóa liên kết toán học với độ dài từ 1.024 đến 2.048 bit, làm cho việc tính toán chìa khóa cá nhân từ chìa khóa công khai trở nên khó khăn RSA, được phát triển bởi Rivest, Shamir và Adleman vào năm 1977, sử dụng mô-đun phép nhân hai số nguyên tố lớn để tạo ra một khóa công khai chia sẻ và một khóa cá nhân bí mật, trở thành thành phần chính trong các hệ thống mật mã khóa công khai hiện nay.
Tại sao mã hóa công khai ra đời
Mã hóa đối xứng dù rằng đã phát triển từ cổ điển đến hiện đại, vẫn tồn tại hai điểm yếu sau:
Vấn đề trao đổi khóa giữa người gửi và người nhận đòi hỏi một kênh an toàn để bảo mật thông tin, đảm bảo chỉ có hai bên biết khóa Tuy nhiên, trong bối cảnh thông tin hiện nay luân chuyển khắp nơi với khối lượng lớn, việc thiết lập kênh an toàn này trở nên không thực tế do chi phí cao và thời gian chậm trễ.
Tính bí mật của khóa: không có cơ sở quy trách nhiệm nếu khóa bị tiết lộ Vào năm
Năm 1976, Whitfield Diffie và Martin Hellman đã phát minh ra phương pháp mã hóa khóa công khai, hay còn gọi là mã hóa bất đối xứng, giúp giải quyết hai vấn đề lớn trong lĩnh vực mã hóa Đây được coi là một bước đột phá quan trọng nhất trong ngành mã hóa.
Nguyên tắc cấu tạo của hệ mã hóa công khai
TIEU LUAN MOI download : skknchat@gmail.com
Mã hóa khóa công khai đã khắc phục những hạn chế của mã hóa riêng, cung cấp cho mỗi người dùng hai khóa khi tham gia vào hệ thống.
- Một khóa dùng cho việc mã hóa dữ liệu (Public key)
- Và một khóa dùng cho việc giải mã dữ liệu (Private key),
Public key được chia sẻ công khai, trong khi Private key phải được bảo mật tuyệt đối Khi hai bên muốn trao đổi thông tin, quá trình truyền tin sẽ sử dụng mã hóa khóa công khai để đảm bảo an toàn cho dữ liệu.
- Sender yêu cầu cung cấp hoặc tự tìm khoá công khai của Receiver trên một Server chịu trách nhiệm quản lý khoá công khai.
Hai bên đã thống nhất thuật toán mã hóa dữ liệu, trong đó Sender sử dụng khóa công khai của Receiver kết hợp với thuật toán đã thỏa thuận để mã hóa thông tin bí mật.
Thông tin sau khi được mã hóa sẽ được gửi đến Receiver, và trong trường hợp này, Sender không thể giải mã thông tin mà chính mình đã mã hóa, điều này khác với phương pháp mã hóa khóa riêng.
- Khi nhận được thông tin đã mã hóa, Receiver sẽ sử dụng khóa bí mật của mình để giải mã và lấy ra thông tin ban đầu.
Có nhiều phương pháp mã hóa thuộc loại mã hóa khóa công khai, bao gồm Knapsack, RSA, Elgamal và phương pháp đường cong elliptic ECC Mỗi phương pháp này áp dụng hàm một chiều theo cách thức riêng biệt.
Các đặc điểm của hệ mã hóa công khai
Kỹ thuật mã hóa khóa công khai yêu cầu khối lượng tính toán lớn hơn so với mã hóa khóa đối xứng, nhưng những lợi ích mà nó mang lại đã khiến nó trở thành lựa chọn phổ biến trong nhiều ứng dụng Sự ra đời của mã hóa khóa công khai giúp quản lý khóa một cách linh hoạt và hiệu quả hơn, với yêu cầu người dùng chỉ cần bảo vệ khóa riêng tư (Private key).
Hệ thống mã hóa khóa công khai an toàn hơn so với mã hóa khóa riêng, vì người mã hóa không thể giải mã dữ liệu đã được mã hóa bằng khóa công khai của người khác Tuy nhiên, nhược điểm lớn nhất của nó là tốc độ thực hiện, chậm hơn khoảng 1000 lần so với mã hóa khóa riêng.
Phân biệt mã hóa công khai với mã hóa đối xứng
TIEU LUAN MOI download : skknchat@gmail.com Điều kiện cần của những giải thuật này là:
1 Khi một người nào đó có được một hay nhiều chuỗi bít được mã hóa, người đó cũng không có cách nào giải mã được mẫu tin ban đầu, trừ khi người đó biết được “ secret key
2 Secret key phải trao đổi một cách an toàn giữa hai party tham gia vào quá trình mã hóa.
Mã hóa bất đối xứng sử dụng hai khóa: khóa công khai (public key) và khóa riêng (private key), có mối liên hệ toán học với nhau, cho phép mã hóa bằng một khóa và chỉ có thể giải mã bằng khóa còn lại Loại mã hóa này có hai ứng dụng chính: mã hóa bất đối xứng và chữ ký điện tử (digital signature).
Trong ứng dụng mã hóa bất đối xứng như thuật toán RSA, mỗi bên A và B đều có một khóa công khai (PU) và một khóa riêng (PR) riêng biệt A tạo ra PUA và PRA, trong khi B tạo ra PUB và PRB PUA được A gửi cho B, và khi B muốn truyền dữ liệu cho A, B sẽ mã hóa thông tin bằng PUA A sau đó sẽ giải mã dữ liệu bằng PRA Ngược lại, khi A muốn gửi dữ liệu cho B, A sẽ mã hóa bằng PUB và B sẽ giải mã bằng PRB Quan trọng là PRA và PRB không bao giờ được truyền đi và chỉ được giữ bí mật bởi mỗi bên.
Trong ứng dụng chữ ký điện tử, A mã hóa mẫu tin bằng PRA, đảm bảo rằng chỉ A mới biết được PRA Khi một bên nhận được mẫu tin này, họ có thể xác định rằng mẫu tin xuất phát từ A, không phải từ nguồn khác Để giải mã thông tin, bên nhận cần có PUA.
Ứng dụng của hệ mã hóa công khai Error! Bookmark not defined CHƯƠNG 3: THUẬT TOÁN MÃ HÓA KHÓA CÔNG KHAI RSAError! Bookmark not de 3.1 Giới thiệu về RSA Error! Bookmark not defined 3.2 Mô tả hoạt động của RSA Error! Bookmark not defined 3.2.1 Quá trình tạo khóa cho hệ mật RSA Error! Bookmark not defined 3.2.2 Quá trình mã hóa Error! Bookmark not defined 3.2.3 Quá trình giải mã Error! Bookmark not defined 3.2.4 Ví dụ Error! Bookmark not defined 3.2.5 Chuyển đổi văn bản rõ Error! Bookmark not defined 3.2.6.Tạo chữ ký vào văn bản Error! Bookmark not defined 3.3 Các vấn đề của RSA
Mật mã công khai (PKC) được sử dụng rộng rãi trong các hệ thống máy tính hiện đại để bảo vệ thông tin nhạy cảm, như email, thông qua các kỹ thuật mã hóa khóa công khai Giao thức Lớp cổng bảo mật (SSL) cũng áp dụng mật mã bất đối xứng để đảm bảo kết nối an toàn đến các trang web Hơn nữa, PKC đã được áp dụng trong việc tạo ra môi trường bỏ phiếu điện tử an toàn, cho phép cử tri tham gia các cuộc bầu cử từ máy tính tại nhà.
PKC đóng vai trò quan trọng trong công nghệ blockchain và tiền điện tử Khi tạo một ví tiền điện tử mới, sẽ có một cặp chìa khóa được sinh ra, bao gồm chìa khóa công khai và chìa khóa cá nhân Địa chỉ công khai được tạo ra từ chìa khóa công khai và có thể được chia sẻ an toàn với người khác, trong khi chìa khóa cá nhân giữ vai trò bảo mật cho các giao dịch.
Chữ ký kỹ thuật số là yếu tố quan trọng trong việc xác minh các giao dịch và cần được giữ bí mật Khi một giao dịch được xác nhận thông qua hash trong chữ ký kỹ thuật số, nó có thể được thêm vào sổ cái blockchain Hệ thống này đảm bảo rằng chỉ những người sở hữu chìa khóa cá nhân liên kết với ví tiền điện tử mới có quyền rút tiền Cần lưu ý rằng mật mã bất đối xứng trong các ứng dụng tiền điện tử khác với mật mã bảo mật máy tính Ví dụ, Bitcoin và Ethereum sử dụng thuật toán Chữ ký số Elliptic Curve (ECDSA) để xác minh giao dịch.
Mật mã khóa công khai (PKC) đóng vai trò thiết yếu trong việc bảo mật các hệ thống kỹ thuật số hiện đại, từ bảo mật máy tính đến xác minh giao dịch tiền điện tử Sử dụng cặp chìa khóa công khai và chìa khóa cá nhân, các thuật toán mã hóa bất đối xứng giải quyết hiệu quả các vấn đề bảo mật mà mã hóa đối xứng không thể đáp ứng Mặc dù PKC đã tồn tại từ lâu, nhưng các ứng dụng và cách sử dụng mới vẫn liên tục được phát triển, đặc biệt trong lĩnh vực blockchain và tiền điện tử.
CHƯƠNG III THUẬT TOÁN MÃ HÓA KHÓA CÔNG KHAI
TIEU LUAN MOI download : skknchat@gmail.com
Tiêu chuẩn Rivest-Shamir-Adleman (RSA) là một thuật toán mã hóa khóa công khai được phát triển bởi Ronal Rivest, Adi Shamir và Leonard Adleman tại Học Viện Công nghệ Massachusetts (MIT) vào năm 1977 Tên gọi RSA được hình thành từ ba chữ cái đầu của tên các tác giả Hiện nay, tiêu chuẩn này được công nhận bởi các tổ chức như Viện Tiêu chuẩn Quốc gia Hoa Kỳ (ANSI), Viện Kỹ nghệ Điện và Điện tử (IEEE), và Phòng thí nghiệm RSA RSA là thuật toán đầu tiên cho phép tạo ra chữ ký điện tử đồng thời với mã hóa, đánh dấu một bước tiến quan trọng trong lĩnh vực mật mã học với việc sử dụng khóa công cộng Thuật toán này hiện đang được áp dụng rộng rãi trong thương mại điện tử và được coi là an toàn nếu độ dài khóa đủ lớn.
Hình 3.1 Các tác giả Ronal Rivest, Adi Shamir và Leonard Adleman tại Học
Vào năm 1977, Viện Công nghệ Massachusetts (MIT) đã công bố thuật toán RSA, mặc dù trước đó, Clifford Cox, một chuyên gia mã hóa người Anh, đã phát triển một biến thể của RSA nhưng không được công bố do chính phủ Anh xem đây là vấn đề mật Khi Rivest, Shamir và Adleman công bố RSA trong ấn phẩm Scientific American tháng 9/1977, Cơ quan An ninh quốc gia Hoa Kỳ (NSA) đã ra lệnh cấm phổ biến rộng rãi RSA, nhưng lệnh cấm này không có cơ sở pháp lý Thuật toán RSA được MIT đăng ký bằng sáng chế tại Hoa Kỳ vào năm 1983 với số đăng ký 4,405,829, và bằng sáng chế này đã hết hạn vào ngày 21 tháng 9 năm 2000, tuy nhiên do thuật toán đã được công bố trước khi có đăng ký bảo hộ nên sự bảo hộ là rất hạn chế.
TIEU LUAN MOI có thể tải về tại địa chỉ skknchat@gmail.com, tuy nhiên không có giá trị pháp lý bên ngoài Hoa Kỳ Hơn nữa, nếu công trình của Clifford Cocks đã được công bố trước, thì bằng sáng chế RSA sẽ không đủ điều kiện để được đăng ký.
In 1978, the authors published an algorithm in the Communications of the Association for Computing Machinery (ACM) Today, the specifications of RSA can be found on the EMC Corporation's information page.
3.2 Mô tả hoạt động của RSA.
Định lý cơ sở, cụ thể là Định lý nhỏ của Fermat, khẳng định rằng với p là một số nguyên tố khác 2, khi chia một số a lũy thừa p cho p, số dư sẽ chính bằng a Cụ thể, điều này được biểu diễn bằng công thức: a^p ≡ a (mod p).
Mở rộng ta có: a m 1mod m
Với m là số nguyên tố cùng nhau với m và nhỏ hơn m
- Thuật toán RSA có 2 khóa:
Khóa công khai (Public Key)
Khóa bí mật (Private Key)
- Mỗi khóa là những số cố định sử dụng trong quá trình mã hóa và giải mã.
- Khóa công khai được công bố rộng rãi cho mọi người và được dùng để mã hóa.
- Khóa bí mật được cá nhân giữ kín và dùng để giải mã
Bod muốn gửi cho Alice một thông tin mật M mà Bod muốn duy nhất Alice có thể đọc được.
( Mã hóa M bằng Public Key của A đc C) (Giải mã C bằng Private Key của A đc M )
TIEU LUAN MOI download : skknchat@gmail.com
Hình 3.2: Sơ đồ biểu diễn thuật toán mã RSA 3.2.1 Quá trình tạo khóa cho hệ mật RSA
Alice và Bob cần trao đổi thông tin bí mật qua một kênh không an toàn, như Internet Để thực hiện điều này bằng thuật toán RSA, Alice sẽ tạo ra một cặp khóa bao gồm khóa công khai và khóa bí mật thông qua 5 bước.
1 Chọn 2 số nguyên tố lớn khác nhau p, q thỏa mãn điều kiện p q
3 Tính giá trị hàm Phi Euler của n: n p 1 q 1 .
4 Chọn số nguyên d, sao cho d n và gcd(d, (n) )=1.
5 Tính giá trị e thỏa mãn điều kiện: ed 1mod n .
Khóa công khai bao gồm: n và e Khóa mật: d còn p,q và (n) thường là xóa sau khi tính toán khóa.
TIEU LUAN MOI download : skknchat@gmail.com
Bob muốn gửi thông tin M cho Alice bằng cách chuyển đổi M thành một số m nhỏ hơn n thông qua một hàm có thể đảo ngược, cho phép xác định lại M từ m Quá trình này được mô tả chi tiết trong phần Chuyển đổi văn bản rõ.
Lúc này Bob có m và biết n cũng như e do Alice gửi Bob sẽ tính c là bản mã hóa của m theo công thức: c m e (mod n)
Hàm trên có thể tính dễ dàng sử dụng phương pháp tính hàm mũ (môđun) bằng phương pháp bình phương Cuối cùng Bob gửi C cho Alice
Alice nhận c từ Bob và khóa bí mật d Alice có thể tìm được m từ c theo công thức sau: m c d (mod n)
Biết m, Alice tìm lại M theo phương pháp đã thỏa thuận trước Quá trình giải mã hoạt động vì ta có: c d e d ed
Do ed ≡ 1 (mod p-1) và ed ≡ 1 (mod q-1), theo Định lý Fermat nhỏ nên: m ed m(mod p) và m ed m(mod q)
Do p và q là hai số nguyên tố cùng nhau, áp dụng định lý phần dư trung hoa, chúng ta có: m ed m(mod pq)
TIEU LUAN MOI download : skknchat@gmail.com
Trong ví dụ này, chúng ta sử dụng các số nguyên tố nhỏ để dễ tính toán, nhưng trong thực tế, các số phải có giá trị lớn hơn Cụ thể, p = 61 là số nguyên tố thứ nhất (cần giữ bí mật hoặc hủy sau khi tạo khóa), q = 53 là số nguyên tố thứ hai (cũng cần giữ bí mật hoặc hủy) Từ đó, ta tính được n = pq = 3233, là môđun được công bố công khai Số mũ công khai e được chọn là 17, trong khi số mũ bí mật d là 2753.
Khóa công khai trong hệ thống mã hóa được biểu diễn bằng cặp (e, n), trong đó e là 17 và n là 3233 Khóa bí mật được ký hiệu là d với giá trị là 2753 Hàm mã hóa cho văn bản rõ m được tính bằng công thức encrypt(m) = m^e mod n, ví dụ, để mã hóa giá trị 123, ta có encrypt(123) = 123^17 mod 3233 = 855 Để giải mã văn bản mã c, ta sử dụng hàm decrypt(c) = c^d mod n; cụ thể, giải mã giá trị 855 sẽ cho kết quả decrypt(855) = 855^2753 mod 3233 = 123.
Cả hai phép tính trên đều có thê được thực hiện hiệu quả nhờ giải thuật bình phương và nhân
3.2.5 Chuyển đổi văn bản rõ
Trước khi tiến hành mã hóa, cần chuyển đổi văn bản rõ (chuyển đổi từ M sang m) để đảm bảo không có giá trị nào của M tạo ra văn bản mã không an toàn Nếu bỏ qua bước này, RSA sẽ gặp phải một số vấn đề nghiêm trọng.
Nếu m = 0 hoặc m = 1 sẽ tạo ra các bản mã có giá trị là 0 và 1 tương ứng
Khi mã hóa với số mũ nhỏ như e = 3 và giá trị m cũng nhỏ, giá trị m^e sẽ nhỏ hơn so với n, dẫn đến việc phép môđun không còn hiệu lực Do đó, có thể dễ dàng tìm ra m bằng cách khai căn bậc e của c mà không cần chú ý đến môđun.
TIEU LUAN MOI download : skknchat@gmail.com
Ứng dụng thực tế của RSA
Tiêu chuẩn RSA được sử dụng phổ biến trong nhiều lĩnh vực như chữ ký số, thương mại điện tử, bảo mật và xác thực Theo Thông tư số 01/2011/TT-BTTTT ban hành ngày 04/01/2011 của Bộ trưởng Bộ Thông tin và Truyền thông, tiêu chuẩn RSA được khuyến nghị áp dụng trong các cơ quan nhà nước, thuộc nhóm tiêu chuẩn về an toàn thông tin.
3.4.1 Chữ ký điện tử (Digital Signature)
Chữ ký điện tử là hình thức chữ ký được tạo ra dưới dạng từ, chữ số, ký hiệu, âm thanh hoặc các định dạng khác thông qua phương tiện điện tử Nó có sự kết nối logic với thông tin mà nó đại diện, giúp xác thực và bảo mật trong giao dịch trực tuyến.
Chữ ký điện tử là công cụ quan trọng để xác nhận danh tính của người ký và thể hiện sự đồng ý của họ đối với nội dung của thông điệp dữ liệu Việc sử dụng chữ ký điện tử không chỉ đảm bảo tính xác thực mà còn nâng cao độ tin cậy trong các giao dịch điện tử.
Chữ ký điện tử là 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 đó.
Chữ ký điện tử được hình thành thông qua việc áp dụng thuật toán băm một chiều lên văn bản gốc, tạo ra bản phân tích văn bản (message digest) hay còn gọi là fingerprint Sau đó, fingerprint này được mã hóa bằng private key để tạo ra chữ ký số, đính kèm với văn bản gốc Khi cần xác thực, fingerprint mới sẽ được tính toán lại và so sánh với fingerprint cũ, được phục hồi từ việc giải mã chữ ký số Mô hình chung của chữ ký điện tử đảm bảo tính toàn vẹn và xác thực của thông tin.
Chữ ký điện tử có nhiều đặc điểm đa dạng, bao gồm tên hoặc hình ảnh cá nhân kết hợp với dữ liệu điện tử, mã khóa bí mật, và dữ liệu sinh trắc học như hình ảnh mặt, dấu vân tay, hay hình ảnh mống mắt, giúp xác thực danh tính người gửi Mỗi loại chữ ký điện tử đều có mức độ an toàn khác nhau.
Quy trình thực hiện chữ ký điện tử :
1 Dùng giải thuật băm để thay đổi thông điệp cần truyền đi, kết quả là ta được một message digest, dùng giải thuật md5 (message digest 5) ta được digest có chiều dài 128 bit, dùng giải thuật sha ( secure hash algorithm ) ta có chiều dài 160 bit.
TIEU LUAN MOI download : skknchat@gmail.com
2 Sử dụng khóa private key của người gửi để mã hóa mesage digest thu được ở bước 1. Thông thường ở bước này ta dùng giải thuật rsa Kết quả thu được gọi là digital signature của mesage ban đầu.
3 Gộp digital signature vào message ban đầu, công việc này gọi là ‘’ ký nhận ’’ vào message Sau khi đã ký nhận vào message, mọi sự thay đổi trên message sẽ bị phát hiện trong giai đoạn kiểm tra Ngoài ra, việc ký nhận này đảm bảo người nhận tin tưởng message này xuất phát từ người gửi chứ không phải là ai khác.
1 Dùng public key của người gửi (khóa này được thông báo đến mọi người) để giải mã chữ ký số của message.
2 Dùng giải thuật (md5 hoặc sha) hàm băm message đính kèm.
3 So sánh kết quả thu được ở bước 1 và 2 Nếu trùng nhau, ta kết luận message này không bị thay đổi trong quá trình truyền và message này là của người gửi.
Mỗi cá nhân tham gia hệ thống chữ ký điện tử cần được cấp một bộ khóa bao gồm khóa công khai và khóa riêng tư Bộ khóa này được sử dụng để xác định danh tính của cá nhân bởi một tổ chức có thẩm quyền, được công nhận trong phạm vi sử dụng.
SSL là một giao thức đa mục đích được thiết kế để mã hóa toàn bộ thông tin truyền tải giữa hai ứng dụng qua cổng 443 Được phát triển lần đầu bởi nhóm nghiên cứu Netscape vào năm 1994, SSL hiện nay đã trở thành chuẩn bảo mật phổ biến trên Internet.
Phiên bản hiện nay là SSL 3.0 và đang tiếp tục được bổ xung hoàn thiện.
TIEU LUAN MOI download : skknchat@gmail.com
CHƯƠNG IV: GIAO THỨC THỎA THUẬN KHÓA DIFFIE
Hình 4.1 Giáo sư Martin Hellman (giữa) cùng đồng nghiệp là Whitfield Diffie (phải) đã khám phá ra mật mã khóa công khai Diffie-Hellman.
Năm 1976, Whitfield Diffie và Martin Hellman đã công bố bài viết "Phương hướng mới trong mật mã học," đánh dấu một bước đột phá quan trọng trong lĩnh vực mã hóa Bài viết này giới thiệu một phương pháp mới để phân phối các khóa mật mã, làm thay đổi căn bản cách thức hoạt động của các hệ thống mật mã hóa.
Hệ thống đầu tiên sử dụng khóa công khai hay khóa mật mã không đối xứng là trao đổi khóa Diffie-Hellman Sự phát triển này đã kích thích sự ra đời của nhiều thuật toán mã hóa mới, đặc biệt là các thuật toán chìa khóa bất đối xứng.
Trao đổi khóa Diffie-Hellman, được phát minh độc lập bởi Malcolm J Williamson tại Trụ sở Truyền Thông Chính phủ Anh (GCHQ) vài năm trước, đã trở thành một thuật toán quan trọng trong lĩnh vực an ninh mạng Vào năm 2002, Hellman đã giới thiệu thuật toán này, góp phần vào sự phát triển của các phương pháp bảo mật thông tin hiện đại.
Tải xuống TIEU LUAN MOI tại địa chỉ skknchat@gmail.com, nơi chúng ta có thể trao đổi về khóa Diffie–Hellman–Merkle, đồng thời ghi nhận đóng góp quan trọng của Ralph Merkle, người phát minh ra thuật toán mã hóa công khai.