關於mobile做authentication security

[itdog][mobile, security, oauth][其實IoT可能都關事(唔熟)] 關於mobile做authentication security問題。 之前可能講過, but我都再講多次, 重要野唔怕一講再講。 Mobile App裝o係Mobile,你就要預左好似frontend javascript咁赤裸俾人睇晒。 因為hacker可以crack mobile =>拎到APK file =>decompile做source code 我舉個例子,mobile app用OAuth Authorization Code Grant Flow做authentication。 好多人都係咁做,好多industrial專業engineer都可能係咁做。(就算vendor如pingIdentity, 佢地個網都係咁講架ja) 但以大眾做法,我(or hacker)好似上面咁講,decompile source code,拎到你hard code既client […]

《異類僑居者》

幾年前睇過少少一本基督教書籍,叫《異類僑居者》(睇左1/3都冇)。 我個人粗淺理解其大意是說: 基督教信仰群體面對整個社會,不應為了輸出其信仰價值,而以信仰群體的力量去直接參與整個社會的各個社會議題。 原因是,當信仰群體直接把信仰價值訴諸各社會議題,其實同時亦無可避免沾上各種遊戲潛規則; 這不但影響信仰價值本身的正當性,同時也易令信仰迷失。 書中提倡的是: 現實社會中的人的當下是虛無的,而信仰群體的當下是在基督救贖的歷程中,兩者的timeline是不同的,而後者只是現實世界timeline中的僑居過客。 信仰群體應視自身為整個現實社會中的少數/異類僑居者。 面對外在社會,信仰群體不需要去直接主導整個社會的各個社會議題;而是求諸內﹑求諸踐行。 信仰群體在群體內透過信仰的力量互相支持,建立community,從而在community內踐行信仰價值。 其根本思想雖然表面上是很平和﹑是求諸內,但其概念上以信仰為群體依歸,超越種族﹑國家﹑制度,其實是一種很具顛覆性的主張。 但問心,其實有D想法都係太過離地/理想主義。 但又咁講,信仰依D野有時就係咁樣。要apply for all cases可能唔太realistic,但o係個別某D情況既context去apply,又唔係冇可能。 —————————————————————— 當想到香港社會時,我諗起過這本書的想法。 但人人不盡相同的信念,未必能像信仰一樣有如此大內聚力,community的想法很難實現。 有時當想到一些商業公司文化/policy問題時,我都可能會諗起這本書的想法。 但當同樣的問題套用到商業公司模式中,往往就因為缺乏了信仰/信念/理念在其中內聚,所以難以Form到一個community。 最後也就變成了「上有政策,下有對策」或各種山頭主義。

一些寫library的practices分享

我寫library/module通常有一d practices。 1) 我多數是將data store的底層abstract。 並且default使用memory data store。(e.g:用個hashmap儲住就算) 我咁做唔係因為懶/求奇。 而係因為我自己作為developer理念係minimum-viable就是最簡單,就是最好。 面向developer,其實最好就係用最快最簡單最少step方法就可以俾developer taste得到。 default使用memory data store,就至少唔駛setup database。 但我通常亦都會留位俾developer去switch用其他data store implementation。 我通常都會另外做一個堅database data store implementation 俾佢next step即刻可以switch到。 最近寫的code,我有時會再另外再做一個remote REST resource data store […]

Visual Studio Code Rest client extensions

Visual Studio Code Rest client extensions , 是我用開 Visual Studio Code 寫 code 時的一個好常用/adapt的feature。 ” Rest client ” extensions其實就好似 Postman (一個chrome extension,用黎mock up去send HTTP request做testing)。 但佢就再簡化d,唔需要UI,而係用text就夠。 即係例如我隨便一個file入面有呢幾行字: POST http://localhost:8080/items Content-type: […]