Hi all, sticking with the distribution for discussing Crypto in the
base, I am currently trying to stabilize a port of Reed-Solomon such
that FEC can be added to SecureSession. I am doing this work in
SecureSession. I just posted an update of the GenericGF class, with
the Java implementation attached here.
I need this critical code reviewed and tested. You need Cryptography and SecureSession to be included in the catalog. If you can help me with the former, I could help with the latter, if that suits you. Please let me know! Please load Cryptography(-Pharo) and SecureSession.23 for review. "ported & refactored GenericGF from the java code. This includes reindexing from 0 to 1. Having no tests, hopefully someone can give a review of this specific class. Where some tests to be developed at this scope, that would be stellar." I appreciate. --
. .. .. ^,^ best, robert
GenericGF.java (6K) Download Attachment |
The review I need is especially the case with the multiply(a, b), in
Java, or #multiply:scalar:, in Smalltalk.
Thank you! On 12/15/2015 06:30 AM, Robert Withers
wrote:
Hi all, sticking with the distribution for discussing Crypto in the base, I am currently trying to stabilize a port of Reed-Solomon such that FEC can be added to SecureSession. I am doing this work in SecureSession. I just posted an update of the GenericGF class, with the Java implementation attached here. --
. .. .. ^,^ best, robert
|
In reply to this post by Robert Withers
After a first glimpse, I noted these: 2) why using an OrderedCollection for the coefficients ? an Array is faster.1) GenericGFPoly evaluateAt: does not set the result in the loop... same for exp and log tables of GenericGF 3) GenericGF>>multiply:scalar: you changed <= size into < size but shouldn't...2015-12-15 12:30 GMT+01:00 Robert Withers <[hidden email]>:
|
Hi Nicolas,
I tried the fixes you suggested (1 and 3) and it still isn't working. I published tothe repository with these changes, though the pipeline is broken as I rewire my skull (intro frames). This will take several days to complete, I think, although progress is being made. Then I will be able to turn my full attention back to RS and Arrays for starters. Please pardon the delay, but I think frames will bring an advantage, perhaps not performance but design and flexibility. Many thanks for taking a close look at RS, robert On 12/20/2015 12:18 PM, Nicolas Cellier
wrote:
--
. .. .. ^,^ robert
|
Since GF is all about algebra and arithmetic it should be possible to write tests and check some invariants... For example, this works with SecureSession-rww.70:| gf | GenericGF xxinitialize. gf := GenericGF RS_256_A. 1 to: gf size - 1 do: [:a | self assert: (gf multiply: a scalar: (gf inverse: a)) = 1] 2015-12-21 1:19 GMT+01:00 Robert Withers <[hidden email]>:
|
Yes, the first step is to write a bunch of tests. You are testing
the math with (a * (1/a)) == 1, a good test. It's in the queue,
especially the multiply, divide and monomials testing, as you
suggest. All of it, not just the outer layer with something this
complex.
thank you, Robert On 12/21/2015 04:01 PM, Nicolas Cellier
wrote:
-- . .. ... ^,^ robert Go Panthers! |
I ought to clarify something I said that was misleading to whomever
read this. I think normally people think of "being in the queue" as
forthcoming momentarily. To myself, it means I am planning to work
on it as soon as the stack is whittled down, being the short-term
task manager. In other words, the stack is short-term, the queue is
medium-term and the pool is long-term. The stack is interruptible,
the queue is one of priority and the pool is re-entrant. I try to
frame my mind to work this way but I didn't want to raise the wrong
expectations through old miscommunication - it's common.
regards, Robert On 12/21/2015 04:07 PM, Robert Withers
wrote:
Yes, the first step is to write a bunch of tests. You are testing the math with (a * (1/a)) == 1, a good test. It's in the queue, especially the multiply, divide and monomials testing, as you suggest. All of it, not just the outer layer with something this complex. -- . .. ... ^,^ robert Go Panthers! |
Free forum by Nabble | Edit this page |