DoubleWordArray broken in Pharo

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

DoubleWordArray broken in Pharo

Squeak - Dev mailing list
Hey Levente,

I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray? 

Kindly,
Robert


Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Nicolas Cellier
Hi Robert,

Le sam. 28 mars 2020 à 13:44, Robert via Squeak-dev <[hidden email]> a écrit :
Hey Levente,

I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:.
 
Pharo seems totally uninterested in fixing this
What makes you think so?
If you open an issue on github, provide a failing test case, then I see no reason why they would not fix it.

However, it might be that they are not interested at all in Cryptography package because they already forked it twice.
The first fork was on SmalltalkHub, because they did not consider squeaksource as reliable (which was once not entirely false).
Rather than collaborating, their primary reaction is always to fork. It avoids making trade offs, they don't like the IDEA of trade offs ;).
They also don't want to depend too much on a something that they can't control, it's seen as a weakness.
Then they re-forked to github using new Tonel format. The new fork is legitimated by the migration to new tools.
So good luck if you want to sell them the updated package.
 
so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray? 

Is it really worth it? IMO, no in the context I gave above!
If it's really important for you, try to have some fix integrated in Pharo.

Kindly,
Robert



Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Levente Uzonyi
In reply to this post by Squeak - Dev mailing list
Hi Robert,

No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
that in Pharo DoubleWordArray is a variableWordSubclass instead of a
variableDoubleWordSubclass. The latter is not available in Pharo.
Here's the link to the issue they created based on my analysis you sent
to them: https://github.com/pharo-project/pharo/issues/5956

In theory, yes, it would be possible to rewrite SHA-512 and its related
hash functions to avoid using DoubleWordArray, but I see no value in doing
that.
Pharo simply failed to properly integrate DoubleWordArray. It's there but
it's disfunctional. Just wait until they fix it.


Levente

P.S.: This is pretty much off topic on squeak-dev.

On Sat, 28 Mar 2020, Robert wrote:

> Hey Levente,
>
> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray? 
>
> Kindly,
> Robert
>
>

Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Squeak - Dev mailing list

On 3/28/20 10:16 AM, Levente Uzonyi wrote:
> Hi Robert,
>
> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
> variableDoubleWordSubclass. The latter is not available in Pharo.
> Here's the link to the issue they created based on my analysis you sent
> to them: https://github.com/pharo-project/pharo/issues/5956

Alright, I shared this analysis with Pharo's Discord channel. I must
have missed the discussion of the #variableDoubleWordSubclass:.

> In theory, yes, it would be possible to rewrite SHA-512 and its related
> hash functions to avoid using DoubleWordArray, but I see no value in doing
> that.

The value would be Crypto operational in Pharo. And all that follows
from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
to make these changes, please? I see this as more likely than Pharo
accommodating #variableDoubleWordSubclass:. And other Smalltalks...

k, r

> Pharo simply failed to properly integrate DoubleWordArray. It's there but
> it's disfunctional. Just wait until they fix it.
>
>
> Levente
>
> P.S.: This is pretty much off topic on squeak-dev.
>
> On Sat, 28 Mar 2020, Robert wrote:
>
>> Hey Levente,
>>
>> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>>
>> Kindly,
>> Robert
>>
>>
--
Kindly,
Robert



Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Squeak - Dev mailing list
Hey Levente,

In order to get Crypto running in Pharo, I will split the
HashingPluginSupport code into a separate package, which Pharo will not
load, but Squeak will.

k, r

On 3/28/20 10:26 AM, Robert wrote:

>
> On 3/28/20 10:16 AM, Levente Uzonyi wrote:
>> Hi Robert,
>>
>> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
>> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
>> variableDoubleWordSubclass. The latter is not available in Pharo.
>> Here's the link to the issue they created based on my analysis you sent
>> to them: https://github.com/pharo-project/pharo/issues/5956
> Alright, I shared this analysis with Pharo's Discord channel. I must
> have missed the discussion of the #variableDoubleWordSubclass:.
>
>> In theory, yes, it would be possible to rewrite SHA-512 and its related
>> hash functions to avoid using DoubleWordArray, but I see no value in doing
>> that.
> The value would be Crypto operational in Pharo. And all that follows
> from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
> to make these changes, please? I see this as more likely than Pharo
> accommodating #variableDoubleWordSubclass:. And other Smalltalks...
>
> k, r
>
>> Pharo simply failed to properly integrate DoubleWordArray. It's there but
>> it's disfunctional. Just wait until they fix it.
>>
>>
>> Levente
>>
>> P.S.: This is pretty much off topic on squeak-dev.
>>
>> On Sat, 28 Mar 2020, Robert wrote:
>>
>>> Hey Levente,
>>>
>>> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>>>
>>> Kindly,
>>> Robert
>>>
>>>
--
Kindly,
Robert



Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Levente Uzonyi
Hi Robert,

Please don't mess up the code just because of Pharo. They'll eventually
fix DoubleWordArray, but that doesn't mean the code will work at all on
Pharo.

Levente

On Sat, 28 Mar 2020, Robert wrote:

> Hey Levente,
>
> In order to get Crypto running in Pharo, I will split the
> HashingPluginSupport code into a separate package, which Pharo will not
> load, but Squeak will.
>
> k, r
>
> On 3/28/20 10:26 AM, Robert wrote:
>>
>> On 3/28/20 10:16 AM, Levente Uzonyi wrote:
>>> Hi Robert,
>>>
>>> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
>>> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
>>> variableDoubleWordSubclass. The latter is not available in Pharo.
>>> Here's the link to the issue they created based on my analysis you sent
>>> to them: https://github.com/pharo-project/pharo/issues/5956
>> Alright, I shared this analysis with Pharo's Discord channel. I must
>> have missed the discussion of the #variableDoubleWordSubclass:.
>>
>>> In theory, yes, it would be possible to rewrite SHA-512 and its related
>>> hash functions to avoid using DoubleWordArray, but I see no value in doing
>>> that.
>> The value would be Crypto operational in Pharo. And all that follows
>> from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
>> to make these changes, please? I see this as more likely than Pharo
>> accommodating #variableDoubleWordSubclass:. And other Smalltalks...
>>
>> k, r
>>
>>> Pharo simply failed to properly integrate DoubleWordArray. It's there but
>>> it's disfunctional. Just wait until they fix it.
>>>
>>>
>>> Levente
>>>
>>> P.S.: This is pretty much off topic on squeak-dev.
>>>
>>> On Sat, 28 Mar 2020, Robert wrote:
>>>
>>>> Hey Levente,
>>>>
>>>> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>>>>
>>>> Kindly,
>>>> Robert
>>>>
>>>>
> --
> Kindly,
> Robert
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Squeak - Dev mailing list

Hi Levente,

Squeak...

I went ahead and split off the plugin hashing code and loaded with and without in Squeak. #CryptoGreen. This loads it all. The specific versions for Squeak are below the Pharo section. Note: if you loaded the hashing plugins support then remove it the HashFunction class>>#newHash methods are ripped away by the plugin code. So if you load hashing plugins then remove it you will need to reload the CryptographyHashing package for green.

Installer ss
    project: 'Cryptography';
    install: 'ProCrypto-1-1-1';
    install: 'ProCryptoTests-1-1-1';
    install: 'SSLLoader'.

Pharo...

Here is a script to load all packages in Pharo, without Hashing plugins support. Unfortunately there are many errors: red and yellow. :( Crypto used to run on Pharo. Sad.

Gofer new squeaksource: 'Registers'; package: 'Registers-Core'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCore'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyHashing'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyRandom'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphers'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignatures'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchange'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyArchive'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyX509'; load.
Gofer new squeaksource: 'Registers'; package: 'Registers-Tests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCoreTests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyHashingTests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1Tests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyRandomTests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphersTests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignaturesTests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchangeTests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyArchiveTests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'CryptographyX509Tests'; load.
Gofer new squeaksource: 'Cryptography'; package: 'ThunkStack'; load.
Gofer new squeaksource: 'Cryptography'; package: 'ParrotTalk'; load.

Squeak versions...

Here are the versions, in Squeak, without SSL:
Installer ss project: 'Registers';
    install: 'Registers-Core-ul.1'.
Installer ss project: 'Cryptography';
    install: 'CryptographyCore-ul.7';
    install: 'CryptographyHashing-rww.26';
    install: 'CryptographyHashingPluginSupport-rww.1';
    install: 'CryptographyASN1-rww.7';
    install: 'CryptographyRandom-ul.13';
    install: 'CryptographyCiphers-rww.20';
    install: 'CryptographySignatures-ul.17';
    install: 'CryptographyKeyExchange-rww.14';
    install: 'CryptographyArchive-ul.18';
    install: 'CryptographyX509-ul.15'.
Installer ss project: 'Registers';
    install: 'Registers-Tests-ul.1'.
Installer ss project: 'Cryptography';
    install: 'CryptographyCoreTests-rww.1';
    install: 'CryptographyHashingTests-rww.3';
    install: 'CryptographyHashingPluginSupportTests-rww.1';
    install: 'CryptographyASN1Tests-rww.1';
    install: 'CryptographyRandomTests-rww.1';
    install: 'CryptographyCiphersTests-rww.1';
    install: 'CryptographySignaturesTests-rww.1';
    install: 'CryptographyKeyExchangeTests-rww.1';
    install: 'CryptographyArchiveTests-rww.1';
    install: 'CryptographyX509Tests-rww.1'.
Installer ss project: 'Cryptography';
    install: 'ThunkStack-rww.12';
    install: 'ParrotTalk-rww.48'.

On 3/28/20 11:54 AM, Levente Uzonyi wrote:
Hi Robert,

Please don't mess up the code just because of Pharo. They'll eventually
fix DoubleWordArray, but that doesn't mean the code will work at all on
Pharo.

Levente

On Sat, 28 Mar 2020, Robert wrote:

Hey Levente,

In order to get Crypto running in Pharo, I will split the
HashingPluginSupport code into a separate package, which Pharo will not
load, but Squeak will.

k, r

On 3/28/20 10:26 AM, Robert wrote:
On 3/28/20 10:16 AM, Levente Uzonyi wrote:
Hi Robert,

No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
that in Pharo DoubleWordArray is a variableWordSubclass instead of a
variableDoubleWordSubclass. The latter is not available in Pharo.
Here's the link to the issue they created based on my analysis you sent
to them: https://github.com/pharo-project/pharo/issues/5956
Alright, I shared this analysis with Pharo's Discord channel. I must
have missed the discussion of the #variableDoubleWordSubclass:.

In theory, yes, it would be possible to rewrite SHA-512 and its related
hash functions to avoid using DoubleWordArray, but I see no value in doing
that.
The value would be Crypto operational in Pharo. And all that follows
from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
to make these changes, please? I see this as more likely than Pharo
accommodating #variableDoubleWordSubclass:. And other Smalltalks...

k, r

Pharo simply failed to properly integrate DoubleWordArray. It's there but
it's disfunctional. Just wait until they fix it.


Levente

P.S.: This is pretty much off topic on squeak-dev.

On Sat, 28 Mar 2020, Robert wrote:

Hey Levente,

I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?

Kindly,
Robert


--
Kindly,
Robert



-- 
Kindly,
Robert


Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Levente Uzonyi
In reply to this post by Squeak - Dev mailing list
Hi Robert

On Sat, 28 Mar 2020, Robert wrote:

>
> On 3/28/20 10:16 AM, Levente Uzonyi wrote:
>> Hi Robert,
>>
>> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
>> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
>> variableDoubleWordSubclass. The latter is not available in Pharo.
>> Here's the link to the issue they created based on my analysis you sent
>> to them: https://github.com/pharo-project/pharo/issues/5956
>
> Alright, I shared this analysis with Pharo's Discord channel. I must
> have missed the discussion of the #variableDoubleWordSubclass:.
>
>> In theory, yes, it would be possible to rewrite SHA-512 and its related
>> hash functions to avoid using DoubleWordArray, but I see no value in doing
>> that.
>
> The value would be Crypto operational in Pharo. And all that follows
Fixing DoubleWordArray in Pharo alone won't make the packages operational.
Pharo is a moving target and it keeps breaking stuff all the time.

> from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
> to make these changes, please? I see this as more likely than Pharo
> accommodating #variableDoubleWordSubclass:. And other Smalltalks...

I've attached a changeset. If you load it before the Cryptography
packages, CryptographyHashing will work in Pharo 8 and in the current
Pharo 9 alpha. Some tests will fail, because random strings are generated
with the Random class, which is different in Squeak and Pharo but still,
everything will work.


Levente

>
> k, r
>
>> Pharo simply failed to properly integrate DoubleWordArray. It's there but
>> it's disfunctional. Just wait until they fix it.
>>
>>
>> Levente
>>
>> P.S.: This is pretty much off topic on squeak-dev.
>>
>> On Sat, 28 Mar 2020, Robert wrote:
>>
>>> Hey Levente,
>>>
>>> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>>>
>>> Kindly,
>>> Robert
>>>
>>>
> --
> Kindly,
> Robert
>
>
>


Pharo-DoubleWordArray-patch.cs (5K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Levente Uzonyi
In reply to this post by Squeak - Dev mailing list
Hi Robert,

Well, I just asked you not to do it. It's not worth it.


Levente

On Sat, 28 Mar 2020, Robert wrote:

>
> Hi Levente,
>
> Squeak...
>
> I went ahead and split off the plugin hashing code and loaded with and without in Squeak. #CryptoGreen. This loads it all. The specific versions for Squeak are below the Pharo section. Note: if you loaded the hashing plugins support then remove it the HashFunction class>>#newHash methods are ripped away by the
> plugin code. So if you load hashing plugins then remove it you will need to reload the CryptographyHashing package for green.
>
> Installer ss     project: 'Cryptography';     install: 'ProCrypto-1-1-1';     install: 'ProCryptoTests-1-1-1';     install: 'SSLLoader'.
>
> Pharo...
>
> Here is a script to load all packages in Pharo, without Hashing plugins support. Unfortunately there are many errors: red and yellow. :( Crypto used to run on Pharo. Sad.
>
> Gofer new squeaksource: 'Registers'; package: 'Registers-Core'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCore'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyHashing'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1'; load. Gofer new
> squeaksource: 'Cryptography'; package: 'CryptographyRandom'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphers'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignatures'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchange'; load. Gofer
> new squeaksource: 'Cryptography'; package: 'CryptographyArchive'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyX509'; load. Gofer new squeaksource: 'Registers'; package: 'Registers-Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCoreTests'; load. Gofer new
> squeaksource: 'Cryptography'; package: 'CryptographyHashingTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyRandomTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphersTests';
> load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignaturesTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchangeTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyArchiveTests'; load. Gofer new squeaksource: 'Cryptography'; package:
> 'CryptographyX509Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'ThunkStack'; load. Gofer new squeaksource: 'Cryptography'; package: 'ParrotTalk'; load.
>
> Squeak versions...
>
> Here are the versions, in Squeak, without SSL: Installer ss project: 'Registers';     install: 'Registers-Core-ul.1'. Installer ss project: 'Cryptography';     install: 'CryptographyCore-ul.7';     install: 'CryptographyHashing-rww.26';     install: 'CryptographyHashingPluginSupport-rww.1';     install:
> 'CryptographyASN1-rww.7';     install: 'CryptographyRandom-ul.13';     install: 'CryptographyCiphers-rww.20';     install: 'CryptographySignatures-ul.17';     install: 'CryptographyKeyExchange-rww.14';     install: 'CryptographyArchive-ul.18';     install: 'CryptographyX509-ul.15'. Installer ss project:
> 'Registers';     install: 'Registers-Tests-ul.1'. Installer ss project: 'Cryptography';     install: 'CryptographyCoreTests-rww.1';     install: 'CryptographyHashingTests-rww.3';     install: 'CryptographyHashingPluginSupportTests-rww.1';     install: 'CryptographyASN1Tests-rww.1';     install:
> 'CryptographyRandomTests-rww.1';     install: 'CryptographyCiphersTests-rww.1';     install: 'CryptographySignaturesTests-rww.1';     install: 'CryptographyKeyExchangeTests-rww.1';     install: 'CryptographyArchiveTests-rww.1';     install: 'CryptographyX509Tests-rww.1'. Installer ss project: 'Cryptography';    
> install: 'ThunkStack-rww.12';     install: 'ParrotTalk-rww.48'.
>
> On 3/28/20 11:54 AM, Levente Uzonyi wrote:
>
> Hi Robert,
>
> Please don't mess up the code just because of Pharo. They'll eventually
> fix DoubleWordArray, but that doesn't mean the code will work at all on
> Pharo.
>
> Levente
>
> On Sat, 28 Mar 2020, Robert wrote:
>
> Hey Levente,
>
> In order to get Crypto running in Pharo, I will split the
> HashingPluginSupport code into a separate package, which Pharo will not
> load, but Squeak will.
>
> k, r
>
> On 3/28/20 10:26 AM, Robert wrote:
>
> On 3/28/20 10:16 AM, Levente Uzonyi wrote:
>
> Hi Robert,
>
> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
> variableDoubleWordSubclass. The latter is not available in Pharo.
> Here's the link to the issue they created based on my analysis you sent
> to them: https://github.com/pharo-project/pharo/issues/5956
>
> Alright, I shared this analysis with Pharo's Discord channel. I must
> have missed the discussion of the #variableDoubleWordSubclass:.
>
> In theory, yes, it would be possible to rewrite SHA-512 and its related
> hash functions to avoid using DoubleWordArray, but I see no value in doing
> that.
>
> The value would be Crypto operational in Pharo. And all that follows
> from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
> to make these changes, please? I see this as more likely than Pharo
> accommodating #variableDoubleWordSubclass:. And other Smalltalks...
>
> k, r
>
> Pharo simply failed to properly integrate DoubleWordArray. It's there but
> it's disfunctional. Just wait until they fix it.
>
>
> Levente
>
> P.S.: This is pretty much off topic on squeak-dev.
>
> On Sat, 28 Mar 2020, Robert wrote:
>
> Hey Levente,
>
> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>
> Kindly,
> Robert
>
>
> --
> Kindly,
> Robert
>
>
>
> --
> Kindly,
> Robert
>
>

Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Squeak - Dev mailing list
In reply to this post by Levente Uzonyi
Thanks, I'll try it out.

On 3/28/20 12:12 PM, Levente Uzonyi wrote:

> Hi Robert
>
> On Sat, 28 Mar 2020, Robert wrote:
>
>> On 3/28/20 10:16 AM, Levente Uzonyi wrote:
>>> Hi Robert,
>>>
>>> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
>>> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
>>> variableDoubleWordSubclass. The latter is not available in Pharo.
>>> Here's the link to the issue they created based on my analysis you sent
>>> to them: https://github.com/pharo-project/pharo/issues/5956
>> Alright, I shared this analysis with Pharo's Discord channel. I must
>> have missed the discussion of the #variableDoubleWordSubclass:.
>>
>>> In theory, yes, it would be possible to rewrite SHA-512 and its related
>>> hash functions to avoid using DoubleWordArray, but I see no value in doing
>>> that.
>> The value would be Crypto operational in Pharo. And all that follows
> Fixing DoubleWordArray in Pharo alone won't make the packages operational.
> Pharo is a moving target and it keeps breaking stuff all the time.
>
>> from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
>> to make these changes, please? I see this as more likely than Pharo
>> accommodating #variableDoubleWordSubclass:. And other Smalltalks...
> I've attached a changeset. If you load it before the Cryptography
> packages, CryptographyHashing will work in Pharo 8 and in the current
> Pharo 9 alpha. Some tests will fail, because random strings are generated
> with the Random class, which is different in Squeak and Pharo but still,
> everything will work.
>
>
> Levente
>
>> k, r
>>
>>> Pharo simply failed to properly integrate DoubleWordArray. It's there but
>>> it's disfunctional. Just wait until they fix it.
>>>
>>>
>>> Levente
>>>
>>> P.S.: This is pretty much off topic on squeak-dev.
>>>
>>> On Sat, 28 Mar 2020, Robert wrote:
>>>
>>>> Hey Levente,
>>>>
>>>> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>>>>
>>>> Kindly,
>>>> Robert
>>>>
>>>>
>> --
>> Kindly,
>> Robert
>>
>>
> >

--
Kindly,
Robert



Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Squeak - Dev mailing list
In reply to this post by Levente Uzonyi
I had already done the work when I saw your post here. I may rewind.

On 3/28/20 12:14 PM, Levente Uzonyi wrote:

> Hi Robert,
>
> Well, I just asked you not to do it. It's not worth it.
>
>
> Levente
>
> On Sat, 28 Mar 2020, Robert wrote:
>
>> Hi Levente,
>>
>> Squeak...
>>
>> I went ahead and split off the plugin hashing code and loaded with and without in Squeak. #CryptoGreen. This loads it all. The specific versions for Squeak are below the Pharo section. Note: if you loaded the hashing plugins support then remove it the HashFunction class>>#newHash methods are ripped away by the
>> plugin code. So if you load hashing plugins then remove it you will need to reload the CryptographyHashing package for green.
>>
>> Installer ss     project: 'Cryptography';     install: 'ProCrypto-1-1-1';     install: 'ProCryptoTests-1-1-1';     install: 'SSLLoader'.
>>
>> Pharo...
>>
>> Here is a script to load all packages in Pharo, without Hashing plugins support. Unfortunately there are many errors: red and yellow. :( Crypto used to run on Pharo. Sad.
>>
>> Gofer new squeaksource: 'Registers'; package: 'Registers-Core'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCore'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyHashing'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1'; load. Gofer new
>> squeaksource: 'Cryptography'; package: 'CryptographyRandom'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphers'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignatures'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchange'; load. Gofer
>> new squeaksource: 'Cryptography'; package: 'CryptographyArchive'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyX509'; load. Gofer new squeaksource: 'Registers'; package: 'Registers-Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCoreTests'; load. Gofer new
>> squeaksource: 'Cryptography'; package: 'CryptographyHashingTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyRandomTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphersTests';
>> load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignaturesTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchangeTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyArchiveTests'; load. Gofer new squeaksource: 'Cryptography'; package:
>> 'CryptographyX509Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'ThunkStack'; load. Gofer new squeaksource: 'Cryptography'; package: 'ParrotTalk'; load.
>>
>> Squeak versions...
>>
>> Here are the versions, in Squeak, without SSL: Installer ss project: 'Registers';     install: 'Registers-Core-ul.1'. Installer ss project: 'Cryptography';     install: 'CryptographyCore-ul.7';     install: 'CryptographyHashing-rww.26';     install: 'CryptographyHashingPluginSupport-rww.1';     install:
>> 'CryptographyASN1-rww.7';     install: 'CryptographyRandom-ul.13';     install: 'CryptographyCiphers-rww.20';     install: 'CryptographySignatures-ul.17';     install: 'CryptographyKeyExchange-rww.14';     install: 'CryptographyArchive-ul.18';     install: 'CryptographyX509-ul.15'. Installer ss project:
>> 'Registers';     install: 'Registers-Tests-ul.1'. Installer ss project: 'Cryptography';     install: 'CryptographyCoreTests-rww.1';     install: 'CryptographyHashingTests-rww.3';     install: 'CryptographyHashingPluginSupportTests-rww.1';     install: 'CryptographyASN1Tests-rww.1';     install:
>> 'CryptographyRandomTests-rww.1';     install: 'CryptographyCiphersTests-rww.1';     install: 'CryptographySignaturesTests-rww.1';     install: 'CryptographyKeyExchangeTests-rww.1';     install: 'CryptographyArchiveTests-rww.1';     install: 'CryptographyX509Tests-rww.1'. Installer ss project: 'Cryptography';
>> install: 'ThunkStack-rww.12';     install: 'ParrotTalk-rww.48'.
>>
>> On 3/28/20 11:54 AM, Levente Uzonyi wrote:
>>
>> Hi Robert,
>>
>> Please don't mess up the code just because of Pharo. They'll eventually
>> fix DoubleWordArray, but that doesn't mean the code will work at all on
>> Pharo.
>>
>> Levente
>>
>> On Sat, 28 Mar 2020, Robert wrote:
>>
>> Hey Levente,
>>
>> In order to get Crypto running in Pharo, I will split the
>> HashingPluginSupport code into a separate package, which Pharo will not
>> load, but Squeak will.
>>
>> k, r
>>
>> On 3/28/20 10:26 AM, Robert wrote:
>>
>> On 3/28/20 10:16 AM, Levente Uzonyi wrote:
>>
>> Hi Robert,
>>
>> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
>> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
>> variableDoubleWordSubclass. The latter is not available in Pharo.
>> Here's the link to the issue they created based on my analysis you sent
>> to them: https://github.com/pharo-project/pharo/issues/5956
>>
>> Alright, I shared this analysis with Pharo's Discord channel. I must
>> have missed the discussion of the #variableDoubleWordSubclass:.
>>
>> In theory, yes, it would be possible to rewrite SHA-512 and its related
>> hash functions to avoid using DoubleWordArray, but I see no value in doing
>> that.
>>
>> The value would be Crypto operational in Pharo. And all that follows
>> from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
>> to make these changes, please? I see this as more likely than Pharo
>> accommodating #variableDoubleWordSubclass:. And other Smalltalks...
>>
>> k, r
>>
>> Pharo simply failed to properly integrate DoubleWordArray. It's there but
>> it's disfunctional. Just wait until they fix it.
>>
>>
>> Levente
>>
>> P.S.: This is pretty much off topic on squeak-dev.
>>
>> On Sat, 28 Mar 2020, Robert wrote:
>>
>> Hey Levente,
>>
>> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>>
>> Kindly,
>> Robert
>>
>>
>> --
>> Kindly,
>> Robert
>>
>>
>>
>> --
>> Kindly,
>> Robert
>>
>>
--
Kindly,
Robert



Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Squeak - Dev mailing list
In reply to this post by Levente Uzonyi
I just rolled it all back. hashing-rww.24 and HashingTests-rww.2 are
once again the latest versions.

k, r

On 3/28/20 12:14 PM, Levente Uzonyi wrote:

> Hi Robert,
>
> Well, I just asked you not to do it. It's not worth it.
>
>
> Levente
>
> On Sat, 28 Mar 2020, Robert wrote:
>
>> Hi Levente,
>>
>> Squeak...
>>
>> I went ahead and split off the plugin hashing code and loaded with and without in Squeak. #CryptoGreen. This loads it all. The specific versions for Squeak are below the Pharo section. Note: if you loaded the hashing plugins support then remove it the HashFunction class>>#newHash methods are ripped away by the
>> plugin code. So if you load hashing plugins then remove it you will need to reload the CryptographyHashing package for green.
>>
>> Installer ss     project: 'Cryptography';     install: 'ProCrypto-1-1-1';     install: 'ProCryptoTests-1-1-1';     install: 'SSLLoader'.
>>
>> Pharo...
>>
>> Here is a script to load all packages in Pharo, without Hashing plugins support. Unfortunately there are many errors: red and yellow. :( Crypto used to run on Pharo. Sad.
>>
>> Gofer new squeaksource: 'Registers'; package: 'Registers-Core'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCore'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyHashing'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1'; load. Gofer new
>> squeaksource: 'Cryptography'; package: 'CryptographyRandom'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphers'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignatures'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchange'; load. Gofer
>> new squeaksource: 'Cryptography'; package: 'CryptographyArchive'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyX509'; load. Gofer new squeaksource: 'Registers'; package: 'Registers-Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCoreTests'; load. Gofer new
>> squeaksource: 'Cryptography'; package: 'CryptographyHashingTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyRandomTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphersTests';
>> load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignaturesTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchangeTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyArchiveTests'; load. Gofer new squeaksource: 'Cryptography'; package:
>> 'CryptographyX509Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'ThunkStack'; load. Gofer new squeaksource: 'Cryptography'; package: 'ParrotTalk'; load.
>>
>> Squeak versions...
>>
>> Here are the versions, in Squeak, without SSL: Installer ss project: 'Registers';     install: 'Registers-Core-ul.1'. Installer ss project: 'Cryptography';     install: 'CryptographyCore-ul.7';     install: 'CryptographyHashing-rww.26';     install: 'CryptographyHashingPluginSupport-rww.1';     install:
>> 'CryptographyASN1-rww.7';     install: 'CryptographyRandom-ul.13';     install: 'CryptographyCiphers-rww.20';     install: 'CryptographySignatures-ul.17';     install: 'CryptographyKeyExchange-rww.14';     install: 'CryptographyArchive-ul.18';     install: 'CryptographyX509-ul.15'. Installer ss project:
>> 'Registers';     install: 'Registers-Tests-ul.1'. Installer ss project: 'Cryptography';     install: 'CryptographyCoreTests-rww.1';     install: 'CryptographyHashingTests-rww.3';     install: 'CryptographyHashingPluginSupportTests-rww.1';     install: 'CryptographyASN1Tests-rww.1';     install:
>> 'CryptographyRandomTests-rww.1';     install: 'CryptographyCiphersTests-rww.1';     install: 'CryptographySignaturesTests-rww.1';     install: 'CryptographyKeyExchangeTests-rww.1';     install: 'CryptographyArchiveTests-rww.1';     install: 'CryptographyX509Tests-rww.1'. Installer ss project: 'Cryptography';
>> install: 'ThunkStack-rww.12';     install: 'ParrotTalk-rww.48'.
>>
>> On 3/28/20 11:54 AM, Levente Uzonyi wrote:
>>
>> Hi Robert,
>>
>> Please don't mess up the code just because of Pharo. They'll eventually
>> fix DoubleWordArray, but that doesn't mean the code will work at all on
>> Pharo.
>>
>> Levente
>>
>> On Sat, 28 Mar 2020, Robert wrote:
>>
>> Hey Levente,
>>
>> In order to get Crypto running in Pharo, I will split the
>> HashingPluginSupport code into a separate package, which Pharo will not
>> load, but Squeak will.
>>
>> k, r
>>
>> On 3/28/20 10:26 AM, Robert wrote:
>>
>> On 3/28/20 10:16 AM, Levente Uzonyi wrote:
>>
>> Hi Robert,
>>
>> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
>> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
>> variableDoubleWordSubclass. The latter is not available in Pharo.
>> Here's the link to the issue they created based on my analysis you sent
>> to them: https://github.com/pharo-project/pharo/issues/5956
>>
>> Alright, I shared this analysis with Pharo's Discord channel. I must
>> have missed the discussion of the #variableDoubleWordSubclass:.
>>
>> In theory, yes, it would be possible to rewrite SHA-512 and its related
>> hash functions to avoid using DoubleWordArray, but I see no value in doing
>> that.
>>
>> The value would be Crypto operational in Pharo. And all that follows
>> from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
>> to make these changes, please? I see this as more likely than Pharo
>> accommodating #variableDoubleWordSubclass:. And other Smalltalks...
>>
>> k, r
>>
>> Pharo simply failed to properly integrate DoubleWordArray. It's there but
>> it's disfunctional. Just wait until they fix it.
>>
>>
>> Levente
>>
>> P.S.: This is pretty much off topic on squeak-dev.
>>
>> On Sat, 28 Mar 2020, Robert wrote:
>>
>> Hey Levente,
>>
>> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>>
>> Kindly,
>> Robert
>>
>>
>> --
>> Kindly,
>> Robert
>>
>>
>>
>> --
>> Kindly,
>> Robert
>>
>>
--
Kindly,
Robert



Reply | Threaded
Open this post in threaded view
|

Re: DoubleWordArray broken in Pharo

Levente Uzonyi
Thanks!


Levente

On Sat, 28 Mar 2020, Robert wrote:

> I just rolled it all back. hashing-rww.24 and HashingTests-rww.2 are
> once again the latest versions.
>
> k, r
>
> On 3/28/20 12:14 PM, Levente Uzonyi wrote:
>> Hi Robert,
>>
>> Well, I just asked you not to do it. It's not worth it.
>>
>>
>> Levente
>>
>> On Sat, 28 Mar 2020, Robert wrote:
>>
>>> Hi Levente,
>>>
>>> Squeak...
>>>
>>> I went ahead and split off the plugin hashing code and loaded with and without in Squeak. #CryptoGreen. This loads it all. The specific versions for Squeak are below the Pharo section. Note: if you loaded the hashing plugins support then remove it the HashFunction class>>#newHash methods are ripped away by the
>>> plugin code. So if you load hashing plugins then remove it you will need to reload the CryptographyHashing package for green.
>>>
>>> Installer ss     project: 'Cryptography';     install: 'ProCrypto-1-1-1';     install: 'ProCryptoTests-1-1-1';     install: 'SSLLoader'.
>>>
>>> Pharo...
>>>
>>> Here is a script to load all packages in Pharo, without Hashing plugins support. Unfortunately there are many errors: red and yellow. :( Crypto used to run on Pharo. Sad.
>>>
>>> Gofer new squeaksource: 'Registers'; package: 'Registers-Core'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCore'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyHashing'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1'; load. Gofer new
>>> squeaksource: 'Cryptography'; package: 'CryptographyRandom'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphers'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignatures'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchange'; load. Gofer
>>> new squeaksource: 'Cryptography'; package: 'CryptographyArchive'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyX509'; load. Gofer new squeaksource: 'Registers'; package: 'Registers-Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCoreTests'; load. Gofer new
>>> squeaksource: 'Cryptography'; package: 'CryptographyHashingTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyASN1Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyRandomTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyCiphersTests';
>>> load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographySignaturesTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyKeyExchangeTests'; load. Gofer new squeaksource: 'Cryptography'; package: 'CryptographyArchiveTests'; load. Gofer new squeaksource: 'Cryptography'; package:
>>> 'CryptographyX509Tests'; load. Gofer new squeaksource: 'Cryptography'; package: 'ThunkStack'; load. Gofer new squeaksource: 'Cryptography'; package: 'ParrotTalk'; load.
>>>
>>> Squeak versions...
>>>
>>> Here are the versions, in Squeak, without SSL: Installer ss project: 'Registers';     install: 'Registers-Core-ul.1'. Installer ss project: 'Cryptography';     install: 'CryptographyCore-ul.7';     install: 'CryptographyHashing-rww.26';     install: 'CryptographyHashingPluginSupport-rww.1';     install:
>>> 'CryptographyASN1-rww.7';     install: 'CryptographyRandom-ul.13';     install: 'CryptographyCiphers-rww.20';     install: 'CryptographySignatures-ul.17';     install: 'CryptographyKeyExchange-rww.14';     install: 'CryptographyArchive-ul.18';     install: 'CryptographyX509-ul.15'. Installer ss project:
>>> 'Registers';     install: 'Registers-Tests-ul.1'. Installer ss project: 'Cryptography';     install: 'CryptographyCoreTests-rww.1';     install: 'CryptographyHashingTests-rww.3';     install: 'CryptographyHashingPluginSupportTests-rww.1';     install: 'CryptographyASN1Tests-rww.1';     install:
>>> 'CryptographyRandomTests-rww.1';     install: 'CryptographyCiphersTests-rww.1';     install: 'CryptographySignaturesTests-rww.1';     install: 'CryptographyKeyExchangeTests-rww.1';     install: 'CryptographyArchiveTests-rww.1';     install: 'CryptographyX509Tests-rww.1'. Installer ss project: 'Cryptography';
>>> install: 'ThunkStack-rww.12';     install: 'ParrotTalk-rww.48'.
>>>
>>> On 3/28/20 11:54 AM, Levente Uzonyi wrote:
>>>
>>> Hi Robert,
>>>
>>> Please don't mess up the code just because of Pharo. They'll eventually
>>> fix DoubleWordArray, but that doesn't mean the code will work at all on
>>> Pharo.
>>>
>>> Levente
>>>
>>> On Sat, 28 Mar 2020, Robert wrote:
>>>
>>> Hey Levente,
>>>
>>> In order to get Crypto running in Pharo, I will split the
>>> HashingPluginSupport code into a separate package, which Pharo will not
>>> load, but Squeak will.
>>>
>>> k, r
>>>
>>> On 3/28/20 10:26 AM, Robert wrote:
>>>
>>> On 3/28/20 10:16 AM, Levente Uzonyi wrote:
>>>
>>> Hi Robert,
>>>
>>> No, it's not a VM bug. My analysis I sent to you earlier is correct. It's
>>> that in Pharo DoubleWordArray is a variableWordSubclass instead of a
>>> variableDoubleWordSubclass. The latter is not available in Pharo.
>>> Here's the link to the issue they created based on my analysis you sent
>>> to them: https://github.com/pharo-project/pharo/issues/5956
>>>
>>> Alright, I shared this analysis with Pharo's Discord channel. I must
>>> have missed the discussion of the #variableDoubleWordSubclass:.
>>>
>>> In theory, yes, it would be possible to rewrite SHA-512 and its related
>>> hash functions to avoid using DoubleWordArray, but I see no value in doing
>>> that.
>>>
>>> The value would be Crypto operational in Pharo. And all that follows
>>> from that (ParrotTalk, SSL, SSH, Signal, Raven). Is it possible for you
>>> to make these changes, please? I see this as more likely than Pharo
>>> accommodating #variableDoubleWordSubclass:. And other Smalltalks...
>>>
>>> k, r
>>>
>>> Pharo simply failed to properly integrate DoubleWordArray. It's there but
>>> it's disfunctional. Just wait until they fix it.
>>>
>>>
>>> Levente
>>>
>>> P.S.: This is pretty much off topic on squeak-dev.
>>>
>>> On Sat, 28 Mar 2020, Robert wrote:
>>>
>>> Hey Levente,
>>>
>>> I dug a little deeper into the Pharo issue with Cryptography and it IS a VM issue, I think. Primitive 61 is failing in DoubleWordArray>>#at:put:. Pharo seems totally uninterested in fixing this so I wanted to ask you, is there any way Cryptography can avoid reliance on DoubleWordArray?
>>>
>>> Kindly,
>>> Robert
>>>
>>>
>>> --
>>> Kindly,
>>> Robert
>>>
>>>
>>>
>>> --
>>> Kindly,
>>> Robert
>>>
>>>
> --
> Kindly,
> Robert
>
>
>