| Welcome to Crypto. We hope you enjoy your visit. You're currently viewing our forum as a guest. This means you are limited to certain areas of the board and there are some features you can't use. If you join our community, you'll be able to access member-only sections, and use many member-only features such as customizing your profile, sending personal messages, and voting in polls. Registration is simple, fast, and completely free. Join our community! If you're already a member please log in to your account to access all of our features: |
| Chain Addition (Offshoot of Pseduo-One Time Pads Discussions) | |
|---|---|
| Tweet Topic Started: Feb 20 2014, 02:20 AM (210 Views) | |
| JoeJoeSchmidt | Feb 20 2014, 02:20 AM Post #1 |
|
Just registered
![]() ![]() ![]()
|
I have two questions about chain addition which is raised in several discussions, which are about pseudo one time pads and hash functions From what've read, I assume chain addition goes like this (I know nothing of hashing) MOD 10 1115 <starting key ------ 2267 4831 2143... etc. (I've gathered that you add the last digit of the preceding line to the first digit of the new line to make the last digit of the new line.) I know that this is a pseudo-random stream of some type I have heard a few things about it which I don't understand 1) what is a "good" number or series of numbers to start with, because many sites say there are many bad or more predictable starting inputs 2) if you XOR a bunch of these together, are they a better quality random stream? |
![]() |
|
| fiziwig | Feb 20 2014, 06:30 AM Post #2 |
|
Elite member
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
(On edit: Don't confuse chain addition with an addition chain. I don't believe that the kind of chain addition I describe here is used in serious cryptography. Also, don't confuse it with hash chains, which, again, is quite different.) Typically, chain addition makes the list of digits one digit shorter each time it is applied: start with 12345 Add 1+2 = 3 (The new sum to carry forward) Add 3+3 = 6 (The new sum to carry forward) Add 6+4 = 0 Add 0+5 = 5 So 12345 -> 3605 Notice that the sum is carried forward each step of the way. Repeat: Add 3+6 = 9 Add 9+0 = 9 Add 9+5 = 4 So 3605 -> 994 Repeat: Add 9+9 = 8 Add 8+4 = 2 So 994 -> 82 Repeat: Add 8+2 = 0 So: 12345 -> 3605 -> 994 -> 82 -> 0 In order to prevent the number from getting shorter each time you can either copy the last digit to the front of the number before beginning, or tack some agreed-upon digit to the front each time: 12345 copy the last digit to the front giving 512345 Then chain add: 5+1 = 6 6+2 = 8 8+3 = 1 1+4 = 5 5+5 = 0 So: 12345 -> 68150 and it stays the same length. Or 12345 with 8 (the agreed digit) tacked on the front each time: 812345 8+1=9 9+2=1 1+3=4 4+4=8 8+5=3 So: 12345 -> 91483 and it stays the same length. Edited by fiziwig, Feb 20 2014, 06:41 AM.
|
![]() |
|
| 1 user reading this topic (1 Guest and 0 Anonymous) | |
| « Previous Topic · General · Next Topic » |





![]](http://z2.ifrm.com/static/1/pip_r.png)



7:28 PM Jul 11