www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Are there any crypto libraries floating around?

reply "Tyler Jameson Little" <beatgammit gmail.com> writes:
I found this thread mentioning some initial work on a crypto 
library:

http://forum.dlang.org/thread/j84us9$2m5k$1 digitalmars.com?page=1

It looks like "std.digest" is what came of that though, not 
"std.crypto".

I found this on the wish list:

     Encryption and hashing

     This is more an implementation problem than a design problem.
     No one is working on it. Some work has been done here but 
it's unfinished.
     One of the ideas is to wrap OpenSSL? at first and then 
implement the most
     useful crypto primitives in D to avoid library dependency and 
to make them
     usable with CTFE.

I'm not sure what "some work has been done here" means, but after 
looking around, I assume this refers to hashingDoes this just 
mean that hashing functions have been implemented, but not crypto?

What I'm looking for is:

* SSH library for an ssh client
* TLS library for HTTPS

Has anyone started working on this? Are there any openssh 
wrappers lying around somewhere? I may have a crack at it myself 
it noone has started on it.
Jul 27 2013
next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
On 7/27/2013 8:58 AM, Tyler Jameson Little wrote:
 Has anyone started working on this? Are there any openssh wrappers lying around
 somewhere? I may have a crack at it myself it noone has started on it.

https://github.com/D-Programming-Deimos/openssl
Jul 27 2013
prev sibling next sibling parent "Jacob Carlborg" <doob me.com> writes:
On Saturday, 27 July 2013 at 15:58:04 UTC, Tyler Jameson Little 
wrote:
 I found this thread mentioning some initial work on a crypto 
 library:

 http://forum.dlang.org/thread/j84us9$2m5k$1 digitalmars.com?page=1

 It looks like "std.digest" is what came of that though, not 
 "std.crypto".

 I found this on the wish list:

     Encryption and hashing

     This is more an implementation problem than a design 
 problem.
     No one is working on it. Some work has been done here but 
 it's unfinished.
     One of the ideas is to wrap OpenSSL? at first and then 
 implement the most
     useful crypto primitives in D to avoid library dependency 
 and to make them
     usable with CTFE.

 I'm not sure what "some work has been done here" means, but 
 after looking around, I assume this refers to hashingDoes this 
 just mean that hashing functions have been implemented, but not 
 crypto?

 What I'm looking for is:

 * SSH library for an ssh client
 * TLS library for HTTPS

 Has anyone started working on this? Are there any openssh 
 wrappers lying around somewhere? I may have a crack at it 
 myself it noone has started on it.

Tango has some crypto related modules: https://github.com/SiegeLord/Tango-D2 http://www.dsource.org/projects/tango/docs/stable/ -- /Jacob Carlborg
Jul 27 2013
prev sibling next sibling parent "Tyler Jameson Little" <beatgammit gmail.com> writes:
On Saturday, 27 July 2013 at 17:53:52 UTC, Walter Bright wrote:
 On 7/27/2013 8:58 AM, Tyler Jameson Little wrote:
 Has anyone started working on this? Are there any openssh 
 wrappers lying around
 somewhere? I may have a crack at it myself it noone has 
 started on it.

https://github.com/D-Programming-Deimos/openssl

Awesome. Thanks!
Jul 27 2013
prev sibling next sibling parent "Dejan Lekic" <dejan.lekic gmail.com> writes:
On Saturday, 27 July 2013 at 15:58:04 UTC, Tyler Jameson Little 
wrote:
 I found this thread mentioning some initial work on a crypto 
 library:

 http://forum.dlang.org/thread/j84us9$2m5k$1 digitalmars.com?page=1

 It looks like "std.digest" is what came of that though, not 
 "std.crypto".

 I found this on the wish list:

     Encryption and hashing

     This is more an implementation problem than a design 
 problem.
     No one is working on it. Some work has been done here but 
 it's unfinished.
     One of the ideas is to wrap OpenSSL? at first and then 
 implement the most
     useful crypto primitives in D to avoid library dependency 
 and to make them
     usable with CTFE.

 I'm not sure what "some work has been done here" means, but 
 after looking around, I assume this refers to hashingDoes this 
 just mean that hashing functions have been implemented, but not 
 crypto?

 What I'm looking for is:

 * SSH library for an ssh client
 * TLS library for HTTPS

 Has anyone started working on this? Are there any openssh 
 wrappers lying around somewhere? I may have a crack at it 
 myself it noone has started on it.

There is the "dcrypt" project - http://www.dsource.org/projects/dcrypt . If i remember well, someone moved the source to the GitHub not so long ago. I like the code there, and with good project management we could make it alive again, and possibly, with a good set of interfaces, include it in Phobos...
Jul 29 2013
prev sibling next sibling parent "John Colvin" <john.loughran.colvin gmail.com> writes:
On Monday, 29 July 2013 at 08:26:03 UTC, Dejan Lekic wrote:
 On Saturday, 27 July 2013 at 15:58:04 UTC, Tyler Jameson Little 
 wrote:
 I found this thread mentioning some initial work on a crypto 
 library:

 http://forum.dlang.org/thread/j84us9$2m5k$1 digitalmars.com?page=1

 It looks like "std.digest" is what came of that though, not 
 "std.crypto".

 I found this on the wish list:

    Encryption and hashing

    This is more an implementation problem than a design 
 problem.
    No one is working on it. Some work has been done here but 
 it's unfinished.
    One of the ideas is to wrap OpenSSL? at first and then 
 implement the most
    useful crypto primitives in D to avoid library dependency 
 and to make them
    usable with CTFE.

 I'm not sure what "some work has been done here" means, but 
 after looking around, I assume this refers to hashingDoes this 
 just mean that hashing functions have been implemented, but 
 not crypto?

 What I'm looking for is:

 * SSH library for an ssh client
 * TLS library for HTTPS

 Has anyone started working on this? Are there any openssh 
 wrappers lying around somewhere? I may have a crack at it 
 myself it noone has started on it.

There is the "dcrypt" project - http://www.dsource.org/projects/dcrypt . If i remember well, someone moved the source to the GitHub not so long ago. I like the code there, and with good project management we could make it alive again, and possibly, with a good set of interfaces, include it in Phobos...

https://github.com/Etherous/dcrypt
Jul 29 2013
prev sibling parent "Tyler Jameson Little" <beatgammit gmail.com> writes:
 https://github.com/Etherous/dcrypt

Hmm, last commit 3 years ago? It'll probably take quite a bit of work to bring it up to Phobos quality (and probably to get it to even compile). It does look pretty complete though...
Jul 29 2013