Featured Post

Có một Biển Đông trên không gian mạng

Có một Biển Đông trên không gian mạng Thái Dương Mùa hè 2014, giữa lúc người Việt trong nước và hải ngoại đang sôi sục vì Trung Quốc đư...

Wednesday, January 27, 2016

As someone who cares about privacy, how do I feel working for Google?

(Needless to say, all opinions are mine, I don't speak for my employer or anyone else.)

A friend recently asked me this question

"Thai: I think you have showed a very consistent view on privacy so I would like to ask a rather sensitive question (feel free to not answer): how do you feel working for Google, one of the most notorious companies in tracking and keeping people private data?"

I found my job rewarding. Google in general and my team in particular have done a lot to improve the privacy and security of not only Google users, but the Internet as a whole.

If Google wasn't pushing hard and investing heavily in the past few years, most traffic on the Internet would have still been sent unencrypted or over outdated protocols. Many core developers of OpenSSL, the software package that enables Internet encryption, are my coworker. Many of the most important innovations and researches on Internet encryption were done by Googlers. HSTS, public-key pinning, certificate transparency, etc. you name it, we invented it. TLS 1.3 the latest version of the most important security protocol on the Internet is inspired by QUIC, an in-house protocol that we developed to make the Internet faster and more secure. We also found and fixed many weaknesses in earlier versions of TLS, and put the final nail in the coffin of SSL 3.0, an outdated and insecure protocol that had been used by many big websites.

Google employs top security researchers, and allows us to work on whatever we think would make the Internet a safer place. You won't find anywhere else a large group of people, 500 and still hiring, that care deeper and contribute greater to the security and privacy of the Internet. There is no other company at Google scale that employs a group of world class security researchers (some of them were snatched from NSA or GCHQ, because we want to deprive these agencies of security talents), and lets them do whatever it takes to kill 0-day vulnerabilities.

Have you ever heard of Neel Mehta? Probably not, but he's the guy that discovered Heartbleed, and sitting on the same floor as I am. Michal Zalewski, Tavis Ormandy, etc. many big names in security are working at Google. Michal's AFL literally revolutionizes overnight the practice of finding software vulnerabilities by fuzzing. These days if someone found some cool bug somewhere, chances are that person was using AFL. Tavis's dive into antivirus software has been a very fruitful endeavor, in which he has found numerous critical vulnerabilities that affected millions of Internet users. Totally we have found and fixed thousands of vulnerabilities in many popular software, including Apple's, Microsoft's, etc. If you happen to use a computer or a smart phone at home or at work, many Googlers have worked hard to help you not got hacked.

It'll be naive to conclude that Google has done all this only for altruism's sake. Google needs a safe Internet to conduct our business. People won't use the Internet or even computers if they can get hacked easily. Google's investment in killing software vulnerabilities, in making the Internet safer for everyone, therefore, is a win-win, thus, sustainable, investment.

Re tracking and keeping people private data: I guess by private data you meant web browsing habit? Google mines this data to display better and more relevant ads, which in turn power the free Internet as we see it today. Historically, most people have been not willing to pay for Internet services, thus ads-supported content has been the only sustainable business model that can work at Internet scale. Google pays billions of dollars to publishers (e.g., New York Times, Nguyen Ha Dong of Flabby Bird, etc.) every quarter. Without this source of revenue, the Internet wouldn't reach where it is today.

Google is not alone in this business, but perhaps we are the most successful, thus the most criticized. Most companies track and collect user data. Have you ever thought where the Data from Big Data comes from? It's people private data, mostly. While reading this article, a fellow Googler reminded me that mining private data is not only for displaying ads but also for improving products and in some cases creating new products. He wrote,

"Google Now and Google Photos are good examples. I love these products. How would I use the products without allowing Google to mine my private data? Talking about ads, there are people who don't like ads, but for people who are OK with ads like me, seeing relevant ads is much better than random ads. Leveraging private data is everywhere. You have the option of not providing private data by not using the products."

Google should do better than our competitors, as we always want to keep a high bar for ourselves. This is why we give users a lot of choices to opt out of the personalized ads system. This is why we give users tools to delete their accounts and to completely wipe out or export their data. This is why Google employs hundreds of people whose one and only job is to ensure that our products give users better privacy controls over their private data. Aforementioned Googler is working in Search, and he wrote,

"Google cares deeply about user privacy. I can tell you that all user private data are encrypted at Google. If you work in systems, you probably know that there are many tricks that do not work on encrypted data. In Search we are loosing XX% capacity because of encrypted data. There are many other burden in enforcing this policy in Google beside losing machine resource, e.g. it is hard to debug since normal developer cannot see log trace, etc. Another big company, Facebook, does not encrypt your private data in its data center (it is true 3 years ago, I don't know the current status). This is not to underestimate how much Facebook cares about privacy, but to show that how far Google is willing to go with protecting user information."

When I joined Google four years ago, privacy was neither something that I cared much nor a hot topic. Working at Google has actually made me care more and more about privacy. As the saying goes, with great power comes great responsibility, with all the data that you have entrusted Google with, my team and I take it as our duty to not let you down. Thanks to Snowden, privacy has become an international issue, in which Google has attracted a lot of criticisms, many of which are groundless. There are also a lot of players out there benefiting from spreading FUD about Google. What I want to allude to you in this little rant is that we care very much about the privacy and security of our users and the whole Internet, and we very much want to offer you and other users choices, be it opting out of personalized ads, deleting your personal data, or subscribing to ads-free services.

You can learn more about how we think about and protect your privacy at https://privacy.google.com/. You can manage your security and privacy settings at https://myaccount.google.com. The privacy and security check ups are great tools that shall allow you to protect your accounts and adjust important privacy settings to your preference. Ads is still our and the Internet's cash cow, but we also have many fast-growing non-ads businesses, in which we generate revenue by earning user trust. We've launched many ads-free subscription services such as YouTube Red, Google for Work (a.k.a, Google Apps for Your Domain), etc. Recently we introduced Contributor, I worked on this project, which allows users to support the websites they like and at the same time see fewer ads. In sum, if you are willing to pay for services Google provides many ads-free choices.

I'll leave Google one day, but I'll be a loyal user for life. Google has simply earned my trust. I trust that none, even Google employees or any three letter agencies, can unauthorizedly read my emails, view my photos, download my documents, etc. without having to step over the corpses of an army of very skilled engineers or lawyers, working very hard to protect whatever data that I've entrusted Google with. And you should too.

Wednesday, January 20, 2016

Yêu nước

Yêu nước là mong muốn làm cho đất nước mình giàu mạnh hơn, cuộc sống người dân tốt đẹp hơn. Vậy, giả sử Việt Nam không có vấn đề gì về kinh tế chính trị, trình độ dân trí cao, an sinh xã hội tốt như Thụy Sĩ, Thụy Điển, hay Singapore chẳng hạn, liệu những người yêu nước có còn lý do yêu nước hay không?

Yêu nước là sự gắn kết, mối liên hệ vô hình với những người có cùng văn hóa, có cùng ngôn ngữ, có cùng màu da, có cùng nguồn gốc với mình. Vậy, mấy dân tộc "anh em" thiểu số ở Tây Nguyên hay Tây Bắc, mình có nên yêu thương họ không nhỉ, vì họ đâu có cùng văn hóa, ngôn ngữ, màu da hay nguồn gốc? Thậm chí giống nhau hết, nhưng người Hà Nội có thấy liên hệ, gắn kết với người Thanh Hóa không nhỉ?

Nước Mỹ hỗn chủng tạp, dân tứ xứ đổ về, da vàng, da đen, da trắng, mỗi thằng nói một thứ tiếng khác nhau, chọn chung tiếng Anh để giao tiếp hàng ngày, về nhà lại nói tiếng riêng. Theo logic ở trên, tôi không thể nào liên hệ được với một anh Ấn Độ và ngược lại. Như vậy là, ở Mỹ chắc không có ai yêu nước hết, tội nghiệp chưa?

Bạn tôi ở Mỹ có lần tâm sự sao mỗi lần đi chơi nghe tiếng người Việt anh ấy không thấy xúc động, không muốn tay bắt mặt mừng, mà chỉ im im, lảng đi chỗ khác, không muốn tiếp xúc. Tôi cũng thường như vậy. Vậy, tôi và bạn tôi không yêu nước, vì yêu nước là phải có sự liên hệ cảm xúc với những người Việt Nam khác?

Hay như giáo sư Châu kể đến sân bay ở Nhật gặp thanh niên nông thôn Việt Nam ngồi đánh bài, thách thức thế giới, giáo sư thấy thương họ lắm, nhưng không thấy giáo sư kể đoạn hai bên tay bắt mặt mừng, ôm hôn thấm thiết, tình trí dân nồng thắm. Có thể tình cảm chỉ để trong lòng thôi, khi nào đụng xe ngoài đường người ta mới thể hiện ra?

Yêu nước, cho nên, là cái thứ tình cảm người ta nói cho sang, nhưng kỳ thực rất mờ ảo. Không ai sờ mó, định nghĩa được yêu nước là gì. Cái gì mới có thật?

Thứ nhất, người lính ra trận, hỏi có yêu nước không, họ nói đó là cái thứ cuối cùng họ nghĩ đến, quan trọng nhất là phải tồn tại đã. Họ hi sinh thân mình, nếu không phải vì bị ép buộc, cũng không phải vì một thứ tình cảm mơ hồ, mà vì những điều rất cụ thể. Họ muốn bảo vệ quyền lợi chung, mà họ và con họ có phần trong đó. Cũng có những người lính xả thân vì muốn bảo vệ lẽ công bằng ở đời, bảo vệ những điều mà họ tin là đúng.

Thứ hai, người ta quan tâm đến quyền lợi của mình, muốn môi trường sống xung quanh mình tốt lên, để con cái, gia đình mình cũng được sống tốt hơn. Sức một người không làm được nhiều, nên người ta họp lại thành xóm, xóm thành làng, làng thành xã, xã thành huyện, huyện thành tỉnh, tỉnh thành nước. Nước Mỹ tồn tại không phải vì người dân yêu nước, mà vì họ cùng chia sẻ những giá trị chung được ghi trong hiến pháp. Họ bầu tổng thống, giao cho quyền lực cực lớn, nhưng tổng thống phải thề bảo vệ hiến pháp, vì họ tin hiến pháp giúp cho họ và con họ có cuộc sống tốt hơn.

Cuối cùng, ai cũng muốn làm việc tốt, có ảnh hưởng tích cực đến nhiều người. Những người giỏi giải quyết vấn đề, thích giải quyết những vấn đề lớn, quan trọng, có ảnh hưởng sâu rộng. Người ta quan tâm Việt Nam vì Việt Nam có nhiều vấn đề lớn như vậy. Cả Việt Nam là một cơ hội lớn, cho những ai muốn cải tạo xã hội, muốn làm cho cuộc sống của hàng triệu người tốt lên. Nếu, chẳng may, Việt Nam hết vấn đề, trở thành Thụy Sĩ chẳng hạn, sẽ có rất nhiều người hụt hẫng vì không còn vấn đề để giải quyết.

Thay vì chỉ nghĩ đến Việt Nam, nên chăng nghĩ xem mình có thể đóng góp gì, có thể tạo ảnh hưởng tích cực gì đến thế giới mình đang và sẽ sống? Ở Việt Nam, giới trí thức thường có xu hướng bỏ chuyên môn chuyển sang bàn chuyện quốc gia đại sự. Bàn thôi, chứ không làm, vì làm đã do giai cấp công nhân đảm trách rồi, đụng vô ăn búa liềm! Nhưng bàn về cải cách xã hội, góp phần giúp Việt Nam phát triển, nâng cao đời sống người Việt Nam cũng chỉ là một lựa chọn, trong số rất nhiều lựa chọn khác mà thôi. Có nhiều người chọn dành cả đời để đóng góp, tạo ảnh hưởng trong khoa học, văn chương, nghệ thuật, thể dục thể thao, v.v. Họ đóng góp cho cái chung của nhân loại, thế là đủ. Có người chọn lo cho gia đình, con cái, cuộc sống đề huề, no nấm, cũng đủ rồi.

Khi gửi hộ chiếu cho công dân, bộ ngoại giao Mỹ có kèm theo một tờ rơi bên ngoài có dòng chữ "With your U.S. passport, the World is Yours!", tạm dịch "Với hộ chiếu Mỹ, cả thế giới là của bạn!" Ngon chưa! Ngoài hàm ý đi đâu cũng không cần phải xin visa, tôi nghĩ câu này còn muốn nhắc dân Mỹ rằng vấn đề của thế giới là vấn đề của người Mỹ. Người Mỹ chơi ở cấp độ toàn cầu, chứ không chỉ gói gọn trong nước Mỹ. Nước Mỹ có nhiều vĩ nhân, có ảnh hưởng lớn đến cả thế giới, vì lẽ đó.

Muốn được như nước Mỹ, trước nhất mỗi người phải bước ra khỏi vỏ bộc của danh tính. Đừng yêu nước vì ta là người Việt Nam. Hãy yêu nước, không yêu cũng không sao, vì ta muốn có ảnh hưởng tích cực đến thế giới này.

Bởi vậy người ta mới nói, yêu nước là việc của những con cừu, không phải việc của những người tự do =).

Monday, January 18, 2016

Nhận dạng giọng nói tiếng Việt

Một tính năng độc đáo của Android mà ít người biết đó là khả năng nhận dạng giọng nói bằng tiếng Việt.

Y như ảo thuật. Mình nói tiếng Việt nó hiểu hết. có thể tìm kiếm bằng tiếng Việt. Ví dụ như nói Tôi muốn ăn phở ở Sài Gòn nó hiểu luôn.

Ai muốn thử mở Android lên: settings -> language and input -> voice typing -> languages -> chọn tiếng Việt.

Toàn bộ bài blog này được viết bằng chương trình nhận dạng giọng nói trên Android. Tôi chỉ thêm dấu câu vào vì hiện giờ Android chưa hiểu dấu câu. Nói dấu chấm nó viết chữ chấm ha-ha.

Tính năng này và những tính năng trí tuệ nhân tạo khác trong các sản phẩm của Google có sự đóng góp rất lớn của anh Lê Việt Quốc: http://cs.stanford.edu/~quocle/.

Thằng Tư

Thấy thiên hạ ầm ầm mua vé số, tự dưng tôi nhớ đến thằng Tư. Nó tên thật Nguyễn Quý Tứ, đứng thứ tư, nên chết tên. Anh hai của nó là thằng Nho, không biết bị gì, nhưng chậm trí. Đầu óc của nó cỡ đứa con nít mười hai mười ba tuổi, mặc dù nó đã bốn mươi rồi. Đợt vừa rồi về, gặp nó ngoài đường nhưng nó không còn nhớ tôi là ai. Dưới thằng Nho là thằng Tiến, chích choác, bỏ, chích choác tiếp, bỏ, không biết bây giờ ra sao. Sau thằng Tư còn hai ba đứa nữa, nhưng tụi nó nhỏ hơn tôi nhiều, nên tôi chỉ chơi với thằng Tư.

Thằng Tư khét tiếng lì đòn. Bọn con nít tụi tôi đi chơi với đám lớn, trò chơi yêu thích của tụi nó là bắt hai thằng ra đánh lộn, thằng nào khóc trước thua. Giống như đá gà. Tôi ốm yếu nhỏ xíu, nhát đòn, lúc nào cũng thua. Thằng Tư đánh lộn chưa bao giờ thua. Bét nhất là huề. Nhiều lúc chảy máu miệng luôn nó cũng không khóc. Đám lớn khoái nó lắm, đi đâu cũng dắt nó theo. Nhiều khi đang ngồi ngoài đường, thấy một đám khác đi qua, có thằng la lên, đụ má quýnh chết mẹ tụi nó đi tụi bây, nhìn phát ghét, y như rằng thằng Tư nhảy vô trước, đụng thằng nào xào thằng đó, nhỏ lớn gì nó cũng không sợ.

Nhà nó nghèo, ba nó đạp xích lô, má nó không nhớ làm nghề gì, chỉ nhớ đó là một người đàn bà đẹp, có khuôn mặt rất buồn. Ba tôi hay nói, mày mà không chịu ăn, tao cho mày qua nhà Bảy Đời Sống, tụi nó toàn ăn ốc bươu, không có cơm mà ăn đâu nha con. Nghe nói hồi nhỏ tụi nó đòi ăn hoài, ổng bả cho mỗi thằng một con ốc bươu, không có muỗng nĩa gì hết, ăn từ sáng đến tối không hết.

Con nít ai mà không ham chơi, nhưng ở xóm tôi chắc chỉ có tôi bỏ ăn đi chơi, còn mấy thằng kia đến giờ ăn là bỏ hết, về nhà ăn đã, không thôi lấy sức đâu chơi. Có lần tôi qua nhà thằng Tư, giữa trưa, rủ anh em tụi nó đi lượm nút khoén. Tụi nó nói đợi chút, ăn cơm đã, cơm sắp chín rồi. Mỗi bữa cơm giống như là một bữa tiệc với tụi nó, mặc dù chỉ có cơm trắng với nước tương dầm hột vịt luộc. Cơm vừa chín, còn nóng hổi, khói bốc nghi ngút nhưng thằng nào cũng đã ngồi nhai nhóp nhép. Thấy mà phát thèm, tôi xin nhưng thằng Tư nói làm gì có dư mà xin.

Tôi có cái tật đem cơm ra trước xóm ngồi ăn. Mỗi lần xách tô cơm ra ngồi dựa cột đèn trước hẻm, thể nào tụi nó cũng bu lại xin. Ba mẹ tôi làm ăn được, cơm nước lúc nào cũng đầy đủ thịt cá, bọn con nít, kể cả mấy thằng lớn lớn, khoái ăn ké lắm. Tôi cũng khoái, đỡ phải ăn. Có bữa bà nội tôi giật mình hỏi, sao hôm nay mày ăn đến hai tô vậy Thái, tôi nói xạo, ờ con thấy đói bụng. Lớn lên một chút, tôi cho tụi bạn bằng tuổi ăn ké, còn mấy thằng lớn lớn tôi bán. Bọn nó đánh bài, đói bụng, tôi bán mỗi tô năm mười ngàn, lấy vốn đánh bài.

Ba má thằng Tư nuôi không nổi mấy anh em tụi nó, tầm bảy tám tuổi, khôn khôn một chút, ổng bả cho tụi nó đi bán vé số. Ba tôi hay nói, mày không chịu học, mai mốt đi bán vé số như thằng Tư nha con. Tôi nghĩ, dzậy càng sướng, có tiền đánh bài như thằng Tư.

Buổi sáng ba nó đưa vốn, nó ra đại lý nhận một cọc vé số, bán cái vèo đến trưa, hết, nhưng nó giấu không nói ổng bả biết. Nó quay lại đại lý, nhận thêm một cọc nữa, bán đến chiều, chặt cò tiền lời, làm vốn đánh bài. Mượn đầu heo nấu cháo, còn gì sướng bằng. Có bữa khách trúng, người ta cho tiền, nó cũng giấu. Tôi biết vì tôi có đi theo nó, làm "thực tập sinh". Nó đưa tôi chừng một chục tờ, hai thằng đi hai hướng, hẹn ở đâu đó. Lần đầu bán được một tờ vé số, hồi đó chỉ có tờ một ngàn hai ngàn thôi, thấy đã lắm, như mới lượm được tiền. Nhưng lâu lâu tôi mới đi một lần, vì buổi sáng còn đi học, trưa bà nội bắt ngủ, lâu lâu mới "vượt ngục" được một bữa.

Ở trong xóm, thằng nào lớn ăn hiếp mấy thằng nhỏ hơn. Cá lớn nuốt cá bé. Nhiều khi đang chơi bắn đạn, tụi nó đến đái vô cái lổ, coi tức không? Sau này tôi đi học võ, tụi nó mới hết dám ăn hiếp -- nhưng tôi cũng bắt đầu ăn hiếp mấy đứa yếu hơn! Thằng Tư khác. Nó lì, ra đời sớm, hiểu biết, quýnh lộn không thua ai, nhưng không chơi ăn gian. Lúc nào cũng sòng phẳng, quýnh bài quýnh bida thua thì trả, không có xù. Cũng không bao giờ nó ỷ mạnh mà đi ăn hiếp mấy đứa yếu hơn.

Thằng Tư chết năm tôi vô đại học. Tầm mười ba mười bốn, nó bỏ nhà đi bụi đời, sống với đám Hữu Năm, trùm lưu manh phá làng phá xóm khu chân cầu Tân Thuận. Buổi sáng cả đám đạp xe đi làm. Tụi nó đi thăm xe công-ten-nơ đậu dọc khu chế xuất, tháo nắp bình xăng, đem ra chợ Dân Sinh, bán mỗi cái 65.000. Lương tuần của tôi lúc đó được 50.000. Cái gì tháo được là tụi nó tháo, trong túi lúc nào cũng có đồ nghề. Xẹt ngang qua chiếc taxi, quay lại, chưa đầy 30 giây là nó đã tháo được cái kiếng chiếu hậu. Gạt nước cũng mất chừng đó thời gian, nghe nói bán được giá hơn, nhưng phải canh tài xế ngủ mới tháo được.

Nhiều khi tài xế quên đóng cửa xe, tụi nó chôm luôn giấy tờ, chủ xe phải chuộc lại. Ăn được một vụ vậy nó nghỉ làm một tháng, quýnh bida đi chơi gái thả cửa, nhưng cũng có lần thằng Tư chôm phải giấy tờ của đám anh chị Cầu Muối, bọn nó rần rần kéo xuống mấy chục thằng, đứa nào cũng xâm rồng xâm phượng, chửi ầm cả lên, đụ má bây giờ trả giấy tờ hay muốn gì nói! Thằng Tư lầm lì, không muốn trả, tôi biết nó nghĩ, đụ má ngon ra quýnh tay đôi với tao. Nhưng đám Hữu Năm rét, kêu, mấy anh ơi tụi nhỏ nó lượm được, để em kêu nó đem ra trả. Thằng Tư phải trả, không hiểu sao trời không sợ đất không sợ nhưng nó lại sợ thằng Hữu Năm như sợ cọp.

Tôi vô cấp ba, thằng Tư đi bụi đời cũng được mấy năm rồi. Lì càng lì hơn, nhưng tính khí cũng y như trước. Chơi được. Tôi không còn đi chơi với nó, nó cũng không còn ra xóm tôi chơi, nhưng lâu lâu tôi cũng quýnh bida với nó. Tôi ghiền bida, quýnh cũng có số má, nhưng tôi hay bị xù tiền. Lần nào có thằng Tư nó cũng chửi bọn kia, đụ má ông già rồi mà chơi đéo được, thua thì chung, chơi vậy mai mốt ai chơi với ông. Không có lần nào tôi lấy lại được tiền, nhưng mình không dám chửi nên nghe nó chửi cũng thấy đã.

Chỉ có điều quýnh bida với thằng Tư không biết lúc nào bị chém nhầm, nên tôi cũng sợ, thấy nó ở đâu thường tránh, không tránh được mới chơi chung. Hữu Năm bị bắt, thằng Tư cầm đầu đám du côn, tuần nào cũng đâm cũng chém loạn xạ. Có bữa nó ngồi sau xe máy, hai tay cầm hai cây hàng, kéo lê trên đường, chạy đến đâu xẹt lửa đến đó, ngầu lắm. Đàn em của nó thằng nào cũng dính chưởng, đứa bị đâm tưởng chết, đứa bị chém rớt ngón tay, nhưng thằng Tư vẫn lành lặn. Nghe nói bọn Xóm Chùa cay nó lắm, canh nó hoài, nhưng chưa "múp" được. Có lần thằng Tư đang đứng bàn độ đá banh, chiếc xe máy trờ tới, một thằng nhảy xuống, giơ cây hàng đen thui chém, nhưng nó né được, chạy tọt vô bàn bida ông Bảy, tôi đang đứng đánh, không biết phải làm sao, may sao bọn kia sợ lọt vô ổ, không rượt theo, lên xe dọt mất. Nghe nói hôm sau thằng Tư lần ra thằng đó, chém nó nát vai.

Thằng Tư chết không phải vì đâm chém, mà chết vì xì ke. Nó bắt đầu chích lúc nào tôi không biết, nhưng lúc tôi học lớp 11 lần đâu tôi thấy nó chích ngay chỗ bàn bida. Thấy tôi nhìn, nó ngước lên nói, Thái mai mốt mày đừng ra đây chơi nữa. Tôi bỏ luôn ước mơ trở thành Lý Thế Vinh, thấy ớn quá. Bọn nó chích hay lắm, bác sĩ còn cần phải có ánh sáng mới tìm được ven, bọn nó tối thui cũng biết chỗ chích. Một tép hàng trắng 50.000, pha với một ống nước cất, có đứa còn pha với nước đái, không biết ai chỉ, hai ba thằng chích chung.

Những năm đó, không biết bao nhiêu thằng cỡ tuổi tôi chết, không vì sốc thuốc thì vì sida. Nhiều lắm. Có đám đá banh chung với tụi tôi, mới vô đá rất uể oải, nhưng không hiểu sao càng đá tụi nó càng sung, sau mới biết đá giữa chừng mấy ông thần ve chai vô "độp" xong ra đá tiếp. Cả đám đó mười mấy thằng, chết gần hết.

Thằng Tư bị sida. Nó bị bắt lên trại, không biết bị dính sida ở nhà hay ở trại. Trại trả về nhà, coi như chờ chết. Lần cuối tôi gặp, nó đi không nổi, nhưng ráng lếch ra bàn bida chơi. Nó ngồi im, không nói, mặt vẫn lầm lầm lì lì. Vài ngày sau nghe nói nó sốc thuốc hay sao đó, rớt từ gác nhà nó xuống đất chết ngay tại chỗ.

Nếu ba mẹ nghèo, hay tôi lì đòn, anh hùng rơm một chút, chắc tôi cũng sẽ như thằng Tư. Có quá nhiều chuyện mình nghĩ là do mình, nhưng rốt cuộc là do trời. Xui thì như thằng Tư, hên thì thành ca sĩ, thế thôi.

Sunday, January 17, 2016

Ờ, chắc dzậy quá

Buổi sáng cuối cùng trước khi về lại Mỹ, tôi thả bộ từ khách sạn Rex đi dọc đường Pasteur. Tôi đã cưỡi xe máy chạy vụt qua đoạn đường này không biết bao nhiêu lần, nhưng hôm đó là lần đầu tôi đi bộ.

Vừa quẹo vào Pasteur từ Lê Thánh Tôn tôi gặp một bà già bán kẹo cao su, kế bên có đôi nạng. Nhìn yếu lắm. Tôi nhắm mắt đi vụt qua. Thấy buồn, thấy nhớ, muốn quay lại ngồi chơi, muốn bỏ đi thật nhanh. Cuối cùng tôi quay lại, mua một bao kẹo, giá 5.000 đồng. Tôi để lại 50.000, bà già cảm ơn, tôi không hỏi han gì thêm. Bỏ đi vài bước, tôi tự hỏi không biết mình bị làm sao, keo quá. Uống một ly nước đã hết 100.000. Nếu để lại 500.000, có thể hôm nay bà già được nghỉ một bữa. Hay là quay lại? Cuối cùng đi tiếp, coi như bà già không gặp may.

Đi vài bước tôi gặp một bà già khác, trẻ hơn bà bán kẹo, nhìn còn khỏe. Bả bán hạt sen, 10.000 đồng một bịch. Lần này không do dự, tôi lấy luôn một bịch, rút kinh nghiệm lần trước, để lại 100.000 đồng, nói khỏi thối, bà già cảm ơn. Bước đi thấy lòng nhẹ nhàng hơn, giống như đã làm được một việc tốt. Quá rẻ.

Đi qua hai bà già, đoạn đường đó cũng hết người bán dạo. Tôi đi một mạch đến chỗ bốn vùng chiến thuật trước dinh Thống Nhất. Gần bảy tám năm trước, buổi tối tôi ngủ ba tiếng, thời gian còn lại đọc sách, tập hack cho đến gần sáng thì đạp xe một vòng thành phố, điểm cuối là ở chỗ này. Tôi thích đứng ở bên hông Nhà Thờ Đức Bà, coi nắng bò xuống ôm mấy bức tường cũ kỹ.

Tôi chọn một cái ghế đá, ngồi chơi như hồi xưa hay ngồi trước hẻm coi người ta đi qua đi lại. Ngồi chưa nóng đít, một bà già bộ dạng thất thểu, tầm bảy mươi, mếu máo hỏi, cậu ơi có tiền cho tôi xin, tôi vừa bị giật 38 tờ vé số, bây giờ phải có đủ 380.000 nộp đại lý họ mới cho lấy vé mới mà bán. Tôi cho 100.000, bả cảm ơn, rồi đi xin tiếp những người xung quanh.

Tôi thấy ngờ ngợ, quan sát xem sao. Hầu như ai cũng cho. Có nhóm ba bốn cô gái, mỗi cô đều móc túi cho tiền, không rõ bao nhiêu. Tôi tính đến hỏi, xem câu chuyện của bà già nói cho họ có giống như bả nói với tôi hay không. Nếu giống, tôi sẽ cho bả đủ tiền, khỏi xin nữa, nếu không không biết làm sao nữa. Rốt cuộc tôi không hỏi, thấy ngại.

Tôi đi tiếp một đoạn, gặp một bà già bán vé số. Bả già lắm, tóc bạc gần hết, chắc bảy mươi, nhưng cười tươi ơi là tươi. Bả nhìn tôi, mời cậu mua mấy tờ. Tôi nói bà bán cho con một tờ, đưa 100.000, xong tôi nói thôi, gửi bà, con không lấy vé số. Bả cười càng tươi hơn, mắt sáng, ngạc nhiên, nói cảm ơn con nhé, chúc con nhiều sức khỏe. Tôi tính cho bà già thêm, nhưng sợ bả ngại, cũng không biết nên cho bao nhiêu cho đủ, nên chỉ cười cười, rồi bỏ đi.

Về nhà, đứa em nói anh bị lừa rồi. Bà già bán kẹo thuộc đường dây chăn dắt của một bọn, chúng chở đến, ngồi từ xa quan sát, cho bả nhiêu tiền cũng bị bọn nó luộc hết. Bà bán hạt sen bán ở đó lâu rồi, hạt sen chỉ 5.000 một bịch thôi. Bà xin tiền chắc chắn lừa đảo, vì thời buổi iPhone đầy đường ai đi giật vé số.

Tôi nói ờ, chắc dzậy quá. Thôi kệ, giúp người ta để tự thấy thanh thản thôi. Cũng không có bao nhiêu tiền, hồi xưa mẹ tôi cũng đi bán dạo, chắc cũng có người thấy thương cho tiền.

Buổi chiều hôm đó, tôi gặp một ông trung niên, ôm một đứa nhỏ, chắc nó đang ngủ, bộ dạng mếu máo, hớt ha hớt hải, bán vé số. Lúc đó gần 4h, sắp xổ số, mà ổng còn một xấp dày cộm. Tôi không muốn ủng hộ chuyện đem con nít theo, nhưng thấy tội nghiệp, có thể để ở nhà không ai coi, giống ba tôi hồi xưa đi kiếm việc làm cũng phải vác tôi theo, tôi mua 5 tờ, không cho tiền vì thấy ổng cũng còn khỏe mạnh.

Về nhà đứa em nói anh khờ quá, bị lừa nữa rồi. Vé số bán không hết trả lại cho đại lý được, không phải ôm đâu. Tôi nói, ờ, chắc dzậy quá. Thôi kệ, mình cũng không có cho thêm tiền.

Constructing the Dual EC backdoor

Unless you've been living under the rock for the past couple of weeks then you've probably heard of the Dual EC backdoor in Juniper devices. Matthew Green wrote an awesome blog post, and Checkoway et al gave a nice update on the backdoor at Real World Crypto 2016. If you haven't read these links please do now, I'll wait.

The backdoor is the knowledge of $d$ such that $dQ$ = $P$, where $P$ and $Q$ are the two constants in Dual EC. Someone asked me how NSA can find such a $d$, and it took me a while to figure it out so I thought I'd share with you all.

Note that $P$ is not a random point, but it's the standard generator defined for the P-256 curve. That means unless NSA had been planning for the Dual EC backdoor since the 1990s when the P-256 curve was defined, they couldn't just take a random $Q$, and multiply it with a random $d$ to obtain $P$.

What NSA might have done was to generate a random $d$, then use the extended Euclidean algorithm to find $e$ such that $de \equiv 1 \pmod{n}$ where $n$ is the number of points on the P-256 curve (also known as the order of the curve). Such an $e$ always exists, because $n$ is a prime number. Then $Q = eP$ satisfying $dQ = deP = P$. Quan Nguyen showed me that the same trick can be used to figure out $P$, given $n$ and $nP$ (which I thought was a much difficult problem).

The extended Euclidean algorithm together with the Chinese Remainder Theorem are the two most powerful cryptanalysis tools ever. I've seen countless systems broken because the designers weren't aware of these algorithms. Whenever analyzing or designing a new system, ask yourself if you can break it using these simple tricks, and you'll be surprised that most of the times the answer is yes.

By the way here's my (conspiracy) theory of what happened to Juniper. In 2008 for whatever reason Juniper decided to use Dual EC. Perhaps they wanted to get certified so that they could sell to the US government. They did their homework, found the alleged backdoor, which was discovered in 2007. They decided to replace the default $Q$ with their home-brew value. I think the bug in the PRNG and the increasing of nonces to 32 bytes were honest mistakes. If these changes were unauthorized, Juniper would have counted them as another backdoor, but they didn't. Fast forward to 2012, NSA wanted to hack someone which uses some Juniper device. They were furious that Juniper wasn't using their default $Q$, and decided to hack Juniper to change $Q$. They didn't want to use the default $Q$, because they knew the backdoor would be discovered eventually, and using said value would be a smoking gun confirming that NSA was the perpetrator and the alleged backdoor in Dual EC is real.

VietBay Tech Talk: History and Technology of the Crypto Backdoor in Juniper Devices

I gave this talk to VietBay, a group of Vietnamese expats living in the Bay Area. It's more than 2 hours, but I covered a lot of ground, from the history of Dual EC to the math of elliptic curve crypto. Enjoy and leave a comment if you have any questions.

This is not a one-off event, but we're going to hold regular tech talks covering what we found interesting in tech, science, engineering, math, and whatnot. The next topics shall cover database technologies, quantum computers, even more crypto, etc. Stay tuned!

Friday, January 15, 2016

Exploiting the math/rsa bug in Go

The bug is really cool: https://groups.google.com/forum/#!topic/golang-dev/MEATuOi_ei4. It impacts not only crypto/tls, but also crypto/openpgp. If you are using Go to sign messages, it's time to change your RSA private keys. Someone asked me to explain the bug in layman term, and below is my take.

The RSA function calculates $m^e \pmod{pq}$, where $p$ and $q$ are large prime numbers. Modular operations are expensive, people usually use two tricks to speed them up:

a/ Montgomery reduction: calculating 33500 % 99 is hard because 99 is not a nice number. It'll be awesome if we can replace 99 with 100, but that's exactly the trick that Montgomery found.

b/ Chinese Remainder Theorem: in high school you were probably asked to find a number $n$ satisfying $n \pmod{2} = 1$, $n \pmod{3} = 5$, and $n \pmod{5} = 7$. Perhaps your teachers didn't tell you, but you can solve this problem using the Chinese Remainder Theorem. We can use the same trick here, by computing $m^e \pmod{p}$ and $m^e \pmod{q}$ then combining the result we can save a lot of CPU cycles.

Go uses both tricks, but it did the Montgomery reduction incorrectly in a few cases. Instead of returning 0 for x % x, it returned x. It also returned $x + \delta$ for $(x + \delta) \pmod{x}$ -- the correct value should be $\delta$. It's surprising that such a small mistake could lead to leaking RSA private keys.

Suppose there's a RSA oracle that accepts a message $c$ and returns $c^d \pmod {pq}$, where $d$ is the private exponent. Most TLS servers expose such an oracle. Let's see how one can obtain $p$ or $q$ by querying the oracle. Let's look at how CRT is used in RSAThe following values are precomputed and stored as part of the private key inside the oracle:
  • $p$ and $q$: the primes from the key generation,
  • $d_p = d \pmod{p - 1}$,
  • $d_q = d \pmod{q - 1}$, and
  • $q_{inv} = q^{-1} \pmod{p}$.
These values allow the oracle to compute the exponentiation $c^d \pmod{pq}$ more efficiently as follows:
  • $m_1 = c^{d_p} \pmod{p}$
  • $m_2 = c^{d_q} \pmod{q}$
  • $h = q_{inv}(m_1 - m_2) \pmod{p}$
  • $m = m_2 + hq$
If there were no bug, we would obtain $m' = c^d \pmod{pq}$. But $m_1$, $m_2$ and $h$ are the result of 3 modular operations, they could be incorrect.

Suppose that $m_2$ is incorrect and equal to $q + \delta$ (the extra $q$ is there because the Montgomery reduction forgot to remove it). That means $m = m' + q$, in other words $m \equiv m' \pmod{q}$. Raising both sides to the public exponent we have $m^e \equiv m'^{e} \equiv c^{ed} \equiv c \pmod{q}$. The last equation is due to the fact that $ed \equiv 1 \pmod{q - 1}$. Thus, $m^e - c$ is a multiple of $q$, and we can compute $q$ as the gcd of $m^e - c$ and $pq$. In summary, if we raise the signature to the public exponent and subtract the original message, we'll end up with a multiple of $q$. Thanks Adam Langley for this trick :).

Can we exploit if $m_2$ is correct, but either $h$, $m_1$, or both is incorrect? It's unclear, but I'll leave that as an exercise for the readers. Comments are welcome!

Monday, January 11, 2016

Đầu tư an toàn thông tin thế nào cho đúng?

Cách đây mấy tuần tôi có viết một bài cho báo Tuổi Trẻ về đầu tư an toàn thông tin. Tuổi Trẻ đăng nguyên văn ở đây. Hôm nay vừa thấy tin anh Tavis Ormandy -- hi vọng sẽ mời được ảnh đến TetCon 2017 -- phát hiện một số lỗi cực kỳ ngớ ngẩn của TrendMicro, nên mới nhớ là chưa gửi lên blog.

Tôi không bất ngờ vì TrendMicro có lỗi, chỉ thấy bực là có quá nhiều lỗi đơn giản mà chỉ cần nhìn qua là thấy liền. Chứng tỏ TrendMicro mang tiếng là bán sản phẩm security nhưng không có người làm security cho chính sản phẩm của họ. Tôi có nhấn mạnh chỗ này trong bài viết bên dưới.

Tôi tự đặt cho mình mục tiêu là trong vòng 5 năm tới sẽ làm doanh thu tại Việt Nam của các hãng phần mềm chống mã độc đi xuống hoặc giậm chân tại chỗ chứ không đi lên.


Sử dụng giải pháp an ninh có sẵn: coi chừng tiền mất tật mang

Hồi trung tuần tháng chạp, Juniper, hãng thiết bị mạng nổi tiếng của Mỹ, thông báo rằng có ai đó đã bí mật cài mã độc vào các thiết bị của họ. Mã độc này cho phép kẻ tấn công có thể điều khiển các thiết bị của Juniper và đồng thời giải mã luôn dữ liệu được gửi xuyên qua chúng. Phân tích của giới chuyên môn cho thấy mã độc có liên quan đến một thuật toán tạo số ngẫu nhiên mang tên Dual EC. Từ năm 2007, hai nhà nghiên cứu ở Microsoft đã chỉ ra rằng Dual EC có thể đã bị Cơ Quan Tình Báo Quốc Gia Mỹ (NSA) cài mã độc và điều đó sau này được xác nhận bởi các tài liệu do Edward Snowden tiết lộ. Ngoài Juniper ra, RSA, hãng sản phẩm an toàn thông tin đình đám của Mỹ, cũng từng bị phát hiện cố tình sử dụng Dual EC trong các sản phẩm của họ, sau khi bí mật nhận 10 triệu USD từ NSA. Nói cách khác, ai sử dụng sản phẩm của RSA coi như đã bị chính phủ Mỹ “nắm đầu” từ nhiều năm nay.

Trước đó vài ngày, đồng nghiệp của chúng tôi ở Google phát hiện một lổ hổng nghiêm trọng trong các thiết bị của FireEye, hãng giải pháp chống mã độc. Lỗi này cho phép kẻ tấn công dễ dàng điều khiển các thiết bị của FireEye. Tương tự như Juniper, các thiết bị của FireEye thường được đặt ở những vị trí trọng yếu nhất trong các trung tâm dữ liệu, nơi có thể thấy hết toàn bộ dữ liệu đi ra đi vào, từ email, tài liệu, cho đến mật khẩu, v.v. Vấn đề là chất lượng an ninh phần mềm của các thiết bị như vậy thường không được đảm bảo, bởi các công ty làm thiết bị an ninh, trớ trêu thay, lại thường không có đội làm an ninh phần mềm. Ngoài FireEye, người ta còn phát hiện được lỗi bảo mật của hầu hết các giải pháp mạng của Cisco, F5, Palo Alto Networks hay các phần mềm chống mã độc hiện có trên thị trường, như ESET, Kaspersky, Sophos, Avast, v.v.

Trong các kỳ hội thảo TetCon ở thành phố Hồ Chí Minh, chúng tôi đều nhấn mạnh phần mềm luôn có lỗi bảo mật và các giải pháp chống mã độc, tường lửa hay các thiết bị an ninh đều là phần mềm, nên chúng cũng có lỗi. Các phần mềm này thậm chí còn có nhiều lỗi hơn, vì chúng thường phức tạp hơn phần mềm thông thường. Nhóm của chúng tôi ở Google chịu trách nhiệm an ninh phần mềm cho các sản phẩm của hãng và sự thật là chúng tôi đã tìm thấy lỗi bảo mật trong tất cả phần mềm hay thiết bị phần cứng mà chúng tôi đã từng xem xét. Việc mua sắm và cài đặt các trang thiết bị và giải pháp an ninh có sẵn, do đó, có thể làm cho hệ thống kém an toàn hơn.

Rất tiếc, theo quan sát của chúng tôi các cơ quan nhà nước và các doanh nghiệp Việt Nam dành phần lớn ngân sách để mua sắm các giải pháp có sẵn kể trên. Không phải giải pháp nào cũng tệ, nhưng nếu người ra quyết định không có đủ thông tin (ví dụ như không biết rằng các thiết bị của Juniper đã bị cài mã độc), khó lòng mà họ có thể chọn được giải pháp thật sự đem lại lợi ích và với một chi phí hợp lý. Một xu hướng đầu tư quản lý an toàn thông tin khác không mấy hiệu quả nhưng lại rất phổ biến ở Việt Nam là chạy theo các bộ tiêu chuẩn như ITIL hay ISO 27001. Google buộc phải lấy chứng chỉ ISO 27001 không phải vì nó quá hữu ích trong việc đảm bảo an toàn thông tin, mà chỉ vì luật lệ một số nước yêu cầu Google phải đạt được chuẩn này. Chúng tôi làm ở Google hơn bốn năm, nhưng chưa từng có ai yêu cầu chúng tôi phải tuân thủ những bộ tiêu chuẩn này. Chúng tôi nghĩ không phải chúng không đem lại giá trị, chỉ là giá trị không xứng đáng với thời gian, công sức và tiền bạc phải bỏ ra.

Đầu tư an toàn thông tin đúng cách: đầu tư vào con người

Thay vì đầu tư tiền của vào các giải pháp có sẵn, Google chọn đầu tư vào con người. Nhóm làm an toàn thông tin ở Google có hơn 500 người, chỉ tiền lương thôi thì mỗi năm Google đã phải chi vài trăm triệu USD. Nếu có một giải pháp có sẵn, chắc hẳn những người quản lý đã mua để sử dụng cho tiết kiệm chi phí. Mặc dù Google vẫn có sử dụng một số thiết bị và giải pháp của bên thứ ba, thông thường Google tự xây dựng các giải pháp của riêng họ, vì các giải pháp có sẵn không đảm bảo được chất lượng. Đương nhiên không phải công ty nào cũng có thể làm như thế, nhất là các doanh nghiệp vừa và nhỏ, nhưng trước nhất chủ doanh nghiệp hay những người làm quản lý thông tin phải hiểu rằng cách đầu tư đúng nhất là đầu tư vào con người.

Ở Việt Nam đã bắt đầu có những doanh nghiệp đầu tư đúng cách vào an toàn thông tin, ví dụ như VNG hay Viettel. Theo chúng tôi được biết, những đơn vị này đã dành ra nhiều tiền của để duy trì một đội ngũ vài chục người bao gồm những kỹ sư an toàn thông tin thuộc hàng giỏi nhất Việt Nam. Nhưng đây chỉ là hai ngoại lệ hiếm hoi, đa số các công ty khác, nhất là những đơn vị nhà nước, đều dành hết tiền mua sắm thiết bị giải pháp có sẵn. Có lần một kỹ sư làm ở cục An Toàn Thông Tin trực thuộc một bộ trong chính phủ nói với chúng tôi rằng ở chỗ anh ấy làm việc, có đủ hết tất cả các máy móc thiết bị hiện đại nhất, mới nhất, phần lớn là mua của các hãng bên Mỹ. Vấn đề là anh ấy không biết sử dụng chúng, vì trình độ kém nhưng lại không được đào tạo. Thành ra chỉ biết trùm mền các thiết bị có giá trị cả trăm ngàn USD, mỗi năm mở ra vài lần để cập nhật giấp phép sử dụng.

Xét ở bình diện an ninh quốc gia, Việt Nam nằm trong tầm ngắm của rất nhiều nhóm hacker có sự tài trợ của chính phủ (state-sponsored hackers). Đây là nhóm hacker nguy hiểm nhất, vì họ có tiền, có động cơ, có tài năng và có đủ kiên nhẫn. Không ai biết nhóm hacker nào đã xâm nhập và cài mã độc vào các thiết bị của Juniper, nhưng rõ ràng họ làm vậy không phải để đánh Juniper mà để đánh khách hàng của hãng này. Họ muốn xâm nhập vào một tổ chức nào đó và họ phát hiện tổ chức đó sử dụng sản phẩm của Juniper, nên họ xâm nhập vào Juniper. Có thể họ đến từ Nga, từ Trung Quốc, hay từ Mỹ, không ai biết cả. Câu hỏi là Việt Nam cần phải làm gì để tự phòng vệ trước mối hiểm họa này? Có rất nhiều việc cần phải làm, nhưng trước nhất vẫn là đầu tư vào con người.

Sự thật là sinh viên và kỹ sư an toàn thông tin Việt Nam có trình độ không thua kém các nước trong khu vực. Vừa rồi đội Việt Nam bao gồm các sinh viên đang theo học ở đại học Công Nghệ Thông Tin đã giành giải nhất cuộc thi hacking của các nước ASEAN. Các chuyên gia Việt Nam cũng được biết đến trên thế giới. Ví dụ như các sản phẩm và nghiên cứu của tiến sĩ Nguyễn Anh Quỳnh đã được giới hacker thế giới đánh giá rất cao. Nhưng số lượng kỹ sư lành nghề của Việt Nam vẫn còn quá ít. So với Thái Lan, Singapore, Malaysia, v.v. Việt Nam có phần nổi trội về tài năng an toàn thông tin, nhưng nếu so với Trung Quốc hay các nước phương Tây, số lượng chuyên gia Việt Nam như muối bỏ biển. Gia tăng số lượng và chất lượng chuyên gia trong nước, do đó, là việc đầu tiên cần phải làm ngay.

Các doanh nghiệp và cơ qua nhà nước phải dành phần lớn ngân sách an toàn thông tin để tuyển dụng, đào tạo, phát triển đội ngũ chuyên gia lành nghề tại chỗ. Các trường đại học phải đào tạo làm sao để sinh viên có đủ khả năng tham dự các cuộc thi thử tài xâm nhập được tổ chức thường xuyên trong và ngoài nước. Các công ty và tổ chức phải gửi nhân viên đi học, đi đào tạo ở các hội thảo chuyên môn trong và ngoài nước, tạo điều kiện cho họ tiếp xúc với giới chuyên gia, tạo điều kiện cho họ trở thành chuyên gia -- chính những người này sẽ giúp xây dựng các giải pháp an ninh dựa trên các nền tảng mở cũng như ra quyết định nên đầu tư mua sắm cái gì cho hợp lý. Nhu cầu nhân lực an toàn thông tin ở Mỹ và các nước phát triển rất lớn, do đó các doanh nghiệp và cơ quan nhà nước phải hiểu rằng để thu hút được người giỏi, phải có chế độ đãi ngộ xứng đáng, nếu không họ sẽ ra nước ngoài làm việc.

Cả thế giới đang bị phần mềm nuốt chửng, nhưng phần mềm lúc nào cũng có nhiều lổ hổng bảo mật. Mấy năm vừa rồi, bao nhiêu công ty trên thế giới bị xâm nhập, mỗi lần gây thiệt hại có khi lên đến hàng chục tỉ USD. Vậy mà ở Việt Nam khá yên ắng. Phải chăng Việt Nam là một ngoại lệ? Chúng tôi không nghĩ như vậy. Việt Nam đang ở khoảng lặng trước cơn bão. Cả xã hội Việt Nam đang bị Facebook và điện thoại thông minh nuốt chửng. Ngay cả chính phủ cũng đã xuất hiện trên Facebook. Rất nhiều công ty đã và đang ngày càng phụ thuộc vào máy tính. Vinasun bây giờ cũng đã phải làm phần mềm để cạnh tranh với Uber. Thiệt hại sẽ như thế nào nếu như hệ thống tính tiền của Vinasun bị cài mã độc để đánh cắp thông tin thẻ tín dụng? Chuyện gì sẽ diễn ra nếu tài khoản Facebook của chính phủ bị đánh cắp và một thông tin xấu được gửi lên đó? Chúng tôi không dám hình dung thiệt hại, nhưng chúng tôi tin chắc đầu tư cho để nâng chất lượng và số lượng kỹ sư an toàn thông tin là một lựa chọn rẻ hơn rất nhiều.

Sunday, January 10, 2016


A friend asked me to recommend some books, and here are what I came up with. I've reviewed most of them on this blog, but you can also find some new books here.

I used to read a lot of non-fictions, but these days I read mostly fiction and math. Below are the ones that I like enough to write a review. I hate self-help books FWIW.


- Fooled by Randomness (review): I read this book a long time ago, and it completely changed how I think ever since. I discovered that I had a lot of biases (hindsight bias, loss vs gain), and I learned how to think critically, which unfortunately was never taught in my schools.

- "Thấy lại chính mình" (review). I don't think you could find this book at bookstores or on the Internet, but I have a copy, let me know if you want to read it. When I relocated to here from Vietnam, my mom sponsored a project which printed and gave away 1,000 copies of this book. She gave me a copy. The book is a monk's pamphlet, I was skeptical that it was useful, but, oh boy, it was eye-opening for me. In hindsight its ideas are so obvious -- I don't agree with everything -- but I wonder why I didn't "ngộ" until that moment.


- Influence: The Psychology of Persuasion (review): For a while I was fascinated by marketing and sales. I wanted to learn the tricks to persuade a stranger to buy something from me. I read a lot of books, but this is the most fascinating which is based on real and peer-reviewed scientific researches.

- Purple Cow by Seth Godin (review): this is a marketing book, but I think marketing is all about psychology. As most great books are, the idea of this book is so obvious: to be remembered, be it a brand or whatever, you must do something remarkable. You must be the first, nobody remembers the second man set foot on the moon, but most people know that Neil Armstrong who is the first one. I love reading Seth Godin's blog too. One of my favorite articles is the hierarchy of success.


- The design of everyday things (review): read this book and you never piss in peace again haha! On a more serious note, I think all engineers should read it. If I had enough money, I'd give a copy to everyone that designs websites, household electronics, restrooms, door knobs, water faucets, etc. There are so many stupid designs out there. I once was at a hotel where I had to lift the door knob upward to open it! What the heck were they thinking? We were stuck outside for 15', until someone next door showed us the trick (he was stuck for a while too!).

- Vietnamerica (review): a sad story about our people. I wish someone would make a movie out of it.

Books that I remember but haven't reviewed:

Science fiction
- Rendezvous with Rama: it's one of my first sci-fi reads, still remains one of my favorites.
- A brave new world: if you like 1984, this is a must read. It was written 20 years or more before 1984.
- http://www.terrybisson.com/page6/page6.html: haha the most hilarious and original short sci-fi story ever! Also check out http://www.terrybisson.com/page12/page12.html, which is also super funny.
- The hitchhiker guide to the galaxy: a very very funny classic.
- Anything by Isaac Asimov.

- Anything by Randall Munroe of XKCD fame. "What if" for sure will teach you something to impress random people at parties =)
- http://www.feynmanlectures.caltech.edu/. Man, I wish I'm disciplined enough to finish these volumes. You should also reach all other books by Feynman. He's the most curious person ever lives on Earth.
- The making of the atomic bomb. If you love history and science like me, you should read this book cover by cover.

- Any recommendations? I seriously need some good books of this genre. Over the years I've read a lot, but most don't leave any impressions (aside from Devotion of Suspect X, and a few short stories of Stephen King). Recently I read Hangsaman which is a strange book, but it's more a psychologic thriller than a mystery.

That's it for now ^^.


$i$ is called an imaginary number. It's unreal, because there is no real number whose square is $-1$. It doesn't match reality. In reality, a square of any non-zero number is always positive. Or is it?

Have you ever wondered why the result of multiplying a negative number with a negative number must be positive?

Multiplying two negative numbers together doesn't look natural to me. In real life we multiply when we want to count things, but I can't think of any situations where we want to multiply a negative number of things a negative number of times. Thus, in order to make sense of negative number multiplications, we have to forget reality and turn into the realm of abstraction.

We want to know why $(-x) * (-y) > 0$, for all positive $x$ and $y$. This question eventually boils down to: how can we prove that $(-1) * (-1) = +1$, which bothered me for quite sometime. Tell me, why isn't it $-1$ or even $-2$?

Even the great Euler resorted to an thoroughly unconvincing argument to answer this question. He reasoned that $(-1) * (-1)$ must be either $-1$ or $+1$, but it can't be $-1$, because $-1 = (-1) * (+1)$.

It took a long time before mathematicians realized that this rule, which is called the rule of signs, can't be "proved". In fact it's a definition created by mathematicians to preserve the fundamental laws of arithmetic. Mathematicians want to ensure that adding negative numbers to natural numbers doesn't mess up with how humans have been doing calculations. The existing laws must keep working. Let's see why this preservation desire makes $(-1) * (-1)$ equal to $+1$.

Let's take a look at this series of manipulations:

0 = -1 * 0 (see below)
   = -1 * (1 - 1) (definition of -1, which is the additive inverse of 1)
   = -1 * 1 + (-1) * (-1) (distributive law of integers)
   = -1 + (-1) * (-1) (see below)

If we accept that $-1 * 0 = 0$, and $-1 * 1 = -1$ (more on these two laws in a moment), for the distributive law to stay correct $(-1) * (-1)$ must be the additive inverse of $-1$ which is $+1$; otherwise we would come up with a contradiction that is $0 = -2$.

But why $-1 * 0 = 0$? The only natural properties of $0$ are $0 + x = x + 0 = x$ and $x + (-x) = 0$ (which is the definition of negative number). This is how we count. If you have $3$ dollars, adding $0$ dollars you still have 3 dollars. If I owe you $3$ dollars, and I pay you $3$, I would end up with $0$ debt. $0$ looks trivial, but its discovery is actually a significant event in the history of mathematics. For a long time, most people including mathematicians didn't welcome $0$.

Now if we apply the distributive law again, we can see that

(-1) * 0 + (-1) * 0 = (-1) * (0 + 0)
                             = -1 * 0
                             = 0 + (-1) * 0

We can eliminate $(-1) * 0$ from both sides, and conclude that $(-1) * 0$ must be $0$. The same technique can be used to prove that $x * 0 = 0 * x = 0$ with all $x$. Isn't that cool? Have you ever thought that this is provable?

Now the last mystery is why $-1 * 1 = -1$? One can say that it must be $-1$ because $-1 * -1 = +1$, but that's tautology. This is actually something we cannot prove, but we have to accept it as another law to keep everything working correctly. We accept as an axiom that in the ring of integers, $x * 1 = 1 * x = x$ for all $x$.

Thus, if we want to maintain the rules of arithmetic we must assign $-1 * -1$ to be $+1$. Otherwise everything would collapse, and any calculations mixing negative and positive numbers wouldn't make any sense. In other words if we accept the rules of arithmetic as axioms, we can deduce that $-1 * -1$ must be $+1$, but if we don't it could be an arbitrary value.


How does betterexplained.com explain this? Much better than I do, of course. It doesn't give a proof or anything, but it gives an intuitive explanation why the result must be +1.

It shows that there are two ways of making sense of multiplication: repeated addition or scaling.

The former is what we were taught in school, but it doesn't work well when we encounter negative numbers (let alone complex ones!). How do you repeatedly add a number to itself a negative number of time? No sense.

The later, on the other hand, is a great way to think about and visualize multiplication or any other arithmetic operations. For each multiplication, we always start at 1, and scale to the next position on the number line according to the multiplicand. Now, multiplying with a negative number is a scale-then-flip operation. For example to calculate 4 * -3, we start at 1, scale to position +4, scale to position +12, then flip back to -12.

If we start at 1, multiply by -1, we scale by 1 so we stay at the same place, then we flip to -1. At -1, if we multiply by another -1, we scale by 1, stay at the same place which is -1, then flip back to 1. Thus -1 * -1 can be seen as equal to +1.


I hope you now understand why $(-1)^2= +1$. But what else have we learned? This little thought experiment tells us that we've taken so many rules for granted, but we actually have no ideas why they are true. We are like the monkeys in this little story that I was told a long time ago.

Pure math, if there's a way to distinguish it from applied math, is a game of mind. Mathematicians create some rules, and keep playing with them until they found something interesting; otherwise they go back and change the rules.

An interesting result doesn't necessarily have any useful real world applications, but somehow a lot of them do. This is why the success of math to effectively describe or found applications in the physical world is considered unreasonable. For example, complex number was invented to solve equations like $x^2 = -1$, but soon people discovered that it can be used to model many physical interactions. Or take elliptic curves. People started investigating them just because they wanted to solve some integral problems, which are entirely pure math and useless. A hundred years later it's discovered that the same objects can be used to factor integers and do crypto. In fact every time we connect to Gmail, we're using the math of elliptic curves.

In the early days of mathematics, a set of rules are considered useful if it allows mathematicians to solve equations. Note that mathematicians not only want to find useful rules, they also want the exact ones. They don't want 3 rules, if 2 already do the trick. Let's see which rules we need to solve $x + 3 = 6$:
x + 3 = 6 (given)
-3 + x + 3 = -3 + 6 (adding -3)
x + (-3) + 3 = -3 + 6 (commutative law)
x + (-3 + 3) = -3 + 6 (associative law)
x + 0 = -3 + 6 (definition of -3)
x = -3 + 6 (property of 0)
x = 3

Thus, if we want to generalize the set of integers and the addition operation (which is the definition of the additive group $\mathbb{Z}$), we must at least keep the associative law and the existence of an element $e$ such that $x + e = x$ for all $x$. It turns out that this is enough to define a group, which is a much more abstract and general concept than $\mathbb{Z}$. It turns out that there are a lot of groups (or rings or fields) out there in physics, in computer science, in engineering, etc. If you prove a result in group theory, you can use it in any groups in any other settings. Prove once, use everywhere!

This is the deep insight of abstract algebra that wasn't understood for thousands of years. This is the power of abstraction that once unleashed shall enlighten humanity for eternity.

Suddenly $i$ is no more weird or strange or whatever, isn't it? $i^2 = -1$ is just another rule, and as long as it doesn't violate existing rules, but even allows us to solve more problems, it is welcome to join the party of cool axioms. Actually, $i$ is not more imaginary than any other numbers. All numbers, such as 0, 1, 6, $\pi$, $e$, and $i$, exist in our minds only. There is no physical entity that is the number 3. Doesn't matter! As long as they exist in our minds, they're real.

After all, what is reality if not an invention of our minds?


$i$ is that weird number whose square is $-1$. Without Googling, can you calculate $i^i$? Yes, $i$ to the $i$. Does it even make sense?

No, it didn't for me, until I found http://betterexplained.com.

There are a lot of great articles on this site, but I especially love two series: http://betterexplained.com/articles/a-visual-intuitive-guide-to-imaginary-numbers/ and http://betterexplained.com/articles/an-intuitive-guide-to-exponential-functions-e/.

This is how math should be taught in high school. Would love to hear your opinions if you disagree.

If you go down this road as I just did eventually you would come up with the most beautiful equation in all of mathematics:

$e^{i * \pi} + 1 = 0$

I don't even know how such an equation is possible. $i$ looks man-made, $\pi$ and $e$ are natural, but together with $0$ and $1$ they are the most important constants, and somehow after an addition, a multiplication, and an exponentiation, all of which are basic arithmetic operations, they all fit together. They all line up as if someone creates them exactly for this and only this equation.

The equation is called Euler's identity. Some fun facts about Euler, extracted from the above video (which is great, you should watch it!)

- In 1988, a math magazine ran a poll to vote for the top 10 most beautiful results in all of mathematics. Euler's identity is #1 and Euler's formula (V + F = E + 2) #2.

- Euler's work totals over 75 volumes and 25,000 pages. The Swiss Academy published the first volume in 1911. They still are not done. The grandchildren of the first editors are getting old.

- Euler produced on average a paper per week in the year of 1775. He was essentially blind since 1771.

- When Euler died there was a backlog of his works that were not yet published. So after he died, he published 228 papers. That's more than most of us will ever publish alive!

Euler is impossible.

By the way $i^i \approx 0.2$. Does it blow your mind that raising an imaginary number to an imaginary exponentiation returns a real number? Am I imagining? No, it's real.

Friday, January 8, 2016

Bảo kê

Đọc bài "Ai bảo kê cho Trầm Bê" của nhà báo Huy Đức, tôi không thể không tự hỏi ai bảo kê cho Huy Đức.

Để có thể phê bình nặng nề, liên tục tấn công thủ tướng Nguyễn Tấn Dũng, đúng hay sai chưa xét, người bảo kê cho Huy Đức phải có quyền lực không kém. Đọc các bài viết khác của Huy Đức, tôi đoán đó là chủ tịch nước Trương Tấn Sang, nhưng không đủ thông tin để kết luận. Trương Tấn Sang (trước đây là Võ Văn Kiệt) bảo kê cho Huy Đức có lẽ vì họ cùng ở Sài Gòn.

Chia phe đánh nhau là tất yếu trong chính trị. Chính trị không có phe phái là độc tài toàn trị. Nội bộ đảng cộng sản đánh nhau loạn xạ đáng mừng hơn đáng lo. Cánh nhà báo chọn phe cũng không sao. Các tờ báo ở Mỹ cũng thường có xu hướng chính trị rõ rệt. New York Times cấp tiến, thường ủng hộ Dân Chủ. Fox News, ngược lại, bảo thủ, là diễn đàn của Cộng Hòa.

Dẫu vậy khi tờ New York Times phê bình George W. Bush, hay xỉa xói thượng nghị sĩ Cộng Hòa, họ không cần bảo kê của Obama. Hay khi Fox News chửi Obama xối xả, họ cũng không cần đảng Cộng Hòa bảo kê. Không chỉ nhà báo, khi một người dân thấp cổ bé họng lên tiếng phê bình chính phủ hay những kẻ có quyền lực, họ không cần bảo kê của bất kỳ ai.

Vì hiến pháp Mỹ đã cho dân chúng quyền được nói. Dân chúng và nhà báo, cả thảy, được hiến pháp bảo kê. Tổng thống Mỹ khi tuyên thệ nhậm chức, không thề trung thành với Đảng và Nhà Nước, mà thề trung thành và bảo vệ hiến pháp, tức là thề sẽ bảo kê quyền được nói của dân chúng, kể cả khi họ phê phán chính ngài tổng thống. Những người sáng lập nước Mỹ nhận ra rằng muốn đất nước phát triển bền vững, trước nhất phải bảo vệ tự do của dân chúng. Họ đã đúng.

Tôi đọc bài của Huy Đức, thấy nhiều sai phạm của Nguyễn Tấn Dũng và của chính phủ. Dẫu đúng hay sai, tôi không có đủ thông tin để đánh giá, Huy Đức vẫn có những ý kiến, thông tin trái chiều hiếm hoi, quý giá. Muốn phát triển, chúng ta phải xây dựng được một thể chế tối đa hóa cơ hội nhận ra rằng chúng ta đang sai, một văn hóa cảm ơn, tưởng thưởng và bảo vệ người phát hiện ra rằng chúng ta đã sai. Muốn phát triển chúng ta phải lắng nghe, chứ không bắt bỏ tù hay lên án, những người có ý kiến trái chiều. Muốn phát triển, phải có kiểm soát và phản biện. Việt Nam cần những người như Huy Đức, bất kể ông ấy chọn phe phái ra sao. Hiến pháp không bảo vệ được Huy Đức, có thể ông ấy phải dựa vào phe phái. Nhưng nếu ngày mai, phe của Huy Đức thất thế, liệu ổng có còn được lên tiếng?

Đằng sau hiến pháp là nhân dân. Muốn Việt Nam phát triển, do đó, chúng ta, dân chúng, phải bảo kê cho Huy Đức, bất kể có đồng tình với ổng hay không. Nếu ngày mai Huy Đức bị bắt, vì "phản động", vì "nói xấu lãnh đạo", vì "chống phá nhà nước", vì "hai cái bao cao su đã qua sử dụng" chúng ta phải xuống đường biểu tình đòi tự do cho ổng, chẳng hạn vậy.

Trương Tấn Sang hay Nguyễn Tấn Dũng không phải là trùm bảo kê ở đất nước này. Nhân dân mới là trùm cuối, vấn đề là chúng ta có muốn và có dám hay không. Nếu chúng ta muốn, một lúc nào đó, chính những Trương Tấn Sang hay những Nguyễn Tấn Dũng sẽ phải sống dưới sự bảo kê của chúng ta, chứ không phải ngược đời "tớ bảo kê cho chủ" như thời đại rực rỡ này.

Thursday, January 7, 2016

Vài kinh nghiệm thương lượng giá cả

Bài trước tôi có nói vài nơi hỏi tôi giá làm tư vấn xong rồi biến mất, không bao giờ trả lời. Thật ra cũng có vài nơi kỳ kèo, trả giá nhưng rốt cuộc không đi đến đâu. Từ hồi đi làm đến giờ, tôi gặp nhiều tình huống trả giá kiểu này rồi, hôm nay ghi lại đây để mai mốt ai có gặp tham khảo.

Có nơi nói mắc quá, hỏi có bớt không. Tôi nói không, thà không làm, để dành thời gian đi chơi, chứ đi làm phải nhiêu đó mới làm. Họ cần tôi hơn tôi cần họ. Nếu làm rất tốt việc gì đó, đừng bao giờ làm miễn phí hoặc lấy giá quá rẻ. Nghe đồn Louis Vutton đốt trụi rũi hàng ế, chứ chưa bao giờ chịu giảm giá.

Có nơi than, 1 giờ anh đòi đến mấy trăm đô, bằng lương người ta làm cả tháng. Tôi nói để rút được thành 1 giờ, tôi đã phải học, phải làm biết bao nhiêu năm. Ai cũng có thể kéo dài việc làm xong trong 1 giờ thành ra 1 tháng, nhưng mấy ai có thể rút gọn 1 tháng làm việc thành 1 giờ. Nếu muốn, tôi hoàn toàn có thể làm 1 giờ xong đợi 1 tháng sau mới báo kết quả, nhưng như vậy chẳng có lợi cho ai cả.

Có nơi không tin, lỡ anh làm có 1 giờ mà tính tiền 10 giờ? Tôi nói uy tín của tôi đáng giá hơn 10 giờ. Nếu tôi ẩu, chỉ làm 1 giờ, sau này người ta phát hiện ra những vấn đề đơn giản trong phần tôi đã coi, uy tín chắc chỉ còn nước thảy cho chó gặm.

Có nơi nghi ngờ, lỡ không tìm thấy gì sao? Tôi nói lúc đi khám xem có bị sida không, phải dương tính mới trả tiền bác sĩ hay sao?

Làm an toàn sản phẩm (product security) là làm gì?

Đây là công việc hàng ngày của tôi. Ở TetCon có người hỏi và gần đây cũng có vài nơi hỏi, nên tôi viết lại đây để tiện tham chiếu về sau.

Ở Google tôi là một trong 4 nhóm trưởng của một nhóm hơn 20 kỹ sư chịu trách nhiệm về an toàn sản phẩm. Hầu hết sản phẩm của hãng đều do người trong nhóm hoặc từng là người trong nhóm chịu trách nhiệm. Sản phẩm lớn có người chuyên trách, sản phẩm nhỏ hơn chúng tôi thay phiên, ai thích gì làm nấy.

Chúng tôi đề nghị (nhưng không bắt buộc) nhóm phát triển sản phẩm thông báo kế hoạch của họ càng sớm càng tốt. Có nhóm nói chuyện với bọn tôi ngay khi chưa viết bất kỳ một dòng mã nào, nhưng cũng có nhóm đợi đến ngày phát hành. Khi tôi làm ở Matasano, khách hàng thường liên hệ trước khi phát hành sản phẩm vài tháng.

Nên bắt đầu thẩm định ATTT càng sớm càng tốt. Sửa lỗi rẻ hơn nhiều khi sản phẩm còn nằm trên bàn thiết kế so với khi sản phẩm đã nên hình nên dạng. Khi xây một căn nhà, sửa mống sẽ tốn kém và có khi không thực hiện được nếu nhà đã xây đến tầng thứ 3.

Khi bắt đầu dự án, tôi đọc tài liệu về sản phẩm và, nếu cần, cài đặt một phiên bản thử nghiệm. Ở Google tôi có thể nói chuyện trực tiếp với đội phát triển sản phẩm. Ở Matasano khách hàng thường cử ra một đại diện để trả lời thắc mắc.

Tôi chia các dự án thẩm định ATTT thành các nhóm như sau, căn cứ theo mục tiêu:

1/ Tìm tất cả các lỗ hổng có thể có (vulnerability assessment).

2/ Chọn một mục tiêu, tìm mọi cách xâm nhập vào hệ thống để đạt được mục tiêu đó (penetration testing): ví dụ như khách hàng có website Internet Banking, lo ngại bị trộm tiền; tôi sẽ tìm lỗ hổng để trộm tiền từ tài khoản của người khác hoặc tự tăng tiền trong tài khoản của mình lên.

Khách hàng có thể cung cấp thiết kế hoặc mã nguồn -- làm vậy sẽ giúp đánh giá toàn diện hơn -- nhưng nếu lo ngại họ chỉ cung cấp file thực thi của chương trình, địa chỉ URL, hoặc một dãy địa chỉ IP.

Đối với mỗi loại dự án chúng ta có thể chọn những điểm bắt đầu như sau:

* Xâm nhập từ Internet: tôi sẽ tiến hành công việc như một người dùng bình thường.

* Xâm nhập từ hệ thống nội bộ: tôi sẽ tiến hành công việc như nhân viên của công ty với một số quyền hạn nhất định. Ví dụ như đối với hệ thống payment, nhân viên nội bộ (ví dụ như lập trình viên, sysadmin, v.v.) không nên có quyền tác động vào thông tin giao dịch hoặc tài chính, nên tôi sẽ bắt đầu với vai trò lập trình viên của sản phẩm đó.

Khi báo cáo kết quả, tôi cung cấp một tài liệu mô tả chi tiết vấn đề, lỗ hổng đã phát hiện, mã khai thác nếu có thể và kiến nghị sửa chữa. Các dự án ở Google tôi làm việc với nhóm phát triển sản phẩm để đảm bảo các vấn đề đã phát hiện được khắc phục và không lập lại trong các phiên bản kế tiếp.

Phần lớn thời gian tôi đọc tài liệu thiết kế, vọc sản phẩm, kiểm tra mã nguồn, nói chung là "tra tấn" phần mềm để chúng phun ra lỗi. Kinh nghiệm cho tôi biết chỗ nào quan trọng cần phải xem kỹ, chỗ nào có thể có những dạng lỗi gì, v.v. Đối với sản phẩm phức tạp, tôi mường tượng trong đầu "life of a request" -- một yêu cầu từ phía người dùng được hệ thống xử lý như thế nào -- từ đó xác định những nơi có nguy cơ.

Thông thường tôi mất 20-40 giờ để làm xong một sản phẩm phức tạp, đa số sản phẩm chỉ cần 2-3 giờ. Hồi mới vô nghề tôi mất nhiều thời gian hơn, bây giờ tôi biết chỗ nào nên coi, chỗ nào có thể bỏ qua. Matasano tính tiền khách hàng theo giờ, tôi không biết chính xác nhưng tôi đoán mỗi giờ cũng phải \$200-\$400. Tôi biết có nơi tính \$500/giờ. Có vài công ty ở Việt Nam hỏi tôi có làm tư vấn không, tôi báo giá, họ biến mất luôn, không bao giờ trả lời o_O.


Tôi dành 50% thời gian để phá hoại phần mềm như vừa kể, phần thời gian còn lại tôi xây dựng phần mềm mới. Phá phần mềm giúp tôi có thêm kinh nghiệm làm phần mềm an toàn. Tôi lãnh đạo một nhóm nhỏ chuyên đánh giá, thiết kế và lập trình các giải pháp mật mã cho các nhóm làm sản phẩm. Ví dụ như YouTube cần một cách mã hóa video nhanh, bọn tôi thiết kế và lập trình giao thức cho nhóm YouTube. Hay như công ty cần một giải thuật băm mật khẩu (password hashing algorithm), bọn tôi thiết kế và lập trình một thuật toán mới, đáp ứng yêu cầu hiệu năng mà nhóm làm sản phẩm đặt ra. Có nhiều ví dụ khác nữa, nhưng đại loại là ở đâu cần mật mã ở đó có bọn tôi.

TetCon 2016 Slides Available for Download

We're still waiting for two speakers, but all other slides including links to paper or source code have been uploaded to https://tetcon.org/saigon-2016/talks/index.html. Enjoy! Note that we won't have slides for Pham "suto" Toan's talk because he doesn't want to release them.

Sheraton is a really cool hotel. The venue is lovely, the tea breaks are awesome, and the staff is friendly and helpful. Hotel management reported that ~280 persons attending the conference. Most are male, only a handful are female. Next time I'll give free tickets to female attendants. We as a community seriously need more female hackers.

Thanks to Microsoft and two anonymous sponsors and everybody who bought tickets, financial wise we have a net positive of \$1350 (+~\$700 from Bruce's class.) This is a nice surprise, as I expected losing money. In some sense I lost a couple of grands, as I didn't use the sponsorship money to pay for my air tickets. I planned to expense them with Google, but I don't feel like I want to do that anymore. I wanted to visit my family anyhow, I thought it's fair to foot the bill myself.

I'm reaching out to charity causes or civil organizations, and will report here as soon as I make any donations. Feel free to leave a comment or something if you have a suggestion where we should donate.

So... what's next?

I promised some of my friends that this year I'm going to start planning the conference earlier. Two months from now, I'm going to announce the next TetCon, which might not be in Saigon. We're actually planning as I'm writing this blog post. The next TetCon will be much bigger with more activities for attendants including training, CTF, lock picking, etc. It'll be the first one spanning two days. Stay tuned!

Friday, January 1, 2016

Thông báo cuối về TetCon 2016

Hội thảo sẽ diễn ra vào ngày thứ hai 4/1/2016, tại Sheraton Saigon, bắt đầu đón khách lúc 8h sáng và kết thúc vào lúc 18:30 cùng ngày. Thông tin chi tiết chương trình có thể xem ở https://tetcon.org/saigon-2016/schedule/index.html.

Khi đến dự vui lòng mang theo vé (vé điện tử hoặc vé in). Chúng tôi sẽ kiểm tra vé tại cửa vào buổi sáng và buổi chiều.

Chúng tôi không bán vé tại cửa. Cách duy nhất để mua vé là mua trên mạng. Địa chỉ là: https://ticketbox.vn/event/55112/ticket-booking/26953#/step-select-tickets. Nếu bạn đã đặt mua vé nhưng chưa thanh toán vui lòng đặt lại vé và chọn thanh toán điện tử để nhận vé qua email.

Khách sạn kiểm soát số lượng khách. Những ai không mua vé nếu bị phát hiện sẽ phải thanh toán 800.000VND/người cho khách sạn và mua vé 500.000VND/người, nếu không sẽ bị yêu cầu ra về.

Xin cảm ơn và hẹn gặp lại ở TetCon!