ảo giác A.I. – A.I hallucination

Con người dùng ngôn ngữ tự nhiên để giao tiếp, để mô tả thế giới xung quanh! Nhưng tất cả các ngôn ngữ tự nhiên, dù ngữ pháp chặt chẽ đến đâu, cũng có nhiều điểm yếu, mà yếu nhất là tính logic, tính cấu trúc và tính trình tự. Nhiều khi, rất nhiều người học được một mớ ngôn từ, nhưng không thực sự hiểu nội dung bên trong, họ tự tạo ra một cái “ảo giác hiểu biết – hallucination”! Về điều này thì A.I. hiện nay cũng giống y hệt như con người, và chúng ta có thể dùng “tấm gương” A.I. đó để tự tìm hiểu xem, phải chăng chúng ta cũng có rất nhiều “ảo giác” suốt bấy lâu nay!?

Một ví dụ là “Trương Định & Trương công Định”, chữ Hán “Trương công Định” là ý nói: ông (công) họ Trương, tên Định. Vì không hiểu cái cú pháp “xxx-công-yyy” này nên nhiều người Việt tự tạo ra một cái ảo giác, bịa ra nhân vật không có thật mang cái tên “Trương Công Định”. Do tiếng Việt mượn từ tiếng Hoa một số lớn từ vựng, câu chữ nên những “ảo giác” do hiểu sai chữ Hán phải nói là… Hằng hà sa số, không đếm hết! Và đã “ảo giác” từ cả ngàn năm nay chứ không phải gần đây mới có! Những bạn đọc trên blog này có thể tìm thấy rất nhiều ví dụ trong các post trước.

Cũng tương tự như vậy, “Lê thị A”, “Nguyễn thị B” là dạng “ảo giác” đã phổ biến đến mức người Việt chấp nhận đó là… hiển nhiên! Xưa đi học, từ cấp 1 cho tới… cấp 4, tôi có thể dễ dàng nhận ra nhiều dạng “ảo giác” này: tự cho là mình hiểu một điều gì đó, nhưng thực chất hoàn toàn không phải vậy. Những người thông minh đôi khi mất vài ngày, vài tuần để nhận ra chỗ sai. Nhưng cũng có rất nhiều người suốt đời chỉ thu lượm được toàn các loại ảo giác, còn không tự nhận thức ra được! Nên mới nói: ngôn ngữ vừa là công cụ trợ giúp tư duy, lại cũng vừa là… dẫn hướng lầm lạc!

Ngày xưa, việc tạo ra các “ảo giác hiểu biết” khi tiếp cận nguồn Hán học là một hiện tượng vô cùng phổ biến, đến mức nhiều người nói “nhăng cuội” theo kiểu “bùa chú”, nói mà không hề hiểu mình đang nói cái gì! Những tưởng vì chữ Hán khó học mới thành ra vậy, hóa ra đến khi tiếp cận nguồn Tây học rồi cũng y chang thế, lâu lâu lại xuất hiện vài ku “ngáo nặng” kiểu: ‘Thuyết hấp dẫn mới’ của Bùi Minh Trí, hay rất nhiều các thể loại “triết học” khác! Đó là chưa kể một bộ phận lớn người Việt cố tình tạo ra các “ảo giác hiểu biết” chỉ để làm màu, lòe người, hay để đi bịp người khác!

Hiện tượng “ảo giác” xảy ra khi con người (hay máy móc) tìm được một liên hệ mang tính thống kê giữa các cụm từ, từ đó dẫn tới giả định rằng giữa những cụm từ đó có một mối quan hệ logic, hay là truyền tải một nội dung nào đó. Đó là sản phẩm của những đầu óc ngây ngô, giản đơn kiểu như con nít, chưa từng được đào luyện qua những tập ngữ vựng (corpus) rộng lớn, phức tạp! Nôm na tức là họ chỉ nhớ được một số từ vựng cơ bản, rồi vì một động cơ nào đó, tự suy diễn, tự bịa ra những nội dung tào lao mà bên trong não bộ không hề có bất kỳ sự tự vấn, kiểm chứng nào!

Với máy móc, đó đơn thuần là do “hạn chế kỹ thuật”, các lý do “phần cứng, phần mềm” hay là do “dữ liệu” chưa đủ. Với con người, ngoài lý do “phần cứng, phần mềm”, quá trình học vấn, rèn luyện ra, lý do lớn hơn là… “do tâm”! Là do cái tâm cuồng loạn, không có công phu tìm hiểu, học hành điều gì cho tử tế, nhưng lại cứ muốn thể hiện! Dưới những áp lực xã hội quá lớn, cái tâm trở nên bất chấp, tự nó tưởng tượng ra những thứ gọi là “hiểu biết, trí thức”, tự nó hoang tưởng đến mức cố cùng! Về điều này thì GS. Cao Xuân Hạo đã viết một bài về chứng “vĩ cuồng” rất đáng đọc!

Tuy vậy, hiện tượng “vĩ cuồng” mà GS. Cao Xuân Hạo đã đề cập đến là tương đối cá biệt, ít xảy ra, còn hiện tượng “vi cuồng” mà post này đang nói tới, thì đối lập lại, chính là từ trong những “ảo giác hiểu biết” dẫn đến cái “chấp ngã”, “ta là đúng”, “ta hơn người”, dẫn tới những cái tôi đấu đá, kình chống nhau, bày ra đủ trò lưu manh lặt vặt, rồi tiếp tục dẫn tới những kiểu cá tính “mãi không chịu lớn” rất thường thấy trong xã hội ngày nay. “Vi cuồng” gây ra những hậu quả thảm khốc hơn “vĩ cuồng” rất nhiều, vì nó phổ quát, sâu rộng đến mức đã trở thành một kiểu “dân tộc tính”!

Chính vì ngôn ngữ lỏng lẻo, nghèo nàn và tùy tiện nên đã đẻ ra những kiểu người chỉ biết có “ảo giác”, “giả tri thức”, bất kỳ lúc nào cũng có thể trở nên “nguy hiểm”! Các ngôn ngữ có tính cấu trúc cao tự bản thân nó đã có một lợi thế nhất định, khi ép buộc người dùng ngôn ngữ vào trong khuôn khổ của những cấu trúc logic nhỏ, giúp loại bớt đi một phần các “ảo giác hiểu biết”. Cũng chính vì tự ý thức được những yếu kém trong ngôn ngữ nên người Trung Quốc rất chú trọng tính chi tiết, kỹ càng và tính kỷ luật trong giáo dục, thậm chí đẩy sự rèn luyện này đến mức khắc nghiệt!

Đó là nói những ngôn ngữ tính cấu trúc yếu như tiếng Việt, còn những ngôn ngữ có tính cấu trúc mạnh như tiếng Anh, Pháp, Nga… thì sao!? Thì cũng y như vậy mà thôi, chỉ là ở một cấp độ cao hơn, phức tạp hơn. Hiện tượng “ảo giác” trong thế giới khoa học, công nghệ, lập trình là… nhan nhãn. Một ví dụ là “async / await”, tự cho rằng mình tìm ra được cách giải quyết vấn đề mới, thực chất còn chưa hiểu được các vấn đề lập trình song song kiểu cổ điển. Kết quả là không hề tạo ra được một giải pháp mới nào, tự bịa ra một loại cú pháp dư thừa vô ích, mà dư thừa tức là có hại!

A.I, đó chỉ là một khái niệm tập hợp (umbrella term) bao gồm vô số thể loại khác nhau! Có những loại A.I. làm những công việc phức tạp, tạo ra những kết quả kỳ diệu, những loại đó thường không nói gì, thậm chí không mấy ai biết đến! Còn cái loại như LLM – sinh ra là để nói nhiều, thì rõ ràng không hiểu được bao nhiêu! A.I. như kiểu LLM, chính là một cái gương phản chiếu thế giới con người, con người thế nào, não trạng như thế nào thì tạo ra được loại A.I. giống y như thế! Chỉ là một tấm gương phản ánh con người mà thôi, thậm chí còn là một tấm gương méo mó!

Nhiều loại A.I. thực sự hữu dụng thường… không tự nhận mình là A.I., thậm chí cố tránh không sử dụng thuật ngữ A.I. Còn những loại đi đâu cũng… “ta đây A.I.” chính thực là những mô hình LLM “to mồm” nhưng “rỗng tuếch”. Chỉ có thiểu năng mới cho rằng ChatGPT, OpenAI… là có “hiểu biết”, đó bất quá chỉ là những công cụ giúp tìm kiếm, sắp xếp thông tin mà thôi, thông tin chính xác tới đâu vẫn còn chưa bàn tới! Chỉ có ngu xuẩn mới cho rằng cần ứng dụng ChatGPT, OpenAI… vào giáo dục, nhất là ở các cấp sơ học, hay bản thân còn cảm thấy chưa có đủ “ảo giác”?

Mục tiêu của giáo dục không phải là biết được những gì, tích lũy được bao nhiêu thông tin. Mục tiêu của giáo dục là giúp xây dựng nên cách thức tư duy, suy nghĩ! Cách nhanh nhất để hũy hoại đầu óc một con người là làm anh ta “bão hòa” với một mớ thông tin vô bổ, tạo ra những “ảo giác hiểu biết”, và rồi cứ thế lặp lại như con vẹt vậy, chứ không thực sự hiểu được nội hàm bên trong. Và đó cũng là cách mà các nền văn minh tiên tiến tìm cách “nô dịch” các dân tộc chậm tiến, anh chỉ việc “biết như thế” thôi, biết như thế là đủ rồi, còn tôi sẽ tạo ra những cái để cho “anh biết”!

lại A.I.

A.I. – trí tuệ nhân tạo, đó là một thuật ngữ rất chung chung, ám chỉ vô số thể loại khác nhau. Có những loại như Wolfram Alpha chuyên giải toán, có những hệ thống chuyên về xử lý, nhận dạng hình ảnh / video, đây đều là những hệ thống phần mềm siêu phức tạp, có quá trình phát triển tính bằng nhiều thập kỷ, có những cái đã bắt đầu làm từ cách đây… hơn 50 năm! Cũng có những loại LLM (large language model) mới xuất hiện gần đây chuyên về xử lý ngôn ngữ tự nhiên – NLP. Và cũng giống như rất nhiều “người sáng tạo nội dung” trên mạng xã hội Việt vậy, các mô hình LLM nói chuyện gần giống con người, nhưng hoàn toàn không có chút trí tuệ nào.

Bên trong các mô hình LLM không có các cấu trúc logic nhỏ, nó chỉ bắt chước cách nói chuyện như con vẹt mà thôi! Và vì không có logic nên rất thường khi, như người ta hay nói: anh không mở miệng ra thì không ai biết anh ngu, nhưng anh mở miệng nói ra rồi thì… người ta chẳng còn nghi ngờ gì nữa!!! Cũng chính vì lý do đó mà các hệ thống tìm kiếm có A.I. hỗ trợ, như Google thường ngu xuẩn một cách vô lý, và sự ngu xuẩn này thường khi là vô cùng “aggressive”, luôn tỏ ra “ta đây cái gì cũng biết”, xen vào những lĩnh vực chuyên môn, chuyên ngành, thậm chí tìm cách áp đặt những “kiến thức” do tự nó tưởng tượng ra chứ hoàn toàn không có thật.

Đây thực chất là cách các nước phát triển tìm cách “dắt mũi, lừa bịp, nô dịch” các dân tộc chậm tiến, khi chỉ cần vài ba dòng chữ ba hoa dạng thiểu năng cũng muốn đi bịp thiên hạ, chuyện đời đâu có dễ dàng như vậy! Thậm chí ngay cả trong chuyện xử lý ngôn ngữ tự nhiên thì các hệ thống A.I. hiện tại cũng chưa có khả năng hiểu được những câu cú đơn giản nhất, chưa nói đến văn chương, điển cố hay các câu chữ tinh tế, phức tạp khác. Như cái vietsub – phụ đề Việt ngữ dưới đây cũng vậy, câu này phải hiểu đúng là: “Mọi người vì Vạn gia, Vạn gia vì mọi người”, chữ “vi” này có nhiều nghĩa: vì, là, làm, nhưng chọn nghĩa nào thì… A.I. không tự luận ra được!

Các cách sử dụng A.I. để “dịch” phụ đề các phim nước ngoài, từ tiếng Trung, tiếng Anh sang tiếng Việt đều ngu xuẩn như thế! Mới chỉ là những câu thoại đơn giản là đã có vấn đề rồi, còn những nội dung vi tế, sâu xa thì hầu như không truyền tải được! Thực chất, điều này không thể trách A.I. hoàn toàn, vì đến người sợ là dịch cũng mới ngang cỡ đó. Hơn 2000 năm, mượn người ta không thiếu thứ gì, đến độ tập từ vựng dễ có hơn 90% là từ gốc Trung, nhưng chỉ mượn một mớ từ ngữ trên bề mặt để bịp nhau mà thôi, chứ không học được nội dung, công phu bên trong! Thế rồi vỗ ngực ta đây: cùng Hán Đường Tống Nguyên mỗi bên hùng cứ một phương…

Bất định và tất định

Hơn 20 năm trước có đọc một cuốn sách tựa là “Fooled by randomness – Bị làm cho khùng bởi tính ngẫu nhiên” – Nassim Nicholas Taleb, sách rất hay! Tác giả phê phán vô số kiểu Xác suất thống kê – XSTK dùng trong kinh tế, xem đó như là một thứ giả-khoa-học – pseudo-science! Muốn biết nó giả như thế nào thì cứ xem báo cáo GDP – PPP hàng năm của VN sẽ rõ, xem các bác ấy làm “pháp thuật” với các con số một cách vô cùng ảo diệu!

Tuy XSTK cơ bản vẫn là một nhánh của toán học, vẫn có tác dụng mô tả thế giới thực, nhưng cần phải nói là, phần nhiều các công thức XSTK dùng trong kinh tế chỉ có tính chất mô tả, gần đúng, xấp xỉ rất thô, thậm chí, nhiều trường hợp vẫn còn là… giả định, giả thuyết, nên dùng được tới đâu còn tùy ngữ cảnh. Mà một đặc tính tâm lý mang tính chất “cố hữu” của con người là: càng nghĩ nhiều về chuyện gì thì… càng thấy mình đúng!

Vì càng ngày tôi càng phải đúng, “cái tôi” càng lúc càng trở nên “tuyệt đối”, nên càng nghĩ nhiều thì càng đi vào bế tắc tâm lý! Phần nhiều các vị dùng XSTK cũng y như vậy, xài công thức, công cụ, lý thuyết xác suất thống kê gì càng nhiều thì… càng tự thuyết phục mình rằng nó đúng, nó phải đúng! Đó là một kiểu sai lầm chết người mà tác giả Taleb đã chỉ ra rất rõ, tuy cách nói năng của ông ta rất gay gắt, không khoan nhượng!

Từ đó đến nay hơn 20 năm, không ai phản bác được Taleb câu nào, dù cách nói năng của ông ta làm nhiều người ghét. Cứ như thế, cái tranh cãi rằng thế giới này vận hành theo những quy luật “tất định” (determinism) có thể đoán biết trước, hay tất cả chỉ là những sự kiện “bất định” (Trẻ Tạo hóa đành hanh quá ngán, Chết đuối người trên cạn mà chơi) mãi mãi vẫn sẽ là tranh cãi, như đã được chỉ rõ bởi Hệ thức bất định Heisenberg!

Nhưng… con người mà, the matter of randomness is too important to be left to chance – vấn đề các sự kiện ngẫu nhiên là quá quan trọng để có thể phó thác nó… cho sự ngẫu nhiên (!!!) :D Con người vẫn tìm cách nắm bắt nó theo một cách nào đó. Nào là VaR – value at risk, nào là LaR – Liquidity at Risk, và tất cả những phương pháp XSTK khác đều có một số “giả định” ban đầu, là giả… định đấy, đừng cố chấp tin là thực!

programming

Rất lâu về trước, dễ đã đến nhiều thập kỷ, có một thời mà, khi mở một cuốn “Cẩm nang lập trình” tiêu biểu ra, câu đầu tiên nó nói cho bạn biết là… Lập trình là một nghề cao quý! Nhưng các cuốn cẩm nang của thời hiện đại bây giờ, theo đà lạm phát giá trị, đã không còn thấy có câu đó nữa! :) Thay vì tập trung vào các “logic nhỏ”, hiểu vấn đề cho thấu đáo, các “cẩm nang” hiện đại chuộng dùng từ “công nghệ” hơn, cứ toàn ở trên mây!

Thay vì tìm niềm vui trong những điều căn bản, nhỏ nhặt, các “cẩm nang” hiện đại gieo ảo tưởng rất hàm hồ về những trào lưu mới trên bề mặt… Một trong khá nhiều game tự viết để… tự chơi, trò gỡ mìn xưa cũ với các ô thay vì hình vuông kiểu truyền thống thì có thể tùy chọn là các hình tam giác, ngũ giác, lục giác, bát giác, etc… Đến giờ vẫn chơi Minesweeper, vẫn xài Norton Commander và Winamp như thời… muôn năm cũ!

tidal analysis, 2

Như thế ta thấy từ những tò mò, băn khoăn nhỏ dẫn đến những bước tiến lớn… như kiểu bị quả táo rụng vào đầu vậy! Vấn đề thủy triều gây ra nhiều quan tâm ở châu Âu, đặc biệt là ở Anh và Pháp, nơi thủy triều cao và thấp có thể chênh nhau đến hơn 7, 8 mét và gây ra những hệ quả nghiêm trọng! Từ Newton, Laplace, đến Fourier, nhiều nhà toán học, vật lý học đã nghiên cứu về thủy triều. Đặc biệt sau khi Fourier chỉ ra rằng bất kỳ một hàm tuần hoàn nào, dù phức tạp đến đâu, cũng đều có thể được phân giải thành tổng của các hàm lượng giác tuần hoàn đơn giản có dạng f(t) = A cos(vt + p), tức là phân giải một tần số thành tổng của nhiều tần số con. Mà những tần số con này đều đã biết trước trong bài toán thủy triều, ví dụ như với mặt trăng (M2), tần số là khoảng 24.8333, vì trái đất quay (biểu kiến) quanh mặt trăng mất khoảng 24h 50 phút. Đã biết trước hầu hết các tham số, chỉ phải tính A – amplitude, biên độ nữa mà thôi.

Không khó để chứng minh rằng, tích phân của hàm g(t) x f(t) chia cho thời gian t chính là biên độ dao động A, với g(t) là hàm thủy triều và f(t) là hàm cosine đại diện cho mức độ ảnh hưởng của mặt trăng. Việc còn lại là thu thập dữ liệu lên xuống của thủy triều, bỏ vào trong cái máy tính tích phân, nhân nó với các hàm cosine và tính ra các hệ số tương ứng! Và chính là từ bài toán phân tích và dự đoán thủy triều, mà dẫn đến một loạt các phát kiến, phát minh, dẫn đến các hệ máy tính cơ học đầu tiên, dẫn đến các hệ thống tính toán và tự động hóa khác… Nhắc lại một câu chuyện tiếu lâm đã kể mấy năm trước, một người Anh bị quả táo rụng vào đầu, thế là ông ta đã phát minh ra định luật vạn vật hấp dẫn! Một người Trung Quốc bị quả táo rụng vào đầu, ông ta liền trồng cả một nông trại táo rộng lớn và bán các sản phẩm táo đi khắp thế giới. Một người VN… à không, anh ta đã bị một quả dừa to rụng vào đầu từ rất lâu về trước… :D

ball and disk integrator

Trong hình là một cái máy tính tích phân cơ khí, cơ chế hoạt động như sau: đĩa tròn quay với vận tốc không đổi, đại diện cho trục x, thường là thời gian t, đĩa quay làm quả bi tròn quay theo! Tùy theo vị trí của bi mà tốc độ quay khác nhau, nếu bi ở chính ngay tâm đĩa, thì tốc độ là 0, bi không xoay, nếu bi được di chuyển ra càng gần mép đĩa thì tốc độ quay càng nhanh hơn, nếu di chuyển ngược lại về phía bên kia đĩa thì bi sẽ quay theo chiều ngược lại. Bi xoay làm cho trục tròn nằm ngang xoay theo, nếu ta di chuyển bi qua lại dọc theo đồ thị của một hàm số f(x) thì, không quá khó để hình dung, số vòng quay tích lũy của trục chính là tích phân của hàm f(x), nói một cách đơn giản chính là diện tích phần ‘nằm bên dưới’ đường cong f(x).

Chỉ cần đếm số vòng quay của trục thì sẽ nhận được giá trị của tích phân này. Căn bản đó chỉ là một cái máy tính tích phân cơ học, nhưng ứng dụng thì quá quan trọng đến nỗi người ta cho rằng đây là thiết bị quan trọng nhất từng được chế tạo trước khi máy tính điện tử ra đời! Máy chỉ thị mục tiêu và dẫn bắn trên chiến hạm Dreadnought là sử dụng cơ chế đĩa và bi, máy tính dẫn bắn cho các loại ngư lôi trong WW2 là dạng bi và đĩa, máy quan sát ném bom – Norden bombsight cũng là dạng bi và đĩa, và vô số máy móc, thiết bị khác. Hình là máy phân tích thủy triều chế tạo bởi Sir Kelvin (William Thomson), đĩa không chuyển động tròn đều mà chuyển động hình sin, nhưng căn bản, đây chính là máy tính tích phân đầu tiên!

tidal analysis

Thủy triều được dự đoán, tính toán như thế nào? Vì có quá nhiều tham số tác động đến thủy triều, như M2 (moon) hay S2 (sun), và nhiều hành tinh khác, nên dự đoán thủy triều được bắt đầu bằng việc… thu thập, ghi chép số liệu thực nghiệm tại một cảng nào đó, số liệu này được thu thập trong nhiều năm và sau đó dùng một phép biến đổi Fourier để phân tích hàm thủy triều (số liệu) này thành tổng của các hàm lượng giác con, mỗi hàm con có dạng f(t) = A x cos(st + p), với A (amplitude) là độ lớn, biên độ dao động, s (speed) là vận tốc góc, p (phase shift) là độ lệch pha, và t là thời gian. Mỗi hàm lượng giác điều hòa con này là đại diện cho mức độ ảnh hưởng của một yếu tố riêng biệt, như mặt trời, mặt trăng, các hành tinh, etc…

Nhưng ngày xưa chưa có máy tính điện tử, người ta phân tích Fourier như thế nào? Cũng lại là dùng các máy tính cơ học, trong ảnh là máy phân tích thủy triều được chế tạo bởi Sir Kelvin (William Thomson) năm 1878, máy dài 6m. Sau khi đã phân tích dữ liệu quá khứ đã thu thập và có được các tham số thì lại nhập các tham số này vào máy dự đoán thủy triều (đã nói ở bài trước) để tính thủy triều tại một thời điểm cụ thể nào đó trong tương lai. Về máy phân tích thủy triều thì có nhiều chuyện phức tạp, nhưng về máy dự đoán thủy triều, cơ chế vận hành của nó lại khá đơn giản. Hình thứ 2 là cơ chế máy dự đoán thủy triều, hàng bánh xe trên là cố định, hàng bánh xe dưới có thể chỉnh được tốc độ, độ lớn cũng như độ lệch pha!

Chính là biểu diễn các tham số A, s và p trong công thức nói trên. Sau đó thông qua những cái “Scotch yoke” (cái này không biết phải dịch ra tiếng Việt thế nào) để biến chuyển động quay thành chuyển động tịnh tiến, kéo các ròng rọc chạy! Nguyên hệ ròng rọc chạy và kéo một sợi dây, sợi dây này kéo một cây bút trên bề mặt một băng giấy xoay tròn, vẽ thành đồ thị thay đổi lên xuống của thủy triều theo thời gian. Hàm tổng (thủy triều) được tổng hợp lại từ các hàm con đơn giản như thế! 150 năm trước người ta đã tìm cách phân tích và tổng hợp chính xác, 150 năm sau, chúng ta tổ chức giải đua ghe nhưng rút cuộc không đua được vì phải chờ đến “giờ lành” để bắt đầu thì nước triều đã rút cạn chỉ còn tới đầu gối!

duck test

Mấy năm trước, có sự kiện một người làm thiết kế – designer sử dụng “AI”… đương nhiên AI hiểu trong ngữ cảnh thiết kế tức là “Adobe InDesign” chứ không phải là “Artificial Intelligence”, nhưng mấy ku “nhà báo thiểu năng” VN thì chớp được đúng một chữ AI, vội vàng tán láo thế này thế kia, đến nhiều ngày sau còn chưa hiểu ra được mình ngu chỗ nào. Những ví dụ dạng này là… hằng hà sa số, mang tiếng là con người, nhưng trí thông minh chưa bằng được máy, các hệ thống AI bây giờ có thể phân biệt ngữ cảnh khá tốt! Và đến tận bây giờ vẫn thế, tràn đìa trên mặt báo, viết câu tiếng Việt đơn giản không thông, ngoại ngữ đọc không hiểu, nhưng suốt ngày la liếm khắp nơi, chỗ nào cũng có mặt, vấn đề nào cũng hiểu, tạo ra một đám bụi mù thông tin, kích động người này người khác đánh nhau.

Có một bài kiểm tra trong giới CS (computer science) gọi là “Duck test – kiểm tra vịt”: nếu nó đi lạch bạch như vịt, bơi như vịt, và kêu quác quác như vịt, thì chắc chắn nó là vịt rồi. Hay như một chính trị gia Mỹ: tôi không biết hắn ta có phải là CS (cộng sản) không, nhưng một con chim chân có màng, bơi như vịt, kêu quác quác như vịt thì chắc là vịt rồi? Hay gần đây hơn, ngoại trưởng Larov nhận xét các nhóm Hồi giáo thân Tây phương, như một kiểu châm biếm: nhìn giống như khủng bố, nói năng như khủng phố, đánh đấm như khủng bố, vậy chắc chắn là khủng bố rồi!? Cái gọi là AI – artificial intelligence, dù vượt qua được Turing-test, nhưng đến nay vẫn không thể nào vượt qua được Duct-test và Chinese-room-test để có thể chứng minh là có tư duy thật sự, thì rồi cũng chỉ là “vịt” mà thôi!

Đến một lúc, ta sẽ thấy, cái gọi là AI, hay chí ít là các thể loại “AI hạ cấp, tào lao”, chính là phản ảnh cái “não trạng” của cái cộng đồng sử dụng nó! Thậm chí còn tệ hơn cả wikipedia, trên wiki, ít ra còn có người này người kia, phe này phe kia đánh nhau, tranh dành nhau chỉnh sửa nội dung, ít ra còn có sự đấu đá, tranh luận qua lại, thể hiện các luồng suy nghĩ đối lập nhau. Còn “AI”, ít nhất là các phiên bản “đại chúng, phổ thông” chính là một kiểu “núp lùm” và “đội lốt”, nó đưa quan điểm, ý kiến như thể được rút ra từ khoảng không vậy, mà cái khoảng không này, xui rủi thay, chính là phản ánh sự “vô tri, thiểu năng” của cái cộng đồng xài nó, ai cũng là “tác giả” mà đồng thời, cũng không có ai là “tác giả” cả, không một ai đứng ra chịu trách nhiệm về tính đúng đắn của nguồn tin, của suy nghĩ!

AI, 2

Hơn 25 năm trước, hồi đang còn ngồi trên ghế nhà trường, Bộ môn Trí tuệ nhân tạo, Khoa CNTT, ĐH KHTN… tôi có xài một cái chương trình tên là Eliza, dạng chương trình chat, mình gõ một câu, nó trả lời một câu, hoàn toàn command-line: “- Hi, how are you today!? – Thanks, but I don’t feel very well”, câu chuyện bắt đầu như thế, vì không muốn khởi đầu có vẻ rập khuôn nên tôi trả lời không được khỏe lắm… Nói chuyện một hồi lâu, sau nó hỏi: “- How do you feel now? – I feel better now!” Thế là cái chương trình máy tính kia nó văng ra một câu làm mình sững sờ: “You’ve felt better cause you’ve been talking with me!” – Anh đã cảm thấy tốt hơn là do nói chuyện với tôi nãy giờ đó!!! Đó là lần đầu tiên, cũng là lần cuối cùng tôi xài Eliza! Không phải là vì “sợ” cái trí thông minh của nó…

Mà vì không muốn bận tâm bởi những câu trả lời, mà tôi nghĩ là, nó có một bộ thư viện hàng chục ngàn câu có thể khiến cho bạn phải “ngạc nhiên”, oh, hóa ra máy tính “thông minh” đến vậy! Tư duy của con người, đó là phân tích độc lập, tìm tòi, liên hệ, hình dung, tưởng tượng, đến cả những loại tư duy bằng hình ảnh, âm thanh chứ không phải chỉ bằng ngôn từ, nếu chỉ lặp lại một số lượng lớn ngôn từ theo dạng “thiểu năng” thì con người không thể bằng máy, bắt so với máy khác nào bắt con cá phải leo cây! Chốt lại một điều là: AI có xu hướng lặp lại cái “não trạng” của cộng đồng, cộng đồng như thế nào thì họ sẽ có được thứ AI giống như thế, giống như thứ họ muốn mà thôi! Một cái hang trống hoác vang vọng trở lại những cái thế giới nội tâm cũng trống hoác giống y như thế!

height map

Viết lại nhân có trao đổi với một người bạn, trước đây radar địa hình là cái gì đó vô cùng tiên tiến, các phi cơ cường kích có thể bay sát mặt đất, cách các tòa nhà, ngọn cây, núi đồi chỉ cỡ 10m mà không sợ đâm va, vì được điều khiển bằng radar địa hình chứ không phải do người điều khiển, khả năng xử lý, phản hồi của phi công không đủ nhanh so với tốc độ máy bay. Nhưng ngày nay, radar địa hình đã trở nên phổ biến đến mức nó hiện diện trên nhiều loại UAV dân sự, như loại dùng trong nông nghiệp, và chỉ nhỏ bằng bàn tay như hình bên dưới! Vừa bay, nó vừa vẽ bản đồ 3D của địa hình!

Cái bản đồ độ cao – height map này được so khớp với thông tin địa hình đã được chụp và lưu sẵn từ trước trong máy tính, nhờ đó UAV có khả năng bay bám địa hình. Bay bằng radar địa hình là xu hướng chủ đạo hiện tại của các loại UAV dân sự lẫn quân sự, giúp quản lý tài nguyên một cách chính xác với UAV dân sự, và giúp bay trong mọi điều kiện gây nhiễu, mọi điều kiện thời tiết với UAV quân sự. Và bài toán so khớp bản đồ độ cao, một cái mảng 2 chiều chứa các con số, từ đó nhận dạng địa hình để điều khiển UAV, là dạng bài toán kinh điển của các kỳ thi Olympic tin học!

Jacquard loom, 2

Mấy năm trước, có viết một đoạn về Jacquard loom, tiền thân của các loại máy dệt tự động hóa hiện đại, dùng bìa đục lỗ (punched card) để mã hóa thông tin hoa văn trên vải dệt. Thay một cái bìa là nó sẽ dệt ra một kiểu hoa văn mới, hoàn toàn tự động. Mới nghe thì có vẻ không có liên quan gì, nhưng máy dệt Jackquard có thể được xem là “sơ tổ” của các loại máy tính hiện đại. Nói thêm một chút về số phận của Joseph Jacquard, người phát minh ra cái máy dệt này. Hôm nay, ta hãy ngồi vào cỗ máy thời gian, thời điểm là năm 1802, điểm đến là tp. Lyon nước Pháp! Allez-y, maintenant!

Jacquard cầm cố tài sản đến mức khánh kiệt để chế tạo ra cái máy dệt đi trước thời đại này! Kết quả là… các công nhân dệt sợ máy cướp hết công việc nên đã tập hợp lại, đập phá cái máy, Jacquard bị ném xuống sông, may mà không chết! Ở Đức, tình hình còn phát triển đến mức cực đoan hơn, công nhân biểu tình phản đối, bạo động tràn lan, chính quyền phải ra lệnh tử hình đối với những người phát minh ra các loại máy dệt mới để trấn an dân chúng! Nên chuyện trí tuệ nhân tạo – AI hiện đại thực ra không phải là vấn đề gì mới, chỉ là lịch sử lặp lại chính nó mà thôi!

working corner

Cuối tuần dọn dẹp góc làm việc, gom cả 2 cái màn hình về 1 cái máy Mac, 1 màn hình xoay dọc lại, dùng để đọc các file code dài rất tiện, không phải cuộn lên xuống nhiều. Con Aquarium-PC chạy Debian thì thực ra không cần đến màn hình, bàn phím gì cả, chỉ khởi động lên rồi SSH vào xài là được!

Như thế chỉ cần 1 cặp bàn phím + chuột không dây mà không phải xài đến các loại KVM switch và dây nhợ phiền phức… Và có thể dùng tính năng Continuity của Mac để điều khiển luôn con Macbook đặt ở bên cạnh! Hình chụp bằng tính năng Panorama của điện thoại nên có hơi méo!

Lilliput

Chuyện giống như trong Gulliver du kí ấy, khi Gulliver đến đất nước của những người tí hon Lilliput, xứ sở của những con người mãi không chịu lớn, đất nước ấy bị chia làm 2 phe, một phe ăn trứng từ phía đầu to, và một phe ăn trứng từ phía đầu nhỏ, không ai chịu ai và thế là chiến tranh xảy ra, đánh nhau triền miên chỉ vì khác biệt về cách thức ăn một quả trứng, “như tôi” mới đúng, ai “khác tôi” là không được!!! Bản chất của con người vốn dĩ luôn có đôi chút khác biệt, luôn có tí khác nhau trong nhận định về các vấn đề. Và công việc của USAID là đi khắp nơi, kích động các mâu thuẫn khác biệt ấy, vô số chiêu bài được sử dụng: nữ quyền, phá thai, LGBT, đa dạng, hòa nhập, tôn giáo, tri thức… tạo ra thật nhiều cái “bánh vẽ” để bà con đánh nhau.

Với những nước dân trí cao, văn minh sâu dày thì người ta hiểu ra vấn đề, như ở Nga và TQ, đương nhiên vẫn luôn có những thành phần “đối lập”, nhưng đa số dân chúng biết cách gác những khác biệt nhỏ qua một bên để mà làm việc, tạo dựng giá trị. Đáng sợ là những nơi như VN, dân thì ngu, ưa đĩ miệng, thích nói không thích làm, thích hơn thua nhau bằng cách lưu manh vặt, đấu đá mãi, riết rồi không ai làm được cái gì nữa, đúng là cái xứ sở… Lilliput! Giờ thì đến tt. Trump cũng muốn dẹp USAID, đơn giản vì những chiêu như vậy không còn hiệu quả nữa, và cũng vì ông ta là dạng thẳng thắn: tôi muốn kênh đào Panama, tôi muốn đảo Greenland, bá quyền công khai chứ chẳng thèm trưng ra mấy cái “chiêu bài dân chủ” giả hiệu nữa.

AI

Với internet, kiến thức chưa bao giờ dễ dàng như thế! Hơn 20 năm trước, bọn sinh viên chúng tôi vò đầu bứt tai, không hiểu ANN – Artificial neuron network – mạng neuron nhân tạo, HMM – Hidden Markov model – mô hình Markov ẩn, SVM – Support vector machine, GA – Genetic algorithm – giải thuật di truyền, etc… là những gì! Nguyên nhân không hiểu là do thiếu thông tin, thiếu sách vở, và quan trọng hơn nữa là, những sách vở có được thì quá nặng về lý thuyết, thiếu minh họa thực tế. Thường là nó bắt đầu với những ví dụ rất đơn giản dễ hiểu, rồi dần dần được khái quát hóa thành lý thuyết toán tổng quát, trừu tượng. Và các ông thầy thường dạy ngay những lý thuyết toán phức tạp này, hoàn toàn quên các ví dụ đơn giản ban đầu! Hay có khi các ông thầy cũng không biết…

Nên sinh viên tìm hiểu vấn đề cứ như “thầy bói xem voi” vậy! Mà để bắt đầu với những ví dụ cụ thể, sinh động và hữu ích trong cuộc sống hàng ngày, thì cần… đi lại từ đầu, từ những chuyện đơn giản nhất! Nên kiểu đọc báo, xem tin tức bây giờ cảm thấy vô cùng bất an, toàn nghe thấy “Artificial Intelligence – trí tuệ nhân tạo”, cứ lặp lại đúng một từ đó, không cho thấy có nội dung gì khác! Giống như mấy thằng bị ngáo, bị thiểu năng vậy, cứ hễ mà mình đụng vào là nó lại văng cái từ “AI – Artificial Intelligence” vạn năng đó ra, và nó cũng chỉ biết mỗi một từ đó thôi, không nghe thấy bất kỳ thuật ngữ chuyên môn nào khác, cũng không Toán rời rạc, thuật toán, thuật giải gì cả! Kiểu chắc lại đi bán hàng, bán một cái giải pháp phần mềm làm sẵn bá vơ, bịp bợm nào đó!

llm

Đang cafe sáng thì một đứa bé chừng 3 tuổi chập chững bước lại gần, miệng bi bô: chú ơi, ớt ớt! Đứa bé chỉ vào luống cây “phúc lộc thọ” người ta trồng làm cảnh, trông khá giống quả ớt. Tôi liền tìm cách giải thích: đây là hoa con à, không phải quả ớt, đương nhiên cũng không mong bé có thể hiểu được, xem như nói chuyện với con trẻ mà thôi. Từ chuyện của đứa bé mà nghĩ đến các mô hình AI – trí tuệ nhân tạo hiện tại! Thực ra thì phần lớn các mô hình AI hiện tại dựa trên LLM – large language model cũng như đứa trẻ 3 tuổi vậy! Nếu có một lượng lớn dữ liệu bảo đó là quả ớt thì AI cũng sẽ bảo đó là ớt! Nếu là trẻ con thì ta bảo nó vô tri…

Nếu là người lớn thì ta nói nó bị thiểu năng, tiếc là một phần lớn người lớn giờ cũng giống y như LLM vậy! Nó chỉ “nhận dạng và so khớp” (pattern matching) dựa trên một lượng lớn dữ liệu, không có khả năng suy luận logic, không có khả năng toán học, và thực ra hiện tại, chỉ có thể dùng AI theo hướng “tìm kiếm” đó! Ngay cả những câu đố siêu đơn giản như: Vừa gà vừa chó, Bó lại cho tròn. Ba mươi sáu con, Một trăm chân chẵn! – Hỏi có bao nhiêu gà, bao nhiêu chó!? mà AI cũng không trả lời được! Sâu xa hơn, vẫn còn một cái gì đó rất căn bản, rất nền tảng vẫn chưa giải quyết được khi kết nối ngôn ngữ tự nhiên và ngôn ngữ toán!

knockd

Thường hiếm khi viết về các chủ đề tin học trên Facebook, nhưng lâu lâu vẫn chia sẻ vài ý tưởng thú vị. Chẳng hạn bạn có một con server, mở cổng 22 (SSH), và 5901 (VNC), đây là những cổng phổ biến mà hackers và những con bots hay dò xét, quấy phá. Không muốn điều đó xảy ra, bạn có thể đổi thành những con số khác, ví dụ như đổi 22 thành 6001, đổi 5901 thành 6002! Nhưng những kẻ quấy phá cũng biết cách dò xem bạn mở những cổng nào! Tốt nhất là cấm tất cả (dùng firewall, iptables) và sử dụng ‘knockd’. Hiểu nôm na, knockd giống như nhận diện một trình tự gõ cửa! Phải gõ đúng trình tự thì cửa mới mở (hay đóng)!

Kiểu giống như… “Nếu là thỏ cho xem tai, Nếu là nai cho xem gạc!” vậy! Ví dụ, câu lệnh có cú pháp: “knock -v SERVER_IP 2001 2002 2003 -d 500” sẽ lần lượt gởi 3 lệnh gõ cửa, cách nhau một quãng thời gian -d tới các cổng 2001, 2002, 2003, đúng trình tự đó thì knockd sẽ điều chỉnh lại firewall để mở cổng 6001, gởi theo chiều ngược lại sẽ đóng cổng! Vì mỗi cổng là một con số 2 bytes nên 3 cổng tương đương với một mật khẩu có entropy = 16 × 3 x 2 = 96 bits (nhân 2 do cổng có thể là TCP hay UDP), đương nhiên có thể định nghĩa trình tự gồm 4, 5 cổng hay nhiều hơn, thậm chí dùng danh sách các trình tự chỉ sử dụng một lần!

reverse polish notation

Trời mưa lâm thâm, kết thúc vòng đạp xe 50km cuối tuần như thường lệ, quán ven đường vọng ra bản nhạc, phải mất một phút mới nhớ ra được đây là nhạc của Scorpions: I climb the stage again this night, ‘Cause the place seems still alive, When the smoke is going down… Nhạc điệu có tâm trạng hồi tưởng rõ rệt: “When the smoke is going down”, smoke – khói này là nói về các hiệu ứng khói lửa, pháo hoa, hỏa thuật – pyrotechnic thường được dùng trên sân khấu trình diễn. Vâng, và khi lửa khói đã lắng xuống, sau những màn tung hô vạn tuế, vạn năng, và nhất là khi đã ra IPO (lên sàn Chứng khoán) thành công, thì Trí tuệ nhân tạo – AI, như chúng ta thấy hiện nay, còn chưa làm được toán lớp 1. Để biết được 9.9 hay 9.11 ai lớn hơn ai, thì phải lượng giá (evaluate) được biểu thức 9.9 – 9.11 > 0 có giá trị Đúng hay Sai, một điều mà máy tính làm được với Ký pháp Ba Lan ngược – Reverse Polish notation – RPN, đây là kỷ niệm khó quên của thời sinh viên.

Bài tập cuối môn CTDL1, điểm 10 tròn trịa hiếm hoi, vẫn là viết bằng Borland C++ 3.1, từ dấu nhắc lệnh, bạn gõ một biểu thức có độ phức tạp bất kỳ: (a + b) * (c – d) ^ e / ((f % g) * sqrt(h))… thì máy vẫn tính ra được kết quả đúng! Ký pháp Ba Lan ngược theo tôi, chỉ ở mức trung bình (thậm chí còn chưa tới mức trung bình) nếu nói về độ khó, nhưng ở mức rất cao về tầm quan trọng, nếu bạn muốn hiểu về cấu trúc dữ liệu, về cách sử dụng stack và heap… và về giao diện giao tiếp người-máy – human-machine interface nói chung. Nói một cách dễ hiểu thì, với con người, chúng ta nói “a nhân b”, nhưng để cho máy tính hiểu, thì ta phải nói “a b nhân”, đây là điều rất quan trọng, thứ tự các toán tử (operator) và toán hạng (operands). Nên các loại AI – LLM – Large language models, chúng chỉ lặp lại như con vẹt, một số quan hệ có tính thống kê giữa các cụm từ, thậm chí còn chưa có khả năng hiểu được cấu trúc ngôn ngữ đúng nghĩa!

cccd, 2

Smart-card – thẻ chip là gì? Ngày xưa đơn giản là một cái thẻ nhớ lưu trữ thông tin, ngày nay là một cái máy tính thực sự, có CPU, RAM, ROM… được tích hợp trên một cái thẻ, chức năng là mã hóa và giải mã! Có nhiều phương pháp mã hóa khác nhau dùng được với smart-card, phổ biến là Private/Public keys (nhưng cũng có thể là những phương pháp khác). Smart-card là phương tiện để lưu trữ những cái keys – khóa này, không cho người khác đọc được! Muốn đọc phải xẻ con chip ra và kết nối vật lý với các mạch bên trong! Vì lý do đó nên từng có loại smart-card bên trong có chứa khí cháy (khi tiếp xúc với không khí), xẻ con chip ra là nó sẽ bắt cháy, hũy chip! Cũng vì đó mà đám tội phạm đã tìm cách xẻ con chip bên trong hộp chân không để nó không cháy!

Dữ liệu gởi vào cho smart-card mã hóa/giải mã, xong gởi ra trở lại, không bộc lộ key ‘B’ lưu bên trong. Nhưng do kích thước vật lý như thế nên thẻ chip chỉ có khả năng xử lý tối đa vài KB dữ liệu một lúc, không có khả năng thao tác đến MB, GB. Nên thực ra khi dùng smart-card, người ta chỉ xác minh một lần đầu, nếu xác minh đúng, các ứng dụng (các bên tham gia kênh thông tin cần mã hóa) sẽ dùng một key khác là ‘C’, và thường là xài một phương pháp mã hóa khác, để xử lý cho nhanh lẹ với lượng dữ liệu lớn, chứ không thực sự dùng đến cái key ‘B’ lưu trong chip. Cứ như thế, định kỳ key ‘C’ sẽ được thay đổi để bảo đảm an toàn, và key ‘B’ có vai trò mã hóa, bảo vệ key ‘C’ khi trao đổi, phân phối ‘C’ giữa các bên tham gia kênh thông tin!

Mã hóa Private/Public keys là gì? Bộ CA sẽ cấp cho mỗi người một mã công khai – public key ‘A’, lưu công khai trên web, ai cũng đọc được, và một mã bí mật – private key ‘B’, lưu trong smart-card – CCCD. Mã hóa Private/Public key có tính 2 chiều: dữ liệu đã được mã hóa bằng public key ‘A’ thì chỉ ai có private key ‘B’ mới giải mã được. Chiều ngược lại cũng đúng, dữ liệu đã mã hóa và có thể giải mã thành công nhờ public key ‘A’ thì xác nhận là chỉ có thể được mã hóa, gởi đi từ người có private key ‘B’ chứ không thể là ai khác! Việc này được gọi là ký – sign, và đó là lý do tại sao Private/Public keys vừa được dùng để mã hóa/giải mã (encrypt/decrypt), vừa được dùng để ký xác minh (sign, authenticate). Muốn xác minh chính chủ thì làm thế nào?

Đầu tiên ứng dụng sẽ yêu cầu thẻ chip mã hóa một thông điệp ngắn, ví dụ như “Are You ABCD?” dùng private key ‘B’, rồi gởi đến trang của BCA yêu cầu xác minh, nếu giải mã bằng public key ‘A’ trả về đúng chuỗi “Are You ABCD?” thì xác nhận đây chính là người có số CCCD là ABCD, cũng là người sở hữu khóa công khai ‘A’ và khóa bí mật ‘B’. Những điều này tương đối đơn giản, nhưng không phải ai cũng hiểu rõ ràng, ngay cả người làm trong ngành CNTT đôi khi đọc cũng thấy hoang mang! Nói ngắn gọn là: mã hóa bằng khóa ‘A’ thì chỉ là… mã hóa, nhưng mã hóa bằng khóa ‘B’ thì gọi là ký – sign, và đây là chữ ký an toàn, không ai khác ngoài người sở hữu khóa ‘B’ có khả năng như thế! Vì sao mã hóa Private/Public keys có khả năng kỳ diệu đến vậy!?

Mã hóa Private/Public keys, cụ thể là ‘phiên bản’ RSA phát minh năm 1977 bởi Ron Rivest, Adi Shamir và Leonard Adleman được xem là một thành tựu lớn trong ngành Khoa học máy tính. Đi sâu vào chi tiết thì có nhiều chuyện phức tạp, nhưng ý tưởng chung đơn giản đến nỗi hầu như ai học hết cấp 3 cũng đều có thể hiểu được! Public key ‘A’ chính là tích của 2 số nguyên tố rất lớn A = a x b, nếu chỉ biết A thì rất khó tìm ra a và b, do năng lực của các hệ thống máy tính hiện hữu không đủ để giải bài toán khai triển lũy thừa này! Mà sao lại nói nhiều về chuyện thẻ chíp và mã khóa Private/Public keys như vậy!? Ở các nước như Trung Quốc, xác minh danh tính online được xem là dịch vụ cơ bản cung cấp cho toàn dân! Ngược lại, ở một số nước như Mỹ…

Việc xác minh (ví dụ như SSL) là khá tốn kém và phải trả một số tiền hàng năm (tiền này là trả cho nhân viên đi xác minh, cũng phải trả cho cả bảo hiểm). Còn ở ta thì… không biết chắc là loại nào, các bạn biết rồi đấy, liên quan đến các vấn đề kỹ thuật thì BCA thông minh vô cùng, họ hoàn toàn không dốt chút nào! Còn khi ta cảm thấy họ “dốt”, khi mà khi ngôn từ cứ nhộn nhạo cả lên, thì chính là… họ ỡm ờ như thế! Như luật PCCC mới, muốn tìm loại vật liệu chống cháy thỏa mãn yêu cầu của BCA thì hơi khó á, mời họ cafe thì họ sẽ chỉ cho, rồi ai bán các loại vật liệu PCCC đó!? Chỉ có ở VN mới có tình trạng dùng thông tin như “hàng hóa”, nên nhiều việc nó cứ trầy trật! Trong khi nhu cầu xác minh chính danh, chính chủ là vô cùng bức thiết!

Nhưng ‘chính danh’ theo em là một cuộc chiến còn khó hơn Một mình chống lại Mafia – Bạch tuộc, nói theo ngôn ngữ bộ phim truyền hình Ý phát hành những năm 80. Vì con “bạch tuộc” này nó vô hình vô ảnh, nó không phải là một cá nhân, phe phái, một tầng lớp hay tổ chức cụ thể nào, mà nó là cái tính “đa nhân cách” của người Việt: luôn có muôn ngàn bộ mặt khác nhau, luôn rình mò la liếm, luôn “ta đây biết rồi”, cứ hở ra là giở trò lưu manh vặt! Như vụ chính chủ với số điện thoại đó, nói tới nói lui rồi đâu lại vào đấy, có làm được đâu, nhu cầu ‘ám muội’ của số đông nó quá lớn mà! Vạn sự khởi đầu nan, chỉ cần đặt được viên đá “chính danh” đầu tiên, khi nền tảng kỹ thuật đã vững rồi thì đến một lúc, người ta có muốn gian cũng không được!

cccd, 1

Xưa đọc Hồng Lâu Mộng, thích nhất là cái câu: Trần trùi trụi đi về không vướng víu! Bây giờ đi ra đường phải “vướng” đủ thứ, nào là khóa nhà, khóa xe, nào là điện thoại, ví tiền, giấy tờ đủ cả… Trước không đánh giá đúng công nghệ NFC và CCCD, nghĩ rằng các đầu đọc NFC không đủ nhiều! Hiện tại hầu như smart phone nào cũng có đầu đọc NFC, từ iPhone 6 là đã có rồi, hầu hết các máy POS mới cũng có NFC! Tương lai khả kiến: chỉ 1 thẻ thay thế toàn bộ giấy tờ, hồ sơ, thẻ ngân hàng!

Thậm chí tiến tới mở khóa nhà, khởi động xe, mua bán, hợp đồng tất cả chỉ 1 thẻ! Thực ra thì đến đó rồi vẫn còn vướng víu nhiều lắm, chưa “trần trùi trụi” được đâu, hay có khi còn vướng hơn!? Nói xa xôi thì là vậy, nhưng nói gần gần là có thể cưỡng bức chính danh trên MXH: làm ơn làm ra luật phải xác minh nhân thân bằng CCCD trên Facebook!!! Bài báo này hiểu rất sai / đã có nhầm lẫn về sinh trắc – biometric, xác thực CCCD – thẻ chip – smartcard qua NFC không phải là sinh trắc!

tcotlt456@ctkmbbct789

Từ gần 20 năm trước, tôi đã làm việc trên những ứng dụng webcam theo dõi các cử động 3D của khuôn mặt, và phủ lên đó những lớp skin, mask, avatar, và làm hoạt hình 3D dùng DirectX mô phỏng các cử động, cảm xúc như thật của khuôn mặt! Đó là chuyện của 20 năm trước, giờ đã tiến bộ hơn không biết bao nhiêu lần! Nên qua mặt FaceID không phải là chuyện khó, chỉ cần 2, 3 tấm ảnh và một tay designer dùng Autodesk Maya loại khá là có thể phục dựng mô hình 3D khuôn mặt của một ai đó, thậm chí có thể animate cái mô hình nói năng như thật!

FaceID, phiên bản của Apple làm có thể xem là khá an toàn, là do iPhone / iPad có cảm biến LIDAR có thể dựng mô hình 3D của khuôn mặt rất chi tiết! Nhưng những loại FaceID khác, do những hãng khác hay do các bank tự làm thì chưa chắc nhé! Nói thật, tôi hoàn toàn không có lòng tin vào các loại FaceID. Nói thế này cho dễ hiểu: tôi thà đặt lòng tin vào một thứ ở trong đầu tôi (mật khẩu) là cái tôi biết, nó hiện diện vô hình, vô ảnh trong tâm trí tôi, còn hơn là đặt lòng tin vào những cái hữu hình mà ai ai cũng thấy, và vô cùng dễ làm giả!

Nên cứ để cho chúng nó, những loại thiểu năng cứ ưa tỏ ra nguy hiểm, thử dùng “độc tâm thuật” đọc mật khẩu trong đầu tôi xem có được không?! Việc tạo ra mật khẩu an toàn nhưng dễ nhớ không khó như mọi người nghĩ, dưới đây là một cái mẹo, giả sử bạn nhớ 1 câu thơ: Thiện căn ở tại lòng ta, Chữ tâm kia mới bằng ba chữ tài, thì lúc đó mật khẩu sẽ đặt ví dụ như: Tcotlt456@Ctkmbbct789, là chữ viết tắt của các từ trong câu thơ, thêm vào đó một số chữ số, chữ viết hoa hay ký tự đặc biệt tùy ý! Như thế sẽ có mật khẩu an toàn nhưng dễ nhớ!

Mà cái câu thơ tôi dùng để làm mật khẩu đó, trừ khi bạn đi đến Thư viện quốc gia, tìm đúng cuốn sách cổ đó, lật đúng trang đó, và bạn phải đọc được chữ Hán nữa, thì sẽ thấy nó nằm ở đó, chứ tìm khắp trên internet không có đâu! Nói dài dòng chút về quản lý mật khẩu, thực sự tôi cũng không có lòng tin với những thứ như LastPass, 1Password, ai đời lại lưu pass của mình ở trên cloud, có ai còn nhớ vụ rò rỉ dữ liệu của LastPass cách đây 2 năm!? Một cách khá hay là dùng công nghệ open – source đã được kiểm chứng kỹ là KeePassX để lưu mật khẩu!

Một phương pháp hiện đại phổ biến những năm gần đây là FIDO – Passkey, dùng khóa bí mật lưu trữ trên thiết bị. Đây là cách mới hứa hẹn rất tiện lợi, bạn thậm chí không cần phải nhớ gì cả! Nhưng một lần nữa, nếu thiết bị – nơi lưu passkey (usb-key, điện thoại) bị mất thì phải làm sao!? Không có giải pháp nào khác là phải có một cái nữa để dự phòng, một cái treo ở móc chìa khóa, một cái… bỏ trong két sắt ngân hàng! Nói tới nói lui, tôi chẳng tin cái gì khác ngoài cái thứ “lai vô ảnh, khứ vô hình” nằm trong đầu tôi, đó chính là… mật khẩu!