2012-06-12 149 views
4

我需要在具有200 MHz CPU速度的設備上找到SHA-256散列函數延遲。我怎麼能這樣做,有沒有人有更快或更慢的設備的答案?如何計算計算SHA-256散列所需的時間?

+0

知道MHz以知道處理器的速度有多快。你真的需要在有問題的處理器上自己運行測試。 –

+0

您可能需要閱讀http://s.tk/crypto – Cheekysoft

回答

6

速度在很大程度上取決於實施和CPU的細節。預計速度的一個非常粗略的估計是推算cycles per byte號碼到您的特定設備。

numbersvary,但讓我們保守,並假設您的SHA-256實現需要約25個週期/字節。採取倒數告訴你,你得到1/25每個cyle一個字節。一個200 MHz的處理器每秒有200 mio的週期,所以這給你一個8 mio字節/秒的理論吞吐量,約爲7,63 MB/s。

但是,這只是一個非常粗略的猜測,如果你想要確切的數字,那麼你可以做的最好的事情就是自己對整個事情進行基準測試。

+0

下面是一個有用的鏈接,用於加密函數的時間估計。 http://www.cryptopp.com/benchmarks.html –

+0

@可以這實際上是「數字不同」的第二個鏈接,雖然它看起來像一個單一的鏈接,我會改變這一點。 – emboss

+0

通過比較內置和未使用基於Crypto的加速功能的CPU以及您構建或正在使用的庫是否利用該功能,這一點甚至更加複雜! – trumpetlicks