[Vm-dev] Selecting distributed plugins

Levente Uzonyi leves at caesar.elte.hu
Tue Mar 3 11:25:42 UTC 2020

Hi Robert,

On Sun, 1 Mar 2020, Robert wrote:

> I do not believe it is a good idea to have multiple implementations of 
> these primitives running about. Why didn't Croquet leverage the work 
> done in Cryptography? A question for the ages. Can we consolidate them

It was very likely done independently around the same time. The 
CroquetPlugin also has a primitive which you may be interested in: 
primitiveGatherEntropy, which can fill up a ByteArray with random bytes. 
It's available as Random class >> #gatherEntropyInto: in recent Squeak 

> now, under the Cryptography plugins, please? Those are tested against 
> the Cryptography code. As far as 64-bit, I do not know, I imagine they 
> have not been ported. I am CCing the Cryptography team in case someone 
> would be interested in doing that work for the team. I still offer the 
> DES and TripleDES options for encryption in ParrotTalk. I am also using 
> SHA256. What would be really sweet is if someone could implement SHA512...

I've uploaded the code I mentioned before which implement various hash 
functions including SHA512. In an image with no Cryptography loaded, 

Installer ss
 	project: 'Registers';
 	install: 'Registers';
 	project: 'Hasher';
 	install: 'Hasher'.

Then you can write:

HashFunction newSHA512 hashMessage: 'test'.


> There are also the DateAndTuime errors in 5.3RC3, and a failure of
> MultiByteFileStream>>#primSize:
> in
> Squeak5.3rc2-19422-64bit which I wrote about to the dev list.
> Kindly,
> Rabbit
> On 3/1/20 2:39 PM, Levente Uzonyi wrote:
>> On Fri, 28 Feb 2020, Nicolas Cellier wrote:
>>> Robert kindly asked me whether it would be possible to include DES and
>> MD5 plugins in OpenSmalltalk VM distribution.
>>> We currently generate src/plugins code for those 2, but don't compile
>> them.
>> There's also the SHA256Plugin which didn't see much use for sure.
>> MD5 is covered by the CroquetPlugin, and DES is pretty much outdated.
>> I suspect that neither of these plugins are ready for 64-bit compilation,
>> and they probably yield plenty of warnings because of typing issues.
>>> This raises the question: who decides which plugin gets
>> included/compiled/distributed or not? On which criterion?
>> IIRC these were included with the interpreter VM, but only after the Terf
>> VM branch was created. Since the latter became the current main branch, we
>> do not have those plugins in today's builds.
>> Levente
>> P.S.: I've got an unreleased package which implements MD5/SHA1/SHA2 hashes
>> in Smalltalk, optionally using DSAPrims and CroquetPlugin for the first
>> two. If there's interest, I can upload it somewhere.

More information about the Vm-dev mailing list