I haven't followed this thread, but don't immediately see why there is a problem with JHS. The J engine that the browser talks to can call shared libraries on the machine the J engine runs on. Perhaps the addons need some fixes, but something like key generation should not depend on the J front end.
On Fri, Jun 27, 2014 at 11:28 AM, bill lam <[email protected]> wrote: > JHS users cannot run your addons if your addon depends openssl. > > On 27.06.2014, at 22:10, John Baker <[email protected]> wrote: > >> Thanks Pascal, >> >> I will try your suggestions. I am not on a 64 bit box right now but it's >> good to see it working elsehwere. >> >> Bill, the project I am working on does not require jqt but it needs to deal >> with RIPEMD-160 hashes. >> >> >> >> 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 > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
