Thank you Bill, I've updated http://www.jsoftware.com/jwiki/PascalJasmin/SHA%201%2C%202%20and%20MD5%20for%20windows to reflect your signatures for sha256 512 and sha1 as well.
----- Original Message ----- From: bill lam <[email protected]> To: [email protected] Cc: Sent: Monday, June 30, 2014 11:24:54 AM Subject: Re: [Jprogramming] RIPEMD-160 hashes Sorry, I assumed the win64 worked but I was wrong, the code posted by Pascal should crash on windows unless the libeasy32.dll you and Pascal used was not built by Norman. I checked the official documentation for the correct prototype signature, and tested the following, RIPEMD160_win=: 'libeay32.dll RIPEMD160 > + x *c x *c'&cd RIPEMD160_lnx=: 'libssl.so RIPEMD160 > x *c x *c'&cd sr160=: 3 : 0 RIPEMD160_lnx`[email protected] (y);(#y);md=. 20#' ' md ) smoutput ,hfd a.i. sr160 'go ahead hash my day - i am expecting a 20 byte hash' the result was d02e91b3971c04b689174e3f9f216b4f5972f62f on linux64 and win64/32. Пн, 30 июн 2014, John Baker написал(а): > Bill, > > I tried this on win7/32 and the result is jqt crashing - looks like this is > only a 64 bitty thing. > > Thanks > > > On Sat, Jun 28, 2014 at 12:01 PM, bill lam <[email protected]> wrote: > > > If you want to run on J32, try replace the l with x. > > J32 does not support l. > > > > Сб, 28 июн 2014, John Baker написал(а): > > > FYI, Pascal & Eric > > > > > > This works just fine on 64 bit windows under both qt and jhs. > > > > > > jdb > > > > > > > > > On Thu, Jun 26, 2014 at 7:25 PM, 'Pascal Jasmin' via Programming < > > > [email protected]> wrote: > > > > > > > the definition works in win64 with J802's bundled dll. > > > > > > > > maybe on win32 changing the first parameter from i to l would work > > > > > > > > also you want this adverb to get hex result > > > > > > > > hexhash =: ( [: ,@:hfd a.i.])@: > > > > > > > > sr160 hexhash 'go ahead hash my day - i am expecting a 20 byte hash' > > > > d02e91b3971c04b689174e3f9f216b4f5972f62f > > > > > > > > > > > > ----- Original Message ----- > > > > From: John Baker <[email protected]> > > > > To: Programming forum <[email protected]> > > > > Cc: > > > > Sent: Thursday, June 26, 2014 4:57:37 PM > > > > Subject: Re: [Jprogramming] RIPEMD-160 hashes > > > > > > > > I got around to trying this with less than satisfactory results. The > > > > libeay32.dll exists in the j802 bin folder (it was hidden) and the > > result > > > > of the bind script follows: > > > > > > > > sslRIPEMPD160 > > > > 'c:\uap\j802\bin\libeay32.dll RIPEMD160 i *c l *c'&cd > > > > > > > > sr160 > > > > 3 : 0 > > > > output=: (20) # ' ' > > > > sslRIPEMD160 (y);(# y);output > > > > output > > > > ) > > > > > > > > sr160 'go ahead hash my day - i am expecting a 20 byte hash' > > > > |domain error: cd > > > > | sslRIPEMD160(y);(#y);output > > > > > > > > > > > > This test was on a 32 bit win 7 machine. Am I calling this correctly? I > > > > don't see the problemo? > > > > > > > > jdb > > > > > > > > > > > > > > > > On Wed, Jun 25, 2014 at 12:30 PM, 'Pascal Jasmin' via Programming < > > > > [email protected]> wrote: > > > > > > > > > You can change the sslp =: line in j802 to point to bin. Otherwise > > this > > > > > needs openssl (I think always available on linux and mac) RIPEMD160 > > is > > > > > called through sr160 function. > > > > > > > > > > Library is faster than windows built in dlls > > > > > > > > > > require 'dll' > > > > > NB. require 'shards' > > > > > sslp =: IFWIN pick '/usr/lib/';'D:\OpenSSL-Win64\bin\' > > > > > NB. OPENSSL =: jpath '~system/ssleay32.dll ' > > > > > NB.OPENSSL =: sslp , '\ssleay32.dll ' > > > > > OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i. > > <UNAME_z_) > > > > > pick 'libeay32.dll '; (2 $ <'libssl.so '); (2 $ <'libssl.dylib ') > > > > > NB.OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i. > > > > > <UNAME_z_) pick 'libeay32.dll '; (2 $ <'libssl.so '); (2 $ > > > > > <'libssl.0.9.8.dylib ') > > > > > SSLE =: sslp , '\openssl' > > > > > ssl =: 1 : '(OPENSSL , m)&cd' > > > > > RSAbits =: 64 > > > > > RSApE =: 3 ] 65537 > > > > > sslsha256 =: ' SHA256 i *c l *c' ssl > > > > > sslsha512 =: ' SHA512 i *c l *c' ssl > > > > > sslsha1 =: ' SHA1 i *c l *c' ssl > > > > > sslRIPEMD160 =: ' RIPEMD160 i *c l *c' ssl > > > > > sr160=: 3 : 0 > > > > > output=: (20) # ' ' > > > > > sslRIPEMD160 (y);(# y);output > > > > > output > > > > > ) > > > > > sha1 =: 3 : 0 > > > > > output=: (20) # ' ' > > > > > sslsha1 (y);(# y);output > > > > > output > > > > > ) > > > > > s512 =: 3 : 0 > > > > > output=: (64) # ' ' > > > > > sslsha512 (y);(# y);output > > > > > output > > > > > ) > > > > > s256 =: 3 : 0 > > > > > output=: (32) # ' ' > > > > > sslsha256 (y);(# y);output > > > > > output > > > > > ) > > > > > > > > > > > > > > > > > > > > ----- Original Message ----- > > > > > From: John Baker <[email protected]> > > > > > To: Programming forum <[email protected]> > > > > > Cc: > > > > > Sent: Wednesday, June 25, 2014 11:54:25 AM > > > > > Subject: [Jprogramming] RIPEMD-160 hashes > > > > > > > > > > I am wondering if anyone has invoked RIPEMD-160 hash algorithms from > > J. > > > > > > > > > > There is public C source for this hash > > > > > > > > > > > > > > > > > > > > > http://cpansearch.perl.org/src/CHGEUER/RIPEMD160-0.02/rmd160/doc/ripemd160.html > > > > > > > > > > and looking through it is enough to convince me that this is best > > left in > > > > > C. It seems most of the implementations are tailored for 32 bit > > machines > > > > > and I need to run this from a 64 bit machine. Any suggestions will be > > > > > welcome. > > > > > > > > > > > > > > > -- > > > > > John D. Baker > > > > > [email protected] > > > > > > > ---------------------------------------------------------------------- > > > > > For information about J forums see > > http://www.jsoftware.com/forums.htm > > > > > > > > > > > > ---------------------------------------------------------------------- > > > > > For information about J forums see > > http://www.jsoftware.com/forums.htm > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > John D. Baker > > > > [email protected] > > > > ---------------------------------------------------------------------- > > > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > > > > > ---------------------------------------------------------------------- > > > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > > > > > > > > > > > > > -- > > > John D. Baker > > > [email protected] > > > ---------------------------------------------------------------------- > > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > -- > > regards, > > ==================================================== > > GPG key 1024D/4434BAB3 2008-08-24 > > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 > > gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3 > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > > > -- > John D. Baker > [email protected] > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm -- regards, ==================================================== GPG key 1024D/4434BAB3 2008-08-24 gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3 Пн, 30 июн 2014, John Baker написал(а): > Bill, > > I tried this on win7/32 and the result is jqt crashing - looks like this is > only a 64 bitty thing. > > Thanks > > > On Sat, Jun 28, 2014 at 12:01 PM, bill lam <[email protected]> wrote: > > > If you want to run on J32, try replace the l with x. > > J32 does not support l. > > > > Сб, 28 июн 2014, John Baker написал(а): > > > FYI, Pascal & Eric > > > > > > This works just fine on 64 bit windows under both qt and jhs. > > > > > > jdb > > > > > > > > > On Thu, Jun 26, 2014 at 7:25 PM, 'Pascal Jasmin' via Programming < > > > [email protected]> wrote: > > > > > > > the definition works in win64 with J802's bundled dll. > > > > > > > > maybe on win32 changing the first parameter from i to l would work > > > > > > > > also you want this adverb to get hex result > > > > > > > > hexhash =: ( [: ,@:hfd a.i.])@: > > > > > > > > sr160 hexhash 'go ahead hash my day - i am expecting a 20 byte hash' > > > > d02e91b3971c04b689174e3f9f216b4f5972f62f > > > > > > > > > > > > ----- Original Message ----- > > > > From: John Baker <[email protected]> > > > > To: Programming forum <[email protected]> > > > > Cc: > > > > Sent: Thursday, June 26, 2014 4:57:37 PM > > > > Subject: Re: [Jprogramming] RIPEMD-160 hashes > > > > > > > > I got around to trying this with less than satisfactory results. The > > > > libeay32.dll exists in the j802 bin folder (it was hidden) and the > > result > > > > of the bind script follows: > > > > > > > > sslRIPEMPD160 > > > > 'c:\uap\j802\bin\libeay32.dll RIPEMD160 i *c l *c'&cd > > > > > > > > sr160 > > > > 3 : 0 > > > > output=: (20) # ' ' > > > > sslRIPEMD160 (y);(# y);output > > > > output > > > > ) > > > > > > > > sr160 'go ahead hash my day - i am expecting a 20 byte hash' > > > > |domain error: cd > > > > | sslRIPEMD160(y);(#y);output > > > > > > > > > > > > This test was on a 32 bit win 7 machine. Am I calling this correctly? I > > > > don't see the problemo? > > > > > > > > jdb > > > > > > > > > > > > > > > > On Wed, Jun 25, 2014 at 12:30 PM, 'Pascal Jasmin' via Programming < > > > > [email protected]> wrote: > > > > > > > > > You can change the sslp =: line in j802 to point to bin. Otherwise > > this > > > > > needs openssl (I think always available on linux and mac) RIPEMD160 > > is > > > > > called through sr160 function. > > > > > > > > > > Library is faster than windows built in dlls > > > > > > > > > > require 'dll' > > > > > NB. require 'shards' > > > > > sslp =: IFWIN pick '/usr/lib/';'D:\OpenSSL-Win64\bin\' > > > > > NB. OPENSSL =: jpath '~system/ssleay32.dll ' > > > > > NB.OPENSSL =: sslp , '\ssleay32.dll ' > > > > > OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i. > > <UNAME_z_) > > > > > pick 'libeay32.dll '; (2 $ <'libssl.so '); (2 $ <'libssl.dylib ') > > > > > NB.OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i. > > > > > <UNAME_z_) pick 'libeay32.dll '; (2 $ <'libssl.so '); (2 $ > > > > > <'libssl.0.9.8.dylib ') > > > > > SSLE =: sslp , '\openssl' > > > > > ssl =: 1 : '(OPENSSL , m)&cd' > > > > > RSAbits =: 64 > > > > > RSApE =: 3 ] 65537 > > > > > sslsha256 =: ' SHA256 i *c l *c' ssl > > > > > sslsha512 =: ' SHA512 i *c l *c' ssl > > > > > sslsha1 =: ' SHA1 i *c l *c' ssl > > > > > sslRIPEMD160 =: ' RIPEMD160 i *c l *c' ssl > > > > > sr160=: 3 : 0 > > > > > output=: (20) # ' ' > > > > > sslRIPEMD160 (y);(# y);output > > > > > output > > > > > ) > > > > > sha1 =: 3 : 0 > > > > > output=: (20) # ' ' > > > > > sslsha1 (y);(# y);output > > > > > output > > > > > ) > > > > > s512 =: 3 : 0 > > > > > output=: (64) # ' ' > > > > > sslsha512 (y);(# y);output > > > > > output > > > > > ) > > > > > s256 =: 3 : 0 > > > > > output=: (32) # ' ' > > > > > sslsha256 (y);(# y);output > > > > > output > > > > > ) > > > > > > > > > > > > > > > > > > > > ----- Original Message ----- > > > > > From: John Baker <[email protected]> > > > > > To: Programming forum <[email protected]> > > > > > Cc: > > > > > Sent: Wednesday, June 25, 2014 11:54:25 AM > > > > > Subject: [Jprogramming] RIPEMD-160 hashes > > > > > > > > > > I am wondering if anyone has invoked RIPEMD-160 hash algorithms from > > J. > > > > > > > > > > There is public C source for this hash > > > > > > > > > > > > > > > > > > > > > http://cpansearch.perl.org/src/CHGEUER/RIPEMD160-0.02/rmd160/doc/ripemd160.html > > > > > > > > > > and looking through it is enough to convince me that this is best > > left in > > > > > C. It seems most of the implementations are tailored for 32 bit > > machines > > > > > and I need to run this from a 64 bit machine. Any suggestions will be > > > > > welcome. > > > > > > > > > > > > > > > -- > > > > > John D. Baker > > > > > [email protected] > > > > > > > ---------------------------------------------------------------------- > > > > > For information about J forums see > > http://www.jsoftware.com/forums.htm > > > > > > > > > > > > ---------------------------------------------------------------------- > > > > > For information about J forums see > > http://www.jsoftware.com/forums.htm > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > John D. Baker > > > > [email protected] > > > > ---------------------------------------------------------------------- > > > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > > > > > ---------------------------------------------------------------------- > > > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > > > > > > > > > > > > > -- > > > John D. Baker > > > [email protected] > > > ---------------------------------------------------------------------- > > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > -- > > regards, > > ==================================================== > > GPG key 1024D/4434BAB3 2008-08-24 > > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 > > gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3 > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > > > -- > John D. Baker > [email protected] > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm -- regards, ==================================================== GPG key 1024D/4434BAB3 2008-08-24 gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3 gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3 ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
