Wednesday, April 26, 2017

The Value of Hunting, Pecking, and, Thinking with Modern Tools

Team. If you are pensive and careful enough, you can construct a perfect sentence without redactions while reasoning about it with "punctuated thought". Practice this while writing a paragraph. This is a gauge for your "thought rate" while constructing computer programs. This "lesson" is directed at the "newer" developers who might be high-school students or undergraduates.

And, an old friend and software developer, whom I know, had a saying, "A fool with a tool is simply a faster fool!" A Biblical measure exists for being a "fool". You can discover that one if you like. And, admittedly, developers who are rushing others or themselves in the workplace are often the biggest "devils".

In all honesty, these paragraphs required a few redactions. I have not yet found my ideal "pensivity-rate".

Happy Coding!

Thursday, April 6, 2017

More Notes on Compression and Simultaneous Ciphering - Validating the Original Number - A Check-Sum-Remnant (CSR)

Team. Just a quick note on an alternative for of a check-sum (hashing) algorithm. When validating (verifying) the original number which we compressed and ciphered concurrently with the procedure mentioned in the previous posting, you have likely discovered that using a check-sum as part of the trailer which serves as a stop signal reduces the odds of a mistakenly accepting an incorrect file as the original "clear text". In fact, including more than one check-sum value generated by differing hashing algorithms increases this assurance that we have the proper file.

However, one of the limitations of modern hashing techniques is collisions. They will take a range of values in a large integral space and place it in a smaller one, which is "narrower", using operations such a modulus. Let us flip this approach like a pancake. Instead of placing a large integral range in a smaller one, let us place it in a larger one using a bijective and invertible function, such as f(x) = Ax + B. This would take the range [ 1, n ] and place it in [ A + B, An + B ] which is "wider", and, best of all our hashing would be collision-free. Next, we can add a stop trailer with one or more traditional hash values (check-sums) identifying the new integer (file). Next, we can use our randomized Caesar cipher for compression and ciphering. Let us call it a "Black Caesar" cipher seeing that the key which unlocks the "cipher text" is the uniquely configured random number generator(s) hidden within the algorithm for compression-decompression.


Once compressed, our remnant value, the distinct number which remains, is the check-sum from which we can both validate and extract our original file (number) with the final step being the use of the invertible function f(x) in the form f^-1(x).

This is just another planned project for a graduate student or bright undergraduate who is looking for thesis or dissertation material. Knock yourself out. The author likely will never work as a professor mentoring doctoral and masters students so he is sharing some of the projects which he has dream up over the years in the form which he intended.

The CABOOSE work is progressing in the mean times and in between times. As the author dusts off his old notes from the cobwebs in his noggin, we will make more project ideas available for those who are expressing trouble thinking of something that might be meaningful. Remember, keep it simple and widely applicable.


Happy Coding. Hunt...Peck...Think....


Post Scriptum - Before settling in and sawing a few logs early this morning, the author would like mentioning that the above procedure might be considered a lexiometric since it can examine a unique file "fingerprint" when identifying it much like modern biometrics can examine part of the human body for authentication in computing security.


Sleep Tight!