z.Misc.‎ > ‎

Kỹ Thuật Mật Mã

Sơ lược về Kỹ Thuật Mật Mã

Võ Cao San

LTS. Võ Cao San, tốt nghiệp Tiến Sĩ Toán đại học Stanford, 1995, chuyên ngành Đại Số Trừu Tượng và Lý Thuyết Số, Cử Nhân ba ngành Toán Lý Thuyết, Vật Lý và Thiên Văn Học đại học Berkeley, California, 1990, Kỹ Sư Điện, ngành Điều Khiển Tự Động, đại học Bách Khoa Sàigòn, 1984, trước khi vượt biên và định cư tại Hoa Kỳ năm 1985. Hiện làm việc tại Trung Tâm Nghiên Cứu Ames của NASA (Cơ Quan Quản Trị Hàng Không và Không Gian Hoa Kỳ) và trước đó tại Viện Tiêu Chuẩn và Kỹ Thuật Quốc Gia (NIST, Bộ Thương Mại Hoa Kỳ) trong lãnh vực Kỹ Thuật Tin Học và Mật Mã.

 

Kỹ Thuật Mật Mã (Cryptography/Cryptology) là một trong những ngành khoa học kỹ thuật cổ xưa nhất của nhân loại. Công việc nguyên cứu chính của những chuyên gia ngành Kỹ Thuật Mật Mã là thiết kế những mật mã mới và chuyện ngược lại của nó là nguyên cứu tìm cách bẻ gẫy những mật mã sẳn có, đang sử dụng. Có nhiều loại mật mã đã được thiết kế từ ngàn xưa và phát triển theo nền văn minh của nhân loại và được sử dụng trong nhiều lãnh vực cần sự liên lạc và thông tin an toàn, từ quân sự, quốc phòng, thương mại, khoa học, kỹ thuật cho đến những trò chơi sinh hoạt giải trí và ngày nay rất phổ biến trên hệ thống liên lạc điện toán toàn cầu. Trong những mật mã đơn giản loại giải trí, thường không có chìa khóa (key) chính thức cần phải đồng nhất giữa hai bên, mà người giải mã thường suy đoán chiếc chìa khóa đã dùng bởi người mã hóa thông điệp gửi đi. Nhưng cho những mật mã phức tạp và nghiêm trọng hơn, chìa khóa phải dính liền với mỗi phương pháp mã hóa/giải mã và cho mỗi cặp người sử dụng.

 

Phần lớn những mật mã trong thời buổi sơ khai cho đến ngày nay đều thuộc về loại mật mã dùng chìa khóa bí mật (Secret Key Cryptography). Nghĩa là chỉ có một chìa khóa duy nhất vừa dùng để mã hóa và để giải mã giữa hai người muốn liên lạc tín hiệu mật mã với nhau. Tất nhiên, họ phải có một biện pháp nào đó để trao đổi và đồng ý với nhau chiếc chìa khóa bí mật đó trước khi hai bên có thể bắt đầu truyền thông tín hiệu với nhau. Tất nhiên, sự trao đổi và đồng ý chiếc chìa khoá mật mã đó phải tuyệt đối an toàn nhưng cũng phải đơn giản, tiện lợi, và có thể thay đổi nhanh chóng khi cần, vì một chìa khóa chỉ chứa một lượng tin tức nhỏ so với số lượng thông tin mà nó sẽ giúp bảo vệ trong chuyện mã hóa/giải mã. Đời sống của một chìa khóa có thể vĩnh viễn hay chỉ dùng được một lần duy nhất, nhưng thực tế hơn là vài năm, vài tháng hay chỉ vài ngày, tùy theo sức mạnh của phương pháp mã hoá và giải mã và sự phát triển ngành điện toán vi tính. Sức mạnh của điện toán vi tính đã giúp bẻ gẫy những mật mã được xem như là hoàn hảo nhất hay “không thể bẻ gẫy” vài thập niên trước và nó cũng giúp cho việc thiết kế những phương pháp mã hóa mới dựa trên khả năng phong phú của máy vi tính.

 

Chừng ba thập niên trở lại đây, có một loại mật mã mới được phát minh và nhanh chóng đạt được những ưu điểm đặc biệt của nó so với mật mã sử dụng chìa khóa bí mật. Đó là mật mã sử dụng chìa khóa công cộng (Public Key Cryptography). Như tên gọi, điểm đặc biệt của mật mã này có thêm một chìa khóa công cộng, nghĩa là ai cũng có thể tra biết được như trong trường hợp số điện thoại của chúng ta được in trong những cuốn niên giám điện thoại. Tất nhiên, người sử dụng cũng có riêng mình một chìa khóa bí mật, tương tự như trường hợp số PIN hay password rất phổ thông hiện nay, nhưng chìa khóa bí mật liên quan với chìa khóa công cộng bằng những công thức toán tùy theo từng phương thức mã hóa/giải mã. Phương thức này hoạt động như sau: bất kỳ ai muốn gửi một thông điệp đến người nhận NN, thì người đó sẽ tra tìm chìa khóa công cộng của NN rồi dùng nó mã hóa thông điệp đó. Chỉ có NN giải mã và đọc được thông điệp đó vì NN là người duy nhất biết chìa khóa bí mật của riêng mình.  Loại mật mã này cũng có thể giúp thiết kế dễ dàng chữ ký điện tử (digital signature), vì NN có thể ký tên vào thông điệp muốn gửi đi dùng chìa khóa bí mật của mình. Bất cứ ai nhận cũng có thể dùng chìa khóa công cộng của NN để kiểm nhận thông điệp đó là do chính NN ký tên và gửi đi chứ không thể là ai khác. Hiện nay có rất nhiều loại mật mã loại này đã phổ thông trên thương trường hay quân sự, như phương thức RSA hay ECC. Phương thức mật mã RSA dựa trên sự phức tạp của bài toán “phân tích một số thật lớn thành những thừa số nguyên tố”. Bài toán này rất dễ cho ngay cả học sinh trung học giải đoán nếu chỉ liên quan đến những con số nguyên tố nhỏ. Trong mật mã quan trọng, người ta dùng những con số lớn cả ngàn con số thì việc giải bài toán này để tìm chìa khóa bí mật không phải là chuyện nhanh chóng cho cả những máy vi tính nhanh nhất hiện có. Phương thức RSA thông dụng nhất hiện nay vì nền tảng tương đối đơn giản của nó, lý thuyết có thể giải thích bởi những công thức toán học trình độ trung học nên dễ dàng sữ dụng hơn một phương thức mật mã ECC (Elliptic Curve Cryptography). Phương thức mật mã ECC, như tên gọi, mã hóa thông tin lên một nhóm (group) bao gồm những điểm trên đường cong elliptic. Đường cong elliptic này được định nghĩa trên một trường đại số hữu hạn (finite field), hay nói cho đơn giản hơn, là dựa trên những điểm tọa độ số nguyên trên trục tọa độ Descartes, kể cả một điểm đặc biệt ở vô cực (infinity). Do đó, tuy gọi là đường cong elliptic, nhưng thực tế, nó chỉ là những điểm có tọa độ số nguyên, thỏa mãn một phương trình đại số bậc ba. Phương thức này tương đối non trẻ, phát minh năm 1985 bởi hai nhà toán học Miller và Koblitz, nhưng đã thu hút sự chú ý của rất nhiều nhà toán học, cũng như kỹ sư điện toán và mật mã. Lý do là vì lý thuyết về đường cong elliptic là một lý thuyết cổ điển, có thể nói là đã hoàn hảo trong đại số trừu tượng (astract algebra/algebraic geometry) trong khuôn khổ của những nhà toán học với nhau và lần đầu tiên tìm được áp dụng vào kỹ thuật mật mã. Phương thức mật mã ECC có lẽ là một trong hai thành quả duy nhất trong hai thập niên qua được giới khoa học kỹ thuật ngoài phạm vi toán học thuần túy chú ý đến sự quan trọng của môn đại số trừu tượng được áp dụng vào kỹ thuật điện toán thực dụng. Cũng nên nhắc lại thành quả kia là sự chứng minh trọn vẹn thành công “Ðịnh Lý Cuối Cùng” do thiên tài toán học Fermat dự đoán vài trăm năm trước (Fermat’s Last Theorem). Dư luận công chúng chú ý đặc biệt đến mức độ: có lẽ là lần đầu tiên trong lịch sử toán học hiện đại, có những nhà toán học nói chuyện và chứng minh một định lý toán học ở một giảng đường bên ngoài khuôn viên trường đại học mà khán thính giả đủ thành phần, trình độ phải tranh nhau mua vé vào cửa! Sự an toàn của phương thức mật mã dùng chìa khóa công cộng hoàn toàn dựa trên tính chất “thực tế không thể giải” (practically unsolvable) của các “hàm số một chiều” (one-way function): chúng ta có thể tính dễ dàng giá trị của một hàm số từ các biến số (variables) của nó. Ngược lại, từ giá trị của hàm số, việc tìm lại giá trị của các biến số là chuyện không thể thực hiện, trên lý thuyết cũng như trong thực tế ứng dụng. Thực thế, với sự giúp đỡ của các máy vi tính nhanh nhất hiện tại, việc giải mã, tương đương với giải những hàm số đó cũng mất hàng ngàn năm.

 

Những áp dụng mới nhất của lý thuyết Vật Lý Lượng Tử (Quantum Physics) vào Kỹ Thuật Mật Mã đã dẫn đến những tiến bộ nhảy vọt trong ngành thông tin mật mã. Hiện tại và trong tương lai gần, chúng ta đã và sẽ có thể thiết kế những hệ thống thông tin mật mã có thể tự động phát hiện những sự xâm nhập, nhiễu xạ hay nghe lén bất hợp pháp. Phương thức Mật Mã Lượng Tử (Quantum Cryptography) đã đáp ứng nhu cầu này, dựa trên “Nguyên Lý Bất Định” (Uncertainty Principle), một nguyên lý đặc trưng của Vật Lý Lượng Tử do nhà vật lý học Heisenberg đề ra vào thập niên 1920. Theo nguyên lý này, chúng ta không thể đo lường tất cả mọi thông số của một hệ thống lượng tử (thí dụ, một photon) một cách chính xác tuyệt đối. Cho nên một trạng thái lượng tử ngẫu nhiên sẽ không thể được đo lường chính xác tuyệt đối và cũng không thể nào được sao y (clone/copy) lại. Một người muốn nghe lén hay phá rối tín hiệu trên một hệ thống thông tin sử dụng phương thức Mật Mã Lượng tử sẽ bị phát hiện ngay vì những nhiễu loạn người ấy gây vào hệ thống thông tin đó. Ý nghĩ đầu tiên về phương thức này xem như được khai sinh từ năm 1969 bởi ông Stephen Wiesner, khi ông còn là một sinh viên cao học đại học Columbia. Ý kiến của Wiesner về việc sử dụng những nguyên lý của Vật Lý Lượng Tử để thiết kế một loại Tiền Tệ Lượng Tử (Quantum Money) không thể bị giả mạo bằng cách cài vào tiền nhiều photon phân cực (polarized photons). Chúng ta không thể nào giã mạo hay sao lại tiền đó nếu không biết chính xác sự phân cực của từng photon cài trên nó. Không may, ý kiến và bài viết của ông đi trước hơn thời đại, nên không được ai chú ý và phổ biến. Mãi đến năm 1984, hai nhà khoa học Charles Bennett và Gilles Brassard mới nhận biết và phát triển ý kiến đó thành một phương thức (thường gọi là BB84) để trao đổi thông tin bí mật giữa hai máy vi tính trong phạm vi phòng thí nghiệm, để đồng nhất một chìa khóa bí mật để sử dụng cho một phương thức mã hoá/giải mã dùng chìa khóa bí mật nào đó. Tuy nhiên, lãnh vực Mật Mã Lượng Tử này vẫn không phổ quát lắm cho đến những năm đầu thập niên 1990, vì tính chất quá lý thuyết của nó và thiếu những kết quả thực nghiệm song hành ra khỏi phạm vi phòng thí nghiệm. Không bao nhiêu khoa học gia đầu tư nghiên cứu vào lãnh vực này; toàn bộ những bài báo nghiên cứu, xuất bản hay không xuất bản, cho đến năm 1993 chỉ vỏn vẹn ở con số 57. Nhưng từ năm 1993, song song với sự phát triển thực tế của lãnh vực Tính Toán Lượng Tử (Quantum Computation), ngành Mật Mã Lượng Tử đã phát triển vượt bực, thu hút sự nghiên cứu của khoa học gia trên toàn thế giới. Đã có thêm nhiều phương thức mật mã mới xuất hiện như E91 và B92. Những kết quả thực nghiệm cũng vượt ra khỏi phạm vi phòng thí nghiệm để có thể liên lạc xa hơn qua hệ thống sợi quang dẫn (optic fiber) hay qua hệ thống vệ tinh.

 

Sự phát triển của Kỹ Thuật Điện Toán cũng phát huy khả năng giải quyết những bài toán phức tạp hơn một cách nhanh chóng hơn. Kết quả nghiên cứu trên lãnh vực Máy Tính Lượng Tử (Quantum Computers) nếu thành công trong tương lai gần cũng đưa đến những nhu cầu thay đổi thiết kế mật mã mới phức tạp hơn thì con người ngày càng có thể đương đầu với một số lượng thông tin khổng lồ một cách dễ dàng, tiện dụng và nhanh chóng gần như tức thời.

 

Kỹ Thuật Mật Mã là một ngành năng động trong lịch sử phát triển của nó, vì luôn luôn có những phát minh ra những phương thức mã hoá/giải mã mới và những nghiên cứu để bẻ gẩy những phương thức đó. Không có phương thức mật mã nào được công nhận là tuyệt đối an toàn vĩnh viễn cả vì kiến thức của con người có giới hạn nhưng cũng phát triển không ngừng.


[Tập San Hướng Việt - Hội Văn Hóa Khoa Học Việt Nam - Số 14 - Năm 2002]



ĉ
San Vo,
Apr 16, 2017, 10:58 AM
Ċ
San Vo,
Apr 16, 2017, 10:58 AM
Comments