Mật mã DNA và xu hướng phát triển
Thách thức trong mật mã truyền thống
Mã hóa là một thành phần trong mật mã hay khoa học truyền tin an toàn, được định nghĩa là một quá trình làm cho thông tin được ẩn hoặc bí mật. Trong thời đại kỹ thuật số này, mã hóa dựa trên hai hướng thuật toán chính.
- Mật mã khóa công khai hoặc phi đối xứng: Sử dụng hai khóa, một là khóa mã hóa công khai và khóa còn lại là khóa giải mã riêng.
- Mật mã khóa bí mật hoặc đối xứng: Sử dụng cùng một khóa cho quá trình mã hóa và giải mã.
Trên thực tế, các khóa được sử dụng trong mật mã hiện đại lớn đến mức một tỷ máy tính hoạt động cùng với mỗi quá trình xử lý một tỷ phép tính mỗi giây vẫn sẽ phải mất một nghìn tỷ năm để bẻ khóa một cách hoàn toàn. Tuy nhiên, trong tương lai máy tính lượng tử sẽ thay thế máy tính nhị phân truyền thống. Vì chúng có thể hoạt động ở cấp độ lượng tử nên những máy tính này dự kiến sẽ thực hiện các phép tính và hoạt động ở tốc độ mà không máy tính nào đang sử dụng hiện nay có thể đạt được. Khi đó, những mật mã phải mất hàng nghìn tỷ năm để phá có thể bị bẻ khóa trong thời gian ngắn hơn nhiều bằng máy tính lượng tử.
Mật mã truyền thống tồn tại vấn đề về phân phối khóa và nghe lén. Nhiều chuyên gia bảo mật đã chỉ ra rằng tính bí mật hoặc sức mạnh của mật mã chủ yếu dựa trên ba điều chính:
- Cơ sở hạ tầng: Nếu mật mã được triển khai chủ yếu bằng phần mềm thì cơ sở hạ tầng sẽ là liên kết yếu nhất. Việc xâm nhập vào một hệ thống hoặc lây nhiễm mã độc luôn dễ dàng hơn là bẻ khóa một khóa bí mật lớn. Trong nhiều trường hợp, cách dễ nhất để phát hiện khóa bí mật có thể là nghe lén người dùng và chặn bắt khóa bí mật đó khi nó được chuyển đến chương trình mã hóa.
- Kích thước khóa: Trong mật mã, kích thước khóa rất quan trọng. Nếu kẻ tấn công không thể cài đặt trình theo dõi gõ bàn phím thì cách tốt nhất để bẻ khóa văn bản mã hóa là cố gắng đoán khóa thông qua phương pháp vét cạn khóa. Một mã pháp thực tế phải sử dụng kích thước khóa khiến việc tìm kiếm vét cạn trở nên không thực tế. Tuy nhiên, vì máy tính ngày càng nhanh hơn mỗi năm nên kích thước của khóa “an toàn hành lang” không ngừng tăng lên.
- Chất lượng thuật toán: Các lỗ hổng mật mã có thể tạo ra các “phím tắt” cho phép kẻ tấn công bỏ qua các khối khóa lớn trong khi thực hiện tìm kiếm vét cạn. Ví dụ: tiện ích nén nổi tiếng PKZIP theo truyền thống đã kết hợp tính năng mã hóa được xây dựng tùy chỉnh sử dụng khóa 64 bit. Về lý thuyết, phải mất 264 lần thử để kiểm tra tất cả các khóa có thể. Trên thực tế, có một cuộc tấn công tắt chống lại mã hóa PKZIP chỉ cần 227 lần thử để bẻ khóa bản mã.
Điện toán DNA
Tổng quan về điện toán DNA
Một kỹ thuật mới để bảo mật dữ liệu bằng cách sử dụng cấu trúc sinh học của DNA được gọi là Điện toán DNA, được phát minh bởi Leonard Max Adleman vào năm 1994 để giải các bài toán phức tạp như bài toán đường Hamilton có hướng và bài toán NP - đầy đủ tương tự như bài toán “Người bán hàng du lịch”. Adleman còn được biết đến với chữ cái “A” trong thuật toán RSA - một thuật toán đã trở thành tiêu chuẩn trên thực tế cho việc mã hóa dữ liệu. Kỹ thuật này sau đó đã được nhiều nhà nghiên cứu mở rộng để mã hóa và giảm kích thước lưu trữ dữ liệu giúp việc truyền dữ liệu qua mạng nhanh và bảo mật hơn.
DNA có thể được sử dụng để lưu trữ và truyền dữ liệu. Các sợi DNA là các polyme dài gồm hàng triệu nucleotide liên kết. Những nucleotide này bao gồm một trong bốn bazơ nitơ, một loại đường có năm carbon và một nhóm phosphat. Các nucleotide tạo nên các polyme này được đặt tên theo bazơ nitơ mà nó bao gồm: Adenine (A), Cytosine (C), Guanine (G) và Thymine (T). Về mặt toán học, điều này có nghĩa là chúng ta có thể sử dụng bảng gồm 4 chữ cái Σ={A,G,C,T} này để mã hóa thông tin, điều này là quá đủ vì máy tính điện tử chỉ cần hai chữ số: 1 và 0, cho cùng một mục đích.
Ưu điểm của điện toán DNA
- Tốc độ: Máy tính thông thường có thể thực hiện khoảng 100 MIPS (hàng triệu lệnh mỗi giây). Việc kết hợp các chuỗi DNA như Adleman đã chứng minh việc tạo ra các phép tính tương đương 109 hoặc cao hơn, được cho là nhanh hơn 100 lần so với máy tính nhanh nhất.
- Yêu cầu lưu trữ tối thiểu: DNA lưu trữ bộ nhớ ở mật độ khoảng 1 bit trên nanomet khối, trong đó phương tiện lưu trữ thông thường cần 1012 nanomet khối để lưu trữ 1 bit.
- Yêu cầu về năng lượng tối thiểu: Không cần nguồn điện để tính toán DNA trong khi quá trình tính toán đang diễn ra. Các liên kết hóa học là khối xây dựng của DNA diễn ra mà không cần bất kỳ nguồn năng lượng bên ngoài nào. Không có sự so sánh nào với yêu cầu về năng lượng của máy tính thông thường.
- Nhiều thuật toán mã hóa DNA đã được nghiên cứu và đề xuất: Hệ thống mã hóa khóa đối xứng và phi đối xứng sử dụng DNA, Hệ thống ẩn mã (Steganography) DNA, Thuật toán mã hóa kết hợp DNA và ánh xạ hỗn loạn (chaotics map).
Mã hóa DNA
Mã hóa DNA là một quá trình che giấu thông tin di truyền bằng các phương pháp tính toán để cải thiện quyền riêng tư. Quá trình này bao gồm việc sử dụng các phân tử DNA làm nguồn khoá để mã hóa và giải mã thông tin. Thông tin trong mã hóa DNA được mã hóa theo trình tự các nucleotide, tạo nên phân tử DNA hoàn chỉnh.
Sự cần thiết phải mã hóa DNA
Mật mã DNA kết hợp công nghệ sinh học hiện đại và mật mã học. Mật mã dựa trên DNA được định nghĩa là ẩn dữ liệu theo trình tự DNA. Cũng giống như thuật toán DES và RSA, có các thuật toán DNA như hệ thống mật mã DNASC (Hệ thống steganography DNA) và hệ thống khóa công khai, sử dụng DNA làm hàm một chiều để phân phối khóa. Sự cần thiết phải sử dụng mật mã DNA vì:
- Mật mã DNA là một trong những công nghệ phát triển nhanh nhất trên thế giới.
- Adelman đã cho thế giới thấy cách nó có thể được sử dụng để giải các bài toán phức tạp như bài toán đường dẫn Hamilton có hướng và bài toán NP - đầy đủ. Do đó người dùng có thể thiết kế và triển khai các thuật toán mật mã phức tạp hơn.
- Mật mã DNA mang lại hy vọng mới để phá vỡ các thuật toán không thể phá vỡ. Điều này là do điện toán DNA cung cấp tốc độ cao hơn, yêu cầu về dung lượng lưu trữ và năng lượng tối thiểu.
- DNA lưu trữ bộ nhớ ở mật độ khoảng 1 bit/ nm3 trong đó phương tiện lưu trữ thông thường yêu cầu 1012 nm3/bit.
- Không cần nguồn điện để tính toán DNA trong quá trình tính toán đang diễn ra.
- Dung lượng lưu trữ lớn, một gram DNA chứa 1021 base DNA tương đương với 108 TB dữ liệu. Do đó có thể lưu trữ tất cả dữ liệu trên thế giới trong vài miligam.
Một số ứng dụng của mã hóa DNA
- Xác thực và chống giả mạo: Chuỗi DNA có thể được nhúng vào các thực thể vật lý như một mã định danh duy nhất. Do đó, việc mã hóa DNA khiến những kẻ làm hàng giả khó giả mạo DNA được nhúng, từ đó cải thiện khả năng truy xuất nguồn gốc và tính xác thực.
- Lưu trữ dữ liệu an toàn: DNA có thể lưu trữ nhiều dữ liệu ở dạng nhỏ gọn và khả năng lưu trữ thông tin dày đặc này khiến chúng trở nên hấp dẫn để sử dụng trong nhiều ứng dụng khác nhau.
- Mã hóa sinh trắc học: Bằng cách mã hóa dữ liệu nhạy cảm thành chuỗi DNA được mã hóa, có thể nâng cao tính riêng tư và bảo mật của hệ thống xác thực sinh trắc học.
- Tạo hình mờ dữ liệu và ẩn mã: Các kỹ thuật dựa trên DNA được sử dụng để tạo hình mờ dữ liệu và ẩn mã trong đó thông tin được ẩn trong chuỗi DNA. Bằng cách mã hóa dữ liệu có thể nhúng tin nhắn ẩn hoặc hình mờ kỹ thuật số.
Ưu điểm của mật mã DNA
- Mức độ bảo mật cao: Mật mã DNA cung cấp mức độ bảo mật cao do tính phức tạp của chuỗi DNA và khó khăn trong việc thao tác và giải mã các phân tử DNA. Trình tự DNA có thể được sử dụng làm khóa mật mã khiến chúng hầu như không thể bị phá vỡ bằng công nghệ hiện tại.
- Không gian khóa lớn: Mật mã DNA cho phép một không gian khóa lớn, điều này có thể khiến kẻ tấn công khó tìm ra khóa chính xác hơn. Không gian khóa có thể được mở rộng bằng cách sử dụng chuỗi DNA dài hơn hoặc bằng cách mã hóa nhiều khóa trong một phân tử DNA.
- Khả năng chống lại các cuộc tấn công: Mật mã DNA có khả năng chống lại một số loại tấn công nhất định, chẳng hạn như tấn công vét cạn và đặc biệt là tấn công điện toán lượng tử. Điều này là do sự phức tạp vốn có của trình tự DNA và sự khó khăn trong việc thao tác chúng.
Nhược điểm của mật mã DNA
- Chi phí cao: Chi phí cao vì phải sử dụng thiết bị chuyên dụng để mã hóa và giải mã các phân tử DNA. Chi phí cao này khiến các cá nhân hoặc tổ chức có nguồn lực hạn chế sẽ khó tiếp cận hơn.
- Độ phức tạp về mặt kỹ thuật: Vì mật mã DNA yêu cầu mã hóa và giải mã thông điệp nên những người không phải là chuyên gia có thể gặp khó khăn khi sử dụng và triển khai nó trong các ứng dụng thực tế.
- Tỷ lệ lỗi cao: Các phân tử DNA dễ bị hư hỏng và sai sót hơn. Sự khác biệt có thể xảy ra trong quá trình tổng hợp hoặc giải trình tự, gây ra lỗi trong thông tin được giải mã.
An toàn và thách thức đối với mật mã DNA
Mật mã DNA sở hữu cả tính bảo mật lẫn những thách thức cần được giải quyết. Dưới đây là một số khía cạnh và thách thức bảo mật chính có liên quan.
Xem xét về độ an toàn đối với mật mã DNA
- Độ mạnh mã hóa: Tính bảo mật của các hệ thống mật mã này nằm ở độ mạnh của thuật toán mã hóa và khóa bảo vệ. Thuật toán dựa trên DNA phải được thiết kế cẩn thận để cung cấp đủ khả năng bảo mật trước các cuộc tấn công.
- Quản lý khóa: Mật mã DNA cần quản lý và bảo vệ khóa mã hóa. Các khóa để mã hóa và giải mã chuỗi DNA phải được tạo, phân phối và lưu trữ một cách an toàn. Hệ thống quản lý khóa phải được thiết kế để đảm bảo tính bảo mật, tính toàn vẹn và tính sẵn sàng của khóa.
- Các mối quan ngại về quyền riêng tư và đạo đức: Hệ thống dựa trên DNA bao gồm việc xử lý thông tin di truyền, điều này làm phát sinh các mối lo ngại về quyền riêng tư và đạo đức. Cần đặt ra các giao thức và quy định nghiêm ngặt để bảo vệ quyền riêng tư của cá nhân và ngăn chặn việc truy cập trái phép vào dữ liệu di truyền.
Một số thách thức đối với mật mã DNA
- Sửa lỗi và độ trung thực của dữ liệu: Các phân tử DNA dễ mắc lỗi hơn trong quá trình giải trình tự và tổng hợp, điều này có thể dẫn đến sự thiếu chính xác. Do đó, cần phải có các kỹ thuật và giao thức sửa lỗi để đảm bảo giải mã chính xác các chuỗi DNA được mã hóa.
- Chi phí và thực hiện thực tế: DNA liên quan đến thiết bị phòng thí nghiệm chuyên dụng, chuyên môn và thuốc thử khiến việc thực hiện trở nên tốn kém và phức tạp. Vì vậy, những cân nhắc về hiệu quả chi phí và khả năng tích hợp với hệ thống hiện tại phải được giải quyết để áp dụng rộng rãi hơn.
- Tiêu chuẩn hóa và quy định: Việc tạo ra một khuôn khổ quy định và tiêu chuẩn hóa cho mật mã DNA là rất quan trọng. Các hướng dẫn và phương pháp thực hành tốt nhất phải được phát triển để đảm bảo quyền riêng tư, bảo mật và việc sử dụng có đạo đức các hệ thống mật mã dựa trên DNA.
Kết luận
Mặc dù mật mã DNA chưa thực sự phổ biến nhưng trong vài năm qua những thuật ngữ này đang thu hút sự chú ý khi áp dụng các phương pháp DNA vào mật mã và ẩn mã. Mật mã DNA đang ở giai đoạn sơ khai, những năm gần đây công việc tính toán DNA mới đạt được tiến bộ thực sự. Việc đẩy mạnh nghiên cứu mật mã DNA trong nhiều năm qua đã đặt nền tảng tốt cho việc áp dụng các phương pháp DNA vào mật mã và kỹ thuật giấu tin. Hiện nay, nhiều nghiên cứu và khoá học đã và đang được thực hiện để xác định một tiêu chuẩn mật mã tốt hơn và không thể phá vỡ. Kết quả là một số lược đồ đã được đề xuất nhằm cung cấp một số mức độ bảo mật và đang tiếp tục được nghiên cứu. Hiện tại, nghiên cứu về mật mã DNA tập trung vào việc sử dụng trình tự DNA để mã hóa dữ liệu nhị phân. Mặc dù lĩnh vực này cực kỳ phức tạp và công việc hiện tại vẫn đang trong giai đoạn phát triển nhưng vẫn có rất nhiều hy vọng rằng điện toán DNA sẽ hoạt động như một kỹ thuật tốt cho bảo mật thông tin.
ThS. Hoàng Đình Linh (Viện Khoa học - Công nghệ mật mã);
ThS. Phan Tất Tín (Đại học Nguyễn Huệ).