
Hi, My proposal is to have a crypto library that provides high-level facilities. The library has different encapsulation layers. Within the low-level (internal) there are algorithms that share the same concept i.e. class block_cipher_type: + setkey(const void* key, size_type key_size) -> void; + encrypt(void* output, const void* input) -> const void; + decrypt(void* output, const void* input) -> const void; class stream_cipher_type: + create() -> void; + update(const void* input, size_type output) -> void; + update_final_block(const void* input, size_type output) -> void; and etc. Also entropy sources that use kernel specific entropies with addition of asynchronous generators. Finally a std:: iostream interface for cryptographically transformed streams. That use a transformer for the cryptographical transformation. Any interest??? -- Kasra

Sent from my Verizon Wireless BlackBerry -----Original Message----- From: Kasra <kasra_n500@yahoo.com> Date: Thu, 19 Mar 2009 08:29:02 To: <boost@lists.boost.org> Subject: [boost] [gsoc][student] Proposal Hi, My proposal is to have a crypto library that provides high-level facilities. The library has different encapsulation layers. Within the low-level (internal) there are algorithms that share the same concept i.e. class block_cipher_type: + setkey(const void* key, size_type key_size) -> void; + encrypt(void* output, const void* input) -> const void; + decrypt(void* output, const void* input) -> const void; class stream_cipher_type: + create() -> void; + update(const void* input, size_type output) -> void; + update_final_block(const void* input, size_type output) -> void; and etc. Also entropy sources that use kernel specific entropies with addition of asynchronous generators. Finally a std:: iostream interface for cryptographically transformed streams. That use a transformer for the cryptographical transformation. Any interest??? -- Kasra _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Kasra wrote:
My proposal is to have a crypto library that provides high-level facilities. The library has different encapsulation layers. Within the low-level (internal) there are algorithms that share the same concept i.e.
class block_cipher_type: + setkey(const void* key, size_type key_size) -> void; + encrypt(void* output, const void* input) -> const void; + decrypt(void* output, const void* input) -> const void;
Why the C-like interface? Why not work with iterator, or better, ranges?

At 5:49 PM +0100 3/19/09, Mathias Gaunard wrote:
Kasra wrote:
My proposal is to have a crypto library that provides high-level facilities. The library has different encapsulation layers. Within the low-level (internal) there are algorithms that share the same concept i.e.
class block_cipher_type: + setkey(const void* key, size_type key_size) -> void; + encrypt(void* output, const void* input) -> const void; + decrypt(void* output, const void* input) -> const void;
Why the C-like interface? Why not work with iterator, or better, ranges?
I don't think that this should be an either-or decision. -- -- Marshall Marshall Clow Idio Software <mailto:marshall@idio.com> It is by caffeine alone I set my mind in motion. It is by the beans of Java that thoughts acquire speed, the hands acquire shaking, the shaking becomes a warning. It is by caffeine alone I set my mind in motion.
participants (4)
-
Kasra
-
Marshall Clow
-
Mathias Gaunard
-
raindog@macrohmasheen.com