[ERROR}[5.3] building ByteArrays from HEX strings are now failing

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

[ERROR}[5.3] building ByteArrays from HEX strings are now failing

Squeak - Dev mailing list
In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r



Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Levente Uzonyi
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

> In squeak 5.3, building ByteArrays from HEX strings are now failing,
> after years of passing within the Cryptography tests.
>
> The first doIt works, while the other two are now failing in the
> #readHexFrom: method...
> PASSING
> ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'
>
> FAILING
> ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
> ByteArray fromHexString: '00000000 00000000'
>
> This is causing multiple test failures in the Cryptography test suite.
>
> tyk, r

Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Squeak - Dev mailing list

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r


Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Nicolas Cellier
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r



Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Squeak - Dev mailing list

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r



Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Squeak - Dev mailing list

Are there instructions for building Bochs, Nicolas?
tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r



Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Eliot Miranda-2
Hi Robert,


On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev <[hidden email]> wrote:



Are there instructions for building Bochs, Nicolas?


I believe that README.md points you to the Bochs build directories in most build directories.  Search for “There exist” in the README.md.  You’ll find that the most up-to-date environment is build.macos64x64/{bochsx64, bochsx86,gdbarm32,gdbarm64} as this is where I work.

What platforms are you wanting to develop on?

BTW, I am only a few days away from releasing the ARMv8 JIT. I have to put my day jobs first ;-). Soon after or as part of my testing process I shall make sure that VMMaker.oscog is fully functional on a Raspberry Pi 4.

tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r




Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Eliot Miranda-2
In reply to this post by Squeak - Dev mailing list
Hi Rob,

On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev <[hidden email]> wrote:



Are there instructions for building Bochs, Nicolas?


If you want to work on the cryptography plugins then as Nicolas suggests you can use the StackInterpreterSimulator.  You don’t need to use the JIT to work on a plugin, and the StackInterpreterSimulator is probably twice as fast as the JIT simulator (CogVMSimulator) since it isn’t simulating machine code, only interpreting bytecode.

tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r




Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Squeak - Dev mailing list

Hi Eliot,

Do I want too? Or am I obligated? Very well then, I am trying the StackVMSimulator. Should I debug down to a primitive call to a cryptoplugin? Or what should I do? I'll need to prep an image.

I will need to get another Pi.

kindly,
robert

On 3/4/20 11:43 AM, Eliot Miranda wrote:
Hi Rob,

On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev [hidden email] wrote:



Are there instructions for building Bochs, Nicolas?


If you want to work on the cryptography plugins then as Nicolas suggests you can use the StackInterpreterSimulator.  You don’t need to use the JIT to work on a plugin, and the StackInterpreterSimulator is probably twice as fast as the JIT simulator (CogVMSimulator) since it isn’t simulating machine code, only interpreting bytecode.

tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r




Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Nicolas Cellier
Hi Robert,

If I save a Squeak5.3-19431-64bit.image with the Cryptography package preloaded,
and put a simple test in a file test-crypto.st, for example:

CryptoDESTest suite run.!

Then the Simulator invocation should be something like (with my own path):

| sis |
sis := StackInterpreterSimulator newWithOptions: #(ObjectMemory Spur64BitMemoryManager).
sis desiredNumStackPages: 8.
sis assertValidExecutionPointersAtEachStep: false.
sis openOn: '/Users/nicolas/Smalltalk/Squeak/trunk/Squeak5.3-19431-64bit.image'.
sis systemAttributes
at: 2 put: '/Users/nicolas/Smalltalk/Squeak/trunk/test-crypto.st'.
sis openAsMorph; run


Le mer. 4 mars 2020 à 20:26, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Eliot,

Do I want too? Or am I obligated? Very well then, I am trying the StackVMSimulator. Should I debug down to a primitive call to a cryptoplugin? Or what should I do? I'll need to prep an image.

I will need to get another Pi.

kindly,
robert

On 3/4/20 11:43 AM, Eliot Miranda wrote:
Hi Rob,

On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev [hidden email] wrote:



Are there instructions for building Bochs, Nicolas?


If you want to work on the cryptography plugins then as Nicolas suggests you can use the StackInterpreterSimulator.  You don’t need to use the JIT to work on a plugin, and the StackInterpreterSimulator is probably twice as fast as the JIT simulator (CogVMSimulator) since it isn’t simulating machine code, only interpreting bytecode.

tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r





Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Nicolas Cellier
Never mind,
DESPlugin was not simulator friendly...
See small changes in CryptographyPlugins-nice.17 to make it so.


Le mer. 4 mars 2020 à 22:23, Nicolas Cellier <[hidden email]> a écrit :
Hi Robert,

If I save a Squeak5.3-19431-64bit.image with the Cryptography package preloaded,
and put a simple test in a file test-crypto.st, for example:

CryptoDESTest suite run.!

Then the Simulator invocation should be something like (with my own path):

| sis |
sis := StackInterpreterSimulator newWithOptions: #(ObjectMemory Spur64BitMemoryManager).
sis desiredNumStackPages: 8.
sis assertValidExecutionPointersAtEachStep: false.
sis openOn: '/Users/nicolas/Smalltalk/Squeak/trunk/Squeak5.3-19431-64bit.image'.
sis systemAttributes
at: 2 put: '/Users/nicolas/Smalltalk/Squeak/trunk/test-crypto.st'.
sis openAsMorph; run


Le mer. 4 mars 2020 à 20:26, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Eliot,

Do I want too? Or am I obligated? Very well then, I am trying the StackVMSimulator. Should I debug down to a primitive call to a cryptoplugin? Or what should I do? I'll need to prep an image.

I will need to get another Pi.

kindly,
robert

On 3/4/20 11:43 AM, Eliot Miranda wrote:
Hi Rob,

On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev [hidden email] wrote:



Are there instructions for building Bochs, Nicolas?


If you want to work on the cryptography plugins then as Nicolas suggests you can use the StackInterpreterSimulator.  You don’t need to use the JIT to work on a plugin, and the StackInterpreterSimulator is probably twice as fast as the JIT simulator (CogVMSimulator) since it isn’t simulating machine code, only interpreting bytecode.

tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r





Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Squeak - Dev mailing list
Hi Nicolas,

Are these small changes for 32-bit or 64-bit? If they are for 64-bit, could you copy the 4 plugins into a new package: Cryptographlugins64-nice.1 so we can accumulate 64-bit changes?

Kindly,
Robert


On Wed, Mar 4, 2020 at 17:18, Nicolas Cellier <[hidden email]> wrote:
Never mind,
DESPlugin was not simulator friendly...
See small changes in CryptographyPlugins-nice.17 to make it so.


Le mer. 4 mars 2020 à 22:23, Nicolas Cellier <[hidden email]> a écrit :
Hi Robert,

If I save a Squeak5.3-19431-64bit.image with the Cryptography package preloaded,
and put a simple test in a file test-crypto.st, for example:

CryptoDESTest suite run.!

Then the Simulator invocation should be something like (with my own path):

| sis |
sis := StackInterpreterSimulator newWithOptions: #(ObjectMemory Spur64BitMemoryManager).
sis desiredNumStackPages: 8.
sis assertValidExecutionPointersAtEachStep: false.
sis openOn: '/Users/nicolas/Smalltalk/Squeak/trunk/Squeak5.3-19431-64bit.image'.
sis systemAttributes
at: 2 put: '/Users/nicolas/Smalltalk/Squeak/trunk/test-crypto.st'.
sis openAsMorph; run


Le mer. 4 mars 2020 à 20:26, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Eliot,

Do I want too? Or am I obligated? Very well then, I am trying the StackVMSimulator. Should I debug down to a primitive call to a cryptoplugin? Or what should I do? I'll need to prep an image.

I will need to get another Pi.

kindly,
robert

On 3/4/20 11:43 AM, Eliot Miranda wrote:
Hi Rob,

On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev [hidden email] wrote:



Are there instructions for building Bochs, Nicolas?


If you want to work on the cryptography plugins then as Nicolas suggests you can use the StackInterpreterSimulator.  You don’t need to use the JIT to work on a plugin, and the StackInterpreterSimulator is probably twice as fast as the JIT simulator (CogVMSimulator) since it isn’t simulating machine code, only interpreting bytecode.

tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r







Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Squeak - Dev mailing list
In reply to this post by Nicolas Cellier

Hey Nicolas! All tests are Green! 226% increase in speed!

In squeak 5.3 on linux64, with the plugins. Your fixes to DESPlugin resolved the only issue with them! I am so grateful for your help. I regenerated them, using 2719, and they are published here.

https://www.dropbox.com/sh/yhv253rwrhq0q5p/AAB7PKP2KPiGpDnIyule2h_Ia?dl=0

We would welcome any of such offerings from other platforms, published here as well.

---

The current Cryptography code for 5.3 is

Cryptography-v5.3-rww.118

http://www.squeaksource.com/@qKpleED0lBkWy2gu/bmQatj-3

---

The following are two parts of two profiles of running the Cryptography tests, with and without the plugins.

WITHOUT PLUGINS
 - 2375 tallies, 2414 msec.

**Leaves**
17.3% {418ms} ThirtyTwoBitRegister>>leftRotateBy:
13.4% {324ms} ThirtyTwoBitRegister>>bitXor:
12.2% {295ms} ThirtyTwoBitRegister>>+=
7.0% {169ms} [] SystemProgressMorph(Morph)>>updateDropShadowCache
5.2% {126ms} ThirtyTwoBitRegister>>bitAnd:
3.7% {88ms} CryptoElGamalTest(TestCase)>>timeout:after:
3.4% {81ms} ThirtyTwoBitRegister>>load:
3.3% {79ms} SmallInteger>>digitLength
2.3% {55ms} GrafPort>>copyBits
2.2% {53ms} ThirtyTwoBitRegister>>bitOr:
2.1% {52ms} ByteArray>>bitXor:
1.7% {42ms} DisplayScreen(Form)>>depth
1.7% {42ms} SHA1>>hashStream:
1.6% {39ms} GrafPort>>fillRoundRect:radius:
1.4% {35ms} SHA256NonPrimitive>>expandedBlock:
1.4% {35ms} ThirtyTwoBitRegister>>bitShift:
1.3% {33ms} ThirtyTwoBitRegister class>>new
1.2% {28ms} Point>>=

**Memory**
    old            +16,777,216 bytes
    young        -17,706,008 bytes
    used        -928,792 bytes
    free        +17,706,008 bytes

**GCs**
    full            0 totalling 0 ms (0% uptime)
    incr            227 totalling 44 ms (1.8% uptime), avg 0.2 ms
    tenures        315 (avg 0 GCs/tenure)
    root table    0 overflows

WITH PLUGINS
- 1056 tallies, 1073 msec.

**Leaves**
16.4% {176ms} [] SystemProgressMorph(Morph)>>updateDropShadowCache
7.4% {79ms} CryptoElGamalTest(TestCase)>>timeout:after:
6.2% {66ms} Point>>=
5.4% {58ms} ByteArray>>bitXor:
4.5% {48ms} DisplayScreen(Form)>>depth
3.9% {42ms} GrafPort>>fillRoundRect:radius:
3.8% {41ms} GrafPort(BitBlt)>>basicDisplayString:from:to:at:strikeFont:kern:
3.4% {37ms} SmallInteger(Number)>>isZero
3.4% {37ms} SHA1>>hashStream:
3.2% {35ms} GrafPort>>copyBits
2.6% {27ms} SHA1>>finalHash
2.5% {26ms} ThirtyTwoBitRegister>>byteAt:
2.4% {25ms} SmallInteger(Number)>>negative
2.2% {23ms} SystemProgressMorph(Morph)>>setProperty:toValue:
2.1% {22ms} SmallInteger>>digitLength
1.8% {19ms} SHA256WithPrimitive(SHA256)>>hashStream:
1.8% {19ms} OrderedCollection>>do:
1.6% {17ms} ThirtyTwoBitRegister>>bitXor:
1.5% {16ms} LargePositiveInteger(Integer)>>asByteArrayOfSize:

**Memory**
    old            +16,777,216 bytes
    young        -20,673,880 bytes
    used        -3,896,664 bytes
    free        +20,673,880 bytes

**GCs**
    full            0 totalling 0 ms (0% uptime)
    incr            53 totalling 12 ms (1.1% uptime), avg 0.2 ms
    tenures        0
    root table    0 overflows

In comparing the times, 2414 / 1073 = 226% increase in speed of running the profile. That's pretty fast! What are my #tinyBenchmarks?

tinyBenchmarks =  '2,500,000,000 bytecodes/sec; 180,000,000 sends/sec'.

Thanks for all the help. You all rock!

K, r

On 3/4/20 4:23 PM, Nicolas Cellier wrote:
Hi Robert,

If I save a Squeak5.3-19431-64bit.image with the Cryptography package preloaded,
and put a simple test in a file test-crypto.st, for example:

CryptoDESTest suite run.!

Then the Simulator invocation should be something like (with my own path):

| sis |
sis := StackInterpreterSimulator newWithOptions: #(ObjectMemory Spur64BitMemoryManager).
sis desiredNumStackPages: 8.
sis assertValidExecutionPointersAtEachStep: false.
sis openOn: '/Users/nicolas/Smalltalk/Squeak/trunk/Squeak5.3-19431-64bit.image'.
sis systemAttributes
at: 2 put: '/Users/nicolas/Smalltalk/Squeak/trunk/test-crypto.st'.
sis openAsMorph; run


Le mer. 4 mars 2020 à 20:26, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Eliot,

Do I want too? Or am I obligated? Very well then, I am trying the StackVMSimulator. Should I debug down to a primitive call to a cryptoplugin? Or what should I do? I'll need to prep an image.

I will need to get another Pi.

kindly,
robert

On 3/4/20 11:43 AM, Eliot Miranda wrote:
Hi Rob,

On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev [hidden email] wrote:



Are there instructions for building Bochs, Nicolas?


If you want to work on the cryptography plugins then as Nicolas suggests you can use the StackInterpreterSimulator.  You don’t need to use the JIT to work on a plugin, and the StackInterpreterSimulator is probably twice as fast as the JIT simulator (CogVMSimulator) since it isn’t simulating machine code, only interpreting bytecode.

tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r





Reply | Threaded
Open this post in threaded view
|

Re: [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Squeak - Dev mailing list

Here is the Smalltalk listLoadedModules!!

#('MD5Plugin CryptographyPlugins-eem.14 (e)'
'DESPlugin CryptographyPlugins-nice.17 (e)'
'SHA256Plugin CryptographyPlugins-eem.14 (e)'
'DSAPrims CryptographyPlugins-eem.14 (i)'
'UUIDPlugin VMMaker.oscog-eem.2721 (e)'
'ZipPlugin VMMaker.oscog-eem.2721 (i)'
'B2DPlugin VMMaker.oscog-eem.2721 (i)'
'UnixOSProcessPlugin VMConstruction-Plugins-OSProcessPlugin.oscog-dtl.67 (e)'
'BitBltPlugin VMMaker.oscog-eem.2721 (i)'
'SocketPlugin VMMaker.oscog-eem.2721 (i)'
'CroquetPlugin VMMaker.oscog-eem.2721 (i)'
'FilePlugin VMMaker.oscog-eem.2721 (i)'
'LargeIntegers v2.0 VMMaker.oscog-eem.2721 (i)'
'MiscPrimitivePlugin VMMaker.oscog-eem.2721 (i)'
'SecurityPlugin VMMaker.oscog-eem.2721 (i)')

On 3/5/20 11:17 AM, Robert wrote:

Hey Nicolas! All tests are Green! 226% increase in speed!

In squeak 5.3 on linux64, with the plugins. Your fixes to DESPlugin resolved the only issue with them! I am so grateful for your help. I regenerated them, using 2719, and they are published here.

https://www.dropbox.com/sh/yhv253rwrhq0q5p/AAB7PKP2KPiGpDnIyule2h_Ia?dl=0

We would welcome any of such offerings from other platforms, published here as well.

---

The current Cryptography code for 5.3 is

Cryptography-v5.3-rww.118

http://www.squeaksource.com/@qKpleED0lBkWy2gu/bmQatj-3

---

The following are two parts of two profiles of running the Cryptography tests, with and without the plugins.

WITHOUT PLUGINS
 - 2375 tallies, 2414 msec.

**Leaves**
17.3% {418ms} ThirtyTwoBitRegister>>leftRotateBy:
13.4% {324ms} ThirtyTwoBitRegister>>bitXor:
12.2% {295ms} ThirtyTwoBitRegister>>+=
7.0% {169ms} [] SystemProgressMorph(Morph)>>updateDropShadowCache
5.2% {126ms} ThirtyTwoBitRegister>>bitAnd:
3.7% {88ms} CryptoElGamalTest(TestCase)>>timeout:after:
3.4% {81ms} ThirtyTwoBitRegister>>load:
3.3% {79ms} SmallInteger>>digitLength
2.3% {55ms} GrafPort>>copyBits
2.2% {53ms} ThirtyTwoBitRegister>>bitOr:
2.1% {52ms} ByteArray>>bitXor:
1.7% {42ms} DisplayScreen(Form)>>depth
1.7% {42ms} SHA1>>hashStream:
1.6% {39ms} GrafPort>>fillRoundRect:radius:
1.4% {35ms} SHA256NonPrimitive>>expandedBlock:
1.4% {35ms} ThirtyTwoBitRegister>>bitShift:
1.3% {33ms} ThirtyTwoBitRegister class>>new
1.2% {28ms} Point>>=

**Memory**
    old            +16,777,216 bytes
    young        -17,706,008 bytes
    used        -928,792 bytes
    free        +17,706,008 bytes

**GCs**
    full            0 totalling 0 ms (0% uptime)
    incr            227 totalling 44 ms (1.8% uptime), avg 0.2 ms
    tenures        315 (avg 0 GCs/tenure)
    root table    0 overflows

WITH PLUGINS
- 1056 tallies, 1073 msec.

**Leaves**
16.4% {176ms} [] SystemProgressMorph(Morph)>>updateDropShadowCache
7.4% {79ms} CryptoElGamalTest(TestCase)>>timeout:after:
6.2% {66ms} Point>>=
5.4% {58ms} ByteArray>>bitXor:
4.5% {48ms} DisplayScreen(Form)>>depth
3.9% {42ms} GrafPort>>fillRoundRect:radius:
3.8% {41ms} GrafPort(BitBlt)>>basicDisplayString:from:to:at:strikeFont:kern:
3.4% {37ms} SmallInteger(Number)>>isZero
3.4% {37ms} SHA1>>hashStream:
3.2% {35ms} GrafPort>>copyBits
2.6% {27ms} SHA1>>finalHash
2.5% {26ms} ThirtyTwoBitRegister>>byteAt:
2.4% {25ms} SmallInteger(Number)>>negative
2.2% {23ms} SystemProgressMorph(Morph)>>setProperty:toValue:
2.1% {22ms} SmallInteger>>digitLength
1.8% {19ms} SHA256WithPrimitive(SHA256)>>hashStream:
1.8% {19ms} OrderedCollection>>do:
1.6% {17ms} ThirtyTwoBitRegister>>bitXor:
1.5% {16ms} LargePositiveInteger(Integer)>>asByteArrayOfSize:

**Memory**
    old            +16,777,216 bytes
    young        -20,673,880 bytes
    used        -3,896,664 bytes
    free        +20,673,880 bytes

**GCs**
    full            0 totalling 0 ms (0% uptime)
    incr            53 totalling 12 ms (1.1% uptime), avg 0.2 ms
    tenures        0
    root table    0 overflows

In comparing the times, 2414 / 1073 = 226% increase in speed of running the profile. That's pretty fast! What are my #tinyBenchmarks?

tinyBenchmarks =  '2,500,000,000 bytecodes/sec; 180,000,000 sends/sec'.

Thanks for all the help. You all rock!

K, r

On 3/4/20 4:23 PM, Nicolas Cellier wrote:
Hi Robert,

If I save a Squeak5.3-19431-64bit.image with the Cryptography package preloaded,
and put a simple test in a file test-crypto.st, for example:

CryptoDESTest suite run.!

Then the Simulator invocation should be something like (with my own path):

| sis |
sis := StackInterpreterSimulator newWithOptions: #(ObjectMemory Spur64BitMemoryManager).
sis desiredNumStackPages: 8.
sis assertValidExecutionPointersAtEachStep: false.
sis openOn: '/Users/nicolas/Smalltalk/Squeak/trunk/Squeak5.3-19431-64bit.image'.
sis systemAttributes
at: 2 put: '/Users/nicolas/Smalltalk/Squeak/trunk/test-crypto.st'.
sis openAsMorph; run


Le mer. 4 mars 2020 à 20:26, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Eliot,

Do I want too? Or am I obligated? Very well then, I am trying the StackVMSimulator. Should I debug down to a primitive call to a cryptoplugin? Or what should I do? I'll need to prep an image.

I will need to get another Pi.

kindly,
robert

On 3/4/20 11:43 AM, Eliot Miranda wrote:
Hi Rob,

On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev [hidden email] wrote:



Are there instructions for building Bochs, Nicolas?


If you want to work on the cryptography plugins then as Nicolas suggests you can use the StackInterpreterSimulator.  You don’t need to use the JIT to work on a plugin, and the StackInterpreterSimulator is probably twice as fast as the JIT simulator (CogVMSimulator) since it isn’t simulating machine code, only interpreting bytecode.

tyk, r

On 3/4/20 10:50 AM, Robert wrote:

Hi yo hehr, Nicolas,

I tried the first block, in the simulation window, but it was missing BochsIA64 or some. I then ran the third block, a StackVM as you suggested. I ran it against my Cryptography repair image, rabbit, and very slooowly reselected the tests and ran them, in proogrress...

We sure would be appreciating etwas help, as if there was a little angel out there who offers plugin repair and SHA512 code/plugin. Praying for an angel!

tyk, r

On 3/4/20 8:50 AM, Nicolas Cellier wrote:
Hi Robert,
normally, most of VM/plugins development should take place with the VM-simulation from within the SpurVMMaker.image  (unless the plugin extensively call C functions from external libraries).
You will find a Worksapce with some simulation examples.
Then you might detect the error from within Smalltalk with debuggers etc...
I recommend simulating a Stack VM for a beginning (or you'll need to compile the Bochs plugin, which is currently difficult on linux...).

Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <[hidden email]> a écrit :

Hi Levente,

Yes, I see what you are saying. Without the Crypto plugins, all the Crypto tests run green.

With the Crypto plugins, things get messed up. ByteArray class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS the vm (called from CryptoRC2Test>>#testARC2). Additionally, the following two tests fail: CryptoDESTest>>#testDESCBC and CryptoDESTest>>#testTripleDESCBC.

The SEG-FAULT comes from this code:

KeyHolder new
    data: KeyHolderData new;
    encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
    key

tyk, r

On 3/4/20 8:10 AM, Levente Uzonyi wrote:
Hi Robert,

I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
image on 64-bit linux using the stock VM (no Cryptography plugins), and
all the tests are green.
ByteArray class >> #fromHexString: and methods sent by it were last
modified in 2010, and they do not accept non-hexadecimal digits in the
input string.

Levente


On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:

In squeak 5.3, building ByteArrays from HEX strings are now failing,
after years of passing within the Cryptography tests.

The first doIt works, while the other two are now failing in the
#readHexFrom: method...
PASSING
ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'

FAILING
ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
ByteArray fromHexString: '00000000 00000000'

This is causing multiple test failures in the Cryptography test suite.

tyk, r