|
|
|||||||||
|
|||||||||
| |||||||||
|
|
|
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
|
|
Stop making mediocre tutorials.The best tutorials are video! Camtasia Studio makes it easy to create engaging, buzz-building screen videos at any size, in any popular format. Download the free trial!
|
|
#1
|
|||
|
|||
|
Crypto Algorithm Question - None equal xors
hi @ all
i'm only 16 years old and i'm from austria so i don't speak englisch very well i working on a completely new hash algorthm based on a 256*256 bit const block (the size of the block isn't really importent) but is isn't only a random block! there is a rule for the data: each row xor another row mustn't equal to another row examlpe: row1 ^ row2 != row9 ^ row198 ^ row 226 all xor summs must be different!!! i need a function which generate such a data block... i have already programmed a function for a blocksize of 16*16bit but witch my funktion i cannot create a block of that big size (256*256) please, can somebody help me! thank you all! |
|
#2
|
||||
|
||||
|
Why can't you expand your 16x16 bit function to a 256x256 bit function? Could you at least break the input up into 16x16 bit blocks?
__________________
- "Cryptographically secure linear feedback shift register based stream ciphers" -- a phrase that'll get any party started. - Why know the ordinary when you can understand the extraordinary? - Sponsor my caffeine addiction! (36.70 USD recieved so far -- Latest donor: Mark Foxvog) |
|
#3
|
|||
|
|||
|
Why I can't expand my function to 256*256Bit
Quote:
I cannot break the 256*256Bit block into 16*16 Blocks because then the functions will be breakable in 2^16 instand of 2^256. I used randomnummbers and checked all possible 2^16 values and so i was able to generate a 16*16Bit block. If i use randomnummber the test result was true in about 30% of all the checks. For a 256Bit block i cannot check all 2^256 values. Thats the main problem... i need to find a function witch can generate a 256Bit*256Bit Block with 100% (instand of 30% if i use randoms). Here are some examples for 16*16Bit Blocks (sorted, but this doesn't matter) Blocknummer: 1 0: 3145 0x0c49 0000110001001001 1: 4593 0x11f1 0001000111110001 2: 6792 0x1a88 0001101010001000 3: 9495 0x2517 0010010100010111 4: 13143 0x3357 0011001101010111 5: 18795 0x496b 0100100101101011 6: 20428 0x4fcc 0100111111001100 7: 20849 0x5171 0101000101110001 8: 39580 0x9a9c 1001101010011100 9: 42783 0xa71f 1010011100011111 10: 47870 0xbafe 1011101011111110 11: 49273 0xc079 1100000001111001 12: 52970 0xceea 1100111011101010 13: 60724 0xed34 1110110100110100 14: 62293 0xf355 1111001101010101 15: 63279 0xf72f 1111011100101111 Blocknummer: 2 0: 4148 0x1034 0001000000110100 1: 5830 0x16c6 0001011011000110 2: 6629 0x19e5 0001100111100101 3: 17480 0x4448 0100010001001000 4: 20014 0x4e2e 0100111000101110 5: 20510 0x501e 0101000000011110 6: 21973 0x55d5 0101010111010101 7: 37447 0x9247 1001001001000111 8: 37763 0x9383 1001001110000011 9: 41044 0xa054 1010000001010100 10: 45545 0xb1e9 1011000111101001 11: 51474 0xc912 1100100100010010 12: 55223 0xd7b7 1101011110110111 13: 57592 0xe0f8 1110000011111000 14: 59549 0xe89d 1110100010011101 15: 64003 0xfa03 1111101000000011 Blocknummer: 3 0: 3076 0x0c04 0000110000000100 1: 3606 0x0e16 0000111000010110 2: 6244 0x1864 0001100001100100 3: 18600 0x48a8 0100100010101000 4: 26547 0x67b3 0110011110110011 5: 29886 0x74be 0111010010111110 6: 32298 0x7e2a 0111111000101010 7: 36989 0x907d 1001000001111101 8: 37360 0x91f0 1001000111110000 9: 37632 0x9300 1001001100000000 10: 50312 0xc488 1100010010001000 11: 57024 0xdec0 1101111011000000 12: 57075 0xdef3 1101111011110011 13: 60051 0xea93 1110101010010011 14: 61974 0xf216 1111001000010110 15: 63172 0xf6c4 1111011011000100 Blocknummer: 4 0: 3001 0x0bb9 0000101110111001 1: 9083 0x237b 0010001101111011 2: 9182 0x23de 0010001111011110 3: 9496 0x2518 0010010100011000 4: 13490 0x34b2 0011010010110010 5: 15120 0x3b10 0011101100010000 6: 19391 0x4bbf 0100101110111111 7: 22457 0x57b9 0101011110111001 8: 24218 0x5e9a 0101111010011010 9: 36211 0x8d73 1000110101110011 10: 38104 0x94d8 1001010011011000 11: 45667 0xb263 1011001001100011 12: 48378 0xbcfa 1011110011111010 13: 52880 0xce90 1100111010010000 14: 65300 0xff14 1111111100010100 15: 65512 0xffe8 1111111111101000 Blocknummer: 5 0: 6790 0x1a86 0001101010000110 1: 10405 0x28a5 0010100010100101 2: 10971 0x2adb 0010101011011011 3: 13543 0x34e7 0011010011100111 4: 17572 0x44a4 0100010010100100 5: 18329 0x4799 0100011110011001 6: 26566 0x67c6 0110011111000110 7: 26808 0x68b8 0110100010111000 8: 33416 0x8288 1000001010001000 9: 39008 0x9860 1001100001100000 10: 42466 0xa5e2 1010010111100010 11: 43856 0xab50 1010101101010000 12: 46392 0xb538 1011010100111000 13: 48524 0xbd8c 1011110110001100 14: 58750 0xe57e 1110010101111110 15: 59587 0xe8c3 1110100011000011 Blocknummer: 6 0: 2289 0x08f1 0000100011110001 1: 2331 0x091b 0000100100011011 2: 3018 0x0bca 0000101111001010 3: 10273 0x2821 0010100000100001 4: 15360 0x3c00 0011110000000000 5: 20283 0x4f3b 0100111100111011 6: 23996 0x5dbc 0101110110111100 7: 37719 0x9357 1001001101010111 8: 44756 0xaed4 1010111011010100 9: 45703 0xb287 1011001010000111 10: 46645 0xb635 1011011000110101 11: 51397 0xc8c5 1100100011000101 12: 54317 0xd42d 1101010000101101 13: 54356 0xd454 1101010001010100 14: 55894 0xda56 1101101001010110 15: 65123 0xfe63 1111111001100011 Blocknummer: 7 0: 774 0x0306 0000001100000110 1: 3977 0x0f89 0000111110001001 2: 13865 0x3629 0011011000101001 3: 16060 0x3ebc 0011111010111100 4: 27605 0x6bd5 0110101111010101 5: 33380 0x8264 1000001001100100 6: 34262 0x85d6 1000010111010110 7: 37346 0x91e2 1001000111100010 8: 49863 0xc2c7 1100001011000111 9: 49882 0xc2da 1100001011011010 10: 51128 0xc7b8 1100011110111000 11: 52284 0xcc3c 1100110000111100 12: 52567 0xcd57 1100110101010111 13: 54747 0xd5db 1101010111011011 14: 56771 0xddc3 1101110111000011 15: 64516 0xfc04 1111110000000100 Blocknummer: 8 0: 2224 0x08b0 0000100010110000 1: 8264 0x2048 0010000001001000 2: 15929 0x3e39 0011111000111001 3: 19697 0x4cf1 0100110011110001 4: 21254 0x5306 0101001100000110 5: 25263 0x62af 0110001010101111 6: 26646 0x6816 0110100000010110 7: 33887 0x845f 1000010001011111 8: 41423 0xa1cf 1010000111001111 9: 42440 0xa5c8 1010010111001000 10: 50577 0xc591 1100010110010001 11: 53792 0xd220 1101001000100000 12: 58184 0xe348 1110001101001000 13: 58306 0xe3c2 1110001111000010 14: 60242 0xeb52 1110101101010010 15: 62562 0xf462 1111010001100010 Blocknummer: 9 0: 6164 0x1814 0001100000010100 1: 18095 0x46af 0100011010101111 2: 22120 0x5668 0101011001101000 3: 24905 0x6149 0110000101001001 4: 26140 0x661c 0110011000011100 5: 26671 0x682f 0110100000101111 6: 30331 0x767b 0111011001111011 7: 31735 0x7bf7 0111101111110111 8: 39841 0x9ba1 1001101110100001 9: 40081 0x9c91 1001110010010001 10: 43767 0xaaf7 1010101011110111 11: 44048 0xac10 1010110000010000 12: 51022 0xc74e 1100011101001110 13: 53968 0xd2d0 1101001011010000 14: 57350 0xe006 1110000000000110 15: 62834 0xf572 1111010101110010 Blocknummer: 10 0: 2348 0x092c 0000100100101100 1: 2400 0x0960 0000100101100000 2: 12888 0x3258 0011001001011000 3: 19945 0x4de9 0100110111101001 4: 24121 0x5e39 0101111000111001 5: 26442 0x674a 0110011101001010 6: 41172 0xa0d4 1010000011010100 7: 41477 0xa205 1010001000000101 8: 46022 0xb3c6 1011001111000110 9: 46461 0xb57d 1011010101111101 10: 52499 0xcd13 1100110100010011 11: 59451 0xe83b 1110100000111011 12: 60519 0xec67 1110110001100111 13: 62472 0xf408 1111010000001000 14: 62879 0xf59f 1111010110011111 15: 65407 0xff7f 1111111101111111 |
|
#4
|
|||
|
|||
|
1. Randomly generate your first two rows
2. XOR them together 3. Add the result to a list of XORs 4. Randomly Generate the 3rd, 4th, 5th etc row and check it doesn't match a result in the list 5. XOR this row with all the preceeding ones and add the results to the list Using this method you'll get a list of roughly 32768 rows to check against. 2^256 is a lot bigger number, so it should be pretty efficient...
__________________
|
![]() |
| Viewing: Dev Shed Forums > System Administration > Security and Cryptography > Crypto Algorithm Question - None equal xors |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|