Tag Archives: function

用 AspectMock 來替換 PHP function...

前幾天下班前同事說小鐵 jaceju 介紹了 Codeception/AspectMock 這個把 PHP function 抽換掉的套件,不需要靠 PECL 另外裝,不過缺點是只能抽換 namespace 裡面的 function... 不過這樣對於補 code coverage 也很夠了 :o 測了一下,寫了個小程式: <?php namespace myscript; require __DIR__ . '/vendor/autoload.php'; \AspectMock\Kernel::getInstance()->init(); use AspectMock\Test; echo time(), "\n"; Test::func(__NAMESPACE__, 'time', 'now'); echo time(), "\n"; 然後跑出來變成: 1466612797 … Continue reading

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

Google 發表了三個 Hash 演算法的實作

Google 發表了三個 Hash 演算法的實作:「New algorithms may lower the cost of secure computing」。 第一個是 SipHash 的加速實作,透過 AVX-2 指令集加速,看維基百科的資料,2011 後的 Intel/AMD CPU 似乎都有提供這組指令集: Our first hash function produces the same output as SipHash, but 1.5 times as quickly thanks to AVX-2 instructions. … Continue reading

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

對 SHA-1 的攻擊進展

在 Bruce Schneier 這邊看到對 SHA-1 的攻擊又有新的進展了:「SHA-1 Freestart Collision」。 這次的論文不是真的找出 collision,而是對 internal compression function 攻擊,不過即使如此,這是首次攻擊完整的 80 rounds: We present in this article a freestart collision example for SHA-1, i.e., a collision for its internal compression function. This is the first practical … Continue reading

Posted in Computer, Hardware, Murmuring, Programming, Security | Tagged , , , , , , , , | 2 Comments

AWS Lambda 的本地端測試工具

Twitter 上看到的工具:「Run AWS Lambda Functions on your local computers, for testing purposes」。可以在本地端測試 AWS Lambda 的程式碼: Node.js plugin to run AWS Lambda Functions on your local environment https://t.co/Ki9s0GJlAP #lambdafunction #aws cc: @awscloud @mcholste — Daniel Aranda (@javierdaniel) August 12, 2015

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

Amazon SWF 可以透過 AWS Lambda 做事了...

Amazon Simple Workflow 先前會需要開一台機器起來做事,現在則可以透過 AWS Lambda 來處理了:「Trigger AWS Lambda Functions Using Amazon Simple Workflow」。 這樣有兩個好處,一個是 AWS Lambda 啟動速度快太多,最慢應該是在數秒內,相較於透過 Amazon EC2 的啟動快太多。 另外一個當然是成本考量,開一台機器的成本還是要算成一個小時,而 AWS Lambda 是以 100ms 計費。如果做的事情很少,用 AWS Lambda 的成本低太多。 對於輕量級的處理來說算是個很棒的改善... 當然本來就是要轉檔之類吃大量 CPU 的,還是要開機器比較好。

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

AWS 推出 Amazon API Gateway

AWS 推出了「Amazon API Gateway – Build and Run Scalable Application Backends」,使得 Scalable API 又前進了一步。 API Gateway 可以直接將 HTTP Endpoint 接上 AWS Lambda 提供服務,並且也會自動接上 CloudFront,不過 CloudFront 不可選等級,目前看起來是最低的 Class 100,所以老問題還是沒解,如果不是用 168.95.1.1 或 168.95.192.1,我們家的 IP 會被解去 ARN (Stockholm Arlanda Airport) XD 4.|-- snuh-3201.hinet.net … Continue reading

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

CloudFlare 加速 zlib library

CloudFlare 大幅改善 zlib,使得速度相較原來的版本快了許多:「Fighting Cancer: The Unexpected Benefit Of Open Sourcing Our Code」。 改變的部份主要是 CPU 指令集的特性,以及 longest-match function 的改善。可以看出不同的測試樣本 (corpus) 在壓縮率沒有變差的情況下,大幅改善了速度。 Calgary corpus: Canterbury corpus: Large corpus: Silesia corpus: 速度快非常多,跟 Google 以壓縮率為導向而放出來的 zopfli 剛好是兩個極端:「Google 發表與 zlib/deflate 相容的壓縮程式,再小 5%...」。

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

錯誤訊息「undefined is not a function」總算要改善了...

從 Hacker News Daily 上看到,Addy Osmani 在 Google Plus 上提到的: 總算要改成比較有意義的文字了...

Posted in Browser, Computer, GoogleChrome, Murmuring, Network, Programming, Software, WWW | Tagged , , , , , | Leave a comment

用統計方法反推 JavaScript 壓縮程式的變數名稱

JavaScript 在正式提供服務時一般都會使用「YUI Compressor」、「UglifyJS」或是「Closure Compiler」壓縮後再拿到正式環境上使用,最主要的目的是為了降低網路傳輸量。 這些工具其中一個特點是,local function 與 local variable 會被較短的名字取代掉,這可以讓想要反組譯的人比較麻煩。 不過今天看到的這個工具可以解決「困擾」:「JSNice」。(在 Slashdot 上的「Machine Learning Used For JavaScript Code De-obfuscation」這篇看到的) 用統計方法去「猜測」這些 local function 與 local variable 應該叫什麼名字,讓人比較好理解。官方對準確度的說法是超過 60%: In our experiments, we found JSNice to be effective for deobfuscating minified code. … Continue reading

Posted in Computer, Murmuring, Programming, Software | Tagged , , , , , , , , , , , | 2 Comments

SHA-3 的歷史由來...

在 Bruce Schneier 的 blog 上看到 SHA-3 的由來:「SHA-3 Status」,而投影片在「Keccak and the SHA-3 Standardization」這裡,裡面有不少資料可以用... 像是 crypto hash function 速度的比較: 後半段看到蠻多有趣的東西,等有空回頭來看...

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