Hash Constant C Determinants leading to collisionfree

Similar documents
CIS-331 Fall 2013 Exam 1 Name: Total of 120 Points Version 1

CIS-331 Exam 2 Fall 2015 Total of 105 Points Version 1

CIS-331 Fall 2014 Exam 1 Name: Total of 109 Points Version 1

CIS-331 Spring 2016 Exam 1 Name: Total of 109 Points Version 1

CIS-331 Exam 2 Fall 2014 Total of 105 Points. Version 1

4. Specifications and Additional Information

CIS-331 Exam 2 Spring 2016 Total of 110 Points Version 1

CIS-331 Final Exam Spring 2015 Total of 115 Points. Version 1

CIS-331 Final Exam Spring 2018 Total of 120 Points. Version 1

The cache is 4-way set associative, with 4-byte blocks, and 16 total lines

CypherMatrix as a cryptographic Data Generator Ernst Erich Schnoor, Munich

APPLESHARE PC UPDATE INTERNATIONAL SUPPORT IN APPLESHARE PC

Gateway Ascii Command Protocol

Triple DES and AES 192/256 Implementation Notes

ECHO Process Instrumentation, Inc. Modbus RS485 Module. Operating Instructions. Version 1.0 June 2010

C1098 JPEG Module User Manual

July Registration of a Cyrillic Character Set. Status of this Memo

ZN-DN312XE-M Quick User Guide

DBK24. Isolated Digital Output Chassis. Overview

CIS-331 Final Exam Spring 2016 Total of 120 Points. Version 1

6.1 Font Types. Font Types

CDR File Information. Comments Direct PCM

Fundamentals of Cryptography

Digital Lighting Systems, Inc.

RS 232 PINOUTS. 1. We use RJ12 for all of our RS232 interfaces (Link-2-Modbus & Link-2-PC- Serial/RS232). The diagram below shows our pin out.

6. Specifications & Additional Information

Digital Lighting Systems, Inc. CD400-DMX DMX512 Four Channel Dimmer and Switch module

First Data EMV Test Card Set. Version 2.00

CIS-331 Final Exam Fall 2015 Total of 120 Points. Version 1

One subset of FEAL, called FEAL-NX, is N round FEAL using a 128-bit key without key parity.

Acquirer JCB EMV Test Card Set

Enhanced Play Fair Cipher

First Data EMV Test Card Set. Version 1.30

6.1 Combinational Circuits. George Boole ( ) Claude Shannon ( )

B: Modbus Map and Retrieving Logs

First Data Dual Interface EMV Test Card Set. Version 1.20

ENGI 8868/9877 Computer and Communications Security III. BLOCK CIPHERS. Symmetric Key Cryptography. insecure channel

CMSC 313 Lecture 03 Multiple-byte data big-endian vs little-endian sign extension Multiplication and division Floating point formats Character Codes

ETSI TS V ( )

TEST DVD-VIDEO/ DVD-ROM For Checking DVD Players, DVD Recorders and DVD Drives TDH-940

Secret Key Systems (block encoding) Encrypting a small block of text (say 64 bits) General considerations for cipher design:

Here is a C function that will print a selected block of bytes from such a memory block, using an array-based view of the necessary logic:

Technical Specification. Third Party Control Protocol. AV Revolution

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 02, FALL 2012

Acquirer JCB Dual Interface EMV Test Card Set

UNH-IOL MIPI Alliance Test Program

TLS 1.2 Protocol Execution Transcript

First Data DCC Test Card Set. Version 1.30

Systems/DBG Debugger Version 2.20

SPAREPARTSCATALOG: CONNECTORS SPARE CONNECTORS KTM ART.-NR.: 3CM EN

Digital Lighting Systems, Inc.

ASCII Code - The extended ASCII table

2-Type Series Pressurized Closures

Digital Lighting Systems, Inc. PD405-DMX. Four Channel Dimmer and Switch Packs. DMX512 compatible. PD405-DMX-24DC DMX512 4 x 5 Amps Dimmer Pack

SPARE CONNECTORS KTM 2014

VM7000A PAPERLESS RECORDER COMMUNICATION FUNCTION OPERATION MANUAL

CSCI 454/554 Computer and Network Security. Topic 3.1 Secret Key Cryptography Algorithms

KNX TinySerial 810. Communication Protocol. WEINZIERL ENGINEERING GmbH

AIT 682: Network and Systems Security

Research Article A Student Information Management System Based on Fingerprint Identification and Data Security Transmission

VM7000A PAPERLESS RECORDER COMMUNICATION FUNCTION OPERATION MANUAL

Communications guide. Line Distance Protection System * F1* GE Digital Energy. Title page

PCL ISO 8859/5 Latin/Cyrillic

ID: Cookbook: urldownload.jbs Time: 23:23:00 Date: 11/01/2018 Version:

KRAMER ELECTRONICS LTD. USER MANUAL MODEL: VA-8xl 8-Channel Balanced Stereo Audio Amplifier. P/N: Rev 1

HC900 Hybrid Controller Communications User Guide

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 02, SPRING 2013

EDR Report Information

Digital Projector X30N/X35N

USB-ASC232. ASCII RS-232 Controlled USB Keyboard and Mouse Cable. User Manual

PCL Greek-8 - Code Page 869

Register Map: Ecoflair Indirect Air Economizer

ID: Cookbook: browseurl.jbs Time: 19:37:50 Date: 11/05/2018 Version:

OOstaExcel.ir. J. Abbasi Syooki. HTML Number. Device Control 1 (oft. XON) Device Control 3 (oft. Negative Acknowledgement

460 Presentation Audio Mixer

Implementation of the AES as a Hash Function for Confirming the Identity of Software on a Computer System

HC900 Process Controller Communications User Guide

Stream Ciphers and Block Ciphers

CS 537: Introduction to Operating Systems Fall 2015: Midterm Exam #1

Here is a C function that will print a selected block of bytes from such a memory block, using an array-based view of the necessary logic:

Medium Term Plan Year 4

PowerPrism16 Light Controllers Instruction Guide

300XP. Instruction Manual. Portable Thermal Printer EN FR IT DE ES

Scan Results - ( Essentials - Onsharp )

10. RS-232C communication

Interac USA Interoperability EMV Test Card Set

No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation.

CS145: INTRODUCTION TO DATA MINING

Libero. Integrated Design Environment (IDE) Frequently Asked Questions

Intended status: Informational Expires: January 21, 2016 CRYPTO-PRO V. Podobaev FACTOR-TS I. Ustinov Cryptocom July 20, 2015

VT420 Video Terminal Programmer Reference Manual Update

EDITION : 02/01/07 DN

ENGINEERING COMMITTEE Digital Video Subcommittee AMERICAN NATIONAL STANDARD ANIS/SCTE

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 02, FALL 2012

A Specification for Rijndael, the AES Algorithm

LynX-10 Legacy Protocol Specification Version 1.01

Scream: a software-efficient stream cipher

Tutorial & Demo! image and audio transmission on wireless sensor networks!

[MS-FSSHTTPD]: Binary Data Format for File Synchronization via SOAP. Intellectual Property Rights Notice for Open Specifications Documentation

egov & PKI By: Alaa Eldin Mahmoud Aly YOUR LOGO

Transcription:

Hash Constant C Determinants leading to collisionfree (Ernst Erich Schnoor) eschnoor@multi-matrix.de Addendum to article: Core of the CypherMatrix Method http://www.telecypher.net/corecyph.htm#z6 Object of hash calculation is the start sequence of cryptographic operations with 36 to 64 bytes. CypherMatrix method computes with a first One-way function the position weighted hash value H k of the start sequence by following formula: n H k = (a i + 1) * (C + p i) i = 1 Calculation of H k is performed under these conditions: 1 <= (a i + 1) <= 256 (ASCII-values) = length of the start sequence 1 <= i <= i, a i, p i = integer In order to avoid resulting to factor zero for ASCII value (0) the single values of (a i ) are incrased by (+1). The position factor (C + pi) determined to weight each single character with its position in the sequence includes the hash constant (C k ). The constant has the task to prevent collisions. The following graph illutrates the connections:

The start sequence is a series of numbers (0 255) denoted by ASCII values. On the other hand the hash value H k is a sum of multiplications (ai + 1) * (C + pi). A collision occurs when despite of changing characters inside a start sequence (b i for a i ) and (b j for a j ) an equal hash value results. H k (i) = H k (j) If a single character only is exchanged at same position (p i = p j ) then the result H k has to change as well, because b i is different from a i. Of course, a collision is not possible at this point. To get a collision in case of exchanging characters within the sequence the sum of the new partial products have to equal the sum of the previously partial products. When exchanging atleast two characters the following conditions will be effective: a1 *(C+p1) + a2 *(C+p2) = b1 *(C+p1) + b2 *(C+p2) a1 *(C+p1) - b1 *(C+p1) = b2 *(C+p2) - a2 *(C+p2) (C+p1) * (a1 - b1) = (C+p2) * b2 - a2) (C+p1) (b2 a2) Quotient: --------- = ----------- = Q (C+p2) (a1 - b1) (b2 a2) = (a1 b1) * Q For the "changing quotient"- here denoted with Q three cases are relevant: Q > 1 Q = 1 Q < 1 If Q=1 then (C+p1) and (C+p2) must be equal as well. Because exchanging of characters taking place at the same position (p) in the sequence a collision is excluded. If Q>1 or Q<1 then (b2-a2) and (a1-b1) have to be different as well. The question arise: Is it important single ASCII values (a1, a2, b1, and b2) beeing integer values and by this their differences as well. In a minimum / maximum analysis of the changing quotient Q and a start sequence ( = 64 bytes) and the hash constant C k = 3968 we get the interdependences as follows: min: norm max: (C + 1)... (C + i)... (C + 64) ----------- --------- ------------ = <1... 1... >1 (C + 64)... (C + i)... (C + 1) 3968 +1... 3968+ i... 3698 + 64 -------------- ---------- -------------- = 0,98437... 1... 1,01587 3968 + 64... 3968+ i... 3968 + 1 Q min = 0,98437 Q max = 1,01587

The ASCII values (a1, a2, b1 and b2) are integer values and consequently their differences are integer too. But multiplikation (a1 - b1) * Q (with Q = 0,98487... 1,01587) in the sector p i = 1 to 64 () and a i = 1 to 356 leads to no results (except Q=1) which are integer and are inside the calculated min-max sector. To avoid collisions the changing quotient C + p1 Q = ---------- C + p2 has to be major than Q min but minor than Q max. That is the case in following comparisons: C + -------- = ------- C + 1-1 Dissolution to C develops as follows: C + = * (C + 1) -------------- - 1 C = C* + ----------- - 1 C = C* ------ + ----- - 1-1 C* C - ----- = ----- - 1-1 C * (1- ----- ) = ------ - -1-1 ( ------ ) - - 1 C = --------------- 1 - ( ----- ) - 1 With transformation: C k = (( / (-1)-)) / (1-( / (-1)) C k = * ( - 2) = 1/2 * sqrt(4 * (C k +1)) + 1 To avoid collisions the hash constant (C k ) has always to result inside the sector of the

changing quotient Q min to Q max. Obviously C k establishes a border between collisionfree and collision burdened hash values. However, the border depends on length of the hash sequence. In order to make the border more flexible an individual UserCode may be added to the formula. In CypherMatrix procedures this code is predefined with (+1). C k = * ( 2) + UserCode As an example we choose the hash sequence with words from Hermann Hesse (Siddhartha, Eine indische Dichtung, Montagnola 1953): denn Ursachen erkennen so schien ihm, daß eben ist Denken, und d = 64 and hash constant = 3968 and code = 0 At position 41 of a hash sequence the sign a1 = ß (ASCII = 225) is exchanged with the character b1 = a (ASCII = 97) and at position 10 the character a2 = c (ASCII = 99) is exchanged with the sign b2 = Σ (ASCII = 228): denn UrsaΣhen erkennen so schien ihm, daa eben ist Denken, und d 3968 + 41 Q max = ------------- = 1,007793 3968 + 10 a1 *(C+p1) + a2 *(C+p2) = b1 *(C+p1) + b2 *(C+p2) 225 * (3968+41) + 99 * (3968+10) = 97 * (3968+41) + 228 * (3968+10) 902025 + 393822 =/= 388873 + 906984 1295847 =/= 1295857 Exchanging the signs leads to unequal results, hence, there occurs no collision. = 64 and hash constant = 3958 and code = 0 The hash constant is fixed minor than calculated by formula * (-2) = 3968. Exchanging of characters are the same as above. 3958 + 41 Q max = ------------- = 1,0078125 3958 + 10 a1 *(C+p1) + a2 *(C+p2) = b1 *(C+p1) + b2 *(C+p2) 225 * (3958+41) + 99 * (3958+10) = 97 * (3958+41) + 228 * (3958+10) 899775 + 392832 = 387903 + 904704 1292607 = 1292607 Exchanging the signs lead to equal results. Consequently here arises a collision.

The position weighted hash value H k of the chosen sequence results in: Extension of the hash function base 62: 1cG7F base 16: 16C9AE1 base 10: 23894753 But even the preceding demarcation single-handed does not guarantee a secure hash value. How test series realize the min-max-area on and off has some leaks and tolerates exclusions. Therefore the procedure is extended by another One-way function. n H p = ( ( a i + 1) * p i * H k ) + ( p i + code ) i = 1 Following scheme demonstrates the interdependences: Each character of the hash sequence is extended to a hash value (s i ) and aggregated to a Hash function series in number system on base 77. The sum of all extended values result in a second partial hash value (H p ). ext with assuming the digits beeing numbers in number system on base 78 (expansion base +1) the values are converted back by MODULO 256 to decimal numbers and are stored in an array Basic Variation. This contraction process constitutes a second One-way function. The function is irreversible

and a retrospective destination of the hash function series is not possible. Data in the second one-way function promote as follows: denn Ursachen erkennen so schien ihm, daß eben ist Denken, und d char a i +1 pos i H k product + position i s i U 86 6 23894753 12329692548 12329692554 4gvHàP r 115 7 23894753 19235276165 19235276172 78ESãZ s 116 8 23894753 22174330784 22174330792 8EzBFê a 98 9 23894753 21075172146 21075172155 7yeeRb c 100 10 23894753 23894753000 23894753 010 8#ujæp h 105 11 23894753 27598439715 27598439726 AF7I1B e 102 12 23894753 29247177672 29247177684 AzëpMW n 111 13 23894753 34480128579 34480128592 Cuá2ä#.................. ---------------------- ----------- 4538115386593 Lxhèd7J Hash functions series 391 digits in number system on base 77 LximàItão3I1zpLTV2çR6ju3åzy9n1ZC2iG4gvHàP78ESãZ8EzBFê7yeeRb8#ujæpAF7I 1BAzëpMWCuá2ä#462ã&EDcëiáeGIsá2aGFëcXlGFëcXmIlhG7LJk0ämEIäëW0uLgåMr06r åw3coitxlæotjâ0w7igsybrnælypotjâ0zqâz5c1s5gåkbråozåvvrwj079lh#eiv&wävx WY21OnYèvzwäErwWéæB5TàwyYxapn9YkhG&J14zWrêrCI8qWgctOaGCcYæLvBedêvjhj5t êx#drksëwiåbáwxodlke7pnyniteàëfoevpãaseltná9dqåpfr7qxmfnáownxrltàqml# 38Qt1HEYEê4&ceQWåxxbVVZtLcgkcIRD1m#v4&Bqé The foregoing characters are numbers in number system on base 77. The following contraction to BASIC VARIATIO assumes the numbers are part of number system on base 78. Contraction process In order to reduce the base 78 digits to decimal values each three numbers of the hash function series are converted by MODULO 256 to decimal numbers 0 to 255 (without repetition) and are stored in an array with 256 elements: BASIC VARIATIO. LximàItão3I1zpLTV2çR6ju3åzy9n1ZC2iG4gvHàP78ESãZ8EzBFê7yeeRb8#ujæpAF7I 1BAzëpMWCuá2ä#462ã&EDcëiáeGIsá2aGFëcXlGFëcXmIlhG7LJk0ämEI... base 78 decimal Modulo 256 4gv 27669 021 gvh 259991 151 vhà 348179 019 HàP 108523 235 àp7 397417 105 P78 152654 078 78E 43226 218

The MODULO 256 reduced digits are stored in the array BASIC VARIATIO. 160 119 206 006 099 077 152 201 083 141 084 143 009 168 161 147 096 173 134 135 016 221 106 005 223 211 245 122 118 248 000 148 162 021 151 019 235 105 078 218 128 132 075 194 074 163 089 029 073 093 202 204 072 236 255 250 003 138 121 222 076 240 039 065 176 217 033 040 181 139 015 208 224 164 097 130 254 107 205 010 123 230 120 126 002 203 212 213 108 219 244 200 146 242 127 124 079 144 129 030 207 229 085 166 237 031 209 231 086 246 109 069 038 214 125 215 012 145 131 054 133 022 136 026 028 241 184 037 112 041 149 137 001 154 011 004 034 071 094 013 172 232 167 113 225 182 227 053 042 247 110 199 210 216 174 007 226 081 191 228 087 220 140 170 150 055 043 249 111 196 251 153 233 098 114 142 082 032 234 171 169 175 238 024 044 060 066 023 049 025 155 080 156 045 088 090 115 068 177 063 100 239 116 178 091 243 046 252 165 253 070 117 047 157 158 159 179 180 092 027 101 183 095 102 187 017 008 061 185 014 186 048 103 104 018 188 189 056 190 020 057 067 035 058 198 192 036 193 195 197 050 051 052 059 062 064 In three rounds (permutations) the procedure generates the elements of the array to the CypherMatrix as a final result of the hash function.. CypherMatrix 1 5C 33 76 F0 7F 25 57 2D 08 06 EB 8B 55 04 6F EF 16 17 12 8F 4A 6B 6D 71 52 FD 23 87 48 CB 83 C7 2C B4 32 33 32 7A 4C F2 B8 E4 9C 11 CE 13 B5 E5 0B F9 64 68 48 49 54 C2 FE F6 A7 8E A5 43 86 CC 02 91 6E 18 B3 C5 64 65 F5 DE 92 F1 BF 50 BB 77 97 28 CF 9A 2B 3F 67 8D 80 81 4B 82 56 E8 72 FC 39 AD CA 7E 0C F7 EE 9F C3 D3 96 97 79 C8 1C 51 9B 66 A0 15 21 1E 01 37 B1 30 53 84 112 113 61 E7 AC 62 2E 14 60 5D 78 D7 2A AF 9E C1 DF 8A 128 129 F4 1A E2 19 5F 40 A2 D9 81 89 96 44 BA C9 80 A4 144 145 D1 0D E9 F3 BE 93 49 E6 7D 35 A9 9D 24 05 03 DB 160 161 88 07 31 B7 3E 94 B0 90 95 AA 73 0E 98 DA E0 1F 176 177 5E 99 5B 38 A1 1D 7B D6 E3 AB 2F C0 6A FA 6C 16 192 193 AE 17 65 3B 00 41 4F 29 8C 5A B9 4D 4E D0 ED 47 208 209 FB B2 BD A8 59 0A 26 B6 EA 75 C6 DD FF D5 85 D8 224 225 42 1B 34 F8 27 7C 70 DC 58 3D 63 69 0F A6 22 C4 240 241 74 BC 09 A3 CD 45 E1 20 46 3A 10 EC D4 36 D2 3C 256 The procedure calculates the CypherMatrix as a complete hash value H with the following results: base 62: 1HvtWWf1 base 16: 4211C80C57F base 10: 4540258633097 Back to article: Core of the CypherMatrix Method Munich, in February 2007 http://www.telecypher.net/corecyph.htm#z6