Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Tue, 26 Apr 2011 16:50:03 -0300
From: Yuri Gonzaga <>
Subject: Bcrypt functionalities implementation in hardware

Hi, everyone!

I want to discuss more about which part of bcrypt should really be
implemented in hardware.

Alexander talked about implementing only the inner loop of bcrypt or the
2^cost loop.


bcrypt(cost, salt, key)
>    state <- EksBlowfishSetup(cost, salt, key)
>    ctext <- "OrpheanBeholderScryDoubt"
> *   repeat(64)
> **      ctext <- EncryptECB(state, ctext)
> *   return Concatenate(cost, salt, ctext)

Is this (in bold) the inner loop?


EksBlowfishSetup(cost, salt, key)
>    state <- InitState()
>    state <- ExpandKey(state, salt, key)
>  *  repeat(2^cost)
> **      state <- ExpandKey(state, 0, salt)
> **      state <- ExpandKey(state, 0, key)
> *   return state

Is this the other one?

I am asking these questions to clarify my understading.

So, Should the other pieces of code implemented in software?

Best Regards,

 Yuri Gonzaga Gonçalves da Costa
 Master's Candidate in Informatics
 Digital System Laboratory
 Federal University of Paraíba - Brazil

Content of type "text/html" skipped

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.