wherein said hash value generation unit is operable to convert {HEAD ~ a format} of each of the two N dimensional arrays indicating a hash value for the message data, without changing a norm of the N dimensional array so that a target sub element indicates a predetermined value, the target sub element being one of N sub elements included in {TAIL ~ the N dimensional array}, and 
wherein said hash value generation unit is operable to convert { HEAD ~ a format } of each of the two N dimensional arrays indicating a hash value for the message data , without changing a norm of the N dimensional array so that a target sub element indicates a predetermined value , the target sub element being one of N sub elements included in { TAIL ~ the N dimensional array } , and
OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH HEAD HEAD HEAD HEAD HEAD HEAD OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH OTH TAIL TAIL TAIL TAIL TAIL TAIL TAIL TAIL OTH OTH