Tag Archives: node

在 CloudFront 的 edge 上跑 Lambda

所以 Amazon CloudFront 讓使用者在 edge 上跑程式了 (雖然目前是 limited preview):「Lambda@Edge – Preview」。 分成 Viewer Request、Origin Request、Origin Response 以及 Viewer Response 四個階段可以插入修改。另外有些限制: Because your JavaScript code will be part of the request/response path, it must be lean, mean, and self-contained. It cannot … Continue reading

Posted in AWS, CDN, Cloud, Computer, Murmuring, Network, Programming, WWW | Tagged , , , , , , , , , , | Leave a comment

利用 CloudFlare 的 reCAPTCHA 反向找出真正的 Tor 使用者

在 Cryptome 這邊看到可能可以被拿來用的技巧:「Cloudflare reCAPTCHA De-anonymizes Tor Users」。 當 Tor 使用者連到 CloudFlare 上時,常常會出現 reCAPTCHA 的提示,要求你驗證,而這個驗證過程的 traffic pattern 太龐大而且很明顯,當情治單位同時可以監控 CloudFlare 的上游 (像是「Airtel is sniffing and censoring CloudFlare’s traffic in India and CloudFlare doesn’t even know it.」這篇提到的問題) 或是監控 Tor 的 exit node 的上游,再加上同時監測使用者可能的 … Continue reading

Posted in CDN, Cloud, Computer, Murmuring, Network, Security, WWW | Tagged , , , , , , , , , , , , | Leave a comment

在 Python 的 pip、Nodejs 的 npm、Ruby 的 RubyGems 上面放木馬研究?

在 Python 領域裡常用 pip 安裝軟體: $ pip install reqeusts 或是: $ sudo pip install reqeusts 其他的平台也大致類似於這樣的動作。而在「Typosquatting programming language package managers」這篇文章裡,作者用 typo 之類的方式列出可能的名稱,像是這樣的名稱: $ sudo pip install reqeusts 然後在這三個平台上發動攻擊,上傳了數百個套件並且觀察: All in all, I created over 200 such packages and equipped them … Continue reading

Posted in Computer, Murmuring, Network, Programming, Security, Software | Tagged , , , , , , , , , , , , , | Leave a comment

AWS Lambda 支援 Node.js 4.3

AWS 宣佈 Lambda 支援 Node.js 4.3:「AWS Lambda Supports Node.js 4.3」: You can now develop your AWS Lambda functions using Node.js 4.3.2 in addition to Node.js 0.10.4. 另外同步在「Node.js 4.3.2 Runtime Now Available on Lambda」這邊也有文章介紹。 這樣總算可以拿出新的套件以及語法了...

Posted in AWS, Cloud, Computer, Murmuring, Network, Programming | Tagged , , , , , , , , , , , | Leave a comment

減少「註解長度」增加 Node.js 效率...

在「#NodeJS : A quick optimization advice」這邊看到這樣的效能改善方法... 兩段程式碼,只差在註解: 效能差了 50%: 只是因為註解的長度有差,只要用 --max-inlined-source-size 調整就可以避開了: 超苦超無奈: So when you have a function or callback that’ll be called repeatedly, try to make it under 600 characters (or your tweaked value), you’ll have a quick … Continue reading

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , , , , | Leave a comment

Node.js 的 LTS 計畫

Node.js 在 4.0 開始啟動 LTS (Long Term Support) 計畫:「Node v4.0.0 (Stable)」。 可以參考「Node.js Long-term Support Working Group」這邊的說明。最主要的重點是生命週期,首先是每六個月就會放一次新版,跟 Ubuntu 相同,也都是四月與十月: In parallel, we will be branching a new Stable line of releases every 6 months, one in October and one in April … Continue reading

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , , , , , | Leave a comment

Mozilla 加入 Tor Relay 的行列

Mozilla 宣佈了他們提供硬體與網路,提昇 Tor 的隱私性:「Deploying tor relays」。可以在「Results for mozilla」這邊看到這一波有十二台上線了。 架構上完全獨立於目前的 production 環境 (所有的硬體與網路設備),這是 Mozilla 提供的網路架構說明: 另外關於安全以及隱私性的部份,他們也提供了不少意見與說明。 像是單一組織不應該提供太多 bandwidth,這可以當做是避嫌: A single organization shouldn’t be running more than 10Gbps of traffic for a middle relay (and 5Gbps for an exit node). 一個 Tor … Continue reading

Posted in Computer, Murmuring, Network, P2P, Security, Software | Tagged , , , , | Leave a comment

用 npm 取代 Build Tools (像是 gulp 或 grunt)

這篇「How to Use npm as a Build Tool」教你如何用 package.json 的 scripts 取代 gulp 或是 grunt 這類 Build Tools。 文章裡面可以看到各種奇技淫巧都出現了,dependency 的部份用 recursive 解決 (npm 內部自己再呼叫 npm 執行),stream 的部份用 pipe 解決 (這個到是很自然),然後用外部程式掛進來處理 watch 與 livereload,甚至還出現可以自己寫 js 檔案呼叫的方法... XDDD 無所不用其極!反正我就是不要用 gulp 與 grunt... … Continue reading

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , , , , , | Leave a comment

用 browserify 將 npm 的函式庫包到瀏覽器上用...

browserify 可以將用到的程式碼都包成一包,拿到瀏覽器上使用。 舉個例子離說,先寫了一個 a.js: (function(){ var el = document.getElementById('output'); var j2x = require('json2xml'); el.innerText = j2x({a: 1}); })(); 其中可以看到直接拿 require() 把 json2xml 抓進來。但在瀏覽器裡要自己處理有哪些 dependency 很麻煩,就用 browserify 拉出來: browserify a.js -o a.bundle.src.js 生出來的 a.bundle.src.js 就可以拿到瀏覽器裡使用了!如果需要的話,還可以用 JS Compressor 再壓起來再拿到瀏覽器裡使用。 最後補充一下,browserify 的安裝方式很簡單: npm … Continue reading

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , , | Leave a comment

用 BrowserSync 測試多個平台...

BrowserSync 是用 node.js 寫的工具,可以同時測試一堆 device,修改後不用按 reload,印象中已經有套件可以做類似的事情? 一般用 npm 裝就可以了: npm install browser-sync 最簡單的方法是直接執行 browser-sync,執行後會出現像這樣的訊息: <script src='//192.168.1.1:3000/socket.io/socket.io.js'></script> <script>var ___socket___ = io.connect('http://192.168.1.1:3000');</script> <script src='//192.168.1.1:3001/client/browser-sync-client.0.6.0.js'></script> 把這段程式碼貼到 body 的最後面就可以了,當 BrowerSync 偵測到檔案有更新時會透過 server push 機制重刷頁面。 另外,也可以產生 bs-config.js 修改設定: browser-sync --init 更完整的說明可以從「Options」這頁找到。

Posted in Browser, Computer, CSS, Murmuring, Network, Programming, Software, WWW | Tagged , , , , , , , | 1 Comment